summaryrefslogtreecommitdiffstats
path: root/redis-timeseries.spec
blob: aa3eb1534f8245af0e4e60a0dc3a99e0d95cb255 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
# remirepo/fedora spec file for redis-timeseries
#
# SPDX-FileCopyrightText:  Copyright 2025 Remi Collet
# SPDX-License-Identifier: CECILL-2.1
# http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
#
# Please, preserve the changelog entries
#

%global cfgname          timeseries.conf
%global libname          redistimeseries.so
# Github forge
%global gh_vend          RedisTimeSeries
%global gh_proj          RedisTimeSeries
%global forgeurl         https://github.com/%{gh_vend}/%{gh_proj}
#global commit           afe5de4ce52bb2b80af565a6f297bf330a65d0d8
%global tag              v%{version}
# for EL-8 to avoid TAG usage
%global archivename      %{gh_proj}-%{version}

Name:              redis-timeseries
Version:           8.2.0
Release:           1%{?dist}
Summary:           Time series as native data type
# Starting with Redis 8, RedisTimeSeries is licensed under your choice of:
# (i) Redis Source Available License 2.0 (RSALv2);
# (ii) the Server Side Public License v1 (SSPLv1); or
# (iii) the GNU Affero General Public License version 3 (AGPLv3). 
License:           AGPL-3.0-only
URL:               %{forgeurl}
Source0:           %{name}-%{version}.tgz
# get full git snapshot with submodules
Source1:           makesrc.sh

BuildRequires:     redis-devel >= 8.2
BuildRequires:     make
BuildRequires:     cmake
BuildRequires:     automake
BuildRequires:     autoconf
BuildRequires:     libtool
BuildRequires:     gcc
BuildRequires:     gcc-c++
BuildRequires:     python3
BuildRequires:     python3-pip
BuildRequires:     openssl-devel
BuildRequires:     jq

Provides:          bundled(LibMR)
Provides:          bundled(hiredis)
Provides:          bundled(libevent)
Provides:          bundled(RedisModulesSDK)
Provides:          bundled(cpu_features)
Provides:          bundled(fast_double_parser)
Provides:          bundled(readies)

Requires:          redis(modules_abi)%{?_isa} = %{redis_modules_abi}
Requires:          redis >= 8.2
Supplements:       redis


%description
RedisTimeSeries can hold multiple time series. Each time series is accessible
via a single Redis key (similar to any other Redis data structure).


%prep
%setup -q -n %{gh_proj}-%{version}

: Configuration file
cat << EOF | tee %{cfgname}
# %{gh_proj}
loadmodule %{redis_modules_dir}/%{libname}
EOF



%build
%global make_flags	 DEBUG="" VERBOSE=1 LDFLAGS="%{?__global_ldflags}" CFLAGS+="%{optflags} -fPIC"
make %{?_smp_mflags} %{make_flags} build


%install
install -Dpm755 bin/linux-*-release/%{libname} %{buildroot}%{redis_modules_dir}/%{libname}
install -Dpm640 %{cfgname}                     %{buildroot}%{redis_modules_cfg}/%{cfgname}


%files
%license LICENSE.txt
%license licenses/AGPLv3.txt
%doc *.md
%attr(0640, redis, root) %config(noreplace) %{redis_modules_cfg}/%{cfgname}
%{redis_modules_dir}/%{libname}


%changelog
* Mon Aug  4 2025 Remi Collet <remi@remirepo.net> - 8.2.0-1
- update to 8.2.0

* Thu Jul 24 2025 Remi Collet <remi@remirepo.net> - 8.0.1-1
- initial package