# remirepo/fedora spec file for php-sabre-xml2 # # Copyright (c) 2016-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 # Github %global gh_commit 5051b30416b60f52395007c7069acbd010edd2a7 %global gh_short %(c=%{gh_commit}; echo ${c:0:7}) %global gh_owner sabre-io %global gh_project xml # Packagist %global pk_vendor sabre %global pk_project %{gh_project} # Namespace %global ns_vendor Sabre %global ns_project Xml %global major 4 Name: php-%{pk_vendor}-%{pk_project}%{major} Summary: XML library that you may not hate Version: 4.0.0 Release: 1%{?dist} URL: https://github.com/%{gh_owner}/%{gh_project} License: BSD-3-Clause # Git snapshot with tests, because of .gitattributes Source0: %{name}-%{version}-%{gh_short}.tgz Source1: makesrc.sh BuildArch: noarch %if %{with tests} BuildRequires: php(language) >= 7.4 BuildRequires: php-xmlwriter BuildRequires: php-xmlreader BuildRequires: php-dom # remirepo:1 %if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 BuildRequires: (php-composer(sabre/uri) >= 2.0 with php-composer(sabre/uri) < 4) # remirepo:3 %else BuildRequires: php-sabre-uri2 %endif BuildRequires: php-libxml BuildRequires: php-pcre BuildRequires: php-spl # From composer.json, "require-dev": { # "friendsofphp/php-cs-fixer": "^3.9", # "phpstan/phpstan": "^1.8", # "phpunit/phpunit" : "^9.0" BuildRequires: phpunit9 %global phpunit %{_bindir}/phpunit9 %endif # Autoloader BuildRequires: php-fedora-autoloader-devel # From composer.json, "require" : { # "php" : "^7.4 || ^8.0", # "ext-xmlwriter" : "*", # "ext-xmlreader" : "*", # "ext-dom" : "*", # "lib-libxml" : ">=2.6.20", # "sabre/uri" : ">=2.0,<3.0.0" Requires: php(language) >= 7.4 Requires: php-xmlwriter Requires: php-xmlreader Requires: php-dom # remirepo:1 %if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 Requires: (php-composer(sabre/uri) >= 2.0 with php-composer(sabre/uri) < 4) # remirepo:3 %else Requires: php-sabre-uri2 %endif # From phpcompatinfo report for version 2.1.2 Requires: php-libxml Requires: php-pcre Requires: php-spl # Autoloader Requires: php-composer(fedora/autoloader) Provides: php-composer(%{pk_vendor}/%{pk_project}) = %{version} %description The sabre/xml library is a specialized XML reader and writer. Autoloader: %{_datadir}/php/%{ns_vendor}/%{ns_project}%{major}/autoload.php %prep %setup -q -n %{gh_project}-%{gh_commit} phpab -t fedora -o lib/autoload.php lib cat << 'EOF' | tee -a lib/autoload.php // Dependencies \Fedora\Autoloader\Dependencies::required([ [ '%{_datadir}/php/Sabre/Uri3/autoload.php', '%{_datadir}/php/Sabre/Uri2/autoload.php', ], ]); // Functions if (!function_exists('Sabre\\Xml\\Serializer\\enum')) { require_once __DIR__ . '/Deserializer/functions.php'; require_once __DIR__ . '/Serializer/functions.php'; } EOF %build # nothing to build %install # Install as a PSR-0 library mkdir -p %{buildroot}%{_datadir}/php/%{ns_vendor} cp -pr lib %{buildroot}%{_datadir}/php/%{ns_vendor}/%{ns_project}%{major} %check : Check version php -r ' require "%{buildroot}%{_datadir}/php/%{ns_vendor}/%{ns_project}%{major}/autoload.php"; echo Sabre\Xml\Version::VERSION . "\n"; exit (Sabre\Xml\Version::VERSION === "%{version}" ? 0 : 1); ' %if %{with tests} mkdir vendor cat << 'EOF' | tee vendor/autoload.php - 4.0.0-1 - update to 4.0.0 - raise dependency on PHP 7.4 - raise dependency on sabre/uri v2 - rename to php-sabre-xml4 - move to /usr/share/php/Sabre/Xml4 * Thu Nov 4 2021 Remi Collet - 2.2.5-1 - update to 2.2.5 * Mon Oct 5 2020 Remi Collet - 2.2.3-1 - update to 2.2.3 * Mon May 11 2020 Remi Collet - 2.2.1-1 - update to 2.2.1 * Sat Feb 1 2020 Remi Collet - 2.2.0-1 - update to 2.2.0 - raise dependency on PHP 7.1 - switch to phpunit8 * Mon Aug 19 2019 Remi Collet - 2.1.3-1 - update to 2.1.3 * Fri Jul 5 2019 Remi Collet - 2.1.2-3 - fix autoloader * Fri Jul 5 2019 Remi Collet - 2.1.2-2 - fix autoloader for sabre/uri v1 and v2 * Mon Jul 1 2019 Remi Collet - 2.1.2-1 - update to 2.1.2 - rename to php-sabre-xml2 - move to /usr/share/php/Sabre/Xml2 - raise dependency on PHP 7 - switch to classmap autoloader * Wed Jan 9 2019 Remi Collet - 1.5.1-1 - update to 1.5.1 * Tue Jun 5 2018 Remi Collet - 1.5.0-6 - fix project URL * Sat Oct 29 2016 Remi Collet - 1.5.0-2 - switch from symfony/class-loader to fedora/autoloader * Mon Oct 10 2016 Remi Collet - 1.5.0-1 - update to 1.5.0 - raise dependency on PHP 5.5 * Fri May 20 2016 Remi Collet - 1.4.2-1 - update to 1.4.2 * Tue Mar 29 2016 Remi Collet - 1.4.1-1 - update to 1.4.1 * Fri Mar 11 2016 Remi Collet - 1.4.0-1 - Initial packaging