From e06f868b62e31f51abded1ec80646d472525c58d Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Fri, 21 Jul 2023 14:49:43 +0200 Subject: build out of sources tree add patch for test suite with PHP 8.3 from https://github.com/php/pecl-database-dbase/pull/2 --- REFLECTION | 90 +++++++++++++++++++++++++++++------------------------ dbase-tests.patch | 20 ++++++++++++ php-pecl-dbase.spec | 64 ++++++++++++++++++------------------- 3 files changed, 102 insertions(+), 72 deletions(-) diff --git a/REFLECTION b/REFLECTION index 544e98d..d9c8f3a 100644 --- a/REFLECTION +++ b/REFLECTION @@ -1,4 +1,4 @@ -Extension [ extension #128 dbase version 7.1.1 ] { +Extension [ extension #124 dbase version 7.1.1 ] { - Constants [5] { Constant [ string DBASE_VERSION ] { 7.1.1 } @@ -12,83 +12,93 @@ Extension [ extension #128 dbase version 7.1.1 ] { Function [ function dbase_open ] { - Parameters [2] { - Parameter #0 [ $name ] - Parameter #1 [ $mode ] - } - } - Function [ function dbase_create ] { - - - Parameters [3] { - Parameter #0 [ $filename ] - Parameter #1 [ array $fields ] - Parameter #2 [ $type ] + Parameter #0 [ string $path ] + Parameter #1 [ int $mode ] } } Function [ function dbase_close ] { - Parameters [1] { - Parameter #0 [ $identifier ] - } - } - Function [ function dbase_numrecords ] { - - - Parameters [1] { - Parameter #0 [ $identifier ] + Parameter #0 [ $database ] } + - Return [ bool ] } - Function [ function dbase_numfields ] { + Function [ function dbase_add_record ] { - - Parameters [1] { - Parameter #0 [ $identifier ] + - Parameters [2] { + Parameter #0 [ $database ] + Parameter #1 [ array $data ] } + - Return [ bool ] } - Function [ function dbase_add_record ] { + Function [ function dbase_delete_record ] { - Parameters [2] { - Parameter #0 [ $identifier ] - Parameter #1 [ array $data ] + Parameter #0 [ $database ] + Parameter #1 [ int $number ] } + - Return [ bool ] } Function [ function dbase_replace_record ] { - Parameters [3] { - Parameter #0 [ $identifier ] + Parameter #0 [ $database ] Parameter #1 [ array $data ] - Parameter #2 [ $recnum ] + Parameter #2 [ int $number ] } + - Return [ bool ] } - Function [ function dbase_get_record ] { + Function [ function dbase_numrecords ] { - - Parameters [2] { - Parameter #0 [ $identifier ] - Parameter #1 [ $record ] + - Parameters [1] { + Parameter #0 [ $database ] } + - Return [ int ] } - Function [ function dbase_get_record_with_names ] { + Function [ function dbase_numfields ] { + + - Parameters [1] { + Parameter #0 [ $database ] + } + - Return [ int ] + } + Function [ function dbase_pack ] { + + - Parameters [1] { + Parameter #0 [ $database ] + } + - Return [ bool ] + } + Function [ function dbase_get_record ] { - Parameters [2] { - Parameter #0 [ $identifier ] - Parameter #1 [ $record ] + Parameter #0 [ $database ] + Parameter #1 [ int $number ] } + - Return [ array|false ] } - Function [ function dbase_delete_record ] { + Function [ function dbase_get_record_with_names ] { - Parameters [2] { - Parameter #0 [ $identifier ] - Parameter #1 [ $record ] + Parameter #0 [ $database ] + Parameter #1 [ int $number ] } + - Return [ array|false ] } - Function [ function dbase_pack ] { + Function [ function dbase_create ] { - - Parameters [1] { - Parameter #0 [ $identifier ] + - Parameters [3] { + Parameter #0 [ string $path ] + Parameter #1 [ array $fields ] + Parameter #2 [ int $type = DBASE_TYPE_DBASE ] } } Function [ function dbase_get_header_info ] { - Parameters [1] { - Parameter #0 [ $database_handle ] + Parameter #0 [ $database ] } + - Return [ array ] } } } diff --git a/dbase-tests.patch b/dbase-tests.patch index 7d2f09f..f8b14cc 100644 --- a/dbase-tests.patch +++ b/dbase-tests.patch @@ -33,3 +33,23 @@ index e2a0b4c..5d6e3bd 100644 -unlink(FILENAME); +@unlink(FILENAME); ?> +From 89fdec1c6c9ea3b6284973cb5459d0ef3e5ef8bd Mon Sep 17 00:00:00 2001 +From: Remi Collet +Date: Fri, 21 Jul 2023 14:45:36 +0200 +Subject: [PATCH] relax test for 8.3 bool vs false in error message + +--- + tests/bug78668_8.phpt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/bug78668_8.phpt b/tests/bug78668_8.phpt +index 0657e51..811dfe1 100644 +--- a/tests/bug78668_8.phpt ++++ b/tests/bug78668_8.phpt +@@ -18,5 +18,5 @@ try { + ===DONE=== + --EXPECTF-- + Warning: dbase_open(): unable to open database %s on line %d +-dbase_get_header_info(): Argument #1 ($database) must be of type resource, bool given ++dbase_get_header_info(): Argument #1 ($database) must be of type resource, %s given + ===DONE=== diff --git a/php-pecl-dbase.spec b/php-pecl-dbase.spec index 27515b7..340fc5a 100644 --- a/php-pecl-dbase.spec +++ b/php-pecl-dbase.spec @@ -1,33 +1,29 @@ # remirepo spec file for php-pecl-dbase # -# Copyright (c) 2015-2022 Remi Collet -# License: CC-BY-SA +# Copyright (c) 2015-2023 Remi Collet +# License: CC-BY-SA-4.0 # http://creativecommons.org/licenses/by-sa/4.0/ # # Please, preserve the changelog entries # -%bcond_without tests +%{?scl:%scl_package php-pecl-dbase} -# we don't want -z defs linker flag -%undefine _strict_symbol_defs_build - -%if 0%{?scl:1} -%scl_package php-pecl-dbase -%endif - -%global with_zts 0%{!?_without_zts:%{?__ztsphp:1}} -%global pecl_name dbase -%global ini_name 40-%{pecl_name}.ini +%bcond_without tests +%global with_zts 0%{!?_without_zts:%{?__ztsphp:1}} +%global pecl_name dbase +%global ini_name 40-%{pecl_name}.ini %global upstream_version 7.1.1 #global upstream_prever RC2 +%global sources %{pecl_name}-%{upstream_version}%{?upstream_prever} +%global _configure ../%{sources}/configure Summary: dBase database file access functions Name: %{?scl_prefix}php-pecl-dbase Version: %{upstream_version}%{?upstream_prever:~%{upstream_prever}} -Release: 2%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}} -License: PHP +Release: 3%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}} +License: PHP-3.01 URL: https://pecl.php.net/package/%{pecl_name} Source0: https://pecl.php.net/get/%{pecl_name}-%{upstream_version}%{?upstream_prever}.tgz @@ -40,7 +36,6 @@ BuildRequires: %{?scl_prefix}php-pear Requires: %{?scl_prefix}php(zend-abi) = %{php_zend_api} Requires: %{?scl_prefix}php(api) = %{php_core_api} -%{?_sclreq:Requires: %{?scl_prefix}runtime%{?_sclreq}%{?_isa}} Provides: %{?scl_prefix}php-%{pecl_name} = %{version} Provides: %{?scl_prefix}php-%{pecl_name}%{?_isa} = %{version} @@ -66,15 +61,14 @@ Package built for PHP %(%{__php} -r 'echo PHP_MAJOR_VERSION.".".PHP_MINOR_VERSIO %prep %setup -q -c -mv %{pecl_name}-%{upstream_version}%{?upstream_prever} NTS # Don't install/register tests sed -e 's/role="test"/role="src"/' \ %{?_licensedir:-e '/LICENSE/s/role="doc"/role="src"/' } \ -i package.xml -cd NTS -%patch0 -p1 +cd %{sources} +%patch -P0 -p1 chmod -x *.c *.h # Sanity check, really often broken @@ -85,9 +79,9 @@ if test "x${extver}" != "x%{upstream_version}%{?upstream_prever}"; then fi cd .. +mkdir NTS %if %{with_zts} -# Duplicate source tree for NTS / ZTS build -cp -pr NTS ZTS +mkdir ZTS %endif # Create configuration file @@ -100,20 +94,21 @@ EOF %build %{?dtsenable} -cd NTS -%{_bindir}/phpize +cd %{sources} +%{__phpize} + +cd ../NTS %configure \ --with-libdir=%{_lib} \ - --with-php-config=%{_bindir}/php-config + --with-php-config=%{__phpconfig} make %{?_smp_mflags} %if %{with_zts} cd ../ZTS -%{_bindir}/zts-phpize %configure \ --with-libdir=%{_lib} \ - --with-php-config=%{_bindir}/zts-php-config + --with-php-config=%{__ztsphpconfig} make %{?_smp_mflags} %endif @@ -138,7 +133,7 @@ install -D -m 644 %{ini_name} %{buildroot}%{php_ztsinidir}/%{ini_name} # Documentation for i in $(grep 'role="doc"' package.xml | sed -e 's/^.*name="//;s/".*$//') -do install -Dpm 644 NTS/$i %{buildroot}%{pecl_docdir}/%{pecl_name}/$i +do install -Dpm 644 %{sources}/$i %{buildroot}%{pecl_docdir}/%{pecl_name}/$i done @@ -163,15 +158,16 @@ fi %check +cd %{sources} + : Minimal load test for NTS extension %{__php} --no-php-ini \ --define extension=%{buildroot}%{php_extdir}/%{pecl_name}.so \ --modules | grep '^%{pecl_name}$' %if %{with tests} -cd NTS : Upstream test suite for NTS extension -TEST_PHP_ARGS="-n -d extension_dir=$PWD/modules -d extension=%{pecl_name}.so" \ +TEST_PHP_ARGS="-n -d extension=%{buildroot}%{php_extdir}/%{pecl_name}.so" \ %{__php} -n run-tests.php -q -P --show-diff %endif @@ -182,9 +178,8 @@ TEST_PHP_ARGS="-n -d extension_dir=$PWD/modules -d extension=%{pecl_name}.so" \ --modules | grep '^%{pecl_name}$' %if %{with tests} -cd ../ZTS : Upstream test suite for ZTS extension -TEST_PHP_ARGS="-n -d extension_dir=$PWD/modules -d extension=%{pecl_name}.so" \ +TEST_PHP_ARGS="-n -d extension=%{buildroot}%{php_ztsextdir}/%{pecl_name}.so" \ REPORT_EXIT_STATUS=1 \ %{__ztsphp} -n run-tests.php -q -P --show-diff %endif @@ -192,7 +187,7 @@ REPORT_EXIT_STATUS=1 \ %files -%{?_licensedir:%license NTS/LICENSE} +%{?_licensedir:%license %{sources}/LICENSE} %doc %{pecl_docdir}/%{pecl_name} %{pecl_xmldir}/%{name}.xml @@ -206,6 +201,11 @@ REPORT_EXIT_STATUS=1 \ %changelog +* Fri Jul 21 2023 Remi Collet - 7.1.1-3 +- build out of sources tree +- add patch for test suite with PHP 8.3 from + https://github.com/php/pecl-database-dbase/pull/2 + * Mon Sep 12 2022 Remi Collet - 7.1.1-2 - add upstream patch for test suite with PHP 8.2 -- cgit