]> git.pld-linux.org Git - packages/php-pecl-redis.git/blame - php-redis.spec
up to 5.1.0, php5 support is removed; enable redis-zstd
[packages/php-pecl-redis.git] / php-redis.spec
CommitLineData
2b82b6de
ER
1# TODO
2# - use external igbinary and make it's dependency optional
b91beefc
ER
3#
4# Conditional build:
303e815d 5%bcond_without phpdoc # build phpdoc package
24c6c494 6%bcond_with tests # build without tests
b91beefc 7
303e815d
ER
8# build "phpdoc" only for 7.3 version on pld builders
9%if 0%{?_pld_builder:1} && "%{?php_suffix}" != "73"
10%undefine with_phpdoc
11%endif
12
67fa4b41 13%define php_name php%{?php_suffix}
48db7d63
ER
14%define modname redis
15Summary: %{modname} A PHP extension for Redis
67fa4b41 16Name: %{php_name}-%{modname}
07584202 17Version: 5.1.0
f2c23d87 18Release: 1
48db7d63
ER
19License: PHP 3.01
20Group: Development/Languages/PHP
7345c0d0 21Source0: https://github.com/phpredis/phpredis/tarball/%{version}/%{modname}-%{version}.tar.gz
07584202 22# Source0-md5: 1a175f0351a2fab4f495a935c20fb239
7345c0d0
ER
23Source1: https://github.com/ukko/phpredis-phpdoc/archive/9ec1795bcd45ec83a19b46cf9a8b78b4e4d7ac80/%{modname}-phpdoc.tar.gz
24# Source1-md5: eaba2e5fad040e2f4526374c073ae5f7
25URL: https://github.com/phpredis/phpredis
7345c0d0 26BuildRequires: %{php_name}-cli
07584202 27BuildRequires: %{php_name}-devel >= 4:7.0
c61b27e4
AM
28BuildRequires: %{php_name}-pcre
29BuildRequires: %{php_name}-session
30BuildRequires: %{php_name}-simplexml
07584202 31BuildRequires: zstd-devel >= 1.3.0
a56ffbc5 32%if %{with tests}
24c6c494
ER
33BuildRequires: %{php_name}-pecl-igbinary
34BuildRequires: %{php_name}-zlib
c61b27e4 35%endif
48db7d63
ER
36BuildRequires: rpmbuild(macros) >= 1.519
37%{?requires_php_extension}
67fa4b41 38Requires: %{php_name}-session
54d79b38 39Provides: php(%{modname}) = %{version}
e15e2353 40Obsoletes: php-redis < 2.2.5-1
48db7d63
ER
41BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
42
43%description
44The phpredis extension provides an API for communicating with the
45Redis key-value store.
46
47This extension also provides session support.
48
303e815d
ER
49%package -n php-redis-phpdoc
50Summary: @phpdoc extension PHP for IDE autocomplete
51Group: Documentation
52URL: https://github.com/ukko/phpredis-phpdoc
53Requires: php-dirs
54BuildArch: noarch
55
56%description -n php-redis-phpdoc
57@phpdoc extension PHP for IDE autocomplete.
58
48db7d63 59%prep
2b82b6de 60%setup -qc -a1
bc808e49 61mv phpredis-phpredis-*/* .
7345c0d0 62mv phpredis-phpdoc-* phpdoc
48db7d63
ER
63
64%build
65phpize
07584202
ER
66%configure \
67 --enable-redis-zstd
48db7d63
ER
68%{__make}
69
24c6c494
ER
70export TEST_PHP_EXECUTABLE="%{__php}"
71export TEST_PHP_ARGS=" -n \
b91beefc 72 -dextension_dir=modules \
fd0294ec 73 -dextension=%{php_extensiondir}/pcre.so \
b91beefc 74 -dextension=%{php_extensiondir}/spl.so \
fd0294ec 75 -dextension=%{php_extensiondir}/simplexml.so \
b91beefc
ER
76 -dextension=%{php_extensiondir}/session.so \
77 -dextension=%{modname}.so \
24c6c494
ER
78"
79
80# simple module load test
81$TEST_PHP_EXECUTABLE $TEST_PHP_ARGS -m > modules.log
b91beefc 82grep %{modname} modules.log
b91beefc 83
24c6c494
ER
84%if %{with tests}
85TEST_PHP_ARGS="
86 $TEST_PHP_ARGS
87 -dextension=%{php_extensiondir}/zlib.so \
88"
89
90# Run tests for Redis class (note this is the default)
91$TEST_PHP_EXECUTABLE $TEST_PHP_ARGS tests/TestRedis.php --class Redis
92
93# Run tests for RedisArray class
94tests/mkring.sh start
95$TEST_PHP_EXECUTABLE $TEST_PHP_ARGS tests/TestRedis.php --class RedisArray
96tests/mkring.sh stop
97
98# Run tests for the RedisCluster class
99tests/make-cluster.sh start
100$TEST_PHP_EXECUTABLE $TEST_PHP_ARGS tests/TestRedis.php --class RedisCluster
101tests/make-cluster.sh stop
102%endif
103
48db7d63
ER
104%install
105rm -rf $RPM_BUILD_ROOT
48db7d63
ER
106%{__make} install \
107 EXTENSION_DIR=%{php_extensiondir} \
108 INSTALL_ROOT=$RPM_BUILD_ROOT
109
110install -d $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d
111cat <<'EOF' > $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/%{modname}.ini
112; Enable %{modname} extension module
113extension=%{modname}.so
114EOF
115
303e815d
ER
116install -d $RPM_BUILD_ROOT%{_examplesdir}/php-%{modname}-%{version}
117cp -a phpdoc/src/*.php $RPM_BUILD_ROOT%{_examplesdir}/php-%{modname}-%{version}
7345c0d0 118
48db7d63
ER
119%clean
120rm -rf $RPM_BUILD_ROOT
121
122%post
123%php_webserver_restart
124
125%postun
126if [ "$1" = 0 ]; then
127 %php_webserver_restart
128fi
129
130%files
131%defattr(644,root,root,755)
7345c0d0 132%doc CREDITS README.markdown
48db7d63
ER
133%config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/%{modname}.ini
134%attr(755,root,root) %{php_extensiondir}/%{modname}.so
303e815d
ER
135
136%if %{with phpdoc}
137%files -n php-redis-phpdoc
138%defattr(644,root,root,755)
139%{_examplesdir}/php-%{modname}-%{version}
140%endif
This page took 0.117943 seconds and 4 git commands to generate.