diff options
author | Remi Collet <remi@remirepo.net> | 2017-08-30 11:21:43 +0200 |
---|---|---|
committer | Remi Collet <remi@remirepo.net> | 2017-08-30 11:21:43 +0200 |
commit | d15b114d16b446eea7113a982021c7b03c387b50 (patch) | |
tree | 76f481324b02dbe2b2552bc04398d0629cd90830 | |
parent | 43681eb3e835ec5dc36297caa13315f3692bcab9 (diff) |
PHP 7.2.0RC1
-rw-r--r-- | 10-opcache.ini | 5 | ||||
-rw-r--r-- | 20-oci8.ini | 2 | ||||
-rw-r--r-- | bug71914.patch | 192 | ||||
-rw-r--r-- | failed.txt | 13 | ||||
-rw-r--r-- | php-5.6.3-oci8conf.patch | 39 | ||||
-rw-r--r-- | php-7.0.0-fixheader.patch | 23 | ||||
-rw-r--r-- | php-7.1.0-libdb.patch (renamed from php-7.0.2-libdb.patch) | 20 | ||||
-rw-r--r-- | php-7.2.0-fixheader.patch | 15 | ||||
-rw-r--r-- | php-7.2.0-includedir.patch (renamed from php-7.0.0-includedir.patch) | 6 | ||||
-rw-r--r-- | php-7.2.0-oci8conf.patch | 35 | ||||
-rw-r--r-- | php-7.2.0-systzdata-v15.patch (renamed from php-7.1.0-systzdata-v14.patch) | 102 | ||||
-rw-r--r-- | php-fpm.conf | 14 | ||||
-rw-r--r-- | php-timelib.patch | 30 | ||||
-rw-r--r-- | php.conf | 2 | ||||
-rw-r--r-- | php.conf2 | 2 | ||||
-rw-r--r-- | php.ini | 45 | ||||
-rw-r--r-- | php72.spec (renamed from php71.spec) | 235 |
17 files changed, 317 insertions, 463 deletions
diff --git a/10-opcache.ini b/10-opcache.ini index cd4c8fa..1bf3d2a 100644 --- a/10-opcache.ini +++ b/10-opcache.ini @@ -1,5 +1,5 @@ ; Enable Zend OPcache extension module -zend_extension=opcache.so +zend_extension=opcache ; Determines if Zend OPCache is enabled opcache.enable=1 @@ -14,7 +14,7 @@ opcache.memory_consumption=128 opcache.interned_strings_buffer=8 ; The maximum number of keys (scripts) in the OPcache hash table. -; Only numbers between 200 and 100000 are allowed. +; Only numbers between 200 and 1000000 are allowed. opcache.max_accelerated_files=4000 ; The maximum percentage of "wasted" memory until a restart is scheduled. @@ -43,6 +43,7 @@ opcache.max_accelerated_files=4000 ;opcache.save_comments=1 ; If enabled, a fast shutdown sequence is used for the accelerated code +; Depending on the used Memory Manager this may cause some incompatibilities. ;opcache.fast_shutdown=0 ; Allow file existence override (file_exists, etc.) performance feature. diff --git a/20-oci8.ini b/20-oci8.ini index f1fe49a..46e0668 100644 --- a/20-oci8.ini +++ b/20-oci8.ini @@ -1,5 +1,5 @@ ; Enable oci8 extension module -extension=oci8.so +extension=oci8 ; Connection: Enables privileged connections using external ; credentials (OCI_SYSOPER, OCI_SYSDBA) diff --git a/bug71914.patch b/bug71914.patch deleted file mode 100644 index f52389e..0000000 --- a/bug71914.patch +++ /dev/null @@ -1,192 +0,0 @@ -From 2e6d70787c93413daecbea529bf0f74fa901d1db Mon Sep 17 00:00:00 2001 -From: Xinchen Hui <laruence@gmail.com> -Date: Tue, 29 Mar 2016 17:14:36 +0800 -Subject: [PATCH] Fixed bug #71914 (Reference is lost in "switch") - ---- - NEWS | 1 + - Zend/tests/bug71914.phpt | 25 +++++++++++++++++++++++++ - Zend/zend_vm_def.h | 2 +- - Zend/zend_vm_execute.h | 18 +++++++++--------- - 4 files changed, 36 insertions(+), 10 deletions(-) - create mode 100644 Zend/tests/bug71914.phpt - -diff --git a/Zend/tests/bug71914.phpt b/Zend/tests/bug71914.phpt -new file mode 100644 -index 0000000..8f825f8 ---- /dev/null -+++ b/Zend/tests/bug71914.phpt -@@ -0,0 +1,25 @@ -+--TEST-- -+Bug #71914 (Reference is lost in "switch") -+--FILE-- -+<?php -+ -+function bug(&$value) { -+ switch ($value) { -+ case "xxxx": -+ $value = true; -+ break; -+ } -+} -+ -+ -+function test($arr, &$dummy) { -+ bug($arr["str"]); -+ var_dump($arr["str"]); -+} -+ -+ -+$array = array("str" => "xxxx"); -+test($array, $array["str"]); -+?> -+--EXPECT-- -+bool(true) -diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h -index 2c721c3..8e658f5 100644 ---- a/Zend/zend_vm_def.h -+++ b/Zend/zend_vm_def.h -@@ -4903,7 +4903,7 @@ ZEND_VM_HANDLER(48, ZEND_CASE, CONST|TMPVAR|CV, CONST|TMPVAR|CV) - SAVE_OPLINE(); - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = GET_OP1_UNDEF_CV(op1, BP_VAR_R); -- } else if ((OP1_TYPE & (IS_VAR|IS_CV)) && UNEXPECTED(Z_ISREF_P(op1))) { -+ } else if ((OP1_TYPE & IS_VAR) && UNEXPECTED(Z_ISREF_P(op1))) { - /* Don't keep lock on reference, lock the value instead */ - if (UNEXPECTED(Z_REFCOUNT_P(op1) == 1)) { - ZVAL_UNREF(op1); -diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h -index c719aa2..bdc1bd7 100644 ---- a/Zend/zend_vm_execute.h -+++ b/Zend/zend_vm_execute.h -@@ -5858,7 +5858,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CASE_SPEC_CONST_CONST_HANDLER( - SAVE_OPLINE(); - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = GET_OP1_UNDEF_CV(op1, BP_VAR_R); -- } else if ((IS_CONST & (IS_VAR|IS_CV)) && UNEXPECTED(Z_ISREF_P(op1))) { -+ } else if ((IS_CONST & IS_VAR) && UNEXPECTED(Z_ISREF_P(op1))) { - /* Don't keep lock on reference, lock the value instead */ - if (UNEXPECTED(Z_REFCOUNT_P(op1) == 1)) { - ZVAL_UNREF(op1); -@@ -9654,7 +9654,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CASE_SPEC_CONST_CV_HANDLER(ZEN - SAVE_OPLINE(); - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = GET_OP1_UNDEF_CV(op1, BP_VAR_R); -- } else if ((IS_CONST & (IS_VAR|IS_CV)) && UNEXPECTED(Z_ISREF_P(op1))) { -+ } else if ((IS_CONST & IS_VAR) && UNEXPECTED(Z_ISREF_P(op1))) { - /* Don't keep lock on reference, lock the value instead */ - if (UNEXPECTED(Z_REFCOUNT_P(op1) == 1)) { - ZVAL_UNREF(op1); -@@ -11428,7 +11428,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CASE_SPEC_CONST_TMPVAR_HANDLER - SAVE_OPLINE(); - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = GET_OP1_UNDEF_CV(op1, BP_VAR_R); -- } else if ((IS_CONST & (IS_VAR|IS_CV)) && UNEXPECTED(Z_ISREF_P(op1))) { -+ } else if ((IS_CONST & IS_VAR) && UNEXPECTED(Z_ISREF_P(op1))) { - /* Don't keep lock on reference, lock the value instead */ - if (UNEXPECTED(Z_REFCOUNT_P(op1) == 1)) { - ZVAL_UNREF(op1); -@@ -32184,7 +32184,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CASE_SPEC_CV_CONST_HANDLER(ZEN - SAVE_OPLINE(); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = GET_OP1_UNDEF_CV(op1, BP_VAR_R); -- } else if ((IS_CV & (IS_VAR|IS_CV)) && UNEXPECTED(Z_ISREF_P(op1))) { -+ } else if ((IS_CV & IS_VAR) && UNEXPECTED(Z_ISREF_P(op1))) { - /* Don't keep lock on reference, lock the value instead */ - if (UNEXPECTED(Z_REFCOUNT_P(op1) == 1)) { - ZVAL_UNREF(op1); -@@ -37280,7 +37280,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CASE_SPEC_CV_CV_HANDLER(ZEND_O - SAVE_OPLINE(); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = GET_OP1_UNDEF_CV(op1, BP_VAR_R); -- } else if ((IS_CV & (IS_VAR|IS_CV)) && UNEXPECTED(Z_ISREF_P(op1))) { -+ } else if ((IS_CV & IS_VAR) && UNEXPECTED(Z_ISREF_P(op1))) { - /* Don't keep lock on reference, lock the value instead */ - if (UNEXPECTED(Z_REFCOUNT_P(op1) == 1)) { - ZVAL_UNREF(op1); -@@ -39873,7 +39873,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CASE_SPEC_CV_TMPVAR_HANDLER(ZE - SAVE_OPLINE(); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = GET_OP1_UNDEF_CV(op1, BP_VAR_R); -- } else if ((IS_CV & (IS_VAR|IS_CV)) && UNEXPECTED(Z_ISREF_P(op1))) { -+ } else if ((IS_CV & IS_VAR) && UNEXPECTED(Z_ISREF_P(op1))) { - /* Don't keep lock on reference, lock the value instead */ - if (UNEXPECTED(Z_REFCOUNT_P(op1) == 1)) { - ZVAL_UNREF(op1); -@@ -42108,7 +42108,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CASE_SPEC_TMPVAR_CONST_HANDLER - SAVE_OPLINE(); - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = GET_OP1_UNDEF_CV(op1, BP_VAR_R); -- } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && UNEXPECTED(Z_ISREF_P(op1))) { -+ } else if (((IS_TMP_VAR|IS_VAR) & IS_VAR) && UNEXPECTED(Z_ISREF_P(op1))) { - /* Don't keep lock on reference, lock the value instead */ - if (UNEXPECTED(Z_REFCOUNT_P(op1) == 1)) { - ZVAL_UNREF(op1); -@@ -44256,7 +44256,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CASE_SPEC_TMPVAR_CV_HANDLER(ZE - SAVE_OPLINE(); - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = GET_OP1_UNDEF_CV(op1, BP_VAR_R); -- } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && UNEXPECTED(Z_ISREF_P(op1))) { -+ } else if (((IS_TMP_VAR|IS_VAR) & IS_VAR) && UNEXPECTED(Z_ISREF_P(op1))) { - /* Don't keep lock on reference, lock the value instead */ - if (UNEXPECTED(Z_REFCOUNT_P(op1) == 1)) { - ZVAL_UNREF(op1); -@@ -45403,7 +45403,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CASE_SPEC_TMPVAR_TMPVAR_HANDLE - SAVE_OPLINE(); - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = GET_OP1_UNDEF_CV(op1, BP_VAR_R); -- } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && UNEXPECTED(Z_ISREF_P(op1))) { -+ } else if (((IS_TMP_VAR|IS_VAR) & IS_VAR) && UNEXPECTED(Z_ISREF_P(op1))) { - /* Don't keep lock on reference, lock the value instead */ - if (UNEXPECTED(Z_REFCOUNT_P(op1) == 1)) { - ZVAL_UNREF(op1); --- -2.1.4 - -From 256593abcf0452d2a95cc1869baeeaea0d72d2a7 Mon Sep 17 00:00:00 2001 -From: Xinchen Hui <laruence@gmail.com> -Date: Tue, 29 Mar 2016 17:52:58 +0800 -Subject: [PATCH] Update tests - ---- - Zend/tests/bug71914.phpt | 15 +++++++++++++++ - 1 file changed, 15 insertions(+) - -diff --git a/Zend/tests/bug71914.phpt b/Zend/tests/bug71914.phpt -index 8f825f8..a43eb56 100644 ---- a/Zend/tests/bug71914.phpt -+++ b/Zend/tests/bug71914.phpt -@@ -11,15 +11,30 @@ function bug(&$value) { - } - } - -+function returnArray() { -+ $array = array(); -+ $array["str"] = "xxxx"; -+ return $array; -+} -+ -+class Foo { -+ public $array = array("str" => "xxxx"); -+} - - function test($arr, &$dummy) { - bug($arr["str"]); - var_dump($arr["str"]); - } - -+$foo = new Foo(); -+$arr = returnArray(); - - $array = array("str" => "xxxx"); - test($array, $array["str"]); -+test($arr, $arr["str"]); -+test($foo->array, $foo->array["str"]); - ?> - --EXPECT-- - bool(true) -+bool(true) -+bool(true) --- -2.1.4 - @@ -1,14 +1,10 @@ -===== 7.1.9RC1 (2017-08-17) +===== 7.2.0RC1 (2017-08-31) $ grep -r 'Tests failed' /var/lib/mock/*/build.log /var/lib/mock/el6i/build.log:Tests failed : 0 /var/lib/mock/el6x/build.log:Tests failed : 0 /var/lib/mock/el7x/build.log:Tests failed : 0 -/var/lib/mock/fc23i/build.log:Tests failed : 0 -/var/lib/mock/fc23x/build.log:Tests failed : 0 -/var/lib/mock/fc24i/build.log:Tests failed : 0 -/var/lib/mock/fc24x/build.log:Tests failed : 0 /var/lib/mock/fc25i/build.log:Tests failed : 0 /var/lib/mock/fc25x/build.log:Tests failed : 0 /var/lib/mock/fc26i/build.log:Tests failed : 1 @@ -16,13 +12,6 @@ $ grep -r 'Tests failed' /var/lib/mock/*/build.log /var/lib/mock/fc27x/build.log:Tests failed : 1 -fc26i - 1 Bug #64438 proc_open hangs with stdin/out with 4097+ bytes [ext/standard/tests/streams/proc_open_bug64438.phpt] -fc26x - 5 proc_nice() basic behaviour [ext/standard/tests/general_functions/proc_nice_basic.phpt] - 5 Check cli_process_title support on Unix [sapi/cli/tests/cli_process_title_unix.phpt] -fc27x - 5 substr_compare() [ext/standard/tests/strings/substr_compare.phpt] 1 proc_open give erratic test results :( diff --git a/php-5.6.3-oci8conf.patch b/php-5.6.3-oci8conf.patch deleted file mode 100644 index f2d8f99..0000000 --- a/php-5.6.3-oci8conf.patch +++ /dev/null @@ -1,39 +0,0 @@ -diff -up php5.3-201104170830/ext/ldap/php_ldap.h.remi-oci8 php5.3-201104170830/ext/ldap/php_ldap.h ---- php5.3-201104170830/ext/ldap/php_ldap.h.remi-oci8 2011-01-01 04:37:23.000000000 +0100 -+++ php5.3-201104170830/ext/ldap/php_ldap.h 2011-04-17 11:55:25.630871609 +0200 -@@ -27,7 +27,7 @@ - #include <lber.h> - #endif - --#include <ldap.h> -+#include "/usr/include/ldap.h" - - extern zend_module_entry ldap_module_entry; - #define ldap_module_ptr &ldap_module_entry -diff -up php5.3-201104170830/ext/oci8/config.m4.remi-oci8 php5.3-201104170830/ext/oci8/config.m4 ---- php5.3-201104170830/ext/oci8/config.m4.remi-oci8 2011-03-30 00:35:22.000000000 +0200 -+++ php5.3-201104170830/ext/oci8/config.m4 2011-04-17 11:55:25.628871315 +0200 -@@ -376,6 +376,7 @@ if test "$PHP_OCI8" != "no"; then - - 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!'` -+ OCISDKRPMINC=`echo "$PHP_OCI8_INSTANT_CLIENT" | $PHP_OCI8_SED -e 's!^/usr/\(lib64\|lib\)/oracle/\(.*\)/\(client64\|client\)/lib[/]*$!/usr/include/oracle/\2/\3!'` - - dnl Header directory for Instant Client SDK zip file install - OCISDKZIPINC=$PHP_OCI8_INSTANT_CLIENT/sdk/include -diff -up php5.3-201104170830/ext/pdo_oci/config.m4.remi-oci8 php5.3-201104170830/ext/pdo_oci/config.m4 ---- php5.3-201104170830/ext/pdo_oci/config.m4.remi-oci8 2011-04-02 04:35:24.000000000 +0200 -+++ php5.3-201104170830/ext/pdo_oci/config.m4 2011-04-17 12:02:42.837194120 +0200 -@@ -104,8 +104,10 @@ You need to tell me where to find your O - else - AC_MSG_ERROR([I'm too dumb to figure out where the include dir is in your Instant Client install]) - fi -- if test -f "$PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/$PDO_OCI_CLIENT_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME" ; then -- PDO_OCI_LIB_DIR="$PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/$PDO_OCI_CLIENT_DIR/lib" -+ if test -f "$PDO_OCI_IC_PREFIX/lib64/oracle/$PDO_OCI_IC_VERS/$PDO_OCI_CLIENT_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME" ; then -+ PDO_OCI_LIB_DIR="$PDO_OCI_IC_PREFIX/lib64/oracle/$PDO_OCI_IC_VERS/$PDO_OCI_CLIENT_DIR/lib" -+ elif test -f "$PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/$PDO_OCI_CLIENT_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME" ; then -+ PDO_OCI_LIB_DIR="$PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/$PDO_OCI_CLIENT_DIR/lib" - elif test -f "$PDO_OCI_IC_PREFIX/$PDO_OCI_CLIENT_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME" ; then - PDO_OCI_LIB_DIR="$PDO_OCI_IC_PREFIX/$PDO_OCI_CLIENT_DIR/lib" - elif test -f "$PDO_OCI_IC_PREFIX/libclntsh.$SHLIB_SUFFIX_NAME" ; then diff --git a/php-7.0.0-fixheader.patch b/php-7.0.0-fixheader.patch deleted file mode 100644 index 771a19e..0000000 --- a/php-7.0.0-fixheader.patch +++ /dev/null @@ -1,23 +0,0 @@ - -Make generated php_config.h constant across rebuilds. - ---- php-7.0.0/configure.in.fixheader -+++ php-7.0.0/configure.in -@@ -1278,7 +1278,7 @@ fi - EXTRA_LDFLAGS="$EXTRA_LDFLAGS $PHP_LDFLAGS" - EXTRA_LDFLAGS_PROGRAM="$EXTRA_LDFLAGS_PROGRAM $PHP_LDFLAGS" - --PHP_BUILD_DATE=`date '+%Y-%m-%d'` -+PHP_BUILD_DATE=`date '+%Y-%m-%d' -r $srcdir/NEWS` - AC_DEFINE_UNQUOTED(PHP_BUILD_DATE,"$PHP_BUILD_DATE",[PHP build date]) - - case $host_alias in -@@ -1289,7 +1289,7 @@ case $host_alias in - AC_DEFINE_UNQUOTED(PHP_UNAME,"$PHP_UNAME",[hardcode for each of the cross compiler host]) - ;; - *) -- PHP_UNAME=`uname -a | xargs` -+ PHP_UNAME=`uname | xargs` - AC_DEFINE_UNQUOTED(PHP_UNAME,"$PHP_UNAME",[uname -a output]) - PHP_OS=`uname | xargs` - AC_DEFINE_UNQUOTED(PHP_OS,"$PHP_OS",[uname output]) diff --git a/php-7.0.2-libdb.patch b/php-7.1.0-libdb.patch index f9bff95..ca36d1a 100644 --- a/php-7.0.2-libdb.patch +++ b/php-7.1.0-libdb.patch @@ -1,7 +1,7 @@ -diff -up php-7.0.2RC1/ext/dba/config.m4.libdb php-7.0.2RC1/ext/dba/config.m4 ---- php-7.0.2RC1/ext/dba/config.m4.libdb 2015-12-27 07:54:48.669923462 +0100 -+++ php-7.0.2RC1/ext/dba/config.m4 2015-12-27 07:55:03.607947034 +0100 -@@ -312,61 +312,13 @@ if test "$PHP_DB4" != "no"; then +diff -up php-7.2.0alpha0/ext/dba/config.m4.libdb php-7.2.0alpha0/ext/dba/config.m4 +--- php-7.2.0alpha0/ext/dba/config.m4.libdb 2017-05-29 08:56:06.000000000 +0200 ++++ php-7.2.0alpha0/ext/dba/config.m4 2017-05-29 09:13:52.014823282 +0200 +@@ -346,61 +346,13 @@ if test "$PHP_DB4" != "no"; then dbdp4="/usr/local/BerkeleyDB.4." dbdp5="/usr/local/BerkeleyDB.5." for i in $PHP_DB4 ${dbdp5}1 ${dbdp5}0 ${dbdp4}8 ${dbdp4}7 ${dbdp4}6 ${dbdp4}5 ${dbdp4}4 ${dbdp4}3 ${dbdp4}2 ${dbdp4}1 ${dbdp}0 /usr/local /usr; do @@ -65,12 +65,12 @@ diff -up php-7.0.2RC1/ext/dba/config.m4.libdb php-7.0.2RC1/ext/dba/config.m4 fi PHP_DBA_STD_RESULT(db4,Berkeley DB4) -diff -up php-7.0.2RC1/ext/dba/dba.c.libdb php-7.0.2RC1/ext/dba/dba.c ---- php-7.0.2RC1/ext/dba/dba.c.libdb 2015-12-22 16:19:29.000000000 +0100 -+++ php-7.0.2RC1/ext/dba/dba.c 2015-12-27 07:52:30.381638216 +0100 -@@ -52,6 +52,10 @@ - #include "php_qdbm.h" +diff -up php-7.2.0alpha0/ext/dba/dba.c.libdb php-7.2.0alpha0/ext/dba/dba.c +--- php-7.2.0alpha0/ext/dba/dba.c.libdb 2017-05-29 09:16:15.736628202 +0200 ++++ php-7.2.0alpha0/ext/dba/dba.c 2017-05-29 09:16:20.494654746 +0200 +@@ -53,6 +53,10 @@ #include "php_tcadb.h" + #include "php_lmdb.h" +#ifdef DB4_INCLUDE_FILE +#include DB4_INCLUDE_FILE @@ -79,7 +79,7 @@ diff -up php-7.0.2RC1/ext/dba/dba.c.libdb php-7.0.2RC1/ext/dba/dba.c /* {{{ arginfo */ ZEND_BEGIN_ARG_INFO_EX(arginfo_dba_popen, 0, 0, 2) ZEND_ARG_INFO(0, path) -@@ -552,6 +556,10 @@ PHP_MINFO_FUNCTION(dba) +@@ -558,6 +562,10 @@ PHP_MINFO_FUNCTION(dba) php_info_print_table_start(); php_info_print_table_row(2, "DBA support", "enabled"); diff --git a/php-7.2.0-fixheader.patch b/php-7.2.0-fixheader.patch new file mode 100644 index 0000000..bc822fd --- /dev/null +++ b/php-7.2.0-fixheader.patch @@ -0,0 +1,15 @@ +--- php-7.2.0/configure.ac.fixheader 2017-04-12 09:42:21.510812285 +0200 ++++ php-7.2.0/configure.ac 2017-04-12 09:43:45.055224385 +0200 +@@ -1263,10 +1263,10 @@ + EXTRA_LDFLAGS="$EXTRA_LDFLAGS $PHP_LDFLAGS" + EXTRA_LDFLAGS_PROGRAM="$EXTRA_LDFLAGS_PROGRAM $PHP_LDFLAGS" + +-PHP_BUILD_DATE=`date '+%Y-%m-%d'` ++PHP_BUILD_DATE=`date '+%Y-%m-%d' -r $srcdir/NEWS` + AC_DEFINE_UNQUOTED(PHP_BUILD_DATE,"$PHP_BUILD_DATE",[PHP build date]) + +-PHP_UNAME=`uname -a | xargs` ++PHP_UNAME=`uname | xargs` + AC_DEFINE_UNQUOTED(PHP_UNAME,"$PHP_UNAME",[uname -a output]) + PHP_OS=`uname | xargs` + AC_DEFINE_UNQUOTED(PHP_OS,"$PHP_OS",[uname output]) diff --git a/php-7.0.0-includedir.patch b/php-7.2.0-includedir.patch index 2822c3f..6d9a871 100644 --- a/php-7.0.0-includedir.patch +++ b/php-7.2.0-includedir.patch @@ -1,6 +1,6 @@ ---- php-7.0.0/configure.in.includedir -+++ php-7.0.0/configure.in -@@ -1245,7 +1245,7 @@ +--- php-7.2.0/configure.ac.includedir ++++ php-7.2.0/configure.ac +@@ -1230,7 +1230,7 @@ EXPANDED_DATADIR=$datadir EXPANDED_PHP_CONFIG_FILE_PATH=`eval echo "$PHP_CONFIG_FILE_PATH"` EXPANDED_PHP_CONFIG_FILE_SCAN_DIR=`eval echo "$PHP_CONFIG_FILE_SCAN_DIR"` diff --git a/php-7.2.0-oci8conf.patch b/php-7.2.0-oci8conf.patch new file mode 100644 index 0000000..0ad16a1 --- /dev/null +++ b/php-7.2.0-oci8conf.patch @@ -0,0 +1,35 @@ +diff -up ./ext/ldap/php_ldap.h.remi-oci8 ./ext/ldap/php_ldap.h +--- ./ext/ldap/php_ldap.h.remi-oci8 2017-06-20 15:45:35.000000000 +0200 ++++ ./ext/ldap/php_ldap.h 2017-06-20 16:55:01.640203868 +0200 +@@ -27,7 +27,7 @@ + #include <lber.h> + #endif + +-#include <ldap.h> ++#include "/usr/include/ldap.h" + + extern zend_module_entry ldap_module_entry; + #define ldap_module_ptr &ldap_module_entry +diff -up ./ext/oci8/config.m4.remi-oci8 ./ext/oci8/config.m4 +--- ./ext/oci8/config.m4.remi-oci8 2017-06-20 15:45:39.000000000 +0200 ++++ ./ext/oci8/config.m4 2017-06-20 16:55:01.640203868 +0200 +@@ -372,6 +372,7 @@ if test "$PHP_OCI8" != "no"; then + + 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!'` ++ OCISDKRPMINC=`echo "$PHP_OCI8_INSTANT_CLIENT" | $PHP_OCI8_SED -e 's!^/usr/\(lib64\|lib\)/oracle/\(.*\)/\(client64\|client\)/lib[/]*$!/usr/include/oracle/\2/\3!'` + + dnl Header directory for Instant Client SDK zip file install + OCISDKZIPINC=$PHP_OCI8_INSTANT_CLIENT/sdk/include +diff -up ./ext/pdo_oci/config.m4.remi-oci8 ./ext/pdo_oci/config.m4 +--- ./ext/pdo_oci/config.m4.remi-oci8 2017-06-20 16:55:01.640203868 +0200 ++++ ./ext/pdo_oci/config.m4 2017-06-20 17:16:03.053538358 +0200 +@@ -93,7 +93,7 @@ if test "$PHP_PDO_OCI" != "no"; then + + AC_MSG_CHECKING([for oci.h]) + dnl Header directory for Instant Client SDK RPM install +- OCISDKRPMINC=`echo "$PDO_OCI_LIB_DIR" | $PHP_PDO_OCI_SED -e 's!^\(.*\)/lib/oracle/\(.*\)/\('${PDO_OCI_CLIENT_DIR}'\)/lib[/]*$!\1/include/oracle/\2/\3!'` ++ OCISDKRPMINC=`echo "$PDO_OCI_LIB_DIR" | $PHP_PDO_OCI_SED -e 's!^\(.*\)/\(lib64\|lib\)/oracle/\(.*\)/\('${PDO_OCI_CLIENT_DIR}'\)/lib[/]*$!\1/include/oracle/\3/\4!'` + + dnl Header directory for manual installation + OCISDKMANINC=`echo "$PDO_OCI_LIB_DIR" | $PHP_PDO_OCI_SED -e 's!^\(.*\)/lib[/]*$!\1/include!'` diff --git a/php-7.1.0-systzdata-v14.patch b/php-7.2.0-systzdata-v15.patch index bd73a4b..97fd734 100644 --- a/php-7.1.0-systzdata-v14.patch +++ b/php-7.2.0-systzdata-v15.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: +r15: adapt for timelib 2017.05beta7 (in 7.2.0RC1) r14: improve check for valid tz file r13: adapt for upstream changes to use PHP allocator r12: adapt for upstream changes for new zic @@ -25,12 +26,12 @@ 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-7.1.0RC4/ext/date/lib/parse_tz.c.systzdata php-7.1.0RC4/ext/date/lib/parse_tz.c ---- php-7.1.0RC4/ext/date/lib/parse_tz.c.systzdata 2016-10-17 13:35:11.000000000 +0200 -+++ php-7.1.0RC4/ext/date/lib/parse_tz.c 2016-10-17 13:40:47.806358674 +0200 -@@ -24,6 +24,16 @@ - +diff -up ./ext/date/lib/parse_tz.c.systzdata ./ext/date/lib/parse_tz.c +--- ./ext/date/lib/parse_tz.c.systzdata 2017-08-22 09:40:38.000000000 +0200 ++++ ./ext/date/lib/parse_tz.c 2017-08-22 12:16:00.370298079 +0200 +@@ -25,8 +25,21 @@ #include "timelib.h" + #include "timelib_private.h" +#ifdef HAVE_SYSTEM_TZDATA +#include <sys/mman.h> @@ -40,16 +41,8 @@ diff -up php-7.1.0RC4/ext/date/lib/parse_tz.c.systzdata php-7.1.0RC4/ext/date/li +#include <unistd.h> + +#include "php_scandir.h" -+#endif + - #include <stdio.h> - - #ifdef HAVE_LOCALE_H -@@ -36,8 +46,12 @@ - #include <strings.h> - #endif - -+#ifndef HAVE_SYSTEM_TZDATA ++#else #define TIMELIB_SUPPORTS_V2DATA #include "timezonedb.h" +#endif @@ -58,7 +51,7 @@ diff -up php-7.1.0RC4/ext/date/lib/parse_tz.c.systzdata php-7.1.0RC4/ext/date/li #if (defined(__APPLE__) || defined(__APPLE_CC__)) && (defined(__BIG_ENDIAN__) || defined(__LITTLE_ENDIAN__)) # if defined(__LITTLE_ENDIAN__) -@@ -59,6 +73,11 @@ static int read_preamble(const unsigned +@@ -67,6 +80,11 @@ static int read_php_preamble(const unsig { uint32_t version; @@ -70,7 +63,7 @@ diff -up php-7.1.0RC4/ext/date/lib/parse_tz.c.systzdata php-7.1.0RC4/ext/date/li /* read ID */ version = (*tzf)[3] - '0'; *tzf += 4; -@@ -302,7 +321,429 @@ void timelib_dump_tzinfo(timelib_tzinfo +@@ -374,7 +392,429 @@ void timelib_dump_tzinfo(timelib_tzinfo } } @@ -501,7 +494,7 @@ diff -up php-7.1.0RC4/ext/date/lib/parse_tz.c.systzdata php-7.1.0RC4/ext/date/li { int left = 0, right = tzdb->index_size - 1; #ifdef HAVE_SETLOCALE -@@ -341,21 +782,88 @@ static int seek_to_tz_position(const uns +@@ -419,9 +859,48 @@ static int seek_to_tz_position(const uns return 0; } @@ -549,17 +542,8 @@ diff -up php-7.1.0RC4/ext/date/lib/parse_tz.c.systzdata php-7.1.0RC4/ext/date/li +#endif } - const timelib_tzdb_index_entry *timelib_timezone_builtin_identifiers_list(int *count) - { -+#ifdef HAVE_SYSTEM_TZDATA -+ *count = timezonedb_system->index_size; -+ return timezonedb_system->index; -+#else - *count = sizeof(timezonedb_idx_builtin) / sizeof(*timezonedb_idx_builtin); - return timezonedb_idx_builtin; -+#endif - } - + const timelib_tzdb_index_entry *timelib_timezone_identifiers_list(timelib_tzdb *tzdb, int *count) +@@ -433,7 +912,30 @@ const timelib_tzdb_index_entry *timelib_ int timelib_timezone_id_is_valid(char *timezone, const timelib_tzdb *tzdb) { const unsigned char *tzf; @@ -590,32 +574,27 @@ diff -up php-7.1.0RC4/ext/date/lib/parse_tz.c.systzdata php-7.1.0RC4/ext/date/li + return (inmem_seek_to_tz_position(&tzf, timezone, tzdb)); } - static void skip_64bit_preamble(const unsigned char **tzf, timelib_tzinfo *tz) -@@ -380,24 +888,54 @@ static void read_64bit_header(const unsi - timelib_tzinfo *timelib_parse_tzfile(char *timezone, const timelib_tzdb *tzdb) + static int skip_64bit_preamble(const unsigned char **tzf, timelib_tzinfo *tz) +@@ -475,12 +977,14 @@ static timelib_tzinfo* timelib_tzinfo_ct + timelib_tzinfo *timelib_parse_tzfile(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; + unsigned int type; /* TIMELIB_TZINFO_PHP or TIMELIB_TZINFO_ZONEINFO */ - 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); - read_header(&tzf, tmp); - read_transistions(&tzf, tmp); - read_types(&tzf, tmp); -- if (version == 2) { -- skip_64bit_preamble(&tzf, tmp); -- read_64bit_header(&tzf, tmp); -- skip_64bit_transistions(&tzf, tmp); -- skip_64bit_types(&tzf, tmp); -- skip_posix_string(&tzf, tmp); -- } -- read_location(&tzf, tmp); + version = read_preamble(&tzf, tmp, &type); +@@ -503,6 +1007,29 @@ timelib_tzinfo *timelib_parse_tzfile(cha + timelib_tzinfo_dtor(tmp); + return NULL; + } + +#ifdef HAVE_SYSTEM_TZDATA + if (memmap) { @@ -632,33 +611,30 @@ diff -up php-7.1.0RC4/ext/date/lib/parse_tz.c.systzdata php-7.1.0RC4/ext/date/li + tmp->bc = 1; + } + else { -+ strcpy(tmp->location.country_code, "??"); -+ tmp->bc = 0; -+ tmp->location.comments = timelib_strdup(""); ++ set_default_location_and_comments(&tzf, tmp); + } + + /* Now done with the mmap segment - discard it. */ + munmap(memmap, maplen); -+ } else ++ } else { ++#endif + if (version == 2 || version == 3) { + if (!skip_64bit_preamble(&tzf, tmp)) { + /* 64 bit preamble is not in place */ +@@ -520,6 +1047,9 @@ timelib_tzinfo *timelib_parse_tzfile(cha + } else { + set_default_location_and_comments(&tzf, tmp); + } ++#ifdef HAVE_SYSTEM_TZDATA ++ } +#endif -+ { -+ /* PHP-style - use the embedded info. */ -+ if (version == 2) { -+ skip_64bit_preamble(&tzf, tmp); -+ read_64bit_header(&tzf, tmp); -+ skip_64bit_transistions(&tzf, tmp); -+ skip_64bit_types(&tzf, tmp); -+ skip_posix_string(&tzf, tmp); -+ } -+ read_location(&tzf, tmp); -+ } } else { + *error_code = TIMELIB_ERROR_NO_SUCH_TIMEZONE; tmp = NULL; - } -diff -up php-7.1.0RC4/ext/date/lib/timelib.m4.systzdata php-7.1.0RC4/ext/date/lib/timelib.m4 ---- php-7.1.0RC4/ext/date/lib/timelib.m4.systzdata 2016-10-17 13:40:47.807358679 +0200 -+++ php-7.1.0RC4/ext/date/lib/timelib.m4 2016-10-17 13:42:06.304743330 +0200 -@@ -78,3 +78,16 @@ stdlib.h +diff -up ./ext/date/lib/timelib.m4.systzdata ./ext/date/lib/timelib.m4 +--- ./ext/date/lib/timelib.m4.systzdata 2017-08-22 09:40:38.000000000 +0200 ++++ ./ext/date/lib/timelib.m4 2017-08-22 11:32:29.357799927 +0200 +@@ -81,3 +81,16 @@ io.h dnl Check for strtoll, atoll AC_CHECK_FUNCS(strtoll atoll strftime gettimeofday) diff --git a/php-fpm.conf b/php-fpm.conf index 55dc684..29ec0d9 100644 --- a/php-fpm.conf +++ b/php-fpm.conf @@ -49,7 +49,7 @@ error_log = /var/log/php-fpm/error.log ; Default Value: 0 ;emergency_restart_threshold = 0 -; Interval of time used by emergency_restart_interval to determine when +; Interval of time used by emergency_restart_interval to determine when ; a graceful restart will be initiated. This can be useful to work around ; accidental corruptions in an accelerator's shared memory. ; Available Units: s(econds), m(inutes), h(ours), or d(ays) @@ -63,7 +63,7 @@ error_log = /var/log/php-fpm/error.log ; Default Value: 0 ;process_control_timeout = 0 -; The maximum number of processes FPM will fork. This has been design to control +; The maximum number of processes FPM will fork. This has been designed to control ; the global number of processes when using dynamic PM within a lot of pools. ; Use it with caution. ; Note: A value of 0 indicates no limit @@ -71,10 +71,10 @@ error_log = /var/log/php-fpm/error.log ;process.max = 128 ; Specify the nice(2) priority to apply to the master process (only if set) -; The value can vary from -19 (highest priority) to 20 (lower priority) +; The value can vary from -19 (highest priority) to 20 (lowest priority) ; Note: - It will only work if the FPM master process is launched as root ; - The pool process will inherit the master process priority -; unless it specified otherwise +; unless specified otherwise ; Default Value: no set ;process.priority = -19 @@ -98,8 +98,8 @@ daemonize = yes ; Default Value: not set (auto detection) ;events.mechanism = epoll -; When FPM is build with systemd integration, specify the interval, -; in second, between health report notification to systemd. +; When FPM is built with systemd integration, specify the interval, +; in seconds, between health report notification to systemd. ; Set to 0 to disable. ; Available Units: s(econds), m(inutes), h(ours) ; Default Unit: seconds @@ -107,7 +107,7 @@ daemonize = yes ;systemd_interval = 10 ;;;;;;;;;;;;;;;;;;;; -; Pool Definitions ; +; Pool Definitions ; ;;;;;;;;;;;;;;;;;;;; ; Multiple pools of child processes may be started with different listening diff --git a/php-timelib.patch b/php-timelib.patch new file mode 100644 index 0000000..dd8d8cf --- /dev/null +++ b/php-timelib.patch @@ -0,0 +1,30 @@ +diff --git a/timelib_private.h b/timelib_private.h +index cd402e0..efc7c80 100644 +--- a/ext/date/lib/timelib_private.h ++++ b/ext/date/lib/timelib_private.h +@@ -115,7 +115,7 @@ + m = NULL; \ + } + +-typedef struct ttinfo ++struct ttinfo + { + int32_t offset; + int isdst; +@@ -123,13 +123,13 @@ typedef struct ttinfo + + unsigned int isstdcnt; + unsigned int isgmtcnt; +-} ttinfo; ++}; + +-typedef struct tlinfo ++struct tlinfo + { + int32_t trans; + int32_t offset; +-} tlinfo; ++}; + + + #ifndef LONG_MAX @@ -28,7 +28,7 @@ DirectoryIndex index.php # # Cause the PHP interpreter to handle files with a .php extension. # - <FilesMatch \.php$> + <FilesMatch \.(php|phar)$> SetHandler application/x-httpd-php </FilesMatch> @@ -5,7 +5,7 @@ # Enable http authorization headers SetEnvIfNoCase ^Authorization$ "(.+)" HTTP_AUTHORIZATION=$1 - <FilesMatch \.php$> + <FilesMatch \.(php|phar)$> SetHandler "proxy:fcgi://127.0.0.1:9000" </FilesMatch> </IfModule> @@ -294,7 +294,7 @@ implicit_flush = Off ; callback-function. unserialize_callback_func = -; When floats & doubles are serialized store serialize_precision significant +; When floats & doubles are serialized, store serialize_precision significant ; digits after the floating point. The default value ensures that when floats ; are decoded with unserialize, the data will remain the same. ; The value is also used for json_encode when encoding double values. @@ -338,7 +338,7 @@ disable_classes = ; be increased on systems where PHP opens many files to reflect the quantity of ; the file operations performed. ; http://php.net/realpath-cache-size -;realpath_cache_size = 16k +;realpath_cache_size = 4096k ; Duration of time, in seconds for which to cache realpath information for a given ; file or directory. For systems with rarely changing files, consider increasing this @@ -525,11 +525,12 @@ report_memleaks = On ; Store the last error/warning message in $php_errormsg (boolean). Setting this value ; to On can assist in debugging and is appropriate for development servers. It should ; however be disabled on production servers. +; This directive is DEPRECATED. ; Default Value: Off -; Development Value: On +; Development Value: Off ; Production Value: Off ; http://php.net/track-errors -track_errors = Off +;track_errors = Off ; Turn off normal error reporting and emit XML-RPC error XML ; http://php.net/xmlrpc-errors @@ -866,22 +867,21 @@ default_socket_timeout = 60 ; If you wish to have an extension loaded automatically, use the following ; syntax: ; -; extension=modulename.extension -; -; For example, on Windows: -; -; extension=msql.dll +; extension=modulename ; -; ... or under UNIX: +; For example: ; -; extension=msql.so +; extension=mysqli ; -; ... or with a path: +; When the extension library to load is not located in the default extension +; directory, You may specify an absolute path to the library file: ; -; extension=/path/to/extension/msql.so +; extension=/path/to/extension/mysqli.so ; -; If you only provide the name of the extension, PHP will look for it in its -; default extension directory. +; Note : The syntax used in previous PHP versions ('extension=<ext>.so' and +; 'extension='php_<ext>.dll') is supported for legacy reasons and may be +; deprecated in a future PHP major version. So, when it is possible, please +; move to the new ('extension=<ext>) syntax. ;;;; ; Note: packaged extension modules are now loaded via the .ini files @@ -1010,10 +1010,6 @@ mail.add_x_header = On ; Log mail to syslog; ;mail.log = syslog -[SQL] -; http://php.net/sql.safe-mode -sql.safe_mode = Off - [ODBC] ; http://php.net/odbc.default-db ;odbc.default_db = Not yet implemented @@ -1646,17 +1642,6 @@ soap.wsdl_cache_limit = 5 ; Sets the maximum number of open links or -1 for unlimited. ldap.max_links = -1 -[mcrypt] -; For more information about mcrypt settings see http://php.net/mcrypt-module-open - -; Directory where to load mcrypt algorithms -; Default: Compiled in into libmcrypt (usually /usr/local/lib/libmcrypt) -;mcrypt.algorithms_dir= - -; Directory where to load mcrypt modes -; Default: Compiled in into libmcrypt (usually /usr/local/lib/libmcrypt) -;mcrypt.modes_dir= - [dba] ;dba.default_handler= @@ -1,4 +1,4 @@ -# remirepo spec file for php 7.1 +# remirepo spec file for php 7.2 # with backport stuff, adapted from # # Fedora spec file for php @@ -9,20 +9,20 @@ # Please preserve changelog entries # # API/ABI check -%global apiver 20160303 -%global zendver 20160303 -%global pdover 20150127 +%global apiver 20170718 +%global zendver 20170718 +%global pdover 20170320 # Extension version %global fileinfover 1.0.5 %global oci8ver 2.1.7 %global zipver 1.13.0 -%global jsonver 1.5.0 +%global jsonver 1.6.0 # Adds -z now to the linker flags %global _hardened_build 1 # version used for php embedded library soname -%global embed_version 7.1 +%global embed_version 7.2 %global mysql_sock %(mysql_config --socket 2>/dev/null || echo /var/lib/mysql/mysql.sock) @@ -51,6 +51,11 @@ %else %global with_libpcre 0 %endif +%if 0%{?fedora} >= 26 +%global with_onig 1 +%else +%global with_onig 0 +%endif %global with_sqlite3 1 @@ -107,13 +112,13 @@ %global db_devel libdb-devel %endif -%global upver 7.1.9 +%global upver 7.2.0 %global rcver RC1 Summary: PHP scripting language for creating dynamic web sites Name: php Version: %{upver}%{?rcver:~%{rcver}} -Release: 2%{?dist} +Release: 1%{?dist} # All files licensed under PHP version 3.01, except # Zend is licensed under Zend # TSRM is licensed under BSD @@ -145,26 +150,28 @@ Source99: php-fpm.init # Build fixes Patch1: php-7.1.7-httpd.patch -Patch5: php-7.0.0-includedir.patch +Patch5: php-7.2.0-includedir.patch Patch6: php-5.6.3-embed.patch Patch7: php-5.3.0-recode.patch -Patch8: php-7.0.2-libdb.patch +Patch8: php-7.1.0-libdb.patch Patch9: php-7.0.7-curl.patch +# From https://github.com/derickr/timelib/pull/21 +Patch10: php-timelib.patch # Functional changes Patch40: php-7.1.3-dlopen.patch -Patch42: php-7.1.0-systzdata-v14.patch +Patch42: php-7.2.0-systzdata-v15.patch # See http://bugs.php.net/53436 Patch43: php-5.4.0-phpize.patch # Use -lldap_r for OpenLDAP Patch45: php-5.6.3-ldap_r.patch # Make php_config.h constant across builds -Patch46: php-7.0.0-fixheader.patch +Patch46: php-7.2.0-fixheader.patch # drop "Configure command" from phpinfo output Patch47: php-5.6.3-phpinfo.patch # RC Patch -Patch91: php-5.6.3-oci8conf.patch +Patch91: php-7.2.0-oci8conf.patch # Upstream fixes (100+) @@ -207,7 +214,7 @@ BuildRequires: %{?dtsprefix}systemtap-sdt-devel #BuildRequires: bison %if 0%{?rhel} -Obsoletes: php53, php53u, php54w, php55u, php55w, php56u, php56w, mod_php70u, php70w, mod_php71u, mod_php71w +Obsoletes: php53, php53u, php54w, php55u, php55w, php56u, php56w, mod_php70u, php70w, mod_php71u, mod_php71w, mod_php72u, mod_php72w %endif # Avoid obsoleting php54 from RHSCL Obsoletes: php54 > 5.4 @@ -259,7 +266,8 @@ Provides: php-cgi = %{version}-%{release}, php-cgi%{?_isa} = %{version}-%{releas Provides: php-pcntl, php-pcntl%{?_isa} Provides: php-readline, php-readline%{?_isa} %if 0%{?rhel} -Obsoletes: php53-cli, php53u-cli, php54-cli, php54w-cli, php55u-cli, php55w-cli, php56u-cli, php56w-cli, php70u-cli, php70w-cli, php71u-cli, php71w-cli +Obsoletes: php53-cli, php53u-cli, php54-cli, php54w-cli, php55u-cli, php55w-cli, php56u-cli, php56w-cli +Obsoletes: php70u-cli, php70w-cli, php71u-cli, php71w-cli, php72u-cli, php72w-cli %endif %description cli @@ -272,7 +280,7 @@ Group: Development/Languages Summary: The interactive PHP debugger Requires: php-common%{?_isa} = %{version}-%{release} %if 0%{?rhel} -Obsoletes: php56u-dbg, php56w-dbg, php70u-dbg, php70w-phpdbg, php70u-dbg, php71w-phpdbg +Obsoletes: php56u-dbg, php56w-dbg, php70u-dbg, php70w-phpdbg, php71u-dbg, php71w-phpdbg, php72u-dbg, php72w-phpdbg %endif %description dbg The php-dbg package contains the interactive PHP debugger. @@ -314,7 +322,8 @@ Provides: php(httpd) Requires: nginx-filesystem %endif %if 0%{?rhel} -Obsoletes: php53-fpm, php53u-fpm, php54-fpm, php54w-fpm, php55u-fpm, php55w-fpm, php56u-fpm, php56w-fpm, php70u-fpm, php70w-fpm, php71u-fpm, php71w-fpm +Obsoletes: php53-fpm, php53u-fpm, php54-fpm, php54w-fpm, php55u-fpm, php55w-fpm, php56u-fpm, php56w-fpm +Obsoletes: php70u-fpm, php70w-fpm, php71u-fpm, php71w-fpm, php72u-fpm, php72w-fpm %endif %description fpm @@ -328,7 +337,8 @@ Summary: LiteSpeed Web Server PHP support Group: Development/Languages Requires: php-common%{?_isa} = %{version}-%{release} %if 0%{?rhel} -Obsoletes: php53-litespeed, php53u-litespeed, php54-litespeed, php54w-litespeed, php55u-litespeed, php55w-litespeed, php56u-litespeed, php56w-litespeed, php70u-litespeed, php70w-litespeed, php70w-litespeed, php71w-litespeed +Obsoletes: php53-litespeed, php53u-litespeed, php54-litespeed, php54w-litespeed, php55u-litespeed, php55w-litespeed, php56u-litespeed, php56w-litespeed +Obsoletes: php70u-litespeed, php70w-litespeed, php71u-litespeed, php71w-litespeed, php72u-litespeed, php72w-litespeed %endif %description litespeed @@ -354,8 +364,10 @@ Provides: php-core = %{version}, php-core%{?_isa} = %{version} Provides: php-ctype, php-ctype%{?_isa} Provides: php-curl, php-curl%{?_isa} Provides: php-date, php-date%{?_isa} +Provides: bundled(timelib) Provides: php-exif, php-exif%{?_isa} Provides: php-fileinfo, php-fileinfo%{?_isa} +Provides: bundled(libmagic) = 5.29 Provides: php-filter, php-filter%{?_isa} Provides: php-ftp, php-ftp%{?_isa} Provides: php-gettext, php-gettext%{?_isa} @@ -384,7 +396,8 @@ Provides: php-pecl(Fileinfo) = %{fileinfover}, php-pecl(Fileinfo)%{?_isa} = %{f Obsoletes: php-mhash < 5.3.0 %if 0%{?rhel} Obsoletes: php53-mhash, php53u-mhash -Obsoletes: php53-common, php53u-common, php54-common, php54w-common, php55u-common, php55w-common, php56u-common, php56w-common, php70u-common, php70w-common, php71u-common, php71w-common +Obsoletes: php53-common, php53u-common, php54-common, php54w-common, php55u-common, php55w-common, php56u-common, php56w-common +Obsoletes: php70u-common, php70w-common, php71u-common, php71w-common, php72u-common, php72w-common %endif %description common @@ -406,7 +419,8 @@ Provides: php-zts-devel = %{version}-%{release} Provides: php-zts-devel%{?_isa} = %{version}-%{release} %endif %if 0%{?rhel} -Obsoletes: php53-devel, php53u-devel, php54-devel, php54w-devel, php55u-devel, php55w-devel, php56u-devel, php56w-devel, php70u-devel, php70w-devel, php71u-devel, php71w-devel +Obsoletes: php53-devel, php53u-devel, php54-devel, php54w-devel, php55u-devel, php55w-devel, php56u-devel, php56w-devel +Obsoletes: php70u-devel, php70w-devel, php71u-devel, php71w-devel, php72u-devel, php72w-devel %endif %description devel @@ -425,7 +439,8 @@ Provides: php-pecl-zendopcache%{?_isa} = %{version} Provides: php-pecl(opcache) = %{version} Provides: php-pecl(opcache)%{?_isa} = %{version} %if 0%{?rhel} -Obsoletes: php55u-opcache, php55w-opcache, php56u-opcache, php56w-opcache, php70u-opcache, php70w-opcache, php71u-opcache, php71w-opcache +Obsoletes: php55u-opcache, php55w-opcache, php56u-opcache, php56w-opcache +Obsoletes: php70u-opcache, php70w-opcache, php71u-opcache, php71w-opcache, php72u-opcache, php72w-opcache %endif %description opcache @@ -444,7 +459,8 @@ Requires: php-common%{?_isa} = %{version}-%{release} Obsoletes: mod_php3-imap, stronghold-php-imap BuildRequires: krb5-devel, openssl-devel, libc-client-devel %if 0%{?rhel} -Obsoletes: php53-imap, php53u-imap, php54-imap, php54w-imap, php55u-imap, php55w-imap, php56u-imap, php56w-imap, php70u-imap, php70w-imap, php71u-imap, php71w-imap +Obsoletes: php53-imap, php53u-imap, php54-imap, php54w-imap, php55u-imap, php55w-imap, php56u-imap, php56w-imap +Obsoletes: php70u-imap, php70w-imap, php71u-imap, php71w-imap, php72u-imap, php72w-imap %endif %description imap @@ -460,7 +476,8 @@ License: PHP Requires: php-common%{?_isa} = %{version}-%{release} BuildRequires: cyrus-sasl-devel, openldap-devel, openssl-devel %if 0%{?rhel} -Obsoletes: php53-ldap, php53u-ldap, php54-ldap, php54w-ldap, php55u-ldap, php55w-ldap, php56u-ldap, php56w-ldap, php70u-ldap, php70w-ldap, php71u-ldap, php71w-ldap +Obsoletes: php53-ldap, php53u-ldap, php54-ldap, php54w-ldap, php55u-ldap, php55w-ldap, php56u-ldap, php56w-ldap +Obsoletes: php70u-ldap, php70w-ldap, php71u-ldap, php71w-ldap, php72u-ldap, php72w-ldap %endif %description ldap @@ -483,7 +500,8 @@ Provides: php-sqlite3, php-sqlite3%{?_isa} %endif Provides: php-pdo_sqlite, php-pdo_sqlite%{?_isa} %if 0%{?rhel} -Obsoletes: php53-pdo, php53u-pdo, php54-pdo, php54w-pdo, php55u-pdo, php55w-pdo, php56u-pdo, php56w-pdo, php70u-pdo, php70w-pdo, php71u-pdo, php71w-pdo +Obsoletes: php53-pdo, php53u-pdo, php54-pdo, php54w-pdo, php55u-pdo, php55w-pdo, php56u-pdo, php56w-pdo +Obsoletes: php70u-pdo, php70w-pdo, php71u-pdo, php71w-pdo, php72u-pdo, php72w-pdo %endif %description pdo @@ -504,8 +522,10 @@ Provides: php-mysqli%{?_isa} = %{version}-%{release} Provides: php-pdo_mysql, php-pdo_mysql%{?_isa} Obsoletes: php-mysql < %{version}-%{release} %if 0%{?rhel} -Obsoletes: php53-mysqlnd, php53u-mysqlnd, php54-mysqlnd, php54w-mysqlnd, php55u-mysqlnd, php55w-mysqlnd, php56u-mysqlnd, php56w-mysqlnd, php70u-mysqlnd, php70w-mysqlnd, php71u-mysqlnd, php71w-mysqlnd -Obsoletes: php53-mysql, php53u-mysql, php54-mysql, php54w-mysql, php55u-mysql, php55w-mysql, php56u-mysql, php56w-mysql, php70u-mysql, php70w-mysql, php71u-mysql, php71w-mysql +Obsoletes: php53-mysqlnd, php53u-mysqlnd, php54-mysqlnd, php54w-mysqlnd, php55u-mysqlnd, php55w-mysqlnd, php56u-mysqlnd, php56w-mysqlnd +Obsoletes: php70u-mysqlnd, php70w-mysqlnd, php71u-mysqlnd, php71w-mysqlnd, php72u-mysqlnd, php72w-mysqlnd +Obsoletes: php53-mysql, php53u-mysql, php54-mysql, php54w-mysql, php55u-mysql, php55w-mysql, php56u-mysql, php56w-mysql +Obsoletes: php70u-mysql, php70w-mysql, php71u-mysql, php71w-mysql, php72u-mysql, php72w-mysql %endif %description mysqlnd @@ -527,7 +547,8 @@ Provides: php_database Provides: php-pdo_pgsql, php-pdo_pgsql%{?_isa} BuildRequires: krb5-devel, openssl-devel, postgresql-devel %if 0%{?rhel} -Obsoletes: php53-pgsql, php53u-pgsql, php54-pgsql, php54w-pgsql, php55u-pgsql, php55w-pgsql, php56u-pgsql, php56w-pgsql, php70u-pgsql, php70w-pgsql, php71u-pgsql, php71w-pgsql +Obsoletes: php53-pgsql, php53u-pgsql, php54-pgsql, php54w-pgsql, php55u-pgsql, php55w-pgsql, php56u-pgsql, php56w-pgsql +Obsoletes: php70u-pgsql, php70w-pgsql, php71u-pgsql, php71w-pgsql, php72u-pgsql, php72w-pgsql %endif %description pgsql @@ -550,7 +571,8 @@ Provides: php-sysvsem, php-sysvsem%{?_isa} Provides: php-sysvshm, php-sysvshm%{?_isa} Provides: php-sysvmsg, php-sysvmsg%{?_isa} %if 0%{?rhel} -Obsoletes: php53-process, php53u-process, php54-process, php54w-process, php55u-process, php55w-process, php56u-process, php56w-process, php70u-process, php70w-process, php71u-process, php71w-process +Obsoletes: php53-process, php53u-process, php54-process, php54w-process, php55u-process, php55w-process, php56u-process, php56w-process +Obsoletes: php70u-process, php70w-process, php71u-process, php71w-process, php72u-process, php72w-process %endif %description process @@ -569,7 +591,8 @@ Provides: php_database Provides: php-pdo_odbc, php-pdo_odbc%{?_isa} BuildRequires: unixODBC-devel %if 0%{?rhel} -Obsoletes: php53-odbc, php53u-odbc, php54-odbc, php54w-odbc, php55u-odbc, php55w-odbc, php56u-odbc, php56w-odbc, php70u-odbc, php70w-odbc, php71u-odbc, php71w-odbc +Obsoletes: php53-odbc, php53u-odbc, php54-odbc, php54w-odbc, php55u-odbc, php55w-odbc, php56u-odbc, php56w-odbc +Obsoletes: php70u-odbc, php70w-odbc, php71u-odbc, php71w-odbc, php72u-odbc, php72w-odbc %endif %description odbc @@ -589,7 +612,8 @@ License: PHP Requires: php-common%{?_isa} = %{version}-%{release} BuildRequires: libxml2-devel %if 0%{?rhel} -Obsoletes: php53-soap, php53u-soap, php54-soap, php54w-soap, php55u-soap, php55w-soap, php56u-soap, php56w-soap, php70u-soap, php70w-soap, php71u-soap, php71w-soap +Obsoletes: php53-soap, php53u-soap, php54-soap, php54w-soap, php55u-soap, php55w-soap, php56u-soap, php56w-soap +Obsoletes: php70u-soap, php70w-soap, php71u-soap, php71w-soap, php72u-soap, php72w-soap %endif %description soap @@ -607,7 +631,8 @@ Provides: php_database Provides: php-firebird, php-firebird%{?_isa} Provides: php-pdo_firebird, php-pdo_firebird%{?_isa} %if 0%{?rhel} -Obsoletes: php53-interbase, php53u-interbase, php54-interbase, php54w-interbase, php55u-interbase, php55w-interbase, php56u-interbase, php56w-interbase, php70u-interbase, php70w-interbase, php71u-interbase, php71w-interbase +Obsoletes: php53-interbase, php53u-interbase, php54-interbase, php54w-interbase, php55u-interbase, php55w-interbase, php56u-interbase, php56w-interbase +Obsoletes: php70u-interbase, php70w-interbase, php71u-interbase, php71w-interbase, php72u-interbase, php72w-interbase %endif %description interbase @@ -639,7 +664,8 @@ Provides: php-pecl(oci8) = %{oci8ver}, php-pecl(oci8)%{?_isa} = %{oci8ver} # Should requires libclntsh.so.12.1, but it's not provided by Oracle RPM. AutoReq: 0 %if 0%{?rhel} -Obsoletes: php53-oci8, php53u-oci8, php54-oci8, php54w-oci8, php55u-oci8, php55w-oci8, php56u-oci8, php56w-oci8, php70u-oci8, php70w-oci8, php71u-oci8, php71w-oci8 +Obsoletes: php53-oci8, php53u-oci8, php54-oci8, php54w-oci8, php55u-oci8, php55w-oci8, php56u-oci8, php56w-oci8 +Obsoletes: php70u-oci8, php70w-oci8, php71u-oci8, php71w-oci8, php72u-oci8, php72w-oci8 %endif %description oci8 @@ -669,7 +695,8 @@ License: PHP Requires: php-common%{?_isa} = %{version}-%{release}, net-snmp BuildRequires: net-snmp-devel %if 0%{?rhel} -Obsoletes: php53-snmp, php53u-snmp, php54-snmp, php54w-snmp, php55u-snmp, php55w-snmp, php56u-snmp, php56w-snmp, php70u-snmp, php70w-snmp, php71u-snmp, php71w-snmp +Obsoletes: php53-snmp, php53u-snmp, php54-snmp, php54w-snmp, php55u-snmp, php55w-snmp, php56u-snmp, php56w-snmp +Obsoletes: php70u-snmp, php70w-snmp, php71u-snmp, php71w-snmp, php72u-snmp, php72w-snmp %endif %description snmp @@ -693,7 +720,8 @@ Provides: php-xmlwriter, php-xmlwriter%{?_isa} Provides: php-xsl, php-xsl%{?_isa} BuildRequires: libxslt-devel >= 1.0.18-1, libxml2-devel >= 2.4.14-1 %if 0%{?rhel} -Obsoletes: php53-xml, php53u-xml, php54-xml, php54w-xml, php55u-xml, php55w-xml, php56u-xml, php56w-xml, php70u-xml, php70w-xml, php71u-xml, php71w-xml +Obsoletes: php53-xml, php53u-xml, php54-xml, php54w-xml, php55u-xml, php55w-xml, php56u-xml, php56w-xml +Obsoletes: php70u-xml, php70w-xml, php71u-xml, php71w-xml, php72u-xml, php72w-xml %endif %description xml @@ -709,7 +737,8 @@ Group: Development/Languages License: PHP and BSD Requires: php-xml%{?_isa} = %{version}-%{release} %if 0%{?rhel} -Obsoletes: php53-xmlrpc, php53u-xmlrpc, php54-xmlrpc, php54w-xmlrpc, php55u-xmlrpc, php55w-xmlrpc, php56u-xmlrpc, php56w-xmlrpc, php70u-xmlrpc, php70w-xmlrpc, php71u-xmlrpc, php71w-xmlrpc +Obsoletes: php53-xmlrpc, php53u-xmlrpc, php54-xmlrpc, php54w-xmlrpc, php55u-xmlrpc, php55w-xmlrpc, php56u-xmlrpc, php56w-xmlrpc +Obsoletes: php70u-xmlrpc, php70w-xmlrpc, php71u-xmlrpc, php71w-xmlrpc, php72u-xmlrpc, php72w-xmlrpc %endif %description xmlrpc @@ -724,9 +753,16 @@ Group: Development/Languages # onigurama is licensed under BSD # ucgendat is licensed under OpenLDAP License: PHP and LGPLv2 and BSD and OpenLDAP +%if %{with_onig} +BuildRequires: oniguruma-devel +%else +Provides: bundled(oniguruma) = 6.3.0 +%endif +Provides: bundled(libmbfl) = 1.3.2 Requires: php-common%{?_isa} = %{version}-%{release} %if 0%{?rhel} -Obsoletes: php53-mbstring, php53u-mbstring, php54-mbstring, php54w-mbstring, php55u-mbstring, php55w-mbstring, php56u-mbstring, php56w-mbstring, php70u-mbstring, php70w-mbstring, php71u-mbstring, php71w-mbstring +Obsoletes: php53-mbstring, php53u-mbstring, php54-mbstring, php54w-mbstring, php55u-mbstring, php55w-mbstring, php56u-mbstring, php56w-mbstring +Obsoletes: php70u-mbstring, php70w-mbstring, php71u-mbstring, php71w-mbstring, php72u-mbstring, php72w-mbstring %endif %description mbstring @@ -758,9 +794,11 @@ BuildRequires: libpng-devel BuildRequires: freetype-devel BuildRequires: libXpm-devel BuildRequires: libwebp-devel +Provides: bundled(gd) = 2.0.35 %endif %if 0%{?rhel} -Obsoletes: php53-gd, php53u-gd, php54-gd, php54w-gd, php55u-gd, php55w-gd, php56u-gd, php56w-gd, php70u-gd, php70w-gd, php71u-gd, php71w-gd +Obsoletes: php53-gd, php53u-gd, php54-gd, php54w-gd, php55u-gd, php55w-gd, php56u-gd, php56w-gd +Obsoletes: php70u-gd, php70w-gd, php71u-gd, php71w-gd, php72u-gd, php72w-gd %endif %description gd @@ -775,8 +813,10 @@ Group: Development/Languages License: PHP and LGPLv2+ Requires: php-common%{?_isa} = %{version}-%{release} %if 0%{?rhel} -Obsoletes: php53-bcmath, php53u-bcmath, php54-bcmath, php54w-bcmath, php55u-bcmath, php55w-bcmath, php56u-bcmath, php56w-bcmath, php70u-bcmath, php70w-bcmath, php71u-bcmath, php71w-bcmath +Obsoletes: php53-bcmath, php53u-bcmath, php54-bcmath, php54w-bcmath, php55u-bcmath, php55w-bcmath, php56u-bcmath, php56w-bcmath +Obsoletes: php70u-bcmath, php70w-bcmath, php71u-bcmath, php71w-bcmath, php72u-bcmath, php72w-bcmath %endif +Provides: bundled(libbcmath) %description bcmath The php-bcmath package contains a dynamic shared object that will add @@ -790,7 +830,8 @@ License: PHP BuildRequires: gmp-devel Requires: php-common%{?_isa} = %{version}-%{release} %if 0%{?rhel} -Obsoletes: php53-gmp, php53u-gmp, php54-gmp, php54w-gmp, php55u-gmp, php55w-gmp, php56u-gmp, php56w-gmp, php70u-gmp, php70w-gmp, php71u-gmp, php71w-gmp +Obsoletes: php53-gmp, php53u-gmp, php54-gmp, php54w-gmp, php55u-gmp, php55w-gmp, php56u-gmp, php56w-gmp +Obsoletes: php70u-gmp, php70w-gmp, php71u-gmp, php71w-gmp, php72u-gmp, php72w-gmp %endif %description gmp @@ -802,31 +843,19 @@ Summary: A database abstraction layer module for PHP applications Group: Development/Languages # All files licensed under PHP version 3.01 License: PHP -BuildRequires: %{db_devel}, gdbm-devel, tokyocabinet-devel +BuildRequires: %{db_devel} +BuildRequires: tokyocabinet-devel +BuildRequires: lmdb-devel Requires: php-common%{?_isa} = %{version}-%{release} %if 0%{?rhel} -Obsoletes: php53-dba, php53u-dba, php54-dba, php54w-dba, php55u-dba, php55w-dba, php56u-dba, php56w-dba, php70u-dba, php70w-dba, php71u-dba, php71w-dba +Obsoletes: php53-dba, php53u-dba, php54-dba, php54w-dba, php55u-dba, php55w-dba, php56u-dba, php56w-dba +Obsoletes: php70u-dba, php70w-dba, php71u-dba, php71w-dba, php72u-dba, php72w-dba %endif %description dba The php-dba package contains a dynamic shared object that will add support for using the DBA database abstraction layer to PHP. -%package mcrypt -Summary: Standard PHP module provides mcrypt library support -Group: Development/Languages -# All files licensed under PHP version 3.01 -License: PHP -Requires: php-common%{?_isa} = %{version}-%{release} -BuildRequires: libmcrypt-devel -%if 0%{?rhel} -Obsoletes: php53-mcrypt, php53u-mcrypt, php54-mcrypt, php54w-mcrypt, php55u-mcrypt, php55w-mcrypt, php56u-mcrypt, php56w-mcrypt, php70u-mcrypt, php70w-mcrypt, php71u-mcrypt, php71w-mcrypt -%endif - -%description mcrypt -The php-mcrypt package contains a dynamic shared object that will add -support for using the mcrypt library to PHP. - %package tidy Summary: Standard PHP module provides tidy library support Group: Development/Languages @@ -835,7 +864,8 @@ License: PHP Requires: php-common%{?_isa} = %{version}-%{release} BuildRequires: libtidy-devel %if 0%{?rhel} -Obsoletes: php53-tidy, php53u-tidy, php54-tidy, php54w-tidy, php55u-tidy, php55w-tidy, php56u-tidy, php56w-tidy, php70u-tidy, php70w-tidy, php71u-tidy, php71w-tidy +Obsoletes: php53-tidy, php53u-tidy, php54-tidy, php54w-tidy, php55u-tidy, php55w-tidy, php56u-tidy, php56w-tidy +Obsoletes: php70u-tidy, php70w-tidy, php71u-tidy, php71w-tidy, php72u-tidy, php72w-tidy %endif %description tidy @@ -851,7 +881,8 @@ BuildRequires: freetds-devel >= 0.91 Provides: php-pdo_dblib, php-pdo_dblib%{?_isa} Obsoletes: php-mssql < %{version}-%{release} %if 0%{?rhel} -Obsoletes: php53-mssql, php53u-mssql, php54-mssql, php54w-mssql, php55u-mssql, php55w-mssql, php56u-mssql, php56w-mssql, php70u-pdo-dblib, php70w-pdo_dblib, php71u-pdo-dblib, php71w-pdo_dblib +Obsoletes: php53-mssql, php53u-mssql, php54-mssql, php54w-mssql, php55u-mssql, php55w-mssql, php56u-mssql, php56w-mssql +Obsoletes: php70u-pdo-dblib, php70w-pdo_dblib, php71u-pdo-dblib, php71w-pdo_dblib, php72u-pdo-dblib, php72w-pdo_dblib %endif %description pdo-dblib @@ -867,7 +898,8 @@ Requires: php-common%{?_isa} = %{version}-%{release} Provides: php-embedded-devel = %{version}-%{release} Provides: php-embedded-devel%{?_isa} = %{version}-%{release} %if 0%{?rhel} -Obsoletes: php53-embedded, php53u-embedded, php54-embedded, php54w-embedded, php55u-embedded, php55w-embedded, php56u-embedded, php56w-embedded, php70u-embedded, php70w-embedded, php71u-embedded, php71w-embedded +Obsoletes: php53-embedded, php53u-embedded, php54-embedded, php54w-embedded, php55u-embedded, php55w-embedded, php56u-embedded, php56w-embedded +Obsoletes: php70u-embedded, php70w-embedded, php71u-embedded, php71w-embedded, php72u-embedded, php72w-embedded %endif %description embedded @@ -882,7 +914,8 @@ License: PHP Requires: php-common%{?_isa} = %{version}-%{release} BuildRequires: aspell-devel >= 0.50.0 %if 0%{?rhel} -Obsoletes: php53-pspell, php53u-pspell, php54-pspell, php54w-pspell, php55u-pspell, php55w-pspell, php56u-pspell, php56w-pspell, php70u-pspell, php70w-pspell, php71u-pspell, php71w-pspell +Obsoletes: php53-pspell, php53u-pspell, php54-pspell, php54w-pspell, php55u-pspell, php55w-pspell, php56u-pspell, php56w-pspell +Obsoletes: php70u-pspell, php70w-pspell, php71u-pspell, php71w-pspell, php72u-pspell, php72w-pspell %endif %description pspell @@ -897,7 +930,8 @@ License: PHP Requires: php-common%{?_isa} = %{version}-%{release} BuildRequires: recode-devel %if 0%{?rhel} -Obsoletes: php53-recode, php53u-recode, php54-recode, php54w-recode, php55u-recode, php55w-recode, php56u-recode, php56w-recode, php70u-recode, php70w-recode, php71u-recode, php71w-recode +Obsoletes: php53-recode, php53u-recode, php54-recode, php54w-recode, php55u-recode, php55w-recode, php56u-recode, php56w-recode +Obsoletes: php70u-recode, php70w-recode, php71u-recode, php71w-recode, php72u-recode, php72w-recode %endif %description recode @@ -913,7 +947,8 @@ Requires: php-common%{?_isa} = %{version}-%{release} # Upstream requires 4.0, we require 50 to ensure use of libicu-last BuildRequires: libicu-devel >= 50 %if 0%{?rhel} -Obsoletes: php53-intl, php53u-intl, php54-intl, php54w-intl, php55u-intl, php55w-intl, php56u-intl, php56w-intl, php70u-intl, php70w-intl, php71u-intl, php71w-intl +Obsoletes: php53-intl, php53u-intl, php54-intl, php54w-intl, php55u-intl, php55w-intl, php56u-intl, php56w-intl +Obsoletes: php70u-intl, php70w-intl, php71u-intl, php71w-intl, php72u-intl, php72w-intl %endif %description intl @@ -928,7 +963,8 @@ License: PHP Requires: php-common%{?_isa} = %{version}-%{release} BuildRequires: enchant-devel >= 1.2.4 %if 0%{?rhel} -Obsoletes: php53-enchant, php53u-enchant, php54-enchant, php54w-enchant, php55u-enchant, php55w-enchant, php56u-enchant, php56w-enchant, php70u-enchant, php70w-enchant, php71u-enchant, php71w-enchant +Obsoletes: php53-enchant, php53u-enchant, php54-enchant, php54w-enchant, php55u-enchant, php55w-enchant, php56u-enchant, php56w-enchant +Obsoletes: php70u-enchant, php70w-enchant, php71u-enchant, php71w-enchant, php72u-enchant, php72w-enchant %endif %description enchant @@ -948,7 +984,8 @@ Provides: php-pecl(zip)%{?_isa} = %{zipver} Provides: php-pecl-zip = %{zipver} Provides: php-pecl-zip%{?_isa} = %{zipver} %if 0%{?rhel} -Obsoletes: php53-zip, php53u-zip, php54-zip, php54w-zip, php55u-zip, php55w-zip, php56u-zip, php56w-zip, php70u-zip, php70w-zip, php71u-zip, php71w-zip +Obsoletes: php53-zip, php53u-zip, php54-zip, php54w-zip, php55u-zip, php55w-zip, php56u-zip, php56w-zip +Obsoletes: php70u-zip, php70w-zip, php71u-zip, php71w-zip, php72u-zip, php72w-zip %endif %if %{with_libzip} # 0.11.1 required, but 1.0.1 is bundled @@ -973,7 +1010,8 @@ Provides: php-pecl(json)%{?_isa} = %{jsonver} Provides: php-pecl-json = %{jsonver} Provides: php-pecl-json%{?_isa} = %{jsonver} %if 0%{?rhel} -Obsoletes: php53-json, php53u-json, php54-json, php54w-json, php55u-json, php55w-json, php56u-json, php56w-json, php70u-json, php70w-json, php71u-json, php71w-json +Obsoletes: php53-json, php53u-json, php54-json, php54w-json, php55u-json, php55w-json, php56u-json, php56w-json +Obsoletes: php70u-json, php70w-json, php71u-json, php71w-json, php72u-json, php72w-json %endif %description json @@ -981,6 +1019,29 @@ The php-json package provides an extension that will add support for JavaScript Object Notation (JSON) to PHP. +%package sodium +Summary: Wrapper for the Sodium cryptographic library +# All files licensed under PHP version 3.0.1 +License: PHP +Group: System Environment/Libraries +# Ensure libsodium-last is used +BuildRequires: pkgconfig(libsodium) >= 1.0.13 + +Requires: php-common%{?_isa} = %{version}-%{release} +# not provided as API is different +Obsoletes: php-pecl-libsodium < 7 +Obsoletes: php-pecl-libsodium2 < 7 +Provides: php-pecl(libsodium) = %{version} +Provides: php-pecl(libsodium)%{?_isa} = %{version} +%if 0%{?rhel} +Obsoletes: php72u-sodium, php72w-sodium +%endif + +%description sodium +The php-sodium package provides a simple, +low-level PHP extension for the libsodium cryptographic library. + + %prep : CIBLE = %{name}-%{version}-%{release} oci8=%{with_oci8} libzip=%{with_libzip} @@ -994,6 +1055,7 @@ support for JavaScript Object Notation (JSON) to PHP. %if 0%{?rhel} %patch9 -p1 -b .curltls %endif +%patch10 -p1 -b .timelib %patch40 -p1 -b .dlopen %if 0%{?fedora} >= 25 || 0%{?rhel} >= 6 @@ -1170,7 +1232,7 @@ libtoolize --force --copy cat $(aclocal --print-ac-dir)/{libtool,ltoptions,ltsugar,ltversion,lt~obsolete}.m4 >build/libtool.m4 # Regenerate configure scripts (patches change config.m4's) -touch configure.in +touch configure.ac ./buildconf --force %if %{with_debug} LDFLAGS="-fsanitize=address" @@ -1221,7 +1283,6 @@ ln -sf ../configure --with-freetype-dir=%{_prefix} \ --with-png-dir=%{_prefix} \ --with-xpm-dir=%{_prefix} \ - --enable-gd-native-ttf \ --without-gdbm \ --with-jpeg-dir=%{_prefix} \ --with-openssl \ @@ -1266,6 +1327,9 @@ build --libdir=%{_libdir}/php \ --enable-phpdbg \ --with-imap=shared --with-imap-ssl \ --enable-mbstring=shared \ +%if %{with_onig} + --with-onig=%{_prefix} \ +%endif --enable-mbregex \ %if %{with_libgd} --with-gd=shared,%{_prefix} \ @@ -1281,6 +1345,7 @@ build --libdir=%{_libdir}/php \ --enable-dba=shared --with-db4=%{_prefix} \ --with-gdbm=%{_prefix} \ --with-tcadb=%{_prefix} \ + --with-lmdb=%{_prefix} \ --enable-exif=shared \ --enable-ftp=shared \ --with-gettext=shared \ @@ -1294,11 +1359,12 @@ build --libdir=%{_libdir}/php \ --with-mysql-sock=%{mysql_sock} \ %if %{with_oci8} %ifarch x86_64 - --with-oci8=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client64/lib,%{oraclever} \ + --with-oci8=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client64/lib,%{oraclever} \ + --with-pdo-oci=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client64/lib,%{oraclever} \ %else - --with-oci8=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client/lib,%{oraclever} \ + --with-oci8=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client/lib,%{oraclever} \ + --with-pdo-oci=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client/lib,%{oraclever} \ %endif - --with-pdo-oci=shared,instantclient,/usr,%{oraclever} \ %endif --with-interbase=shared \ --with-pdo-firebird=shared \ @@ -1334,13 +1400,13 @@ build --libdir=%{_libdir}/php \ --with-libedit \ --with-pspell=shared \ --enable-phar=shared \ - --with-mcrypt=shared,%{_prefix} \ --with-tidy=shared,%{_prefix} \ --enable-sysvmsg=shared --enable-sysvshm=shared --enable-sysvsem=shared \ --enable-shmop=shared \ --enable-posix=shared \ --with-unixODBC=shared,%{_prefix} \ --enable-fileinfo=shared \ + --with-sodium=shared \ --enable-intl=shared \ --with-icu-dir=%{_prefix} \ --with-enchant=shared,%{_prefix} \ @@ -1352,6 +1418,7 @@ without_shared="--without-gd \ --disable-opcache \ --disable-json \ --disable-xmlreader --disable-xmlwriter \ + --without-sodium \ --without-sqlite3 --disable-phar --disable-fileinfo \ --without-pspell --disable-wddx \ --without-curl --disable-posix --disable-xml \ @@ -1412,6 +1479,9 @@ build --includedir=%{_includedir}/php-zts \ %endif --with-imap=shared --with-imap-ssl \ --enable-mbstring=shared \ +%if %{with_onig} + --with-onig=%{_prefix} \ +%endif --enable-mbregex \ %if %{with_libgd} --with-gd=shared,%{_prefix} \ @@ -1427,6 +1497,7 @@ build --includedir=%{_includedir}/php-zts \ --enable-dba=shared --with-db4=%{_prefix} \ --with-gdbm=%{_prefix} \ --with-tcadb=%{_prefix} \ + --with-lmdb=%{_prefix} \ --with-gettext=shared \ --with-iconv=shared \ --enable-sockets=shared \ @@ -1441,11 +1512,12 @@ build --includedir=%{_includedir}/php-zts \ --enable-mysqlnd-threading \ %if %{with_oci8} %ifarch x86_64 - --with-oci8=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client64/lib,%{oraclever} \ + --with-oci8=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client64/lib,%{oraclever} \ + --with-pdo-oci=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client64/lib,%{oraclever} \ %else - --with-oci8=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client/lib,%{oraclever} \ + --with-oci8=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client/lib,%{oraclever} \ + --with-pdo-oci=shared,instantclient,%{_libdir}/oracle/%{oraclever}/client/lib,%{oraclever} \ %endif - --with-pdo-oci=shared,instantclient,/usr,%{oraclever} \ %endif --with-interbase=shared \ --with-pdo-firebird=shared \ @@ -1481,13 +1553,13 @@ build --includedir=%{_includedir}/php-zts \ --with-libedit \ --with-pspell=shared \ --enable-phar=shared \ - --with-mcrypt=shared,%{_prefix} \ --with-tidy=shared,%{_prefix} \ --enable-sysvmsg=shared --enable-sysvshm=shared --enable-sysvsem=shared \ --enable-shmop=shared \ --enable-posix=shared \ --with-unixODBC=shared,%{_prefix} \ --enable-fileinfo=shared \ + --with-sodium=shared \ --enable-intl=shared \ --with-icu-dir=%{_prefix} \ --with-enchant=shared,%{_prefix} \ @@ -1518,6 +1590,7 @@ cd build-apache # Run tests, using the CLI SAPI export NO_INTERACTION=1 REPORT_EXIT_STATUS=1 MALLOC_CHECK_=2 export SKIP_ONLINE_TESTS=1 +export SKIP_IO_CAPTURE_TESTS=1 unset TZ LANG LC_ALL if ! make test; then set +x @@ -1694,7 +1767,8 @@ for mod in pgsql odbc ldap snmp xmlrpc imap json \ sqlite3 \ %endif enchant phar fileinfo intl \ - mcrypt tidy pdo_dblib pspell curl wddx \ + tidy pdo_dblib pspell curl wddx \ + sodium \ posix shmop sysvshm sysvsem sysvmsg recode xml \ ; do case $mod in @@ -1715,12 +1789,12 @@ for mod in pgsql odbc ldap snmp xmlrpc imap json \ else cat > $RPM_BUILD_ROOT%{_sysconfdir}/php.d/${ini} <<EOF ; Enable ${mod} extension module -extension=${mod}.so +extension=${mod} EOF %if %{with_zts} cat > $RPM_BUILD_ROOT%{_sysconfdir}/php-zts.d/${ini} <<EOF ; Enable ${mod} extension module -extension=${mod}.so +extension=${mod} EOF %endif fi @@ -2016,7 +2090,6 @@ fi %files gmp -f files.gmp %files dba -f files.dba %files pdo -f files.pdo -%files mcrypt -f files.mcrypt %files tidy -f files.tidy %files pdo-dblib -f files.pdo_dblib %files pspell -f files.pspell @@ -2036,9 +2109,13 @@ fi %files zip -f files.zip %endif %files json -f files.json +%files sodium -f files.sodium %changelog +* Wed Aug 30 2017 Remi Collet <remi@fedoraproject.org> - 7.2.0~RC1-1 +- update to 7.2.0RC1 + * Tue Aug 22 2017 Remi Collet <remi@fedoraproject.org> - 7.1.9~RC1-2 - disable httpd MPM check - php-fpm: drop unneeded "pid" from default configuration |