a) Added code to support [libraries.platform] section for R8 module
authorjwang36 <jwang36@7335b38e-4728-0410-8992-fb3ffe349368>
Thu, 24 Jan 2008 02:31:40 +0000 (02:31 +0000)
committerjwang36 <jwang36@7335b38e-4728-0410-8992-fb3ffe349368>
Thu, 24 Jan 2008 02:31:40 +0000 (02:31 +0000)
b) Enforced the order of library for R8 modules.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@973 7335b38e-4728-0410-8992-fb3ffe349368

Source/Python/Common/EdkIIWorkspaceBuild.py
Source/Python/Common/InfClassObject.py

index c21d56a..61d849b 100755 (executable)
@@ -188,7 +188,7 @@ class ModuleBuildClassObject(object):
 \r
         self.Binaries                = []\r
         self.Sources                 = []\r
-        self.LibraryClasses          = {}\r
+        self.LibraryClasses          = sdict()\r
         self.Libraries               = []\r
         self.Protocols               = []\r
         self.Ppis                    = []\r
@@ -923,7 +923,7 @@ class WorkspaceBuild(object):
                     if (LibraryName, ModuleType) not in Module.LibraryClasses:\r
                         Module.LibraryClasses[LibraryName, ModuleType] = LibraryFile\r
                         LibraryConsumerList.append(ModuleDatabase[LibraryFile])\r
-                    EdkLogger.verbose("\t" + LibraryName + " : " + LibraryFile)\r
+                        EdkLogger.verbose("\t" + LibraryName + " : " + LibraryFile)\r
             return\r
 \r
         # R9 module\r
index c2d805e..bb0055d 100755 (executable)
@@ -445,7 +445,7 @@ class Inf(InfObject):
         #\r
         # Libraries\r
         #\r
-        Libraries = {}\r
+        Libraries = sdict()\r
         for Arch in DataType.ARCH_LIST:\r
             for Item in self.Contents[Arch].Libraries:\r
                 MergeArches(Libraries, Item, Arch)\r
@@ -818,14 +818,14 @@ class Inf(InfObject):
                 if Tab.upper().find(DataType.TAB_USER_EXTENSIONS.upper()) > -1:\r
                     self.UserExtensions = Sect\r
                     continue\r
-                for Arch in DataType.ARCH_LIST_FULL + [DataType.TAB_ARCH_NULL]:\r
+                for Arch in DataType.ARCH_LIST_FULL + [DataType.TAB_ARCH_NULL, "PLATFORM"]:\r
                     for Key in self.KeyList:\r
                         if Arch != DataType.TAB_ARCH_NULL:\r
                             Target = (Key + DataType.TAB_SPLIT + Arch).upper()\r
                         else:\r
                             Target = Key.upper()\r
                         if SplitModuleType(Tab)[0].upper() == Target:\r
-                            if Arch != DataType.TAB_ARCH_NULL:\r
+                            if Arch != DataType.TAB_ARCH_NULL and Arch != "PLATFORM":\r
                                 Command = 'self.ParseInf(Sect, Tab, self.Contents[Arch].' + Key + ')'\r
                                 eval(Command)\r
                                 continue\r