unfortunately, debug-code found it's way into this patch, V2 is on the way On Sat, May 14, 2016 at 11:50 AM, Michael Zimmermann < [email protected]> wrote:
> > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Michael Zimmermann <[email protected]> > > diff --git a/BaseTools/Source/Python/Common/ToolDefClassObject.py > b/BaseTools/Source/Python/Common/ToolDefClassObject.py > index 07e6696..500375a 100644 > --- a/BaseTools/Source/Python/Common/ToolDefClassObject.py > +++ b/BaseTools/Source/Python/Common/ToolDefClassObject.py > @@ -29,7 +29,7 @@ from Common.LongFilePathSupport import OpenLongFilePath > as open > gMacroRefPattern = re.compile('(DEF\([^\(\)]+\))') > gEnvRefPattern = re.compile('(ENV\([^\(\)]+\))') > gMacroDefPattern = re.compile("DEFINE\s+([^\s]+)") > -gDefaultToolsDefFile = "tools_def.txt" > +gDefaultToolsDefFile = "tools_def.template" > > ## ToolDefClassObject > # > @@ -58,6 +58,23 @@ class ToolDefClassObject(object): > # @param Filename: Input value for full path of tools_def.txt > # > def LoadToolDefFile(self, FileName): > + self.ToolsDefTxtDatabase = { > + TAB_TOD_DEFINES_TARGET : [], > + TAB_TOD_DEFINES_TOOL_CHAIN_TAG : [], > + TAB_TOD_DEFINES_TARGET_ARCH : [], > + TAB_TOD_DEFINES_COMMAND_TYPE : [] > + } > + > + self.IncludeToolDefFile(FileName) > + > + > + ## IncludeToolDefFile > + # > + # Load target.txt file and parse it as if it's contents were inside > the main file > + # > + # @param Filename: Input value for full path of tools_def.txt > + # > + def IncludeToolDefFile(self, FileName): > FileContent = [] > if os.path.isfile(FileName): > try: > @@ -68,17 +85,21 @@ class ToolDefClassObject(object): > else: > EdkLogger.error("tools_def.txt parser", FILE_NOT_FOUND, > ExtraData=FileName) > > - self.ToolsDefTxtDatabase = { > - TAB_TOD_DEFINES_TARGET : [], > - TAB_TOD_DEFINES_TOOL_CHAIN_TAG : [], > - TAB_TOD_DEFINES_TARGET_ARCH : [], > - TAB_TOD_DEFINES_COMMAND_TYPE : [] > - } > - > for Index in range(len(FileContent)): > Line = FileContent[Index].strip() > if Line == "" or Line[0] == '#': > continue > + > + if Line.startswith("!include"): > + IncFile = Line[8:].strip() > + Done, IncFile = self.ExpandMacros(IncFile) > + if not Done: > + EdkLogger.error("tools_def.txt parser", > ATTRIBUTE_NOT_AVAILABLE, > + "Macro or Environment has not been > defined", > + ExtraData=IncFile[4:-1], File=FileName, > Line=Index+1) > + self.IncludeToolDefFile(IncFile) > + continue > + > NameValuePair = Line.split("=", 1) > if len(NameValuePair) != 2: > EdkLogger.warn("tools_def.txt parser", "Line %d: not > correct assignment statement, skipped" % (Index + 1)) > @@ -203,16 +224,8 @@ class ToolDefClassObject(object): > # @retval ToolDef An instance of ToolDefClassObject() with loaded > tools_def.txt > # > def ToolDefDict(ConfDir): > - Target = TargetTxtDict(ConfDir) > ToolDef = ToolDefClassObject() > - if DataType.TAB_TAT_DEFINES_TOOL_CHAIN_CONF in > Target.TargetTxtDictionary: > - ToolsDefFile = > Target.TargetTxtDictionary[DataType.TAB_TAT_DEFINES_TOOL_CHAIN_CONF] > - if ToolsDefFile: > - ToolDef.LoadToolDefFile(os.path.normpath(ToolsDefFile)) > - else: > - > ToolDef.LoadToolDefFile(os.path.normpath(os.path.join(ConfDir, > gDefaultToolsDefFile))) > - else: > - ToolDef.LoadToolDefFile(os.path.normpath(os.path.join(ConfDir, > gDefaultToolsDefFile))) > + ToolDef.LoadToolDefFile(os.path.normpath(os.path.join(ConfDir, > gDefaultToolsDefFile))) > return ToolDef > > ## > @@ -221,5 +234,7 @@ def ToolDefDict(ConfDir): > # script. > # > if __name__ == '__main__': > + EdkLogger.Initialize() > + EdkLogger.SetLevel(EdkLogger.VERBOSE) > ToolDef = ToolDefDict(os.getenv("WORKSPACE")) > pass > -- > 2.8.2 > > _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

