# remirepo/Fedora spec file for php-zendframework-zend-memory # # Copyright (c) 2015-2017 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 bbf8b9509660b2a97f2d6ccfefabffac3cca6a5c %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.2 Release: 1%{?dist} Summary: Zend Framework %{library} component Group: Development/Libraries License: BSD URL: https://zendframework.github.io/%{gh_project}/ Source0: %{gh_commit}/%{name}-%{version}-%{gh_short}.tgz Source1: makesrc.sh BuildArch: noarch # Tests %if %{with_tests} BuildRequires: php(language) >= 5.5 BuildRequires: php-spl # From composer, "require-dev": { # "zendframework/zend-cache": "^2.7", # "squizlabs/php_codesniffer": "^2.3.1", # "phpunit/PHPUnit": "^4.8" BuildRequires: php-composer(%{gh_owner}/zend-cache) >= 2.7 BuildRequires: php-composer(phpunit/phpunit) >= 4.8 # Autoloader BuildRequires: php-composer(%{gh_owner}/zend-loader) >= 2.5 %endif # From composer, "require": { # "php": "^5.5 || ^7.0" Requires: php(language) >= 5.5 %if ! %{bootstrap} # From composer, "suggest": { # "zendframework/zend-cache": "To support swapping memory objects into and out of non-memory cache storage" %if 0%{?fedora} >= 21 Suggests: php-composer(%{gh_owner}/zend-cache) %endif # Autoloader Requires: php-composer(%{gh_owner}/zend-loader) >= 2.5 %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. Documentation: https://zendframework.github.io/%{gh_project}/ %prep %setup -q -n %{gh_project}-%{gh_commit} mv LICENSE.md LICENSE %build # Empty build section, nothing required %install 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 ret=0 for cmd in php php70 php71 php72; do if which $cmd; then $cmd %{_bindir}/phpunit --verbose || ret=1 fi done exit $ret %else : Test suite disabled %endif %files %{!?_licensedir:%global license %%doc} %license LICENSE %doc *.md %doc composer.json %{php_home}/Zend/%{library} %changelog * Wed May 11 2016 Remi Collet - 2.5.2-1 - update to 2.5.2 - raise dependency on PHP >= 5.5 * Tue Aug 4 2015 Remi Collet - 2.5.1-1 - initial package