]> git.proxmox.com Git - mirror_edk2.git/commitdiff
BaseTools: the list and iterator translation
authorFeng, Bob C <bob.c.feng@intel.com>
Mon, 28 Jan 2019 07:06:30 +0000 (15:06 +0800)
committerFeng, Bob C <bob.c.feng@intel.com>
Fri, 1 Feb 2019 03:09:24 +0000 (11:09 +0800)
In python3,The keys of the dictionary not a list,It needs to be converted

Cc: Bob Feng <bob.c.feng@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Yonghong Zhu <yonghong.zhu@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Zhiju.Fan <zhijux.fan@intel.com>
Tested-by: Laszlo Ersek <lersek@redhat.com>
Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Bob Feng <bob.c.feng@intel.com>
13 files changed:
BaseTools/Source/Python/AutoGen/AutoGen.py
BaseTools/Source/Python/AutoGen/GenC.py
BaseTools/Source/Python/AutoGen/GenMake.py
BaseTools/Source/Python/AutoGen/GenPcdDb.py
BaseTools/Source/Python/AutoGen/StrGather.py
BaseTools/Source/Python/Common/Misc.py
BaseTools/Source/Python/Common/StringUtils.py
BaseTools/Source/Python/GenFds/FfsInfStatement.py
BaseTools/Source/Python/Workspace/DscBuildData.py
BaseTools/Source/Python/Workspace/InfBuildData.py
BaseTools/Source/Python/Workspace/MetaDataTable.py
BaseTools/Source/Python/build/BuildReport.py
BaseTools/Source/Python/build/build.py

index 5f0da5a81537e752fafb62d5606ec7bb6d65c784..baa1842667397a2f9ce6686c27cf7862a3b8cb66 100644 (file)
@@ -929,7 +929,7 @@ class WorkspaceAutoGen(AutoGen):
     def _CheckAllPcdsTokenValueConflict(self):\r
         for Pa in self.AutoGenObjectList:\r
             for Package in Pa.PackageList:\r
-                PcdList = Package.Pcds.values()\r
+                PcdList = list(Package.Pcds.values())\r
                 PcdList.sort(key=lambda x: int(x.TokenValue, 0))\r
                 Count = 0\r
                 while (Count < len(PcdList) - 1) :\r
@@ -975,7 +975,7 @@ class WorkspaceAutoGen(AutoGen):
                         Count += SameTokenValuePcdListCount\r
                     Count += 1\r
 \r
-                PcdList = Package.Pcds.values()\r
+                PcdList = list(Package.Pcds.values())\r
                 PcdList.sort(key=lambda x: "%s.%s" % (x.TokenSpaceGuidCName, x.TokenCName))\r
                 Count = 0\r
                 while (Count < len(PcdList) - 1) :\r
@@ -1300,7 +1300,7 @@ class PlatformAutoGen(AutoGen):
                 if os.path.exists(VpdMapFilePath):\r
                     OrgVpdFile.Read(VpdMapFilePath)\r
                     PcdItems = OrgVpdFile.GetOffset(PcdNvStoreDfBuffer[0])\r
-                    NvStoreOffset = PcdItems.values()[0].strip() if PcdItems else '0'\r
+                    NvStoreOffset = list(PcdItems.values())[0].strip() if PcdItems else '0'\r
                 else:\r
                     EdkLogger.error("build", FILE_READ_FAILURE, "Can not find VPD map file %s to fix up VPD offset." % VpdMapFilePath)\r
 \r
@@ -1499,7 +1499,7 @@ class PlatformAutoGen(AutoGen):
         if (self.Workspace.ArchList[-1] == self.Arch):\r
             for Pcd in self._DynamicPcdList:\r
                 # just pick the a value to determine whether is unicode string type\r
