SkuInfo.HiiDefaultValue = NoFiledValues[(Pcd.TokenSpaceGuidCName,Pcd.TokenCName)][0]\r
for defaultstore in SkuInfo.DefaultStoreDict:\r
SkuInfo.DefaultStoreDict[defaultstore] = NoFiledValues[(Pcd.TokenSpaceGuidCName,Pcd.TokenCName)][0]\r
- if Pcd.DatumType == "VOID*":\r
- if Pcd.MaxDatumSize is None:\r
- Pcd.MaxDatumSize = '0'\r
- MaxSize = int(Pcd.MaxDatumSize,10)\r
- if Pcd.DefaultValue.startswith("{") and Pcd.DefaultValue.endswith("}"):\r
- MaxSize = max([len(Pcd.DefaultValue.split(",")),MaxSize])\r
- elif Pcd.DefaultValue.startswith("\"") or Pcd.DefaultValue.startswith("\'"):\r
- MaxSize = max([len(Pcd.DefaultValue)-2+1,MaxSize])\r
- elif Pcd.DefaultValue.startswith("L\""):\r
- MaxSize = max([2*(len(Pcd.DefaultValue)-3+1),MaxSize])\r
- else:\r
- MaxSize = max([len(Pcd.DefaultValue),MaxSize])\r
- Pcd.MaxDatumSize = str(MaxSize)\r
+ if Pcd.Type in [self._PCD_TYPE_STRING_[MODEL_PCD_DYNAMIC_EX_HII], self._PCD_TYPE_STRING_[MODEL_PCD_DYNAMIC_HII]]:\r
+ if Pcd.DatumType == "VOID*":\r
+ if not Pcd.MaxDatumSize:\r
+ Pcd.MaxDatumSize = '0'\r
+ CurrentSize = int(Pcd.MaxDatumSize,16) if Pcd.MaxDatumSize.upper().startswith("0X") else int(Pcd.MaxDatumSize)\r
+ OptionSize = len((StringToArray(Pcd.PcdValueFromComm)).split(","))\r
+ MaxSize = max(CurrentSize, OptionSize)\r
+ Pcd.MaxDatumSize = str(MaxSize)\r
else:\r
PcdInDec = self.DecPcds.get((Name,Guid))\r
if PcdInDec:\r
PcdInDec.PcdValueFromComm = NoFiledValues[(Guid,Name)][0]\r
if PcdInDec.Type in [self._PCD_TYPE_STRING_[MODEL_PCD_FIXED_AT_BUILD],\r
- self._PCD_TYPE_STRING_[MODEL_PCD_PATCHABLE_IN_MODULE]]:\r
+ self._PCD_TYPE_STRING_[MODEL_PCD_PATCHABLE_IN_MODULE],\r
+ self._PCD_TYPE_STRING_[MODEL_PCD_FEATURE_FLAG]]:\r
self.Pcds[Name, Guid] = copy.deepcopy(PcdInDec)\r
self.Pcds[Name, Guid].DefaultValue = NoFiledValues[( Guid,Name)][0]\r
return AllPcds\r
continue\r
if Cache.Includes:\r
if str(Cache.MetaFile.Path) not in PlatformInc:\r
- PlatformInc[str(Cache.MetaFile.Path)] = Cache.CommonIncludes\r
+ PlatformInc[str(Cache.MetaFile.Path)] = []\r
+ PlatformInc[str(Cache.MetaFile.Path)].append (os.path.dirname(Cache.MetaFile.Path))\r
+ PlatformInc[str(Cache.MetaFile.Path)].extend (Cache.CommonIncludes)\r
\r
PcdDependDEC = []\r
for Pcd in StructuredPcds.values():\r