than embedding a copy. Discussed upstream but was not desired.
History:
+r20: adapt for timelib 2020.03 (in 8.0.10RC1)
r19: adapt for timelib 2020.02 (in 8.0.0beta2)
r18: adapt for autotool change in 7.3.3RC1
r17: adapt for timelib 2018.01 (in 7.3.2RC1)
r2: add filesystem trawl to set up name alias index
r1: initial revision
-diff -up php-8.0.0beta3/ext/date/config0.m4.systzdata php-8.0.0beta3/ext/date/config0.m4
---- php-8.0.0beta3/ext/date/config0.m4.systzdata 2020-09-01 19:13:26.000000000 +0200
-+++ php-8.0.0beta3/ext/date/config0.m4 2020-09-02 08:07:51.039979873 +0200
+diff -up ./ext/date/config0.m4.systzdata ./ext/date/config0.m4
+--- ./ext/date/config0.m4.systzdata 2021-08-10 11:35:28.000000000 +0200
++++ ./ext/date/config0.m4 2021-08-10 12:09:41.067003517 +0200
@@ -4,6 +4,19 @@ AC_CHECK_HEADERS([io.h])
dnl Check for strtoll, atoll
AC_CHECK_FUNCS(strtoll atoll)
PHP_DATE_CFLAGS="-I@ext_builddir@/lib -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1 -DHAVE_TIMELIB_CONFIG_H=1"
timelib_sources="lib/astro.c lib/dow.c lib/parse_date.c lib/parse_tz.c
lib/timelib.c lib/tm2unixtime.c lib/unixtime2tm.c lib/parse_iso_intervals.c lib/interval.c"
-diff -up php-8.0.0beta3/ext/date/lib/parse_tz.c.systzdata php-8.0.0beta3/ext/date/lib/parse_tz.c
---- php-8.0.0beta3/ext/date/lib/parse_tz.c.systzdata 2020-09-01 19:13:26.000000000 +0200
-+++ php-8.0.0beta3/ext/date/lib/parse_tz.c 2020-09-02 08:07:51.039979873 +0200
+diff -up ./ext/date/lib/parse_tz.c.systzdata ./ext/date/lib/parse_tz.c
+--- ./ext/date/lib/parse_tz.c.systzdata 2021-08-10 11:35:28.000000000 +0200
++++ ./ext/date/lib/parse_tz.c 2021-08-10 12:12:13.191605207 +0200
@@ -26,8 +26,21 @@
#include "timelib.h"
#include "timelib_private.h"
/* read ID */
version = (*tzf)[3] - '0';
*tzf += 4;
-@@ -418,7 +436,429 @@ void timelib_dump_tzinfo(timelib_tzinfo
+@@ -435,7 +453,429 @@ void timelib_dump_tzinfo(timelib_tzinfo
}
}
{
int left = 0, right = tzdb->index_size - 1;
-@@ -444,9 +884,48 @@ static int seek_to_tz_position(const uns
+@@ -461,9 +901,48 @@ static int seek_to_tz_position(const uns
return 0;
}
}
const timelib_tzdb_index_entry *timelib_timezone_identifiers_list(const timelib_tzdb *tzdb, int *count)
-@@ -458,7 +937,30 @@ const timelib_tzdb_index_entry *timelib_
+@@ -475,7 +954,30 @@ const timelib_tzdb_index_entry *timelib_
int timelib_timezone_id_is_valid(const char *timezone, const timelib_tzdb *tzdb)
{
const unsigned char *tzf;
}
static int skip_64bit_preamble(const unsigned char **tzf, timelib_tzinfo *tz)
-@@ -540,11 +1044,36 @@ timelib_tzinfo *timelib_parse_tzfile(con
+@@ -517,6 +1019,8 @@ static timelib_tzinfo* timelib_tzinfo_ct
+ timelib_tzinfo *timelib_parse_tzfile(const char *timezone, const timelib_tzdb *tzdb, int *error_code)
+ {
+ const unsigned char *tzf;
++ char *memmap = NULL;
++ size_t maplen;
+ timelib_tzinfo *tmp;
+ int version;
+ int transitions_result, types_result;
+@@ -524,7 +1028,7 @@ timelib_tzinfo *timelib_parse_tzfile(con
+
+ *error_code = TIMELIB_ERROR_NO_ERROR;
+
+- if (seek_to_tz_position(&tzf, timezone, tzdb)) {
++ if (seek_to_tz_position(&tzf, timezone, &memmap, &maplen, tzdb)) {
+ tmp = timelib_tzinfo_ctor(timezone);
+
+ version = read_preamble(&tzf, tmp, &type);
+@@ -563,11 +1067,36 @@ timelib_tzinfo *timelib_parse_tzfile(con
}
skip_posix_string(&tzf, tmp);
} else {
*error_code = TIMELIB_ERROR_NO_SUCH_TIMEZONE;
tmp = NULL;
---- php-8.0.10/ext/date/lib/parse_tz.c.orig 2021-08-27 14:25:14.033549324 +0200
-+++ php-8.0.10/ext/date/lib/parse_tz.c 2021-08-27 14:24:27.173547016 +0200
-@@ -1019,6 +1019,8 @@
- timelib_tzinfo *timelib_parse_tzfile(const char *timezone, const timelib_tzdb *tzdb, int *error_code)
- {
- const unsigned char *tzf;
-+ char *memmap = NULL;
-+ size_t maplen;
- timelib_tzinfo *tmp;
- int version;
- int transitions_result, types_result;
-@@ -1026,7 +1028,7 @@
-
- *error_code = TIMELIB_ERROR_NO_ERROR;
-
-- if (seek_to_tz_position(&tzf, timezone, tzdb)) {
-+ if (seek_to_tz_position(&tzf, timezone, &memmap, &maplen, tzdb)) {
- tmp = timelib_tzinfo_ctor(timezone);
-
- version = read_preamble(&tzf, tmp, &type);
%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
%bcond_without gettext # without gettext extension module
%bcond_without gmp # without gmp extension module
%bcond_without iconv # without iconv extension module
-%bcond_without imap # without IMAP extension module
+%bcond_with imap # without IMAP extension module
%bcond_without intl # without Intl extension module
%bcond_without ldap # without LDAP extension module
%bcond_without mbstring # without mbstring extension module
%bcond_without pdo_dblib # without PDO dblib extension module
%bcond_without pdo_firebird # without PDO Firebird extension module
%bcond_without pdo_mysql # without PDO MySQL extension module
-%bcond_without pdo_oci # without PDO oci extension module
+%bcond_without pdo_oci # without PDO oci extension module
%bcond_without pdo_odbc # without PDO ODBC extension module
%bcond_without pdo_pgsql # without PDO pgsql extension module
%bcond_without pdo_sqlite # without PDO SQLite extension module
%bcond_without sqlite2 # without SQLite extension module
%bcond_without sqlite3 # without SQLite3 extension module
%bcond_without tidy # without Tidy extension module
-%bcond_without xsl # without xsl extension module
-%bcond_without zip # without zip extension module
+%bcond_without xsl # without xsl extension module
+%bcond_without zip # without zip extension module
# extensions options
%bcond_without argon2 # argon2 password hashing
%bcond_without instantclient # build Oracle oci8 extension module against oracle-instantclient package
Summary(fr.UTF-8): Le langage de script embarque-HTML PHP
Summary(pl.UTF-8): Język skryptowy PHP
Summary(pt_BR.UTF-8): A linguagem de script PHP
-Summary(ru.UTF-8): PHP Версии 7 - язык препроцессирования HTML-файлов, выполняемый на сервере
-Summary(uk.UTF-8): PHP Версії 7 - мова препроцесування HTML-файлів, виконувана на сервері
+Summary(ru.UTF-8): PHP - язык препроцессирования HTML-файлов, выполняемый на сервере
+Summary(uk.UTF-8): PHP - мова препроцесування HTML-файлів, виконувана на сервері
Name: %{orgname}%{php_suffix}
Version: 8.0.17
Release: 1
# TSRM is licensed under BSD
License: PHP 3.01 and Zend and BSD
Group: Libraries
-Source0: http://php.net/distributions/%{orgname}-%{version}.tar.xz
+Source0: https://php.net/distributions/%{orgname}-%{version}.tar.xz
# Source0-md5: fa88b5f436ad81235b0856144abb0035
Source1: opcache.ini
Source2: %{orgname}-mod_php.conf
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
Patch50: extension-shared-optional-dep.patch
Patch53: fix-test-run.patch
Patch59: %{orgname}-systzdata.patch
+Patch60: %{orgname}-oracle-instantclient.patch
Patch66: php-db.patch
Patch67: mysql-lib-ver-mismatch.patch
-Patch69: fpm-conf-split.patch
+# https://bugs.php.net/bug.php?id=68344
+Patch68: php-mysql-ssl-context.patch
Patch71: libdb-info.patch
+Patch72: openssl.patch
URL: http://php.net/
-%{?with_firebird:%{!?with_interbase_inst:BuildRequires: Firebird-devel >= 1.0.2.908-2}}
+%{?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
BuildRequires: automake >= 1.4d
BuildRequires: db-devel >= 4.0
BuildRequires: elfutils-devel
%{?with_enchant:BuildRequires: enchant-devel >= 1.1.3}
-%{?with_kerberos5:BuildRequires: heimdal-devel}
-%{?with_argon2:BuildRequires: libargon2-devel >= 20161029}
-%{?with_ffi:BuildRequires: libffi-devel}
-%{?with_sodium:BuildRequires: libsodium-devel >= 1.0.8}
%if %{with pdo_dblib}
BuildRequires: freetds-devel >= 0.82
%endif
%endif
BuildRequires: gdbm-devel
BuildRequires: gmp-devel >= 4.2
+%{?with_kerberos5:BuildRequires: heimdal-devel}
%{?with_imap:BuildRequires: imap-devel >= 1:2007e-2}
%{?with_gcov:BuildRequires: lcov}
%{?with_fpm:BuildRequires: libapparmor-devel}
+%{?with_argon2:BuildRequires: libargon2-devel >= 20161029}
+%{?with_ffi:BuildRequires: libffi-devel}
%{?with_intl:BuildRequires: libicu-devel >= 50.1}
BuildRequires: libjpeg-devel
BuildRequires: libltdl-devel >= 1.4
BuildRequires: libpng-devel >= 1.0.8
+%{?with_sodium:BuildRequires: libsodium-devel >= 1.0.8}
%{?with_intl:BuildRequires: libstdc++-devel}
BuildRequires: libtool >= 2:2.4.6
%{?with_webp:BuildRequires: libwebp-devel}
%{!?with_mysqli:BuildRequires: mysql-devel >= 4.1.13}
%{!?with_pdo_mysql:BuildRequires: mysql-devel}
%{?with_snmp:BuildRequires: net-snmp-devel >= 5.3}
-BuildRequires: oniguruma-devel
+BuildRequires: oniguruma-devel
%{?with_ldap:BuildRequires: openldap-devel >= 2.3.0}
%if %{with openssl} || %{with ldap}
BuildRequires: openssl-devel >= 1.0.1
%define php_sysconfdir /etc/%{name}
%define php_extensiondir %{_libdir}/php/%{name}
-%define php_datadir /usr/share/php/%{name}
+%define php_data_dir /usr/share/php/%{name}
%define _sysconfdir %{php_sysconfdir}
# must be in sync with source. extra check ensuring that it is so is done in %%build
Moduł PHP dodający obsługę znaczników EXIF w plikach obrazków.
%package ffi
-Summary: %{modname} - Foreign Function Interface
+Summary: Foreign Function Interface module for PHP
+Summary(pl.UTF-8): Moduł Foreign Function Interface (interfejsu do obcych języków) dla PHP
Group: Libraries
URL: https://www.php.net/manual/en/book.ffi.php
Requires: %{name}-common = %{epoch}:%{version}-%{release}
FFI is a multi-platform extension for PHP that allows you to bind to
functions from arbitrary shared libraries and call them.
+%description ffi -l pl.UTF-8
+FFI to wieloplatformowe rozszerzenie dla PHP pozwalające dowiązywać
+funkcje z dowolnych bibliotek współdzielonych i wywoływać je.
+
%package fileinfo
Summary: libmagic bindings
Summary(pl.UTF-8): Wiązania do libmagic
%package sodium
Summary: Wrapper for the Sodium cryptographic library
+Summary(pl.UTF-8): Interfejs do biblioteki kryptograficznej Sodium
Group: Libraries
URL: https://paragonie.com/book/pecl-libsodium
Requires: %{name}-common = %{epoch}:%{version}-%{release}
%description sodium
A simple, low-level PHP extension for libsodium.
+%description sodium -l pl.UTF-8
+Proste, niskopoziomowe rozszerzenie PHP wykorzystując libsodium.
+
%package sqlite3
Summary: SQLite3 extension module for PHP
Summary(pl.UTF-8): Moduł SQLite3 dla PHP
Group: Libraries
URL: http://qa.php.net/
Requires: %{name}-cli
+BuildArch: noarch
%description tests
This package contains unit tests for PHP and its extensions.
Moduł PHP umożliwiający używanie kompresji zlib.
%prep
-%setup -q -n %{orgname}-%{version}
+%setup -q -n %{orgname}-%{version}%{?subver}
+
cp -p php.ini-production php.ini
%patch0 -p1
%patch1 -p1
%patch3 -p1
+%patch4 -p1
+
%patch7 -p1
%patch9 -p1
%patch10 -p1
%patch25 -p1
%patch27 -p1
%patch29 -p1
-%patch31 -p1
%patch39 -p1
-%if %{with fpm}
%patch41 -p1
-%endif
%patch43 -p1
%patch44 -p1
%patch50 -p1
%patch53 -p1
-%undos ext/spl/tests/SplFileInfo_getInode_basic.phpt
-%patch59 -p1 -b .systzdata
+%patch59 -p1
+%if %{with instantclient}
+%patch60 -p1
+%endif
%patch66 -p1
%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 \
+ run-tests.php
# 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/bcmath/libbcmath
+#%{__rm} -r ext/date/lib
+#%{__rm} -r ext/fileinfo/libmagic
+#%{__rm} -r ext/dba/libcdb
+#%{__rm} -r ext/dba/libflatfile
+#%{__rm} -r ext/dba/libinifile
+#%{__rm} -r ext/gd/libgd
+#%{__rm} -r ext/mbstring/libmbfl
+#%{__rm} -r ext/pcre/pcre2lib
+#%{__rm} -r ext/soap/interop
+#%{__rm} -r ext/zip/lib
%{__rm} ext/date/lib/timezonedb.h
cp -pf Zend/LICENSE{,.Zend}
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=$(awk '/#define PHP_PHAR_VERSION/ {print $3}' ext/phar/php_phar.h | xargs)
+ver=$(get_version PHP_PHAR_VERSION ext/phar/php_phar.h)
if test "$ver" != "PHP_VERSION"; then
: Error: Upstream PHAR version is now ${ver}, expecting %{pharver}.
: Update the pharver macro and rebuild.
: Update the zipver macro and rebuild.
exit 1
fi
-ver=$(awk '/#define PHP_JSON_VERSION/ {print $3}' ext/json/php_json.h | xargs)
+ver=$(get_version PHP_JSON_VERSION ext/json/php_json.h)
if test "$ver" != "PHP_VERSION"; then
: Error: Upstream JSON version is now ${ver}, expecting %{jsonver}.
: Update the jsonver macro and rebuild.
exit 1
fi
-ver=$(awk '/#define PHPDBG_VERSION/ {print $3}' sapi/phpdbg/phpdbg.h | xargs)
+ver=$(get_version PHPDBG_VERSION sapi/phpdbg/phpdbg.h)
if test "$ver" != "PHP_VERSION"; then
: Error: Upstream phpdbg version is now ${ver}, expecting %{phpdbgver}.
: Update the phpdbgver macro and rebuild.
exit 1
fi
-ver=$(awk '/#define PHP_BZ2_VERSION/ {print $3}' ext/bz2/php_bz2.h | xargs)
+ver=$(get_version PHP_BZ2_VERSION ext/bz2/php_bz2.h)
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=$(awk '/#define PHP_HASH_VERSION/ {print $3}' ext/hash/php_hash.h | xargs)
+ver=$(get_version PHP_HASH_VERSION ext/hash/php_hash.h)
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=$(awk '/#define PHP_INTL_VERSION/ {print $3}' ext/intl/php_intl.h | xargs)
+ver=$(get_version PHP_INTL_VERSION ext/intl/php_intl.h)
if test "$ver" != "PHP_VERSION"; then
: Error: Upstream Intl version is now ${ver}, expecting %{intlver}.
: Update the intlver macro and rebuild.
sapi_args=''
case $sapi in
cgi-fcgi)
- sapi_args='--disable-cli'
+ sapi_args='--enable-cgi'
;;
cli)
- sapi_args='--disable-cgi %{?with_gcov:--enable-gcov}'
+ sapi_args='--enable-cli %{?with_gcov:--enable-gcov}'
;;
fpm)
- sapi_args='--disable-cli --disable-cgi --enable-fpm'
+ sapi_args='--enable-fpm'
;;
embed)
- sapi_args='--disable-cli --disable-cgi --enable-embed'
+ sapi_args='--enable-embed'
;;
apxs2)
ver=$(rpm -q --qf '%{V}' apache-devel)
- sapi_args="--disable-cli --disable-cgi --with-apxs2=%{apxs2} --with-apache-version=$ver"
+ sapi_args="--with-apxs2=%{apxs2} --with-apache-version=$ver"
;;
litespeed)
- sapi_args='--disable-cli --disable-cgi --enable-litespeed'
+ sapi_args='--enable-litespeed'
;;
phpdbg)
- sapi_args='--disable-cli --disable-cgi --enable-phpdbg %{?debug:--enable-phpdbg-debug}'
+ sapi_args='--enable-phpdbg %{?debug:--enable-phpdbg-debug}'
;;
esac
%configure \
EXTRA_LDFLAGS="%{rpmldflags}" \
--program-suffix=%{php_suffix} \
+ --disable-cgi \
+ --disable-cli \
+ --disable-phpdbg \
$sapi_args \
%if "%{!?configure_cache:0}%{?configure_cache}" == "0"
--cache-file=config.cache \
%endif
- --datadir=%{php_datadir} \
+ --datadir=%{php_data_dir} \
--with-libdir=%{_lib} \
--with-config-file-path=%{_sysconfdir} \
--with-config-file-scan-dir=%{_sysconfdir}/conf.d \
%{?with_argon2:--with-password-argon2} \
--%{!?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} \
cp -p ext/mbstring/libmbfl/mbfl/*.h $RPM_BUILD_ROOT%{_includedir}/php/php%{php_suffix}/ext/mbstring
# tests
-install -d $RPM_BUILD_ROOT%{php_datadir}/tests/php
-install -p run-tests.php $RPM_BUILD_ROOT%{php_datadir}/tests/php/run-tests.php
-cp -a tests/* $RPM_BUILD_ROOT%{php_datadir}/tests/php
+install -d $RPM_BUILD_ROOT%{php_data_dir}/tests/php
+install -p run-tests.php $RPM_BUILD_ROOT%{php_data_dir}/tests/php/run-tests.php
+cp -a tests/* $RPM_BUILD_ROOT%{php_data_dir}/tests/php
# fix install paths, avoid evil rpaths
sed -i -e "s|^libdir=.*|libdir='%{_libdir}'|" $RPM_BUILD_ROOT%{_libdir}/libphp_common%{php_suffix}.la
# 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
%dir %{_sysconfdir}/conf.d
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/php.ini
%attr(755,root,root) %{_libdir}/libphp_common%{php_suffix}-*.so
-%dir %{php_datadir}
+%dir %{php_data_dir}
%dir %{php_extensiondir}
%doc ext/session/mod_files.sh
%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
%attr(755,root,root) %{php_extensiondir}/mysqlnd.so
%endif
-%if %{with oci}
+%if %{with pdo_oci}
%files oci8
%defattr(644,root,root,755)
%doc ext/oci8/{CREDITS,README}
%attr(755,root,root) %{php_extensiondir}/pdo_mysql.so
%endif
-%if %{with pdo_oci}
+%if %{with oci}
%files pdo-oci
%defattr(644,root,root,755)
%doc ext/pdo_oci/CREDITS
%if %{with pspell}
%files pspell
%defattr(644,root,root,755)
-%doc ext/pspell/CREDITS
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/??_pspell.ini
%attr(755,root,root) %{php_extensiondir}/pspell.so
%endif
%files tests
%defattr(644,root,root,755)
-%dir %{php_datadir}/tests
-%dir %{php_datadir}/tests/php
-%{php_datadir}/tests/php/basic
-%{php_datadir}/tests/php/classes
-%{php_datadir}/tests/php/func
-%{php_datadir}/tests/php/lang
-%{php_datadir}/tests/php/output
-%{php_datadir}/tests/php/run-test
-%{php_datadir}/tests/php/security
-%{php_datadir}/tests/php/strings
-%{php_datadir}/tests/php/quicktester.inc
-%attr(755,root,root) %{php_datadir}/tests/php/run-tests.php
+%dir %{php_data_dir}/tests
+%dir %{php_data_dir}/tests/php
+%{php_data_dir}/tests/php/basic
+%{php_data_dir}/tests/php/classes
+%{php_data_dir}/tests/php/func
+%{php_data_dir}/tests/php/lang
+%{php_data_dir}/tests/php/output
+%{php_data_dir}/tests/php/run-test
+%{php_data_dir}/tests/php/security
+%{php_data_dir}/tests/php/strings
+%{php_data_dir}/tests/php/quicktester.inc
+%attr(755,root,root) %{php_data_dir}/tests/php/run-tests.php
%if %{with tidy}
%files tidy
%if %{with zip}
%files zip
%defattr(644,root,root,755)
-%doc ext/zip/{CREDITS,examples}
+%doc ext/zip/CREDITS
+%doc ext/zip/examples
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/??_zip.ini
%attr(755,root,root) %{php_extensiondir}/zip.so
%endif