mirror of https://github.com/acidanthera/audk.git
BaseTools: Remove a unused function.
the call statement of _CheckDuplicateInFV() was commented out in 2014. There is no call statement of _CheckDuplicateInFV(), so remove it. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
This commit is contained in:
parent
669b55e6d5
commit
0fc5e71c68
|
@ -619,9 +619,6 @@ class WorkspaceAutoGen(AutoGen):
|
|||
#
|
||||
self._CheckPcdDefineAndType()
|
||||
|
||||
# if self.FdfFile:
|
||||
# self._CheckDuplicateInFV(Fdf)
|
||||
|
||||
#
|
||||
# Create BuildOptions Macro & PCD metafile, also add the Active Platform and FDF file.
|
||||
#
|
||||
|
@ -761,131 +758,6 @@ class WorkspaceAutoGen(AutoGen):
|
|||
|
||||
return AllWorkSpaceMetaFiles
|
||||
|
||||
## _CheckDuplicateInFV() method
|
||||
#
|
||||
# Check whether there is duplicate modules/files exist in FV section.
|
||||
# The check base on the file GUID;
|
||||
#
|
||||
def _CheckDuplicateInFV(self, Fdf):
|
||||
for Fv in Fdf.Profile.FvDict:
|
||||
_GuidDict = {}
|
||||
for FfsFile in Fdf.Profile.FvDict[Fv].FfsList:
|
||||
if FfsFile.InfFileName and FfsFile.NameGuid is None:
|
||||
#
|
||||
# Get INF file GUID
|
||||
#
|
||||
InfFoundFlag = False
|
||||
for Pa in self.AutoGenObjectList:
|
||||
if InfFoundFlag:
|
||||
break
|
||||
for Module in Pa.ModuleAutoGenList:
|
||||
if path.normpath(Module.MetaFile.File) == path.normpath(FfsFile.InfFileName):
|
||||
InfFoundFlag = True
|
||||
if Module.Guid.upper() not in _GuidDict:
|
||||
_GuidDict[Module.Guid.upper()] = FfsFile
|
||||
break
|
||||
else:
|
||||
EdkLogger.error("build",
|
||||
FORMAT_INVALID,
|
||||
"Duplicate GUID found for these lines: Line %d: %s and Line %d: %s. GUID: %s" % (FfsFile.CurrentLineNum,
|
||||
FfsFile.CurrentLineContent,
|
||||
_GuidDict[Module.Guid.upper()].CurrentLineNum,
|
||||
_GuidDict[Module.Guid.upper()].CurrentLineContent,
|
||||
Module.Guid.upper()),
|
||||
ExtraData=self.FdfFile)
|
||||
#
|
||||
# Some INF files not have entity in DSC file.
|
||||
#
|
||||
if not InfFoundFlag:
|
||||
if FfsFile.InfFileName.find('$') == -1:
|
||||
InfPath = NormPath(FfsFile.InfFileName)
|
||||
if not os.path.exists(InfPath):
|
||||
EdkLogger.error('build', GENFDS_ERROR, "Non-existant Module %s !" % (FfsFile.InfFileName))
|
||||
|
||||
PathClassObj = PathClass(FfsFile.InfFileName, self.WorkspaceDir)
|
||||
#
|
||||
# Here we just need to get FILE_GUID from INF file, use 'COMMON' as ARCH attribute. and use
|
||||
# BuildObject from one of AutoGenObjectList is enough.
|
||||
#
|
||||
InfObj = self.AutoGenObjectList[0].BuildDatabase.WorkspaceDb.BuildObject[PathClassObj, TAB_ARCH_COMMON, self.BuildTarget, self.ToolChain]
|
||||
if InfObj.Guid.upper() not in _GuidDict:
|
||||
_GuidDict[InfObj.Guid.upper()] = FfsFile
|
||||
else:
|
||||
EdkLogger.error("build",
|
||||
FORMAT_INVALID,
|
||||
"Duplicate GUID found for these lines: Line %d: %s and Line %d: %s. GUID: %s" % (FfsFile.CurrentLineNum,
|
||||
FfsFile.CurrentLineContent,
|
||||
_GuidDict[InfObj.Guid.upper()].CurrentLineNum,
|
||||
_GuidDict[InfObj.Guid.upper()].CurrentLineContent,
|
||||
InfObj.Guid.upper()),
|
||||
ExtraData=self.FdfFile)
|
||||
InfFoundFlag = False
|
||||
|
||||
if FfsFile.NameGuid is not None:
|
||||
#
|
||||
# If the NameGuid reference a PCD name.
|
||||
# The style must match: PCD(xxxx.yyy)
|
||||
#
|
||||
if gPCDAsGuidPattern.match(FfsFile.NameGuid):
|
||||
#
|
||||
# Replace the PCD value.
|
||||
#
|
||||
_PcdName = FfsFile.NameGuid.lstrip("PCD(").rstrip(")")
|
||||
PcdFoundFlag = False
|
||||
for Pa in self.AutoGenObjectList:
|
||||
if not PcdFoundFlag:
|
||||
for PcdItem in Pa.AllPcdList:
|
||||
if (PcdItem.TokenSpaceGuidCName + "." + PcdItem.TokenCName) == _PcdName:
|
||||
#
|
||||
# First convert from CFormatGuid to GUID string
|
||||
#
|
||||
_PcdGuidString = GuidStructureStringToGuidString(PcdItem.DefaultValue)
|
||||
|
||||
if not _PcdGuidString:
|
||||
#
|
||||
# Then try Byte array.
|
||||
#
|
||||
_PcdGuidString = GuidStructureByteArrayToGuidString(PcdItem.DefaultValue)
|
||||
|
||||
if not _PcdGuidString:
|
||||
#
|
||||
# Not Byte array or CFormat GUID, raise error.
|
||||
#
|
||||
EdkLogger.error("build",
|
||||
FORMAT_INVALID,
|
||||
"The format of PCD value is incorrect. PCD: %s , Value: %s\n" % (_PcdName, PcdItem.DefaultValue),
|
||||
ExtraData=self.FdfFile)
|
||||
|
||||
if _PcdGuidString.upper() not in _GuidDict:
|
||||
_GuidDict[_PcdGuidString.upper()] = FfsFile
|
||||
PcdFoundFlag = True
|
||||
break
|
||||
else:
|
||||
EdkLogger.error("build",
|
||||
FORMAT_INVALID,
|
||||
"Duplicate GUID found for these lines: Line %d: %s and Line %d: %s. GUID: %s" % (FfsFile.CurrentLineNum,
|
||||
FfsFile.CurrentLineContent,
|
||||
_GuidDict[_PcdGuidString.upper()].CurrentLineNum,
|
||||
_GuidDict[_PcdGuidString.upper()].CurrentLineContent,
|
||||
FfsFile.NameGuid.upper()),
|
||||
ExtraData=self.FdfFile)
|
||||
|
||||
if FfsFile.NameGuid.upper() not in _GuidDict:
|
||||
_GuidDict[FfsFile.NameGuid.upper()] = FfsFile
|
||||
else:
|
||||
#
|
||||
# Two raw file GUID conflict.
|
||||
#
|
||||
EdkLogger.error("build",
|
||||
FORMAT_INVALID,
|
||||
"Duplicate GUID found for these lines: Line %d: %s and Line %d: %s. GUID: %s" % (FfsFile.CurrentLineNum,
|
||||
FfsFile.CurrentLineContent,
|
||||
_GuidDict[FfsFile.NameGuid.upper()].CurrentLineNum,
|
||||
_GuidDict[FfsFile.NameGuid.upper()].CurrentLineContent,
|
||||
FfsFile.NameGuid.upper()),
|
||||
ExtraData=self.FdfFile)
|
||||
|
||||
|
||||
def _CheckPcdDefineAndType(self):
|
||||
PcdTypeSet = {TAB_PCDS_FIXED_AT_BUILD,
|
||||
TAB_PCDS_PATCHABLE_IN_MODULE,
|
||||
|
|
Loading…
Reference in New Issue