]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/GenFds/GuidSection.py
BaseTools: FMP capsule add the support to generate auth info
[mirror_edk2.git] / BaseTools / Source / Python / GenFds / GuidSection.py
index ac5ae585f90f437f9b929f795c2cae3c3d75a46e..f199dcd2ccc11ad6d2df5dd612f50f499ee435e7 100644 (file)
@@ -27,6 +27,7 @@ from Common import EdkLogger
 from Common.BuildToolError import *\r
 from FvImageSection import FvImageSection\r
 from Common.LongFilePathSupport import OpenLongFilePath as open\r
+from GenFds import FindExtendTool\r
 \r
 ## generate GUIDed section\r
 #\r
@@ -128,7 +129,7 @@ class GuidSection(GuidSectionClassObject) :
         ExternalTool = None\r
         ExternalOption = None\r
         if self.NameGuid != None:\r
-            ExternalTool, ExternalOption = self.__FindExtendTool__()\r
+            ExternalTool, ExternalOption = FindExtendTool(self.KeyStringList, self.CurrentArchList, self.NameGuid)\r
 \r
         #\r
         # If not have GUID , call default\r
@@ -249,61 +250,5 @@ class GuidSection(GuidSectionClassObject) :
                 self.ProcessRequired = "TRUE"\r
             return OutputFileList, self.Alignment\r
 \r
-    ## __FindExtendTool()\r
-    #\r
-    #    Find location of tools to process section data\r
-    #\r
-    #   @param  self        The object pointer\r
-    #\r
-    def __FindExtendTool__(self):\r
-        # if user not specify filter, try to deduce it from global data.\r
-        if self.KeyStringList == None or self.KeyStringList == []:\r
-            Target = GenFdsGlobalVariable.TargetName\r
-            ToolChain = GenFdsGlobalVariable.ToolChainTag\r
-            ToolDb = ToolDefClassObject.ToolDefDict(GenFdsGlobalVariable.ConfDir).ToolsDefTxtDatabase\r
-            if ToolChain not in ToolDb['TOOL_CHAIN_TAG']:\r
-                EdkLogger.error("GenFds", GENFDS_ERROR, "Can not find external tool because tool tag %s is not defined in tools_def.txt!" % ToolChain)\r
-            self.KeyStringList = [Target + '_' + ToolChain + '_' + self.CurrentArchList[0]]\r
-            for Arch in self.CurrentArchList:\r
-                if Target + '_' + ToolChain + '_' + Arch not in self.KeyStringList:\r
-                    self.KeyStringList.append(Target + '_' + ToolChain + '_' + Arch)\r
-\r
-        if GenFdsGlobalVariable.GuidToolDefinition:\r
-            if self.NameGuid in GenFdsGlobalVariable.GuidToolDefinition.keys():\r
-                return GenFdsGlobalVariable.GuidToolDefinition[self.NameGuid]\r
-\r
-        ToolDefinition = ToolDefClassObject.ToolDefDict(GenFdsGlobalVariable.ConfDir).ToolsDefTxtDictionary\r
-        ToolPathTmp = None\r
-        ToolOption = None\r
-        for ToolDef in ToolDefinition.items():\r
-            if self.NameGuid == ToolDef[1]:\r
-                KeyList = ToolDef[0].split('_')\r
-                Key = KeyList[0] + \\r
-                      '_' + \\r
-                      KeyList[1] + \\r
-                      '_' + \\r
-                      KeyList[2]\r
-                if Key in self.KeyStringList and KeyList[4] == 'GUID':\r
-\r
-                    ToolPath = ToolDefinition.get(Key + \\r
-                                                   '_' + \\r
-                                                   KeyList[3] + \\r
-                                                   '_' + \\r
-                                                   'PATH')\r
-\r
-                    ToolOption = ToolDefinition.get(Key + \\r
-                                                    '_' + \\r
-                                                    KeyList[3] + \\r
-                                                    '_' + \\r
-                                                    'FLAGS')\r
-                    if ToolPathTmp == None:\r
-                        ToolPathTmp = ToolPath\r
-                    else:\r
-                        if ToolPathTmp != ToolPath:\r
-                            EdkLogger.error("GenFds", GENFDS_ERROR, "Don't know which tool to use, %s or %s ?" % (ToolPathTmp, ToolPath))\r
-\r
-        GenFdsGlobalVariable.GuidToolDefinition[self.NameGuid] = (ToolPathTmp, ToolOption)\r
-        return ToolPathTmp, ToolOption\r
-\r
 \r
 \r