%define magic_mime /usr/share/misc/magic.mime
%endif
-%define rel 22
+%define rel 40
%define orgname php
%define ver_suffix 52
%define php_suffix %{!?with_default_php:%{ver_suffix}}
Patch76: CVE-2015-0232.patch
Patch77: x32.patch
Patch78: php-bug-68486.patch
+Patch79: libevent-2.1.patch
+Patch80: mysqli-err.patch
+Patch81: openssl.patch
# CENTALT patches
# Backport from 5.3.6
Patch311: php-5.3.6-bug-47435.patch
Patch355: php-5.3.7-bug-55323.patch
# Bug-323016 CVE-2012-0831
Patch402: php-5.2.17-bug-323016.patch
-URL: https://code.google.com/p/php52-backports/
+URL: https://code.google.com/archive/p/php52-backports/
%{?with_interbase:%{!?with_interbase_inst:BuildRequires: Firebird-devel >= 1.0.2.908-2}}
%{?with_pspell:BuildRequires: aspell-devel >= 2:0.50.0}
BuildRequires: autoconf >= 2.53
Summary: PHP DSO module for Apache 1.3.x
Summary(pl.UTF-8): Moduł DSO (Dynamic Shared Object) PHP dla Apache 1.3.x
Group: Development/Languages/PHP
-Requires(triggerpostun): sed >= 4.0
Requires: %{name}-common = %{epoch}:%{version}-%{release}
Requires: apache1(EAPI) >= 1.3.33-2
Requires: apache1-mod_mime
PHP jako moduł DSO (Dynamic Shared Object) dla Apache 1.3.x.
%package -n apache-mod_%{name}
+Summary: PHP support for Apache 2.x
+Summary(pl.UTF-8): Wsparcie PHP dla Apache 2.x
+Group: Development/Languages/PHP
+Requires: apache-mod_%{name}-core = %{epoch}:%{version}-%{release}
+Requires: %{name}-common = %{epoch}:%{version}-%{release}
+Provides: webserver(php) = %{version}
+Obsoletes: phpfi
+
+%description -n apache-mod_%{name}
+PHP support for Apache 2.x.
+
+%description -n apache-mod_%{name} -l pl.UTF-8
+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
-Provides: webserver(php) = %{version}
-Obsoletes: phpfi
-%description -n apache-mod_%{name}
+%description -n apache-mod_%{name}-core
PHP as DSO module for Apache 2.x.
-%description -n apache-mod_%{name} -l pl.UTF-8
+%description -n apache-mod_%{name}-core -l pl.UTF-8
PHP jako moduł DSO (Dynamic Shared Object) dla Apache 2.x.
%package fcgi
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: 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: php74-program < 4:8
+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.
%{?with_pcre:Requires: pcre-devel >= 6.6}
Requires: shtool
Obsoletes: php-devel
-Obsoletes: php-pear-devel
-Obsoletes: php4-devel
-Obsoletes: php53-devel
-Obsoletes: php54-devel
-Obsoletes: php55-devel
-Obsoletes: php56-devel
-Obsoletes: php70-devel
-Obsoletes: php71-devel
+Obsoletes: php-pear-devel < 3:4.3.0-1
+Obsoletes: php4-devel < 3:5
+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: php74-devel < 4:8
+Obsoletes: php80-devel < 4:8.1
+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.
Provides: %{name}-bzip2 = %{epoch}:%{version}-%{release}
Provides: php(bz2)
Provides: php(bzip2)
-Obsoletes: php-bzip2
+Obsoletes: php-bzip2 < 4:5.2.14-3
%description bz2
This is a dynamic shared object (DSO) for PHP that will add bzip2
Requires: %{name}-common = %{epoch}:%{version}-%{release}
Requires: %{name}-pcre = %{epoch}:%{version}-%{release}
Provides: php(filter)
-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
Requires: %{name}-common = %{epoch}:%{version}-%{release}
Requires: %{name}-spl = %{epoch}:%{version}-%{release}
Provides: php(pdo)
-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
Requires: %{name}-common = %{epoch}:%{version}-%{release}
Requires: %{name}-pdo = %{epoch}:%{version}-%{release}
Provides: php(pdo-firebird)
-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
Requires: %{name}-common = %{epoch}:%{version}-%{release}
Requires: %{name}-pdo = %{epoch}:%{version}-%{release}
Provides: php(pdo-mysql)
-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
Requires: %{name}-common = %{epoch}:%{version}-%{release}
Requires: %{name}-pdo = %{epoch}:%{version}-%{release}
Provides: php(pdo-oci)
-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
Requires: %{name}-common = %{epoch}:%{version}-%{release}
Requires: %{name}-pdo = %{epoch}:%{version}-%{release}
Provides: php(pdo-odbc)
-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
Requires: %{name}-common = %{epoch}:%{version}-%{release}
Requires: %{name}-pdo = %{epoch}:%{version}-%{release}
Provides: php(pdo-sqlite)
-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://www.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
%description xmlwriter
This extension wraps the libxml xmlWriter API. Represents a writer
# mysql default charset for mysql/mysql/pdo-mysql extensions
%patch36 -p1
-%patch37 -p0
+%patch37 -p1
%patch38 -p0
%patch39 -p1
%patch57 -p1
%patch58 -p4
%patch59 -p1
-%patch60 -p4
+%patch60 -p1
%patch61 -p1
%{?with_system_libzip:%patch65 -p1}
-%patch66 -p2
+%patch66 -p1
%patch67 -p1
%patch69 -p4
%patch70 -p1
%patch76 -p1
%patch77 -p1
%patch78 -p1
+%patch79 -p1
+%patch80 -p1
+%patch81 -p1
# Bugfix backport from 5.3.6
%patch311 -p1 -b .bug-47435
sh -xe %{_sourcedir}/skip-tests.sh
+# make colliding symbol static
+%{__sed} -i -e 's/^char \*yytext/static &/' Zend/zend_{ini,language}_scanner.c
+
%build
API=$(awk '/#define PHP_API_VERSION/{print $3}' main/php.h)
if [ $API != %{php_api_version} ]; then
esac
%configure \
+ CFLAGS="%{rpmcflags} -DOPENSSL_NO_SSL2=1 -DOPENSSL_NO_SSL3=1" \
FORCE_APACHE_VERSION="${apache_ver}" \
EXTRA_LDFLAGS="%{rpmldflags}" \
$sapi_args \
--with-system-tzdata \
--%{!?debug:dis}%{?debug:en}able-debug \
%{?with_zts:--enable-maintainer-zts} \
- %{?with_suhosin:--enable-suhosin} \
%{?with_zend_multibyte:--enable-zend-multibyte} \
--enable-inline-optimization \
--enable-bcmath=shared \
done
sed -i -e '/^phpdir/ s,/php/build,/%{name}/build,' $RPM_BUILD_ROOT%{_bindir}/phpize
-# as a result of ext/pcre/pcrelib removal in %%prep, ext/pcre/php_pcre.h
+# as a result of ext/pcre/pcrelib removal in prep, ext/pcre/php_pcre.h
# isn't installed by install-headers make target, we do it manually here.
# this header file is required by e.g. filter PECL extension
install -D ext/pcre/php_pcre.h $RPM_BUILD_ROOT%{_includedir}/php/ext/pcre/php_pcre.h
%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/libphp5-*.*.so
%endif