git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@641 7335b...
authorhche10x <hche10x@7335b38e-4728-0410-8992-fb3ffe349368>
Thu, 30 Aug 2007 03:34:31 +0000 (03:34 +0000)
committerhche10x <hche10x@7335b38e-4728-0410-8992-fb3ffe349368>
Thu, 30 Aug 2007 03:34:31 +0000 (03:34 +0000)
Source/Python/Common/DscClassObject.py

index f75e523..29cfa20 100644 (file)
@@ -409,6 +409,7 @@ class Dsc(DscObject):
     \r
     #\r
     # Gen FeatureFlagPcds\r
+    # <PcdTokenSpaceGuidCName>.<TokenCName>|TRUE/FALSE\r
     #\r
     def GenFeatureFlagPcds(self, Type = '', ContainerFile = ''):\r
         Pcds = {}\r
@@ -434,6 +435,7 @@ class Dsc(DscObject):
     \r
     #\r
     # Gen Pcds\r
+    # <PcdTokenSpaceGuidCName>.<TokenCName>|<Value>[|<Type>|<MaximumDatumSize>]\r
     #\r
     def GenPcds(self, Type = '', ContainerFile = ''):\r
         Pcds = {}\r
@@ -476,6 +478,7 @@ class Dsc(DscObject):
             \r
     #\r
     # Gen DynamicDefaultPcds\r
+    # <PcdTokenSpaceGuidCName>.<TokenCName>|<Value>[|<DatumTyp>[|<MaxDatumSize>]]\r
     #\r
     def GenDynamicDefaultPcds(self, Type = '', ContainerFile = ''):\r
         Pcds = {}\r
@@ -490,24 +493,25 @@ class Dsc(DscObject):
                 pass\r
             \r
             for Item in Items:\r
-                List = GetSplitValueList(Item[0] + DataType.TAB_VALUE_SPLIT)\r
-                if len(List) < 3:\r
-                    RaiseParserError(Item[0], 'Pcds' + Type, ContainerFile, '<PcdTokenSpaceGuidCName>.<TokenCName>|<Value>')\r
+                List = GetSplitValueList(Item[0] + DataType.TAB_VALUE_SPLIT * 2)\r
+                if len(List) < 4 or len(List) > 8:\r
+                    RaiseParserError(Item[0], 'Pcds' + Type, ContainerFile, '<PcdTokenSpaceGuidCName>.<TokenCName>|<Value>[|<DatumTyp>[|<MaxDatumSize>]]')\r
                 \r
                 CheckPcdTokenInfo(List[0], 'Pcds' + Type, ContainerFile)\r
                 TokenInfo = GetSplitValueList(List[0], DataType.TAB_SPLIT)\r
-                MergeArches(Pcds, (TokenInfo[1], TokenInfo[0], List[1], List[2], Type), Arch)\r
+                MergeArches(Pcds, (TokenInfo[1], TokenInfo[0], List[1], List[2], List[3], Type), Arch)\r
         for Key in Pcds:\r
             (Status, SkuInfoList) = self.GenSkuInfoList(Item[1], self.Platform.SkuInfos.SkuInfoList, '', '', '', '', '', Key[2])\r
             if Status == False:\r
                 ErrorMsg = "SKUID '%s' of '%s' not defined in file '%s'" % (SkuInfoList, Type, self.Platform.Header.FullPath) \r
                 raise ParserError(PARSER_ERROR, msg = ErrorMsg)\r
-            Pcd = PcdClass(Key[0], '', Key[1], '', Key[3], Key[2], Key[4], [], SkuInfoList, [])\r
+            Pcd = PcdClass(Key[0], '', Key[1], Key[3], Key[4], Key[2], Key[5], [], SkuInfoList, [])\r
             Pcd.SupArchList = Pcds[Key]\r
             self.Platform.DynamicPcdBuildDefinitions.append(Pcd)\r
          \r
     #\r
     # Gen DynamicHiiPcds\r
+    # <PcdTokenSpaceGuidCName>.<TokenCName>|<String>|<VariableGuidCName>|<VariableOffset>[|<DefaultValue>[|<MaximumDatumSize>]]\r
     #\r
     def GenDynamicHiiPcds(self, Type = '', ContainerFile = ''):\r
         Pcds = {}\r
@@ -540,6 +544,7 @@ class Dsc(DscObject):
     \r
     #\r
     # Gen DynamicVpdPcds\r
+    # <PcdTokenSpaceGuidCName>.<TokenCName>|<VpdOffset>[|<MaximumDatumSize>]\r
     #\r
     def GenDynamicVpdPcds(self, Type = '', ContainerFile = ''):\r
         Pcds = {}\r