Index: Makefile.inc1 =================================================================== --- Makefile.inc1 +++ Makefile.inc1 @@ -516,7 +516,7 @@ # cross-tools stage XMAKE= TOOLS_PREFIX=${WORLDTMP} ${BMAKE} \ TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ - MK_GDB=no MK_TESTS=no MK_LLD_AS_LD=no + MK_GDB=no MK_TESTS=no # kernel-tools stage KTMAKEENV= INSTALL="sh ${.CURDIR}/tools/install.sh" \ @@ -1828,6 +1828,9 @@ # cross-build on a FreeBSD 10 host: _elftctools+= usr.bin/addr2line .endif +.if ${MK_LLD_AS_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). @@ -1852,6 +1855,7 @@ ${LOCAL_XTOOL_DIRS} \ ${_clang_libs} \ ${_clang} \ + ${_lld} \ ${_binutils} \ ${_elftctools} \ ${_dtrace_tools} \ Index: lib/clang/libllvm/Makefile =================================================================== --- lib/clang/libllvm/Makefile +++ lib/clang/libllvm/Makefile @@ -1146,7 +1146,7 @@ SRCS_EXT+= Transforms/Vectorize/Vectorize.cpp SRCS_ALL+= ${SRCS_MIN} -.if !defined(TOOLS_PREFIX) +.if !defined(TOOLS_PREFIX) || ${MK_LLD_AS_LD} != "no" SRCS_ALL+= ${SRCS_MIW} .endif .if ${MK_CLANG_EXTRAS} != "no"