From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 192.55.52.88, mailfrom: jiewen.yao@intel.com) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by groups.io with SMTP; Wed, 08 May 2019 22:13:17 -0700 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga101.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 08 May 2019 22:13:17 -0700 X-ExtLoop1: 1 Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by orsmga007.jf.intel.com with ESMTP; 08 May 2019 22:13:16 -0700 Received: from shsmsx106.ccr.corp.intel.com (10.239.4.159) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.408.0; Wed, 8 May 2019 22:13:16 -0700 Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.249]) by SHSMSX106.ccr.corp.intel.com ([169.254.10.213]) with mapi id 14.03.0415.000; Thu, 9 May 2019 13:13:14 +0800 From: "Yao, Jiewen" To: "devel@edk2.groups.io" , "Shi, Steven" CC: "Feng, Bob C" , "Gao, Liming" , "Rodriguez, Christian" , "Johnson, Michael" Subject: Re: [edk2-devel] [PATCH] BaseTools: Skip .mcb file module in Binary Cache Thread-Topic: [edk2-devel] [PATCH] BaseTools: Skip .mcb file module in Binary Cache Thread-Index: AQHVBiQbDvKwhXdSS0qcIE8w/gBgD6ZiPyKA Date: Thu, 9 May 2019 05:13:14 +0000 Message-ID: <74D8A39837DF1E4DA445A8C0B3885C503F635E39@shsmsx102.ccr.corp.intel.com> References: <20190509045957.592-1-steven.shi@intel.com> In-Reply-To: <20190509045957.592-1-steven.shi@intel.com> Accept-Language: zh-CN, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiODc3Yzc5MjctNDY3Zi00MjM1LTkyM2QtNTI0ZGIyNjQ5NzVkIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiQ0FRclBoS0FhdGtYdENnc05CTEs0V2xUMzczTWhxTDk1UXlIXC80d1NhM1N1RFpMckZ0SzRVMEk1XC9yZjRJdUlWIn0= x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.600.7 dlp-reaction: no-action x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Return-Path: jiewen.yao@intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi Can we have better way to describe the binary cache? I have 2 concern: 1) we have other type of binary besides MCB. How can we indicate that with= out update base tool source code ? 2) .inc might be text file, instead of binary. How can we support that? Thank you Yao Jiewen > -----Original Message----- > From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of > Steven Shi > Sent: Wednesday, May 8, 2019 10:00 PM > To: devel@edk2.groups.io > Cc: Feng, Bob C ; Gao, Liming > ; Rodriguez, Christian > ; Johnson, Michael > > Subject: [edk2-devel] [PATCH] BaseTools: Skip .mcb file module in Binary > Cache >=20 > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D1723 >=20 > 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(-) >=20 > 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 b= y > 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 =3D path.join(GlobalData.gBinCacheSource, > self.PlatformInfo.Name, self.BuildTarget + "_" + self.ToolChain, self.Ar= ch, > self.SourceDir, self.MetaFile.BaseName) > HashFile =3D 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 ha= sh; > function will return False > -- > 2.17.1.windows.2 >=20 >=20 >=20