BaseTools: Fix build report for *P and *M flag incorrectly
Flag *M for INF defined value and DSC components value Flag *P only for platform defined value Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yunhua Feng <yunhuax.feng@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com>
This commit is contained in:
committed by
Yonghong Zhu
parent
0f78fd7349
commit
5df16ecb7f
@ -963,6 +963,11 @@ class PcdReport(object):
|
|||||||
DecDefaultValue = self.DecPcdDefault.get((Pcd.TokenCName, Pcd.TokenSpaceGuidCName, DecType))
|
DecDefaultValue = self.DecPcdDefault.get((Pcd.TokenCName, Pcd.TokenSpaceGuidCName, DecType))
|
||||||
DscDefaultValue = self.DscPcdDefault.get((Pcd.TokenCName, Pcd.TokenSpaceGuidCName))
|
DscDefaultValue = self.DscPcdDefault.get((Pcd.TokenCName, Pcd.TokenSpaceGuidCName))
|
||||||
DscDefaultValBak = DscDefaultValue
|
DscDefaultValBak = DscDefaultValue
|
||||||
|
Field = ''
|
||||||
|
for (CName, Guid, Field) in self.FdfPcdSet:
|
||||||
|
if CName == PcdTokenCName and Guid == Key:
|
||||||
|
DscDefaultValue = self.FdfPcdSet[(CName, Guid, Field)]
|
||||||
|
break
|
||||||
DscDefaultValue = self.FdfPcdSet.get((Pcd.TokenCName, Key), DscDefaultValue)
|
DscDefaultValue = self.FdfPcdSet.get((Pcd.TokenCName, Key), DscDefaultValue)
|
||||||
if DscDefaultValue != DscDefaultValBak:
|
if DscDefaultValue != DscDefaultValBak:
|
||||||
try:
|
try:
|
||||||
@ -975,13 +980,14 @@ class PcdReport(object):
|
|||||||
PcdValue = DecDefaultValue
|
PcdValue = DecDefaultValue
|
||||||
if DscDefaultValue:
|
if DscDefaultValue:
|
||||||
PcdValue = DscDefaultValue
|
PcdValue = DscDefaultValue
|
||||||
|
Pcd.DefaultValue = PcdValue
|
||||||
if ModulePcdSet is not None:
|
if ModulePcdSet is not None:
|
||||||
if (Pcd.TokenCName, Pcd.TokenSpaceGuidCName, Type) not in ModulePcdSet:
|
if (Pcd.TokenCName, Pcd.TokenSpaceGuidCName, Type) not in ModulePcdSet:
|
||||||
continue
|
continue
|
||||||
InfDefault, PcdValue = ModulePcdSet[Pcd.TokenCName, Pcd.TokenSpaceGuidCName, Type]
|
InfDefaultValue, PcdValue = ModulePcdSet[Pcd.TokenCName, Pcd.TokenSpaceGuidCName, Type]
|
||||||
Pcd.DefaultValue = PcdValue
|
Pcd.DefaultValue = PcdValue
|
||||||
if InfDefault == "":
|
if InfDefaultValue == "":
|
||||||
InfDefault = None
|
InfDefaultValue = None
|
||||||
|
|
||||||
BuildOptionMatch = False
|
BuildOptionMatch = False
|
||||||
if GlobalData.BuildOptionPcd:
|
if GlobalData.BuildOptionPcd:
|
||||||
@ -1084,13 +1090,15 @@ class PcdReport(object):
|
|||||||
#
|
#
|
||||||
# Report PCD item according to their override relationship
|
# Report PCD item according to their override relationship
|
||||||
#
|
#
|
||||||
if DecMatch and InfMatch:
|
if DecMatch:
|
||||||
self.PrintPcdValue(File, Pcd, PcdTokenCName, TypeName, IsStructure, DscMatch, DscDefaultValBak, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue, ' ')
|
self.PrintPcdValue(File, Pcd, PcdTokenCName, TypeName, IsStructure, DscMatch, DscDefaultValBak, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue, ' ')
|
||||||
|
elif InfDefaultValue and InfMatch:
|
||||||
|
self.PrintPcdValue(File, Pcd, PcdTokenCName, TypeName, IsStructure, DscMatch, DscDefaultValBak, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue, '*M')
|
||||||
elif BuildOptionMatch:
|
elif BuildOptionMatch:
|
||||||
self.PrintPcdValue(File, Pcd, PcdTokenCName, TypeName, IsStructure, DscMatch, DscDefaultValBak, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue, '*B')
|
self.PrintPcdValue(File, Pcd, PcdTokenCName, TypeName, IsStructure, DscMatch, DscDefaultValBak, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue, '*B')
|
||||||
else:
|
else:
|
||||||
if DscMatch:
|
if DscDefaultValue and DscMatch:
|
||||||
if (Pcd.TokenCName, Key) in self.FdfPcdSet:
|
if (Pcd.TokenCName, Key, Field) in self.FdfPcdSet:
|
||||||
self.PrintPcdValue(File, Pcd, PcdTokenCName, TypeName, IsStructure, DscMatch, DscDefaultValBak, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue, '*F')
|
self.PrintPcdValue(File, Pcd, PcdTokenCName, TypeName, IsStructure, DscMatch, DscDefaultValBak, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue, '*F')
|
||||||
else:
|
else:
|
||||||
self.PrintPcdValue(File, Pcd, PcdTokenCName, TypeName, IsStructure, DscMatch, DscDefaultValBak, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue, '*P')
|
self.PrintPcdValue(File, Pcd, PcdTokenCName, TypeName, IsStructure, DscMatch, DscDefaultValBak, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue, '*P')
|
||||||
|
Reference in New Issue
Block a user