aboutsummaryrefslogtreecommitdiff
path: root/Makefile.inc1
diff options
context:
space:
mode:
authorEd Maste <emaste@FreeBSD.org>2017-04-09 01:35:19 +0000
committerEd Maste <emaste@FreeBSD.org>2017-04-09 01:35:19 +0000
commitffe63c8bf0b4e82ef7d7d6eefa123c2dfcf231fa (patch)
treee56c75e3ddae291d95c061df72453d408f596282 /Makefile.inc1
parent5850a75952012c7bcc3a501b796a5ea92ae05fbd (diff)
downloadsrc-ffe63c8bf0b4e82ef7d7d6eefa123c2dfcf231fa.tar.gz
src-ffe63c8bf0b4e82ef7d7d6eefa123c2dfcf231fa.zip
Introduce LLD_BOOTSTRAP to control lld as bootstrap linker
Add WITH_LLD_BOOTSTRAP and WITHOUT_LLD_BOOTSTRAP knobs, similar to the Clang bootstrap knobs. Reviewed by: dim Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D10249
Notes
Notes: svn path=/head/; revision=316647
Diffstat (limited to 'Makefile.inc1')
-rw-r--r--Makefile.inc117
1 files changed, 10 insertions, 7 deletions
diff --git a/Makefile.inc1 b/Makefile.inc1
index 53943e2b191c..56a73dad0653 100644
--- a/Makefile.inc1
+++ b/Makefile.inc1
@@ -171,7 +171,7 @@ CROSS_BINUTILS_PREFIX?=${CROSS_TOOLCHAIN_PREFIX}
# riscv64-binutils port or package.
.if !make(showconfig)
.if !empty(BROKEN_OPTIONS:MBINUTILS_BOOTSTRAP) && \
- ${MK_LLD_IS_LD} == "no" && \
+ ${MK_LLD_BOOTSTRAP} == "no" && \
!defined(CROSS_BINUTILS_PREFIX)
CROSS_BINUTILS_PREFIX=/usr/local/${TARGET_ARCH}-freebsd/bin/
.if !exists(${CROSS_BINUTILS_PREFIX})
@@ -1665,9 +1665,10 @@ ${_bt}-usr.bin/yacc: ${_bt}-lib/liby
_gensnmptree= usr.sbin/bsnmpd/gensnmptree
.endif
-# We need to build tblgen when we're building clang either as
-# the bootstrap compiler, or as the part of the normal build.
-.if ${MK_CLANG_BOOTSTRAP} != "no" || ${MK_CLANG} != "no"
+# We need to build tblgen when we're building clang or lld, either as
+# bootstrap tools, or as the part of the normal build.
+.if ${MK_CLANG_BOOTSTRAP} != "no" || ${MK_CLANG} != "no" || \
+ ${MK_LLD_BOOTSTRAP} != "no" || ${MK_LLD} != "no"
_clang_tblgen= \
lib/clang/libllvmminimal \
usr.bin/clang/llvm-tblgen \
@@ -1828,9 +1829,6 @@ _elftctools= lib/libelftc \
# cross-build on a FreeBSD 10 host:
_elftctools+= usr.bin/addr2line
.endif
-.if ${MK_LLD_IS_LD} != "no"
-_lld= usr.bin/clang/lld
-.endif
.elif ${TARGET_ARCH} != ${MACHINE_ARCH} && ${MK_ELFTOOLCHAIN_BOOTSTRAP} != "no"
# If cross-building with an external binutils we still need to build strip for
# the target (for at least crunchide).
@@ -1841,6 +1839,11 @@ _elftctools= lib/libelftc \
.if ${MK_CLANG_BOOTSTRAP} != "no"
_clang= usr.bin/clang
+.endif
+.if ${MK_LLD_BOOTSTRAP} != "no"
+_lld= usr.bin/clang/lld
+.endif
+.if ${MK_CLANG_BOOTSTRAP} != "no" || ${MK_LLD_BOOTSTRAP} != "no"
_clang_libs= lib/clang
.endif
.if ${MK_GCC_BOOTSTRAP} != "no"