lmdb: upgraded package to upstream

Upgraded dev-db/lmdb to version 0.9.23 on amd64, arm

BUG=b:156443138
TEST=FEATURES="test" emerge-octopus dev-db/lmdb
TEST=emerge-daisy dev-db/lmdb (Can't execute the unit test on daisy)
TEST=FEATURES="test" emerge-amd64-generic dev-db/lmdb

Change-Id: I15baf220b09f92d9cc4d63cbe6031432487302e8
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/overlays/portage-stable/+/2198336
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Tested-by: Stuart Langley <slangley@chromium.org>
Commit-Queue: Stuart Langley <slangley@chromium.org>
diff --git a/dev-db/lmdb/Manifest b/dev-db/lmdb/Manifest
new file mode 100644
index 0000000..786c483
--- /dev/null
+++ b/dev-db/lmdb/Manifest
@@ -0,0 +1 @@
+DIST LMDB_0.9.23.tar.gz 143813 BLAKE2B 252acad974a7ed528fe0e52b8332845bc0b6076599bbc79ef2c3f41459acb6ccbe5f6030c6a258fe30633c4c0568fa05fa6d46dc05bab3f93ee3aab16e6faa89 SHA512 47466a96ce288d18d489acf1abf811aa973649848a4cac31f71e1f25ea781a055ebd6616d2d630214b2df2f146f12609c82d65be0196f49d6b46a6c96464e120
diff --git a/dev-db/lmdb/files/lmdb.pc b/dev-db/lmdb/files/lmdb.pc
new file mode 100644
index 0000000..690b49c
--- /dev/null
+++ b/dev-db/lmdb/files/lmdb.pc
@@ -0,0 +1,11 @@
+prefix=@prefix@
+exec_prefix=@prefix@
+libdir=${prefix}/@libdir@
+includedir=${prefix}/include
+
+Name: liblmdb
+Description: Lightning Memory-Mapped Database
+URL: https://symas.com/products/lightning-memory-mapped-database/
+Version: @PACKAGE_VERSION@
+Libs: -L${libdir} -llmdb
+Cflags: -I${includedir}
diff --git a/dev-db/lmdb/lmdb-0.9.23.ebuild b/dev-db/lmdb/lmdb-0.9.23.ebuild
new file mode 100644
index 0000000..6e142dc
--- /dev/null
+++ b/dev-db/lmdb/lmdb-0.9.23.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic multilib-minimal toolchain-funcs
+
+DESCRIPTION="An ultra-fast, ultra-compact key-value embedded data store"
+HOMEPAGE="https://symas.com/lmdb/technical/"
+SRC_URI="https://github.com/LMDB/lmdb/archive/LMDB_${PV}.tar.gz"
+
+LICENSE="OPENLDAP"
+SLOT="0/${PV}"
+KEYWORDS="*"
+IUSE="static-libs"
+
+DEPEND=""
+RDEPEND=""
+
+S="${WORKDIR}/${PN}-LMDB_${PV}/libraries/liblmdb"
+
+src_prepare() {
+	eapply_user
+	if [[ ${CHOST} == *-darwin* && ${CHOST#*-darwin} -lt 10 ]] ; then
+		# posix_memalign isn't available before 10.6, but on OSX
+		# malloc is always aligned for any addressable type
+		sed -i -e '/(__APPLE__)/a#define HAVE_MEMALIGN 1\n#define memalign(X,Y) malloc(X)' mdb.c || die
+	fi
+	multilib_copy_sources
+}
+
+multilib_src_configure() {
+	local soname="-Wl,-soname,liblmdb$(get_libname 0)"
+	[[ ${CHOST} == *-darwin* ]] && \
+		soname="-dynamiclib -install_name ${EPREFIX}/usr/$(get_libdir)/liblmdb$(get_libname 0)"
+	sed -i -e "s!^CC.*!CC = $(tc-getCC)!" \
+		-e "s!^CFLAGS.*!CFLAGS = ${CFLAGS}!" \
+		-e "s!^AR.*!AR = $(tc-getAR)!" \
+		-e "s!^SOEXT.*!SOEXT = $(get_libname)!" \
+		-e "/^prefix/s!/usr/local!${EPREFIX}/usr!" \
+		-e "/^libdir/s!lib\$!$(get_libdir)!" \
+		-e "s!shared!shared ${soname}!" \
+		"Makefile" || die
+
+	if [[ ${CHOST} == *-solaris* ]] ; then
+		# fdatasync lives in -lrt on Solaris 10
+		[[ ${CHOST#*-solaris2.} -le 10 ]] && append-ldflags -lrt
+	fi
+}
+
+multilib_src_compile() {
+	emake LDLIBS+=" -pthread"
+}
+
+multilib_src_install() {
+	emake DESTDIR="${D}" install
+
+	mv "${ED}"/usr/$(get_libdir)/liblmdb$(get_libname) \
+		"${ED}"/usr/$(get_libdir)/liblmdb$(get_libname 0) || die
+	dosym liblmdb$(get_libname 0) /usr/$(get_libdir)/liblmdb$(get_libname)
+
+	insinto /usr/$(get_libdir)/pkgconfig
+	doins "${FILESDIR}/lmdb.pc"
+	sed -i -e "s!@PACKAGE_VERSION@!${PV}!" \
+		-e "s!@prefix@!${EPREFIX}/usr!g" \
+		-e "s!@libdir@!$(get_libdir)!" \
+		"${ED}"/usr/$(get_libdir)/pkgconfig/lmdb.pc || die
+
+	if ! use static-libs; then
+		rm "${ED}"/usr/$(get_libdir)/liblmdb.a || die
+	fi
+}
diff --git a/dev-db/lmdb/metadata.xml b/dev-db/lmdb/metadata.xml
new file mode 100644
index 0000000..160bf60
--- /dev/null
+++ b/dev-db/lmdb/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+	<longdescription lang="en">
+	An ultra-fast, ultra-compact key-value embedded data store
+</longdescription>
+	<maintainer type="person">
+		<email>eras@gentoo.org</email>
+		<name>Eray Aslan</name>
+	</maintainer>
+	<maintainer type="project">
+		<email>ldap-bugs@gentoo.org</email>
+		<name>Gentoo LDAP Project</name>
+	</maintainer>
+	<upstream>
+		<remote-id type="github">LMDB/lmdb</remote-id>
+	</upstream>
+</pkgmetadata>
diff --git a/metadata/md5-cache/dev-db/lmdb-0.9.23 b/metadata/md5-cache/dev-db/lmdb-0.9.23
new file mode 100644
index 0000000..a74cead
--- /dev/null
+++ b/metadata/md5-cache/dev-db/lmdb-0.9.23
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=An ultra-fast, ultra-compact key-value embedded data store
+EAPI=7
+HOMEPAGE=https://symas.com/lmdb/technical/
+IUSE=static-libs abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=OPENLDAP
+SLOT=0/0.9.23
+SRC_URI=https://github.com/LMDB/lmdb/archive/LMDB_0.9.23.tar.gz
+_eclasses_=eutils	06133990e861be0fe60c2b428fd025d9	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	b2f01ad412baf81650c23fcf0975fa33	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	209edad4a5c4812e7b2f8021650974f0
+_md5_=e88139f8ffac3f72893b519268d8a777