summaryrefslogtreecommitdiffstats
path: root/BaseTools/Source/Python/AutoGen
diff options
context:
space:
mode:
authorYonghong Zhu <yonghong.zhu@intel.com>2017-11-13 10:50:49 +0800
committerYonghong Zhu <yonghong.zhu@intel.com>2017-11-14 16:23:07 +0800
commit36513f3a6bcc67a460f63190b27deb3565bd2de3 (patch)
tree9aca14c6b60ef4fdf5c79236ccc0d6a3236ce0c9 /BaseTools/Source/Python/AutoGen
parent471048388cda4935866f829365922cdf70a6a45c (diff)
downloadedk2-36513f3a6bcc67a460f63190b27deb3565bd2de3.tar.gz
edk2-36513f3a6bcc67a460f63190b27deb3565bd2de3.tar.bz2
edk2-36513f3a6bcc67a460f63190b27deb3565bd2de3.zip
BaseTools: Fix the bug to re-build uni file for Library
The root cause is Module's self.CanSkip() is before LibraryAutoGen, then when a uni file of library is changed, Module's self.CanSkip() is still true which cause the library is not regenerated. This patch change Module's self.CanSkip() after LibraryAutoGen. Fixes: https://bugzilla.tianocore.org/show_bug.cgi?id=759 Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
Diffstat (limited to 'BaseTools/Source/Python/AutoGen')
-rw-r--r--BaseTools/Source/Python/AutoGen/AutoGen.py10
1 files changed, 6 insertions, 4 deletions
diff --git a/BaseTools/Source/Python/AutoGen/AutoGen.py b/BaseTools/Source/Python/AutoGen/AutoGen.py
index 5317921cbe..b3e708951e 100644
--- a/BaseTools/Source/Python/AutoGen/AutoGen.py
+++ b/BaseTools/Source/Python/AutoGen/AutoGen.py
@@ -4229,13 +4229,14 @@ class ModuleAutoGen(AutoGen):
if self.IsMakeFileCreated:
return
- if self.CanSkip():
- return
if not self.IsLibrary and CreateLibraryMakeFile:
for LibraryAutoGen in self.LibraryAutoGenList:
LibraryAutoGen.CreateMakeFile()
+ if self.CanSkip():
+ return
+
if len(self.CustomMakefile) == 0:
Makefile = GenMake.ModuleMakefile(self)
else:
@@ -4263,8 +4264,6 @@ class ModuleAutoGen(AutoGen):
def CreateCodeFile(self, CreateLibraryCodeFile=True):
if self.IsCodeFileCreated:
return
- if self.CanSkip():
- return
# Need to generate PcdDatabase even PcdDriver is binarymodule
if self.IsBinaryModule and self.PcdIsDriver != '':
@@ -4279,6 +4278,9 @@ class ModuleAutoGen(AutoGen):
for LibraryAutoGen in self.LibraryAutoGenList:
LibraryAutoGen.CreateCodeFile()
+ if self.CanSkip():
+ return
+
AutoGenList = []
IgoredAutoGenList = []