From 8cf83c01b85aaaa674af58218ec007aa83e2fdb4 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Mon, 28 Nov 2016 17:30:36 +0100 Subject: php-phpiredis: package approved, switch the spec --- php-phpiredis-dev.spec | 245 ------------------------------------------------- php-phpiredis.spec | 77 +++++++++++++--- 2 files changed, 64 insertions(+), 258 deletions(-) delete mode 100644 php-phpiredis-dev.spec diff --git a/php-phpiredis-dev.spec b/php-phpiredis-dev.spec deleted file mode 100644 index b82d7d7..0000000 --- a/php-phpiredis-dev.spec +++ /dev/null @@ -1,245 +0,0 @@ -# remirepo spec file for php-phpiredis -# -# Copyright (c) 2016 Remi Collet -# License: CC-BY-SA -# http://creativecommons.org/licenses/by-sa/4.0/ -# -# Please, preserve the changelog entries -# -%if 0%{?scl:1} -%global sub_prefix %{scl_prefix} -%scl_package php-phpiredis -%endif - -%global gh_commit 981d455034a48bb19db39c578e9c16d889289b99 -%global gh_short %(c=%{gh_commit}; echo ${c:0:7}) -%global gh_owner nrk -%global gh_project phpiredis -#global gh_date 20160715 -#global prever RC1 - -%global pecl_name phpiredis -%global with_zts 0%{!?_without_zts:%{?__ztsphp:1}} -%if "%{php_version}" < "5.6" -%global ini_name %{pecl_name}.ini -%else -%global ini_name 40-%{pecl_name}.ini -%endif -%global with_tests 0%{!?_without_tests:1} - -Name: %{?sub_prefix}php-%{pecl_name} -Version: 1.0.0 -%if 0%{?gh_date} -Release: 0.2.%{gh_date}git%{gh_short}%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}} -%else -Release: 1%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}} -%endif - -Summary: Client extension for Redis - -Group: Development/Languages -License: BSD -URL: https://github.com/%{gh_owner}/%{gh_project} -Source0: https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{pecl_name}-%{version}-%{gh_short}.tar.gz - -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -BuildRequires: %{?scl_prefix}php-devel -BuildRequires: %{?scl_prefix}php-pear -# ensure we use hiredis-last when exists -BuildRequires: hiredis-devel >= 0.13.3 -%if %{with_tests} -BuildRequires: redis -%endif - -Requires: %{?scl_prefix}php(zend-abi) = %{php_zend_api} -Requires: %{?scl_prefix}php(api) = %{php_core_api} -%{?_sclreq:Requires: %{?scl_prefix}runtime%{?_sclreq}%{?_isa}} - -%if "%{?scl_prefix}" != "%{?sub_prefix}" -Provides: %{?scl_prefix}php-%{pecl_name} = %{version}-%{release} -Provides: %{?scl_prefix}php-%{pecl_name}%{?_isa} = %{version}-%{release} -%endif - -%if "%{?vendor}" == "Remi Collet" && 0%{!?scl:1} -# Other third party repo stuff -%if "%{php_version}" > "5.5" -Obsoletes: php55u-%{pecl_name} <= %{version} -Obsoletes: php55u-pecl-%{pecl_name} <= %{version} -Obsoletes: php55w-%{pecl_name} <= %{version} -Obsoletes: php55w-pecl-%{pecl_name} <= %{version} -%endif -%if "%{php_version}" > "5.6" -Obsoletes: php56u-%{pecl_name} <= %{version} -Obsoletes: php56u-pecl-%{pecl_name} <= %{version} -Obsoletes: php56w-%{pecl_name} <= %{version} -Obsoletes: php56w-pecl-%{pecl_name} <= %{version} -%endif -%if "%{php_version}" > "7.0" -Obsoletes: php70u-%{pecl_name} <= %{version} -Obsoletes: php70u-pecl-%{pecl_name} <= %{version} -Obsoletes: php70w-%{pecl_name} <= %{version} -Obsoletes: php70w-pecl-%{pecl_name} <= %{version} -%endif -%if "%{php_version}" > "7.1" -Obsoletes: php71u-%{pecl_name} <= %{version} -Obsoletes: php71u-pecl-%{pecl_name} <= %{version} -Obsoletes: php71w-%{pecl_name} <= %{version} -Obsoletes: php71w-pecl-%{pecl_name} <= %{version} -%endif -%endif - -%if 0%{?fedora} < 20 && 0%{?rhel} < 7 -# Filter private shared -%{?filter_provides_in: %filter_provides_in %{_libdir}/.*\.so$} -%{?filter_setup} -%endif - - -%description -Phpiredis is an extension for PHP 5.x and 7.x based on hiredis -that provides a simple and efficient client for Redis and a fast -incremental parser / serializer for the RESP protocol. - -Package built for PHP %(%{__php} -r 'echo PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')%{?scl: as Software Collection (%{scl} by %{?scl_vendor}%{!?scl_vendor:rh})}. - - -%prep -%setup -q -c -mv %{gh_project}-%{gh_commit} NTS - -cd NTS -# Check extension version -ver=$(sed -n '/define PHP_PHPIREDIS_VERSION/{s/.* "//;s/".*$//;p}' php_phpiredis.h) -if test "$ver" != "%{version}%{?prever}%{?gh_date:-dev}"; then - : Error: Upstream VERSION version is ${ver}, expecting %{version}%{?prever}%{?gh_date:-dev}. - exit 1 -fi -cd .. - -cat << 'EOF' | tee %{ini_name} -; Enable %{pecl_name} extension module -extension=%{pecl_name}.so -EOF - - -%if %{with_zts} -# Duplicate source tree for NTS / ZTS build -cp -pr NTS ZTS -%endif - - -%build -cd NTS -%{_bindir}/phpize -%configure --with-php-config=%{_bindir}/php-config -make %{?_smp_mflags} - -%if %{with_zts} -cd ../ZTS -%{_bindir}/zts-phpize -%configure --with-php-config=%{_bindir}/zts-php-config -make %{?_smp_mflags} -%endif - - -%install -rm -rf %{buildroot} - -make -C NTS install INSTALL_ROOT=%{buildroot} - -# install configuration -install -Dpm 644 %{ini_name} %{buildroot}%{php_inidir}/%{ini_name} - -%if %{with_zts} -make -C ZTS install INSTALL_ROOT=%{buildroot} -install -Dpm 644 %{ini_name} %{buildroot}%{php_ztsinidir}/%{ini_name} -%endif - - -%check -: Minimal load test for NTS extension -%{__php} --no-php-ini \ - --define extension=%{buildroot}%{php_extdir}/%{pecl_name}.so \ - --modules | grep %{pecl_name} - -%if %{with_zts} -: Minimal load test for NTS extension -%{__ztsphp} --no-php-ini \ - --define extension=%{buildroot}%{php_ztsextdir}/%{pecl_name}.so \ - --modules | grep %{pecl_name} -%endif - -%if %{with_tests} -: Upstream test suite for NTS extension -pidfile=$PWD/redis.pid -port=$(%{__php} -r 'echo 9000 + PHP_MAJOR_VERSION*100 + PHP_MINOR_VERSION*10 + PHP_INT_SIZE;') -sed -e "/REDIS_PORT/s/6379/$port/" -i ?TS/tests/testsuite_configuration.inc -mkdir -p data - -redis-server \ - --bind 127.0.0.1 \ - --port $port \ - --daemonize yes \ - --logfile $PWD/redis.log \ - --dir $PWD/data \ - --pidfile $pidfile - -cd NTS -: Upstream test suite for NTS extension -TEST_PHP_EXECUTABLE=%{__php} \ -TEST_PHP_ARGS="-n -d extension=%{buildroot}%{php_extdir}/%{pecl_name}.so" \ -NO_INTERACTION=1 \ -REPORT_EXIT_STATUS=1 \ -%{__php} -n run-tests.php --show-diff || ret=1 - -%if %{with_zts} -cd ../ZTS -: Upstream test suite for ZTS extension -TEST_PHP_EXECUTABLE=%{__ztsphp} \ -TEST_PHP_ARGS="-n -d extension=%{buildroot}%{php_ztsextdir}/%{pecl_name}.so" \ -NO_INTERACTION=1 \ -REPORT_EXIT_STATUS=1 \ -%{__ztsphp} -n run-tests.php --show-diff || ret=1 -%endif - -: Cleanup -if [ -s $pidfile ]; then - kill $(cat $pidfile) - sleep 1 -fi - -exit $ret -%endif - - -%clean -rm -rf %{buildroot} - - -%files -%defattr(-, root, root, -) -%{!?_licensedir:%global license %%doc} -%license NTS/LICENSE -%doc NTS/README.md - -%config(noreplace) %{php_inidir}/%{ini_name} -%{php_extdir}/%{pecl_name}.so - -%if %{with_zts} -%config(noreplace) %{php_ztsinidir}/%{ini_name} -%{php_ztsextdir}/%{pecl_name}.so -%endif - - -%changelog -* Thu Nov 24 2016 Remi Collet - 1.0.0-1 -- update to 1.0.0 release - -* Sun Nov 13 2016 Remi Collet - 1.0.0-0.2.20160715gita64e3bf -- add minor fix for portability -- add full reflection for all functions -- open https://github.com/nrk/phpiredis/pull/53 - -* Sat Nov 12 2016 Remi Collet - 1.0.0-0.1.20160715gita64e3bf -- Initial packaging of 1.0.0-dev - diff --git a/php-phpiredis.spec b/php-phpiredis.spec index fd4c230..b82d7d7 100644 --- a/php-phpiredis.spec +++ b/php-phpiredis.spec @@ -1,6 +1,3 @@ -# Fedora spec file for php-phpiredis -# Without SCL compatibility stuff, from: -# # remirepo spec file for php-phpiredis # # Copyright (c) 2016 Remi Collet @@ -9,10 +6,17 @@ # # Please, preserve the changelog entries # +%if 0%{?scl:1} +%global sub_prefix %{scl_prefix} +%scl_package php-phpiredis +%endif + %global gh_commit 981d455034a48bb19db39c578e9c16d889289b99 %global gh_short %(c=%{gh_commit}; echo ${c:0:7}) %global gh_owner nrk %global gh_project phpiredis +#global gh_date 20160715 +#global prever RC1 %global pecl_name phpiredis %global with_zts 0%{!?_without_zts:%{?__ztsphp:1}} @@ -23,9 +27,13 @@ %endif %global with_tests 0%{!?_without_tests:1} -Name: php-%{pecl_name} +Name: %{?sub_prefix}php-%{pecl_name} Version: 1.0.0 -Release: 2%{?dist} +%if 0%{?gh_date} +Release: 0.2.%{gh_date}git%{gh_short}%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}} +%else +Release: 1%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}} +%endif Summary: Client extension for Redis @@ -34,15 +42,51 @@ License: BSD URL: https://github.com/%{gh_owner}/%{gh_project} Source0: https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{pecl_name}-%{version}-%{gh_short}.tar.gz -BuildRequires: php-devel -BuildRequires: php-pear -BuildRequires: hiredis-devel +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +BuildRequires: %{?scl_prefix}php-devel +BuildRequires: %{?scl_prefix}php-pear +# ensure we use hiredis-last when exists +BuildRequires: hiredis-devel >= 0.13.3 %if %{with_tests} BuildRequires: redis %endif -Requires: php(zend-abi) = %{php_zend_api} -Requires: php(api) = %{php_core_api} +Requires: %{?scl_prefix}php(zend-abi) = %{php_zend_api} +Requires: %{?scl_prefix}php(api) = %{php_core_api} +%{?_sclreq:Requires: %{?scl_prefix}runtime%{?_sclreq}%{?_isa}} + +%if "%{?scl_prefix}" != "%{?sub_prefix}" +Provides: %{?scl_prefix}php-%{pecl_name} = %{version}-%{release} +Provides: %{?scl_prefix}php-%{pecl_name}%{?_isa} = %{version}-%{release} +%endif + +%if "%{?vendor}" == "Remi Collet" && 0%{!?scl:1} +# Other third party repo stuff +%if "%{php_version}" > "5.5" +Obsoletes: php55u-%{pecl_name} <= %{version} +Obsoletes: php55u-pecl-%{pecl_name} <= %{version} +Obsoletes: php55w-%{pecl_name} <= %{version} +Obsoletes: php55w-pecl-%{pecl_name} <= %{version} +%endif +%if "%{php_version}" > "5.6" +Obsoletes: php56u-%{pecl_name} <= %{version} +Obsoletes: php56u-pecl-%{pecl_name} <= %{version} +Obsoletes: php56w-%{pecl_name} <= %{version} +Obsoletes: php56w-pecl-%{pecl_name} <= %{version} +%endif +%if "%{php_version}" > "7.0" +Obsoletes: php70u-%{pecl_name} <= %{version} +Obsoletes: php70u-pecl-%{pecl_name} <= %{version} +Obsoletes: php70w-%{pecl_name} <= %{version} +Obsoletes: php70w-pecl-%{pecl_name} <= %{version} +%endif +%if "%{php_version}" > "7.1" +Obsoletes: php71u-%{pecl_name} <= %{version} +Obsoletes: php71u-pecl-%{pecl_name} <= %{version} +Obsoletes: php71w-%{pecl_name} <= %{version} +Obsoletes: php71w-pecl-%{pecl_name} <= %{version} +%endif +%endif %if 0%{?fedora} < 20 && 0%{?rhel} < 7 # Filter private shared @@ -56,6 +100,8 @@ Phpiredis is an extension for PHP 5.x and 7.x based on hiredis that provides a simple and efficient client for Redis and a fast incremental parser / serializer for the RESP protocol. +Package built for PHP %(%{__php} -r 'echo PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')%{?scl: as Software Collection (%{scl} by %{?scl_vendor}%{!?scl_vendor:rh})}. + %prep %setup -q -c @@ -97,6 +143,8 @@ make %{?_smp_mflags} %install +rm -rf %{buildroot} + make -C NTS install INSTALL_ROOT=%{buildroot} # install configuration @@ -164,7 +212,13 @@ exit $ret %endif +%clean +rm -rf %{buildroot} + + %files +%defattr(-, root, root, -) +%{!?_licensedir:%global license %%doc} %license NTS/LICENSE %doc NTS/README.md @@ -178,9 +232,6 @@ exit $ret %changelog -* Sat Nov 26 2016 Remi Collet - 1.0.0-2 -- cleanup for fedora review - * Thu Nov 24 2016 Remi Collet - 1.0.0-1 - update to 1.0.0 release -- cgit