From f73234487f05df2ce12b21377d4a5488d12a6a8d Mon Sep 17 00:00:00 2001 From: =?utf8?q?Elan=20Ruusam=C3=A4e?= Date: Mon, 6 May 2019 00:27:21 +0300 Subject: [PATCH] update to php-7.4 snapshot; WIP some patches updated --- extension-shared-optional-dep.patch | 4 +-- fix-test-run.patch | 4 +-- intl-stdc++.patch | 4 +-- opcache.ini | 13 +++++++++ pcre-shared.patch | 30 +++++++++---------- php-both-apxs.patch | 4 +-- php-ini.patch | 45 +++++++++++++++-------------- php-link-libs.patch | 4 +-- php-shared.patch | 4 +-- php-stupidapache_version.patch | 4 +-- php-use-prog_sendmail.patch | 4 +-- php.spec | 24 ++++++++++----- spl-shared.patch | 7 ++--- 13 files changed, 87 insertions(+), 64 deletions(-) diff --git a/extension-shared-optional-dep.patch b/extension-shared-optional-dep.patch index be4597f..6925c72 100644 --- a/extension-shared-optional-dep.patch +++ b/extension-shared-optional-dep.patch @@ -1,5 +1,5 @@ ---- php-5.2.11/acinclude.m4~ 2009-09-21 22:31:13.000000000 +0300 -+++ php-5.2.11/acinclude.m4 2009-09-21 22:32:11.001106977 +0300 +--- php-5.2.11/build/php.m4~ 2009-09-21 22:31:13.000000000 +0300 ++++ php-5.2.11/build/php.m4 2009-09-21 22:32:11.001106977 +0300 @@ -1019,7 +1019,7 @@ is_it_shared=$[PHP_]translit($2,a-z_-,A-Z__)[_SHARED] is_it_enabled=$[PHP_]translit($2,a-z_-,A-Z__) diff --git a/fix-test-run.patch b/fix-test-run.patch index bd3c3d7..fcdbc71 100644 --- a/fix-test-run.patch +++ b/fix-test-run.patch @@ -12,8 +12,8 @@ PHP_SUBST_OLD(PHP_INSTALLED_SAPIS) PHP_SUBST(PHP_EXECUTABLE) ---- php-5.5.11/Makefile.global 2014-04-27 15:05:38.963814051 +0300 -+++ php-5.5.11/Makefile.global 2014-04-27 15:09:54.438443707 +0300 +--- 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 @@ done; \ fi diff --git a/intl-stdc++.patch b/intl-stdc++.patch index f762c9b..7c18064 100644 --- a/intl-stdc++.patch +++ b/intl-stdc++.patch @@ -4,8 +4,8 @@ it's needed for ext/intl but it requires icu which already links with stdc++ so just omit PHP_ADD_LIBRARY(stdc++) ---- php-7.0.6/acinclude.m4~ 2016-05-16 18:31:11.000000000 +0300 -+++ php-7.0.6/acinclude.m4 2016-05-16 18:50:34.614991634 +0300 +--- php-7.0.6/build/php.m4~ 2016-05-16 18:31:11.000000000 +0300 ++++ php-7.0.6/build/php.m4 2016-05-16 18:50:34.614991634 +0300 @@ -762,7 +762,6 @@ if test -z "$php_cxx_done"; then AC_PROG_CXX diff --git a/opcache.ini b/opcache.ini index 2cc841d..9f414a0 100644 --- a/opcache.ini +++ b/opcache.ini @@ -126,3 +126,16 @@ zend_extension=opcache.so ; If specified, it produces opcode dumps for debugging different stages of ; optimizations. ;opcache.opt_debug_level=0 + +; Specifies a PHP script that is going to be compiled and executed at server +; start-up. +; http://php.net/opcache.preload +;opcache.preload= + +; Prevents caching files that are less than this number of seconds old. It +; protects from caching of incompletely updated files. In case all file updates +; on your site are atomic, you may increase performance by setting it to "0". +;opcache.file_update_protection=2 + +; Absolute path used to store shared lockfiles (for *nix only). +;opcache.lockfile_path=/tmp diff --git a/pcre-shared.patch b/pcre-shared.patch index 384b23d..b57e59e 100644 --- a/pcre-shared.patch +++ b/pcre-shared.patch @@ -1,18 +1,18 @@ ---- php-7.3.0RC5/ext/pcre/config0.m4~ 2018-11-06 12:22:53.000000000 +0200 -+++ php-7.3.0RC5/ext/pcre/config0.m4 2018-11-12 13:30:52.805036671 +0200 -@@ -84,8 +84,9 @@ - ]) - fi - -- PHP_NEW_EXTENSION(pcre, php_pcre.c, no,, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1) -+ PHP_NEW_EXTENSION(pcre, php_pcre.c, $ext_shared,, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1) - PHP_INSTALL_HEADERS([ext/pcre], [php_pcre.h]) -+ EXTRA_LIBS="$EXTRA_LIBS -lpcre2-8" - else - AC_MSG_CHECKING([for PCRE library to use]) - AC_MSG_RESULT([bundled]) ---- php-7.3.0alpha3/ext/pcre/php_pcre.h~ 2018-07-03 15:56:43.000000000 +0300 -+++ php-7.3.0alpha3/ext/pcre/php_pcre.h 2018-07-10 11:11:55.739017013 +0300 +--- php-src-PHP-7.4/ext/pcre/config0.m4~ 2019-05-04 15:24:15.000000000 +0300 ++++ php-src-PHP-7.4/ext/pcre/config0.m4 2019-05-05 18:48:35.524688151 +0300 +@@ -58,8 +58,9 @@ + fi + fi + +- PHP_NEW_EXTENSION(pcre, php_pcre.c, no,, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1) ++ PHP_NEW_EXTENSION(pcre, php_pcre.c, $ext_shared,, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1) + PHP_INSTALL_HEADERS([ext/pcre], [php_pcre.h]) ++ EXTRA_LIBS="$EXTRA_LIBS -lpcre2-8" + else + AC_MSG_CHECKING([for PCRE library to use]) + AC_MSG_RESULT([bundled]) +--- php-7.3.0beta3/ext/pcre/php_pcre.h~ 2018-09-11 11:41:50.000000000 +0300 ++++ php-7.3.0beta3/ext/pcre/php_pcre.h 2018-09-11 11:41:54.865778887 +0300 @@ -33,7 +33,29 @@ #include #endif diff --git a/php-both-apxs.patch b/php-both-apxs.patch index 8e7bd89..3cba2ae 100644 --- a/php-both-apxs.patch +++ b/php-both-apxs.patch @@ -1,5 +1,5 @@ ---- php-5.2.4/Makefile.global~ 2007-08-31 19:35:54.000000000 +0300 -+++ php-5.2.4/Makefile.global 2007-08-31 19:40:18.287528480 +0300 +--- php-5.2.4/build/Makefile.global~ 2007-08-31 19:35:54.000000000 +0300 ++++ php-5.2.4/build/Makefile.global 2007-08-31 19:40:18.287528480 +0300 @@ -21,6 +21,12 @@ $(LIBTOOL) --mode=link $(CC) -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 diff --git a/php-ini.patch b/php-ini.patch index 570f94d..b094643 100644 --- a/php-ini.patch +++ b/php-ini.patch @@ -1,5 +1,5 @@ ---- php-7.3.0alpha3/php.ini~ 2018-07-09 13:40:12.000000000 +0300 -+++ php-7.3.0alpha3/php.ini 2018-07-09 17:27:47.804465246 +0300 +--- php-src-PHP-7.4/php.ini~ 2019-05-05 01:01:58.000000000 +0300 ++++ php-src-PHP-7.4/php.ini 2019-05-05 01:02:49.674577615 +0300 @@ -82,6 +82,20 @@ ; much more verbose when it comes to errors. We recommending using the ; development version only in development environments as errors shown to @@ -127,14 +127,12 @@ ;;;;;;;;;;;;;;;; ; File Uploads ; ;;;;;;;;;;;;;;;; -@@ -844,49 +844,9 @@ +@@ -847,47 +847,8 @@ ; deprecated in a future PHP major version. So, when it is possible, please ; move to the new ('extension=) syntax. ; -; Notes for Windows environments : -+; Ideally in PLD Linux you should install appropriate php73- or -+; php73-pecl- package. - ; +-; -; - Many DLL files are located in the extensions/ (PHP 4) or ext/ (PHP 5+) -; extension folders as well as the separate PECL DLL download (PHP 5+). -; Be sure to appropriately set the extension_dir directive. @@ -147,7 +145,6 @@ -;extension=gmp -;extension=intl -;extension=imap --;extension=interbase -;extension=ldap -;extension=mbstring -;extension=exif ; Must be after mbstring as it depends on it @@ -175,10 +172,11 @@ -;extension=tidy -;extension=xmlrpc -;extension=xsl -- ++; Ideally in PLD Linux you should install appropriate php74- or ++; php74-pecl- package. + ;;;;;;;;;;;;;;;;;;; ; Module Settings ; - ;;;;;;;;;;;;;;;;;;; @@ -923,19 +883,19 @@ ; Use of this INI entry is deprecated, use global input_encoding instead. ; If empty, default_charset or input_encoding or iconv.input_encoding is used. @@ -202,16 +200,6 @@ [intl] ;intl.default_locale = -@@ -1191,6 +1104,9 @@ - ; http://php.net/mysqli.default-socket - mysqli.default_socket = - -+; The name of the character set to use as the default character set. -+;mysqli.connect_charset=utf8 -+ - ; Default host for mysql_connect() (doesn't apply in safe mode). - ; http://php.net/mysqli.default-host - mysqli.default_host = @@ -1357,7 +1273,7 @@ [browscap] @@ -230,10 +218,11 @@ ; (time to live) Sets the number of second while cached file will be used ; instead of original one. -@@ -1670,133 +1670,6 @@ +@@ -1666,147 +1666,7 @@ + [dba] ;dba.default_handler= - +- -[opcache] -; Determines if Zend OPCache is enabled -;opcache.enable=1 @@ -361,6 +350,20 @@ -; optimizations. -;opcache.opt_debug_level=0 - +-; Specifies a PHP script that is going to be compiled and executed at server +-; start-up. +-; http://php.net/opcache.preload +-;opcache.preload= +- +-; Prevents caching files that are less than this number of seconds old. It +-; protects from caching of incompletely updated files. In case all file updates +-; on your site are atomic, you may increase performance by setting it to "0". +-;opcache.file_update_protection=2 +- +-; Absolute path used to store shared lockfiles (for *nix only). +-;opcache.lockfile_path=/tmp +- ++; [curl] ; A default value for the CURLOPT_CAINFO option. This is required to be an ; absolute path. diff --git a/php-link-libs.patch b/php-link-libs.patch index 9a37701..56232e5 100644 --- a/php-link-libs.patch +++ b/php-link-libs.patch @@ -8,8 +8,8 @@ PHP_CHECK_FUNC(dlopen, dl) if test "$ac_cv_func_dlopen" = "yes"; then ---- php-7.3.0beta3/acinclude.m4~ 2018-08-28 13:26:36.000000000 +0300 -+++ php-7.3.0beta3/acinclude.m4 2018-09-05 18:56:49.744106256 +0300 +--- 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 diff --git a/php-shared.patch b/php-shared.patch index 24c6848..9b426c2 100644 --- a/php-shared.patch +++ b/php-shared.patch @@ -10,8 +10,8 @@ dnl Checks for some support/generator progs PHP_PROG_AWK PHP_PROG_BISON ---- php-5.2.4/Makefile.global~ 2007-08-31 19:13:58.000000000 +0300 -+++ php-5.2.4/Makefile.global 2007-08-31 19:19:33.799017413 +0300 +--- php-5.2.4/build/Makefile.global~ 2007-08-31 19:13:58.000000000 +0300 ++++ php-5.2.4/build/Makefile.global 2007-08-31 19:19:33.799017413 +0300 @@ -13,8 +13,12 @@ build-modules: $(PHP_MODULES) diff --git a/php-stupidapache_version.patch b/php-stupidapache_version.patch index 100ec4f..ab1d8e0 100644 --- a/php-stupidapache_version.patch +++ b/php-stupidapache_version.patch @@ -1,5 +1,5 @@ ---- php-5.4.0alpha2/acinclude.m4 2011-08-07 21:13:21.581133944 +0300 -+++ php-5.4.0alpha2/acinclude.m4 2011-08-07 21:10:21.766717150 +0300 +--- 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 diff --git a/php-use-prog_sendmail.patch b/php-use-prog_sendmail.patch index 5f4af4e..161e446 100644 --- a/php-use-prog_sendmail.patch +++ b/php-use-prog_sendmail.patch @@ -1,5 +1,5 @@ ---- php-5.2.6/acinclude.m4~ 2008-10-15 13:44:25.000000000 +0300 -+++ php-5.2.6/acinclude.m4 2008-10-15 13:55:05.359850285 +0300 +--- php-5.2.6/build/php.m4~ 2008-10-15 13:44:25.000000000 +0300 ++++ php-5.2.6/build/php.m4 2008-10-15 13:55:05.359850285 +0300 @@ -2037,8 +2037,10 @@ dnl Search for the sendmail binary dnl diff --git a/php.spec b/php.spec index 2f40229..f8c899a 100644 --- a/php.spec +++ b/php.spec @@ -1,5 +1,8 @@ # NOTES # - mysqlnd driver doesn't support reconnect: https://bugs.php.net/bug.php?id=52561 +# TODO 7.4: +# - follow upstream: drop spl, pcre, hash subpackages (tired of maintaining them) +# - handle acinclude.m4 -> build/php.m4 rename # TODO 7.3: # - branch php-7.2 and merge dev-7.3 into head once official announcement ready # TODO 7.2: @@ -147,7 +150,7 @@ %define subver %{nil} %define orgname php -%define ver_suffix 73 +%define ver_suffix 74 %define php_suffix %{!?with_default_php:%{ver_suffix}} Summary: PHP: Hypertext Preprocessor Summary(fr.UTF-8): Le langage de script embarque-HTML PHP @@ -156,8 +159,8 @@ Summary(pt_BR.UTF-8): A linguagem de script PHP Summary(ru.UTF-8): PHP Версии 7 - язык препроцессирования HTML-файлов, выполняемый на сервере Summary(uk.UTF-8): PHP Версії 7 - мова препроцесування HTML-файлів, виконувана на сервері Name: %{orgname}%{php_suffix} -Version: 7.3.4 -Release: 2 +Version: 7.4.0 +Release: 0.1 Epoch: 4 # All files licensed under PHP version 3.01, except # Zend is licensed under Zend @@ -165,8 +168,9 @@ Epoch: 4 License: PHP 3.01 and Zend and BSD Group: Libraries #Source0: https://downloads.php.net/~cmb/php-%{version}%{subver}.tar.xz -Source0: https://php.net/distributions/%{orgname}-%{version}.tar.xz -# Source0-md5: eb860e97b4be43c1aad056fa7dde1157 +#Source0: https://php.net/distributions/%{orgname}-%{version}.tar.xz +Source0: https://github.com/php/php-src/archive/PHP-7.4/%{orgname}-%{version}.tar.gz +# Source0-md5: e54970ae767eae731995f5bb2b4e0f43 Source1: opcache.ini Source2: %{orgname}-mod_php.conf Source3: %{orgname}-cgi-fcgi.ini @@ -323,7 +327,7 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define pharver %{version} %define sqlite3ver %{version} %define zipver 1.15.4 -%define phpdbgver 0.5.0 +%define phpdbgver %{version} %define sodiumver %{version} %define _zend_zts %{!?with_zts:0}%{?with_zts:1} @@ -1976,7 +1980,11 @@ compression support to PHP. Moduł PHP umożliwiający używanie kompresji zlib. %prep +%if 0 %setup -q -n %{orgname}-%{version}%{?subver} +%else +%setup -q -n php-src-PHP-7.4 +%endif cp -p php.ini-production php.ini %patch0 -p1 %patch1 -p1 @@ -2194,8 +2202,8 @@ if test "$ver" != "%{jsonver}"; then : Update the jsonver macro and rebuild. exit 1 fi -ver=$(sed -n '/#define PHPDBG_VERSION /{s/.* "//;s/".*$//;p}' sapi/phpdbg/phpdbg.h) -if test "$ver" != "%{phpdbgver}"; then +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 diff --git a/spl-shared.patch b/spl-shared.patch index d51ca9b..eb121c2 100644 --- a/spl-shared.patch +++ b/spl-shared.patch @@ -1,9 +1,8 @@ ---- php-7.3.0beta3/ext/spl/config.m4~ 2018-08-28 13:26:31.000000000 +0300 -+++ php-7.3.0beta3/ext/spl/config.m4 2018-09-05 19:06:13.737232662 +0300 -@@ -1,6 +1,6 @@ +--- php-src-PHP-7.4/ext/spl/config.m4~ 2019-05-04 15:24:15.000000000 +0300 ++++ php-src-PHP-7.4/ext/spl/config.m4 2019-05-05 18:45:49.109324631 +0300 +@@ -1,5 +1,5 @@ dnl config.m4 for extension SPL - AC_DEFINE(HAVE_SPL, 1, [Whether you want SPL (Standard PHP Library) support]) - PHP_NEW_EXTENSION(spl, php_spl.c spl_functions.c spl_engine.c spl_iterators.c spl_array.c spl_directory.c spl_exceptions.c spl_observer.c spl_dllist.c spl_heap.c spl_fixedarray.c, no,, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1) + PHP_NEW_EXTENSION(spl, php_spl.c spl_functions.c spl_engine.c spl_iterators.c spl_array.c spl_directory.c spl_exceptions.c spl_observer.c spl_dllist.c spl_heap.c spl_fixedarray.c, $ext_shared,, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1) PHP_INSTALL_HEADERS([ext/spl], [php_spl.h spl_array.h spl_directory.h spl_engine.h spl_exceptions.h spl_functions.h spl_iterators.h spl_observer.h spl_dllist.h spl_heap.h spl_fixedarray.h]) -- 2.44.0