# remirepo spec/Fedora file for php-zendframework-zend-memory # # Copyright (c) 2015 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 ea25879c367ce2c13568640572fb79e882f5fc97 %global gh_short %(c=%{gh_commit}; echo ${c:0:7}) %global gh_owner zendframework %global gh_project zend-memory %global php_home %{_datadir}/php %global library Memory %if %{bootstrap} %global with_tests 0%{?_with_tests:1} %else %global with_tests 0%{!?_without_tests:1} %endif Name: php-%{gh_owner}-%{gh_project} Version: 2.5.1 Release: 1%{?dist} Summary: Zend Framework %{library} component Group: Development/Libraries License: BSD URL: http://framework.zend.com/ Source0: %{gh_commit}/%{name}-%{version}-%{gh_short}.tgz Source1: makesrc.sh BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildArch: noarch # Tests %if %{with_tests} BuildRequires: php(language) >= 5.3.23 BuildRequires: php-spl # From composer, "require-dev": { # "zendframework/zend-cache": "~2.5", # "fabpot/php-cs-fixer": "1.7.*", # "phpunit/PHPUnit": "~4.0" BuildRequires: php-composer(%{gh_owner}/zend-cache) >= 2.5 BuildRequires: php-composer(phpunit/phpunit) >= 4.0 # Autoloader BuildRequires: php-composer(%{gh_owner}/zend-loader) >= 2.5 %endif # From composer, "require": { # "php": ">=5.3.23" Requires: php(language) >= 5.3.23 %if ! %{bootstrap} # From composer, "suggest": { # "zendframework/zend-cache": "To support swap the memory objects" %if 0%{?fedora} >= 21 Suggests: php-composer(%{gh_owner}/zend-cache) %endif %endif # From phpcompatinfo report for version 2.5.1 Requires: php-spl Obsoletes: php-ZendFramework2-%{library} < 2.5 Provides: php-ZendFramework2-%{library} = %{version} Provides: php-composer(%{gh_owner}/%{gh_project}) = %{version} %description The Zend\Memory component is intended to manage data in an environment with limited memory. Memory objects (memory containers) are generated by memory manager by request and transparently swapped/loaded when it’s necessary. For example, if creating or loading a managed object would cause the total memory usage to exceed the limit you specify, some managed objects are copied to cache storage outside of memory. In this way, the total memory used by managed objects does not exceed the limit you need to enforce. %prep %setup -q -n %{gh_project}-%{gh_commit} %build # Empty build section, nothing required %install rm -rf %{buildroot} mkdir -p %{buildroot}%{php_home}/Zend/ cp -pr src %{buildroot}%{php_home}/Zend/%{library} %check %if %{with_tests} mkdir vendor cat << EOF | tee vendor/autoload.php array( 'namespaces' => array( 'ZendTest\\\\%{library}' => dirname(__DIR__).'/test/', 'Zend\\\\%{library}' => '%{buildroot}%{php_home}/Zend/%{library}' )))); require_once '%{php_home}/Zend/autoload.php'; EOF %{_bindir}/phpunit --include-path=%{buildroot}%{php_home} %else : Test suite disabled %endif %clean rm -rf %{buildroot} %files %defattr(-,root,root,-) %{!?_licensedir:%global license %%doc} %license LICENSE.md %doc CONTRIBUTING.md README.md %doc composer.json %dir %{php_home}/Zend %{php_home}/Zend/%{library} %changelog * Tue Aug 4 2015 Remi Collet - 2.5.1-1 - initial package