diff options
Diffstat (limited to 'php-laminas-zendframework-bridge.spec')
-rw-r--r-- | php-laminas-zendframework-bridge.spec | 131 |
1 files changed, 131 insertions, 0 deletions
diff --git a/php-laminas-zendframework-bridge.spec b/php-laminas-zendframework-bridge.spec new file mode 100644 index 0000000..d7aa563 --- /dev/null +++ b/php-laminas-zendframework-bridge.spec @@ -0,0 +1,131 @@ +# remirepo/Fedora spec file for php-laminas-zendframework-bridge +# +# Copyright (c) 2020 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 32d7095e436a31b8d98e485a5c63d70df74915a8 +%global gh_short %(c=%{gh_commit}; echo ${c:0:7}) +%global gh_owner laminas +%global gh_project laminas-zendframework-bridge +%global php_home %{_datadir}/php +%global namespace Laminas +%global library ZendFrameworkBridge +%if %{bootstrap} +%global with_tests 0%{?_with_tests:1} +%else +%global with_tests 0%{!?_without_tests:1} +%endif + +Name: php-%{gh_project} +Version: 1.0.0 +Release: 1%{?dist} +Summary: Alias legacy ZF class names to Laminas Project equivalents + +License: BSD +URL: https://github.com/%{gh_owner}/%{gh_project} +Source0: %{gh_commit}/%{name}-%{version}-%{gh_short}.tgz +Source1: makesrc.sh + +# Adapt for Fedora autoloader and RPM layout +Patch0: %{name}-rpm.patch + +BuildArch: noarch +# Tests +%if %{with_tests} +BuildRequires: php(language) >= 5.6 +BuildRequires: php-spl +# From composer, "require-dev": { +# "phpunit/phpunit": "^5.7 || ^6.5 || ^7.5 || ^8.1", +# "squizlabs/php_codesniffer": "^3.5" +# remirepo:1 +%global phpunit %{_bindir}/phpunit8 +BuildRequires: phpunit8 >= 8.1 +# Autoloader +BuildRequires: php-fedora-autoloader-devel +%endif + +# From composer, "require": { +# "php": "^5.6 || ^7.0" +Requires: php(language) >= 5.6 +# From phpcompatinfo report for version 1.0.0 +Requires: php-spl +# Autoloader +Requires: php-composer(fedora/autoloader) + +Provides: php-composer(%{gh_owner}/%{gh_project}) = %{version} +Provides: php-autoloader(%{gh_owner}/%{gh_project}) = %{version} + + +%description +This library provides a custom autoloader that aliases legacy +Zend Framework, Apigility, and Expressive classes to their +replacements under the Laminas Project. + +Documentation: https://docs.laminas.dev/%{gh_project}/ + + +%prep +%setup -q -n %{gh_project}-%{gh_commit} +%patch0 -p0 -b .rpm +#find . -name \*.rpm -delete + +mv LICENSE.md LICENSE + + +%build +mv src/autoload.php upstream.php +phpab --template fedora --output src/autoload.php src +grep -v '^<?php' upstream.php | tee -a src/autoload.php + + +%install +mkdir -p %{buildroot}%{php_home}/%{namespace}/ +cp -pr src %{buildroot}%{php_home}/%{namespace}//%{library} +cp -pr config %{buildroot}%{php_home}/%{namespace}//%{library}/config + + +%check +%if %{with_tests} +mkdir vendor +cat << 'EOF' | tee vendor/autoload.php +<?php +require_once '%{buildroot}%{php_home}/%{namespace}/%{library}/autoload.php'; +\Fedora\Autoloader\Autoload::addPsr4('%{namespace}Test\\%{library}\\', dirname(__DIR__) . '/test'); +\Fedora\Autoloader\Autoload::addPsr4('%{namespace}Test\\%{library}\\TestAsset\\', dirname(__DIR__) . '/test/TestAsset/classes'); +\Fedora\Autoloader\Autoload::addPsr4('%{namespace}\\ApiTools\\', dirname(__DIR__) . '/test/TestAsset/LaminasApiTools'); +\Fedora\Autoloader\Autoload::addPsr4('Mezzio\\', dirname(__DIR__) . '/test/TestAsset/Mezzio'); +\Fedora\Autoloader\Autoload::addPsr4('%{namespace}\\', dirname(__DIR__) . '/test/TestAsset/Laminas'); +\Fedora\Autoloader\Dependencies::required([ + dirname(__DIR__) . '/test/classes.php', +]); +EOF + +ret=0 +for cmdarg in "php %{phpunit}" php72 php73 php74; do + if which $cmdarg; then + set $cmdarg + $1 ${2:-%{_bindir}/phpunit8} --verbose || ret=1 + fi +done +exit $ret +%else +: Test suite disabled +%endif + + +%files +%{!?_licensedir:%global license %%doc} +%license LICENSE +%doc *.md +%doc composer.json +%dir %{php_home}/%{namespace} + %{php_home}/%{namespace}/%{library} + + +%changelog +* Mon Jan 6 2020 Remi Collet <remi@remirepo.net> - 1.0.0-1 +- initial package |