Gentoo Archives: gentoo-commits

From: Eray Aslan <eras@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-db/lmdb/files/, dev-db/lmdb/
Date: Thu, 11 Feb 2021 14:40:34
Message-Id: 1613054425.2bba4156bcf48edc838a0e452d3bea1a82d42ea9.eras@gentoo
1 commit: 2bba4156bcf48edc838a0e452d3bea1a82d42ea9
2 Author: Eray Aslan <eras <AT> gentoo <DOT> org>
3 AuthorDate: Thu Feb 11 14:39:55 2021 +0000
4 Commit: Eray Aslan <eras <AT> gentoo <DOT> org>
5 CommitDate: Thu Feb 11 14:40:25 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2bba4156
7
8 dev-db/lmdb: bump to 0.9.28
9
10 and fix cursor delete bug introduced with 0.9.27
11
12 Closes: https://bugs.gentoo.org/768948
13 Package-Manager: Portage-3.0.14, Repoman-3.0.2
14 Signed-off-by: Eray Aslan <eras <AT> gentoo.org>
15
16 dev-db/lmdb/Manifest | 1 +
17 dev-db/lmdb/files/lmdb-fix-cursor-delete.patch | 48 ++++++++++++++++
18 dev-db/lmdb/lmdb-0.9.28.ebuild | 79 ++++++++++++++++++++++++++
19 3 files changed, 128 insertions(+)
20
21 diff --git a/dev-db/lmdb/Manifest b/dev-db/lmdb/Manifest
22 index 5adf3f05340..2708a563787 100644
23 --- a/dev-db/lmdb/Manifest
24 +++ b/dev-db/lmdb/Manifest
25 @@ -2,3 +2,4 @@ DIST LMDB_0.9.23.tar.gz 143813 BLAKE2B 252acad974a7ed528fe0e52b8332845bc0b607659
26 DIST LMDB_0.9.24.tar.gz 143916 BLAKE2B f075ec5f4dfb77685188229e20f12c4febe8295c7d35ed15c3db492b68af68cc7f76741078e9bb524d2c38587839f542e964af1e5d6d984bb28bd602caabbb8d SHA512 c3a96c27f13c072ef5861bcea045d82f0a220dbd938579411ea6c38ac0696b3620c71f1e2cc56d31db5105f3533da95aba1ac34653d8bdcfa4f2f1fb831cccb1
27 DIST openldap-LMDB_0.9.26.tar.gz 144029 BLAKE2B 07fe81cdaed7a402aaf485a2aa41d12c2c8cc8813d39d5304d8a1f5c8920f4695021eb586b4366a5f55010284227c7ac16487a8799c60f251ea97cd745b1261a SHA512 d7826f6d1a3144feb71eef65f843e8bcddf6cec384014bab3fc1d32a7f1b9316bcbb5b3a915b166cbdae2ffbd15f14b4eb783acd7eddbd2e321607f750efe94d
28 DIST openldap-LMDB_0.9.27.tar.gz 144104 BLAKE2B 76b7b66ca455f61f71b7c010de0b5437d02a245a5129184cf45bf5684a745888c88012fb73a219076b6c47adfda0804e6c7f603e4631c98034c01efda99ad3a9 SHA512 a27c0d26c801b172f3c207666940f86ecaae9d223843b72823d064f0ea0629a855150d049cb143981783710d3ca791c7f0f65df9d91732b2709e6107af403854
29 +DIST openldap-LMDB_0.9.28.tar.gz 144520 BLAKE2B 3466da1ffde7350056fb3b16fc0068d78139c578fdf79cd6456ca0d98e2d7b3d899849ae42a7224335a4680e52b5f0feb2c4233eaf00ee3d9ee648ae10c3114a SHA512 0cdf9a2ce35617a3135cde96491fbbb73be9362de2b94d23eda44b65ce48362ff9dbdfe921c3255ed486aceb385fcb62b81f560b1037476f4741291b29ba0dce
30
31 diff --git a/dev-db/lmdb/files/lmdb-fix-cursor-delete.patch b/dev-db/lmdb/files/lmdb-fix-cursor-delete.patch
32 new file mode 100644
33 index 00000000000..fd76be1bb79
34 --- /dev/null
35 +++ b/dev-db/lmdb/files/lmdb-fix-cursor-delete.patch
36 @@ -0,0 +1,48 @@
37 +From 40585b483976d9062e6c971df285f911512ecd5e Mon Sep 17 00:00:00 2001
38 +From: Howard Chu <hyc@××××××××.org>
39 +Date: Tue, 9 Feb 2021 23:38:06 +0000
40 +Subject: [PATCH] ITS#9461 refix ITS#9376
41 +
42 +Was setting C_DEL flag gratuitously
43 +---
44 + libraries/liblmdb/mdb.c | 2 +-
45 + 1 file changed, 1 insertion(+), 1 deletion(-)
46 +
47 +diff --git a/libraries/liblmdb/mdb.c b/libraries/liblmdb/mdb.c
48 +index 621cbcfa..e6cae8ed 100644
49 +--- a/mdb.c
50 ++++ b/mdb.c
51 +@@ -8527,10 +8527,10 @@ mdb_cursor_del0(MDB_cursor *mc)
52 + }
53 + m3->mc_xcursor->mx_cursor.mc_flags |= C_DEL;
54 + }
55 +- m3->mc_flags |= C_DEL;
56 + }
57 + }
58 + }
59 ++ m3->mc_flags |= C_DEL;
60 +
61 + fail:
62 + if (rc)
63 +From f9c5b46651c4ecd699643c4d90bb3ab7725a6167 Mon Sep 17 00:00:00 2001
64 +From: Howard Chu <hyc@××××××××.org>
65 +Date: Thu, 11 Feb 2021 11:34:57 +0000
66 +Subject: [PATCH] ITS#9461 fix typo
67 +
68 +---
69 + libraries/liblmdb/mdb.c | 2 +-
70 + 1 file changed, 1 insertion(+), 1 deletion(-)
71 +
72 +diff --git a/libraries/liblmdb/mdb.c b/libraries/liblmdb/mdb.c
73 +index e6cae8ed..4062664b 100644
74 +--- a/mdb.c
75 ++++ b/mdb.c
76 +@@ -8530,7 +8530,7 @@ mdb_cursor_del0(MDB_cursor *mc)
77 + }
78 + }
79 + }
80 +- m3->mc_flags |= C_DEL;
81 ++ mc->mc_flags |= C_DEL;
82 +
83 + fail:
84 + if (rc)
85
86 diff --git a/dev-db/lmdb/lmdb-0.9.28.ebuild b/dev-db/lmdb/lmdb-0.9.28.ebuild
87 new file mode 100644
88 index 00000000000..9f7ae6e24fd
89 --- /dev/null
90 +++ b/dev-db/lmdb/lmdb-0.9.28.ebuild
91 @@ -0,0 +1,79 @@
92 +# Copyright 1999-2021 Gentoo Authors
93 +# Distributed under the terms of the GNU General Public License v2
94 +
95 +EAPI=7
96 +inherit flag-o-matic multilib-minimal toolchain-funcs
97 +
98 +MY_P="${PN^^}_${PV}"
99 +
100 +DESCRIPTION="An ultra-fast, ultra-compact key-value embedded data store"
101 +HOMEPAGE="https://symas.com/lmdb/technical/"
102 +SRC_URI="https://git.openldap.org/openldap/openldap/-/archive/${MY_P}/openldap-${MY_P}.tar.gz"
103 +
104 +LICENSE="OPENLDAP"
105 +SLOT="0/${PV}"
106 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris ~x86-solaris"
107 +IUSE="static-libs"
108 +
109 +DEPEND=""
110 +RDEPEND=""
111 +
112 +S="${WORKDIR}/openldap-${MY_P}/libraries/liblmdb"
113 +
114 +PATCHES=(
115 + "${FILESDIR}/${PN}-fix-cursor-delete.patch"
116 +)
117 +
118 +src_prepare() {
119 + default
120 + if [[ ${CHOST} == *-darwin* && ${CHOST#*-darwin} -lt 10 ]] ; then
121 + # posix_memalign isn't available before 10.6, but on OSX
122 + # malloc is always aligned for any addressable type
123 + sed -i -e '/(__APPLE__)/a#define HAVE_MEMALIGN 1\n#define memalign(X,Y) malloc(X)' mdb.c || die
124 + fi
125 + multilib_copy_sources
126 +}
127 +
128 +multilib_src_configure() {
129 + local soname="-Wl,-soname,liblmdb$(get_libname 0)"
130 + if [[ ${CHOST} == *-darwin* ]] ; then
131 + soname="-dynamiclib -install_name ${EPREFIX}/usr/$(get_libdir)/liblmdb$(get_libname 0)"
132 + replace-flags -O[123456789] -O1
133 + fi
134 + sed -i -e "s!^CC.*!CC = $(tc-getCC)!" \
135 + -e "s!^CFLAGS.*!CFLAGS = ${CFLAGS}!" \
136 + -e "s!^AR.*!AR = $(tc-getAR)!" \
137 + -e "s!^SOEXT.*!SOEXT = $(get_libname)!" \
138 + -e "/^prefix/s!/usr/local!${EPREFIX}/usr!" \
139 + -e "/^libdir/s!lib\$!$(get_libdir)!" \
140 + -e "s!shared!shared ${soname}!" \
141 + "Makefile" || die
142 +
143 + if [[ ${CHOST} == *-solaris* ]] ; then
144 + # fdatasync lives in -lrt on Solaris 10
145 + [[ ${CHOST#*-solaris2.} -le 10 ]] && append-ldflags -lrt
146 + fi
147 +}
148 +
149 +multilib_src_compile() {
150 + emake LDLIBS+=" -pthread"
151 +}
152 +
153 +multilib_src_install() {
154 + emake DESTDIR="${D}" install
155 +
156 + mv "${ED}"/usr/$(get_libdir)/liblmdb$(get_libname) \
157 + "${ED}"/usr/$(get_libdir)/liblmdb$(get_libname 0) || die
158 + dosym liblmdb$(get_libname 0) /usr/$(get_libdir)/liblmdb$(get_libname)
159 +
160 + insinto /usr/$(get_libdir)/pkgconfig
161 + doins "${FILESDIR}/lmdb.pc"
162 + sed -i -e "s!@PACKAGE_VERSION@!${PV}!" \
163 + -e "s!@prefix@!${EPREFIX}/usr!g" \
164 + -e "s!@libdir@!$(get_libdir)!" \
165 + "${ED}"/usr/$(get_libdir)/pkgconfig/lmdb.pc || die
166 +
167 + if ! use static-libs; then
168 + rm "${ED}"/usr/$(get_libdir)/liblmdb.a || die
169 + fi
170 +}