mirror_edk2/BaseTools/Source/Python
Yonghong Zhu 36d083ef00 BaseTools: add support for BIOS build with binary cache
Add three new options:
--hash enables hash-based caching during build process. when --hash is
enabled, build tool will base on the module hash value to do the
incremental build, without --hash, build tool will base on the
timestamp to do the incremental build. --hash option use md5 method to
get every hash value, DSC/FDF, tools_def.txt, build_rule.txt and build
command are calculated as global hash value, Package DEC and its
include header files are calculated as package hash value, Module
source files and its INF file are calculated as module hash value.
Library hash value will combine the global hash value and its dependent
package hash value. Driver hash value will combine the global hash
value, its dependent package hash value and its linked library hash
value.
When --hash and --binary-destination are specified, build tool will
copy generated binary files for each module into the directory specified
by binary-destination at the build phase. Binary-destination directory
caches all generated binary files.
When --hash and --binary-source are specified, build tool will try to
get the binary files from the binary source directory at the build
phase.If the cached binary has the same hash value, it will be directly
used. Otherwise, build tool will compile the source files and generate
the binary files.

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>
2017-09-27 17:14:54 +08:00
..
AutoGen BaseTools: add support for BIOS build with binary cache 2017-09-27 17:14:54 +08:00
BPDG BaseTools/BPDG: Fix the bug to get the PCD Size 2016-03-14 11:33:12 +08:00
build BaseTools: add support for BIOS build with binary cache 2017-09-27 17:14:54 +08:00
Common BaseTools: add support for BIOS build with binary cache 2017-09-27 17:14:54 +08:00
CommonDataClass BaseTools/CommonDataClass: register MM Modules. 2017-07-07 10:51:16 +08:00
Ecc BaseTools/Ecc: Add line break support for exception list 2017-05-11 09:29:08 +08:00
Eot BaseTools/Eot: register MM Module types with FFS class. 2017-07-07 10:54:16 +08:00
GenFds BaseTools: extend FFS alignment to 16M 2017-09-25 11:18:22 +08:00
GenPatchPcdTable BaseTools: Fix the bug to parse the new map file format 2016-12-02 11:01:24 +08:00
PatchPcdValue BaseTools: Clean some coding style issues 2015-12-01 04:22:16 +00:00
Pkcs7Sign BaseTools: Pkcs7Sign Tool to support OPENSSL_PATH has space 2017-04-27 21:19:29 +08:00
Rsa2048Sha256Sign BaseTools: Rsa2048Sha256GenerateKeys to support OPENSSL_PATH has space 2017-04-27 21:21:30 +08:00
Table BaseTools: Clean some coding style issues 2015-12-01 04:22:16 +00:00
TargetTool License header updated to match correct format. 2014-08-28 13:53:34 +00:00
Trim BaseTools: update the mail address for stack trace info 2016-03-11 12:29:59 +08:00
UPT BaseTools/UPT: Fix UNI file name issue 2017-08-24 21:39:50 +08:00
Workspace BaseTools: correct to use specific arch to generate DSC database 2017-09-09 10:10:16 +08:00
GNUmakefile Sync BaseTool trunk (version r2599) into EDKII BaseTools. 2013-08-23 02:18:16 +00:00
Makefile BaseTools: List missing source python files for Ecc tool in Makefile 2016-09-27 16:26:13 +08:00
sitecustomize.py License header updated to match correct format. 2014-08-28 13:53:34 +00:00