self._SkuIds = OrderedDict()\r
RecordList = self._RawData[MODEL_EFI_SKU_ID, self._Arch]\r
for Record in RecordList:\r
- if Record[0] in [None, '']:\r
+ if not Record[0]:\r
EdkLogger.error('build', FORMAT_INVALID, 'No Sku ID number',\r
File=self.MetaFile, Line=Record[-1])\r
- if Record[1] in [None, '']:\r
+ if not Record[1]:\r
EdkLogger.error('build', FORMAT_INVALID, 'No Sku ID name',\r
File=self.MetaFile, Line=Record[-1])\r
if not Pattern.match(Record[0]) and not HexPattern.match(Record[0]):\r
self.DefaultStores = OrderedDict()\r
RecordList = self._RawData[MODEL_EFI_DEFAULT_STORES, self._Arch]\r
for Record in RecordList:\r
- if Record[0] in [None, '']:\r
+ if not Record[0]:\r
EdkLogger.error('build', FORMAT_INVALID, 'No DefaultStores ID number',\r
File=self.MetaFile, Line=Record[-1])\r
- if Record[1] in [None, '']:\r
+ if not Record[1]:\r
EdkLogger.error('build', FORMAT_INVALID, 'No DefaultStores ID name',\r
File=self.MetaFile, Line=Record[-1])\r
if not Pattern.match(Record[0]) and not HexPattern.match(Record[0]):\r
nextskuid = self.SkuIdMgr.GetNextSkuId(nextskuid)\r
stru_pcd.SkuOverrideValues[skuid] = copy.deepcopy(stru_pcd.SkuOverrideValues[nextskuid]) if not NoDefault else copy.deepcopy({defaultstorename: stru_pcd.DefaultValues for defaultstorename in DefaultStores} if DefaultStores else {TAB_DEFAULT_STORES_DEFAULT:stru_pcd.DefaultValues})\r
if not NoDefault:\r
- stru_pcd.ValueChain[(skuid,'')]= (nextskuid,'')\r
+ stru_pcd.ValueChain.add(skuid,'')\r
if stru_pcd.Type in [self._PCD_TYPE_STRING_[MODEL_PCD_DYNAMIC_HII], self._PCD_TYPE_STRING_[MODEL_PCD_DYNAMIC_EX_HII]]:\r
for skuid in SkuIds:\r
nextskuid = skuid\r
for defaultstoreid in DefaultStores:\r
if defaultstoreid not in stru_pcd.SkuOverrideValues[skuid]:\r
stru_pcd.SkuOverrideValues[skuid][defaultstoreid] = copy.deepcopy(stru_pcd.SkuOverrideValues[nextskuid][mindefaultstorename])\r
- stru_pcd.ValueChain[(skuid,defaultstoreid)]= (nextskuid,mindefaultstorename)\r
+ stru_pcd.ValueChain.add(skuid,defaultstoreid)\r
S_pcd_set = DscBuildData.OverrideByFdfComm(S_pcd_set)\r
Str_Pcd_Values = self.GenerateByteArrayValue(S_pcd_set)\r
if Str_Pcd_Values:\r
def get_length(value):\r
Value = value.strip()\r
if len(value) > 1:\r
- if Value.startswith('GUID') and Value.endswith(')'):\r
+ if Value.startswith(TAB_GUID) and Value.endswith(')'):\r
return 16\r
if Value.startswith('L"') and Value.endswith('"'):\r
return len(Value[2:-1])\r
Result = Result + '"'\r
return Result\r
\r
- @staticmethod\r
- def GetPcdMaxSize(Pcd):\r
- if Pcd.DatumType in TAB_PCD_NUMERIC_TYPES:\r
- return MAX_SIZE_TYPE[Pcd.DatumType]\r
-\r
- MaxSize = int(Pcd.MaxDatumSize,10) if Pcd.MaxDatumSize else 0\r
- if Pcd.PcdValueFromComm:\r
- if Pcd.PcdValueFromComm.startswith("{") and Pcd.PcdValueFromComm.endswith("}"):\r
- return max([len(Pcd.PcdValueFromComm.split(",")),MaxSize])\r
- elif Pcd.PcdValueFromComm.startswith("\"") or Pcd.PcdValueFromComm.startswith("\'"):\r
- return max([len(Pcd.PcdValueFromComm)-2+1,MaxSize])\r
- elif Pcd.PcdValueFromComm.startswith("L\""):\r
- return max([2*(len(Pcd.PcdValueFromComm)-3+1),MaxSize])\r
- else:\r
- return max([len(Pcd.PcdValueFromComm),MaxSize])\r
- return MaxSize\r
-\r
def GenerateSizeFunction(self,Pcd):\r
CApp = "// Default Value in Dec \n"\r
CApp = CApp + "void Cal_%s_%s_Size(UINT32 *Size){\n" % (Pcd.TokenSpaceGuidCName, Pcd.TokenCName)\r
while '[' in FieldName:\r
FieldName = FieldName.rsplit('[', 1)[0]\r
CApp = CApp + ' __FLEXIBLE_SIZE(*Size, %s, %s, %d); // From %s Line %d Value %s \n' % (Pcd.DatumType, FieldName.strip("."), ArrayIndex + 1, Pcd.PcdFieldValueFromComm[FieldName_ori][1], Pcd.PcdFieldValueFromComm[FieldName_ori][2], Pcd.PcdFieldValueFromComm[FieldName_ori][0])\r
- CApp = CApp + " *Size = (%d > *Size ? %d : *Size); // The Pcd maxsize is %d \n" % (DscBuildData.GetPcdMaxSize(Pcd),DscBuildData.GetPcdMaxSize(Pcd),DscBuildData.GetPcdMaxSize(Pcd))\r
+ CApp = CApp + " *Size = (%d > *Size ? %d : *Size); // The Pcd maxsize is %d \n" % (Pcd.GetPcdMaxSize(),Pcd.GetPcdMaxSize(),Pcd.GetPcdMaxSize())\r
CApp = CApp + "}\n"\r
return CApp\r
\r