git: 15d19c74ba1a - main - databases/ldb20: fix build with lld 17
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 19 Nov 2023 20:10:35 UTC
The branch main has been updated by dim:
URL: https://cgit.FreeBSD.org/ports/commit/?id=15d19c74ba1a393fb74ec983c06b61cce329cc8a
commit 15d19c74ba1a393fb74ec983c06b61cce329cc8a
Author: Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2023-11-19 20:05:41 +0000
Commit: Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2023-11-19 20:10:10 +0000
databases/ldb20: fix build with lld 17
Building databases/ldb20 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 'LDB_1.1.25' to symbol 'ldb_unpack_data_only_attr_list' failed: symbol not defined
ld: error: version script assignment of 'LDB_1.1.27' to symbol 'ldb_unpack_data_only_attr_list_flags' 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/ldb20/Makefile | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/databases/ldb20/Makefile b/databases/ldb20/Makefile
index 3b0940130908..8ab39ba4fa56 100644
--- a/databases/ldb20/Makefile
+++ b/databases/ldb20/Makefile
@@ -90,7 +90,13 @@ PLIST_FILES= include/ldb_version.h \
.include <bsd.port.pre.mk>
-CONFIGURE_ENV+= CFLAGS=-I${LOCALBASE}/include LDFLAGS=-L${LOCALBASE}/lib
+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"