]> git.proxmox.com Git - mirror_edk2.git/commit - BaseTools/Source/Python/build/build.py
BaseTools: Leverage compiler output to optimize binary cache
authorSteven Shi <steven.shi@intel.com>
Tue, 19 Nov 2019 08:17:00 +0000 (16:17 +0800)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Tue, 10 Dec 2019 02:07:12 +0000 (02:07 +0000)
commitfc8b8deac2d77524ff8cfe44acf95b5e1f59804e
tree0af9c4aefabb98f56c52b55c44f0eccd626d3920
parent3bfbc915074a45f4d9c61aa2b698a62f1a24124e
BaseTools: Leverage compiler output to optimize binary cache

Redesign the binary cache and bases on the compiler to
output the dependency header files info for every module.
The binary cache will directly consume the dependency header
files info and doesn't parse the C source code by iteself.
Also redesign the dependency files list format for module
and try to share the common lib hash result as more as
possible in local process. Remove the unnecessary share data
access across multiprocessing.

Signed-off-by: Steven Shi <steven.shi@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Bob Feng <bob.c.feng@intel.com>
Reviewed-by: Bob Feng <bob.c.feng@intel.com>
BaseTools/Source/Python/AutoGen/AutoGenWorker.py
BaseTools/Source/Python/AutoGen/DataPipe.py
BaseTools/Source/Python/AutoGen/ModuleAutoGen.py
BaseTools/Source/Python/AutoGen/WorkspaceAutoGen.py
BaseTools/Source/Python/Common/GlobalData.py
BaseTools/Source/Python/build/build.py