git: 242979f142ce - main - databases/ldb15: fix build with lld 17
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 19 Nov 2023 20:10:36 UTC
The branch main has been updated by dim:
URL: https://cgit.FreeBSD.org/ports/commit/?id=242979f142ce076beb442e76560495e0c8a2031f
commit 242979f142ce076beb442e76560495e0c8a2031f
Author: Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2023-11-19 20:06:14 +0000
Commit: Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2023-11-19 20:10:10 +0000
databases/ldb15: fix build with lld 17
Building databases/ldb15 with lld 17 results in the following link
errors:
ld: error: version script assignment of 'LDB_0.9.10' to symbol 'ldb_connect_backend' failed: symbol not defined
ld: error: version script assignment of 'LDB_0.9.10' to symbol 'ldb_init_module_chain' failed: symbol not defined
ld: error: version script assignment of 'LDB_0.9.10' to symbol 'ldb_load_modules_list' failed: symbol not defined
ld: error: version script assignment of 'LDB_0.9.18' to symbol 'ldb_asq_init' failed: symbol not defined
ld: error: version script assignment of 'LDB_0.9.18' to symbol 'ldb_paged_results_init' failed: symbol not defined
ld: error: version script assignment of 'LDB_0.9.18' to symbol 'ldb_paged_searches_init' failed: symbol not defined
ld: error: version script assignment of 'LDB_0.9.18' to symbol 'ldb_rdn_name_init' failed: symbol not defined
ld: error: version script assignment of 'LDB_0.9.18' to symbol 'ldb_sample_init' failed: symbol not defined
ld: error: version script assignment of 'LDB_0.9.18' to symbol 'ldb_server_sort_init' failed: symbol not defined
ld: error: version script assignment of 'LDB_0.9.18' to symbol 'ldb_skel_init' failed: symbol not defined
ld: error: version script assignment of 'LDB_0.9.18' to symbol 'ldb_tdb_init' failed: symbol not defined
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
Since the linker version scripts are generated dynamically, suppress
errors with lld >= 17 due to these undefined symbols.
PR: 273753
MFH: 2023Q4
---
databases/ldb15/Makefile | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/databases/ldb15/Makefile b/databases/ldb15/Makefile
index 45ab23c06f82..5ec63c0bdcc0 100644
--- a/databases/ldb15/Makefile
+++ b/databases/ldb15/Makefile
@@ -109,13 +109,20 @@ PLIST_FILES+= include/pyldb.h \
.include <bsd.port.pre.mk>
+CFLAGS+= -I${LOCALBASE}/include
+LDFLAGS+= -L${LOCALBASE}/lib
+
+# Some symbols in ldb'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
+
.if ! ${PORT_OPTIONS:MMANPAGES}
CONFIGURE_ENV+= XSLTPROC="true"
.else
BUILD_DEPENDS+= ${LOCALBASE}/share/xsl/docbook/manpages/docbook.xsl:textproc/docbook-xsl \
xsltproc:textproc/libxslt
.endif
-CONFIGURE_ENV+= CFLAGS=-I${LOCALBASE}/include LDFLAGS=-L${LOCALBASE}/lib
# No fancy color error messages
.if ${COMPILER_TYPE} == "clang"