svn commit: r448576 - head/Mk
Ed Maste
emaste at FreeBSD.org
Tue Aug 22 18:55:01 UTC 2017
Author: emaste (src committer)
Date: Tue Aug 22 18:55:00 2017
New Revision: 448576
URL: https://svnweb.freebsd.org/changeset/ports/448576
Log:
Add LLD_UNSAFE to force use of ld.bfd when ld is lld
By default the compiler will find /usr/bin/ld for the linker. If a port
sets LLD_UNSAFE and /usr/bin/ld is ld.lld, then add -fuse-ld=bfd to
force the use of the binutils BFD linker (from the base system, if
available, or by setting USE_BINUTILS).
This change is based on an earlier, similar patch from bapt, with the
addition of the -fuse-ld flag.
PR: 214864
Reviewed by: bapt
Approved by: portmgr (bapt)
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D12064
Modified:
head/Mk/bsd.port.mk
Modified: head/Mk/bsd.port.mk
==============================================================================
--- head/Mk/bsd.port.mk Tue Aug 22 18:22:05 2017 (r448575)
+++ head/Mk/bsd.port.mk Tue Aug 22 18:55:00 2017 (r448576)
@@ -1737,6 +1737,20 @@ PKG_DEPENDS+= ${LOCALBASE}/sbin/pkg:${PKG_ORIGIN}
.include "${PORTSDIR}/Mk/bsd.gcc.mk"
.endif
+_TEST_LD=/usr/bin/ld
+.if defined(LLD_UNSAFE) && ${_TEST_LD:tA} == "/usr/bin/ld.lld"
+LDFLAGS+= -fuse-ld=bfd
+. if !defined(USE_BINUTILS)
+. if exists(/usr/bin/ld.bfd)
+LD= /usr/bin/ld.bfd
+CONFIGURE_ENV+= LD=${LD}
+MAKE_ENV+= LD=${LD}
+. else
+USE_BINUTILS= yes
+. endif
+. endif
+.endif
+
.if defined(USE_BINUTILS) && !defined(DISABLE_BINUTILS)
BUILD_DEPENDS+= ${LOCALBASE}/bin/as:devel/binutils
BINUTILS?= ADDR2LINE AR AS CPPFILT GPROF LD NM OBJCOPY OBJDUMP RANLIB \
More information about the svn-ports-head
mailing list