ports/devel/libunwind/Makefile
Ed Maste 99f1977cc9 devel/libunwind: set LLD_UNSAFE
libunwind.so has symbols with ELF protected visibility which various
test applications could preempt. Both GNU gold and LLVM's lld fail to
link this case, with errors like

lld:
/usr/bin/ld: error: cannot preempt symbol: _ULx86_64_init_local
>>> defined in ../src/.libs/libunwind.so
>>> referenced by Lperf-trace.c
>>>               Lperf-trace.o:(main)

gold:
/usr/local/bin/ld.gold: error: Gperf-simple.o: cannot make copy relocation
    for protected symbol '_Ux86_64_local_addr_space', defined in
    ../src/.libs/libunwind-x86_64.so

For now prevent libunwind from linking with lld. More information can be
found in libunwind upstream issue 58
https://github.com/libunwind/libunwind/issues/58

PR:		219524
Approved by:	portmgr (LLD_UNSAFE blanket)
Sponsored by:	The FreeBSD Foundation
2017-12-19 18:06:29 +00:00

32 lines
685 B
Makefile

# Created by: stas@FreeBSD.org
# $FreeBSD$
PORTNAME= libunwind
PORTVERSION= 20170113 # This is the release date of libunwind 1.2
PORTREVISION= 1
CATEGORIES= devel
MASTER_SITES= SAVANNAH
DISTNAME= ${PORTNAME}-1.2
MAINTAINER= danilo@FreeBSD.org
COMMENT= Generic stack unwinding library
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/COPYING
OPTIONS_DEFINE= DOCS
OPTIONS_SUB= yes
DOCS_CONFIGURE_ON= ac_cv_path_LATEX2MAN=${TRUE}
DOCS_CONFIGURE_OFF= --disable-documentation
ONLY_FOR_ARCHS= i386 amd64
GNU_CONFIGURE= yes
INSTALL_TARGET= install-strip
USE_LDCONFIG= yes
USES= libtool pathfix pkgconfig
LLD_UNSAFE= yes
PLIST_SUB= ARCH=${ARCH:S|i386|x86|:S|amd64|x86_64|}
.include <bsd.port.mk>