-                Sku = Pcd.SkuInfoList.values()[0]\r
+                Sku = Pcd.SkuInfoList.get(TAB_DEFAULT)\r
                 Sku.VpdOffset = Sku.VpdOffset.strip()\r
 \r
                 if Pcd.DatumType not in [TAB_UINT8, TAB_UINT16, TAB_UINT32, TAB_UINT64, TAB_VOID, "BOOLEAN"]:\r
@@ -1605,7 +1605,7 @@ class PlatformAutoGen(AutoGen):
                         if not FoundFlag :\r
                             # just pick the a value to determine whether is unicode string type\r
                             SkuValueMap = {}\r
-                            SkuObjList = DscPcdEntry.SkuInfoList.items()\r
+                            SkuObjList = list(DscPcdEntry.SkuInfoList.items())\r
                             DefaultSku = DscPcdEntry.SkuInfoList.get(TAB_DEFAULT)\r
                             if DefaultSku:\r
                                 defaultindex = SkuObjList.index((TAB_DEFAULT, DefaultSku))\r
@@ -1631,7 +1631,7 @@ class PlatformAutoGen(AutoGen):
                                             DscPcdEntry.TokenSpaceGuidValue = eachDec.Guids[DecPcdEntry.TokenSpaceGuidCName]\r
                                             # Only fix the value while no value provided in DSC file.\r
                                             if not Sku.DefaultValue:\r
-                                                DscPcdEntry.SkuInfoList[DscPcdEntry.SkuInfoList.keys()[0]].DefaultValue = DecPcdEntry.DefaultValue\r
+                                                DscPcdEntry.SkuInfoList[list(DscPcdEntry.SkuInfoList.keys())[0]].DefaultValue = DecPcdEntry.DefaultValue\r
 \r
                                 if DscPcdEntry not in self._DynamicPcdList:\r
                                     self._DynamicPcdList.append(DscPcdEntry)\r
@@ -1713,7 +1713,7 @@ class PlatformAutoGen(AutoGen):
             # Delete the DynamicPcdList At the last time enter into this function\r
             for Pcd in self._DynamicPcdList:\r
                 # just pick the a value to determine whether is unicode string type\r
-                Sku = Pcd.SkuInfoList.values()[0]\r
+                Sku = Pcd.SkuInfoList.get(TAB_DEFAULT)\r
                 Sku.VpdOffset = Sku.VpdOffset.strip()\r
 \r
                 if Pcd.DatumType not in [TAB_UINT8, TAB_UINT16, TAB_UINT32, TAB_UINT64, TAB_VOID, "BOOLEAN"]:\r
@@ -2286,7 +2286,7 @@ class PlatformAutoGen(AutoGen):
                     Pcd.MaxDatumSize = str(len(Value.split(',')))\r
                 else:\r
                     Pcd.MaxDatumSize = str(len(Value) - 1)\r
-        return Pcds.values()\r
+        return list(Pcds.values())\r
 \r
 \r
 \r
@@ -2355,7 +2355,7 @@ class PlatformAutoGen(AutoGen):
         # Use the highest priority value.\r
         #\r
         if (len(OverrideList) >= 2):\r
-            KeyList = OverrideList.keys()\r
+            KeyList = list(OverrideList.keys())\r
             for Index in range(len(KeyList)):\r
                 NowKey = KeyList[Index]\r
                 Target1, ToolChain1, Arch1, CommandType1, Attr1 = NowKey.split("_")\r
@@ -2473,9 +2473,9 @@ class PlatformAutoGen(AutoGen):
                     if Attr == TAB_TOD_DEFINES_BUILDRULEORDER:\r
                         BuildRuleOrder = Options[Tool][Attr]\r
 \r
