Author: emaste Date: Wed Jul 24 19:21:16 2019 New Revision: 350297 URL: https://svnweb.freebsd.org/changeset/base/350297
Log: MFC r343606: Enable lld as the system linker on i386 The migration to LLVM's lld linker has been in progress for quite some time - I opened an LLVM tracking bug (23214) in April 2015 to track issues using lld as FreeBSD's linker, and requested the first exp-run using lld as /usr/bin/ld in November 2016. In 12.0 LLD is the system linker on amd64, arm64, and armv7. i386 was not switched [for 12.0] as there were additional ports failures not found on amd64. Those have largely been addressed now, although there are a small number of issues that are still being worked on. In some of these cases having lld as the system linker makes it easier for developers and third parties to investigate failures. Thanks to antoine@ for handling the exp-runs and to everyone in the FreeBSD and LLVM communites who have fixed issues with lld to get us to this point. Note for 12.1: There are still some issues to resolve in the ports tree, but having the bootstrap linker (to build the kernel and installed userland) be lld and the installed system linker (/usr/bin/ld) be GNU ld causes other problems. In addition having having a different linker configuration for i386 and amd64 in the same release causes some grief for the ports team. So, switch to lld as the system linker on i386 in stable/12 and plan to address remaining ports issues before 12.1. PR: 214864 [exp-run] Discussed with: jbeich, antoine Relnotes: Yes Sponsored by: The FreeBSD Foundation Modified: stable/12/share/mk/src.opts.mk Directory Properties: stable/12/ (props changed) Modified: stable/12/share/mk/src.opts.mk ============================================================================== --- stable/12/share/mk/src.opts.mk Wed Jul 24 19:16:02 2019 (r350296) +++ stable/12/share/mk/src.opts.mk Wed Jul 24 19:21:16 2019 (r350297) @@ -322,11 +322,9 @@ __DEFAULT_YES_OPTIONS+=LLVM_LIBUNWIND .else __DEFAULT_NO_OPTIONS+=LLVM_LIBUNWIND .endif -.if ${__T} == "aarch64" || ${__T} == "amd64" || ${__T} == "armv7" +.if ${__T} == "aarch64" || ${__T} == "amd64" || ${__T} == "armv7" || \ + ${__T} == "i386" __DEFAULT_YES_OPTIONS+=LLD_BOOTSTRAP LLD_IS_LD -.elif ${__T} == "i386" -__DEFAULT_YES_OPTIONS+=LLD_BOOTSTRAP -__DEFAULT_NO_OPTIONS+=LLD_IS_LD .else __DEFAULT_NO_OPTIONS+=LLD_BOOTSTRAP LLD_IS_LD .endif _______________________________________________ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"