# spec file for phpcov # # Copyright (c) 2013-2018 Remi Collet # License: CC-BY-SA # http://creativecommons.org/licenses/by-sa/4.0/ # # Please, preserve the changelog entries # # For compatibility with SCL %undefine __brp_mangle_shebangs %global gh_commit 72fb974e6fe9b39d7e0b0d44061d2ba4c49ee0b8 %global gh_short %(c=%{gh_commit}; echo ${c:0:7}) %global gh_owner sebastianbergmann %global gh_project phpcov %global php_home %{_datadir}/php %global with_tests 0%{!?_without_tests:1} # Packagist %global pk_vendor phpunit %global pk_project phpcov # Namespace %global ns_vendor SebastianBergmann %global ns_project PHPCOV Name: %{pk_project} Version: 5.0.0 Release: 1%{?dist} Summary: CLI frontend for PHP_CodeCoverage Group: Development/Libraries License: BSD 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 # Fix autoload for RPM Patch0: %{gh_project}-rpm.patch BuildArch: noarch BuildRequires: php(language) >= 7.1 BuildRequires: php-fedora-autoloader-devel %if %{with_tests} BuildRequires: phpunit7 %if 0%{?fedora} >= 27 BuildRequires: (php-composer(phpunit/php-code-coverage) >= 6.0 with php-composer(phpunit/php-code-coverage) < 7) BuildRequires: (php-composer(sebastian/diff) >= 3 with php-composer(sebastian/diff) < 4) BuildRequires: (php-composer(sebastian/finder-facade) >= 1.1 with php-composer(sebastian/finder-facade) < 2) BuildRequires: (php-composer(sebastian/version) >= 2.0 with php-composer(sebastian/version) < 3) BuildRequires: (php-composer(symfony/console) >= 3.0 with php-composer(symfony/console) < 5) %else BuildRequires: php-phpunit-php-code-coverage6 BuildRequires: php-sebastian-diff3 BuildRequires: php-phpunit-FinderFacade >= 1.1 BuildRequires: php-phpunit-Version >= 2.0 BuildRequires: php-symfony4-console %endif BuildRequires: php-pecl(Xdebug) %endif # from composer.json # "php": "^7.1", # "phpunit/phpunit": "^7.0", # "phpunit/php-code-coverage": "^6.0", # "sebastian/diff": "^3.0", # "sebastian/finder-facade": "^1.1", # "sebastian/version": "^2.0", # "symfony/console": "^3.0|^4.0" Requires: php(language) >= 7.1 Requires: phpunit7 %if 0%{?fedora} >= 27 Requires: (php-composer(phpunit/php-code-coverage) >= 6.0 with php-composer(phpunit/php-code-coverage) < 7) Requires: (php-composer(sebastian/diff) >= 3 with php-composer(sebastian/diff) < 4) Requires: (php-composer(sebastian/finder-facade) >= 1.1 with php-composer(sebastian/finder-facade) < 2) Requires: (php-composer(sebastian/version) >= 2.0 with php-composer(sebastian/version) < 3) Requires: (php-composer(symfony/console) >= 3.0 with php-composer(symfony/console) < 5) %else Requires: php-phpunit-php-code-coverage6 Requires: php-sebastian-diff3 Requires: php-phpunit-FinderFacade >= 1.1 Requires: php-phpunit-Version >= 2.0 Requires: php-symfony4-console %endif # from phpcompatinfo report for version 4.0.0 # none %if 0%{?fedora} >= 26 Obsoletes: php-phpunit-phpcov < 4 Provides: php-phpunit-phpcov = %{version} %else Conflicts: php-phpunit-phpcov < 4 %endif Provides: php-composer(%{pk_vendor}/%{pk_project}) = %{version} %description %{pk_project} is a command-line frontend for the PHP_CodeCoverage library. %prep %setup -q -n %{gh_project}-%{gh_commit} %patch0 -p0 -b .rpm %build phpab \ --template fedora \ --output src/autoload.php \ src cat << 'EOF' | tee -a src/autoload.php // Dependencies \Fedora\Autoloader\Dependencies::required([ '%{php_home}/PHPUnit7/autoload.php', '%{php_home}/%{ns_vendor}/CodeCoverage6/autoload.php', '%{php_home}/%{ns_vendor}/Diff3/autoload.php', '%{php_home}/%{ns_vendor}/FinderFacade/autoload.php', '%{php_home}/%{ns_vendor}/Version/autoload.php', [ '%{php_home}/Symfony4/Component/Console/autoload.php', '%{php_home}/Symfony3/Component/Console/autoload.php', ] ]); EOF %install mkdir -p %{buildroot}%{php_home}/%{ns_vendor} cp -pr src %{buildroot}%{php_home}/%{ns_vendor}/%{ns_project} install -D -p -m 755 %{pk_project} %{buildroot}%{_bindir}/%{pk_project} %check %if %{with_tests} mkdir vendor ln -s %{buildroot}%{php_home}/%{ns_vendor}/%{ns_project}/autoload.php vendor/autoload.php ret=0 if which phpunit6; then for cmd in php php70 php71 php72; do if which $cmd; then $cmd %{_bindir}/phpunit6 --verbose || ret=1 fi done fi if which phpunit7; then for cmd in php php71 php72; do if which $cmd; then $cmd %{_bindir}/phpunit7 --verbose || ret=1 fi done fi exit $ret; %else : Test suite skipped %endif %files %{!?_licensedir:%global license %%doc} %license LICENSE %doc README.md %doc composer.json %{php_home}/%{ns_vendor}/%{ns_project} %{_bindir}/%{pk_project} %changelog * Tue Feb 6 2018 Remi Collet - 5.0.0-1 - Update to 5.0.0 - raise dependency on PHP 7.1 - only for phpunit7 - raise dependency on phpunit/php-code-coverage 6 - raise dependency on sebastian/diff 3 * Fri Feb 2 2018 Remi Collet - 4.0.5-1 - Update to 4.0.5 - allow phpunit7 - use package names on EL and Fedora < 27 * Thu Jan 18 2018 Remi Collet - 4.0.4-1 - Update to 4.0.4 (no change) - raise dependency on symfony/console 3 - use range dependency on F27 * Sun Nov 19 2017 Remi Collet - 4.0.3-1 - Update to 4.0.3 - Allow Symfony 4 * Sun Oct 22 2017 Remi Collet - 4.0.2-1 - Update to 4.0.2 - raise dependency on phpunit/php-code-coverage 5.2.1 - drop dependency on php-phpunit-diff - add dependency on php-sebastian-diff2 * Fri Apr 28 2017 Remi Collet - 4.0.1-1 - Update to 4.0.1 * Mon Apr 24 2017 Remi Collet - 4.0.0-2 - fix composer provide (from review #1420384) - fix composer.json perm * Wed Feb 8 2017 Remi Collet - 4.0.0-1 - rename to phpcov - update to 4.0.0 - change dependencies to PHPUnit v6 * Fri Jun 3 2016 Remi Collet - 3.1.0-1 - Update to 3.1.0 - raise dependency on phpunit/php-code-coverage >= 4.0 - drop the autoloader template, simply generate it * Mon Apr 18 2016 Remi Collet - 3.0.0-3 - allow sebastian/version 2.0 * Sat Jan 9 2016 Remi Collet - 3.0.0-1 - update to 3.0.0 - raise minimal PHP version to 5.6 - raise dependencies on phpunit ~5.0, php-code-coverage ~3.0 - allow symfony 3 - run test suite with both PHP 6 and 7 when available * Mon Oct 5 2015 Remi Collet - 2.0.2-1 - update to 2.0.2 - allow PHPUnit 5 * Wed Jun 25 2014 Remi Collet - 2.0.1-1 - update to 2.0.1 - composer dependencies * Wed Apr 30 2014 Remi Collet - 2.0.0-1 - update to 2.0.0 - sources from github * Thu Sep 12 2013 Remi Collet - 1.1.0-1 - initial package