-# NOTES
-# - mysqlnd driver doesn't support reconnect: https://bugs.php.net/bug.php?id=52561
-# TODO 7.2:
-# - https://github.com/php/php-src/blob/php-7.2.0/UPGRADING
-# TODO 5.6:
-# - enable --with-fpm-systemd, but ensure it checks for sd_booted()
-# TODO 5.4:
-# - update imap annotations patch (needs api porting)
-# - update imap myrights patch (needs api porting)
-# --with-libmbfl=DIR MBSTRING: Use external libmbfl. DIR is the libmbfl base install directory BUNDLED
-# TODO:
-# - fileinfo extension bundles magic db in library: data_file.c (dump of magic.mgc) is 14M
-# - 2.3M fileinfo.so php54-fileinfo-5.4.6-0.15.x86_64
-# - 2.3M fileinfo.so php-fileinfo-5.3.16-1.x86_64
-# - 13K fileinfo.so php-pecl-fileinfo-1.0.4-8.amd64
-# - ttyname_r() misdetected http://bugs.php.net/bug.php?id=48820
-# - wddx: restore session support (not compiled in due DL extension check)
-# - modularize standard (output from pure php -m)?
-# - some mods should be shared:
-#$ php -m
-# [PHP Modules]
-# Core
-# date
-# libxml
-# Reflection
-# standard
-#
# Conditional build:
# - General options:
%bcond_without embed # disable building Embedded API
Summary(ru.UTF-8): PHP Версии 7 - язык препроцессирования HTML-файлов, выполняемый на сервере
Summary(uk.UTF-8): PHP Версії 7 - мова препроцесування HTML-файлів, виконувана на сервері
Name: %{orgname}%{php_suffix}
-Version: 7.3.12
+Version: 7.3.25
Release: 1
Epoch: 4
# All files licensed under PHP version 3.01, except
License: PHP 3.01 and Zend and BSD
Group: Libraries
Source0: http://php.net/distributions/%{orgname}-%{version}.tar.xz
-# Source0-md5: e52a0dc6e7d94024989d0a3746070487
+# Source0-md5: 111da6f14464a51d8adb2f510b86eabb
Source1: opcache.ini
Source2: %{orgname}-mod_php.conf
Source3: %{orgname}-cgi-fcgi.ini
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define php_sysconfdir /etc/%{name}
-%define php_extensiondir %{_libdir}/%{name}
+%define php_extensiondir %{_libdir}/php/%{name}
%define php_datadir /usr/share/php/%{name}
%define _sysconfdir %{php_sysconfdir}
використання PHP - заміна для CGI скриптів.
%package -n apache-mod_%{name}
-Summary: PHP DSO module for Apache 2.x
-Summary(pl.UTF-8): Moduł DSO (Dynamic Shared Object) PHP dla Apache 2.x
+Summary: PHP support for Apache 2.x
+Summary(pl.UTF-8): Wsparcie PHP dla Apache 2.x
Group: Development/Languages/PHP
Requires: %{name}-common = %{epoch}:%{version}-%{release}
-Requires: apache(modules-api) = %{apache_modules_api}
-Requires: apache-mod_mime
+Requires: apache-mod_%{name}-core = %{epoch}:%{version}-%{release}
Provides: webserver(php) = %{version}
Obsoletes: apache-mod_php < 4:5.3.28-7
Obsoletes: phpfi
%description -n apache-mod_%{name}
-PHP as DSO module for Apache 2.x.
+PHP support for Apache 2.x.
%description -n apache-mod_%{name} -l pl.UTF-8
-PHP jako moduł DSO (Dynamic Shared Object) dla Apache 2.x.
+Wsparcie PHP dla Apache 2.x.
+
+%package -n apache-mod_%{name}-core
+Summary: PHP DSO module for Apache 2.x
+Summary(pl.UTF-8): Moduł DSO (Dynamic Shared Object) PHP dla Apache 2.x
+Group: Development/Languages/PHP
+Requires: %{name}-common = %{epoch}:%{version}-%{release}
+Requires: apache(modules-api) = %{apache_modules_api}
+Requires: apache-mod_mime
+
+%description -n apache-mod_%{name}-core
+PHP as DSO module for Apache 2.x.
+
+%description -n apache-mod_%{name}-core -l pl.UTF-8
+PHP jako moduł DSO (Dynamic Shared Object) dla Apache 2.x.
%package litespeed
Summary: PHP for litespeed HTTP server
%{?with_pcre:Requires: pcre2-8-devel >= 10.30}
Requires: shtool
Provides: php-devel = %{epoch}:%{version}-%{release}
-Obsoletes: php-devel
Obsoletes: php-pear-devel
Obsoletes: php4-devel
Obsoletes: php52-devel
sh -xe %{_sourcedir}/skip-tests.sh
%build
-get_version() {
- local define="$1" filename="$2"
- awk -vdefine="$define" '/#define/ && $2 == define {print $3}' "$filename" | xargs
-}
-
API=$(awk '/#define PHP_API_VERSION/{print $3}' main/php.h)
if [ $API != %{php_api_version} ]; then
echo "Set %%define php_api_version to $API and re-run."
: Update the fileinfover macro and rebuild.
exit 1
fi
-ver=$(get_version PHP_PHAR_VERSION ext/phar/php_phar.h)
+ver=$(awk '/#define PHP_PHAR_VERSION/ {print $3}' ext/phar/php_phar.h | xargs)
if test "$ver" != "PHP_VERSION"; then
: Error: Upstream PHAR version is now ${ver}, expecting %{pharver}.
: Update the pharver macro and rebuild.
: Update the phpdbgver macro and rebuild.
exit 1
fi
-ver=$(get_version PHP_BZ2_VERSION ext/bz2/php_bz2.h)
+ver=$(awk '/#define PHP_BZ2_VERSION/ {print $3}' ext/bz2/php_bz2.h | xargs)
if test "$ver" != "PHP_VERSION"; then
: Error: Upstream BZIP2 version is now ${ver}, expecting %{bz2ver}.
: Update the bz2ver macro and rebuild.
if test "$ver" != "PHP_VERSION"; then
exit 1
fi
-ver=$(get_version PHP_HASH_VERSION ext/hash/php_hash.h)
+ver=$(awk '/#define PHP_HASH_VERSION/ {print $3}' ext/hash/php_hash.h | xargs)
if test "$ver" != "PHP_VERSION"; then
: Error: Upstream HASH version is now ${ver}, expecting %{hashver}.
: Update the hashver macro and rebuild.
exit 1
fi
-ver=$(get_version PHP_INTL_VERSION ext/intl/php_intl.h)
+ver=$(awk '/#define PHP_INTL_VERSION/ {print $3}' ext/intl/php_intl.h | xargs)
if test "$ver" != "PHP_VERSION"; then
: Error: Upstream Intl version is now ${ver}, expecting %{intlver}.
: Update the intlver macro and rebuild.
cp -pf php_config.h.cli main/php_config.h
cp -pf Makefile.cli Makefile
%{__make} install \
- phpbuilddir=%{_libdir}/%{name}/build \
+ phpbuilddir=%{_libdir}/php/php%{php_suffix}/build \
INSTALL_ROOT=$RPM_BUILD_ROOT
# version the .phar files
%{__mv} $RPM_BUILD_ROOT%{_sysconfdir}/{conf.d/readline.ini,cli.d}
# use system automake and {lib,sh}tool
-ln -snf /usr/share/automake/config.{guess,sub} $RPM_BUILD_ROOT%{_libdir}/%{name}/build
-ln -snf %{_bindir}/shtool $RPM_BUILD_ROOT%{_libdir}/%{name}/build
+ln -snf /usr/share/automake/config.{guess,sub} $RPM_BUILD_ROOT%{_libdir}/php/php%{php_suffix}/build
+ln -snf %{_bindir}/shtool $RPM_BUILD_ROOT%{_libdir}/php/php%{php_suffix}/build
for fn in libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4; do
f=%{_aclocaldir}/$fn
test -f $f || continue
- ln -snf $f $RPM_BUILD_ROOT%{_libdir}/%{name}/build
+ ln -snf $f $RPM_BUILD_ROOT%{_libdir}/php/php%{php_suffix}/build
done
for fn in ltmain.sh config/ltmain.sh build-aux/ltmain.sh; do
f=/usr/share/libtool/$fn
test -f $f || continue
- ln -snf $f $RPM_BUILD_ROOT%{_libdir}/%{name}/build
+ ln -snf $f $RPM_BUILD_ROOT%{_libdir}/php/php%{php_suffix}/build
break
done
sed -i -e '/^phpdir/ s,/php/build,/%{name}/build,' $RPM_BUILD_ROOT%{_bindir}/phpize%{php_suffix}
# fix install paths, avoid evil rpaths
sed -i -e "s|^libdir=.*|libdir='%{_libdir}'|" $RPM_BUILD_ROOT%{_libdir}/libphp_common%{php_suffix}.la
# better solution?
-sed -i -e 's|libphp_common.la|$(libdir)/libphp_common%{php_suffix}.la|' $RPM_BUILD_ROOT%{_libdir}/%{name}/build/acinclude.m4
+sed -i -e 's|libphp_common.la|$(libdir)/libphp_common%{php_suffix}.la|' $RPM_BUILD_ROOT%{_libdir}/php/php%{php_suffix}/build/acinclude.m4
%clean
rm -rf $RPM_BUILD_ROOT
%files -n apache-mod_%{name}
%defattr(644,root,root,755)
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/httpd/conf.d/*_mod_php.conf
+%attr(755,root,root) %{_libdir}/apache/mod_php.so
+
+%files -n apache-mod_%{name}-core
+%defattr(644,root,root,755)
%dir %{_sysconfdir}/apache2handler.d
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/php-apache2handler.ini
-%attr(755,root,root) %{_libdir}/apache/mod_php.so
%attr(755,root,root) %{_libdir}/apache/libphp%{php_suffix}.so
%endif
%attr(755,root,root) %{_libdir}/libphp_common%{php_suffix}.so
%{_libdir}/libphp_common%{php_suffix}.la
%{_includedir}/php/php%{php_suffix}
-%{_libdir}/%{name}/build
+%{_libdir}/php/php%{php_suffix}/build
%{_mandir}/man1/php-config%{php_suffix}.1*
%ghost %{_mandir}/man1/php-config.1*
%{_mandir}/man1/phpize%{php_suffix}.1*