Reviewed-by: Yonghong Zhu <[email protected]> Best Regards, Zhu Yonghong
-----Original Message----- From: Carsey, Jaben Sent: Friday, July 20, 2018 1:58 AM To: [email protected] Cc: Gao, Liming <[email protected]>; Zhu, Yonghong <[email protected]> Subject: [PATCH v1 1/1] 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 <[email protected]> Cc: Yonghong Zhu <[email protected]> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Jaben Carsey <[email protected]> --- 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 992de5490dff..f1fe5514f3f2 100644 --- a/BaseTools/Source/Python/AutoGen/GenMake.py +++ b/BaseTools/Source/Python/AutoGen/GenMake.py @@ -435,7 +435,6 @@ cleanlib: self.ListFileMacros = {} self.FileCache = {} - self.FileDependency = [] self.LibraryBuildCommandList = [] self.LibraryFileList = [] self.LibraryMakefileList = [] @@ -890,26 +889,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() @@ -919,13 +918,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: @@ -943,8 +942,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.16.2.windows.1 _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

