You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
316 lines
9.0 KiB
316 lines
9.0 KiB
6 years ago
|
# Fedora spec file for php-pecl-redis
|
||
|
#
|
||
|
# Copyright (c) 2012-2018 Remi Collet
|
||
|
# License: CC-BY-SA
|
||
|
# http://creativecommons.org/licenses/by-sa/4.0/
|
||
|
#
|
||
|
# Please, preserve the changelog entries
|
||
|
#
|
||
|
%global pecl_name redis
|
||
|
%global with_zts 0%{?__ztsphp:1}
|
||
|
%global with_tests 0%{!?_without_tests:1}
|
||
|
%global ini_name 50-%{pecl_name}.ini
|
||
|
|
||
|
Summary: Extension for communicating with the Redis key-value store
|
||
|
Name: php-pecl-redis
|
||
|
Version: 3.1.6
|
||
|
Release: 1%{?dist}
|
||
|
License: PHP
|
||
|
Group: Development/Languages
|
||
|
URL: http://pecl.php.net/package/redis
|
||
|
Source0: http://pecl.php.net/get/%{pecl_name}-%{version}.tgz
|
||
|
|
||
|
BuildRequires: php-devel
|
||
|
#BuildRequires: php-pear
|
||
|
BuildRequires: php-pecl-igbinary-devel
|
||
|
# to run Test suite
|
||
|
%if %{with_tests}
|
||
|
BuildRequires: redis >= 2.6
|
||
|
%endif
|
||
|
|
||
|
Requires: php(zend-abi) = %{php_zend_api}
|
||
|
Requires: php(api) = %{php_core_api}
|
||
|
Requires: php-igbinary%{?_isa}
|
||
|
|
||
|
Obsoletes: php-redis < %{version}
|
||
|
Provides: php-redis = %{version}-%{release}
|
||
|
Provides: php-redis%{?_isa} = %{version}-%{release}
|
||
|
Provides: php-pecl(%{pecl_name}) = %{version}
|
||
|
Provides: php-pecl(%{pecl_name})%{?_isa} = %{version}
|
||
|
|
||
|
|
||
|
%description
|
||
|
The phpredis extension provides an API for communicating
|
||
|
with the Redis key-value store.
|
||
|
|
||
|
This Redis client implements most of the latest Redis API.
|
||
|
As method only only works when also implemented on the server side,
|
||
|
some doesn't work with an old redis server version.
|
||
|
|
||
|
|
||
|
%prep
|
||
|
%setup -q -c
|
||
|
|
||
|
# Don't install/register tests
|
||
|
sed -e 's/role="test"/role="src"/' \
|
||
|
-e '/COPYING/s/role="doc"/role="src"/' \
|
||
|
-i package.xml
|
||
|
|
||
|
# rename source folder
|
||
|
mv %{pecl_name}-%{version} NTS
|
||
|
|
||
|
cd NTS
|
||
|
|
||
|
# Sanity check, really often broken
|
||
|
extver=$(sed -n '/#define PHP_REDIS_VERSION/{s/.* "//;s/".*$//;p}' php_redis.h)
|
||
|
if test "x${extver}" != "x%{version}"; then
|
||
|
: Error: Upstream extension version is ${extver}, expecting %{version}.
|
||
|
exit 1
|
||
|
fi
|
||
|
cd ..
|
||
|
|
||
|
%if %{with_zts}
|
||
|
# duplicate for ZTS build
|
||
|
cp -pr NTS ZTS
|
||
|
%endif
|
||
|
|
||
|
# Drop in the bit of configuration
|
||
|
cat > %{ini_name} << 'EOF'
|
||
|
; Enable %{pecl_name} extension module
|
||
|
extension = %{pecl_name}.so
|
||
|
|
||
|
; phpredis can be used to store PHP sessions.
|
||
|
; To do this, uncomment and configure below
|
||
|
|
||
|
; RPM note : save_handler and save_path are defined
|
||
|
; for mod_php, in /etc/httpd/conf.d/php.conf
|
||
|
; for php-fpm, in %{_sysconfdir}/php-fpm.d/*conf
|
||
|
|
||
|
;session.save_handler = %{pecl_name}
|
||
|
;session.save_path = "tcp://host1:6379?weight=1, tcp://host2:6379?weight=2&timeout=2.5, tcp://host3:6379?weight=2"
|
||
|
|
||
|
; Configuration
|
||
|
;redis.arrays.names = ''
|
||
|
;redis.arrays.hosts = ''
|
||
|
;redis.arrays.previous = ''
|
||
|
;redis.arrays.functions = ''
|
||
|
;redis.arrays.index = ''
|
||
|
;redis.arrays.autorehash = ''
|
||
|
;redis.clusters.seeds = ''
|
||
|
;redis.clusters.timeout = ''
|
||
|
;redis.clusters.read_timeout = ''
|
||
|
EOF
|
||
|
|
||
|
|
||
|
%build
|
||
|
cd NTS
|
||
|
%{_bindir}/phpize
|
||
|
%configure \
|
||
|
--enable-redis \
|
||
|
--enable-redis-session \
|
||
|
--enable-redis-igbinary \
|
||
|
--with-php-config=%{_bindir}/php-config
|
||
|
make %{?_smp_mflags}
|
||
|
|
||
|
%if %{with_zts}
|
||
|
cd ../ZTS
|
||
|
%{_bindir}/zts-phpize
|
||
|
%configure \
|
||
|
--enable-redis \
|
||
|
--enable-redis-session \
|
||
|
--enable-redis-igbinary \
|
||
|
--with-php-config=%{_bindir}/zts-php-config
|
||
|
make %{?_smp_mflags}
|
||
|
%endif
|
||
|
|
||
|
|
||
|
%install
|
||
|
# Install the NTS stuff
|
||
|
make -C NTS install INSTALL_ROOT=%{buildroot}
|
||
|
install -D -m 644 %{ini_name} %{buildroot}%{php_inidir}/%{ini_name}
|
||
|
|
||
|
%if %{with_zts}
|
||
|
# Install the ZTS stuff
|
||
|
make -C ZTS install INSTALL_ROOT=%{buildroot}
|
||
|
install -D -m 644 %{ini_name} %{buildroot}%{php_ztsinidir}/%{ini_name}
|
||
|
%endif
|
||
|
|
||
|
# Install the package XML file
|
||
|
install -D -m 644 package.xml %{buildroot}%{pecl_xmldir}/%{name}.xml
|
||
|
|
||
|
# Documentation
|
||
|
cd NTS
|
||
|
#for i in $(grep 'role="doc"' ../package.xml | sed -e 's/^.*name="//;s/".*$//')
|
||
|
#do install -Dpm 644 $i %{buildroot}%{pecl_docdir}/%{pecl_name}/$i
|
||
|
#done
|
||
|
|
||
|
|
||
|
%check
|
||
|
# simple module load test
|
||
|
%{__php} --no-php-ini \
|
||
|
--define extension=igbinary.so \
|
||
|
--define extension=%{buildroot}%{php_extdir}/%{pecl_name}.so \
|
||
|
--modules | grep %{pecl_name}
|
||
|
|
||
|
%if %{with_zts}
|
||
|
%{__ztsphp} --no-php-ini \
|
||
|
--define extension=igbinary.so \
|
||
|
--define extension=%{buildroot}%{php_ztsextdir}/%{pecl_name}.so \
|
||
|
--modules | grep %{pecl_name}
|
||
|
%endif
|
||
|
|
||
|
%if %{with_tests}
|
||
|
cd NTS/tests
|
||
|
|
||
|
# Launch redis server
|
||
|
mkdir -p data
|
||
|
pidfile=$PWD/redis.pid
|
||
|
port=$(%{__php} -r 'echo 9000 + PHP_MAJOR_VERSION*100 + PHP_MINOR_VERSION*10 + PHP_INT_SIZE;')
|
||
|
%{_bindir}/redis-server \
|
||
|
--bind 127.0.0.1 \
|
||
|
--port $port \
|
||
|
--daemonize yes \
|
||
|
--logfile $PWD/redis.log \
|
||
|
--dir $PWD/data \
|
||
|
--pidfile $pidfile
|
||
|
|
||
|
sed -e "s/6379/$port/" -i RedisTest.php
|
||
|
|
||
|
# Run the test Suite
|
||
|
ret=0
|
||
|
%{__php} --no-php-ini \
|
||
|
--define extension=igbinary.so \
|
||
|
--define extension=%{buildroot}%{php_extdir}/%{pecl_name}.so \
|
||
|
TestRedis.php || ret=1
|
||
|
|
||
|
# Cleanup
|
||
|
if [ -f $pidfile ]; then
|
||
|
%{_bindir}/redis-cli -p $port shutdown
|
||
|
fi
|
||
|
|
||
|
exit $ret
|
||
|
|
||
|
%else
|
||
|
: Upstream test suite disabled
|
||
|
%endif
|
||
|
|
||
|
|
||
|
%files
|
||
|
%license NTS/COPYING
|
||
|
#%doc %{pecl_docdir}/%{pecl_name}
|
||
|
%{pecl_xmldir}/%{name}.xml
|
||
|
|
||
|
%{php_extdir}/%{pecl_name}.so
|
||
|
%config(noreplace) %{php_inidir}/%{ini_name}
|
||
|
|
||
|
%if %{with_zts}
|
||
|
%{php_ztsextdir}/%{pecl_name}.so
|
||
|
%config(noreplace) %{php_ztsinidir}/%{ini_name}
|
||
|
%endif
|
||
|
|
||
|
|
||
|
%changelog
|
||
|
* Wed Jan 3 2018 Remi Collet <remi@remirepo.net> - 3.1.6-1
|
||
|
- Update to 3.1.6 (stable)
|
||
|
|
||
|
* Thu Dec 21 2017 Remi Collet <remi@remirepo.net> - 3.1.5-1
|
||
|
- Update to 3.1.5 (stable)
|
||
|
|
||
|
* Wed Sep 27 2017 Remi Collet <remi@remirepo.net> - 3.1.4-1
|
||
|
- Update to 3.1.4 (stable)
|
||
|
|
||
|
* Sat Mar 25 2017 Remi Collet <remi@remirepo.net> - 3.1.2-1
|
||
|
- Update to 3.1.2 (stable)
|
||
|
|
||
|
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.1.1-2
|
||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
||
|
|
||
|
* Wed Feb 1 2017 Remi Collet <remi@fedoraproject.org> - 3.1.1-1
|
||
|
- Update to 3.1.1 (stable)
|
||
|
- enable test suite
|
||
|
|
||
|
* Thu Dec 15 2016 Remi Collet <remi@fedoraproject.org> - 3.1.0-1
|
||
|
- Update to 3.1.0 (stable)
|
||
|
- open https://github.com/phpredis/phpredis/issues/1052 max version
|
||
|
- open https://github.com/phpredis/phpredis/issues/1053 segfault
|
||
|
- open https://github.com/phpredis/phpredis/issues/1054 warnings
|
||
|
- open https://github.com/phpredis/phpredis/issues/1055 reflection
|
||
|
- open https://github.com/phpredis/phpredis/issues/1056 32bits tests
|
||
|
|
||
|
* Mon Nov 14 2016 Remi Collet <remi@fedoraproject.org> - 3.0.0-2
|
||
|
- rebuild for https://fedoraproject.org/wiki/Changes/php71
|
||
|
|
||
|
* Mon Jun 27 2016 Remi Collet <remi@fedoraproject.org> - 3.0.0-1
|
||
|
- Update to 3.0.0 (stable)
|
||
|
|
||
|
* Thu Jun 9 2016 Remi Collet <remi@fedoraproject.org> - 2.2.8-1
|
||
|
- Update to 2.2.8 (stable)
|
||
|
- don't install/register tests
|
||
|
|
||
|
* Sat Feb 13 2016 Remi Collet <remi@fedoraproject.org> - 2.2.7-4
|
||
|
- drop scriptlets (replaced by file triggers in php-pear)
|
||
|
- cleanup
|
||
|
|
||
|
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.7-3
|
||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
||
|
|
||
|
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.7-2
|
||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
||
|
|
||
|
* Tue Mar 03 2015 Remi Collet <remi@fedoraproject.org> - 2.2.7-1
|
||
|
- Update to 2.2.7 (stable)
|
||
|
|
||
|
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.5-5
|
||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
||
|
|
||
|
* Thu Jun 19 2014 Remi Collet <rcollet@redhat.com> - 2.2.5-4
|
||
|
- rebuild for https://fedoraproject.org/wiki/Changes/Php56
|
||
|
|
||
|
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.5-3
|
||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
||
|
|
||
|
* Thu Apr 24 2014 Remi Collet <rcollet@redhat.com> - 2.2.5-2
|
||
|
- add numerical prefix to extension configuration file
|
||
|
- add comment about session configuration
|
||
|
- fix memory corruption with PHP 5.6
|
||
|
https://github.com/nicolasff/phpredis/pull/447
|
||
|
|
||
|
* Wed Mar 19 2014 Remi Collet <remi@fedoraproject.org> - 2.2.5-1
|
||
|
- Update to 2.2.5
|
||
|
|
||
|
* Thu Mar 13 2014 Remi Collet <remi@fedoraproject.org> - 2.2.4-2
|
||
|
- cleanups
|
||
|
- move doc in pecl_docdir
|
||
|
- run upstream tests only with --with tests option
|
||
|
|
||
|
* Mon Sep 09 2013 Remi Collet <remi@fedoraproject.org> - 2.2.4-1
|
||
|
- Update to 2.2.4
|
||
|
|
||
|
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.3-2
|
||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
|
||
|
|
||
|
* Tue Apr 30 2013 Remi Collet <remi@fedoraproject.org> - 2.2.3-1
|
||
|
- update to 2.2.3
|
||
|
- upstream moved to pecl, rename from php-redis to php-pecl-redis
|
||
|
|
||
|
* Tue Sep 11 2012 Remi Collet <remi@fedoraproject.org> - 2.2.2-5.git6f7087f
|
||
|
- more docs and improved description
|
||
|
|
||
|
* Sun Sep 2 2012 Remi Collet <remi@fedoraproject.org> - 2.2.2-4.git6f7087f
|
||
|
- latest snahot (without bundled igbinary)
|
||
|
- remove chmod (done upstream)
|
||
|
|
||
|
* Sat Sep 1 2012 Remi Collet <remi@fedoraproject.org> - 2.2.2-3.git5df5153
|
||
|
- run only test suite with redis > 2.4
|
||
|
|
||
|
* Fri Aug 31 2012 Remi Collet <remi@fedoraproject.org> - 2.2.2-2.git5df5153
|
||
|
- latest master
|
||
|
- run test suite
|
||
|
|
||
|
* Wed Aug 29 2012 Remi Collet <remi@fedoraproject.org> - 2.2.2-1
|
||
|
- update to 2.2.2
|
||
|
- enable ZTS build
|
||
|
|
||
|
* Tue Aug 28 2012 Remi Collet <remi@fedoraproject.org> - 2.2.1-1
|
||
|
- initial package
|