summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemi Collet <remi@remirepo.net>2017-08-30 11:21:43 +0200
committerRemi Collet <remi@remirepo.net>2017-08-30 11:21:43 +0200
commitd15b114d16b446eea7113a982021c7b03c387b50 (patch)
tree76f481324b02dbe2b2552bc04398d0629cd90830
parent43681eb3e835ec5dc36297caa13315f3692bcab9 (diff)
PHP 7.2.0RC1
-rw-r--r--10-opcache.ini5
-rw-r--r--20-oci8.ini2
-rw-r--r--bug71914.patch192
-rw-r--r--failed.txt13
-rw-r--r--php-5.6.3-oci8conf.patch39
-rw-r--r--php-7.0.0-fixheader.patch23
-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.patch15
-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.patch35
-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.conf14
-rw-r--r--php-timelib.patch30
-rw-r--r--php.conf2
-rw-r--r--php.conf22
-rw-r--r--php.ini45
-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
-
diff --git a/failed.txt b/failed.txt
index fcc62e8..7d5bf61 100644
--- a/failed.txt
+++ b/failed.txt
@@ -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
diff --git a/php.conf b/php.conf
index 38f54ae..d192ccf 100644
--- a/php.conf
+++ b/php.conf
@@ -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>
diff --git a/php.conf2 b/php.conf2
index fc6de6f..aeed80f 100644
--- a/php.conf2
+++ b/php.conf2
@@ -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>
diff --git a/php.ini b/php.ini
index fc457f2..ecc660c 100644
--- a/php.ini
+++ b/php.ini
@@ -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=
diff --git a/php71.spec b/php72.spec
index 4921043..f388e42 100644
--- a/php71.spec
+++ b/php72.spec
@@ -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