Enable LLD (as ld.lld) on i386 and arm
With this change LLD will be built on the same set of architectures that use Clang as /usr/bin/cc. It is not yet fully functional as a system linker for i386 and arm, but is ready for further testing and investigation.
This commit is contained in:
parent
a52f519c26
commit
94ea8e2433
@ -223,18 +223,18 @@ __TT=${MACHINE}
|
||||
.if ${COMPILER_FEATURES:Mc++11} && (${__T} == "aarch64" || \
|
||||
${__T} == "amd64" || ${__TT} == "arm" || ${__T} == "i386")
|
||||
# Clang is enabled, and will be installed as the default /usr/bin/cc.
|
||||
__DEFAULT_YES_OPTIONS+=CLANG CLANG_BOOTSTRAP CLANG_FULL CLANG_IS_CC
|
||||
__DEFAULT_YES_OPTIONS+=CLANG CLANG_BOOTSTRAP CLANG_FULL CLANG_IS_CC LLD
|
||||
__DEFAULT_NO_OPTIONS+=GCC GCC_BOOTSTRAP GNUCXX
|
||||
.elif ${COMPILER_FEATURES:Mc++11} && ${__T} != "riscv64" && ${__T} != "sparc64"
|
||||
# If an external compiler that supports C++11 is used as ${CC} and Clang
|
||||
# supports the target, then Clang is enabled but GCC is installed as the
|
||||
# default /usr/bin/cc.
|
||||
__DEFAULT_YES_OPTIONS+=CLANG CLANG_FULL GCC GCC_BOOTSTRAP GNUCXX
|
||||
__DEFAULT_NO_OPTIONS+=CLANG_BOOTSTRAP CLANG_IS_CC
|
||||
__DEFAULT_NO_OPTIONS+=CLANG_BOOTSTRAP CLANG_IS_CC LLD
|
||||
.else
|
||||
# Everything else disables Clang, and uses GCC instead.
|
||||
__DEFAULT_YES_OPTIONS+=GCC GCC_BOOTSTRAP GNUCXX
|
||||
__DEFAULT_NO_OPTIONS+=CLANG CLANG_BOOTSTRAP CLANG_FULL CLANG_IS_CC
|
||||
__DEFAULT_NO_OPTIONS+=CLANG CLANG_BOOTSTRAP CLANG_FULL CLANG_IS_CC LLD
|
||||
.endif
|
||||
# In-tree binutils/gcc are older versions without modern architecture support.
|
||||
.if ${__T} == "aarch64" || ${__T:Mriscv*} != ""
|
||||
@ -257,9 +257,9 @@ __DEFAULT_YES_OPTIONS+=LLD_AS_LD
|
||||
__DEFAULT_NO_OPTIONS+=LLD_AS_LD
|
||||
.endif
|
||||
.if ${__T} == "aarch64" || ${__T} == "amd64"
|
||||
__DEFAULT_YES_OPTIONS+=LLD LLDB
|
||||
__DEFAULT_YES_OPTIONS+=LLDB
|
||||
.else
|
||||
__DEFAULT_NO_OPTIONS+=LLD LLDB
|
||||
__DEFAULT_NO_OPTIONS+=LLDB
|
||||
.endif
|
||||
# LLVM lacks support for FreeBSD 64-bit atomic operations for ARMv4/ARMv5
|
||||
.if ${__T} == "arm" || ${__T} == "armeb"
|
||||
|
Loading…
x
Reference in New Issue
Block a user