# remirepo spec file for php-pecl-uploadprogress # # Copyright (c) 2013-2021 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-pecl-uploadprogress %endif %global with_zts 0%{!?_without_zts:%{?__ztsphp:1}} %global pecl_name uploadprogress %if "%{php_version}" < "5.6" %global ini_name %{pecl_name}.ini %else %global ini_name 40-%{pecl_name}.ini %endif Summary: An extension to track progress of a file upload Name: %{?sub_prefix}php-pecl-%{pecl_name} Version: 1.1.3 Release: 2%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}} License: PHP Group: Development/Languages URL: https://pecl.php.net/package/%{pecl_name} Source0: https://pecl.php.net/get/%{pecl_name}-%{version}.tgz # Fix segmentation fault in uploadprogress # https://github.com/php/pecl-php-uploadprogress/pull/8 Patch0: %{pecl_name}-arginfo.patch # Add arginfo to functions # https://github.com/php/pecl-php-uploadprogress/pull/9 Patch1: %{pecl_name}-segfault.patch BuildRequires: %{?dtsprefix}gcc BuildRequires: make BuildRequires: %{?scl_prefix}php-devel BuildRequires: %{?scl_prefix}php-pear Requires: %{?scl_prefix}php(zend-abi) = %{php_zend_api} Requires: %{?scl_prefix}php(api) = %{php_core_api} %{?_sclreq:Requires: %{?scl_prefix}runtime%{?_sclreq}%{?_isa}} 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} Provides: %{?scl_prefix}php-pecl-%{pecl_name} = %{version}-%{release} Provides: %{?scl_prefix}php-pecl-%{pecl_name}%{?_isa} = %{version}-%{release} %if "%{?packager}" == "Remi Collet" && 0%{!?scl:1} && 0%{?rhel} # Other third party repo stuff %if "%{php_version}" > "5.5" Obsoletes: php55u-pecl-%{pecl_name} <= %{version} %endif %if "%{php_version}" > "5.6" Obsoletes: php56u-pecl-%{pecl_name} <= %{version} %endif %if "%{php_version}" > "7.3" Obsoletes: php73-pecl-%{pecl_name} <= %{version} %endif %if "%{php_version}" > "7.4" Obsoletes: php74-pecl-%{pecl_name} <= %{version} %endif %if "%{php_version}" > "8.0" Obsoletes: php80-pecl-%{pecl_name} <= %{version} %endif %if "%{php_version}" > "8.1" Obsoletes: php81-pecl-%{pecl_name} <= %{version} %endif %endif %description A PHP extension to track progress of a file upload, including details on the speed of the upload, estimated time remaining, and access to the contents of the file as it is being uploaded It requires the use of the Apache HTTP Server with mod_php. Other web servers and PHP-FPM are not yet supported. 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 %{pecl_name}-%{version} NTS %{?_licensedir:sed -e '/LICENSE/s/role="doc"/role="src"/' -i package.xml} cd NTS %patch0 -p1 -b .pr8 %patch1 -p1 -b .pr9 # Sanity check, really often broken extver=$(sed -n '/#define PHP_UPLOADPROGRESS_VERSION/{s/.* "//;s/".*$//;p}' php_uploadprogress.h) if test "x${extver}" != "x%{version}%{?prever:-%{prever}}"; then : Error: Upstream extension version is ${extver}, expecting %{version}%{?prever:-%{prever}}. exit 1 fi cd .. %if %{with_zts} # Duplicate source tree for NTS / ZTS build cp -pr NTS ZTS %endif # Create configuration file cat << 'EOF' | tee %{ini_name} ; Enable %{pecl_name} extension module extension=%{pecl_name}.so ; Runtime configuration options ;uploadprogress.file.filename_template = '/tmp/upt_%%s.txt' ;uploadprogress.file.contents_template = '/tmp/upload_contents_%%s' ;uploadprogress.get_contents = 0 EOF %build %{?dtsenable} cd NTS %{_bindir}/phpize %configure \ --with-libdir=%{_lib} \ --with-php-config=%{_bindir}/php-config make %{?_smp_mflags} %if %{with_zts} cd ../ZTS %{_bindir}/zts-phpize %configure \ --with-libdir=%{_lib} \ --with-php-config=%{_bindir}/zts-php-config make %{?_smp_mflags} %endif %install %{?dtsenable} make -C NTS install INSTALL_ROOT=%{buildroot} # install config file install -D -m 644 %{ini_name} %{buildroot}%{php_inidir}/%{ini_name} # Install XML package description install -D -m 644 package.xml %{buildroot}%{pecl_xmldir}/%{name}.xml %if %{with_zts} make -C ZTS install INSTALL_ROOT=%{buildroot} install -D -m 644 %{ini_name} %{buildroot}%{php_ztsinidir}/%{ini_name} %endif # Documentation for i in %{!?_licensedir:LICENSE} $(grep 'role="doc"' package.xml | sed -e 's/^.*name="//;s/".*$//') do install -Dpm 644 NTS/$i %{buildroot}%{pecl_docdir}/%{pecl_name}/$i done %if 0%{?fedora} < 24 && 0%{?rhel} < 8 # when pear installed alone, after us %triggerin -- %{?scl_prefix}php-pear if [ -x %{__pecl} ] ; then %{pecl_install} %{pecl_xmldir}/%{name}.xml >/dev/null || : fi # posttrans as pear can be installed after us %posttrans if [ -x %{__pecl} ] ; then %{pecl_install} %{pecl_xmldir}/%{name}.xml >/dev/null || : fi %postun if [ $1 -eq 0 -a -x %{__pecl} ] ; then %{pecl_uninstall} %{pecl_name} >/dev/null || : fi %endif %check : Minimal load test for NTS extension cd NTS %{__php} --no-php-ini \ --define extension=modules/%{pecl_name}.so \ --modules | grep %{pecl_name} %if %{with_zts} : Minimal load test for ZTS extension cd ../ZTS %{__ztsphp} --no-php-ini \ --define extension=modules/%{pecl_name}.so \ --modules | grep %{pecl_name} %endif %files %{?_licensedir:%license NTS/LICENSE} %doc %{pecl_docdir}/%{pecl_name} %{pecl_xmldir}/%{name}.xml %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 Jul 22 2021 Remi Collet - 1.1.3-2 - Fix segmentation fault in uploadprogress, patch from https://github.com/php/pecl-php-uploadprogress/pull/8 - Add arginfo to functions, patch from https://github.com/php/pecl-php-uploadprogress/pull/9 * Wed Jan 29 2020 Remi Collet - 1.1.3-1 - update to 1.1.3 * Mon Jan 27 2020 Remi Collet - 1.1.2-1 - update to 1.1.2 * Tue Sep 03 2019 Remi Collet - 1.0.3.1-20 - rebuild for 7.4.0RC1 * Tue Jul 23 2019 Remi Collet - 1.0.3.1-19 - rebuild for 7.4.0beta1 * Thu Aug 16 2018 Remi Collet - 1.0.3.1-18 - rebuild for 7.3.0beta2 new ABI * Wed Jul 18 2018 Remi Collet - 1.0.3.1-17 - rebuild for 7.3.0alpha4 new ABI * Wed Jun 27 2018 Remi Collet - 1.0.3.1-16 - cleanup * Tue Jul 18 2017 Remi Collet - 1.0.3.1-15 - rebuild for PHP 7.2.0beta1 new API * Thu Dec 1 2016 Remi Collet - 1.0.3.1-14 - rebuild with PHP 7.1.0 GA * Wed Sep 14 2016 Remi Collet - 1.0.3.1-13 - rebuild for PHP 7.1 new API version * Tue Oct 13 2015 Remi Collet - 1.0.3.1-11 - rebuild for PHP 7.0.0RC5 new API version * Fri Sep 18 2015 Remi Collet - 1.0.3.1-10 - F23 rebuild with rh_layout * Wed Jul 22 2015 Remi Collet - 1.0.3.1-9 - rebuild against php 7.0.0beta2 * Wed Jul 8 2015 Remi Collet - 1.0.3.1-8 - rebuild against php 7.0.0beta1 * Tue Jun 23 2015 Remi Collet - 1.0.3.1-7 - allow build against rh-php56 (as more-php56) - rebuild for "rh_layout" (php70) * Thu Apr 9 2015 Remi Collet - 1.0.3.1-6 - add fix for PHP 7 - drop runtime dependency on pear, new scriptlets * Wed Dec 24 2014 Remi Collet - 1.0.3.1-5.1 - Fedora 21 SCL mass rebuild * Tue Aug 26 2014 Remi Collet - 1.0.3.1-5 - improve SCL build * Thu Apr 17 2014 Remi Collet - 1.0.3.1-4 - add numerical prefix to extension configuration file (php 5.6) * Tue Mar 25 2014 Remi Collet - 1.0.3.1-3 - allow SCL build * Tue Nov 5 2013 Remi Collet - 1.0.3.1-2 - cleanups for Copr - install doc in pecl doc_dir * Sat Oct 12 2013 Remi Collet - 1.0.3.1-1 - initial package, version 1.0.3.1 (stable)