REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1723

Current Kabylake open platform will build fail if enabled
to consume the binary cache, because the binary cache doesn't
support to recovery the .mcb microcode file,
e.g. m80406E8_00000026.mcb, in a platform level folder which
is outside of the module output folder. In normal build
without cache, the .mcb file is copied through OS copy/move
commands defined in build rules which are not supported by
Binary Cache.
Change the Binary Cache to skip the .mcb file type module and
always rebuild the module to apply the full build rules if
it contains .mcb file.
---
 BaseTools/Source/Python/AutoGen/AutoGen.py | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/BaseTools/Source/Python/AutoGen/AutoGen.py 
b/BaseTools/Source/Python/AutoGen/AutoGen.py
index 31721a6f9f..6b596c8a65 100644
--- a/BaseTools/Source/Python/AutoGen/AutoGen.py
+++ b/BaseTools/Source/Python/AutoGen/AutoGen.py
@@ -3925,9 +3925,9 @@ class ModuleAutoGen(AutoGen):
         # If library or Module is binary do not skip by hash
         if self.IsBinaryModule:
             return False
-        # .inc is contains binary information so do not skip by hash as well
+        # .inc and .mcb is contains binary information so do not skip by hash 
as well
         for f_ext in self.SourceFileList:
-            if '.inc' in str(f_ext):
+            if '.inc' in str(f_ext) or '.mcb' in str(f_ext):
                 return False
         FileDir = path.join(GlobalData.gBinCacheSource, 
self.PlatformInfo.Name, self.BuildTarget + "_" + self.ToolChain, self.Arch, 
self.SourceDir, self.MetaFile.BaseName)
         HashFile = path.join(FileDir, self.Name + '.hash')
@@ -4138,9 +4138,9 @@ class ModuleAutoGen(AutoGen):
         # If library or Module is binary do not skip by hash
         if self.IsBinaryModule:
             return False
-        # .inc is contains binary information so do not skip by hash as well
+        # .inc or '.mcb' is contains binary information so do not skip by hash 
as well
         for f_ext in self.SourceFileList:
-            if '.inc' in str(f_ext):
+            if '.inc' in str(f_ext) or '.mcb' in str(f_ext):
                 return False
         if GlobalData.gUseHashCache:
             # If there is a valid hash or function generated a valid hash; 
function will return False
-- 
2.17.1.windows.2


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#40264): https://edk2.groups.io/g/devel/message/40264
Mute This Topic: https://groups.io/mt/31552068/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to