From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 134.134.136.100, mailfrom: zhijux.fan@intel.com) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by groups.io with SMTP; Sun, 16 Jun 2019 22:10:34 -0700 X-Amp-Result: UNSCANNABLE X-Amp-File-Uploaded: False Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga105.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 16 Jun 2019 22:10:33 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.63,384,1557212400"; d="dat'59?scan'59,208,59";a="185614402" Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by fmsmga002.fm.intel.com with ESMTP; 16 Jun 2019 22:10:33 -0700 Received: from fmsmsx111.amr.corp.intel.com (10.18.116.5) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.439.0; Sun, 16 Jun 2019 22:10:33 -0700 Received: from shsmsx154.ccr.corp.intel.com (10.239.6.54) by fmsmsx111.amr.corp.intel.com (10.18.116.5) with Microsoft SMTP Server (TLS) id 14.3.439.0; Sun, 16 Jun 2019 22:10:33 -0700 Received: from shsmsx101.ccr.corp.intel.com ([169.254.1.104]) by SHSMSX154.ccr.corp.intel.com ([169.254.7.156]) with mapi id 14.03.0439.000; Mon, 17 Jun 2019 13:10:31 +0800 From: "Fan, ZhijuX" To: "devel@edk2.groups.io" CC: "Gao, Liming" , "Feng, Bob C" , "Shi, Steven" , "Lu, Shifei A" , "Zhou, Bowen" , "Oram, Isaac W" , "Chiu, Chasel" , "Kubacki, Michael A" , "Desimone, Nathaniel L" Subject: [PATCH 2/3 V2] Platform/Intel:Add build parameter to support Binary Cache Thread-Topic: [PATCH 2/3 V2] Platform/Intel:Add build parameter to support Binary Cache Thread-Index: AdUkyvrJGpXQVg5xQGqTbrTD9HBTPw== Date: Mon, 17 Jun 2019 05:10:30 +0000 Message-ID: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: 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: zhijux.fan@intel.com X-Groupsio-MsgNum: 42482 Content-Type: multipart/mixed; boundary="_000_FAD0D7E0AE0FA54D987F6E72435CAFD50AF824C7SHSMSX101ccrcor_" Content-Language: en-US --_000_FAD0D7E0AE0FA54D987F6E72435CAFD50AF824C7SHSMSX101ccrcor_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Need extend the options in the Intel/build_bios.py file to support Binary Cache. --hash: Enable hash-based caching during build process. --binary-destination: Generate a cache of binary files in the specified directory. --binary-source: Consume a cache of binary files from the specified directory. Cc: Liming Gao Cc: Bob Feng Cc: Steven Shi Cc: Shifei A Lu Cc: Xiaohu Zhou Cc: Isaac W Oram Cc: Chasel Chiu Cc: Michael Kubacki Cc: Nate DeSimone Signed-off-by: Zhiju.Fan --- Platform/Intel/build_bios.py | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Platform/Intel/build_bios.py b/Platform/Intel/build_bios.py index 09eceddeff..c01b953d16 100644 --- a/Platform/Intel/build_bios.py +++ b/Platform/Intel/build_bios.py @@ -343,6 +343,7 @@ def build(config): print(" SILENT_MODE =3D ", config.get("SILENT_MODE")) print(" REBUILD_MODE =3D ", config.get("REBUILD_MODE")) print(" BUILD_ROM_ONLY =3D ", config.get("BUILD_ROM_ONLY")) + print(" BINARY_CACHE_CMD_LINE =3D ", config.get("HASH"), config.get("B= INARY_CACHE_CMD_LINE")) print("=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D") =20 command =3D ["build", "-n", config["NUMBER_OF_PROCESSORS"]] @@ -353,6 +354,10 @@ def build(config): if config["EXT_BUILD_FLAGS"] and config["EXT_BUILD_FLAGS"] !=3D "": command.append(config["EXT_BUILD_FLAGS"]) =20 + if config.get('BINARY_CACHE_CMD_LINE'): + command.append(config['HASH']) + command.append(config['BINARY_CACHE_CMD_LINE']) + if config.get("SILENT_MODE", "FALSE") =3D=3D "TRUE": command.append("--silent") command.append("--quiet") @@ -858,6 +863,17 @@ def get_cmd_config_arguments(arguments): if arguments.fspapi is True: result["API_MODE_FSP_WRAPPER_BUILD"] =3D "TRUE" =20 + if not arguments.UseHashCache: + result['BINARY_CACHE_CMD_LINE'] =3D '' + elif arguments.BinCacheDest: + result['HASH'] =3D '--hash' + result['BINARY_CACHE_CMD_LINE'] =3D '--binary-destination=3D%s' % = arguments.BinCacheDest + elif arguments.BinCacheSource: + result['HASH'] =3D '--hash' + result['BINARY_CACHE_CMD_LINE'] =3D '--binary-source=3D%s' % argum= ents.BinCacheSource + else: + result['BINARY_CACHE_CMD_LINE'] =3D '' + return result =20 =20 @@ -934,6 +950,17 @@ def get_cmd_arguments(build_config): parser.add_argument("--fspapi", help=3D"API mode fsp wrapper build ena= bled", action=3D'store_true', dest=3D"fspapi") =20 + parser.add_argument("--hash", action=3D"store_true", dest=3D"UseHashCa= che", default=3DFalse, + help=3D"Enable hash-based caching during build pro= cess.") + + parser.add_argument("--binary-destination", help=3D"Generate a cache o= f binary \ + files in the specified directory.", + action=3D'store', dest=3D"BinCacheDest") + + parser.add_argument("--binary-source", help=3D"Consume a cache of bina= ry files \ + from the specified directory.", + action=3D'store', dest=3D"BinCacheSource") + return parser.parse_args() =20 =20 --=20 2.14.1.windows.1 --_000_FAD0D7E0AE0FA54D987F6E72435CAFD50AF824C7SHSMSX101ccrcor_ Content-Disposition: attachment; filename="winmail.dat" Content-Transfer-Encoding: base64 Content-Type: application/ms-tnef; name="winmail.dat" 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 agB1AHgALgBmAGEAbgBAAGkAbgB0AGUAbAAuAGMAbwBtAAAAHwABXQEAAAAqAAAAegBoAGkAagB1 AHgALgBmAGEAbgBAAGkAbgB0AGUAbAAuAGMAbwBtAAAAAAAfAPg/AQAAABgAAABGAGEAbgAsACAA WgBoAGkAagB1AFgAAAAfACNAAQAAACoAAAB6AGgAaQBqAHUAeAAuAGYAYQBuAEAAaQBuAHQAZQBs AC4AYwBvAG0AAAAAAB8AIkABAAAACgAAAFMATQBUAFAAAAAAAAIB+T8BAAAAZAAAAAAAAACBKx+k vqMQGZ1uAN0BD1QCAAAAgEYAYQBuACwAIABaAGgAaQBqAHUAWAAAAFMATQBUAFAAAAB6AGgAaQBq AHUAeAAuAGYAYQBuAEAAaQBuAHQAZQBsAC4AYwBvAG0AAAAfAAldAQAAACoAAAB6AGgAaQBqAHUA eAAuAGYAYQBuAEAAaQBuAHQAZQBsAC4AYwBvAG0AAAAAAAsAQDoBAAAAHwAaAAEAAAASAAAASQBQ AE0ALgBOAG8AdABlAAAAAAADAPE/CQQAAAsAQDoBAAAAAwD9P+QEAAACAQswAQAAABAAAAD4JQSu 4uRLTqLDZrM2PvwsAwAXAAEAAABAADkAAOeS+8ok1QFAAAgwz5cW/Mok1QEfAACAhgMCAAAAAADA AAAAAAAARgEAAAAeAAAAYQBjAGMAZQBwAHQAbABhAG4AZwB1AGEAZwBlAAAAAAABAAAADAAAAGUA bgAtAFUAUwAAAB8ANwABAAAAlAAAAFsAUABBAFQAQwBIACAAMgAvADMAIABWADIAXQAgAFAAbABh AHQAZgBvAHIAbQAvAEkAbgB0AGUAbAA6AEEAZABkACAAYgB1AGkAbABkACAAcABhAHIAYQBtAGUA dABlAHIAIAB0AG8AIABzAHUAcABwAG8AcgB0ACAAQgBpAG4AYQByAHkAIABDAGEAYwBoAGUAAAAf AD0AAQAAAAIAAAAAAAAAAwA2AAAAAAACAXEAAQAAABYAAAAB1STK+skaldBWDnFAapNutMP0cFM/ AAAfAHAAAQAAAJQAAABbAFAAQQBUAEMASAAgADIALwAzACAAVgAyAF0AIABQAGwAYQB0AGYAbwBy AG0ALwBJAG4AdABlAGwAOgBBAGQAZAAgAGIAdQBpAGwAZAAgAHAAYQByAGEAbQBlAHQAZQByACAA dABvACAAcwB1AHAAcABvAHIAdAAgAEIAaQBuAGEAcgB5ACAAQwBhAGMAaABlAAAAHwA1EAEAAACQ AAAAPABGAEEARAAwAEQANwBFADAAQQBFADAARgBBADUANABEADkAOAA3AEYANgBFADcAMgA0ADMA NQBDAEEARgBEADUAMABBAEYAOAAyADQAQwA3AEAAUwBIAFMATQBTAFgAMQAwADEALgBjAGMAcgAu AGMAbwByAHAALgBpAG4AdABlAGwALgBjAG8AbQA+AAAAAwDeP59OAABAAAcwbzYU/Mok1QECAQsA AQAAABAAAAD4JQSu4uRLTqLDZrM2PvwsAwAmAAAAAAACAUcAAQAAADIAAABjPVVTO2E9TUNJO3A9 SW50ZWw7bD1TSFNNU1gxMDEtMTkwNjE3MDUxMDMwWi00Mzc5AAAAAgEQMAEAAABGAAAAAAAAACZ3 vTk77DhJpKYVPcule0IHAPrQ1+CuD6VNmH9uckNcr9UAAABEEV4AAKaTaDaIdmxLp0rT60eaTGQA AAlUj68AAAAAHwD6PwEAAAAYAAAARgBhAG4ALAAgAFoAaABpAGoAdQBYAAAAAwAJWQEAAABAAACA CCAGAAAAAADAAAAAAAAARgAAAAC/hQAAoMUy+8ok1QELAACACCAGAAAAAADAAAAAAAAARgAAAACC hQAAAAAAAAMAAIAIIAYAAAAAAMAAAAAAAABGAAAAAOuFAAAJBAAAHwAAgIYDAgAAAAAAwAAAAAAA AEYBAAAAGAAAAGQAbABwAC0AcAByAG8AZAB1AGMAdAAAAAEAAAAaAAAAZABsAHAAZQAtAHcAaQBu AGQAbwB3AHMAAAAAAB8AAICGAwIAAAAAAMAAAAAAAABGAQAAABgAAABkAGwAcAAtAHYAZQByAHMA aQBvAG4AAAABAAAAFgAAADEAMQAuADAALgA2ADAAMAAuADcAAAAAAB8AAICGAwIAAAAAAMAAAAAA AABGAQAAABoAAABkAGwAcAAtAHIAZQBhAGMAdABpAG8AbgAAAAAAAQAAABQAAABuAG8ALQBhAGMA dABpAG8AbgAAAAMADTT9PwAAHwAAgIYDAgAAAAAAwAAAAAAAAEYBAAAAIAAAAHgALQBtAHMALQBo AGEAcwAtAGEAdAB0AGEAYwBoAAAAAQAAAAIAAAAAAAAAHwAAgIYDAgAAAAAAwAAAAAAAAEYBAAAA IgAAAHgALQBvAHIAaQBnAGkAbgBhAHQAaQBuAGcALQBpAHAAAAAAAAEAAAAgAAAAWwAxADAALgAy ADMAOQAuADEAMgA3AC4ANAAwAF0AAAD0RA== --_000_FAD0D7E0AE0FA54D987F6E72435CAFD50AF824C7SHSMSX101ccrcor_--