-        AllTools = set(ModuleOptions.keys() + PlatformOptions.keys() +\r
-                       PlatformModuleOptions.keys() + ModuleTypeOptions.keys() +\r
-                       self.ToolDefinition.keys())\r
+        AllTools = set(list(ModuleOptions.keys()) + list(PlatformOptions.keys()) +\r
+                       list(PlatformModuleOptions.keys()) + list(ModuleTypeOptions.keys()) +\r
+                       list(self.ToolDefinition.keys()))\r
         BuildOptions = defaultdict(lambda: defaultdict(str))\r
         for Tool in AllTools:\r
             for Options in [self.ToolDefinition, ModuleOptions, PlatformOptions, ModuleTypeOptions, PlatformModuleOptions]:\r
@@ -3519,7 +3519,7 @@ class ModuleAutoGen(AutoGen):
             return None\r
         MapFileName = os.path.join(self.OutputDir, self.Name + ".map")\r
         EfiFileName = os.path.join(self.OutputDir, self.Name + ".efi")\r
-        VfrUniOffsetList = GetVariableOffset(MapFileName, EfiFileName, VfrUniBaseName.values())\r
+        VfrUniOffsetList = GetVariableOffset(MapFileName, EfiFileName, list(VfrUniBaseName.values()))\r
         if not VfrUniOffsetList:\r
             return None\r
 \r
