%bcond_without phpdbg # disable phpdbg SAPI
# - Extensions
%bcond_without bcmath # without bcmath extension module
-%bcond_without bz2 # without bz2 extension module
+%bcond_without bzip2 # without bz2 extension module
%bcond_without calendar # without calendar extension module
%bcond_without ctype # without ctype extension module
%bcond_without curl # without CURL extension module
%undefine with_pdo_sqlite
%endif
-%define rel 1
%define orgname php
%define ver_suffix 74
%define php_suffix %{!?with_default_php:%{ver_suffix}}
Summary(ru.UTF-8): PHP Версии 7 - язык препроцессирования HTML-файлов, выполняемый на сервере
Summary(uk.UTF-8): PHP Версії 7 - мова препроцесування HTML-файлів, виконувана на сервері
Name: %{orgname}%{php_suffix}
-Version: 7.4.2
-Release: 1
+Version: 7.4.32
+Release: 2
Epoch: 4
# All files licensed under PHP version 3.01, except
# Zend is licensed under Zend
# TSRM is licensed under BSD
License: PHP 3.01 and Zend and BSD
Group: Libraries
-Source0: https://php.net/distributions/%{orgname}-%{version}.tar.xz
-# Source0-md5: 49a6e2bafa7134386e1b54c6b1c41ed5
+Source0: https://www.php.net/distributions/%{orgname}-%{version}.tar.xz
+# Source0-md5: 9fae22a9dc7f3e9fe26dd2f8dc94d03e
Source1: opcache.ini
Source2: %{orgname}-mod_php.conf
Source3: %{orgname}-cgi-fcgi.ini
Patch25: %{orgname}-stupidapache_version.patch
Patch27: %{orgname}-config-dir.patch
Patch29: %{orgname}-fcgi-graceful.patch
-Patch31: %{orgname}-fcgi-error_log-no-newlines.patch
Patch39: %{orgname}-use-prog_sendmail.patch
Patch41: %{orgname}-fpm-config.patch
Patch43: %{orgname}-silent-session-cleanup.patch
Patch44: %{orgname}-include_path.patch
Patch50: extension-shared-optional-dep.patch
Patch53: fix-test-run.patch
-Patch55: bug-52078-fileinode.patch
Patch59: %{orgname}-systzdata.patch
Patch60: %{orgname}-oracle-instantclient.patch
Patch66: php-db.patch
# https://bugs.php.net/bug.php?id=68344
Patch68: php-mysql-ssl-context.patch
Patch71: libdb-info.patch
-URL: http://php.net/
+Patch72: openssl.patch
+URL: https://www.php.net/
%{?with_pdo_firebird:%{!?with_interbase_inst:BuildRequires: Firebird-devel >= 1.0.2.908-2}}
%{?with_pspell:BuildRequires: aspell-devel >= 2:0.50.0}
BuildRequires: autoconf >= 2.59
%define jsonver %{version}
%define pharver %{version}
%define sqlite3ver %{version}
-%define zipver 1.15.5
+%define zipver 1.15.6
%define phpdbgver %{version}
%define sodiumver %{version}
Summary(pl.UTF-8): Dowiązanie symboliczne /usr/bin/php
Group: Development/Languages/PHP
Requires: %{name}-cli = %{epoch}:%{version}-%{release}
-Obsoletes: /usr/bin/php
Obsoletes: php-program < 4:5.3.28-7
+Obsoletes: php4-program < 3:5
+Obsoletes: php52-program < 4:5.3
+Obsoletes: php53-program < 4:5.4
+Obsoletes: php54-program < 4:5.5
+Obsoletes: php55-program < 4:5.6
+Obsoletes: php56-program < 4:7
+Obsoletes: php70-program < 4:7.1
+Obsoletes: php71-program < 4:7.2
+Obsoletes: php72-program < 4:7.3
+Obsoletes: php73-program < 4:7.4
+Obsoletes: php80-program < 4:8.1
+Obsoletes: php81-program < 4:8.2
+Obsoletes: php82-program < 4:8.3
%description program
Package providing /usr/bin/php symlink to PHP CLI.
Requires: shtool
Provides: php-devel = %{epoch}:%{version}-%{release}
Obsoletes: php-devel
-Obsoletes: php-pear-devel
-Obsoletes: php4-devel
-Obsoletes: php52-devel
-Obsoletes: php53-devel
-Obsoletes: php54-devel
-Obsoletes: php55-devel
-Obsoletes: php56-devel
-Obsoletes: php70-devel
-Obsoletes: php71-devel
-Obsoletes: php73-devel
+Obsoletes: php-pear-devel < 3:4.3.0-1
+Obsoletes: php4-devel < 3:5
+Obsoletes: php52-devel < 4:5.3
+Obsoletes: php53-devel < 4:5.4
+Obsoletes: php54-devel < 4:5.5
+Obsoletes: php55-devel < 4:5.6
+Obsoletes: php56-devel < 4:7
+Obsoletes: php70-devel < 4:7.1
+Obsoletes: php71-devel < 4:7.2
+Obsoletes: php72-devel < 4:7.3
+Obsoletes: php73-devel < 4:7.4
+Obsoletes: php80-devel < 4:8.0
+Obsoletes: php81-devel < 4:8.2
+Obsoletes: php82-devel < 4:8.3
%description devel
The php-devel package lets you compile dynamic extensions to PHP.
Requires: %{name}-pcre = %{epoch}:%{version}-%{release}
Provides: php(filter)
Obsoletes: php-filter < 4:5.3.28-7
-Obsoletes: php-pecl-filter
+Obsoletes: php-pecl-filter < 0.12
%description filter
We all know that you should always check input variables, but PHP does
Provides: %{name}(PDO_API) = %{php_pdo_api_version}
Provides: php(pdo)
Obsoletes: php-pdo < 4:5.3.28-7
-Obsoletes: php-pecl-PDO
+Obsoletes: php-pecl-PDO < 1.1
%description pdo
This is a dynamic shared object (DSO) for PHP that will add PDO
Provides: php(pdo-firebird)
Provides: php(pdo_firebird)
Obsoletes: php-pdo-firebird < 4:5.3.28-7
-Obsoletes: php-pecl-PDO_FIREBIRD
+Obsoletes: php-pecl-PDO_FIREBIRD < 0.3
%description pdo-firebird
This is a dynamic shared object (DSO) for PHP that will add PDO
Provides: php(pdo-mysql)
Provides: php(pdo_mysql)
Obsoletes: php-pdo-mysql < 4:5.3.28-7
-Obsoletes: php-pecl-PDO_MYSQL
+Obsoletes: php-pecl-PDO_MYSQL < 1.1
%description pdo-mysql
This is a dynamic shared object (DSO) for PHP that will add PDO MySQL
Provides: php(pdo-oci)
Provides: php(pdo_oci)
Obsoletes: php-pdo-oci < 4:5.3.28-7
-Obsoletes: php-pecl-PDO_OCI
+Obsoletes: php-pecl-PDO_OCI < 1.1
%description pdo-oci
This is a dynamic shared object (DSO) for PHP that will add PDO Oracle
Provides: php(pdo-odbc)
Provides: php(pdo_odbc)
Obsoletes: php-pdo-odbc < 4:5.3.28-7
-Obsoletes: php-pecl-PDO_ODBC
+Obsoletes: php-pecl-PDO_ODBC < 1.1
%description pdo-odbc
This is a dynamic shared object (DSO) for PHP that will add PDO ODBC
Provides: php(pdo-sqlite)
Provides: php(pdo_sqlite)
Obsoletes: php-pdo-sqlite < 4:5.3.28-7
-Obsoletes: php-pecl-PDO_SQLITE
+Obsoletes: php-pecl-PDO_SQLITE < 1.1
%description pdo-sqlite
This is a dynamic shared object (DSO) for PHP that will add PDO SQLite
URL: http://php.net/manual/en/book.xmlwriter.php
Requires: %{name}-common = %{epoch}:%{version}-%{release}
Provides: php(xmlwriter)
-Obsoletes: php-pecl-xmlwriter
+Obsoletes: php-pecl-xmlwriter < 2.1
Obsoletes: php-xmlwriter < 4:5.3.28-7
%description xmlwriter
%patch25 -p1
%patch27 -p1
%patch29 -p1
-%patch31 -p1
%patch39 -p1
%patch41 -p1
%patch43 -p1
%patch50 -p1
%patch53 -p1
-%undos ext/spl/tests/SplFileInfo_getInode_basic.phpt
-%patch55 -p1
%patch59 -p1 -b .systzdata
%if %{with instantclient}
%patch60 -p1 -b .instantclient
%patch67 -p1
#%patch68 -p1 DROP or update to 7.0 APIs
%patch71 -p1
+%patch72 -p1
sed -E -i -e '1s,#!\s*/usr/bin/env\s+(.*),#!%{__bindir}\1,' \
ext/ext_skel.php \
--%{!?with_debug:dis}%{?with_debug:en}able-debug \
%{?with_zts:--enable-maintainer-zts} \
--enable-inline-optimization \
+ --enable-option-checking=fatal \
%{__enable_disable bcmath bcmath shared} \
%{__enable_disable calendar calendar shared} \
%{__enable_disable ctype ctype shared} \
--enable-tokenizer=shared \
--enable-xml=shared \
--enable-xmlreader=shared \
- %{__with_without bz2 bz2 shared} \
+ %{__with_without bzip2 bz2 shared} \
%{__with_without curl curl shared} \
--with-db4 \
%{__with_without iconv iconv shared} \
# restart webserver at the end of transaction
[ ! -f /etc/httpd/conf.d/??_mod_php.conf ] || %service -q httpd restart
-%triggerpostun common -- php-common < 4:5.3.28-7
+%triggerpostun common -- %{name}-common < 4:5.6.4-2, php-common < 4:5.6.4-2
+# switch to browscap package if the ini file has original value
+%{__sed} -i -e 's#%{_sysconfdir}/browscap.ini#/usr/share/browscap/php_browscap.ini#' %{_sysconfdir}/php.ini
+# disable browscap, if optional package not present
+if [ ! -e /usr/share/browscap/php_browscap.ini ]; then
+ %{__sed} -i -e 's#^browscap = /usr/share/browscap/php_browscap.ini#;&#' %{_sysconfdir}/php.ini
+fi
+
# migrate configs /etc/php/conf.d -> /etc/phpXY/conf.d/
# do config migration in php-common trigger, as the trigger is ran after all packages are upgraded
# this way we can stick to one trigger, instead of attaching one for each (sub)package!
' $nf
done
-%triggerpostun common -- %{name}-common < 4:5.6.4-2, php-common < 4:5.6.4-2
-# switch to browscap package if the ini file has original value
-%{__sed} -i -e 's#%{_sysconfdir}/browscap.ini#/usr/share/browscap/php_browscap.ini#' %{_sysconfdir}/php.ini
-# disable browscap, if optional package not present
-if [ ! -e /usr/share/browscap/php_browscap.ini ]; then
- %{__sed} -i -e 's#^browscap = /usr/share/browscap/php_browscap.ini#;&#' %{_sysconfdir}/php.ini
-fi
-
%triggerpostun -n apache-mod_%{name} -- apache-mod_%{name} < 4:7.0.0-2.RC4
sed -i -e 's#modules/libphp[57].so#modules/mod_php.so#g' /etc/httpd/conf.d/*_mod_php.conf
%attr(755,root,root) %{php_extensiondir}/bcmath.so
%endif
-%if %{with bz2}
+%if %{with bzip2}
%files bz2
%defattr(644,root,root,755)
%doc ext/bz2/CREDITS
%if %{with pdo_oci}
%files oci8
%defattr(644,root,root,755)
-%doc ext/oci8/{CREDITS,README}
+%doc ext/oci8/{CREDITS,README.md}
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/??_oci8.ini
%attr(755,root,root) %{php_extensiondir}/oci8.so
%endif