]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/Workspace/DecBuildData.py
BaseTools: Don't save unused workspace data
[mirror_edk2.git] / BaseTools / Source / Python / Workspace / DecBuildData.py
index 1f74e898f2ef76ab3549197ab8fe7d1acf86b7a4..31ee13eca91f665b06f24e9916a252b57dcd8b2e 100644 (file)
@@ -410,6 +410,7 @@ class DecBuildData(PackageBuildClassObject):
             if not (PcdCName, TokenSpaceGuid) in PcdSet:\r
                 PcdSet.append((PcdCName, TokenSpaceGuid))\r
 \r
+        DefinitionPosition = {}\r
         for PcdCName, TokenSpaceGuid in PcdSet:\r
             #\r
             # limit the ARCH to self._Arch, if no self._Arch found, tdict\r
@@ -436,7 +437,7 @@ class DecBuildData(PackageBuildClassObject):
                                         list(validlists),\r
                                         list(expressions)\r
                                         )\r
-            PcdObj.DefinitionPosition = (self.MetaFile.File, LineNo)\r
+            DefinitionPosition[PcdObj] = (self.MetaFile.File, LineNo)\r
             if "." in TokenSpaceGuid:\r
                 StrPcdSet.append((PcdObj, LineNo))\r
             else:\r
@@ -449,10 +450,10 @@ class DecBuildData(PackageBuildClassObject):
         for pcd in Pcds.values():\r
             if pcd.DatumType not in [TAB_UINT8, TAB_UINT16, TAB_UINT32, TAB_UINT64, TAB_VOID, "BOOLEAN"]:\r
                 if StructPattern.match(pcd.DatumType) is None:\r
-                    EdkLogger.error('build', FORMAT_INVALID, "DatumType only support BOOLEAN, UINT8, UINT16, UINT32, UINT64, VOID* or a valid struct name.", pcd.DefinitionPosition[0], pcd.DefinitionPosition[1])\r
+                    EdkLogger.error('build', FORMAT_INVALID, "DatumType only support BOOLEAN, UINT8, UINT16, UINT32, UINT64, VOID* or a valid struct name.", DefinitionPosition[pcd][0], DefinitionPosition[pcd][1])\r
         for struct_pcd in Pcds.values():\r
             if isinstance(struct_pcd, StructurePcd) and not struct_pcd.StructuredPcdIncludeFile:\r
-                EdkLogger.error("build", PCD_STRUCTURE_PCD_ERROR, "The structure Pcd %s.%s header file is not found in %s line %s \n" % (struct_pcd.TokenSpaceGuidCName, struct_pcd.TokenCName, struct_pcd.DefinitionPosition[0], struct_pcd.DefinitionPosition[1] ))\r
+                EdkLogger.error("build", PCD_STRUCTURE_PCD_ERROR, "The structure Pcd %s.%s header file is not found in %s line %s \n" % (struct_pcd.TokenSpaceGuidCName, struct_pcd.TokenCName, DefinitionPosition[struct_pcd][0], DefinitionPosition[struct_pcd][1] ))\r
 \r
         return Pcds\r
 \r