From 0f78fd73496f26d45516f6c453a66f35edca6ab0 Mon Sep 17 00:00:00 2001 From: Jaben Carsey Date: Fri, 20 Jul 2018 01:57:39 +0800 Subject: [PATCH] BaseTools: AutoGen - change class variable to funciton variable This variable is only used in one function, make it local there. Also when iterating on the variable, use dict.items() to get value instead of re-looking up the value multiple times. Cc: Liming Gao Cc: Yonghong Zhu Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Jaben Carsey Reviewed-by: Yonghong Zhu --- BaseTools/Source/Python/AutoGen/GenMake.py | 25 +++++++++++----------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/BaseTools/Source/Python/AutoGen/GenMake.py b/BaseTools/Source/Python/AutoGen/GenMake.py index f1dc147541..3dc5ac2cf3 100644 --- a/BaseTools/Source/Python/AutoGen/GenMake.py +++ b/BaseTools/Source/Python/AutoGen/GenMake.py @@ -436,7 +436,6 @@ cleanlib: self.ListFileMacros = {} self.FileCache = {} - self.FileDependency = [] self.LibraryBuildCommandList = [] self.LibraryFileList = [] self.LibraryMakefileList = [] @@ -891,26 +890,26 @@ cleanlib: if Item in SourceFileList: SourceFileList.remove(Item) - self.FileDependency = self.GetFileDependency( + FileDependencyDict = self.GetFileDependency( SourceFileList, ForceIncludedFile, self._AutoGenObject.IncludePathList + self._AutoGenObject.BuildOptionIncPathList ) DepSet = None - for File in self.FileDependency: - if not self.FileDependency[File]: - self.FileDependency[File] = ['$(FORCE_REBUILD)'] + for File,Dependency in FileDependencyDict.items(): + if not Dependency: + FileDependencyDict[File] = ['$(FORCE_REBUILD)'] continue - self._AutoGenObject.AutoGenDepSet |= set(self.FileDependency[File]) + self._AutoGenObject.AutoGenDepSet |= set(Dependency) # skip non-C files if File.Ext not in [".c", ".C"] or File.Name == "AutoGen.c": continue elif DepSet is None: - DepSet = set(self.FileDependency[File]) + DepSet = set(Dependency) else: - DepSet &= set(self.FileDependency[File]) + DepSet &= set(Dependency) # in case nothing in SourceFileList if DepSet is None: DepSet = set() @@ -920,13 +919,13 @@ cleanlib: for File in DepSet: self.CommonFileDependency.append(self.PlaceMacro(File.Path, self.Macros)) - for File in self.FileDependency: + for File in FileDependencyDict: # skip non-C files if File.Ext not in [".c", ".C"] or File.Name == "AutoGen.c": continue - NewDepSet = set(self.FileDependency[File]) + NewDepSet = set(FileDependencyDict[File]) NewDepSet -= DepSet - self.FileDependency[File] = ["$(COMMON_DEPS)"] + list(NewDepSet) + FileDependencyDict[File] = ["$(COMMON_DEPS)"] + list(NewDepSet) # Convert target description object to target string in makefile for Type in self._AutoGenObject.Targets: @@ -944,8 +943,8 @@ cleanlib: for Dep in T.Dependencies: Deps.append(self.PlaceMacro(str(Dep), self.Macros)) # Add inclusion-dependencies - if len(T.Inputs) == 1 and T.Inputs[0] in self.FileDependency: - for F in self.FileDependency[T.Inputs[0]]: + if len(T.Inputs) == 1 and T.Inputs[0] in FileDependencyDict: + for F in FileDependencyDict[T.Inputs[0]]: Deps.append(self.PlaceMacro(str(F), self.Macros)) # Add source-dependencies for F in T.Inputs: -- 2.39.2