]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/GenFds/GenFdsGlobalVariable.py
BaseTools:Fix GenFds issue for BuildOption replace GenFdsOption
[mirror_edk2.git] / BaseTools / Source / Python / GenFds / GenFdsGlobalVariable.py
index 6e1ff7fe04b644f245d856f3c5076003112678d4..dc1727c4666db66e9621f311f96dab4c7b1a8e19 100644 (file)
@@ -23,9 +23,9 @@ from Common.BuildToolError import COMMAND_FAILURE,GENFDS_ERROR
 from Common import EdkLogger\r
 from Common.Misc import SaveFileOnChange\r
 \r
-from Common.TargetTxtClassObject import TargetTxt\r
-from Common.ToolDefClassObject import ToolDef\r
-from AutoGen.BuildEngine import BuildRuleObj\r
+from Common.TargetTxtClassObject import TargetTxtDict\r
+from Common.ToolDefClassObject import ToolDefDict\r
+from AutoGen.BuildEngine import ToolBuildRule\r
 import Common.DataType as DataType\r
 from Common.Misc import PathClass\r
 from Common.LongFilePathSupport import OpenLongFilePath as open\r
@@ -96,12 +96,15 @@ class GenFdsGlobalVariable:
     def _LoadBuildRule():\r
         if GenFdsGlobalVariable.__BuildRuleDatabase:\r
             return GenFdsGlobalVariable.__BuildRuleDatabase\r
-        GenFdsGlobalVariable.__BuildRuleDatabase = BuildRuleObj\r
-        ToolDefinitionFile = TargetTxt.TargetTxtDictionary[DataType.TAB_TAT_DEFINES_TOOL_CHAIN_CONF]\r
+        BuildRule = ToolBuildRule()\r
+        GenFdsGlobalVariable.__BuildRuleDatabase = BuildRule.ToolBuildRule\r
+        TargetObj = TargetTxtDict()\r
+        ToolDefinitionFile = TargetObj.Target.TargetTxtDictionary[DataType.TAB_TAT_DEFINES_TOOL_CHAIN_CONF]\r
         if ToolDefinitionFile == '':\r
             ToolDefinitionFile = "Conf/tools_def.txt"\r
         if os.path.isfile(ToolDefinitionFile):\r
-            ToolDefinition = ToolDef.ToolsDefTxtDatabase\r
+            ToolDefObj = ToolDefDict((os.path.join(os.getenv("WORKSPACE"), "Conf")))\r
+            ToolDefinition = ToolDefObj.ToolDef.ToolsDefTxtDatabase\r
             if DataType.TAB_TOD_DEFINES_BUILDRULEFAMILY in ToolDefinition \\r
                and GenFdsGlobalVariable.ToolChainTag in ToolDefinition[DataType.TAB_TOD_DEFINES_BUILDRULEFAMILY] \\r
                and ToolDefinition[DataType.TAB_TOD_DEFINES_BUILDRULEFAMILY][GenFdsGlobalVariable.ToolChainTag]:\r
@@ -830,6 +833,8 @@ class GenFdsGlobalVariable:
 #  @param  NameGuid         The Guid name\r
 #\r
 def FindExtendTool(KeyStringList, CurrentArchList, NameGuid):\r
+    ToolDefObj = ToolDefDict((os.path.join(os.getenv("WORKSPACE"), "Conf")))\r
+    ToolDef = ToolDefObj.ToolDef\r
     ToolDb = ToolDef.ToolsDefTxtDatabase\r
     # if user not specify filter, try to deduce it from global data.\r
     if KeyStringList is None or KeyStringList == []:\r