diff options
Diffstat (limited to 'redis.spec')
-rw-r--r-- | redis.spec | 143 |
1 files changed, 29 insertions, 114 deletions
@@ -15,37 +15,21 @@ # to use system libjemalloc %bcond_with jemalloc -%if 0%{?fedora} < 30 && 0%{?rhel} < 8 -%bcond_without redistrib -%else -%bcond_with redistrib -%endif - # Tests fail in mock, not in local build. %bcond_with tests -%global upstream_ver 7.2.8 - -# Commit IDs for the (unversioned) redis-doc repository -# https://fedoraproject.org/wiki/Packaging:SourceURL "Commit Revision" -# https://github.com/redis/redis-doc/commits/master -%global gh_owner redis -%global gh_project redis -%global doc_commit 3541d0e20cc4bb7873bdbf51a7717757b806577f -%global short_doc_commit %(c=%{doc_commit}; echo ${c:0:7}) - -# %%{_rpmmacrodir} not usable on EL-6 - EL-7 (without epel-rpms-macros) -%global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d) +%global upstream_ver 8.0.0 Name: redis Version: %{upstream_ver} Release: 1%{?dist} Summary: A persistent key-value database -# redis, hiredis: BSD-3-Clause +# redis: RSALv2 or SSPLv1 or AGPLv3 (only AGPLv3 is OSS) +# hiredis: BSD-3-Clause # hdrhistogram, jemalloc, lzf, linenoise: BSD-2-Clause -# lua: MIT +# lua, fast_float: MIT # fpconv: BSL-1.0 -License: BSD-3-Clause AND BSD-2-Clause AND MIT AND BSL-1.0 +License: AGPL-3.0-only AND BSD-3-Clause AND BSD-2-Clause AND MIT AND BSL-1.0 URL: http://redis.io #ource0: https://download.redis.io/releases/%%{name}-%%{upstream_ver}.tar.gz Source0: https://github.com/redis/redis/archive/refs/tags/%{version}.tar.gz @@ -54,23 +38,8 @@ Source2: %{name}-sentinel.service Source3: %{name}.service Source7: %{name}-limit-systemd Source9: macros.%{name} -Source10: https://github.com/%{gh_owner}/%{gh_project}-doc/archive/%{doc_commit}/%{name}-doc-%{short_doc_commit}.tar.gz - -# To refresh patches: -# tar xf redis-xxx.tar.gz && cd redis-xxx && git init && git add . && git commit -m "%%{version} baseline" -# git am %%{patches} -# Then refresh your patches -# git format-patch HEAD~<number of expected patches> -# Update configuration for Fedora -# https://github.com/redis/redis/pull/3491 - man pages -Patch0001: 0001-1st-man-pageis-for-redis-cli-redis-benchmark-redis-c.patch - BuildRequires: gcc -%if 0%{?rhel} == 7 -BuildRequires: devtoolset-8-toolchain -BuildRequires: devtoolset-8-libatomic-devel -%endif %if %{with jemalloc} BuildRequires: jemalloc-devel %else @@ -85,9 +54,8 @@ BuildRequires: pkgconfig(libsystemd) BuildRequires: systemd BuildRequires: openssl-devel >= 1.0.2 -%if %{without redistrib} -Obsoletes: redis-trib < %{version}-%{release} -%endif +Obsoletes: redis-trib < 8 +Obsoletes: redis-doc < 8 Requires: logrotate Requires(pre): shadow-utils @@ -95,17 +63,22 @@ Requires(post): systemd Requires(preun): systemd Requires(postun): systemd # from deps/hiredis/hiredis.h -Provides: bundled(hiredis) = 1.0.3 +Provides: bundled(hiredis) = 1.2.0 # from deps/lua/src/lua.h Provides: bundled(lua-libs) = 5.1.5 # from deps/linenoise/linenoise.h Provides: bundled(linenoise) = 1.0 +# unkown, see src/lzf.h Provides: bundled(lzf) # from deps/hdr_histogram/README.md Provides: bundled(hdr_histogram) = 0.11.0 +# from deps/fast_float/README.md +Provides: bundled(fast_float) = 6.1.4 # no version Provides: bundled(fpconv) +Conflicts: valkey-compat-redis + %global redis_modules_abi 1 %global redis_modules_dir %{_libdir}/%{name}/modules Provides: redis(modules_abi)%{?_isa} = %{redis_modules_abi} @@ -139,39 +112,15 @@ You can use Redis from most programming languages also. Summary: Development header for Redis module development # Header-Only Library (https://fedoraproject.org/wiki/Packaging:Guidelines) Provides: %{name}-static = %{version}-%{release} +Conflicts: valkey-compat-redis-devel %description devel Header file required for building loadable Redis modules. Detailed API documentation is available in the redis-doc package. -%package doc -Summary: Documentation for Redis including man pages -License: CC-BY-SA-4.0 -BuildArch: noarch - -# http://fedoraproject.org/wiki/Packaging:Conflicts "Splitting Packages" -Conflicts: redis < 4.0 - -%description doc -Manual pages and detailed documentation for many aspects of Redis use, -administration and development. - -%if %{with redistrib} -%package trib -Summary: Cluster management script for Redis -BuildArch: noarch -Requires: ruby -Requires: rubygem-redis - -%description trib -Redis cluster management utility providing cluster creation, node addition -and removal, status checks, resharding, rebalancing, and other operations. -%endif %prep -%setup -q -n %{name}-%{upstream_ver} -b 10 -mv ../%{name}-doc-%{doc_commit} doc -%patch -P0001 -p1 +%setup -q -n %{name}-%{upstream_ver} %if %{with jemalloc} rm -frv deps/jemalloc @@ -210,6 +159,7 @@ if test "$api" != "%{redis_modules_abi}"; then exit 1 fi +# not using BUILD_WITH_MODULES=yes which requires ONLINE build (git, rust, ...) %global malloc_flags MALLOC=jemalloc %global tls_flags BUILD_TLS=yes %global sysd_flags BUILD_WITH_SYSTEMD=yes @@ -218,20 +168,10 @@ fi %build -%if 0%{?rhel} == 7 -source /opt/rh/devtoolset-8/enable -g++ --version -%endif - make %{?_smp_mflags} %{make_flags} all %install -%if 0%{?rhel} == 7 -source /opt/rh/devtoolset-8/enable -g++ --version -%endif - make %{make_flags} install # Filesystem. @@ -267,27 +207,9 @@ install -pDm644 src/%{name}module.h %{buildroot}%{_includedir}/%{name}module.h install -pDm755 src/%{name}-trib.rb %{buildroot}%{_bindir}/%{name}-trib %endif -# Install man pages -man=$(dirname %{buildroot}%{_mandir}) -for page in man/man?/*; do - install -Dpm644 $page $man/$page -done -ln -s redis-server.1 %{buildroot}%{_mandir}/man1/redis-sentinel.1 -ln -s redis.conf.5 %{buildroot}%{_mandir}/man5/redis-sentinel.conf.5 - -# Install documentation and html pages -doc=$(echo %{buildroot}/%{_docdir}/%{name}) -for page in 00-RELEASENOTES BUGS MANIFESTO *.md; do - install -Dpm644 $page $doc/$page -done -for page in $(find doc -name \*.md | sed -e 's|.md$||g'); do - base=$(echo $page | sed -e 's|doc/||g') - install -Dpm644 $page.md $doc/$base.md -done - # Install rpm macros for redis modules -mkdir -p %{buildroot}%{macrosdir} -install -pDm644 %{S:9} %{buildroot}%{macrosdir}/macros.%{name} +mkdir -p %{buildroot}%{_rpmmacrodir} +install -pDm644 %{S:9} %{buildroot}%{_rpmmacrodir}/macros.%{name} %check %if %{with tests} @@ -356,8 +278,9 @@ fi %files -%{!?_licensedir:%global license %%doc} -%license COPYING +%doc 00-RELEASENOTES +%doc *.md +%license LICENSE.txt %license COPYRIGHT-lua %license COPYING-hiredis %license LICENSE-hdrhistogram @@ -377,12 +300,10 @@ fi %if %{with redistrib} %exclude %{_bindir}/%{name}-trib %endif -%exclude %{macrosdir} +%exclude %{_rpmmacrodir} %exclude %{_includedir} %exclude %{_docdir}/%{name}/* %{_bindir}/%{name}-* -%{_mandir}/man1/%{name}* -%{_mandir}/man5/%{name}* %{_unitdir}/%{name}.service %{_unitdir}/%{name}-sentinel.service %dir %{_sysconfdir}/systemd/system/%{name}.service.d @@ -392,23 +313,17 @@ fi %dir %attr(0755, redis, redis) %ghost %{_localstatedir}/run/%{name} %files devel -%license COPYING +%license LICENSE.txt %{_includedir}/%{name}module.h -%{macrosdir}/* - -%files doc -%license doc/LICENSE -%docdir %{_docdir}/%{name} -%{_docdir}/%{name} - -%if %{with redistrib} -%files trib -%license COPYING -%{_bindir}/%{name}-trib -%endif +%{_rpmmacrodir}/* %changelog +* Mon May 5 2025 Remi Collet <remi@remirepo.net> - 8.0.0-1 +- Redis 8.0 GA (v8.0.0) Released Fri 2 May 2025 12:00:00 IST +- drop doc sub-package +- drop man pages + * Thu Apr 24 2025 Remi Collet <remi@remirepo.net> - 7.2.8-1 - Redis 7.2.8 Released Wed 23 Apr 2025 12:00:00 IST - Update urgency: `SECURITY`: CVE-2025-21605 |