- if DscMatch:\r
- if (Pcd.TokenCName, Key) in self.FdfPcdSet:\r
- self.PrintPcdValue(File, Pcd, PcdTokenCName, TypeName, IsStructure, DscMatch, DscDefaultValBak, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue, '*F')\r
- else:\r
- self.PrintPcdValue(File, Pcd, PcdTokenCName, TypeName, IsStructure, DscMatch, DscDefaultValBak, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue, '*P')\r
+ DscDefaultValue = True\r
+ DscMatch = True\r
+ DecMatch = False\r
+\r
+ #\r
+ # Report PCD item according to their override relationship\r
+ #\r
+ if Pcd.DatumType == 'BOOLEAN':\r
+ if DscDefaultValue:\r
+ DscDefaultValue = str(int(DscDefaultValue, 0))\r
+ if DecDefaultValue:\r
+ DecDefaultValue = str(int(DecDefaultValue, 0))\r
+ if InfDefaultValue:\r
+ InfDefaultValue = str(int(InfDefaultValue, 0))\r
+ if Pcd.DefaultValue:\r
+ Pcd.DefaultValue = str(int(Pcd.DefaultValue, 0))\r
+ if DecMatch:\r
+ self.PrintPcdValue(File, Pcd, PcdTokenCName, TypeName, IsStructure, DscMatch, DscDefaultValBak, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue, ' ')\r
+ elif InfDefaultValue and InfMatch:\r
+ self.PrintPcdValue(File, Pcd, PcdTokenCName, TypeName, IsStructure, DscMatch, DscDefaultValBak, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue, '*M')\r
+ elif BuildOptionMatch:\r
+ self.PrintPcdValue(File, Pcd, PcdTokenCName, TypeName, IsStructure, DscMatch, DscDefaultValBak, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue, '*B')\r
+ else:\r
+ if DscDefaultValue and DscMatch:\r
+ if (Pcd.TokenCName, Key, Field) in self.FdfPcdSet:\r
+ self.PrintPcdValue(File, Pcd, PcdTokenCName, TypeName, IsStructure, DscMatch, DscDefaultValBak, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue, '*F')\r