index f1f3b6f359c55b94b35acafecaa07322a3ce2603..700c94b3a739cdfec4c50662eacb7c41f8199ed6 100644 (file)
@@ -2050,7 +2050,7 @@ def CreateCode(Info, AutoGenC, AutoGenH, StringH, UniGenCFlag, UniGenBinBuffer,
             if Guid in Info.Module.GetGuidsUsedByPcd():\r
                 continue\r
             GuidMacros.append('#define %s %s' % (Guid, Info.Module.Guids[Guid]))\r
-        for Guid, Value in Info.Module.Protocols.items() + Info.Module.Ppis.items():\r
+        for Guid, Value in list(Info.Module.Protocols.items()) + list(Info.Module.Ppis.items()):\r
             GuidMacros.append('#define %s %s' % (Guid, Value))\r
         # supports FixedAtBuild and FeaturePcd usage in VFR file\r
         if Info.VfrFileList and Info.ModulePcdList:\r
index 3094a555e038f9684a78e89c3d0b6263a667584b..c42053eb4ca948d58c6d3d247dfd172fec40c206 100644 (file)
@@ -675,8 +675,8 @@ cleanlib:
             "separator"                 : Separator,\r
             "module_tool_definitions"   : ToolsDef,\r
 \r
-            "shell_command_code"        : self._SHELL_CMD_[self._FileType].keys(),\r
-            "shell_command"             : self._SHELL_CMD_[self._FileType].values(),\r
+            "shell_command_code"        : list(self._SHELL_CMD_[self._FileType].keys()),\r
+            "shell_command"             : list(self._SHELL_CMD_[self._FileType].values()),\r
 \r
             "module_entry_point"        : ModuleEntryPoint,\r
             "image_entry_point"         : ImageEntryPoint,\r
@@ -1275,8 +1275,8 @@ ${BEGIN}\t-@${create_directory_command}\n${END}\
             "separator"                 : Separator,\r
             "module_tool_definitions"   : ToolsDef,\r
 \r
-            "shell_command_code"        : self._SHELL_CMD_[self._FileType].keys(),\r
-            "shell_command"             : self._SHELL_CMD_[self._FileType].values(),\r
+            "shell_command_code"        : list(self._SHELL_CMD_[self._FileType].keys()),\r
+            "shell_command"             : list(self._SHELL_CMD_[self._FileType].values()),\r
 \r
             "create_directory_command"  : self.GetCreateDirectoryCommand(self.IntermediateDirectoryList),\r
             "custom_makefile_content"   : CustomMakefile\r
@@ -1449,8 +1449,8 @@ cleanlib:
 \r
             "toolchain_tag"             : MyAgo.ToolChain,\r
             "build_target"              : MyAgo.BuildTarget,\r
-            "shell_command_code"        : self._SHELL_CMD_[self._FileType].keys(),\r
-            "shell_command"             : self._SHELL_CMD_[self._FileType].values(),\r
+            "shell_command_code"        : list(self._SHELL_CMD_[self._FileType].keys()),\r
+            "shell_command"             : list(self._SHELL_CMD_[self._FileType].values()),\r
             "build_architecture_list"   : MyAgo.Arch,\r
             "architecture"              : MyAgo.Arch,\r
             "separator"                 : Separator,\r
@@ -1581,8 +1581,8 @@ class TopLevelMakefile(BuildFile):
 \r
             "toolchain_tag"             : MyAgo.ToolChain,\r
             "build_target"              : MyAgo.BuildTarget,\r
-            "shell_command_code"        : self._SHELL_CMD_[self._FileType].keys(),\r
-            "shell_command"             : self._SHELL_CMD_[self._FileType].values(),\r
+            "shell_command_code"        : list(self._SHELL_CMD_[self._FileType].keys()),\r
+            "shell_command"             : list(self._SHELL_CMD_[self._FileType].values()),\r
             'arch'                      : list(MyAgo.ArchList),\r
             "build_architecture_list"   : ','.join(MyAgo.ArchList),\r
             "separator"                 : Separator,\r
index d3e85293d25f520b311be108d8e78a0ea6d2e967..2cb1745823b959d3e82a34e9e0776794ac2300a0 100644 (file)
@@ -615,7 +615,7 @@ def BuildExDataBase(Dict):
     DbVardefValueUint32 = DbItemList(4, RawDataList = VardefValueUint32)\r
     VpdHeadValue = Dict['VPD_DB_VALUE']\r
     DbVpdHeadValue = DbComItemList(4, RawDataList = VpdHeadValue)\r
-    ExMapTable = zip(Dict['EXMAPPING_TABLE_EXTOKEN'], Dict['EXMAPPING_TABLE_LOCAL_TOKEN'], Dict['EXMAPPING_TABLE_GUID_INDEX'])\r
+    ExMapTable = list(zip(Dict['EXMAPPING_TABLE_EXTOKEN'], Dict['EXMAPPING_TABLE_LOCAL_TOKEN'], Dict['EXMAPPING_TABLE_GUID_INDEX']))\r
     DbExMapTable = DbExMapTblItemList(8, RawDataList = ExMapTable)\r
     LocalTokenNumberTable = Dict['LOCAL_TOKEN_NUMBER_DB_VALUE']\r
     DbLocalTokenNumberTable = DbItemList(4, RawDataList = LocalTokenNumberTable)\r
@@ -649,7 +649,7 @@ def BuildExDataBase(Dict):
     PcdNameOffsetTable = Dict['PCD_NAME_OFFSET']\r
     DbPcdNameOffsetTable = DbItemList(4, RawDataList = PcdNameOffsetTable)\r
 \r
-    SizeTableValue = zip(Dict['SIZE_TABLE_MAXIMUM_LENGTH'], Dict['SIZE_TABLE_CURRENT_LENGTH'])\r
+    SizeTableValue = list(zip(Dict['SIZE_TABLE_MAXIMUM_LENGTH'], Dict['SIZE_TABLE_CURRENT_LENGTH']))\r
     DbSizeTableValue = DbSizeTableItemList(2, RawDataList = SizeTableValue)\r
     InitValueUint16 = Dict['INIT_DB_VALUE_UINT16']\r
     DbInitValueUint16 = DbComItemList(2, RawDataList = InitValueUint16)\r
index d34a9e944709c98c4d7ddc88dd20e225b756ec2c..d87680b2e7584fe2ecc9dcc288e3ad09b8814610 100644 (file)
@@ -551,9 +551,9 @@ def GetStringFiles(UniFilList, SourceFileList, IncludeList, IncludePathList, Ski
             #\r
             # support ISO 639-2 codes in .UNI files of EDK Shell\r
             #\r
-            Uni = UniFileClassObject(sorted (UniFilList), True, IncludePathList)\r
+            Uni = UniFileClassObject(sorted(UniFilList, key=lambda x: x.File), True, IncludePathList)\r
         else:\r
-            Uni = UniFileClassObject(sorted (UniFilList), IsCompatibleMode, IncludePathList)\r
+            Uni = UniFileClassObject(sorted(UniFilList, key=lambda x: x.File), IsCompatibleMode, IncludePathList)\r
     else:\r
         EdkLogger.error("UnicodeStringGather", AUTOGEN_ERROR, 'No unicode files given')\r
 \r
index e0e355286b811c65b42bb0edaba0a1d43a93be68..d3b71fc4a2662258cbc3410e7c255bd6099d3248 100644 (file)
@@ -574,13 +574,14 @@ def RealPath(File, Dir='', OverrideDir=''):
 #\r
 def GuidValue(CName, PackageList, Inffile = None):\r
     for P in PackageList:\r
-        GuidKeys = P.Guids.keys()\r
+        GuidKeys = list(P.Guids.keys())\r
         if Inffile and P._PrivateGuids:\r
             if not Inffile.startswith(P.MetaFile.Dir):\r
                 GuidKeys = [x for x in P.Guids if x not in P._PrivateGuids]\r
         if CName in GuidKeys:\r
             return P.Guids[CName]\r
     return None\r
+    return None\r
 \r
 ## A string template class\r
 #\r
@@ -1637,7 +1638,7 @@ class SkuClass():
             self.SkuIdSet = ['DEFAULT']\r
             self.SkuIdNumberSet = ['0U']\r
         elif SkuIdentifier == 'ALL':\r
-            self.SkuIdSet = SkuIds.keys()\r
+            self.SkuIdSet = list(SkuIds.keys())\r
             self.SkuIdNumberSet = [num[0].strip() + 'U' for num in SkuIds.values()]\r
         else:\r
             r = SkuIdentifier.split('|')\r
index d5afde7a95a5c1ad9edf317fc195dbd387bf03de..0fa51f365b1bff138828419a880a4d97a08bc392 100644 (file)
@@ -99,7 +99,7 @@ def GetSplitValueList(String, SplitTag=DataType.TAB_VALUE_SPLIT, MaxSplit= -1):
 # @retval list() A list for splitted string\r
 #\r
 def GetSplitList(String, SplitStr=DataType.TAB_VALUE_SPLIT, MaxSplit= -1):\r
-    return map(lambda l: l.strip(), String.split(SplitStr, MaxSplit))\r
+    return list(map(lambda l: l.strip(), String.split(SplitStr, MaxSplit)))\r
 \r
 ## MergeArches\r
 #\r
@@ -545,7 +545,7 @@ def GetSingleValueOfKeyFromLines(Lines, Dictionary, CommentCharacter, KeySplitCh
                 #\r
                 LineList[1] = CleanString(LineList[1], CommentCharacter)\r
                 if ValueSplitFlag:\r
-                    Value = map(string.strip, LineList[1].split(ValueSplitCharacter))\r
+                    Value = list(map(string.strip, LineList[1].split(ValueSplitCharacter)))\r
                 else:\r
                     Value = CleanString(LineList[1], CommentCharacter).splitlines()\r
 \r
@@ -751,7 +751,7 @@ def SplitString(String):
 # @param StringList:  A list for strings to be converted\r
 #\r
 def ConvertToSqlString(StringList):\r
-    return map(lambda s: s.replace("'", "''"), StringList)\r
+    return list(map(lambda s: s.replace("'", "''"), StringList))\r
 \r
 ## Convert To Sql String\r
 #\r
index a7298a6daf848d3307fdf83b857bac40396a055b..80257923f01a9cbfea1dbf2ff1da826a245405b5 100644 (file)
@@ -1075,7 +1075,7 @@ class FfsInfStatement(FfsInfStatementClassObject):
     def __GetBuildOutputMapFileVfrUniInfo(self, VfrUniBaseName):\r
         MapFileName = os.path.join(self.EfiOutputPath, self.BaseName + ".map")\r
         EfiFileName = os.path.join(self.EfiOutputPath, self.BaseName + ".efi")\r
-        return GetVariableOffset(MapFileName, EfiFileName, VfrUniBaseName.values())\r
+        return GetVariableOffset(MapFileName, EfiFileName, list(VfrUniBaseName.values()))\r
 \r
     ## __GenUniVfrOffsetFile() method\r
     #\r
index c2bc7050916f3f5f7afa443c1e9c19852dc0815a..13b2cef59ded1892e511fcd710b5acb9add86d3d 100644 (file)
@@ -1606,7 +1606,7 @@ class DscBuildData(PlatformBuildClassObject):
                 elif TAB_DEFAULT in pcd.SkuInfoList and TAB_COMMON in pcd.SkuInfoList:\r
                     del pcd.SkuInfoList[TAB_COMMON]\r
 \r
-        map(self.FilterSkuSettings, [Pcds[pcdkey] for pcdkey in Pcds if Pcds[pcdkey].Type in DynamicPcdType])\r
+        list((self.FilterSkuSettings, [Pcds[pcdkey] for pcdkey in Pcds if Pcds[pcdkey].Type in DynamicPcdType]))\r
         return Pcds\r
     @cached_property\r
     def PlatformUsedPcds(self):\r
@@ -2560,7 +2560,7 @@ class DscBuildData(PlatformBuildClassObject):
         if BuildOptions:\r
             ArchBuildOptions = {arch:flags for arch,flags in BuildOptions.items() if arch != 'COMMON'}\r
             if len(ArchBuildOptions.keys()) == 1:\r
-                BuildOptions['COMMON'] |= (ArchBuildOptions.values()[0])\r
+                BuildOptions['COMMON'] |= (list(ArchBuildOptions.values())[0])\r
             elif len(ArchBuildOptions.keys()) > 1:\r
                 CommonBuildOptions = reduce(lambda x,y: x&y, ArchBuildOptions.values())\r
                 BuildOptions['COMMON'] |= CommonBuildOptions\r
@@ -2778,7 +2778,7 @@ class DscBuildData(PlatformBuildClassObject):
             elif TAB_DEFAULT in pcd.SkuInfoList and TAB_COMMON in pcd.SkuInfoList:\r
                 del pcd.SkuInfoList[TAB_COMMON]\r
 \r
-        map(self.FilterSkuSettings, Pcds.values())\r
+        list(map(self.FilterSkuSettings, Pcds.values()))\r
 \r
         return Pcds\r
 \r
@@ -2843,7 +2843,7 @@ class DscBuildData(PlatformBuildClassObject):
                     PcdObj.SkuInfoList[skuname].SkuId = skuid\r
                     PcdObj.SkuInfoList[skuname].SkuIdName = skuname\r
             if PcdType in [self._PCD_TYPE_STRING_[MODEL_PCD_DYNAMIC_HII], self._PCD_TYPE_STRING_[MODEL_PCD_DYNAMIC_EX_HII]]:\r
-                PcdObj.DefaultValue = PcdObj.SkuInfoList.values()[0].HiiDefaultValue if self.SkuIdMgr.SkuUsageType == self.SkuIdMgr.SINGLE else PcdObj.SkuInfoList[TAB_DEFAULT].HiiDefaultValue\r
+                PcdObj.DefaultValue = list(PcdObj.SkuInfoList.values())[0].HiiDefaultValue if self.SkuIdMgr.SkuUsageType == self.SkuIdMgr.SINGLE else PcdObj.SkuInfoList[TAB_DEFAULT].HiiDefaultValue\r
             Pcds[PcdCName, TokenSpaceGuid]= PcdObj\r
         return Pcds\r
     ## Retrieve dynamic HII PCD settings\r
@@ -2964,7 +2964,6 @@ class DscBuildData(PlatformBuildClassObject):
                 Pcds[PcdCName, TokenSpaceGuid].DscRawValue[SkuName] = {}\r
             Pcds[PcdCName, TokenSpaceGuid].DscRawValue[SkuName][DefaultStore] = DefaultValue\r
         for pcd in Pcds.values():\r
-            SkuInfoObj = pcd.SkuInfoList.values()[0]\r
             pcdDecObject = self._DecPcds[pcd.TokenCName, pcd.TokenSpaceGuidCName]\r
             pcd.DatumType = pcdDecObject.DatumType\r
             # Only fix the value while no value provided in DSC file.\r
@@ -2975,6 +2974,7 @@ class DscBuildData(PlatformBuildClassObject):
                         sku.DefaultStoreDict[default_store]=pcdDecObject.DefaultValue\r
                     pcd.DefaultValue = pcdDecObject.DefaultValue\r
             if TAB_DEFAULT not in pcd.SkuInfoList and TAB_COMMON not in pcd.SkuInfoList:\r
+                SkuInfoObj = list(pcd.SkuInfoList.values())[0]\r
                 valuefromDec = pcdDecObject.DefaultValue\r
                 SkuInfo = SkuInfoClass(TAB_DEFAULT, '0', SkuInfoObj.VariableName, SkuInfoObj.VariableGuid, SkuInfoObj.VariableOffset, valuefromDec, VariableAttribute=SkuInfoObj.VariableAttribute, DefaultStore={DefaultStore:valuefromDec})\r
                 pcd.SkuInfoList[TAB_DEFAULT] = SkuInfo\r
@@ -3004,7 +3004,7 @@ class DscBuildData(PlatformBuildClassObject):
             invalidpcd = ",".join(invalidhii)\r
             EdkLogger.error('build', PCD_VARIABLE_INFO_ERROR, Message='The same HII PCD must map to the same EFI variable for all SKUs', File=self.MetaFile, ExtraData=invalidpcd)\r
 \r
-        map(self.FilterSkuSettings, Pcds.values())\r
+        list(map(self.FilterSkuSettings, Pcds.values()))\r
 \r
         return Pcds\r
 \r
@@ -3102,7 +3102,6 @@ class DscBuildData(PlatformBuildClassObject):
                 Pcds[PcdCName, TokenSpaceGuid].DscRawValue[SkuName] = {}\r
             Pcds[PcdCName, TokenSpaceGuid].DscRawValue[SkuName][TAB_DEFAULT_STORES_DEFAULT] = InitialValue\r
         for pcd in Pcds.values():\r
-            SkuInfoObj = pcd.SkuInfoList.values()[0]\r
             pcdDecObject = self._DecPcds[pcd.TokenCName, pcd.TokenSpaceGuidCName]\r
             pcd.DatumType = pcdDecObject.DatumType\r
             # Only fix the value while no value provided in DSC file.\r
@@ -3110,6 +3109,7 @@ class DscBuildData(PlatformBuildClassObject):
                 if not sku.DefaultValue:\r
                     sku.DefaultValue = pcdDecObject.DefaultValue\r
             if TAB_DEFAULT not in pcd.SkuInfoList and TAB_COMMON not in pcd.SkuInfoList:\r
+                SkuInfoObj = list(pcd.SkuInfoList.values())[0]\r
                 valuefromDec = pcdDecObject.DefaultValue\r
                 SkuInfo = SkuInfoClass(TAB_DEFAULT, '0', '', '', '', '', SkuInfoObj.VpdOffset, valuefromDec)\r
                 pcd.SkuInfoList[TAB_DEFAULT] = SkuInfo\r
@@ -3129,7 +3129,7 @@ class DscBuildData(PlatformBuildClassObject):
                 for sku in pcd.SkuInfoList.values():\r
                     sku.DefaultValue = StringToArray(sku.DefaultValue) if sku.DefaultValue.startswith(('L"',"L'")) else sku.DefaultValue\r
 \r
-        map(self.FilterSkuSettings, Pcds.values())\r
+        list(map(self.FilterSkuSettings, Pcds.values()))\r
         return Pcds\r
 \r
     ## Add external modules\r
index f0c7e6ddd4f1b236d2a8e79a53651544e20c634d..fc779a9d25981ac6fa2c966dfbdab77889188389 100644 (file)
@@ -32,7 +32,7 @@ from Workspace.BuildClassObject import ModuleBuildClassObject, LibraryClassObjec
 #\r
 def _ProtocolValue(CName, PackageList, Inffile = None):\r
     for P in PackageList:\r
-        ProtocolKeys = P.Protocols.keys()\r
+        ProtocolKeys = list(P.Protocols.keys())\r
         if Inffile and P._PrivateProtocols:\r
             if not Inffile.startswith(P.MetaFile.Dir):\r
                 ProtocolKeys = [x for x in P.Protocols if x not in P._PrivateProtocols]\r
@@ -51,7 +51,7 @@ def _ProtocolValue(CName, PackageList, Inffile = None):
 #\r
 def _PpiValue(CName, PackageList, Inffile = None):\r
     for P in PackageList:\r
-        PpiKeys = P.Ppis.keys()\r
+        PpiKeys = list(P.Ppis.keys())\r
         if Inffile and P._PrivatePpis:\r
             if not Inffile.startswith(P.MetaFile.Dir):\r
                 PpiKeys = [x for x in P.Ppis if x not in P._PrivatePpis]\r
index 8becddbe0849a7b0793dd626c735d770d35cda4b..c5be0ab10c77c917b9bc845b8426bbd633aa4f5f 100644 (file)
@@ -22,7 +22,7 @@ from CommonDataClass.DataClass import FileClass
 \r
 ## Convert to SQL required string format\r
 def ConvertToSqlString(StringList):\r
-    return map(lambda s: "'" + s.replace("'", "''") + "'", StringList)\r
+    return list(map(lambda s: "'" + s.replace("'", "''") + "'", StringList))\r
 \r
 ## TableFile\r
 #\r
index 9483262dd154e18a1304c0dfae98ed7f850d3410..1cd1b0886a11eda5d20c6089713905b58268efa2 100644 (file)
@@ -1209,7 +1209,7 @@ class PcdReport(object):
     def ParseStruct(self, struct):\r
         HasDscOverride = False\r
         if struct:\r
-            for _, Values in struct.items():\r
+            for _, Values in list(struct.items()):\r
                 for Key, value in Values.items():\r
                     if value[1] and value[1].endswith('.dsc'):\r
                         HasDscOverride = True\r
@@ -1425,7 +1425,7 @@ class PcdReport(object):
                         FiledOverrideFlag = False\r
                         OverrideValues = Pcd.SkuOverrideValues[Sku]\r
                         if OverrideValues:\r
-                            Keys = OverrideValues.keys()\r
+                            Keys = list(OverrideValues.keys())\r
                             OverrideFieldStruct = self.OverrideFieldValue(Pcd, OverrideValues[Keys[0]])\r
                             self.PrintStructureInfo(File, OverrideFieldStruct)\r
                             FiledOverrideFlag = True\r
index c2b22cca701e1871293348a110d3c95e4398e284..43fc3c8077bef59145ec6cc94ea7da638808859d 100644 (file)
@@ -443,7 +443,7 @@ class BuildTask:
 \r
                 # get all pending tasks\r
                 BuildTask._PendingQueueLock.acquire()\r
-                BuildObjectList = BuildTask._PendingQueue.keys()\r
+                BuildObjectList = list(BuildTask._PendingQueue.keys())\r
                 #\r
                 # check if their dependency is resolved, and if true, move them\r
                 # into ready queue\r