summaryrefslogtreecommitdiffstats
path: root/php81.spec
diff options
context:
space:
mode:
Diffstat (limited to 'php81.spec')
-rw-r--r--php81.spec372
1 files changed, 277 insertions, 95 deletions
diff --git a/php81.spec b/php81.spec
index c4492b2..f51632b 100644
--- a/php81.spec
+++ b/php81.spec
@@ -24,8 +24,15 @@
%global mysql_sock %(mysql_config --socket 2>/dev/null || echo /var/lib/mysql/mysql.sock)
-%global oraclever 21.6
+%ifarch aarch64
+%global oraclever 19.19
+%global oraclelib 19.1
+%global oracledir 19.19
+%else
+%global oraclever 21.13
%global oraclelib 21.1
+%global oracledir 21
+%endif
# Build for LiteSpeed Web Server (LSAPI), you can disable using --without tests
%bcond_without lsws
@@ -40,6 +47,8 @@
# Optional Oracle extensions; pass "--with oci8" etc to rpmbuild.
%bcond_with oci8
+%bcond_without imap
+
%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
# switch to bundled library using --without libpcre
%bcond_without libpcre
@@ -67,7 +76,11 @@
%bcond_without firebird
# Build ZTS extension or only NTS using --without zts
+%ifarch x86_64
%bcond_without zts
+%else
+%bcond_with zts
+%endif
# Debug build, using --with debug
%bcond_with debug
@@ -107,13 +120,12 @@
%bcond_without libgd
%bcond_with zip
-%global upver 8.1.7
+%global upver 8.1.28
#global rcver RC1
-#global lower RC1
Summary: PHP scripting language for creating dynamic web sites
Name: php
-Version: %{upver}%{?rcver:~%{lower}}
+Version: %{upver}%{?rcver:~%{rcver}}
Release: 1%{?dist}
# All files licensed under PHP version 3.01, except
# Zend is licensed under Zend
@@ -153,6 +165,8 @@ Patch1: php-7.4.0-httpd.patch
Patch5: php-7.2.0-includedir.patch
Patch6: php-8.0.0-embed.patch
Patch8: php-8.1.0-libdb.patch
+# For libxml 2.12 from 8.1
+Patch9: php-8.1.27-libxml212.patch
# RHEL backports
Patch10: php-7.0.7-curl.patch
@@ -160,7 +174,7 @@ Patch10: php-7.0.7-curl.patch
# Use system nikic/php-parser
Patch41: php-8.1.0-parser.patch
# use system tzdata
-Patch42: php-8.1.0-systzdata-v22.patch
+Patch42: php-8.1.0-systzdata-v24.patch
# See http://bugs.php.net/53436
Patch43: php-7.4.0-phpize.patch
# Use -lldap_r for OpenLDAP
@@ -175,13 +189,13 @@ Patch47: php-8.1.0-phpinfo.patch
Patch91: php-7.2.0-oci8conf.patch
# Upstream fixes (100+)
-Patch100: php-mbstring.patch
# Security fixes (200+)
# Fixes for tests (300+)
# Factory is droped from system tzdata
Patch300: php-7.4.0-datetests.patch
+Patch301: php-8.1.27-zlib-tests.patch
# WIP
@@ -208,7 +222,7 @@ BuildRequires: pkgconfig(libedit)
%if %{with libpcre}
BuildRequires: pkgconfig(libpcre2-8) >= 10.30
%else
-Provides: bundled(pcre2) = 10.32
+Provides: bundled(pcre2) = 10.39
%endif
%if %{with libxcrypt}
BuildRequires: pkgconfig(libxcrypt)
@@ -233,14 +247,12 @@ BuildRequires: /bin/ps
BuildRequires: tzdata
%endif
-%if 0%{?rhel}
-Obsoletes: php53, php53u, php54w, php55u, php55w, php56u, php56w, mod_php70u, php70w, mod_php71u, mod_php71w, mod_php72u, mod_php72w
+%if 0%{?rhel} == 7
+Obsoletes: php53, php53u, php54, php54w, php55u, php55w, php56u, php56w, mod_php70u, php70w, mod_php71u, mod_php71w, mod_php72u, mod_php72w
Obsoletes: mod_php73, mod_php73w
Obsoletes: mod_php74, mod_php74w
Obsoletes: mod_php80
%endif
-# Avoid obsoleting php54 from RHSCL
-Obsoletes: php54 > 5.4
%if %{with zts}
Obsoletes: php-zts < 5.3.7
Provides: php-zts = %{version}-%{release}
@@ -296,7 +308,7 @@ Requires: php-common%{?_isa} = %{version}-%{release}
Provides: php-cgi = %{version}-%{release}, php-cgi%{?_isa} = %{version}-%{release}
Provides: php-pcntl, php-pcntl%{?_isa}
Provides: php-readline, php-readline%{?_isa}
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-cli, php53u-cli, php54-cli, php54w-cli, php55u-cli, php55w-cli, php56u-cli, php56w-cli
Obsoletes: php70u-cli, php70w-cli, php71u-cli, php71w-cli, php72u-cli, php72w-cli
Obsoletes: php73-cli, php73w-cli
@@ -312,7 +324,7 @@ executing PHP scripts, /usr/bin/php, and the CGI interface.
%package dbg
Summary: The interactive PHP debugger
Requires: php-common%{?_isa} = %{version}-%{release}
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php56u-dbg, php56w-phpdbg, php70u-dbg, php70w-phpdbg, php71u-dbg, php71w-phpdbg, php72u-dbg, php72w-phpdbg
Obsoletes: php73-dbg, php73w-phpdbg
Obsoletes: php74-dbg, php74w-phpdbg
@@ -327,7 +339,6 @@ Summary: PHP FastCGI Process Manager
BuildRequires: libacl-devel
BuildRequires: pkgconfig(libsystemd) >= 209
Requires: php-common%{?_isa} = %{version}-%{release}
-Requires(pre): /usr/sbin/useradd
%{?systemd_requires}
# This is actually needed for the %%triggerun script but Requires(triggerun)
# is not valid. We can use %%post because this particular %%triggerun script
@@ -341,13 +352,15 @@ Requires(pre): httpd-filesystem
Requires: httpd-filesystem >= 2.4.10
# php engine for Apache httpd webserver
Provides: php(httpd)
+%else
+Requires(pre): /usr/sbin/useradd
%endif
%if %{with_nginx}
# for /etc/nginx ownership
# Temporarily not mandatory to allow nginx for nginx repo
Recommends: nginx-filesystem
%endif
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-fpm, php53u-fpm, php54-fpm, php54w-fpm, php55u-fpm, php55w-fpm, php56u-fpm, php56w-fpm
Obsoletes: php70u-fpm, php70w-fpm, php71u-fpm, php71w-fpm, php72u-fpm, php72w-fpm
Obsoletes: php73-fpm, php73w-fpm
@@ -364,7 +377,7 @@ any size, especially busier sites.
%package litespeed
Summary: LiteSpeed Web Server PHP support
Requires: php-common%{?_isa} = %{version}-%{release}
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-litespeed, php53u-litespeed, php54-litespeed, php54w-litespeed, php55u-litespeed, php55w-litespeed, php56u-litespeed, php56w-litespeed
Obsoletes: php70u-litespeed, php70w-litespeed, php71u-litespeed, php71w-litespeed, php72u-litespeed, php72w-litespeed
Obsoletes: php73-litespeed, php73w-litespeed
@@ -383,6 +396,15 @@ Summary: Common files for PHP
# fileinfo is licensed under PHP version 3.0
# regex, libmagic are licensed under BSD
License: PHP and BSD
+
+%if %{with tzdata}
+Requires: tzdata
+%endif
+%if %{with libpcre}
+%global pcre2_buildver %(pkg-config --silence-errors --modversion libpcre2-8 2>/dev/null || echo 10.30)
+Requires: pcre2%{?_isa} >= %{pcre2_buildver}
+%endif
+
# ABI/API check - Arch specific
Provides: php(api) = %{apiver}-%{__isa_bits}
Provides: php(zend-abi) = %{zendver}-%{__isa_bits}
@@ -425,7 +447,7 @@ Obsoletes: php-pecl-Fileinfo < 1.0.5
Provides: php-pecl-Fileinfo = %{fileinfover}, php-pecl-Fileinfo%{?_isa} = %{fileinfover}
Provides: php-pecl(Fileinfo) = %{fileinfover}, php-pecl(Fileinfo)%{?_isa} = %{fileinfover}
Obsoletes: php-mhash < 5.3.0
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-mhash, php53u-mhash
Obsoletes: php53-common, php53u-common, php54-common, php54w-common, php55u-common, php55w-common, php56u-common, php56w-common
Obsoletes: php70u-common, php70w-common, php71u-common, php71w-common, php72u-common, php72w-common
@@ -467,14 +489,13 @@ Requires: openssl-devel%{?_isa} >= 1.0.2
Requires: pcre2-devel%{?_isa}
%endif
Requires: zlib-devel%{?_isa}
-Obsoletes: php-pecl-pdo-devel
Obsoletes: php-pecl-json-devel < %{version}
Obsoletes: php-pecl-jsonc-devel < %{version}
%if %{with zts}
Provides: php-zts-devel = %{version}-%{release}
Provides: php-zts-devel%{?_isa} = %{version}-%{release}
%endif
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-devel, php53u-devel, php54-devel, php54w-devel, php55u-devel, php55w-devel, php56u-devel, php56w-devel
Obsoletes: php55u-pecl-jsonc-devel, php56u-pecl-jsonc-devel
Obsoletes: php70u-devel, php70w-devel, php71u-devel, php71w-devel, php72u-devel, php72w-devel
@@ -495,12 +516,12 @@ need to install this package.
Summary: The Zend OPcache
License: PHP
Requires: php-common%{?_isa} = %{version}-%{release}
-Obsoletes: php-pecl-zendopcache
+Obsoletes: php-pecl-zendopcache < 7.0.6
Provides: php-pecl-zendopcache = %{version}
Provides: php-pecl-zendopcache%{?_isa} = %{version}
Provides: php-pecl(opcache) = %{version}
Provides: php-pecl(opcache)%{?_isa} = %{version}
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php55u-opcache, php55w-opcache, php56u-opcache, php56w-opcache
Obsoletes: php70u-opcache, php70w-opcache, php71u-opcache, php71w-opcache, php72u-opcache, php72w-opcache
Obsoletes: php73-opcache, php73w-opcache
@@ -515,17 +536,17 @@ bytecode in the shared memory. This eliminates the stages of reading code from
the disk and compiling it on future access. In addition, it applies a few
bytecode optimization patterns that make code execution faster.
+%if %{with imap}
%package imap
Summary: A module for PHP applications that use IMAP
# All files licensed under PHP version 3.01
License: PHP
Requires: php-common%{?_isa} = %{version}-%{release}
-Obsoletes: mod_php3-imap, stronghold-php-imap
BuildRequires: pkgconfig(krb5)
BuildRequires: pkgconfig(krb5-gssapi)
BuildRequires: openssl-devel >= 1.0.2
BuildRequires: libc-client-devel
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-imap, php53u-imap, php54-imap, php54w-imap, php55u-imap, php55w-imap, php56u-imap, php56w-imap
Obsoletes: php70u-imap, php70w-imap, php71u-imap, php71w-imap, php72u-imap, php72w-imap
Obsoletes: php73-imap, php73w-imap
@@ -537,6 +558,7 @@ Obsoletes: php80-imap
The php-imap module will add IMAP (Internet Message Access Protocol)
support to PHP. IMAP is a protocol for retrieving and uploading e-mail
messages on mail servers. PHP is an HTML-embedded scripting language.
+%endif
%package ldap
Summary: A module for PHP applications that use LDAP
@@ -546,7 +568,7 @@ Requires: php-common%{?_isa} = %{version}-%{release}
BuildRequires: pkgconfig(libsasl2)
BuildRequires: openldap-devel
BuildRequires: openssl-devel >= 1.0.2
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-ldap, php53u-ldap, php54-ldap, php54w-ldap, php55u-ldap, php55w-ldap, php56u-ldap, php56w-ldap
Obsoletes: php70u-ldap, php70w-ldap, php71u-ldap, php71w-ldap, php72u-ldap, php72w-ldap
Obsoletes: php73-ldap, php73w-ldap
@@ -570,7 +592,7 @@ Provides: php-pdo-abi = %{pdover}-%{__isa_bits}
Provides: php(pdo-abi) = %{pdover}-%{__isa_bits}
Provides: php-sqlite3, php-sqlite3%{?_isa}
Provides: php-pdo_sqlite, php-pdo_sqlite%{?_isa}
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-pdo, php53u-pdo, php54-pdo, php54w-pdo, php55u-pdo, php55w-pdo, php56u-pdo, php56w-pdo
Obsoletes: php70u-pdo, php70w-pdo, php71u-pdo, php71w-pdo, php72u-pdo, php72w-pdo
Obsoletes: php73-pdo, php73w-pdo
@@ -594,7 +616,7 @@ Provides: php-mysqli = %{version}-%{release}
Provides: php-mysqli%{?_isa} = %{version}-%{release}
Provides: php-pdo_mysql, php-pdo_mysql%{?_isa}
Obsoletes: php-mysql < %{version}-%{release}
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-mysqlnd, php53u-mysqlnd, php54-mysqlnd, php54w-mysqlnd, php55u-mysqlnd, php55w-mysqlnd, php56u-mysqlnd, php56w-mysqlnd
Obsoletes: php70u-mysqlnd, php70w-mysqlnd, php71u-mysqlnd, php71w-mysqlnd, php72u-mysqlnd, php72w-mysqlnd
Obsoletes: php73-mysqlnd, php73w-mysqlnd
@@ -623,7 +645,7 @@ Provides: php-pdo_pgsql, php-pdo_pgsql%{?_isa}
BuildRequires: krb5-devel
BuildRequires: openssl-devel >= 1.0.2
BuildRequires: postgresql-devel
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-pgsql, php53u-pgsql, php54-pgsql, php54w-pgsql, php55u-pgsql, php55w-pgsql, php56u-pgsql, php56w-pgsql
Obsoletes: php70u-pgsql, php70w-pgsql, php71u-pgsql, php71w-pgsql, php72u-pgsql, php72w-pgsql
Obsoletes: php73-pgsql, php73w-pgsql
@@ -649,7 +671,7 @@ Provides: php-shmop, php-shmop%{?_isa}
Provides: php-sysvsem, php-sysvsem%{?_isa}
Provides: php-sysvshm, php-sysvshm%{?_isa}
Provides: php-sysvmsg, php-sysvmsg%{?_isa}
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-process, php53u-process, php54-process, php54w-process, php55u-process, php55w-process, php56u-process, php56w-process
Obsoletes: php70u-process, php70w-process, php71u-process, php71w-process, php72u-process, php72w-process
Obsoletes: php73-process, php73w-process
@@ -672,7 +694,7 @@ Provides: php_database
Provides: php-pdo_odbc, php-pdo_odbc%{?_isa}
# EL-7 version don't have pkgconfig
BuildRequires: unixODBC-devel
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-odbc, php53u-odbc, php54-odbc, php54w-odbc, php55u-odbc, php55w-odbc, php56u-odbc, php56w-odbc
Obsoletes: php70u-odbc, php70w-odbc, php71u-odbc, php71w-odbc, php72u-odbc, php72w-odbc
Obsoletes: php73-odbc, php73w-odbc
@@ -695,7 +717,7 @@ Summary: A module for PHP applications that use the SOAP protocol
License: PHP
Requires: php-common%{?_isa} = %{version}-%{release}
BuildRequires: pkgconfig(libxml-2.0)
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-soap, php53u-soap, php54-soap, php54w-soap, php55u-soap, php55w-soap, php56u-soap, php56w-soap
Obsoletes: php70u-soap, php70w-soap, php71u-soap, php71w-soap, php72u-soap, php72w-soap
Obsoletes: php73-soap, php73w-soap
@@ -716,7 +738,7 @@ BuildRequires: firebird-devel
Requires: php-pdo%{?_isa} = %{version}-%{release}
Provides: php_database
Provides: php-pdo_firebird, php-pdo_firebird%{?_isa}
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-interbase, php53u-interbase, php54-interbase, php54w-interbase, php55u-interbase, php55w-interbase, php56u-interbase, php56w-interbase
Obsoletes: php70u-interbase, php70w-interbase, php71u-interbase, php71w-interbase, php72u-interbase, php72w-interbase
Obsoletes: php73-interbase, php73w-interbase
@@ -734,7 +756,14 @@ Interbase/Firebird databases.
Summary: A module for PHP applications that use OCI8 databases
# All files licensed under PHP version 3.01
License: PHP
+%ifarch aarch64
+BuildRequires: oracle-instantclient%{oraclever}-devel
+# Should requires libclntsh.so.19.1()(aarch-64), but it's not provided by Oracle RPM.
+Requires: libclntsh.so.%{oraclelib}
+AutoReq: 0
+%else
BuildRequires: oracle-instantclient-devel >= %{oraclever}
+%endif
Requires: php-pdo%{?_isa} = %{version}-%{release}
Provides: php_database
Provides: php-pdo_oci
@@ -743,9 +772,7 @@ Obsoletes: php-pecl-oci8 <= %{oci8ver}
Conflicts: php-pecl-oci8 > %{oci8ver}
Provides: php-pecl(oci8) = %{oci8ver}
Provides: php-pecl(oci8)%{?_isa} = %{oci8ver}
-# Should requires libclntsh.so.18.3, but it's not provided by Oracle RPM.
-AutoReq: 0
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-oci8, php53u-oci8, php54-oci8, php54w-oci8, php55u-oci8, php55w-oci8, php56u-oci8, php56w-oci8
Obsoletes: php70u-oci8, php70w-oci8, php71u-oci8, php71w-oci8, php72u-oci8, php72w-oci8
Obsoletes: php73-oci8, php73w-oci8
@@ -761,13 +788,9 @@ The extension is linked with Oracle client libraries %{oraclever}
(Oracle Instant Client). For details, see Oracle's note
"Oracle Client / Server Interoperability Support" (ID 207303.1).
-You must install libclntsh.so.%{oraclelib} to use this package, provided
-in the database installation, or in the free Oracle Instant Client
-available from Oracle.
-
-Notice:
-- php-oci8 provides oci8 and pdo_oci extensions from php sources.
-- php-pecl-oci8 only provides oci8 extension.
+You must install libclntsh.so.%{oraclelib} to use this package,
+provided by Oracle Instant Client RPM available from Oracle on:
+https://www.oracle.com/database/technologies/instant-client/downloads.html
Documentation is at http://php.net/oci8 and http://php.net/pdo_oci
%endif
@@ -778,7 +801,7 @@ Summary: A module for PHP applications that query SNMP-managed devices
License: PHP
Requires: php-common%{?_isa} = %{version}-%{release}, net-snmp
BuildRequires: net-snmp-devel
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-snmp, php53u-snmp, php54-snmp, php54w-snmp, php55u-snmp, php55w-snmp, php56u-snmp, php56w-snmp
Obsoletes: php70u-snmp, php70w-snmp, php71u-snmp, php71w-snmp, php72u-snmp, php72w-snmp
Obsoletes: php73-snmp, php73w-snmp
@@ -806,7 +829,7 @@ Provides: php-xsl, php-xsl%{?_isa}
BuildRequires: pkgconfig(libxslt) >= 1.1
BuildRequires: pkgconfig(libexslt)
BuildRequires: pkgconfig(libxml-2.0) >= 2.7.6
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-xml, php53u-xml, php54-xml, php54w-xml, php55u-xml, php55w-xml, php56u-xml, php56w-xml
Obsoletes: php70u-xml, php70w-xml, php71u-xml, php71w-xml, php72u-xml, php72w-xml
Obsoletes: php73-xml, php73w-xml
@@ -833,7 +856,7 @@ BuildRequires: oniguruma-devel
%endif
Provides: bundled(libmbfl) = 1.3.2
Requires: php-common%{?_isa} = %{version}-%{release}
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-mbstring, php53u-mbstring, php54-mbstring, php54w-mbstring, php55u-mbstring, php55w-mbstring, php56u-mbstring, php56w-mbstring
Obsoletes: php70u-mbstring, php70w-mbstring, php71u-mbstring, php71w-mbstring, php72u-mbstring, php72w-mbstring
Obsoletes: php73-mbstring, php73w-mbstring
@@ -868,7 +891,7 @@ BuildRequires: pkgconfig(libwebp)
BuildRequires: pkgconfig(libavif)
Provides: bundled(gd) = 2.0.35
%endif
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-gd, php53u-gd, php54-gd, php54w-gd, php55u-gd, php55w-gd, php56u-gd, php56w-gd
Obsoletes: php70u-gd, php70w-gd, php71u-gd, php71w-gd, php72u-gd, php72w-gd
Obsoletes: php73-gd, php73w-gd
@@ -886,7 +909,7 @@ Summary: A module for PHP applications for using the bcmath library
# libbcmath is licensed under LGPLv2+
License: PHP and LGPLv2+
Requires: php-common%{?_isa} = %{version}-%{release}
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-bcmath, php53u-bcmath, php54-bcmath, php54w-bcmath, php55u-bcmath, php55w-bcmath, php56u-bcmath, php56w-bcmath
Obsoletes: php70u-bcmath, php70w-bcmath, php71u-bcmath, php71w-bcmath, php72u-bcmath, php72w-bcmath
Obsoletes: php73-bcmath, php73w-bcmath
@@ -905,7 +928,7 @@ Summary: A module for PHP applications for using the GNU MP library
License: PHP
BuildRequires: gmp-devel
Requires: php-common%{?_isa} = %{version}-%{release}
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-gmp, php53u-gmp, php54-gmp, php54w-gmp, php55u-gmp, php55w-gmp, php56u-gmp, php56w-gmp
Obsoletes: php70u-gmp, php70w-gmp, php71u-gmp, php71w-gmp, php72u-gmp, php72w-gmp
Obsoletes: php73-gmp, php73w-gmp
@@ -928,7 +951,7 @@ BuildRequires: lmdb-devel
BuildRequires: qdbm-devel
%endif
Requires: php-common%{?_isa} = %{version}-%{release}
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-dba, php53u-dba, php54-dba, php54w-dba, php55u-dba, php55w-dba, php56u-dba, php56w-dba
Obsoletes: php70u-dba, php70w-dba, php71u-dba, php71w-dba, php72u-dba, php72w-dba
Obsoletes: php73-dba, php73w-dba
@@ -946,7 +969,7 @@ Summary: Standard PHP module provides tidy library support
License: PHP
Requires: php-common%{?_isa} = %{version}-%{release}
BuildRequires: libtidy-devel
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-tidy, php53u-tidy, php54-tidy, php54w-tidy, php55u-tidy, php55w-tidy, php56u-tidy, php56w-tidy
Obsoletes: php70u-tidy, php70w-tidy, php71u-tidy, php71w-tidy, php72u-tidy, php72w-tidy
Obsoletes: php73-tidy, php73w-tidy
@@ -966,7 +989,7 @@ Requires: php-pdo%{?_isa} = %{version}-%{release}
BuildRequires: freetds-devel >= 0.91
Provides: php-pdo_dblib, php-pdo_dblib%{?_isa}
Obsoletes: php-mssql < %{version}-%{release}
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-mssql, php53u-mssql, php54-mssql, php54w-mssql, php55u-mssql, php55w-mssql, php56u-mssql, php56w-mssql
Obsoletes: php70u-pdo-dblib, php70w-pdo_dblib, php71u-pdo-dblib, php71w-pdo_dblib, php72u-pdo-dblib, php72w-pdo_dblib
Obsoletes: php73-pdo-dblib, php73w-pdo_dblib
@@ -985,7 +1008,7 @@ Requires: php-common%{?_isa} = %{version}-%{release}
# doing a real -devel package for just the .so symlink is a bit overkill
Provides: php-embedded-devel = %{version}-%{release}
Provides: php-embedded-devel%{?_isa} = %{version}-%{release}
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-embedded, php53u-embedded, php54-embedded, php54w-embedded, php55u-embedded, php55w-embedded, php56u-embedded, php56w-embedded
Obsoletes: php70u-embedded, php70w-embedded, php71u-embedded, php71w-embedded, php72u-embedded, php72w-embedded
Obsoletes: php73-embedded, php73w-embedded
@@ -1003,7 +1026,7 @@ Summary: A module for PHP applications for using pspell interfaces
License: PHP
Requires: php-common%{?_isa} = %{version}-%{release}
BuildRequires: aspell-devel >= 0.50.0
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-pspell, php53u-pspell, php54-pspell, php54w-pspell, php55u-pspell, php55w-pspell, php56u-pspell, php56w-pspell
Obsoletes: php70u-pspell, php70w-pspell, php71u-pspell, php71w-pspell, php72u-pspell, php72w-pspell
Obsoletes: php73-pspell, php73w-pspell
@@ -1020,10 +1043,10 @@ Summary: Internationalization extension for PHP applications
# All files licensed under PHP version 3.01
License: PHP
Requires: php-common%{?_isa} = %{version}-%{release}
-BuildRequires: pkgconfig(icu-i18n) >= 69
-BuildRequires: pkgconfig(icu-io) >= 69
-BuildRequires: pkgconfig(icu-uc) >= 69
-%if 0%{?rhel}
+BuildRequires: pkgconfig(icu-i18n) >= 73
+BuildRequires: pkgconfig(icu-io) >= 73
+BuildRequires: pkgconfig(icu-uc) >= 73
+%if 0%{?rhel} == 7
Obsoletes: php53-intl, php53u-intl, php54-intl, php54w-intl, php55u-intl, php55w-intl, php56u-intl, php56w-intl
Obsoletes: php70u-intl, php70w-intl, php71u-intl, php71w-intl, php72u-intl, php72w-intl
Obsoletes: php73-intl, php73w-intl
@@ -1041,7 +1064,7 @@ Summary: Enchant spelling extension for PHP applications
License: PHP
Requires: php-common%{?_isa} = %{version}-%{release}
BuildRequires: pkgconfig(enchant-2)
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-enchant, php53u-enchant, php54-enchant, php54w-enchant, php55u-enchant, php55w-enchant, php56u-enchant, php56w-enchant
Obsoletes: php70u-enchant, php70w-enchant, php71u-enchant, php71w-enchant, php72u-enchant, php72w-enchant
Obsoletes: php73-enchant, php73w-enchant
@@ -1064,7 +1087,7 @@ Provides: php-pecl(zip) = %{zipver}
Provides: php-pecl(zip)%{?_isa} = %{zipver}
Provides: php-pecl-zip = %{zipver}
Provides: php-pecl-zip%{?_isa} = %{zipver}
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php53-zip, php53u-zip, php54-zip, php54w-zip, php55u-zip, php55w-zip, php56u-zip, php56w-zip
Obsoletes: php70u-zip, php70w-zip, php71u-zip, php71w-zip, php72u-zip, php72w-zip
Obsoletes: php73-zip, php73w-zip
@@ -1089,7 +1112,7 @@ Requires: php-common%{?_isa} = %{version}-%{release}
Obsoletes: php-pecl-libsodium2 < 3
Provides: php-pecl(libsodium) = %{version}
Provides: php-pecl(libsodium)%{?_isa} = %{version}
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php72u-sodium, php72w-sodium
Obsoletes: php73-sodium, php73w-sodium
Obsoletes: php74-sodium, php74w-sodium
@@ -1108,7 +1131,7 @@ License: PHP
BuildRequires: pkgconfig(libffi)
Requires: php-common%{?_isa} = %{version}-%{release}
-%if 0%{?rhel}
+%if 0%{?rhel} == 7
Obsoletes: php74-ffi, php74w-ffi
Obsoletes: php80-ffi
%endif
@@ -1163,34 +1186,35 @@ in pure PHP.
%setup -q -n php-%{upver}%{?rcver}
-%patch1 -p1 -b .mpmcheck
-%patch5 -p1 -b .includedir
-%patch6 -p1 -b .embed
-%patch8 -p1 -b .libdb
-%if 0%{?rhel}
-%patch10 -p1 -b .curltls
+%patch -P1 -p1 -b .mpmcheck
+%patch -P5 -p1 -b .includedir
+%patch -P6 -p1 -b .embed
+%patch -P8 -p1 -b .libdb
+%patch -P9 -p1 -b .libxml212
+%if 0%{?rhel} == 7
+%patch -P10 -p1 -b .curltls
%endif
-%patch41 -p1 -b .syslib
+%patch -P41 -p1 -b .syslib
%if %{with tzdata}
-%patch42 -p1 -b .systzdata
+%patch -P42 -p1 -b .systzdata
%endif
-%patch43 -p1 -b .headers
-%patch45 -p1 -b .ldap_r
-%patch46 -p1 -b .argon2
-%patch47 -p1 -b .phpinfo
+%patch -P43 -p1 -b .headers
+%patch -P45 -p1 -b .ldap_r
+%patch -P46 -p1 -b .argon2
+%patch -P47 -p1 -b .phpinfo
-%patch91 -p1 -b .remi-oci8
+%patch -P91 -p1 -b .remi-oci8
# upstream patches
-%patch100 -p1 -b .up
# security patches
# Fixes for tests related to tzdata
%if %{with tzdata}
-%patch300 -p1 -b .datetests
+%patch -P300 -p1 -b .datetests
%endif
+%patch -P301 -p1 -b .zlibng
# WIP patch
@@ -1217,6 +1241,10 @@ mkdir build-cgi build-apache build-embedded \
rm ext/date/tests/timezone_location_get.phpt
rm ext/date/tests/bug80963.phpt
%endif
+%if 0%{?fedora} < 36
+# need tzdata 2022b
+rm ext/date/tests/bug33415-2.phpt
+%endif
# too fast builder
rm ext/date/tests/bug73837.phpt
# Should be skipped but fails sometime
@@ -1230,6 +1258,9 @@ rm Zend/tests/bug68412.phpt
rm sapi/cli/tests/upload_2G.phpt
# tar issue
rm ext/zlib/tests/004-mb.phpt
+# failed when systemd is enabled
+rm sapi/fpm/tests/gh8885-stderr-fd-reload-usr1.phpt
+rm sapi/fpm/tests/gh8885-stderr-fd-reload-usr2.phpt
# avoid issue when 2 builds run simultaneously (keep 64321 for the SCL)
%ifarch x86_64
sed -e 's/64321/64322/' -i ext/openssl/tests/*.phpt
@@ -1422,7 +1453,9 @@ build --libdir=%{_libdir}/php \
--enable-opcache \
--enable-opcache-file \
--enable-phpdbg \
+%if %{with imap}
--with-imap=shared --with-imap-ssl \
+%endif
--enable-mbstring=shared \
--enable-mbregex \
--enable-gd=shared \
@@ -1456,13 +1489,8 @@ build --libdir=%{_libdir}/php \
--with-mysqli=shared,mysqlnd \
--with-mysql-sock=%{mysql_sock} \
%if %{with oci8}
-%ifarch x86_64
- --with-oci8=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client64/lib,%{oraclever} \
- --with-pdo-oci=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client64/lib,%{oraclever} \
-%else
- --with-oci8=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client/lib,%{oraclever} \
- --with-pdo-oci=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client/lib,%{oraclever} \
-%endif
+ --with-oci8=shared,instantclient,%{_prefix}/lib/oracle/%{oracledir}/client64/lib,%{oraclever} \
+ --with-pdo-oci=shared,instantclient,%{_prefix}/lib/oracle/%{oracledir}/client64/lib,%{oraclever} \
%endif
%if %{with firebird}
--with-pdo-firebird=shared \
@@ -1562,7 +1590,9 @@ build --includedir=%{_includedir}/php-zts \
--enable-pcntl \
--enable-opcache \
--enable-opcache-file \
+%if %{with imap}
--with-imap=shared --with-imap-ssl \
+%endif
--enable-mbstring=shared \
--enable-mbregex \
--enable-gd=shared \
@@ -1597,13 +1627,8 @@ build --includedir=%{_includedir}/php-zts \
--with-mysql-sock=%{mysql_sock} \
--enable-mysqlnd-threading \
%if %{with oci8}
-%ifarch x86_64
- --with-oci8=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client64/lib,%{oraclever} \
- --with-pdo-oci=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client64/lib,%{oraclever} \
-%else
- --with-oci8=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client/lib,%{oraclever} \
- --with-pdo-oci=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client/lib,%{oraclever} \
-%endif
+ --with-oci8=shared,instantclient,%{_prefix}/lib/oracle/%{oracledir}/client64/lib,%{oraclever} \
+ --with-pdo-oci=shared,instantclient,%{_prefix}/lib/oracle/%{oracledir}/client64/lib,%{oraclever} \
%endif
%if %{with firebird}
--with-pdo-firebird=shared \
@@ -1778,8 +1803,8 @@ install -m 755 -d $RPM_BUILD_ROOT/run/php-fpm
install -m 755 -d $RPM_BUILD_ROOT%{_sysconfdir}/systemd/system/php-fpm.service.d
install -Dm 644 %{SOURCE6} $RPM_BUILD_ROOT%{_unitdir}/php-fpm.service
%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
-install -Dm 644 %{SOURCE12} $RPM_BUILD_ROOT%{_unitdir}/httpd.service.d/php-fpm.conf
-install -Dm 644 %{SOURCE12} $RPM_BUILD_ROOT%{_unitdir}/nginx.service.d/php-fpm.conf
+install -Dm 644 %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/systemd/system/httpd.service.d/php-fpm.conf
+install -Dm 644 %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/systemd/system/nginx.service.d/php-fpm.conf
%endif
%if 0%{?fedora} >= 26 || 0%{?rhel} >= 8
@@ -1817,7 +1842,10 @@ done
TESTCMD="$TESTCMD --define extension_dir=$RPM_BUILD_ROOT%{_libdir}/php/modules"
# Generate files lists and stub .ini files for each subpackage
-for mod in pgsql odbc ldap snmp imap \
+for mod in pgsql odbc ldap snmp \
+%if %{with imap}
+ imap \
+%endif
mysqlnd mysqli \
mbstring gd dom xsl soap bcmath dba \
simplexml bz2 calendar ctype exif ftp gettext gmp iconv \
@@ -1934,7 +1962,7 @@ sed -e "s/@PHP_APIVER@/%{apiver}-%{__isa_bits}/" \
%endif
< %{SOURCE3} > macros.php
%if 0%{?fedora} >= 24 || 0%{?rhel} >= 8
-echo '%%pecl_xmldir %{_localstatedir}/lib/php/peclxml' >>macros.php
+echo '%%pecl_xmldir %%{_localstatedir}/lib/php/peclxml' >>macros.php
%endif
install -m 644 -D macros.php \
$RPM_BUILD_ROOT%{macrosdir}/macros.php
@@ -2096,8 +2124,8 @@ fi
%endif
%{_unitdir}/php-fpm.service
%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
-%{_unitdir}/httpd.service.d/php-fpm.conf
-%{_unitdir}/nginx.service.d/php-fpm.conf
+%config(noreplace) %{_sysconfdir}/systemd/system/httpd.service.d/php-fpm.conf
+%config(noreplace) %{_sysconfdir}/systemd/system/nginx.service.d/php-fpm.conf
%endif
%dir %{_sysconfdir}/systemd/system/php-fpm.service.d
%dir %ghost /run/php-fpm
@@ -2134,7 +2162,9 @@ fi
%files pgsql -f files.pgsql
%files odbc -f files.odbc
+%if %{with imap}
%files imap -f files.imap
+%endif
%files ldap -f files.ldap
%files snmp -f files.snmp
%files xml -f files.xml
@@ -2174,6 +2204,158 @@ fi
%changelog
+* Wed Apr 10 2024 Remi Collet <remi@remirepo.net> - 8.1.28-1
+- Update to 8.1.28 - http://www.php.net/releases/8_1_28.php
+
+* Wed Mar 6 2024 Remi Collet <remi@remirepo.net> - 8.1.27-2
+- use oracle client library version 21.13 on x86_64
+- patch test suite for zlib-ng
+
+* Wed Dec 20 2023 Remi Collet <remi@remirepo.net> - 8.1.27-1
+- Update to 8.1.27 - http://www.php.net/releases/8_1_27.php
+
+* Tue Dec 5 2023 Remi Collet <remi@remirepo.net> - 8.1.27~RC1-1
+- update to 8.1.27RC1
+- add fixes for libxml 2.12 from 8.2
+
+* Wed Nov 22 2023 Remi Collet <remi@remirepo.net> - 8.1.26-1
+- Update to 8.1.26 - http://www.php.net/releases/8_1_26.php
+
+* Wed Nov 8 2023 Remi Collet <remi@remirepo.net> - 8.1.26~RC1-1
+- update to 8.1.26RC1
+- use oracle client library version 21.12 on x86_64
+- use ICU 73.2
+
+* Wed Oct 25 2023 Remi Collet <remi@remirepo.net> - 8.1.25-1
+- Update to 8.1.25 - http://www.php.net/releases/8_1_25.php
+
+* Wed Oct 11 2023 Remi Collet <remi@remirepo.net> - 8.1.25~RC1-1
+- update to 8.1.25RC1
+- add internal UTC if tzdata is missing
+
+* Wed Sep 27 2023 Remi Collet <remi@remirepo.net> - 8.1.24-1
+- Update to 8.1.24 - http://www.php.net/releases/8_1_24.php
+
+* Thu Sep 21 2023 Remi Collet <remi@remirepo.net> - 8.1.24~RC1-2
+- use oracle client library version 19.19 on aarch64
+- use official Oracle Instant Client RPM
+
+* Wed Sep 13 2023 Remi Collet <remi@remirepo.net> - 8.1.24~RC1-1
+- update to 8.1.24RC1
+- use oracle client library version 21.11
+
+* Wed Aug 30 2023 Remi Collet <remi@remirepo.net> - 8.1.23-1
+- Update to 8.1.23 - http://www.php.net/releases/8_1_23.php
+
+* Thu Aug 17 2023 Remi Collet <remi@remirepo.net> - 8.1.23~RC1-1
+- update to 8.1.23RC1
+
+* Wed Aug 2 2023 Remi Collet <remi@remirepo.net> - 8.1.22-1
+- Update to 8.1.22 - http://www.php.net/releases/8_1_22.php
+
+* Wed Jul 19 2023 Remi Collet <remi@remirepo.net> - 8.1.22~RC1-1
+- update to 8.1.22RC1
+- move httpd/nginx wants directive to config files in /etc
+
+* Wed Jul 5 2023 Remi Collet <remi@remirepo.net> - 8.1.21-1
+- Update to 8.1.21 - http://www.php.net/releases/8_1_21.php
+
+* Tue Jun 20 2023 Remi Collet <remi@remirepo.net> - 8.1.21~RC1-1
+- update to 8.1.21RC1
+
+* Wed Jun 7 2023 Remi Collet <remi@remirepo.net> - 8.1.20-1
+- Update to 8.1.20 - http://www.php.net/releases/8_1_20.php
+
+* Wed May 24 2023 Remi Collet <remi@remirepo.net> - 8.1.20~RC1-1
+- update to 8.1.20RC1
+
+* Wed May 10 2023 Remi Collet <remi@remirepo.net> - 8.1.19-1
+- Update to 8.1.19 - http://www.php.net/releases/8_1_19.php
+
+* Tue Apr 25 2023 Remi Collet <remi@remirepo.net> - 8.1.19~RC1-2
+- define %%__phpize and %%__phpconfig
+
+* Tue Apr 25 2023 Remi Collet <remi@remirepo.net> - 8.1.19~RC1-1
+- update to 8.1.19RC1
+- use oracle client library version 21.10
+- use ICU 72.1
+
+* Wed Apr 12 2023 Remi Collet <remi@remirepo.net> - 8.1.18-1
+- Update to 8.1.18 - http://www.php.net/releases/8_1_18.php
+
+* Thu Mar 30 2023 Remi Collet <remi@remirepo.net> - 8.1.18~RC1-1
+- update to 8.1.18RC1
+
+* Wed Mar 15 2023 Remi Collet <remi@remirepo.net> - 8.1.17-1
+- Update to 8.1.17 - http://www.php.net/releases/8_1_17.php
+
+* Wed Mar 1 2023 Remi Collet <remi@remirepo.net> - 8.1.17~RC1-1
+- update to 8.1.17RC1
+
+* Tue Feb 21 2023 Remi Collet <remi@remirepo.net> - 8.1.16-2
+- F38: enable imap extension
+
+* Tue Feb 14 2023 Remi Collet <remi@remirepo.net> - 8.1.16-1
+- Update to 8.1.16 - http://www.php.net/releases/8_1_16.php
+
+* Fri Feb 10 2023 Remi Collet <remi@remirepo.net> - 8.1.15-2
+- F38: disable imap extension
+
+* Wed Feb 1 2023 Remi Collet <remi@remirepo.net> - 8.1.15-1
+- Update to 8.1.15 - http://www.php.net/releases/8_1_15.php
+- add dependency on pcre2 minimal version
+
+* Wed Jan 18 2023 Remi Collet <remi@remirepo.net> - 8.1.15~RC1-1
+- update to 8.1.15RC1
+
+* Thu Jan 5 2023 Remi Collet <remi@remirepo.net> - 8.1.14-2
+- rebuild with new sources archive
+
+* Wed Jan 4 2023 Remi Collet <remi@remirepo.net> - 8.1.14-1
+- Update to 8.1.14 - http://www.php.net/releases/8_1_14.php
+
+* Mon Dec 12 2022 Remi Collet <remi@remirepo.net> - 8.1.14~RC1-1
+- update to 8.1.14RC1
+- use oracle client library version 21.8
+
+* Tue Nov 22 2022 Remi Collet <remi@remirepo.net> - 8.1.13-1
+- Update to 8.1.13 - http://www.php.net/releases/8_1_13.php
+
+* Wed Nov 9 2022 Remi Collet <remi@remirepo.net> - 8.1.13~RC1-1
+- update to 8.1.13RC1
+
+* Wed Oct 26 2022 Remi Collet <remi@remirepo.net> - 8.1.12-1
+- Update to 8.1.12 - http://www.php.net/releases/8_1_12.php
+
+* Wed Oct 12 2022 Remi Collet <remi@remirepo.net> - 8.1.12~RC1-1
+- update to 8.1.12RC1
+
+* Wed Sep 28 2022 Remi Collet <remi@remirepo.net> - 8.1.11-1
+- Update to 8.1.11 - http://www.php.net/releases/8_1_11.php
+
+* Wed Sep 14 2022 Remi Collet <remi@remirepo.net> - 8.1.11~RC1-1
+- update to 8.1.11RC1
+
+* Thu Sep 1 2022 Remi Collet <remi@remirepo.net> - 8.1.10-1
+- Update to 8.1.10 - http://www.php.net/releases/8_1_10.php
+
+* Wed Aug 17 2022 Remi Collet <remi@remirepo.net> - 8.1.10~RC1-1
+- update to 8.1.10RC1
+- use oracle client library version 21.7
+- use ICU 71.1
+
+* Tue Aug 2 2022 Remi Collet <remi@remirepo.net> - 8.1.9-1
+- Update to 8.1.9 - http://www.php.net/releases/8_1_9.php
+
+* Wed Jul 20 2022 Remi Collet <remi@remirepo.net> - 8.1.9~RC1-1
+- update to 8.1.9RC1
+
+* Wed Jul 6 2022 Remi Collet <remi@remirepo.net> - 8.1.8-1
+- Update to 8.1.8 - http://www.php.net/releases/8_1_8.php
+
+* Tue Jun 21 2022 Remi Collet <remi@remirepo.net> - 8.1.8~RC1-1
+- update to 8.1.8RC1
+
* Wed Jun 8 2022 Remi Collet <remi@remirepo.net> - 8.1.7-1
- Update to 8.1.7 - http://www.php.net/releases/8_1_7.php