# Conditional build:
# - General options:
-%bcond_without embed # disable building Embedded API
+%bcond_with embed # disable building Embedded API
%bcond_with gcov # Enable Code coverage reporting
%bcond_without kerberos5 # without Kerberos5 support
%bcond_with systemtap # systemtap/DTrace support
%bcond_without iconv # without iconv extension module
%bcond_without imap # without IMAP extension module
%bcond_without intl # without Intl extension module
-%bcond_without json # without json extension module
%bcond_without ldap # without LDAP extension module
%bcond_without mbstring # without mbstring extension module
%bcond_without mhash # without mhash extension (supported by hash extension)
%bcond_without sqlite2 # without SQLite extension module
%bcond_without sqlite3 # without SQLite3 extension module
%bcond_without tidy # without Tidy extension module
-%bcond_without xmlrpc # without XML-RPC extension module
%bcond_without xsl # without xsl extension module
%bcond_without zip # without zip extension module
# extensions options
%endif
%define orgname php
-%define php_suffix 74
+%define php_suffix 80
Summary: PHP: Hypertext Preprocessor
Summary(fr.UTF-8): Le langage de script embarque-HTML PHP
Summary(pl.UTF-8): Język skryptowy PHP
Summary(ru.UTF-8): PHP Версии 7 - язык препроцессирования HTML-файлов, выполняемый на сервере
Summary(uk.UTF-8): PHP Версії 7 - мова препроцесування HTML-файлів, виконувана на сервері
Name: %{orgname}%{php_suffix}
-Version: 7.4.10
-Release: 2
+Version: 8.0.14
+Release: 1
Epoch: 4
# All files licensed under PHP version 3.01, except
# Zend is licensed under Zend
License: PHP 3.01 and Zend and BSD
Group: Libraries
Source0: http://php.net/distributions/%{orgname}-%{version}.tar.xz
-# Source0-md5: 48cd5acc0bb3e81dbf9c98a343d6149c
+# Source0-md5: 3a263b6b98ff03fbdf3d9a19bdf93624
Source1: opcache.ini
Source2: %{orgname}-mod_php.conf
Source3: %{orgname}-cgi-fcgi.ini
Patch10: %{orgname}-ini.patch
Patch11: embed.patch
Patch14: %{orgname}-no_pear_install.patch
-Patch17: %{orgname}-readline.patch
Patch18: %{orgname}-nohttpd.patch
Patch21: %{orgname}-dba-link.patch
Patch22: %{orgname}-both-apxs.patch
Patch27: %{orgname}-config-dir.patch
Patch29: %{orgname}-fcgi-graceful.patch
Patch31: %{orgname}-fcgi-error_log-no-newlines.patch
-Patch37: %{orgname}-mysqli-charsetphpini.patch
-Patch38: %{orgname}-pdo_mysql-charsetphpini.patch
Patch39: %{orgname}-use-prog_sendmail.patch
Patch41: %{orgname}-fpm-config.patch
Patch43: %{orgname}-silent-session-cleanup.patch
%{?with_tidy:BuildRequires: tidy-devel}
BuildRequires: tokyocabinet-devel
%{?with_odbc:BuildRequires: unixODBC-devel}
-%{?with_xmlrpc:BuildRequires: xmlrpc-epi-devel >= 0.54.1}
BuildRequires: xz
BuildRequires: zlib-devel >= 1.2.0.4
%if %{with apache2}
%define _sysconfdir %{php_sysconfdir}
# must be in sync with source. extra check ensuring that it is so is done in %%build
-%define php_api_version 20190902
-%define zend_module_api 20190902
-%define zend_extension_api 320190902
+%define php_api_version 20200930
+%define zend_module_api 20200930
+%define zend_extension_api 420200930
%define php_pdo_api_version 20170320
# Extension versions
%define jsonver %{version}
%define pharver %{version}
%define sqlite3ver %{version}
-%define zipver 1.15.6
+%define zipver 1.19.5
%define phpdbgver %{version}
%define sodiumver %{version}
wykonywanie w skryptach porównań zgodnych z UCA oraz formatowania
daty/czasu/walut.
-%package json
-Summary: PHP C extension for JSON serialization
-Summary(pl.UTF-8): Rozszerzenie C PHP dla serializacji JSON
-Group: Libraries
-URL: http://php.net/manual/en/book.json.php
-Requires: %{name}-common = %{epoch}:%{version}-%{release}
-Provides: php(json) = %{jsonver}
-Obsoletes: php-json < 4:5.3.28-7
-Obsoletes: php-pecl-json < %{jsonver}
-
-%description json
-php-json is an extremely fast PHP C extension for JSON (JavaScript
-Object Notation) serialisation.
-
-%description json -l pl.UTF-8
-php-json to bardzo szybkie rozszerzenie C PHP dla serializacji JSON
-(JavaScript Object Notation).
-
%package ldap
Summary: LDAP extension module for PHP
Summary(pl.UTF-8): Moduł LDAP dla PHP
działa jako kursor przechodzący przez strumień dokumentu i
zatrzymujący się na każdym węźle po drodze.
-%package xmlrpc
-Summary: xmlrpc extension module for PHP
-Summary(pl.UTF-8): Moduł xmlrpc dla PHP
-Group: Libraries
-URL: http://php.net/manual/en/book.xmlrpc.php
-Requires: %{name}-common = %{epoch}:%{version}-%{release}
-Requires: %{name}-xml = %{epoch}:%{version}-%{release}
-Provides: php(xmlrpc)
-Obsoletes: php-xmlrpc < 4:5.3.28-7
-
-%description xmlrpc
-This is a dynamic shared object (DSO) for PHP that will add XMLRPC
-support.
-
-%description xmlrpc -l pl.UTF-8
-Moduł PHP dodający obsługę XMLRPC.
-
%package xmlwriter
Summary: Fast, non-cached, forward-only means to write XML data
Summary(pl.UTF-8): Szybka, nie cachowana metoda zapisu danych w formacie XML
%patch9 -p1
%patch10 -p1
%patch14 -p1
-%patch17 -p1
%patch18 -p1
%patch21 -p1
%patch22 -p1
%patch27 -p1
%patch29 -p1
%patch31 -p1
-%patch37 -p1
-%patch38 -p1
%patch39 -p1
%if %{with fpm}
%patch41 -p1
%patch67 -p1
%patch71 -p1
-%{__sed} -i -e '/PHP_ADD_LIBRARY_WITH_PATH/s#xmlrpc,#xmlrpc-epi,#' ext/xmlrpc/config.m4
-
# cleanup backups after patching
find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
%{__rm} -r ext/com_dotnet
# remove all bundled libraries not to link with them accidentally
-%{__rm} -r ext/xmlrpc/libxmlrpc
%{__rm} ext/date/lib/timezonedb.h
cp -pf Zend/LICENSE{,.Zend}
touch _built-conf
fi
export PROG_SENDMAIL="/usr/lib/sendmail"
-export CPPFLAGS="-DDEBUG_FASTCGI -DHAVE_STRNDUP %{rpmcppflags} \
- -I%{_includedir}/xmlrpc-epi"
+export CPPFLAGS="-DDEBUG_FASTCGI -DHAVE_STRNDUP %{rpmcppflags}"
# This should be detected by configure and set there,
# but looks like the build system is hosed on 7.3
--enable-mbregex \
%{__enable_disable pcntl pcntl shared} \
%{__enable_disable pdo pdo shared} \
- %{__enable_disable json json shared} \
--enable-xmlwriter=shared \
%if %{with fpm}
--with-fpm-user=http \
%{__with_without sqlite3 sqlite3 shared} \
%{?with_tidy:--with-tidy=shared} \
%{?with_odbc:--with-unixODBC=shared} \
- %{__with_without xmlrpc xmlrpc shared,/usr} \
%{?with_xsl:--with-xsl=shared} \
--with-zlib=shared \
%{?with_zip:--with-zip=shared} \
MYSQLND_SHARED_LIBADD="-lssl -lcrypto"
%if %{with apache2}
-%{__make} libtool-sapi LIBTOOL_SAPI=sapi/apache2handler/libphp7.la -f Makefile.apxs2
+%{__make} libtool-sapi LIBTOOL_SAPI=sapi/apache2handler/libphp8.la -f Makefile.apxs2
%endif
%if %{with litespeed}
%endif
%if %{with embed}
-%{__make} -f Makefile.embed libphp7.la
+%{__make} -f Makefile.embed libphp8.la
%endif
%if %{with phpdbg}
# install Apache2 DSO module
%if %{with apache2}
# versioned libphp
-libtool --mode=install install -p sapi/apache2handler/libphp7.la $RPM_BUILD_ROOT%{_libdir}/apache
-%{__mv} $RPM_BUILD_ROOT%{_libdir}/apache/libphp7.la $RPM_BUILD_ROOT%{_libdir}/apache/libphp%{php_suffix}.la
-%{__mv} $RPM_BUILD_ROOT%{_libdir}/apache/libphp7.so $RPM_BUILD_ROOT%{_libdir}/apache/libphp%{php_suffix}.so
-sed -i -e "s|libphp7|libphp%{php_suffix}|g" $RPM_BUILD_ROOT%{_libdir}/apache/libphp%{php_suffix}.la
+libtool --mode=install install -p sapi/apache2handler/libphp8.la $RPM_BUILD_ROOT%{_libdir}/apache
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/apache/libphp8.la $RPM_BUILD_ROOT%{_libdir}/apache/libphp%{php_suffix}.la
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/apache/libphp8.so $RPM_BUILD_ROOT%{_libdir}/apache/libphp%{php_suffix}.so
+sed -i -e "s|libphp8|libphp%{php_suffix}|g" $RPM_BUILD_ROOT%{_libdir}/apache/libphp%{php_suffix}.la
ln -s libphp%{php_suffix}.so $RPM_BUILD_ROOT%{_libdir}/apache/mod_php.so
%endif
# we could use install-headers from Makefile.embed, but that would reinstall all headers
# install-sapi installs to wrong dir, so just do it all manually
install -d $RPM_BUILD_ROOT%{_includedir}/php/php%{php_suffix}/sapi/embed
-install -p libs/libphp7.so $RPM_BUILD_ROOT%{_libdir}/libphp%{php_suffix}.so
+install -p libs/libphp8.so $RPM_BUILD_ROOT%{_libdir}/libphp%{php_suffix}.so
cp -p sapi/embed/php_embed.h $RPM_BUILD_ROOT%{_includedir}/php/php%{php_suffix}/sapi/embed
%endif
%extension_scripts iconv
%extension_scripts imap
%extension_scripts intl
-%extension_scripts json
%extension_scripts ldap
%extension_scripts mbstring
%extension_scripts mysqli
%extension_scripts tokenizer
%extension_scripts xml
%extension_scripts xmlreader
-%extension_scripts xmlrpc
%extension_scripts xmlwriter
%extension_scripts xsl
%extension_scripts zip
%attr(755,root,root) %{php_extensiondir}/intl.so
%endif
-%if %{with json}
-%files json
-%defattr(644,root,root,755)
-%doc ext/json/CREDITS
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/??_json.ini
-%attr(755,root,root) %{php_extensiondir}/json.so
-%endif
-
%if %{with ldap}
%files ldap
%defattr(644,root,root,755)
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/??_xmlreader.ini
%attr(755,root,root) %{php_extensiondir}/xmlreader.so
-%if %{with xmlrpc}
-%files xmlrpc
-%defattr(644,root,root,755)
-%doc ext/xmlrpc/CREDITS
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/??_xmlrpc.ini
-%attr(755,root,root) %{php_extensiondir}/xmlrpc.so
-%endif
-
%files xmlwriter
%defattr(644,root,root,755)
%doc ext/xmlwriter/CREDITS