mirror of https://github.com/acidanthera/audk.git
6d732bbbc2
CLANG38 build fail after CC_FLAG is added in the link rule. This failure is because the CLANG38 enable the LTO through LLVMgold.so linker plugin, but the LLVMgold.so plugin cannot accept the clang -Oz CC flag as build option. After CC_FLAG is added in the link rule, the LLVMgold.so plugin reports linking error. LLVMgold.so only accept -O0 ~ -O3, and you can see it in the LLVM gold plugin source code in below: http://llvm.org/svn/llvm-project/llvm/tags/RELEASE_380/final/tools/gold/ gold-plugin.cpp line173: if (opt[1] < '0' || opt[1] > '3') message(LDPL_FATAL, "Optimization level must be between 0 and 3"); Add -O3 in the *_CLANG38_*_DLINK2_FLAGS to override the -Oz flag in *_CLANG38_*_CC_FLAGS to pass LLVMgold.so linking. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Steven Shi <steven.shi@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> |
||
---|---|---|
.. | ||
XMLSchema | ||
Empty_Package_Information_Data_File.ini | ||
FrameworkDatabase.template | ||
ReadMe.txt | ||
build_rule.template | ||
target.template | ||
tools_def.template |
ReadMe.txt
This directory contains the template files for the next generation of the EDK II Build infrastructure. These files will be copied into the WORKSPACE's Conf directory if and only if the target files do not exist. These files may be updated frequently. The XMLSchema directory contains the EDK II Packaging XML definitions. The schema may change in the future. It differs somewhat from the early versions of the XML Schema.