From 6c4103d44dd1ad45f22f1f25e7f8072f21bea91b Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Wed, 3 Nov 2021 08:09:03 +0100 Subject: update to 8.0.13RC1 dba: enable qdbm backend dba: drop gdbm backend --- failed.txt | 10 +++----- php-8.0.12-crypt.patch | 66 -------------------------------------------------- php-8.0.13-crypt.patch | 45 ++++++++++++++++++++++++++++++++++ php80.spec | 34 ++++++++++++++++++++------ 4 files changed, 75 insertions(+), 80 deletions(-) delete mode 100644 php-8.0.12-crypt.patch create mode 100644 php-8.0.13-crypt.patch diff --git a/failed.txt b/failed.txt index 4ed2c32..7e3b1c4 100644 --- a/failed.txt +++ b/failed.txt @@ -1,16 +1,14 @@ -===== 8.0.12 (2021-10-21) +===== 8.0.13RC1 (2021-11-04) $ grep -ar 'Tests failed' /var/lib/mock/{fc,el}*/build.log /var/lib/mock/el7x/build.log:Tests failed : 0 /var/lib/mock/el8x80/build.log:Tests failed : 0 -/var/lib/mock/fc33x/build.log:Tests failed : 1 -/var/lib/mock/fc34x/build.log:Tests failed : 1 -/var/lib/mock/fc35x/build.log:Tests failed : 1 +/var/lib/mock/fc33x/build.log:Tests failed : 0 +/var/lib/mock/fc34x/build.log:Tests failed : 0 +/var/lib/mock/fc35x/build.log:Tests failed : 0 -fc33x, fc34x, fc35x - 4 Bug #33415 [2] (Possibly invalid non-one-hour DST or timezone shifts) [ext/date/tests/bug33415-2.phpt] 1 proc_open give erratic test results :( diff --git a/php-8.0.12-crypt.patch b/php-8.0.12-crypt.patch deleted file mode 100644 index 3469a93..0000000 --- a/php-8.0.12-crypt.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 9f98bc58c7bb7fdbb25614ca645bbd7a465fdfed Mon Sep 17 00:00:00 2001 -From: Remi Collet -Date: Fri, 15 Oct 2021 15:45:50 +0200 -Subject: [PATCH] remove closing bracket in bad place - ---- - build/php.m4 | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/build/php.m4 b/build/php.m4 -index 9746ba28f325..7fb9e3125d13 100644 ---- a/build/php.m4 -+++ b/build/php.m4 -@@ -2219,7 +2219,6 @@ struct crypt_data buffer; - crypt_r("passwd", "hash", &buffer); - ]])],[php_cv_crypt_r_style=struct_crypt_data_gnu_source],[]) - fi -- ]) - - if test "$php_cv_crypt_r_style" = "none"; then - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ -From fc4e31467c352032ee709ac55d3c67bc22abcd8d Mon Sep 17 00:00:00 2001 -From: Remi Collet -Date: Fri, 15 Oct 2021 17:11:12 +0200 -Subject: [PATCH] add --with-external-libcrypt build option display an error - message if some algo not available in external libcrypt - ---- - ext/standard/config.m4 | 21 ++++++++++++++++----- - 1 file changed, 16 insertions(+), 5 deletions(-) - -diff --git a/ext/standard/config.m4 b/ext/standard/config.m4 -index 58b9c5e658a4..3ec18be4d7df 100644 ---- a/ext/standard/config.m4 -+++ b/ext/standard/config.m4 -@@ -267,14 +267,25 @@ int main() { - ])]) - - -+PHP_ARG_WITH([external-libcrypt], -+ [for external libcrypt or libxcrypt], -+ [AS_HELP_STRING([--with-external-libcrypt], -+ [Use external libcrypt or libxcrypt])], -+ [no], -+ [no]) -+ - dnl - dnl If one of them is missing, use our own implementation, portable code is then possible - dnl --dnl TODO This is currently always enabled --if test "$ac_cv_crypt_blowfish" = "no" || test "$ac_cv_crypt_des" = "no" || test "$ac_cv_crypt_ext_des" = "no" || test "$ac_cv_crypt_md5" = "no" || test "$ac_cv_crypt_sha512" = "no" || test "$ac_cv_crypt_sha256" = "no" || test "$ac_cv_func_crypt_r" != "yes" || true; then -- AC_DEFINE_UNQUOTED(PHP_USE_PHP_CRYPT_R, 1, [Whether PHP has to use its own crypt_r for blowfish, des, ext des and md5]) -- -- PHP_ADD_SOURCES(PHP_EXT_DIR(standard), crypt_freesec.c crypt_blowfish.c crypt_sha512.c crypt_sha256.c php_crypt_r.c) -+dnl This is currently enabled by default -+if test "$ac_cv_crypt_blowfish" = "no" || test "$ac_cv_crypt_des" = "no" || test "$ac_cv_crypt_ext_des" = "no" || test "$ac_cv_crypt_md5" = "no" || test "$ac_cv_crypt_sha512" = "no" || test "$ac_cv_crypt_sha256" = "no" || test "$ac_cv_func_crypt_r" != "yes" || test "$PHP_EXTERNAL_LIBCRYPT" = "no"; then -+ if test "$PHP_EXTERNAL_LIBCRYPT" = "no"; then -+ AC_DEFINE_UNQUOTED(PHP_USE_PHP_CRYPT_R, 1, [Whether PHP has to use its own crypt_r for blowfish, des, ext des and md5]) -+ -+ PHP_ADD_SOURCES(PHP_EXT_DIR(standard), crypt_freesec.c crypt_blowfish.c crypt_sha512.c crypt_sha256.c php_crypt_r.c) -+ else -+ AC_MSG_ERROR([Cannot use external libcrypt as some algo are missing]) -+ fi - else - AC_DEFINE_UNQUOTED(PHP_USE_PHP_CRYPT_R, 0, [Whether PHP has to use its own crypt_r for blowfish, des and ext des]) - fi diff --git a/php-8.0.13-crypt.patch b/php-8.0.13-crypt.patch new file mode 100644 index 0000000..31a8c8a --- /dev/null +++ b/php-8.0.13-crypt.patch @@ -0,0 +1,45 @@ +From fc4e31467c352032ee709ac55d3c67bc22abcd8d Mon Sep 17 00:00:00 2001 +From: Remi Collet +Date: Fri, 15 Oct 2021 17:11:12 +0200 +Subject: [PATCH] add --with-external-libcrypt build option display an error + message if some algo not available in external libcrypt + +--- + ext/standard/config.m4 | 21 ++++++++++++++++----- + 1 file changed, 16 insertions(+), 5 deletions(-) + +diff --git a/ext/standard/config.m4 b/ext/standard/config.m4 +index 58b9c5e658a4..3ec18be4d7df 100644 +--- a/ext/standard/config.m4 ++++ b/ext/standard/config.m4 +@@ -267,14 +267,25 @@ int main() { + ])]) + + ++PHP_ARG_WITH([external-libcrypt], ++ [for external libcrypt or libxcrypt], ++ [AS_HELP_STRING([--with-external-libcrypt], ++ [Use external libcrypt or libxcrypt])], ++ [no], ++ [no]) ++ + dnl + dnl If one of them is missing, use our own implementation, portable code is then possible + dnl +-dnl TODO This is currently always enabled +-if test "$ac_cv_crypt_blowfish" = "no" || test "$ac_cv_crypt_des" = "no" || test "$ac_cv_crypt_ext_des" = "no" || test "$ac_cv_crypt_md5" = "no" || test "$ac_cv_crypt_sha512" = "no" || test "$ac_cv_crypt_sha256" = "no" || test "$ac_cv_func_crypt_r" != "yes" || true; then +- AC_DEFINE_UNQUOTED(PHP_USE_PHP_CRYPT_R, 1, [Whether PHP has to use its own crypt_r for blowfish, des, ext des and md5]) +- +- PHP_ADD_SOURCES(PHP_EXT_DIR(standard), crypt_freesec.c crypt_blowfish.c crypt_sha512.c crypt_sha256.c php_crypt_r.c) ++dnl This is currently enabled by default ++if test "$ac_cv_crypt_blowfish" = "no" || test "$ac_cv_crypt_des" = "no" || test "$ac_cv_crypt_ext_des" = "no" || test "$ac_cv_crypt_md5" = "no" || test "$ac_cv_crypt_sha512" = "no" || test "$ac_cv_crypt_sha256" = "no" || test "$ac_cv_func_crypt_r" != "yes" || test "$PHP_EXTERNAL_LIBCRYPT" = "no"; then ++ if test "$PHP_EXTERNAL_LIBCRYPT" = "no"; then ++ AC_DEFINE_UNQUOTED(PHP_USE_PHP_CRYPT_R, 1, [Whether PHP has to use its own crypt_r for blowfish, des, ext des and md5]) ++ ++ PHP_ADD_SOURCES(PHP_EXT_DIR(standard), crypt_freesec.c crypt_blowfish.c crypt_sha512.c crypt_sha256.c php_crypt_r.c) ++ else ++ AC_MSG_ERROR([Cannot use external libcrypt as some algo are missing]) ++ fi + else + AC_DEFINE_UNQUOTED(PHP_USE_PHP_CRYPT_R, 0, [Whether PHP has to use its own crypt_r for blowfish, des and ext des]) + fi diff --git a/php80.spec b/php80.spec index 1b8bfa7..457f3f6 100644 --- a/php80.spec +++ b/php80.spec @@ -14,7 +14,7 @@ # Extension version %global fileinfover 1.0.5 %global oci8ver 3.0.1 -%global zipver 1.19.4 +%global zipver 1.19.5 # Adds -z now to the linker flags %global _hardened_build 1 @@ -48,6 +48,13 @@ %bcond_with libpcre %endif +# Using qdbm from "remi" for now, see https://bugzilla.redhat.com/2017308 +%if 0%{?fedora} >= 33 || 0%{?rhel} >= 8 +%bcond_without qdbm +%else +%bcond_with qdbm +%endif + # TODO change when 8.5 released (libxcrypt 4.1.1-6) %if 0%{?fedora} >= 33 || 0%{?rhel} >= 9 # switch to bundled library using --without libxcrypt @@ -94,13 +101,13 @@ %bcond_without libgd %bcond_with zip -%global upver 8.0.12 -#global rcver RC1 +%global upver 8.0.13 +%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 @@ -165,7 +172,7 @@ Patch49: php-8.0.10-phar-sha.patch # compatibility with OpenSSL 3.0, from 8.1 Patch50: php-8.0.10-openssl3.patch # use system libxcrypt, from 8.1 -Patch51: php-8.0.12-crypt.patch +Patch51: php-8.0.13-crypt.patch # RC Patch Patch91: php-7.2.0-oci8conf.patch @@ -919,8 +926,10 @@ Summary: A database abstraction layer module for PHP applications License: PHP BuildRequires: libdb-devel BuildRequires: tokyocabinet-devel -BuildRequires: gdbm-devel BuildRequires: lmdb-devel +%if %{with qdbm} +BuildRequires: qdbm-devel +%endif 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 @@ -1445,9 +1454,11 @@ build --libdir=%{_libdir}/php \ --with-bz2=shared \ --enable-ctype=shared \ --enable-dba=shared --with-db4=%{_prefix} \ - --with-gdbm=%{_prefix} \ --with-tcadb=%{_prefix} \ --with-lmdb=%{_prefix} \ +%if %{with qdbm} + --with-qdbm=%{_root_prefix} \ +%endif --enable-exif=shared \ --enable-ftp=shared \ --with-gettext=shared \ @@ -1583,9 +1594,11 @@ build --includedir=%{_includedir}/php-zts \ --with-bz2=shared \ --enable-ctype=shared \ --enable-dba=shared --with-db4=%{_prefix} \ - --with-gdbm=%{_prefix} \ --with-tcadb=%{_prefix} \ --with-lmdb=%{_prefix} \ +%if %{with qdbm} + --with-qdbm=%{_root_prefix} \ +%endif --with-gettext=shared \ --with-iconv=shared \ --enable-sockets=shared \ @@ -2175,6 +2188,11 @@ fi %changelog +* Wed Nov 3 2021 Remi Collet - 8.0.13~RC1-1 +- update to 8.0.13RC1 +- dba: enable qdbm backend +- dba: drop gdbm backend + * Tue Oct 26 2021 Remi Collet - 8.0.12-2 - add patch for OpenSSL 3.0 on F36 and EL9 -- cgit