Sync tool code to BuildTools project r1783.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9623 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
lgao4
2009-12-29 06:16:53 +00:00
parent 4661d5df04
commit a709adfaf0
88 changed files with 2038 additions and 732 deletions

View File

@ -1094,7 +1094,12 @@ class PlatformAutoGen(AutoGen):
# for overridding library instances with module specific setting
PlatformModule = self.Platform.Modules[str(Module)]
# add forced library instance
# add forced library instances (specified under LibraryClasses sections)
for LibraryClass in self.Platform.LibraryClasses.GetKeys():
if LibraryClass.startswith("NULL"):
Module.LibraryClasses[LibraryClass] = self.Platform.LibraryClasses[LibraryClass]
# add forced library instances (specified in module overrides)
for LibraryClass in PlatformModule.LibraryClasses:
if LibraryClass.startswith("NULL"):
Module.LibraryClasses[LibraryClass] = PlatformModule.LibraryClasses[LibraryClass]
@ -1170,7 +1175,7 @@ class PlatformAutoGen(AutoGen):
M = LibraryInstance[LibraryClassName]
LibraryList.append(M)
if ConsumedByList[M] == []:
Q.insert(0, M)
Q.append(M)
#
# start the DAG algorithm
@ -1939,7 +1944,7 @@ class ModuleAutoGen(AutoGen):
if Source != File:
CreateDirectory(Source.Dir)
if File.IsBinary and File == Source:
if File.IsBinary and File == Source and self._BinaryFileList != None and File in self._BinaryFileList:
RuleObject = self.BuildRules[TAB_DEFAULT_BINARY_FILE]
elif FileType in self.BuildRules:
RuleObject = self.BuildRules[FileType]
@ -2053,11 +2058,11 @@ class ModuleAutoGen(AutoGen):
self._ApplyBuildRule(AutoFile, TAB_UNKNOWN_FILE)
if UniStringBinBuffer != None and UniStringBinBuffer.getvalue() != "":
AutoFile = PathClass(gAutoGenStringFormFileName % {"module_name":self.Name}, self.OutputDir)
self._AutoGenFileList[AutoFile] = UniStringBinBuffer.getvalue()
self._AutoGenFileList[AutoFile] = UniStringBinBuffer.getvalue()
AutoFile.IsBinary = True
self._ApplyBuildRule(AutoFile, TAB_UNKNOWN_FILE)
if UniStringBinBuffer != None:
UniStringBinBuffer.close()
if UniStringBinBuffer != None:
UniStringBinBuffer.close()
return self._AutoGenFileList
## Return the list of library modules explicitly or implicityly used by this module