summaryrefslogtreecommitdiff
path: root/dev-libs/leveldb
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-06-23 07:00:28 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-06-23 07:00:28 +0100
commite23cdda4dbb0c83b9e682ab5e916085a35203da5 (patch)
tree5a4ac448a3b288b731c24d947e0ce52df3cab07b /dev-libs/leveldb
parent8187a741807f3e9a9e26304973cf18087dcf2560 (diff)
gentoo resync : 23.06.2018
Diffstat (limited to 'dev-libs/leveldb')
-rw-r--r--dev-libs/leveldb/Manifest15
-rw-r--r--dev-libs/leveldb/files/leveldb-1.20-memenv-so.patch33
-rw-r--r--dev-libs/leveldb/leveldb-1.10.0-r1.ebuild56
-rw-r--r--dev-libs/leveldb/leveldb-1.11.0-r1.ebuild56
-rw-r--r--dev-libs/leveldb/leveldb-1.12.0-r1.ebuild56
-rw-r--r--dev-libs/leveldb/leveldb-1.13.0-r1.ebuild56
-rw-r--r--dev-libs/leveldb/leveldb-1.14.0.ebuild52
-rw-r--r--dev-libs/leveldb/leveldb-1.20.ebuild63
-rw-r--r--dev-libs/leveldb/metadata.xml1
9 files changed, 101 insertions, 287 deletions
diff --git a/dev-libs/leveldb/Manifest b/dev-libs/leveldb/Manifest
index 9c2dcc3c67bf..5bd09b070dc5 100644
--- a/dev-libs/leveldb/Manifest
+++ b/dev-libs/leveldb/Manifest
@@ -1,27 +1,20 @@
AUX leveldb-1.18-configure.patch 1452 BLAKE2B d67c8a226fe8640a5c19d7e7d8e293d0ef31dd01c4813794640ca7f40be8e0c09a084205a6dc954748b2877d8fac1b419ddc9d2461a894bf9de8e53b48852926 SHA512 86bae8c8d5d722435bedc68333c97f318847c93503368d815157a46ab15ad1795f8a585027dcecb7a94c338d25eeb69f94df87f2da2cd9f5805838f0a29dc08e
AUX leveldb-1.18-mips.patch 1399 BLAKE2B ea9bf52ce2c6482c8a43116c5782b2219af3d8a7eafb39a7d0742695b144f50c5f53e33c85ec562c690b78313146eef7a1edf41eb178bb6b9d8e179d87d72576 SHA512 8d968371007d163cbbb87546cbfe246e399f083bacea415f2d8b68355a5d3363df51f34e9bd29ee558ae475414b3c331b7473ef2d7e432ebfa786d55a08b2e54
+AUX leveldb-1.20-memenv-so.patch 1877 BLAKE2B fa75c48f438248ec73765d959bbe746b3b4887d1fbfe1b33287a81a9a3fcb5ffabc5eacc350e214dfc40b78c8df7e6246bbf5a889b5d2fded5101da5a8fb72c0 SHA512 31fd9cafe226ceb83cb9a0b526ef4941e29406a182e366521ba2d78dba9ed3e7f32a088362ff9b751a82e30b12a12acd8f4d38808dde288116170417e4de8200
AUX leveldb-1.9.0-configure.patch 990 BLAKE2B 8e658003078100ee071d79709532e37edec29aca816cd5864faea8f2cbad6d4212da09a268dec767b695823557f0d38744d13932eb0fcb50dee7ad065018ed92 SHA512 28f08e257d0f067d93ea88ee30719c092660ab7d220a55d4fa1cec5c5fd8195465e374670aa46c7a125f218ae3a689f3bb58ce66ddc720a2fc1caed552ed27e5
AUX leveldb-1.9.0-forwardcompat.patch 3464 BLAKE2B 628e0898b9648d14bdd8a043b0646d8af0300310b9b03d7224e52b5be2a2be60d39934b1885bb602334aa64f5f3dbcd7d0ed32e936f3575047005f0d27e03438 SHA512 d55d4469a9cb118688233b82df3f19d08a8fb3f53a3d1d990d485a0cb91872eb2fd3699288369a96ee59739be730ce9437f9d1f8b51d095dd014adf475de7824
AUX leveldb-1.9.0-memenv-so.patch 1957 BLAKE2B b26ddad37bba050ae2626aad164a3e403fc8ff3a050f79b08d11c19aff27d729bbcb51b35489badc4981f6ceee518482b9d8ceb30585dcc28a1a21f86d097413 SHA512 fbd1e43dba18b9dc8717651052323ea71182a758eccc3637f3ab1aade1a5de5b00f6a54ea0a8f34e2b9a91173b72eb23530ae77bc2b1ac0e454e0e2dfffcfd75
-DIST leveldb-1.10.0.tar.gz 204270 BLAKE2B 4418d8894d8b3b03958153132c4e9c2e88b58d5c0a2c85914f218500b82987623bc34606947c3d013521dbfd29d1c7518097864e0173b639387f96ce08319ba6 SHA512 ba9829a203c25d00184b77382ee8db6b383058c527771a795443e0d3ae02b93dd29c3362f12fd89b08ac24f784b7ed2f3e3325b30abe2763df1cc9e4b8a12948
-DIST leveldb-1.11.0.tar.gz 205413 BLAKE2B 751b81e657fa569a85e8cb3cca19bb2cfa79fec484a77d6cd434bcedc596fafae96924cc7dcacb33cbf2fd2cf2b7033f8614879f3b3737715d0c9c76ce777aef SHA512 2b01227d3339d5ab09a6488e43f4b92f1c8f23d9d9b3a1636710aadfebb2a291622b83d636c96314a651f7a774ec39b404490dcf7cd4ac6ec2997d5d651582aa
-DIST leveldb-1.12.0.tar.gz 205436 BLAKE2B 0506ef5a1891d36f8961a70fcd637ee59e71a0736ed24e508c30c9a33f2cc10c7a50693403d5ffa4b8dff2f8b844c08d163f096ddf2bc1de4b0c00d58570d3dd SHA512 b0798ecc598a7dcee38887867521face02b11ec93bc55e28fb3e1e16fb9c4d2068564f7779849a0dc0d758ee9665c2297c004947bedd149e392c129fc39a921f
-DIST leveldb-1.13.0.tar.gz 207718 BLAKE2B d0dd4590a3806679e413e502fb38a7b0ca73d8afd3e2a1789f212ec2b430ff3f86d0ba2b4b7c0d998a39fa5c81a5cfb64e07472d3d975f6e4c32734626e5f4e5 SHA512 f7fd7421a0c00fadae44cae4be8a473a8827472229bf95aed0642401943f4fdf3d14026270dce59cd7bda2b2a2856d92c253a360c80ea8188a3fb52985b7e3e9
-DIST leveldb-1.14.0.tar.gz 208282 BLAKE2B 438520df4fdaee3cd2439d8f242b119a923e53b9a109692804b00d5e246cde773981d759cf973686a65d713b2530c915cd5a12876d76bc5903eb04f8c5d73996 SHA512 c8dc837b77b7aa0be4fca03f31061685534d4280c59b929e5c3e7ef9ceb29e7ea75f8836a55c9df49cd3bc67143d91a2512fc5d9a181f440ec4961a256c77108
DIST leveldb-1.15.0.tar.gz 205691 BLAKE2B 29ebe99ba8b2c44943a2c07c6c0e3a2136c53e15cbbb1fb807cb198b8849433c84ee5c4976fd898a84f2bddb38e543a0e45aedfabc1a46029ca23d39f8b0103e SHA512 af5b18a7750ac553659075c1c34aa2fddf6322b6837f096589cf5908c7050fd19053cd98d19fd7097e0840392b318f0166360d3a0595adcaaabcfdf393246775
DIST leveldb-1.17.tar.gz 207037 BLAKE2B edeb366b9b17fec1a2bc0c0ca8636068bdd65dd1c017a4508c787714da0a202912d1283de9c77c94c9d34784fe552ab344e671fa351ec14f775b1e1037ffbef0 SHA512 d35401a92fa2b59c46e97ab94a9c70d0d5f97dbc7868a75354e088489338c078f47feaa3371489c481317b45ace6bd207d29676f5c18076ced86aa3f9fa44e58
DIST leveldb-1.18.tar.gz 209376 BLAKE2B 08d63fe8aed45d38befd29caddee5a229ff847d254b30be55715793a621e840641d53af47e4fd93286ff0445d6001be26aa00063c075681659f7ceb692184249 SHA512 3d9c55a7bf8692914784ec33c273704ce9978496b071c7b661708f049d0d4ccd51a44441f50c3e536725caeb9896575192f52708a4bb1c0222cecdeec89919a3
+DIST leveldb-1.20.tar.gz 223141 BLAKE2B 57ab5cb191679b8fbfaa28fa0a61ee1dcd757bb9c70215dd325daebfd93b30aa9bbe3c993a1758aa9804a7cd6f2c31df7cf98bdf98320cd1aebc14f5eb77d9a5 SHA512 c59258f2f58ce2d5680e9ab3da4ab0923d91cd4648dcf63cdaa26cdde92bf45e094544539ad11d8e09a4a4813435286143ed0e86c21c6c31a0596903ed4744d2
DIST leveldb-1.9.0.tar.gz 203872 BLAKE2B 5fa6d361d82bd386a722b24f52b851791555c6cf77939bd6b55feaa75f0db0e216f84b2b3d23f4cac3bf522fb5fcbbf8b7adb46e4731d0ba161c82124cde9abf SHA512 47b0a3272eef2d677ddeb8d0c973e59a1be4bff580528c3bc3f83a654f41485ecc86892d9124ce21ef747c220f98cdad687436849dc978adfd42f8c8c05b9160
-EBUILD leveldb-1.10.0-r1.ebuild 1303 BLAKE2B 00a39315755dca8491d9006fdd7ed2e6847f3593fc36e9885ce44a4c2e777d1e95d592f98595400dc1073a58998faf8a6b1a31050e79a491d276f55a82705f43 SHA512 548cec6bfa8a1c3b78966b593b239aa49d7c21f21309729f00f44ea76b484f633fdccd2810d39475372227eb252ff91d554b2cbdf4f543b98305f744c04ec042
-EBUILD leveldb-1.11.0-r1.ebuild 1303 BLAKE2B 00a39315755dca8491d9006fdd7ed2e6847f3593fc36e9885ce44a4c2e777d1e95d592f98595400dc1073a58998faf8a6b1a31050e79a491d276f55a82705f43 SHA512 548cec6bfa8a1c3b78966b593b239aa49d7c21f21309729f00f44ea76b484f633fdccd2810d39475372227eb252ff91d554b2cbdf4f543b98305f744c04ec042
-EBUILD leveldb-1.12.0-r1.ebuild 1303 BLAKE2B 00a39315755dca8491d9006fdd7ed2e6847f3593fc36e9885ce44a4c2e777d1e95d592f98595400dc1073a58998faf8a6b1a31050e79a491d276f55a82705f43 SHA512 548cec6bfa8a1c3b78966b593b239aa49d7c21f21309729f00f44ea76b484f633fdccd2810d39475372227eb252ff91d554b2cbdf4f543b98305f744c04ec042
-EBUILD leveldb-1.13.0-r1.ebuild 1303 BLAKE2B 00a39315755dca8491d9006fdd7ed2e6847f3593fc36e9885ce44a4c2e777d1e95d592f98595400dc1073a58998faf8a6b1a31050e79a491d276f55a82705f43 SHA512 548cec6bfa8a1c3b78966b593b239aa49d7c21f21309729f00f44ea76b484f633fdccd2810d39475372227eb252ff91d554b2cbdf4f543b98305f744c04ec042
-EBUILD leveldb-1.14.0.ebuild 1230 BLAKE2B bbaa78014b6f36a8c6d8e5a71ff56995b95f9fd195c54cb4fcc50d1ae5327eff1d4f116b60b79e03a4a2d561bd592eda2a5ad91c3dc09ba1e1d778ec9a50a296 SHA512 0b235df8d0bc8559a1e9b79498c2a3009134683a6edfe671abeb29e6a1517817622e03989e9d0c3a6e59aa6127b74a0f86ea6bb08c28974f1ca1dfb742c80033
EBUILD leveldb-1.15.0-r1.ebuild 1434 BLAKE2B 9f38a16de6c75e7f6d0b4ac8172d7c7abbc6b95da6729c3ad67977dc17702486d1f5b10b28a7259ee8d7a32b9c6891666113f90e9fa797654bf068ad15314ee0 SHA512 686476d32f6922e79672b07c934662b09a2b9615b6014b9048dee4398fde71c8c26e46a47ee048c258568d5cd723ca6857db2fd046c846f187092b04e6dd15d8
EBUILD leveldb-1.15.0.ebuild 1230 BLAKE2B bbaa78014b6f36a8c6d8e5a71ff56995b95f9fd195c54cb4fcc50d1ae5327eff1d4f116b60b79e03a4a2d561bd592eda2a5ad91c3dc09ba1e1d778ec9a50a296 SHA512 0b235df8d0bc8559a1e9b79498c2a3009134683a6edfe671abeb29e6a1517817622e03989e9d0c3a6e59aa6127b74a0f86ea6bb08c28974f1ca1dfb742c80033
EBUILD leveldb-1.17.ebuild 1720 BLAKE2B 683381ebc3ae11d8844e52fb2c7161348a6495f4f83bd29369f991d4169619d526ae6bd1ed878bae9269715da5a9d7f80efc298253fa78c35aa1c7eea9b98bd5 SHA512 a59df720d900c7da98a4e0c9c865f5cb962b1843461289cd0a4e78cbcb5bcfff93b0d4213fde486df0a9f5d2dc7bfe86ecfec757c83513932fb1ab02859feb25
EBUILD leveldb-1.18-r2.ebuild 1878 BLAKE2B 8a31c57e1e5e6015b549e55b83277c47be0b882f695f3af8f2295ea801380cb02ac0e0691a2a9113bccbb39e4a505a9ceeeaa2c0f9be3644afb1eb4c5949d7b3 SHA512 865cc8d9fa5b956e3b31863d3ce4d18624bda106aa06c0176ff514c7cc3b7016edb0dd34dd5724b5fe4a9ef231ceaf2b59ef47ac9589c66ca4979254b4703075
EBUILD leveldb-1.18.ebuild 1647 BLAKE2B 65c40aea5784964fcdf7550ff41f20980b61e3eae2e69ea790d1e1db1c3b152abb18c7ec679bbdaca21c2c91ace348e7b8a8bee53fa5c39528f1b0c1ac76108c SHA512 5a8feaeca45690fbb5d6f7ecfe7074e176532765900cb343107da542b32e61935bb0832a6682550d57a7e74bc20fec0469a7b0b20a1de9636f628fafd3de4193
+EBUILD leveldb-1.20.ebuild 1742 BLAKE2B c8056fe84b4af769dc00fd4e0a78df77a38fbd88de69d9a854322644a699738a7f58e126092f64f6fcc2a4a13d5e53bcec6d9b2f049e72c181c9eebfcaecc83b SHA512 a5b8b296dd67fef075e71bbdf48d0c70ae8f723f8f7087b396ec8d3f44a552ec43674a9054ccfa19488ee7e5b3af4c43e61cf0742d5e566a07640360d7e5a1de
EBUILD leveldb-1.9.0-r5.ebuild 1223 BLAKE2B 7bbb2958034b96f22b3bb5e55fd9f1383e2cd01b7a523dc32ead090b31cefcf4299d581e85430dbec267746ded520ed21ddb89a5fad9c40a1f6a652677961ecd SHA512 a97ee6357c3e37208d7900f216e4d4270bd7b6c9add1449e3a0c52d49755a1be88f6008e9ae9bb6a021d3345fa57db18e3751073a63ccc8e4270e7ba684216ea
EBUILD leveldb-1.9.0-r6.ebuild 1277 BLAKE2B 9e581129c37d33f46037eeef50916c5ce6916e6f671f01144b9f0f7cffed096dff724076f36261d552df6cd8f396a38725ee476258211a1cdbf42af9bef6b289 SHA512 ca4965119338028813e0cdb5d1b303c88ef2e2450f471f4d58e16a276485fcb001d6c4818097f5b0c47eb66ce1b23b561ad37809415654c4cee771d0ac17137a
-MISC metadata.xml 423 BLAKE2B 78e731c14b9096490f6500badbd462406d7650090aa183cc9ba45c7c85cbf05439eb66782dce3bf32e7487785f00d9431c2cc49fd46b627092811a90b1a5d7d5 SHA512 0c0b3abf79f52fc0c42e50899afabb32bb9f214b685c6dd09d523dd777f32d00a58a5004b8cc722c9c3a104801b69fbf8342aa64232003ae057a81ee4c822e5c
+MISC metadata.xml 487 BLAKE2B 33632d0f2ef6a0ed11b059a6245ec9582b1e977622a9a755e4ae98cd1f8dd8f853c0ed0aea919b11451c57c576699f4e9a22bd1303148eacec6fc2770f47492f SHA512 61c9350d750209e948d6aa51a3594546837e425c49dede490c0171771e7ff5a2e03932f5052ee90b36e477a20153bde3c265036839e2723703677414bd77d0d3
diff --git a/dev-libs/leveldb/files/leveldb-1.20-memenv-so.patch b/dev-libs/leveldb/files/leveldb-1.20-memenv-so.patch
new file mode 100644
index 000000000000..d443ef0ad262
--- /dev/null
+++ b/dev-libs/leveldb/files/leveldb-1.20-memenv-so.patch
@@ -0,0 +1,33 @@
+# Create libmemenv.so and don't compile programs by default
+# Add a static_programs target to compile test programs
+--- a/Makefile 2018-06-03 16:52:28.839614213 +0200
++++ b/Makefile 2018-06-03 16:52:18.209544310 +0200
+@@ -128,15 +128,27 @@
+ ln -fs $(SHARED_LIB3) $(SHARED_OUTDIR)/$(SHARED_LIB1)
+ $(SHARED_OUTDIR)/$(SHARED_LIB2): $(SHARED_OUTDIR)/$(SHARED_LIB3)
+ ln -fs $(SHARED_LIB3) $(SHARED_OUTDIR)/$(SHARED_LIB2)
++SHARED_MEMENV_LIB1 = libmemenv.$(PLATFORM_SHARED_EXT)
++SHARED_MEMENV_LIB2 = $(SHARED_MEMENV_LIB1).$(SHARED_VERSION_MAJOR)
++SHARED_MEMENV_LIB3 = $(SHARED_MEMENV_LIB1).$(SHARED_VERSION_MAJOR).$(SHARED_VERSION_MINOR)
++SHARED_MEMENV_LIBS = $(SHARED_OUTDIR)/$(SHARED_MEMENV_LIB1) $(SHARED_OUTDIR)/$(SHARED_MEMENV_LIB2) $(SHARED_OUTDIR)/$(SHARED_MEMENV_LIB3)
++$(SHARED_OUTDIR)/$(SHARED_MEMENV_LIB1): $(SHARED_OUTDIR)/$(SHARED_MEMENV_LIB3)
++ ln -fs $(SHARED_MEMENV_LIB3) $(SHARED_OUTDIR)/$(SHARED_MEMENV_LIB1)
++$(SHARED_OUTDIR)/$(SHARED_MEMENV_LIB2): $(SHARED_OUTDIR)/$(SHARED_MEMENV_LIB3)
++ ln -fs $(SHARED_MEMENV_LIB3) $(SHARED_OUTDIR)/$(SHARED_MEMENV_LIB2)
+ SHARED_MEMENVLIB = $(SHARED_OUTDIR)/libmemenv.a
+ endif
+
+ $(SHARED_OUTDIR)/$(SHARED_LIB3): $(SHARED_LIBOBJECTS)
+ $(CXX) $(LDFLAGS) $(PLATFORM_SHARED_LDFLAGS)$(SHARED_LIB2) $(SHARED_LIBOBJECTS) -o $(SHARED_OUTDIR)/$(SHARED_LIB3) $(LIBS)
++$(SHARED_OUTDIR)/$(SHARED_MEMENV_LIB3): $(SHARED_MEMENVOBJECTS)
++ $(CXX) $(LDFLAGS) $(PLATFORM_SHARED_LDFLAGS)$(SHARED_MEMENV_LIB2) $(SHARED_MEMENVOBJECTS) -o $(SHARED_OUTDIR)/$(SHARED_MEMENV_LIB3) $(LIBS)
+
+ endif # PLATFORM_SHARED_EXT
+
+-all: $(SHARED_LIBS) $(SHARED_PROGRAMS) $(STATIC_OUTDIR)/libleveldb.a $(STATIC_OUTDIR)/libmemenv.a $(STATIC_PROGRAMS)
++all: $(SHARED_LIBS) $(SHARED_MEMENV_LIBS)
++
++static_programs: $(STATIC_PROGRAMS)
+
+ check: $(STATIC_PROGRAMS)
+ for t in $(notdir $(TESTS)); do echo "***** Running $$t"; $(STATIC_OUTDIR)/$$t || exit 1; done
diff --git a/dev-libs/leveldb/leveldb-1.10.0-r1.ebuild b/dev-libs/leveldb/leveldb-1.10.0-r1.ebuild
deleted file mode 100644
index 9c017847de4c..000000000000
--- a/dev-libs/leveldb/leveldb-1.10.0-r1.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=4
-
-inherit eutils multilib toolchain-funcs
-
-DESCRIPTION="a fast key-value storage library written at Google"
-HOMEPAGE="https://github.com/google/leveldb"
-SRC_URI="https://${PN}.googlecode.com/files/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="+snappy static-libs +tcmalloc"
-
-DEPEND="tcmalloc? ( dev-util/google-perftools )
- snappy? (
- app-arch/snappy
- static-libs? ( app-arch/snappy[static-libs] )
- )"
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-1.9.0-forwardcompat.patch
-}
-
-src_configure() {
- # These vars all get picked up by build_detect_platform
- # which the Makefile runs for us automatically.
- tc-export AR CC CXX
- export OPT="-DNDEBUG ${CPPFLAGS}"
- # Probably needs more filling out
- export TARGET_OS
- case ${CHOST} in
- *) TARGET_OS="Linux";;
- esac
- export USE_SNAPPY=$(usex snappy)
- export USE_TCMALLOC=no
-}
-
-src_compile() {
- emake $(usex static-libs '' 'LIBRARY=') all libmemenv.a
-}
-
-src_test() {
- emake check
-}
-
-src_install() {
- insinto /usr/include
- doins -r include/* helpers/memenv/memenv.h
- dolib.so libleveldb*$(get_libname)*
- use static-libs && dolib.a libleveldb.a
- dolib.a libmemenv.a
-}
diff --git a/dev-libs/leveldb/leveldb-1.11.0-r1.ebuild b/dev-libs/leveldb/leveldb-1.11.0-r1.ebuild
deleted file mode 100644
index 9c017847de4c..000000000000
--- a/dev-libs/leveldb/leveldb-1.11.0-r1.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=4
-
-inherit eutils multilib toolchain-funcs
-
-DESCRIPTION="a fast key-value storage library written at Google"
-HOMEPAGE="https://github.com/google/leveldb"
-SRC_URI="https://${PN}.googlecode.com/files/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="+snappy static-libs +tcmalloc"
-
-DEPEND="tcmalloc? ( dev-util/google-perftools )
- snappy? (
- app-arch/snappy
- static-libs? ( app-arch/snappy[static-libs] )
- )"
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-1.9.0-forwardcompat.patch
-}
-
-src_configure() {
- # These vars all get picked up by build_detect_platform
- # which the Makefile runs for us automatically.
- tc-export AR CC CXX
- export OPT="-DNDEBUG ${CPPFLAGS}"
- # Probably needs more filling out
- export TARGET_OS
- case ${CHOST} in
- *) TARGET_OS="Linux";;
- esac
- export USE_SNAPPY=$(usex snappy)
- export USE_TCMALLOC=no
-}
-
-src_compile() {
- emake $(usex static-libs '' 'LIBRARY=') all libmemenv.a
-}
-
-src_test() {
- emake check
-}
-
-src_install() {
- insinto /usr/include
- doins -r include/* helpers/memenv/memenv.h
- dolib.so libleveldb*$(get_libname)*
- use static-libs && dolib.a libleveldb.a
- dolib.a libmemenv.a
-}
diff --git a/dev-libs/leveldb/leveldb-1.12.0-r1.ebuild b/dev-libs/leveldb/leveldb-1.12.0-r1.ebuild
deleted file mode 100644
index 9c017847de4c..000000000000
--- a/dev-libs/leveldb/leveldb-1.12.0-r1.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=4
-
-inherit eutils multilib toolchain-funcs
-
-DESCRIPTION="a fast key-value storage library written at Google"
-HOMEPAGE="https://github.com/google/leveldb"
-SRC_URI="https://${PN}.googlecode.com/files/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="+snappy static-libs +tcmalloc"
-
-DEPEND="tcmalloc? ( dev-util/google-perftools )
- snappy? (
- app-arch/snappy
- static-libs? ( app-arch/snappy[static-libs] )
- )"
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-1.9.0-forwardcompat.patch
-}
-
-src_configure() {
- # These vars all get picked up by build_detect_platform
- # which the Makefile runs for us automatically.
- tc-export AR CC CXX
- export OPT="-DNDEBUG ${CPPFLAGS}"
- # Probably needs more filling out
- export TARGET_OS
- case ${CHOST} in
- *) TARGET_OS="Linux";;
- esac
- export USE_SNAPPY=$(usex snappy)
- export USE_TCMALLOC=no
-}
-
-src_compile() {
- emake $(usex static-libs '' 'LIBRARY=') all libmemenv.a
-}
-
-src_test() {
- emake check
-}
-
-src_install() {
- insinto /usr/include
- doins -r include/* helpers/memenv/memenv.h
- dolib.so libleveldb*$(get_libname)*
- use static-libs && dolib.a libleveldb.a
- dolib.a libmemenv.a
-}
diff --git a/dev-libs/leveldb/leveldb-1.13.0-r1.ebuild b/dev-libs/leveldb/leveldb-1.13.0-r1.ebuild
deleted file mode 100644
index 9c017847de4c..000000000000
--- a/dev-libs/leveldb/leveldb-1.13.0-r1.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=4
-
-inherit eutils multilib toolchain-funcs
-
-DESCRIPTION="a fast key-value storage library written at Google"
-HOMEPAGE="https://github.com/google/leveldb"
-SRC_URI="https://${PN}.googlecode.com/files/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="+snappy static-libs +tcmalloc"
-
-DEPEND="tcmalloc? ( dev-util/google-perftools )
- snappy? (
- app-arch/snappy
- static-libs? ( app-arch/snappy[static-libs] )
- )"
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-1.9.0-forwardcompat.patch
-}
-
-src_configure() {
- # These vars all get picked up by build_detect_platform
- # which the Makefile runs for us automatically.
- tc-export AR CC CXX
- export OPT="-DNDEBUG ${CPPFLAGS}"
- # Probably needs more filling out
- export TARGET_OS
- case ${CHOST} in
- *) TARGET_OS="Linux";;
- esac
- export USE_SNAPPY=$(usex snappy)
- export USE_TCMALLOC=no
-}
-
-src_compile() {
- emake $(usex static-libs '' 'LIBRARY=') all libmemenv.a
-}
-
-src_test() {
- emake check
-}
-
-src_install() {
- insinto /usr/include
- doins -r include/* helpers/memenv/memenv.h
- dolib.so libleveldb*$(get_libname)*
- use static-libs && dolib.a libleveldb.a
- dolib.a libmemenv.a
-}
diff --git a/dev-libs/leveldb/leveldb-1.14.0.ebuild b/dev-libs/leveldb/leveldb-1.14.0.ebuild
deleted file mode 100644
index 0b1c19884483..000000000000
--- a/dev-libs/leveldb/leveldb-1.14.0.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=4
-
-inherit eutils multilib toolchain-funcs
-
-DESCRIPTION="a fast key-value storage library written at Google"
-HOMEPAGE="https://github.com/google/leveldb"
-SRC_URI="https://${PN}.googlecode.com/files/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="+snappy static-libs +tcmalloc"
-
-DEPEND="tcmalloc? ( dev-util/google-perftools )
- snappy? (
- app-arch/snappy
- static-libs? ( app-arch/snappy[static-libs] )
- )"
-RDEPEND="${DEPEND}"
-
-src_configure() {
- # These vars all get picked up by build_detect_platform
- # which the Makefile runs for us automatically.
- tc-export AR CC CXX
- export OPT="-DNDEBUG ${CPPFLAGS}"
- # Probably needs more filling out
- export TARGET_OS
- case ${CHOST} in
- *) TARGET_OS="Linux";;
- esac
- export USE_SNAPPY=$(usex snappy)
- export USE_TCMALLOC=no
-}
-
-src_compile() {
- emake $(usex static-libs '' 'LIBRARY=') all libmemenv.a
-}
-
-src_test() {
- emake check
-}
-
-src_install() {
- insinto /usr/include
- doins -r include/* helpers/memenv/memenv.h
- dolib.so libleveldb*$(get_libname)*
- use static-libs && dolib.a libleveldb.a
- dolib.a libmemenv.a
-}
diff --git a/dev-libs/leveldb/leveldb-1.20.ebuild b/dev-libs/leveldb/leveldb-1.20.ebuild
new file mode 100644
index 000000000000..e8b13b5798a1
--- /dev/null
+++ b/dev-libs/leveldb/leveldb-1.20.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit multilib toolchain-funcs
+
+DESCRIPTION="a fast key-value storage library written at Google"
+HOMEPAGE="http://leveldb.org/ https://github.com/google/leveldb"
+SRC_URI="https://github.com/google/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+# https://github.com/google/leveldb/issues/536
+SLOT="0/1"
+KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~x86 ~amd64-fbsd ~amd64-linux ~x86-linux"
+IUSE="+snappy static-libs kernel_FreeBSD +tcmalloc test"
+
+DEPEND="tcmalloc? ( dev-util/google-perftools )
+ snappy? (
+ app-arch/snappy:=
+ )"
+RDEPEND="${DEPEND}"
+
+# https://bugs.gentoo.org/651604
+REQUIRED_USE="snappy? ( !static-libs )"
+
+# https://github.com/google/leveldb/issues/234
+# https://github.com/google/leveldb/issues/236
+PATCHES=( "${FILESDIR}"/{${PN}-1.18-configure.patch,${P}-memenv-so.patch} )
+
+src_configure() {
+ # These vars all get picked up by build_detect_platform
+ tc-export AR CC CXX
+ export OPT="-DNDEBUG ${CPPFLAGS}"
+
+ TARGET_OS=$(usex kernel_FreeBSD FreeBSD Linux) \
+ USE_SNAPPY=$(usex snappy) \
+ USE_TCMALLOC=no \
+ TMPDIR=${T} \
+ sh -x ./build_detect_platform build_config.mk ./ || die
+}
+
+src_compile() {
+ default
+ usex static-libs && emake out-static/lib{leveldb,memenv}.a
+ use test && emake static_programs
+}
+
+src_test() {
+ emake check
+}
+
+src_install() {
+ insinto /usr/include
+ doins -r include/.
+ # This matches the path Debian picked. Upstream provides no guidance.
+ insinto /usr/include/leveldb/helpers
+ doins helpers/memenv/memenv.h
+
+ dolib.so out-shared/libleveldb*$(get_libname)*
+ use static-libs && dolib.a out-static/lib{leveldb,memenv}.a
+ dolib.so out-shared/libmemenv*$(get_libname)*
+}
diff --git a/dev-libs/leveldb/metadata.xml b/dev-libs/leveldb/metadata.xml
index 1b1686f1de67..056bf21ff538 100644
--- a/dev-libs/leveldb/metadata.xml
+++ b/dev-libs/leveldb/metadata.xml
@@ -10,5 +10,6 @@
</use>
<upstream>
<remote-id type="github">google/leveldb</remote-id>
+ <bugs-to>https://github.com/google/leveldb/issues</bugs-to>
</upstream>
</pkgmetadata>