forked from ports/contrib
53 lines
1.8 KiB
Plaintext
53 lines
1.8 KiB
Plaintext
# Description: A fast and lightweight key/value database library
|
|
# URL: https://github.com/google/leveldb
|
|
# Maintainer: Danny Rawlins, crux at romster dot me
|
|
# Depends on: snappy cmake ninja
|
|
|
|
name=leveldb
|
|
version=1.23
|
|
release=1
|
|
source=(https://github.com/google/leveldb/archive/$version/$name-$version.tar.gz
|
|
0001-Allow-leveldbjni-build.patch
|
|
0002-Added-a-DB-SuspendCompations-and-DB-ResumeCompaction.patch
|
|
0003-allow-Get-calls-to-avoid-copies-into-std-string.patch
|
|
0004-bloom_test-failure-on-big-endian-archs.patch
|
|
0005-Restore-soname-versioning-with-CMake-build.patch
|
|
0006-revert-no-rtti.patch)
|
|
|
|
build() {
|
|
patch -d $name-$version -p1 -i $SRC/0001-Allow-leveldbjni-build.patch
|
|
patch -d $name-$version -p1 -i $SRC/0002-Added-a-DB-SuspendCompations-and-DB-ResumeCompaction.patch
|
|
patch -d $name-$version -p1 -i $SRC/0003-allow-Get-calls-to-avoid-copies-into-std-string.patch
|
|
patch -d $name-$version -p1 -i $SRC/0004-bloom_test-failure-on-big-endian-archs.patch
|
|
patch -d $name-$version -p1 -i $SRC/0005-Restore-soname-versioning-with-CMake-build.patch
|
|
patch -d $name-$version -p1 -i $SRC/0006-revert-no-rtti.patch
|
|
|
|
cmake -S $name-$version -B build -G Ninja \
|
|
-D CMAKE_INSTALL_PREFIX=/usr \
|
|
-D CMAKE_INSTALL_LIBDIR=lib \
|
|
-D CMAKE_BUILD_TYPE=Release \
|
|
-D CMAKE_CXX_FLAGS_RELEASE="$CXXFLAGS" \
|
|
-D CMAKE_C_FLAGS_RELEASE="$CFLAGS" \
|
|
-D BUILD_SHARED_LIBS=ON \
|
|
-DLEVELDB_BUILD_TESTS=OFF \
|
|
-DLEVELDB_BUILD_BENCHMARKS=OFF \
|
|
-Wno-dev
|
|
|
|
cmake --build build
|
|
DESTDIR=$PKG cmake --install build
|
|
|
|
cat <<- EOF > leveldb.pc
|
|
prefix=/usr
|
|
exec_prefix=\${prefix}
|
|
includedir=\${prefix}/include
|
|
libdir=\${exec_prefix}/lib
|
|
|
|
Name: ${name}
|
|
Description: A fast and lightweight key/value database library
|
|
Version: ${version}
|
|
Libs: -L\${libdir} -lleveldb
|
|
EOF
|
|
|
|
install -Dm644 leveldb.pc $PKG/usr/lib/pkgconfig/leveldb.pc
|
|
}
|