* update leveldb to 1.23-4

This commit is contained in:
Alexander Baldeck 2024-12-17 14:36:14 +01:00
parent 71ed66056e
commit f971c94451
3 changed files with 46 additions and 41 deletions

View File

@ -1,5 +1,3 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f8285b8..352ba35 100644
--- a/CMakeLists.txt --- a/CMakeLists.txt
+++ b/CMakeLists.txt +++ b/CMakeLists.txt
@@ -296,20 +296,12 @@ if(LEVELDB_BUILD_TESTS) @@ -296,20 +296,12 @@ if(LEVELDB_BUILD_TESTS)

View File

@ -0,0 +1,13 @@
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -72,8 +72,8 @@ else(CMAKE_CXX_COMPILER_ID STREQUAL "MSV
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions")
# Disable RTTI.
- string(REGEX REPLACE "-frtti" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti")
+ #string(REGEX REPLACE "-frtti" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+ #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti")
endif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
# Test whether -Wthread-safety is available. See

View File

@ -1,59 +1,53 @@
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com> # POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
# Maintainer: Dave Reisner <dreisner@archlinux.org> # Maintainer : Daniel Bermond <dbermond@archlinux.org>
# Contributor: Dave Reisner <dreisner@archlinux.org>
# Contributor: feydaykyn <feydaykyn@yahoo.fr> # Contributor: feydaykyn <feydaykyn@yahoo.fr>
pkgname=leveldb pkgname=leveldb
pkgver=1.23 pkgver=1.23
pkgrel=3.1 pkgrel=4
pkgdesc="A fast and lightweight key/value database library" pkgdesc="A fast and lightweight key/value database library"
arch=(x86_64 powerpc64le powerpc) arch=(x86_64 powerpc64le powerpc64 powerpc riscv64)
url="https://github.com/google/leveldb" url='https://github.com/google/leveldb/'
license=('BSD') license=('BSD-3-Clause')
depends=('snappy') depends=('snappy')
makedepends=('cmake') makedepends=('cmake' 'gmock' 'benchmark')
checkdepends=('gmock' 'benchmark') source=("https://github.com/google/leveldb/archive/${pkgver}/${pkgname}-${pkgver}.tar.gz"
source=("$pkgname-$pkgver.tar.gz::https://github.com/google/leveldb/archive/$pkgver.tar.gz" '010-leveldb-unbundle-gtest-and-benchmark.patch'
leveldb-unbundle-gtest-benchmark.patch '020-leveldb-do-not-disable-rtti.patch')
leveldb-1.23-remove-benchmark-dep.patch)
sha256sums=('9a37f8a6174f09bd622bc723b55881dc541cd50747cbd08831c2a82d620f6d76' sha256sums=('9a37f8a6174f09bd622bc723b55881dc541cd50747cbd08831c2a82d620f6d76'
'4183dc3b5c17a0cb5fb66ada179b9bd2b43e997d3a9c854d19cf892ea6e524b9' '5625cd79df19ef4444a05a222b51be20c91da28d15389b929c6d5475f5fabbd1'
'c718da146ae57fabb541cc85cbf46a6acbf5a9e048a04aed5f1ed4165c2add31') '2046e9c93ce1df09715b432d7205dbdd7036049a079663d5c973a7d67eaab02d')
prepare() { prepare() {
patch -d $pkgname-$pkgver -p1 < leveldb-1.23-remove-benchmark-dep.patch patch -d "${pkgname}-${pkgver}" -Np1 -i "${srcdir}/010-leveldb-unbundle-gtest-and-benchmark.patch"
patch -d $pkgname-$pkgver -p1 < leveldb-unbundle-gtest-benchmark.patch # Unbundle GTest and benchmark
sed -e '/fno-rtti/d' -i $pkgname-$pkgver/CMakeLists.txt # Don't disable RTTI, needed for ceph # don't disable RTTI, needed for ceph
patch -d "${pkgname}-${pkgver}" -Np1 -i "${srcdir}/020-leveldb-do-not-disable-rtti.patch"
} }
build() { build() {
case "${CARCH}" in cmake -B build -S "${pkgname}-${pkgver}" \
powerpc*|riscv64) -G 'Unix Makefiles' \
_cmake_options=(-DLEVELDB_BUILD_BENCHMARKS=OFF -DLEVELDB_BUILD_TESTS=OFF) -DCMAKE_BUILD_TYPE:STRING='None' \
;; -DCMAKE_INSTALL_PREFIX:PATH='/usr' \
esac -DCMAKE_CXX_STANDARD:STRING='17' \
-DBUILD_SHARED_LIBS:BOOL='1' \
cmake -B build -S $pkgname-$pkgver \ -Wno-dev
-DCMAKE_INSTALL_PREFIX=/usr \ cmake --build build
-DBUILD_SHARED_LIBS=1 ${_cmake_options[@]}
cmake --build build
} }
check() { check() {
case "${CARCH}" in ctest --test-dir build --output-on-failure
powerpc*|riscv64) ;;
*)
cmake --build build --target test
;;
esac
} }
package() { package() {
DESTDIR="$pkgdir" cmake --install build DESTDIR="$pkgdir" cmake --install build
# documentation # documentation
install -dm755 "$pkgdir"/usr/share/doc/$pkgname install -d -m755 "${pkgdir}/usr/share/doc/${pkgname}"
cp -dr --no-preserve=ownership $pkgname-$pkgver/doc/* "$pkgdir"/usr/share/doc/$pkgname cp -dr --no-preserve='ownership' "${pkgname}-${pkgver}/doc"/* "${pkgdir}/usr/share/doc/${pkgname}"
# license # license
install -Dm644 $pkgname-$pkgver/LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname install -D -m644 "${pkgname}-${pkgver}/LICENSE" -t "${pkgdir}/usr/share/licenses/${pkgname}"
} }