mirror of
https://git.FreeBSD.org/ports.git
synced 2024-11-20 00:21:35 +00:00
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
This commit is contained in:
parent
d5b0073e2b
commit
6c3b516b73
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=448576
@ -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 \
|
||||
|
Loading…
Reference in New Issue
Block a user