# remirepo/fedora spec file for php-sebastian-object-enumerator # # Copyright (c) 2015-2018 Remi Collet # License: CC-BY-SA # http://creativecommons.org/licenses/by-sa/4.0/ # # Please, preserve the changelog entries # %global bootstrap 0 %global gh_commit 1311872ac850040a79c3c058bea3e22d0f09cbb7 #global gh_date 20150728 %global gh_short %(c=%{gh_commit}; echo ${c:0:7}) %global gh_owner sebastianbergmann %global gh_project object-enumerator %global php_home %{_datadir}/php %global ns_vendor SebastianBergmann %global ns_project ObjectEnumerator %if %{bootstrap} %global with_tests 0%{?_with_tests:1} %else %global with_tests 0%{!?_without_tests:1} %endif Name: php-sebastian-%{gh_project} Version: 2.0.1 %global specrel 2 Release: %{?gh_date:0.%{specrel}.%{?prever}%{!?prever:%{gh_date}git%{gh_short}}}%{!?gh_date:%{specrel}}%{?dist} Summary: Traverses array and object to enumerate all referenced objects License: BSD URL: https://github.com/%{gh_owner}/%{gh_project} Source0: https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{gh_project}-%{version}-%{gh_short}.tar.gz BuildArch: noarch BuildRequires: php(language) >= 5.6 BuildRequires: php-fedora-autoloader-devel %if %{with_tests} %if 0%{?fedora} >= 27 BuildRequires: (php-composer(sebastian/recursion-context) >= 2.0 with php-composer(sebastian/recursion-context) < 3) %else BuildRequires: php-sebastian-recursion-context %endif # From composer.json"require-dev": { # "phpunit/phpunit": "~5" BuildRequires: php-composer(phpunit/phpunit) >= 5 %endif # from composer.json # "php": ">=5.6.0" # "sebastian/recursion-context": "~2.0" Requires: php(language) >= 5.6 %if 0%{?fedora} >= 27 Requires: (php-composer(sebastian/recursion-context) >= 2.0 with php-composer(sebastian/recursion-context) < 3) %else Requires: php-sebastian-recursion-context %endif # from phpcompatinfo report for version 1.0.0: Requires: php-reflection Requires: php-spl # Autoloader Requires: php-composer(fedora/autoloader) Provides: php-composer(sebastian/%{gh_project}) = %{version} %description Traverses array structures and object graphs to enumerate all referenced objects. Autoloader: %{php_home}/%{ns_vendor}/%{ns_project}/autoload.php %prep %setup -q -n %{gh_project}-%{gh_commit} %build # Generate the Autoloader, from composer.json "autoload": { # "classmap": [ # "src/" %{_bindir}/phpab --template fedora --output src/autoload.php src cat << 'EOF' | tee -a src/autoload.php // Dependencies require_once 'SebastianBergmann/RecursionContext/autoload.php'; EOF %install mkdir -p %{buildroot}%{php_home}/%{ns_vendor} cp -pr src %{buildroot}%{php_home}/%{ns_vendor}/%{ns_project} %check %if %{with_tests} mkdir vendor %{_bindir}/phpab --template fedora --output vendor/autoload.php tests : Run upstream test suite ret=0 for cmd in php php70 php71 php72; do if which $cmd; then $cmd -d include_path=.:%{buildroot}%{php_home}:%{php_home} \ %{_bindir}/phpunit --verbose || ret=1 fi done exit $ret %else : bootstrap build with test suite disabled %endif %files %{!?_licensedir:%global license %%doc} %license LICENSE %doc README.md composer.json %{php_home}/%{ns_vendor}/%{ns_project} %changelog * Tue Feb 6 2018 Remi Collet - 2.0.1-2 - use range dependencies on F27+ * Sat Feb 18 2017 Remi Collet - 2.0.1-1 - update to 2.0.1 * Tue Nov 22 2016 Remi Collet - 2.0.0-1 - update to 2.0.0 (no change) - raise dependency on sebastian/recursion-context 2.0 * Wed Nov 16 2016 Remi Collet - 1.0.1-1 - update to 1.0.1 - raise dependency on sebastian/recursion-context 1.0.4 * Mon Oct 31 2016 Remi Collet - 1.0.0-2 - switch to fedora/autoloader * Wed Mar 23 2016 Remi Collet - 1.0.0-1 - initial package