[packages/leveldb] - updated to 1.21 - added soname patch to fix missing soname after build system change (cmake now)
qboosh
qboosh at pld-linux.org
Sat Mar 30 22:15:24 CET 2019
commit 5afc60f7bc6a4c1532f19c959c5d20de2d1e9f4f
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Sat Mar 30 22:21:20 2019 +0100
- updated to 1.21
- added soname patch to fix missing soname after build system change (cmake now)
leveldb-soname.patch | 10 ++++++++++
leveldb.spec | 55 +++++++++++++++++++++++++++++++++++-----------------
2 files changed, 47 insertions(+), 18 deletions(-)
---
diff --git a/leveldb.spec b/leveldb.spec
index b00df6a..326ca2f 100644
--- a/leveldb.spec
+++ b/leveldb.spec
@@ -1,24 +1,26 @@
#
# Conditional build:
-%bcond_without tcmalloc # don't use tcmalloc
-%bcond_without tests # build without tests
+%bcond_without static_libs # static library
+%bcond_without tcmalloc # tcmalloc usage
+%bcond_without tests # unit tests
%ifarch x32
%undefine with_tcmalloc
%endif
-
Summary: LevelDB - key-value store library
Summary(pl.UTF-8): LevelDB - biblioteka bazy danych klucz-wartość
Name: leveldb
-Version: 1.20
+Version: 1.21
Release: 1
License: BSD
Group: Libraries
#Source0Download: https://github.com/google/leveldb/releases
-Source0: https://github.com/google/leveldb/archive/v%{version}/%{name}-%{version}.tar.gz
-# Source0-md5: 298b5bddf12c675d6345784261302252
+Source0: https://github.com/google/leveldb/archive/%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: 11609dcd141584a784d879d3879f36b7
+Patch0: %{name}-soname.patch
URL: https://github.com/google/leveldb
-BuildRequires: libstdc++-devel
+BuildRequires: cmake >= 3.9
+BuildRequires: libstdc++-devel >= 6:4.7
%{?with_tcmalloc:BuildRequires: libtcmalloc-devel}
BuildRequires: snappy-devel
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
@@ -37,7 +39,7 @@ Summary: Header files for LevelDB library
Summary(pl.UTF-8): Pliki nagłówkowe biblioteki LevelDB
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
-Requires: libstdc++-devel
+Requires: libstdc++-devel >= 6:4.7
%{?with_tcmalloc:Requires: libtcmalloc-devel}
Requires: snappy-devel
@@ -61,25 +63,39 @@ Statyczna biblioteka LevelDB.
%prep
%setup -q
+%patch0 -p1
%build
-%{__make} \
- CXX="%{__cxx}" \
- OPT="%{rpmcflags} %{!?debug:-DNDEBUG}"
+%if %{with static_libs}
+install -d build-static
+cd build-static
+%cmake .. \
+ -DBUILD_SHARED_LIBS:BOOL=OFF
+
+%{__make}
+cd ..
+%endif
+
+install -d build
+cd build
+%cmake ..
+
+%{__make}
%if %{with tests}
-%{__make} check \
- CXX="%{__cxx}" \
- OPT="%{rpmcflags} %{!?debug:-DNDEBUG}"
+ctest
%endif
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_libdir},%{_includedir}}
-cp -dp out-shared/libleveldb.so* $RPM_BUILD_ROOT%{_libdir}
-cp -p out-static/libleveldb.a $RPM_BUILD_ROOT%{_libdir}
-cp -a include/leveldb $RPM_BUILD_ROOT%{_includedir}
+%if %{with static_libs}
+%{__make} -C build-static install \
+ DESTDIR=$RPM_BUILD_ROOT
+%endif
+
+%{__make} -C build install \
+ DESTDIR=$RPM_BUILD_ROOT
%clean
rm -rf $RPM_BUILD_ROOT
@@ -98,7 +114,10 @@ rm -rf $RPM_BUILD_ROOT
%doc doc/*
%attr(755,root,root) %{_libdir}/libleveldb.so
%{_includedir}/leveldb
+%{_libdir}/cmake/leveldb
+%if %{with static_libs}
%files static
%defattr(644,root,root,755)
%{_libdir}/libleveldb.a
+%endif
diff --git a/leveldb-soname.patch b/leveldb-soname.patch
new file mode 100644
index 0000000..fc5af67
--- /dev/null
+++ b/leveldb-soname.patch
@@ -0,0 +1,10 @@
+--- leveldb-1.21/CMakeLists.txt.orig 2019-03-29 22:37:39.000000000 +0100
++++ leveldb-1.21/CMakeLists.txt 2019-03-30 21:39:02.866319971 +0100
+@@ -95,6 +95,7 @@
+ endif(BUILD_SHARED_LIBS)
+
+ add_library(leveldb "")
++set_target_properties(leveldb PROPERTIES SOVERSION 1 VERSION 1.21)
+ target_sources(leveldb
+ PRIVATE
+ "${PROJECT_BINARY_DIR}/${LEVELDB_PORT_CONFIG_DIR}/port_config.h"
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/leveldb.git/commitdiff/5afc60f7bc6a4c1532f19c959c5d20de2d1e9f4f
More information about the pld-cvs-commit
mailing list