From 8aa78ebebfb6727c46334a69e32fc76576376a09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20K=C4=99pie=C5=84?= Date: Thu, 2 Apr 2026 16:07:11 +0200 Subject: [PATCH] lmdb: set SONAME for liblmdb.so MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The LMDB shared library (liblmdb.so) does not currently have a SONAME set, which can cause issues when linking against it. Specifically, when an object is linked against the library using its absolute path (for example, in Meson builds), that path (as seen in the build environment) is stored in the resulting object's DT_NEEDED entry. This can prevent the library from being found during runtime linking. Set the SONAME to liblmdb.so to ensure proper runtime linking. Signed-off-by: Michał Kępień --- libs/lmdb/patches/020-set-soname-for-liblmdb-so.patch | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 libs/lmdb/patches/020-set-soname-for-liblmdb-so.patch diff --git a/libs/lmdb/patches/020-set-soname-for-liblmdb-so.patch b/libs/lmdb/patches/020-set-soname-for-liblmdb-so.patch new file mode 100644 index 0000000000..51190c7b69 --- /dev/null +++ b/libs/lmdb/patches/020-set-soname-for-liblmdb-so.patch @@ -0,0 +1,11 @@ +--- a/libraries/liblmdb/Makefile ++++ b/libraries/liblmdb/Makefile +@@ -67,7 +67,7 @@ liblmdb.a: mdb.o midl.o + + liblmdb$(SOEXT): mdb.lo midl.lo + # $(CC) $(LDFLAGS) -pthread -shared -Wl,-Bsymbolic -o $@ mdb.o midl.o $(SOLIBS) +- $(CC) $(LDFLAGS) -pthread -shared -o $@ mdb.lo midl.lo $(SOLIBS) ++ $(CC) $(LDFLAGS) -pthread -shared -Wl,-soname,$@ -o $@ mdb.lo midl.lo $(SOLIBS) + + mdb_stat: mdb_stat.o liblmdb.a + mdb_copy: mdb_copy.o liblmdb.a