svn commit: r350297 - stable/12/share/mk

Ed Maste emaste at FreeBSD.org
Wed Jul 24 19:21:17 UTC 2019


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


More information about the svn-src-stable-12 mailing list