summaryrefslogtreecommitdiffstats
path: root/php-pecl-yar.spec
diff options
context:
space:
mode:
Diffstat (limited to 'php-pecl-yar.spec')
-rw-r--r--php-pecl-yar.spec159
1 files changed, 120 insertions, 39 deletions
diff --git a/php-pecl-yar.spec b/php-pecl-yar.spec
index 8947216..b202b97 100644
--- a/php-pecl-yar.spec
+++ b/php-pecl-yar.spec
@@ -7,17 +7,18 @@
# Please, preserve the changelog entries
#
%if 0%{?scl:1}
-%if "%{scl}" == "rh-php56"
-%global sub_prefix more-php56-
-%else
%global sub_prefix %{scl_prefix}
+%scl_package php-pecl-yar
%endif
-%endif
-
-%{?scl: %scl_package php-pecl-yar}
-%global with_zts 0%{?__ztsphp:1}
+%global gh_commit 0e04a6a92347f7e95c9ddf8bbbad36b6286ed87f
+%global gh_short %(c=%{gh_commit}; echo ${c:0:7})
+%global gh_owner laruence
+%global gh_project yar
+#global gh_date 20150914
+%global with_zts 0%{!?_without_zts:%{?__ztsphp:1}}
%global pecl_name yar
+%global with_tests %{?_without_tests:0}%{!?_without_tests:1}
%if "%{php_version}" < "5.6"
# After json, msgpack
%global ini_name %{pecl_name}.ini
@@ -28,23 +29,34 @@
Summary: Light, concurrent RPC framework
Name: %{?sub_prefix}php-pecl-%{pecl_name}
-Version: 1.2.5
-Release: 2%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
-License: BSD
+Version: 2.0.2
+%if 0%{?gh_date:1}
+Release: 0.11.%{gh_date}git%{gh_short}%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
+Source0: https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{pecl_name}-%{version}-%{gh_short}.tar.gz
+%else
+Release: 1%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
+Source0: http://pecl.php.net/get/%{pecl_name}-%{version}.tgz
+%endif
+License: PHP
Group: Development/Languages
URL: http://pecl.php.net/package/%{pecl_name}
-Source0: http://pecl.php.net/get/%{pecl_name}-%{version}.tgz
-BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: curl-devel
-BuildRequires: %{?scl_prefix}php-devel
+BuildRequires: %{?scl_prefix}php-devel > 7
BuildRequires: %{?scl_prefix}php-pear
+BuildRequires: %{?scl_prefix}php-json
BuildRequires: %{?sub_prefix}php-pecl-msgpack-devel
Requires: %{?scl_prefix}php(zend-abi) = %{php_zend_api}
Requires: %{?scl_prefix}php(api) = %{php_core_api}
+%if "%{php_version}" < "5.4"
+# php 5.3.3 in EL-6 don't use arched virtual provides
+# so only requires real packages instead
+Requires: %{?scl_prefix}php-common%{?_isa}
+%else
Requires: %{?scl_prefix}php-curl%{?_isa}
Requires: %{?scl_prefix}php-json%{?_isa}
+%endif
Requires: %{?scl_prefix}php-pecl(msgpack)%{?_isa}
%{?_sclreq:Requires: %{?scl_prefix}runtime%{?_sclreq}%{?_isa}}
@@ -52,8 +64,10 @@ Provides: %{?scl_prefix}php-%{pecl_name} = %{version}
Provides: %{?scl_prefix}php-%{pecl_name}%{?_isa} = %{version}
Provides: %{?scl_prefix}php-pecl(%{pecl_name}) = %{version}
Provides: %{?scl_prefix}php-pecl(%{pecl_name})%{?_isa} = %{version}
+%if "%{?scl_prefix}" != "%{?sub_prefix}"
Provides: %{?scl_prefix}php-pecl-%{pecl_name} = %{version}-%{release}
Provides: %{?scl_prefix}php-pecl-%{pecl_name}%{?_isa} = %{version}-%{release}
+%endif
%if "%{?vendor}" == "Remi Collet" && 0%{!?scl:1} && 0%{?rhel}
# Other third party repo stuff
@@ -61,13 +75,15 @@ Obsoletes: php53-pecl-%{pecl_name} <= %{version}
Obsoletes: php53u-pecl-%{pecl_name} <= %{version}
Obsoletes: php54-pecl-%{pecl_name} <= %{version}
Obsoletes: php54w-pecl-%{pecl_name} <= %{version}
-%if "%{php_version}" > "5.5"
Obsoletes: php55u-pecl-%{pecl_name} <= %{version}
Obsoletes: php55w-pecl-%{pecl_name} <= %{version}
-%endif
-%if "%{php_version}" > "5.6"
Obsoletes: php56u-pecl-%{pecl_name} <= %{version}
Obsoletes: php56w-pecl-%{pecl_name} <= %{version}
+Obsoletes: php70u-pecl-%{pecl_name} <= %{version}
+Obsoletes: php70w-pecl-%{pecl_name} <= %{version}
+%if "%{php_version}" > "7.1"
+Obsoletes: php71u-pecl-%{pecl_name} <= %{version}
+Obsoletes: php71w-pecl-%{pecl_name} <= %{version}
%endif
%endif
@@ -86,24 +102,25 @@ Package built for PHP %(%{__php} -r 'echo PHP_MAJOR_VERSION.".".PHP_MINOR_VERSIO
%prep
-%setup -q -c
+%setup -qc
+%if 0%{?gh_date:1}
+mv %{gh_project}-%{gh_commit} NTS
+mv NTS/package2.xml .
+%else
mv %{pecl_name}-%{version} NTS
+%endif
# Don't install/register tests
sed -e 's/role="test"/role="src"/' \
%{?_licensedir:-e '/LICENSE/s/role="doc"/role="src"/' } \
- -i package.xml
+ -i package2.xml
cd NTS
-# Add shebang
-sed -e 's:<?php:#!%{_bindir}/php\n<?php:' \
- -i tools/yar_debug.php
-
# Sanity check, really often broken
extver=$(sed -n '/#define PHP_YAR_VERSION/{s/.* "//;s/".*$//;p}' php_yar.h)
-if test "x${extver}" != "x%{version}%{?prever:-%{prever}}"; then
- : Error: Upstream extension version is ${extver}, expecting %{version}%{?prever:-%{prever}}.
+if test "x${extver}" != "x%{version}%{?prever:-%{prever}}%{?gh_date:-dev}"; then
+ : Error: Upstream extension version is ${extver}, expecting %{version}%{?prever:-%{prever}}%{?gh_date:-dev}.
exit 1
fi
cd ..
@@ -135,6 +152,8 @@ EOF
%build
+%{?dtsenable}
+
cd NTS
%{_bindir}/phpize
%configure \
@@ -153,10 +172,9 @@ make %{?_smp_mflags}
%install
-rm -rf %{buildroot}
+%{?dtsenable}
-make -C NTS \
- install INSTALL_ROOT=%{buildroot}
+make -C NTS install INSTALL_ROOT=%{buildroot}
# install config file
install -D -m 644 %{ini_name} %{buildroot}%{php_inidir}/%{ini_name}
@@ -165,8 +183,7 @@ install -D -m 644 %{ini_name} %{buildroot}%{php_inidir}/%{ini_name}
install -D -m 644 package2.xml %{buildroot}%{pecl_xmldir}/%{name}.xml
%if %{with_zts}
-make -C ZTS \
- install INSTALL_ROOT=%{buildroot}
+make -C ZTS install INSTALL_ROOT=%{buildroot}
install -D -m 644 %{ini_name} %{buildroot}%{php_ztsinidir}/%{ini_name}
%endif
@@ -203,7 +220,6 @@ fi
%check
-# Upstream test suite requires a web server
: Minimal load test for NTS extension
%{__php} --no-php-ini \
--define extension=json.so \
@@ -220,13 +236,29 @@ fi
--modules | grep %{pecl_name}
%endif
+%if %{with_tests}
+cd NTS
+
+: Create test configuration
+export TEST_PHP_EXECUTABLE=%{__php}
+export TEST_PHP_ARGS="-n -d extension=json.so -d extension=msgpack.so -d extension=$PWD/modules/%{pecl_name}.so"
+export NO_INTERACTION=1
+export REPORT_EXIT_STATUS=1
+
+%ifarch x86_64
+export YAR_API_PORT=8968
+%else
+export YAR_API_PORT=8964
+%endif
-%clean
-rm -rf %{buildroot}
+: Run the upstream test suite
+%{__php} -n run-tests.php --show-diff
+%else
+: upstream test suite disabled
+%endif
%files
-%defattr(-,root,root,-)
%{?_licensedir:%license NTS/LICENSE}
%doc %{pecl_docdir}/%{pecl_name}
%{pecl_xmldir}/%{name}.xml
@@ -243,15 +275,63 @@ rm -rf %{buildroot}
%changelog
-* Wed Mar 9 2016 Remi Collet <remi@fedoraproject.org> - 1.2.5-2
+* Wed Mar 15 2017 Remi Collet <remi@remirepo.net> - 2.0.2-1
+- Update to 2.0.2
+
+* Thu Dec 1 2016 Remi Collet <remi@fedoraproject.org> - 2.0.1-3
+- rebuild with PHP 7.1.0 GA
+
+* Wed Sep 14 2016 Remi Collet <remi@fedoraproject.org> - 2.0.1-2
+- rebuild for PHP 7.1 new API version
+
+* Sat Jul 2 2016 Remi Collet <remi@fedoraproject.org> - 2.0.1-1
+- update to 2.0.1 (php 7)
+- sources from pecl
+- drop patch merged upstream
+
+* Sat Jun 11 2016 Remi Collet <remi@fedoraproject.org> - 2.0.0-3
+- add patch for PHP 7.1
+ open https://github.com/laruence/yar/pull/83
+
+* Sun Mar 6 2016 Remi Collet <remi@fedoraproject.org> - 2.0.0-2
- adapt for F24
-- fix license management
-* Tue Oct 27 2015 Remi Collet <remi@fedoraproject.org> - 1.2.5-1
-- update to 1.2.5 (stable, php 5)
+* Tue Oct 27 2015 Remi Collet <remi@fedoraproject.org> - 2.0.0-1
+- update to 2.0.0 (beta, php 7)
+
+* Tue Oct 13 2015 Remi Collet <remi@fedoraproject.org> - 1.2.5-0.10.20150914git87e4850
+- rebuild for PHP 7.0.0RC5 new API version
+- new snapshot
-* Wed Jun 24 2015 Remi Collet <remi@fedoraproject.org> - 1.2.4-2
-- allow build against rh-php56 (as more-php56)
+* Fri Sep 18 2015 Remi Collet <remi@fedoraproject.org> - 1.2.5-0.9.20150724git47317d6
+- F23 rebuild with rh_layout
+
+* Fri Jul 24 2015 Remi Collet <remi@fedoraproject.org> - 1.2.5-0.8.20150724git47317d6
+- new snapshot
+
+* Fri Jul 24 2015 Remi Collet <remi@fedoraproject.org> - 1.2.5-0.7.20150717git07b6772
+- ignore 1 failed test on i386
+- open https://github.com/laruence/yar/issues/56 (1 failed test on i386)
+
+* Wed Jul 22 2015 Remi Collet <remi@fedoraproject.org> - 1.2.5-0.6.20150717git07b6772
+- rebuild against php 7.0.0beta2
+
+* Wed Jul 8 2015 Remi Collet <remi@fedoraproject.org> - 1.2.5-0.5.20150701gita937b2f
+- rebuild against php 7.0.0beta1
+
+* Wed Jun 24 2015 Remi Collet <remi@fedoraproject.org> - 1.2.5-0.4.20150617gitd1fb4b5
+- rebuild for "rh_layout"
+
+* Wed Jun 17 2015 Remi Collet <remi@fedoraproject.org> - 1.2.5-0.3.20150615git410ca7a
+- rebuild
+- open https://github.com/laruence/yar/pull/51
+
+* Fri Jun 12 2015 Remi Collet <remi@fedoraproject.org> - 1.2.5-0.2.20150612git3b43b26
+- enable test suite during the build
+
+* Fri Jun 12 2015 Remi Collet <remi@fedoraproject.org> - 1.2.5-0.1.20150612git7aca9e6
+- Update to 1.2.5-dev for PHP 7
+- sources from github
- drop runtime dependency on pear, new scriptlets
* Wed Dec 24 2014 Remi Collet <remi@fedoraproject.org> - 1.2.4-1.1
@@ -283,3 +363,4 @@ rm -rf %{buildroot}
* Wed Jul 17 2013 Remi Collet <remi@fedoraproject.org> - 1.2.0-1
- initial package
+