git: 641e12af41cd - main - devel/talloc: fix build with lld 17
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 06 Oct 2023 17:50:53 UTC
The branch main has been updated by dim:
URL: https://cgit.FreeBSD.org/ports/commit/?id=641e12af41cd9fe92a41a83d59626a43d84e94d2
commit 641e12af41cd9fe92a41a83d59626a43d84e94d2
Author: Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2023-09-21 16:41:39 +0000
Commit: Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2023-10-06 17:48:52 +0000
devel/talloc: fix build with lld 17
Building devel/talloc with lld 17 results in the following link error:
08:58:52 runner ['cc', '-Wl,--version-script=/wrkdirs/usr/ports/devel/talloc/work/talloc-2.3.4/bin/default/talloc.vscript', '-shared', '-Wl,-h,libtalloc.so.2', 'talloc.c.6.o', 'lib/replace/replace.c.2.o', 'lib/replace/strptime.c.2.o', 'lib/replace/xattr.c.2.o', '-o/wrkdirs/usr/ports/devel/talloc/work/talloc-2.3.4/bin/default/libtalloc.so', '-Wl,-Bstatic', '-Wl,-Bdynamic', '-fstack-protector-strong', '-Wl,-no-undefined']
ld: error: version script assignment of 'local' to symbol '_end' failed: symbol not defined
ld: error: version script assignment of 'local' to symbol '__bss_start' failed: symbol not defined
ld: error: version script assignment of 'local' to symbol '_edata' failed: symbol not defined
cc: error: linker command failed with exit code 1 (use -v to see invocation)
script file to fix the error.
Since the linker version scripts are generated dynamically, suppress
errors with lld >= 17 due to these undefined symbols.
PR: 274000
Approved by: maintainer timeout (2 weeks)
MFH: 2023Q4
---
devel/talloc/Makefile | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/devel/talloc/Makefile b/devel/talloc/Makefile
index e90c895d26e9..336d9a923b9c 100644
--- a/devel/talloc/Makefile
+++ b/devel/talloc/Makefile
@@ -50,6 +50,10 @@ CFLAGS+= ${CFLAGS_${CHOSEN_COMPILER_TYPE}}
CFLAGS_clang= -fno-color-diagnostics
CONFIGURE_ENV+= NOCOLOR=yes
MAKE_ENV+= NOCOLOR=yes
+# Some symbols in talloc's linker version scripts are not defined, but since the
+# scripts are generated dynamically, suppress errors with lld >= 17 due to these
+# undefined symbols.
+LDFLAGS+= -Wl,--undefined-version
post-patch:
@${REINPLACE_CMD} -e 's|%%PKGCONFIGDIR%%|${PKGCONFIGDIR}|g' \