Re-introduce lmdb meta-oe's version causes nothing but trouble

Yeah should go fixing it but haven't got the time...

Error seen:
ERROR: baloo-5.86.0-r0 do_package: baloo: Multiple shlib providers for liblmdb.so.0.9.29: lmdb, lmdb (used by files: /home/superandy/tmp/oe-core-glibc/work/cortexa72-mortsgna-linux/baloo/5.86.0-r0/packages-split/baloo/usr/lib/libKF5BalooEngine.so.5.86.0)

This reverts commit 6443b5b88b.
This commit is contained in:
Andreas Müller
2021-10-10 22:37:50 +02:00
parent 28c01aab00
commit d8e3bad265
3 changed files with 113 additions and 0 deletions

View File

@@ -0,0 +1,90 @@
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Tue, 1 Sep 2015 22:54:31 +0200
Subject: [PATCH] Patch the main Makefile to allow for a build that complies to packaging guidelines.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Taken from [1]
[1] https://src.fedoraproject.org/rpms/lmdb/raw/master/f/lmdb-make.patch
Upstream-Status: Pending
diff --git a/Makefile b/Makefile
--- a/Makefile
+++ b/Makefile
@@ -26,6 +26,7 @@ OPT = -O2 -g
CFLAGS = $(THREADS) $(OPT) $(W) $(XCFLAGS)
LDLIBS =
SOLIBS =
+SOVERSION = 0.0.0
SOEXT = .so
prefix = /usr/local
exec_prefix = $(prefix)
@@ -38,7 +39,7 @@ mandir = $(datarootdir)/man
########################################################################
IHDRS = lmdb.h
-ILIBS = liblmdb.a liblmdb$(SOEXT)
+ILIBS = liblmdb$(SOEXT) liblmdb$(SOEXT).$(SOVERSION)
IPROGS = mdb_stat mdb_copy mdb_dump mdb_load
IDOCS = mdb_stat.1 mdb_copy.1 mdb_dump.1 mdb_load.1
PROGS = $(IPROGS) mtest mtest2 mtest3 mtest4 mtest5
@@ -49,13 +50,13 @@ install: $(ILIBS) $(IPROGS) $(IHDRS)
mkdir -p $(DESTDIR)$(libdir)
mkdir -p $(DESTDIR)$(includedir)
mkdir -p $(DESTDIR)$(mandir)/man1
- for f in $(IPROGS); do cp $$f $(DESTDIR)$(bindir); done
- for f in $(ILIBS); do cp $$f $(DESTDIR)$(libdir); done
- for f in $(IHDRS); do cp $$f $(DESTDIR)$(includedir); done
- for f in $(IDOCS); do cp $$f $(DESTDIR)$(mandir)/man1; done
+ for f in $(IPROGS); do cp -a $$f $(DESTDIR)$(bindir); done
+ for f in $(ILIBS); do cp -a $$f $(DESTDIR)$(libdir); done
+ for f in $(IHDRS); do cp -a $$f $(DESTDIR)$(includedir); done
+ for f in $(IDOCS); do cp -a $$f $(DESTDIR)$(mandir)/man1; done
clean:
- rm -rf $(PROGS) *.[ao] *.[ls]o *~ testdb
+ rm -rf $(PROGS) *.[ao] *.[ls]o* *~ testdb
test: all
rm -rf testdb && mkdir testdb
@@ -64,20 +65,24 @@ test: all
liblmdb.a: mdb.o midl.o
$(AR) rs $@ mdb.o midl.o
-liblmdb$(SOEXT): mdb.lo midl.lo
+liblmdb$(SOEXT): liblmdb$(SOEXT).$(SOVERSION)
+ rm -f $@
+ ln -s $< $@
+
+liblmdb$(SOEXT).$(SOVERSION): 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
-mdb_dump: mdb_dump.o liblmdb.a
-mdb_load: mdb_load.o liblmdb.a
-mtest: mtest.o liblmdb.a
-mtest2: mtest2.o liblmdb.a
-mtest3: mtest3.o liblmdb.a
-mtest4: mtest4.o liblmdb.a
-mtest5: mtest5.o liblmdb.a
-mtest6: mtest6.o liblmdb.a
+mdb_stat: mdb_stat.o liblmdb.so
+mdb_copy: mdb_copy.o liblmdb.so
+mdb_dump: mdb_dump.o liblmdb.so
+mdb_load: mdb_load.o liblmdb.so
+mtest: mtest.o liblmdb.so
+mtest2: mtest2.o liblmdb.so
+mtest3: mtest3.o liblmdb.so
+mtest4: mtest4.o liblmdb.so
+mtest5: mtest5.o liblmdb.so
+mtest6: mtest6.o liblmdb.so
mdb.o: mdb.c lmdb.h midl.h
$(CC) $(CFLAGS) $(CPPFLAGS) -c mdb.c

View File

@@ -0,0 +1,22 @@
SUMMARY = "Symas Lightning Memory-Mapped Database (LMDB)"
HOMEPAGE = "http://symas.com/mdb/"
LICENSE = "OLDAP-2.8"
LIC_FILES_CHKSUM = "file://LICENSE;md5=153d07ef052c4a37a8fac23bc6031972"
SRC_URI = " \
git://github.com/LMDB/lmdb.git;nobranch=1 \
file://0001-Patch-the-main-Makefile.patch \
"
SRCREV = "8ad7be2510414b9506ec9f9e24f24d04d9b04a1a"
S = "${WORKDIR}/git/libraries/liblmdb"
PV = "0.9.29"
do_compile() {
oe_runmake "CC=${CC}"
}
do_install() {
oe_runmake DESTDIR=${D} prefix=${prefix} libdir=${libdir} mandir=${mandir} install
chown -R root:root ${D}${bindir}
chown -R root:root ${D}${libdir}
}

View File

@@ -19,6 +19,7 @@ RDEPENDS:${PN} = " \
libpwquality \
libraw \
libstatgrab \
lmdb \
mlt \
translate-toolkit \
xapian-core \