From 029e4361d0227f335d20116b02fca24571663589 Mon Sep 17 00:00:00 2001 From: Marcin Krol Date: Tue, 5 Apr 2022 00:50:56 +0200 Subject: [PATCH] - adjusted for rpm.org, partial PLD merge --- fix-test-run.patch | 6 +- intl-stdc++.patch | 4 +- mysql-lib-ver-mismatch.patch | 8 +- openssl.patch | 38 +++++++ php-config-dir.patch | 10 +- php-db.patch | 2 +- php-dba-link.patch | 2 +- php-fcgi-graceful.patch | 14 +-- php-fpm-config.patch | 8 +- php-link-libs.patch | 2 +- php-mysql-ssl-context.patch | 36 +++++++ php-oracle-instantclient.patch | 39 +++++++ php-shared.patch | 6 +- php-stupidapache_version.patch | 2 +- php-systzdata.patch | 59 ++++++----- php-zlib-for-getimagesize.patch | 2 +- php.spec | 178 +++++++++++++++++++------------- 17 files changed, 283 insertions(+), 133 deletions(-) create mode 100644 openssl.patch create mode 100644 php-mysql-ssl-context.patch create mode 100644 php-oracle-instantclient.patch diff --git a/fix-test-run.patch b/fix-test-run.patch index 01742c4..50bccd4 100644 --- a/fix-test-run.patch +++ b/fix-test-run.patch @@ -1,15 +1,15 @@ --- php-5.4.0alpha2/configure.ac~ 2011-08-07 12:43:31.000000000 +0300 +++ php-5.4.0alpha2/configure.ac 2011-08-07 12:44:11.495394662 +0300 @@ -1271,6 +1271,9 @@ - ;; - esac + AC_DEFINE_UNQUOTED(ARCHITECTURE,"$PHP_BUILD_ARCH",[build architecture]) + fi +# shift so that extensions like xml are loaded first +PHP_MODULES=$(echo "$PHP_MODULES" | sed -e 's,\(.*\)\(\$(phplibdir)/xml.la \),\2\1,') + PHP_SUBST_OLD(PHP_INSTALLED_SAPIS) - PHP_SUBST(PHP_EXECUTABLE) + PHP_SUBST(PHP_FASTCGI_OBJS) --- php-5.5.11/build/Makefile.global 2014-04-27 15:05:38.963814051 +0300 +++ php-5.5.11/build/Makefile.global 2014-04-27 15:09:54.438443707 +0300 @@ -81,8 +81,15 @@ diff --git a/intl-stdc++.patch b/intl-stdc++.patch index 7c18064..3ad69f0 100644 --- a/intl-stdc++.patch +++ b/intl-stdc++.patch @@ -17,10 +17,10 @@ so just omit PHP_ADD_LIBRARY(stdc++) --- php-7.0.6/ext/intl/config.m4~ 2016-04-28 21:13:06.000000000 +0300 +++ php-7.0.6/ext/intl/config.m4 2016-05-16 18:49:53.909531704 +0300 @@ -6,6 +6,7 @@ - [ --enable-intl Enable internationalization support]) + [Enable internationalization support])]) if test "$PHP_INTL" != "no"; then + dnl -lstdc++ not needed, will be inherited from icu PHP_SETUP_ICU(INTL_SHARED_LIBADD) PHP_SUBST(INTL_SHARED_LIBADD) - PHP_REQUIRE_CXX() + INTL_COMMON_FLAGS="$ICU_CFLAGS -Wno-write-strings -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1" diff --git a/mysql-lib-ver-mismatch.patch b/mysql-lib-ver-mismatch.patch index 81d9261..4ebe277 100644 --- a/mysql-lib-ver-mismatch.patch +++ b/mysql-lib-ver-mismatch.patch @@ -1,11 +1,11 @@ --- php-5.3.27/ext/mysqli/mysqli_nonapi.c~ 2013-11-20 00:19:11.000000000 +0200 +++ php-5.3.27/ext/mysqli/mysqli_nonapi.c 2013-11-20 00:19:44.725872552 +0200 @@ -73,7 +73,7 @@ - zend_bool self_alloced = 0; - - + zend_bool self_alloced = 0; + + -#if !defined(MYSQL_USE_MYSQLND) +#if 0 && !defined(MYSQL_USE_MYSQLND) if ((MYSQL_VERSION_ID / 100) != (mysql_get_client_version() / 100)) { - php_error_docref(NULL TSRMLS_CC, E_NOTICE, + php_error_docref(NULL, E_WARNING, "Headers and client library minor version mismatch. Headers:%d Library:%ld", diff --git a/openssl.patch b/openssl.patch new file mode 100644 index 0000000..25c11d8 --- /dev/null +++ b/openssl.patch @@ -0,0 +1,38 @@ +--- php-8.0.8/ext/openssl/openssl.c~ 2021-06-29 09:41:19.000000000 +0200 ++++ php-8.0.8/ext/openssl/openssl.c 2021-10-23 20:39:04.743124767 +0200 +@@ -1221,7 +1221,9 @@ PHP_MINIT_FUNCTION(openssl) + REGISTER_LONG_CONSTANT("OPENSSL_CMS_NOSIGS", CMS_NOSIGS, CONST_CS|CONST_PERSISTENT); + + REGISTER_LONG_CONSTANT("OPENSSL_PKCS1_PADDING", RSA_PKCS1_PADDING, CONST_CS|CONST_PERSISTENT); ++#ifdef RSA_SSLV23_PADDING + REGISTER_LONG_CONSTANT("OPENSSL_SSLV23_PADDING", RSA_SSLV23_PADDING, CONST_CS|CONST_PERSISTENT); ++#endif + REGISTER_LONG_CONSTANT("OPENSSL_NO_PADDING", RSA_NO_PADDING, CONST_CS|CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("OPENSSL_PKCS1_OAEP_PADDING", RSA_PKCS1_OAEP_PADDING, CONST_CS|CONST_PERSISTENT); + +diff --git a/ext/openssl/xp_ssl.c b/ext/openssl/xp_ssl.c +index 5564bf6f08..423f696c76 100644 +--- a/ext/openssl/xp_ssl.c ++++ b/ext/openssl/xp_ssl.c +@@ -1286,6 +1286,10 @@ static int php_openssl_set_server_specific_opts(php_stream *stream, SSL_CTX *ctx + zval *zv; + long ssl_ctx_options = SSL_CTX_get_options(ctx); + ++#ifdef SSL_OP_IGNORE_UNEXPECTED_EOF ++ ssl_ctx_options |= SSL_OP_IGNORE_UNEXPECTED_EOF; ++#endif ++ + #if defined(HAVE_ECDH) && PHP_OPENSSL_API_VERSION < 0x10100 + if (php_openssl_set_server_ecdh_curve(stream, ctx) == FAILURE) { + return FAILURE; +@@ -1628,6 +1632,10 @@ int php_openssl_setup_crypto(php_stream *stream, + ssl_ctx_options = SSL_OP_ALL; + #endif + ++#ifdef SSL_OP_IGNORE_UNEXPECTED_EOF ++ ssl_ctx_options |= SSL_OP_IGNORE_UNEXPECTED_EOF; ++#endif ++ + if (sslsock->ctx == NULL) { + php_error_docref(NULL, E_WARNING, "SSL context creation failure"); + return FAILURE; diff --git a/php-config-dir.patch b/php-config-dir.patch index b6abad5..05158a3 100644 --- a/php-config-dir.patch +++ b/php-config-dir.patch @@ -1,13 +1,13 @@ --- php-5.2.0/scripts/php-config.in 2006-12-14 01:11:33.348180526 +0200 +++ php-5.2.4/scripts/php-config.in 2007-08-31 19:43:04.061307670 +0300 @@ -2,6 +2,7 @@ - + SED="@SED@" prefix="@prefix@" - exec_prefix="@exec_prefix@" + datarootdir="@datarootdir@" +sysconfdir='@sysconfdir@' + exec_prefix="@exec_prefix@" version="@PHP_VERSION@" - version_id="@PHP_VERSION_ID@" - includedir="@includedir@/php" + vernum="@PHP_VERSION_ID@" @@ -53,6 +54,8 @@ echo $extension_dir;; --include-dir) @@ -23,5 +23,5 @@ --extension-dir [$extension_dir] + --sysconfdir [$sysconfdir] --include-dir [$include_dir] + --man-dir [$man_dir] --php-binary [$php_binary] - --php-sapis [$php_sapis] diff --git a/php-db.patch b/php-db.patch index f6ba5be..3b43a3f 100644 --- a/php-db.patch +++ b/php-db.patch @@ -1,7 +1,7 @@ --- php-7.1.1/ext/dba/config.m4.orig 2017-01-17 21:44:40.000000000 +0100 +++ php-7.1.1/ext/dba/config.m4 2017-01-27 22:08:45.385645468 +0100 @@ -245,7 +245,7 @@ - ],[ + ]])],[ AC_EGREP_CPP(yes,[ #include "$THIS_INCLUDE" -#if DB_VERSION_MAJOR == $1 || ($1 == 4 && DB_VERSION_MAJOR == 5) diff --git a/php-dba-link.patch b/php-dba-link.patch index 125e9dc..1479ac7 100644 --- a/php-dba-link.patch +++ b/php-dba-link.patch @@ -8,4 +8,4 @@ + LIBS=$old_LIBS lib_found=1 ]) - ]) + ],[]) diff --git a/php-fcgi-graceful.patch b/php-fcgi-graceful.patch index 2540bc3..96c6496 100644 --- a/php-fcgi-graceful.patch +++ b/php-fcgi-graceful.patch @@ -27,12 +27,12 @@ echo "end!
\n"; +/* Socket we are listening on incoming connections */ +static int fcgi_fd = 0; + - /** - * Process group - */ + #ifndef PHP_WIN32 + /* Did parent received exit signals SIG_TERM/SIG_INT/SIG_QUIT */ + static int exit_signal = 0; @@ -1221,6 +1224,21 @@ - exit(0); } + #endif +/** + * Graceful shutdown. Close listening sockets. @@ -50,16 +50,16 @@ echo "end!
\n"; + + PHP_INI_BEGIN() - STD_PHP_INI_ENTRY("cgi.rfc2616_headers", "0", PHP_INI_ALL, OnUpdateBool, rfc2616_headers, php_cgi_globals_struct, php_cgi_globals) - STD_PHP_INI_ENTRY("cgi.nph", "0", PHP_INI_ALL, OnUpdateBool, nph, php_cgi_globals_struct, php_cgi_globals) + STD_PHP_INI_BOOLEAN("cgi.rfc2616_headers", "0", PHP_INI_ALL, OnUpdateBool, rfc2616_headers, php_cgi_globals_struct, php_cgi_globals) + STD_PHP_INI_BOOLEAN("cgi.nph", "0", PHP_INI_ALL, OnUpdateBool, nph, php_cgi_globals_struct, php_cgi_globals) @@ -1764,7 +1764,6 @@ int requests = 0; int fastcgi; char *bindpath = NULL; - int fcgi_fd = 0; fcgi_request *request = NULL; + int warmup_repeats = 0; int repeats = 1; - int benchmark = 0; @@ -2080,9 +2080,14 @@ parent = 0; diff --git a/php-fpm-config.patch b/php-fpm-config.patch index c020558..11b9933 100644 --- a/php-fpm-config.patch +++ b/php-fpm-config.patch @@ -20,16 +20,16 @@ --- php-5.6.5/sapi/fpm/www.conf.in~ 2015-02-04 19:26:16.000000000 +0200 +++ php-5.6.5/sapi/fpm/www.conf.in 2015-02-04 19:27:25.275218535 +0200 @@ -32,7 +32,7 @@ - ; specific port; + ; (IPv6 and IPv4-mapped) on a specific port; ; '/path/to/unix/socket' - to listen on a unix socket. ; Note: This value is mandatory. -listen = 127.0.0.1:9000 +listen = /var/run/php/@processname@.sock ; Set listen(2) backlog. - ; Default Value: 65535 (-1 on FreeBSD and OpenBSD) + ; Default Value: 511 (-1 on FreeBSD and OpenBSD) @@ -46,9 +46,9 @@ - ; BSD-derived systems allow connections regardless of permissions. + ; and group can be specified either by name or by their numeric IDs. ; Default Values: user and group are set as the running user ; mode is set to 0660 -;listen.owner = @php_fpm_user@ @@ -83,5 +83,5 @@ + $(INSTALL_DATA) sapi/fpm/php-fpm.conf $(INSTALL_ROOT)$(sysconfdir)/php-fpm.conf; \ + $(INSTALL_DATA) sapi/fpm/www.conf $(INSTALL_ROOT)$(sysconfdir)/fpm.d/www.conf; \ fi - + @echo "Installing PHP FPM man page: $(INSTALL_ROOT)$(mandir)/man8/" diff --git a/php-link-libs.patch b/php-link-libs.patch index fb73edd..edd3e4f 100644 --- a/php-link-libs.patch +++ b/php-link-libs.patch @@ -1,7 +1,7 @@ --- php-7.3.0beta3/build/php.m4~ 2018-08-28 13:26:36.000000000 +0300 +++ php-7.3.0beta3/build/php.m4 2018-09-05 18:56:49.744106256 +0300 @@ -1829,18 +1829,18 @@ - dnl Wrapper for AC_CHECK_LIB + dnl Wrapper for AC_CHECK_LIB. dnl AC_DEFUN([PHP_CHECK_LIBRARY], [ - save_old_LDFLAGS=$LDFLAGS diff --git a/php-mysql-ssl-context.patch b/php-mysql-ssl-context.patch new file mode 100644 index 0000000..c8ff48d --- /dev/null +++ b/php-mysql-ssl-context.patch @@ -0,0 +1,36 @@ +; obey default context options +; https://bugs.php.net/bug.php?id=68344 +diff -urbB php-5.6.12/ext/mysqlnd/mysqlnd_net.c php-5.6.12/ext/mysqlnd/mysqlnd_net.c +--- php-5.6.12/ext/mysqlnd/mysqlnd_net.c 2015-08-06 09:55:57.000000000 +0200 ++++ php-5.6.12/ext/mysqlnd/mysqlnd_net.c 2015-08-10 13:25:30.187912101 +0200 +@@ -29,6 +29,7 @@ + #include "mysqlnd_ext_plugin.h" + #include "php_network.h" + #include "zend_ini.h" ++#include "ext/standard/file.h" + #ifdef MYSQLND_COMPRESSION_ENABLED + #include + #endif +@@ -868,6 +868,21 @@ MYSQLND_METHOD(mysqlnd_net, enable_ssl)( + DBG_RETURN(FAIL); + } + ++ if (FG(default_context)) { ++ zval **tmpzval = NULL; ++ int i = 0; ++ /* copy values from default stream settings */ ++ char *opts[] = { "allow_self_signed", "cafile", "capath", "ciphers", "CN_match", ++ "disable_compression", "local_cert", "local_pk", "no_ticket", "passphrase", ++ "peer_fingerprint", "peer_name", "SNI_enabled", "SNI_server_certs", "SNI_server_name", ++ "verify_depth", "verify_peer", "verify_peer_name", NULL }; ++ while (opts[i]) { ++ if (php_stream_context_get_option(FG(default_context), "ssl", opts[i], &tmpzval) == SUCCESS) ++ php_stream_context_set_option(context, "ssl", opts[i], *tmpzval); ++ i++; ++ } ++ } ++ + if (net->data->options.ssl_key) { + zval key_zval; + ZVAL_STRING(&key_zval, net->data->options.ssl_key, 0); + diff --git a/php-oracle-instantclient.patch b/php-oracle-instantclient.patch new file mode 100644 index 0000000..79c08c6 --- /dev/null +++ b/php-oracle-instantclient.patch @@ -0,0 +1,39 @@ +checking Oracle Instant Client SDK header directory... configure: error: Oracle Instant Client SDK header files not found + +--- php-5.3.3/ext/oci8/config.m4.orig 2010-06-25 23:18:09.000000000 +0200 ++++ php-5.3.3/ext/oci8/config.m4 2010-09-10 19:37:23.484315002 +0200 +@@ -304,6 +304,9 @@ + + AC_MSG_CHECKING([Oracle Instant Client SDK header directory]) + ++ dnl Header directory for Instant Client SDK PLD RPM install ++ OCISDKPLDINC=$PHP_OCI8_INSTANT_CLIENT/../include/oracle/client ++ + dnl Header directory for Instant Client SDK RPM install + OCISDKRPMINC=`echo "$PHP_OCI8_INSTANT_CLIENT" | $PHP_OCI8_SED -e 's!^/usr/lib/oracle/\(.*\)/client\('${PHP_OCI8_IC_LIBDIR_SUFFIX}'\)*/lib[/]*$!/usr/include/oracle/\1/client\2!'` + +@@ -313,7 +316,11 @@ + dnl Header directory for manual installation + OCISDKMANINC=`echo "$PHP_OCI8_INSTANT_CLIENT" | $PHP_OCI8_SED -e 's!\(.*\)/lib[/]*$!\1/include!'` + +- if test -f "$OCISDKRPMINC/oci.h"; then ++ if test -f "$OCISDKPLDINC/oci.h"; then ++ AC_MSG_RESULT($OCISDKPLDINC) ++ PHP_ADD_INCLUDE($OCISDKPLDINC) ++ OCI8INCDIR=$OCISDKPLDINC ++ elif test -f "$OCISDKRPMINC/oci.h"; then + AC_MSG_RESULT($OCISDKRPMINC) + PHP_ADD_INCLUDE($OCISDKRPMINC) + OCI8INCDIR=$OCISDKRPMINC +--- php-7.2.0RC1/ext/pdo_oci/config.m4~ 2017-09-11 14:32:13.000000000 +0300 ++++ php-7.2.0RC1/ext/pdo_oci/config.m4 2017-09-11 14:45:25.019346828 +0300 +@@ -113,6 +113,9 @@ + elif test -f "$OCISDKZIPINC/oci.h" ; then + PHP_ADD_INCLUDE($OCISDKZIPINC) + AC_MSG_RESULT($OCISDKZIPINC) ++ elif test -f $PDO_OCI_LIB_DIR/../include/oracle/client/oci.h ; then ++ PHP_ADD_INCLUDE($PDO_OCI_LIB_DIR/../include/oracle/client) ++ AC_MSG_RESULT($PDO_OCI_LIB_DIR/../include/oracle/client) + else + AC_MSG_ERROR([I'm too dumb to figure out where the include dir is in your Instant Client install]) + fi diff --git a/php-shared.patch b/php-shared.patch index 92129ee..ec44dfd 100644 --- a/php-shared.patch +++ b/php-shared.patch @@ -13,8 +13,8 @@ --- php-8.0.0beta4/build/Makefile.global~ 2020-09-28 07:54:00.000000000 +0300 +++ php-8.0.0beta4/build/Makefile.global 2020-09-28 07:54:42.203157017 +0300 @@ -13,8 +13,12 @@ - - build-modules: $(PHP_MODULES) + + build-binaries: $(PHP_BINARIES) -libphp.la: $(PHP_GLOBAL_OBJS) $(PHP_SAPI_OBJS) - $(LIBTOOL) --mode=link $(CC) $(LIBPHP_CFLAGS) $(CFLAGS) $(EXTRA_CFLAGS) -rpath $(phptempdir) $(EXTRA_LDFLAGS) $(LDFLAGS) $(PHP_RPATHS) $(PHP_GLOBAL_OBJS) $(PHP_SAPI_OBJS) $(EXTRA_LIBS) $(ZEND_EXTRA_LIBS) -o $@ @@ -26,7 +26,7 @@ + $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(EXTRA_CFLAGS) -rpath $(phptempdir) $(EXTRA_LDFLAGS) $(LDFLAGS) $(PHP_RPATHS) $(phptempdir)/libphp_common.la $(PHP_SAPI_OBJS) $(EXTRA_LIBS) $(ZEND_EXTRA_LIBS) -o $@ -@$(LIBTOOL) --silent --mode=install cp $@ $(phptempdir)/$@ >/dev/null 2>&1 - libs/libphp$(PHP_MAJOR_VERSION).bundle: $(PHP_GLOBAL_OBJS) $(PHP_SAPI_OBJS) + libs/libphp.bundle: $(PHP_GLOBAL_OBJS) $(PHP_SAPI_OBJS) @@ -31,10 +31,10 @@ install-sapi: $(OVERALL_TARGET) @echo "Installing PHP SAPI module: $(PHP_SAPI)" diff --git a/php-stupidapache_version.patch b/php-stupidapache_version.patch index ab1d8e0..e8ae17b 100644 --- a/php-stupidapache_version.patch +++ b/php-stupidapache_version.patch @@ -1,7 +1,7 @@ --- php-5.4.0alpha2/build/php.m4 2011-08-07 21:13:21.581133944 +0300 +++ php-5.4.0alpha2/build/php.m4 2011-08-07 21:10:21.766717150 +0300 @@ -2607,7 +2609,14 @@ - dnl version for apache1/2. + dnl This macro is used to get a comparable version for Apache. dnl AC_DEFUN([PHP_AP_EXTRACT_VERSION],[ - ac_output=`$1 -v 2>&1 | grep version | $SED -e 's/Oracle-HTTP-//'` diff --git a/php-systzdata.patch b/php-systzdata.patch index 4bf7be9..5b0d84b 100644 --- a/php-systzdata.patch +++ b/php-systzdata.patch @@ -5,6 +5,7 @@ Add support for use of the system timezone database, rather 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) @@ -30,9 +31,9 @@ r3: fix a crash if /usr/share/zoneinfo doesn't exist (Raphael Geissert) 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) @@ -53,9 +54,9 @@ diff -up php-8.0.0beta3/ext/date/config0.m4.systzdata php-8.0.0beta3/ext/date/co 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" @@ -90,7 +91,7 @@ diff -up php-8.0.0beta3/ext/date/lib/parse_tz.c.systzdata php-8.0.0beta3/ext/dat /* 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 } } @@ -521,7 +522,7 @@ diff -up php-8.0.0beta3/ext/date/lib/parse_tz.c.systzdata php-8.0.0beta3/ext/dat { 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; } @@ -570,7 +571,7 @@ diff -up php-8.0.0beta3/ext/date/lib/parse_tz.c.systzdata php-8.0.0beta3/ext/dat } 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; @@ -602,7 +603,25 @@ diff -up php-8.0.0beta3/ext/date/lib/parse_tz.c.systzdata php-8.0.0beta3/ext/dat } 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); @@ -639,23 +658,3 @@ diff -up php-8.0.0beta3/ext/date/lib/parse_tz.c.systzdata php-8.0.0beta3/ext/dat } 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); diff --git a/php-zlib-for-getimagesize.patch b/php-zlib-for-getimagesize.patch index a72a4fa..9f09b2d 100644 --- a/php-zlib-for-getimagesize.patch +++ b/php-zlib-for-getimagesize.patch @@ -20,7 +20,7 @@ see also http://bugs.php.net/bug.php?id=29611 -#if HAVE_ZLIB && !defined(COMPILE_DL_ZLIB) +#if HAVE_ZLIB REGISTER_LONG_CONSTANT("IMAGETYPE_SWC", IMAGE_FILETYPE_SWC, CONST_CS | CONST_PERSISTENT); - #endif + #endif REGISTER_LONG_CONSTANT("IMAGETYPE_IFF", IMAGE_FILETYPE_IFF, CONST_CS | CONST_PERSISTENT); @@ -186,7 +186,7 @@ } diff --git a/php.spec b/php.spec index 26fe840..ff5df85 100644 --- a/php.spec +++ b/php.spec @@ -15,7 +15,7 @@ %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 @@ -31,7 +31,7 @@ %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 @@ -48,7 +48,7 @@ %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 @@ -63,8 +63,8 @@ %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 @@ -120,8 +120,8 @@ Summary: PHP: Hypertext Preprocessor 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 @@ -131,7 +131,7 @@ Epoch: 4 # 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 @@ -160,7 +160,6 @@ Patch24: %{orgname}-zlib-for-getimagesize.patch 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 @@ -168,12 +167,15 @@ Patch44: %{orgname}-include_path.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 @@ -184,10 +186,6 @@ BuildRequires: cyrus-sasl-devel >= 2 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 @@ -197,13 +195,17 @@ BuildRequires: gd-devel >= 2.1 %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} @@ -215,7 +217,7 @@ BuildRequires: libxml2-devel >= 1:2.7.6-4 %{!?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 @@ -249,7 +251,7 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %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 @@ -779,7 +781,8 @@ support in image files. 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} @@ -789,6 +792,10 @@ Provides: php(ffi) = %{version} 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 @@ -1523,6 +1530,7 @@ Moduł PHP dodający obsługę gniazdek. %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} @@ -1531,6 +1539,9 @@ Provides: php(sodium) = %{sodiumver} %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 @@ -1614,6 +1625,7 @@ Summary(pl.UTF-8): Zawiera pliki testów jednostkowych dla PHP i rozszerzeń Group: Libraries URL: http://qa.php.net/ Requires: %{name}-cli +BuildArch: noarch %description tests This package contains unit tests for PHP and its extensions. @@ -1769,11 +1781,14 @@ compression support to PHP. 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 @@ -1786,20 +1801,25 @@ cp -p php.ini-production php.ini %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 @@ -1808,6 +1828,17 @@ 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} @@ -1884,6 +1915,11 @@ ix86=: x8664=: \ 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." @@ -1915,7 +1951,7 @@ if test "$ver" != "PHP_VERSION"; then : 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. @@ -1937,19 +1973,19 @@ if test "$ver" != "%{zipver}"; then : 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. @@ -1959,13 +1995,13 @@ ver=$(awk '/#define PHP_ENCHANT_VERSION/ {print $3}' ext/enchant/php_enchant.h | 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. @@ -2035,37 +2071,40 @@ for sapi in $sapis; do 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 \ @@ -2073,7 +2112,7 @@ for sapi in $sapis; do %{?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} \ @@ -2122,7 +2161,7 @@ for sapi in $sapis; do --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} \ @@ -2404,9 +2443,9 @@ install -d $RPM_BUILD_ROOT%{_includedir}/php/php%{php_suffix}/ext/mbstring 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 @@ -2498,7 +2537,14 @@ fi # 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! @@ -2519,14 +2565,6 @@ for f in /etc/php/*.ini.rpmsave /etc/php/*.d/*.ini.rpmsave; do ' $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 @@ -2694,7 +2732,7 @@ fi %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 @@ -2723,7 +2761,7 @@ fi %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 @@ -2899,7 +2937,7 @@ fi %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} @@ -2971,7 +3009,7 @@ fi %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 @@ -3034,7 +3072,6 @@ fi %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 @@ -3124,18 +3161,18 @@ fi %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 @@ -3180,7 +3217,8 @@ fi %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 -- 2.44.0