else:\r
str_pcd_obj_str.DefaultFromDSC = {skuname:{defaultstore: str_pcd_obj.SkuInfoList[skuname].DefaultStoreDict.get(defaultstore, str_pcd_obj.SkuInfoList[skuname].DefaultValue) for defaultstore in DefaultStores} for skuname in str_pcd_obj.SkuInfoList}\r
S_pcd_set[Pcd] = str_pcd_obj_str\r
- self.FilterStrcturePcd(S_pcd_set)\r
if S_pcd_set:\r
- GlobalData.gStructurePcd[self.Arch] = S_pcd_set\r
+ GlobalData.gStructurePcd[self.Arch] = S_pcd_set.copy()\r
+ self.FilterStrcturePcd(S_pcd_set)\r
for stru_pcd in S_pcd_set.values():\r
for skuid in SkuIds:\r
if skuid in stru_pcd.SkuOverrideValues:\r
# Collect the PCD defined in DSC/FDF file, but not used in module\r
#\r
UnusedPcdFullList = []\r
+ StructPcdDict = GlobalData.gStructurePcd[self.Arch]\r
+ for Name, Guid in StructPcdDict:\r
+ if (Name, Guid) not in Pa.Platform.Pcds:\r
+ Pcd = StructPcdDict[(Name, Guid)]\r
+ PcdList = self.AllPcds.setdefault(Guid, {}).setdefault(Pcd.Type, [])\r
+ if Pcd not in PcdList and Pcd not in UnusedPcdFullList:\r
+ UnusedPcdFullList.append(Pcd)\r
for item in Pa.Platform.Pcds:\r
Pcd = Pa.Platform.Pcds[item]\r
if not Pcd.Type:\r