[arch-commits] Commit in leveldb/trunk (3 files)

Antonio Rojas arojas at archlinux.org
Sun Mar 7 10:22:49 UTC 2021


    Date: Sunday, March 7, 2021 @ 10:22:48
  Author: arojas
Revision: 885884

Update to 1.23, unbundle gtest and benchmark

Added:
  leveldb/trunk/leveldb-unbundle-gtest-benchmark.patch
Modified:
  leveldb/trunk/PKGBUILD
Deleted:
  leveldb/trunk/0001-Restore-soname-versioning-with-CMake-build.patch

-------------------------------------------------------+
 0001-Restore-soname-versioning-with-CMake-build.patch |   39 ---------------
 PKGBUILD                                              |   41 +++++++---------
 leveldb-unbundle-gtest-benchmark.patch                |   36 ++++++++++++++
 3 files changed, 55 insertions(+), 61 deletions(-)

Deleted: 0001-Restore-soname-versioning-with-CMake-build.patch
===================================================================
--- 0001-Restore-soname-versioning-with-CMake-build.patch	2021-03-07 10:21:25 UTC (rev 885883)
+++ 0001-Restore-soname-versioning-with-CMake-build.patch	2021-03-07 10:22:48 UTC (rev 885884)
@@ -1,39 +0,0 @@
-From 37300aa54b8256dd2edfd504942eb2bd20823647 Mon Sep 17 00:00:00 2001
-From: leveldb Team <no-reply at google.com>
-Date: Mon, 1 Apr 2019 08:59:17 -0700
-Subject: [PATCH] Restore soname versioning with CMake build
-
-Before:
-
-$ readelf -d build/libleveldb.so | grep soname
- 0x000000000000000e (SONAME)             Library soname: [libleveldb.so]
-
-After:
-$ readelf -d build/libleveldb.so | grep soname
- 0x000000000000000e (SONAME)             Library soname: [libleveldb.so.1]
-
-This matches the soname from v1.20.
-
-PiperOrigin-RevId: 241334113
----
- CMakeLists.txt | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index e471a2a..ceb5dd9 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -233,6 +233,10 @@ if(BUILD_SHARED_LIBS)
-       # Used by include/export.h.
-       LEVELDB_SHARED_LIBRARY
-   )
-+  set_target_properties(leveldb
-+    PROPERTIES VERSION ${PROJECT_VERSION})
-+  set_target_properties(leveldb
-+    PROPERTIES SOVERSION 1)
- endif(BUILD_SHARED_LIBS)
- 
- if(HAVE_CLANG_THREAD_SAFETY)
--- 
-2.21.0
-

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2021-03-07 10:21:25 UTC (rev 885883)
+++ PKGBUILD	2021-03-07 10:22:48 UTC (rev 885884)
@@ -2,44 +2,41 @@
 # Contributor: feydaykyn <feydaykyn at yahoo.fr>
 
 pkgname=leveldb
-pkgver=1.22
-pkgrel=2
+pkgver=1.23
+pkgrel=1
 pkgdesc="A fast and lightweight key/value database library"
 arch=('x86_64')
 url="https://github.com/google/leveldb"
 license=('BSD')
 depends=('gperftools' 'snappy')
-makedepends=('cmake')
-source=("$pkgname-$pkgver.tar.gz::https://github.com/google/leveldb/archive/$pkgver.tar.gz")
-sha1sums=('8d310af5cfb53dc836bfb412ff4b3c8aea578627')
+makedepends=('cmake' 'gmock' 'benchmark')
+source=("$pkgname-$pkgver.tar.gz::https://github.com/google/leveldb/archive/$pkgver.tar.gz"
+        leveldb-unbundle-gtest-benchmark.patch)
+sha256sums=('9a37f8a6174f09bd622bc723b55881dc541cd50747cbd08831c2a82d620f6d76'
+            '4183dc3b5c17a0cb5fb66ada179b9bd2b43e997d3a9c854d19cf892ea6e524b9')
 
+prepare() {
+  patch -d $pkgname-$pkgver -p1 < leveldb-unbundle-gtest-benchmark.patch # Unbundle GTest and benchmark
+}
+
 build() {
-  mkdir "$pkgname-$pkgver/build"
-  cd "$pkgname-$pkgver/build"
-
-  cmake \
+  cmake -B build -S $pkgname-$pkgver \
     -DCMAKE_INSTALL_PREFIX=/usr \
-    -DCMAKE_INSTALL_LIBDIR=lib \
-    -DCMAKE_BUILD_TYPE=Release \
-    -DBUILD_SHARED_LIBS=1 \
-    ..
-
-  make
+    -DBUILD_SHARED_LIBS=1
+  cmake --build build
 }
 
 check() {
-  make -C "$pkgname-$pkgver/build" test
+  cmake --build build --target test
 }
 
 package() {
-  cd "$pkgname-$pkgver"
+  DESTDIR="$pkgdir" cmake --install build
 
-  make -C build DESTDIR="$pkgdir" install
-
   # documentation
-  install -dm755 "$pkgdir"/usr/share/doc/"$pkgname"
-  cp -dr --no-preserve=ownership doc/* "$pkgdir/usr/share/doc/$pkgname"
+  install -dm755 "$pkgdir"/usr/share/doc/$pkgname
+  cp -dr --no-preserve=ownership $pkgname-$pkgver/doc/* "$pkgdir"/usr/share/doc/$pkgname
 
   # license
-  install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+  install -Dm644 $pkgname-$pkgver/LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname
 }

Added: leveldb-unbundle-gtest-benchmark.patch
===================================================================
--- leveldb-unbundle-gtest-benchmark.patch	                        (rev 0)
+++ leveldb-unbundle-gtest-benchmark.patch	2021-03-07 10:22:48 UTC (rev 885884)
@@ -0,0 +1,36 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f8285b8..352ba35 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -296,20 +296,12 @@ if(LEVELDB_BUILD_TESTS)
+   set(build_gmock ON)
+ 
+   # This project is tested using GoogleTest.
+-  add_subdirectory("third_party/googletest")
++  find_package(GTest)
+ 
+   # This project uses Google benchmark for benchmarking.
+   set(BENCHMARK_ENABLE_TESTING OFF CACHE BOOL "" FORCE)
+   set(BENCHMARK_ENABLE_EXCEPTIONS OFF CACHE BOOL "" FORCE)
+-  add_subdirectory("third_party/benchmark")
+-
+-  # GoogleTest triggers a missing field initializers warning.
+-  if(LEVELDB_HAVE_NO_MISSING_FIELD_INITIALIZERS)
+-    set_property(TARGET gtest
+-        APPEND PROPERTY COMPILE_OPTIONS -Wno-missing-field-initializers)
+-    set_property(TARGET gmock
+-        APPEND PROPERTY COMPILE_OPTIONS -Wno-missing-field-initializers)
+-  endif(LEVELDB_HAVE_NO_MISSING_FIELD_INITIALIZERS)
++  find_package(benchmark)
+ 
+   function(leveldb_test test_file)
+     get_filename_component(test_target_name "${test_file}" NAME_WE)
+@@ -400,7 +392,7 @@ if(LEVELDB_BUILD_BENCHMARKS)
+ 
+         "${bench_file}"
+     )
+-    target_link_libraries("${bench_target_name}" leveldb gmock gtest)
++    target_link_libraries("${bench_target_name}" leveldb GTest::gtest)
+     target_compile_definitions("${bench_target_name}"
+       PRIVATE
+         ${LEVELDB_PLATFORM_NAME}=1



More information about the arch-commits mailing list