- FixedAtBuildPcds = {} \r
- ShareFixedAtBuildPcdsSameValue = {} \r
- for Module in LibAuto._ReferenceModules: \r
- for Pcd in Module.FixedAtBuildPcds + LibAuto.FixedAtBuildPcds:\r
- key = ".".join((Pcd.TokenSpaceGuidCName,Pcd.TokenCName)) \r
+ FixedAtBuildPcds = {}\r
+ ShareFixedAtBuildPcdsSameValue = {}\r
+ for Module in LibAuto._ReferenceModules:\r
+ for Pcd in set(Module.FixedAtBuildPcds + LibAuto.FixedAtBuildPcds):\r
+ DefaultValue = Pcd.DefaultValue\r
+ # Cover the case: DSC component override the Pcd value and the Pcd only used in one Lib\r
+ if Pcd in Module.LibraryPcdList:\r
+ Index = Module.LibraryPcdList.index(Pcd)\r
+ DefaultValue = Module.LibraryPcdList[Index].DefaultValue\r
+ key = ".".join((Pcd.TokenSpaceGuidCName, Pcd.TokenCName))\r