git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@523 7335b...
authorhche10x <hche10x@7335b38e-4728-0410-8992-fb3ffe349368>
Wed, 8 Aug 2007 08:37:32 +0000 (08:37 +0000)
committerhche10x <hche10x@7335b38e-4728-0410-8992-fb3ffe349368>
Wed, 8 Aug 2007 08:37:32 +0000 (08:37 +0000)
Source/Python/Common/EdkIIWorkspaceBuild.py
Source/Python/CommonDataClass/PlatformClass.py

index f9639a6..7869069 100644 (file)
@@ -372,8 +372,7 @@ class WorkspaceBuild(object):
             \r
             for Arch in self.SupArchList:\r
                 if not self.IsModuleDefinedInPlatform(Inf, Arch):\r
-                    pass\r
-                    #break\r
+                    break\r
                 \r
                 pb = ModuleBuildClassObject()\r
                 \r
@@ -504,6 +503,8 @@ class WorkspaceBuild(object):
             for Dsc in PlatformDatabase:\r
                 Platform = PlatformDatabase[Dsc]\r
                 for Inf in Platform.Modules:\r
+                    if not self.IsModuleDefinedInPlatform(Inf, Arch):\r
+                        continue\r
                     Module = self.Build[Arch].ModuleDatabase[NormPath(Inf)]\r
                     if Module.LibraryClass == None or Module.LibraryClass == "":\r
                         self.UpdateLibrariesOfModule(Module, Arch)\r
@@ -862,9 +863,16 @@ class WorkspaceBuild(object):
     #\r
     def IsModuleDefinedInPlatform(self, Inf, Arch):\r
         for Dsc in self.DscDatabase.values():\r
+            for LibraryClass in Dsc.Platform.LibraryClasses.LibraryList:\r
+                if Inf == NormPath(LibraryClass.FilePath) and Arch in LibraryClass.SupArchList:\r
+                    return True\r
             for Module in Dsc.Platform.Modules.ModuleList:\r
-                if Inf == Module.Name and Arch in Module.SupArchList:\r
+                if Inf == NormPath(Module.Name) and Arch in Module.SupArchList:\r
                     return True\r
+                for Item in Module.LibraryClasses.LibraryList:\r
+                    if Inf == NormPath(Item.FilePath) and Arch in Item.SupArchList:\r
+                        return True\r
+                \r
         return False\r
 \r
     #\r
index 5904dfe..ed60764 100644 (file)
@@ -160,7 +160,6 @@ class PlatformClass(object):
         self.LibraryClasses = PlatformLibraryClasses()\r
         self.Modules = PlatformModuleClasses()\r
         self.FlashDefinitionFile = PlatformFlashDefinitionFileClass()\r
-        self.FvImages = []                                           #[ PlatformFvImagesClass, ...]\r
         self.BuildOptions = PlatformBuildOptionClasses()\r
         self.DynamicPcdBuildDefinitions = []                         #[ PcdClass, ...] \r
         self.Fdf = []                                                #[ FdfClass, ...]\r