from Common.Misc import *\r
from types import *\r
from collections import OrderedDict\r
-\r
+from CommonDataClass.DataClass import *\r
from Workspace.BuildClassObject import PackageBuildClassObject, StructurePcd, PcdClassObject\r
+from Common.GlobalData import gGlobalDefines, gEcpSource\r
+from re import compile\r
\r
## Platform build information from DEC file\r
#\r
@property\r
def _Macros(self):\r
if self._MacroDict is None:\r
- self._MacroDict = dict(GlobalData.gGlobalDefines)\r
+ self._MacroDict = dict(gGlobalDefines)\r
return self._MacroDict\r
\r
## Get architecture\r
PublicInclues = []\r
RecordList = self._RawData[MODEL_EFI_INCLUDE, self._Arch]\r
Macros = self._Macros\r
- Macros["EDK_SOURCE"] = GlobalData.gEcpSource\r
+ Macros["EDK_SOURCE"] = gEcpSource\r
for Record in RecordList:\r
File = PathClass(NormPath(Record[0], Macros), self._PackageDir, Arch=self._Arch)\r
LineNo = Record[-1]\r
StructurePcds = self.ProcessStructurePcd(StrPcdSet)\r
for pcd in StructurePcds:\r
Pcds[pcd.TokenCName, pcd.TokenSpaceGuidCName, self._PCD_TYPE_STRING_[Type]] = pcd\r
+ StructPattern = compile(r'[_a-zA-Z][0-9A-Za-z_]*$')\r
for pcd in Pcds.values():\r
if pcd.DatumType not in [TAB_UINT8, TAB_UINT16, TAB_UINT32, TAB_UINT64, TAB_VOID, "BOOLEAN"]:\r
if not pcd.IsAggregateDatumType():\r