X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=rocksdb.spec;h=21a3ae7a84870a377811714cb1dca4d37a308089;hb=2592c03;hp=2e7e2cc12c38c68f923a7acb17a73164a103ed21;hpb=83ab867aa90b4407548635c4d375dd4e9a4a4460;p=packages%2Frocksdb.git diff --git a/rocksdb.spec b/rocksdb.spec index 2e7e2cc..21a3ae7 100644 --- a/rocksdb.spec +++ b/rocksdb.spec @@ -1,26 +1,42 @@ +# TODO: hdfs/java +# +# Conditional build: +%bcond_with tests # build with tests +%bcond_without static_libs # don't build static libraries + Summary: RocksDB: A Persistent Key-Value Store for Flash and RAM Storage Summary(pl.UTF-8): RocksDB - trwała baza danych klucz-wartość dla pamięci Flash i RAM Name: rocksdb -Version: 3.10.2 +Version: 4.9 Release: 1 License: BSD Group: Libraries +#Source0Download: https://github.com/facebook/rocksdb/releases Source0: https://github.com/facebook/rocksdb/archive/%{name}-%{version}.tar.gz -# Source0-md5: 6bdc1defb0a0d8e9e3cb11bfc6e795ef +# Source0-md5: e23ab7b76faaa1fc4c96b86732b16448 Patch0: %{name}-libdir.patch +Patch1: make-programs.patch +Patch2: %{name}-numa.patch +Patch3: %{name}-jemalloc.patch URL: http://rocksdb.org/ BuildRequires: bzip2-devel BuildRequires: gflags-devel +# libtcmalloc also supported, but jemalloc is preferred +BuildRequires: jemalloc-devel %ifarch i386 i486 BuildRequires: libatomic-devel %endif BuildRequires: libstdc++-devel >= 6:4.7 -BuildRequires: libtcmalloc-devel BuildRequires: lz4-devel +BuildRequires: numactl-devel BuildRequires: snappy-devel BuildRequires: zlib-devel +BuildRequires: zstd-devel BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) +# std::__once_call, std::__once_callable non-function symbols +%define skip_post_check_so librocksdb.so.* + %description RocksDB is a Persistent Key-Value Store for Flash and RAM Storage. @@ -55,24 +71,33 @@ Statyczna biblioteka RocksDB. %prep %setup -q -n %{name}-%{name}-%{version} %patch0 -p1 +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 %build %ifarch i386 i486 PLATFORM_LDFLAGS="-latomic" \ %endif -%{__make} all shared_lib \ +%{__make} shared_lib %{?with_static_libs:static_lib} programs %{?with_tests:check} \ AM_DEFAULT_VERBOSITY=1 \ CC="%{__cc}" \ CXX="%{__cxx}" \ OPT="%{rpmcflags} %{!?debug:-DNDEBUG}" \ + PORTABLE=1 \ + %{!?with_debug:DEBUG_LEVEL=0} WARNING_FLAGS="%{rpmcppflags} -Wall" %install rm -rf $RPM_BUILD_ROOT %{__make} install \ + %{!?with_debug:DEBUG_LEVEL=0} \ INSTALL_PATH=$RPM_BUILD_ROOT%{_prefix} \ - INSTALL_LIBDIR=$RPM_BUILD_ROOT%{_libdir} \ + INSTALL_LIBDIR=$RPM_BUILD_ROOT%{_libdir} + +# reduntant symlink +%{__rm} $RPM_BUILD_ROOT%{_libdir}/librocksdb.so.4 %clean rm -rf $RPM_BUILD_ROOT @@ -83,13 +108,17 @@ rm -rf $RPM_BUILD_ROOT %files %defattr(644,root,root,755) %doc HISTORY.md LICENSE PATENTS README.md ROCKSDB_LITE.md -%attr(755,root,root) %{_libdir}/librocksdb.so +%attr(755,root,root) %{_libdir}/librocksdb.so.*.*.* +%attr(755,root,root) %ghost %{_libdir}/librocksdb.so.4.9 %files devel %defattr(644,root,root,755) %doc doc/* +%attr(755,root,root) %{_libdir}/librocksdb.so %{_includedir}/rocksdb +%if %{with static_libs} %files static %defattr(644,root,root,755) %{_libdir}/librocksdb.a +%endif