# remirepo/fedora spec file for php-symfony-contracts # # Copyright (c) 2019 Remi Collet # License: CC-BY-SA # http://creativecommons.org/licenses/by-sa/4.0/ # # Please, preserve the changelog entries # %global gh_commit 9cb52490dd60e0f50dbcdbdb3a6dbcb31f3a363e %global gh_short %(c=%{gh_commit}; echo ${c:0:7}) %global gh_owner symfony %global gh_project contracts # Packagist %global pk_vendor %{gh_owner} %global pk_project %{gh_project} # Namespace %global ns_vendor Symfony %global ns_project Contracts %global php_home %{_datadir}/php # Test %global with_tests 0%{!?_without_tests:1} Name: php-%{pk_vendor}-%{pk_project} Version: 1.1.7 Release: 1%{?gh_date:.%{gh_date}git%{gh_short}}%{?dist} Summary: A set of abstractions extracted out of the Symfony License: MIT URL: https://github.com/%{gh_owner}/%{gh_project} Source0: https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{name}-%{version}-%{?gh_short}.tar.gz BuildArch: noarch %if %{with_tests} # For tests BuildRequires: php(language) >= 7.1.3 BuildRequires: php-reflection BuildRequires: php-json BuildRequires: php-pcre BuildRequires: php-spl BuildRequires: php-intl # From composer.json, "require-dev": { # "psr/cache": "^1.0", # "psr/container": "^1.0", # "symfony/polyfill-intl-idn": "^1.10" # remirepo:1 %if 0%{?fedora} >= 27 || 0%{?rhel} >=8 BuildRequires: (php-composer(psr/cache) >= 1.0 with php-composer(psr/cache) < 2) BuildRequires: (php-composer(psr/container) >= 1.0 with php-composer(psr/container) < 2) # remirepo:4 %else BuildRequires: php-psr-cache BuildRequires: php-psr-container %endif %global phpunit %{_bindir}/phpunit7 BuildRequires: %{phpunit} # Autoloader BuildRequires: php-composer(fedora/autoloader) %endif # From composer.json, "require": { # "php": "^7.1.3" Requires: php(language) >= 7.1.3 # From composer.json, "suggest": { # "psr/cache": "When using the Cache contracts", # "psr/container": "When using the Service contracts", # "psr/event-dispatcher": "When using the EventDispatcher contracts", # "symfony/cache-implementation": "", # "symfony/event-dispatcher-implementation": "", # "symfony/http-client-implementation": "", # "symfony/service-implementation": "", # "symfony/translation-implementation": "" # remirepo:1 %if 0%{?fedora} >= 27 || 0%{?rhel} >=8 Recommends: (php-composer(psr/cache) >= 1.0 with php-composer(psr/cache) < 2) Recommends: (php-composer(psr/container) >= 1.0 with php-composer(psr/container) < 2) Recommends: (php-composer(psr/event-dispatcher) >= 1.0 with php-composer(psr/event-dispatcher) < 2) # remirepo:1 %endif # From phpcompatinfo report for version 1.1.0 Requires: php-reflection Requires: php-json Requires: php-pcre Requires: php-spl Requires: php-intl # Autoloader Requires: php-composer(fedora/autoloader) Provides: php-composer(%{pk_vendor}/%{pk_project}) = %{version} Provides: php-composer(%{pk_vendor}/cache-contracts) = %{version} Provides: php-composer(%{pk_vendor}/event-dispatcher-contracts) = %{version} Provides: php-composer(%{pk_vendor}/http-client-contracts) = %{version} Provides: php-composer(%{pk_vendor}/service-contracts) = %{version} Provides: php-composer(%{pk_vendor}/translation-contracts) = %{version} %description A set of abstractions extracted out of the Symfony components. Can be used to build on semantics that the Symfony components proved useful - and that already have battle tested implementations. Autoloader: %{php_home}/%{ns_vendor}/%{ns_project}/autoload.php %prep %setup -q -n %{gh_project}-%{gh_commit} for i in */composer.json */LICENSE */README.md do mv $i $(dirname $i)_$(basename $i) done %build : Create autoloader cat <<'AUTOLOAD' | tee autoload.php - 1.1.7-1 - update to 1.1.7 - add missing EventDispatcher and HttpClient directories - add weak dependency on psr/event-dispatcher * Thu Jun 6 2019 Remi Collet - 1.1.3-1 - update to 1.1.3 * Mon Jun 3 2019 Remi Collet - 1.1.2-1 - update to 1.1.2 (no change) * Tue May 28 2019 Remi Collet - 1.1.1-1 - update to 1.1.1 * Thu May 16 2019 Remi Collet - 1.1.0-1 - update to 1.1.0 * Mon Jan 7 2019 Remi Collet - 1.0.2-1 - initial package, version 1.0.2