# remirepo spec file for php-pecl-wddx # # Copyright (c) 2020-2023 Remi Collet # License: CC-BY-SA-4.0 # http://creativecommons.org/licenses/by-sa/4.0/ # # Please, preserve the changelog entries # # we don't want -z defs linker flag %undefine _strict_symbol_defs_build %if 0%{?scl:1} %scl_package php-pecl-wddx %else %global _root_bindir %{_bindir} %global _root_libexecdir %{_libexecdir} %endif # https://github.com/php/pecl-text-wddx/commits/master %global gh_commit f49752c79739c2cea7b4e493cc77d2e4f1855a03 %global gh_short %(c=%{gh_commit}; echo ${c:0:7}) %global gh_owner php %global gh_project pecl-text-wddx %global gh_date 20210114 %global with_zts 0%{!?_without_zts:%{?__ztsphp:1}} %global pecl_name wddx %global with_tests 0%{!?_without_tests:1} %global upver 1.0.0 %global uplower DEV # After 20-xml %global ini_name 30-%{pecl_name}.ini Summary: Web Distributed Data Exchange Name: %{?scl_prefix}php-pecl-%{pecl_name} Version: %{upver}%{?uplower:~%{uplower}}%{?gh_date:.%{gh_date}} Release: 8%{?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://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{pecl_name}-%{upver}-%{gh_short}.tar.gz BuildRequires: make BuildRequires: %{?dtsprefix}gcc BuildRequires: %{?scl_prefix}php-devel >= 7.4 BuildRequires: %{?scl_prefix}php-xml BuildRequires: %{?scl_prefix}php-pear Requires: %{?scl_prefix}php(zend-abi) = %{php_zend_api} Requires: %{?scl_prefix}php(api) = %{php_core_api} Requires: %{?scl_prefix}php-xml%{?_isa} # Set epoch so provides is > 0:7.3 Obsoletes: %{?scl_prefix}php-%{pecl_name} < 7.4.0 Provides: %{?scl_prefix}php-%{pecl_name} = 1:%{version} Provides: %{?scl_prefix}php-%{pecl_name}%{?_isa} = 1:%{version} Provides: %{?scl_prefix}php-pecl(%{pecl_name}) = %{version} Provides: %{?scl_prefix}php-pecl(%{pecl_name})%{?_isa} = %{version} %description The Web Distributed Data Exchange, or WDDX, is a free, open XML-based technology that allows Web applications created with any platform to easily exchange data with one another over the Web. This extension which was previously part of the PHP distribution. This package is only provided for legacy applications. Package built for PHP %(%{__php} -r 'echo PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')%{?scl: as Software Collection (%{scl} by %{?scl_vendor}%{!?scl_vendor:rh})}. %prep %setup -qc mv %{gh_project}-%{gh_commit} NTS cd NTS # Check version as upstream often forget to update this extver=$(sed -n '/#define PHP_WDDX_VERSION/{s/.* "//;s/".*$//;p}' php_wddx.h) if test "x${extver}" != "x%{upver}%{?rcver}%{?gh_date:-dev}"; then : Error: Upstream WDDX version is ${extver}, expecting %{upver}%{?rcver}%{?gh_date:-dev}. exit 1 fi cd .. # Create configuration file cat << 'EOF' | tee %{ini_name} ; Enable "%{summary}" extension module extension=%{pecl_name} EOF %if %{with_zts} # duplicate for ZTS build cp -pr NTS ZTS %endif %build %{?dtsenable} peclconf() { %configure \ --enable-wddx \ --with-php-config=$1 } cd NTS %{_bindir}/phpize peclconf %{_bindir}/php-config make %{?_smp_mflags} %if %{with_zts} cd ../ZTS %{_bindir}/zts-phpize peclconf %{_bindir}/zts-php-config make %{?_smp_mflags} %endif %install %{?dtsenable} # Install the NTS stuff make -C NTS install INSTALL_ROOT=%{buildroot} install -D -m 644 %{ini_name} %{buildroot}%{php_inidir}/%{ini_name} # Install the ZTS stuff %if %{with_zts} make -C ZTS install INSTALL_ROOT=%{buildroot} install -D -m 644 %{ini_name} %{buildroot}%{php_ztsinidir}/%{ini_name} %endif %check cd NTS : Minimal load test for NTS extension %{_bindir}/php --no-php-ini \ --define extension=xml \ --define extension=%{buildroot}%{php_extdir}/%{pecl_name}.so \ --modules | grep '^%{pecl_name}$' %if %{with_zts} cd ../ZTS : Minimal load test for ZTS extension %{__ztsphp} --no-php-ini \ --define extension=xml \ --define extension=%{buildroot}%{php_ztsextdir}/%{pecl_name}.so \ --modules | grep '^%{pecl_name}$' %endif %if %{with_tests} cd ../NTS : Run upstream test suite TEST_PHP_EXECUTABLE=%{__php} \ TEST_PHP_ARGS="-n -d extension=xml -d extension=%{buildroot}%{php_extdir}/%{pecl_name}.so" \ NO_INTERACTION=1 \ REPORT_EXIT_STATUS=1 \ %{__php} -n run-tests.php -q --show-diff %endif %files %{!?_licensedir:%global license %%doc} %license NTS/LICENSE %config(noreplace) %{php_inidir}/%{ini_name} %{php_extdir}/%{pecl_name}.so %if %{with_zts} %{php_ztsextdir}/%{pecl_name}.so %config(noreplace) %{php_ztsinidir}/%{ini_name} %endif %changelog * Thu Aug 24 2023 Remi Collet - 1.0.0~DEV.20210114-8 - F39 build * Thu Jan 14 2021 Remi Collet - 1.0.0~DEV.20210114-7 - add upstream fix for PHP 8 * Tue Sep 03 2019 Remi Collet - 1.0.0~DEV.20190320-6 - rebuild for 7.4.0RC1 * Tue Jul 23 2019 Remi Collet - 1.0.0~DEV.20190320-5 - rebuild for 7.4.0beta1 * Fri Jul 12 2019 Remi Collet - 1.0.0~DEV.20190320-4 - fix upgrade path * Wed May 29 2019 Remi Collet - 1.0.0~DEV.20190320-3 - rebuild * Thu May 23 2019 Remi Collet - 1.0.0~DEV.20190320-2 - refresh * Thu May 23 2019 Remi Collet - 1.0.0~DEV.20190320-1 - initial package, version 1.0.0-dev