diff options
| -rw-r--r-- | .gitignore | 7 | ||||
| -rw-r--r-- | php-doctrine-doctrine-cache-bundle.spec | 137 | 
2 files changed, 77 insertions, 67 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1ab5c4f --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +package-*.xml +*.tgz +*.tar.gz +*.tar.xz +*.tar.xz.asc +*.src.rpm +*/*rpm diff --git a/php-doctrine-doctrine-cache-bundle.spec b/php-doctrine-doctrine-cache-bundle.spec index 887c3fb..8749f51 100644 --- a/php-doctrine-doctrine-cache-bundle.spec +++ b/php-doctrine-doctrine-cache-bundle.spec @@ -2,7 +2,7 @@  #  # Fedora spec file for php-doctrine-doctrine-cache-bundle  # -# Copyright (c) 2015-2016 Shawn Iwinski <shawn.iwinski@gmail.com> +# Copyright (c) 2015-2017 Shawn Iwinski <shawn.iwinski@gmail.com>  #  # License: MIT  # http://opensource.org/licenses/MIT @@ -44,7 +44,7 @@  Name:          php-%{composer_vendor}-%{composer_project}  Version:       %{github_version} -Release:       1%{?dist} +Release:       3%{?dist}  Summary:       Symfony2 Bundle for Doctrine Cache  Group:         Development/Libraries @@ -52,44 +52,57 @@ License:       MIT  URL:           https://github.com/%{github_owner}/%{github_name}  Source0:       %{url}/archive/%{github_commit}/%{name}-%{github_version}-%{github_commit}.tar.gz -BuildRoot:     %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)  BuildArch:     noarch  # Tests  %if %{with_tests}  ## composer.json -BuildRequires: php(language)                          >= %{php_min_ver} -BuildRequires: php-composer(doctrine/cache)           >= %{cache_min_ver} -BuildRequires: php-composer(doctrine/inflector)       >= %{inflector_min_ver} +BuildRequires: php(language) >= %{php_min_ver} +BuildRequires: php-composer(doctrine/cache) <  %{cache_max_ver} +BuildRequires: php-composer(doctrine/cache) >= %{cache_min_ver} +BuildRequires: php-composer(doctrine/inflector) <  %{inflector_max_ver} +BuildRequires: php-composer(doctrine/inflector) >= %{inflector_min_ver}  BuildRequires: php-composer(phpunit/phpunit) -BuildRequires: php-composer(symfony/console)          >= %{symfony_min_ver} -BuildRequires: php-composer(symfony/doctrine-bridge)  >= %{symfony_min_ver} -BuildRequires: php-composer(symfony/finder)           >= %{symfony_min_ver} +BuildRequires: php-composer(symfony/console) <  %{symfony_max_ver} +BuildRequires: php-composer(symfony/console) >= %{symfony_min_ver} +BuildRequires: php-composer(symfony/doctrine-bridge) <  %{symfony_max_ver} +BuildRequires: php-composer(symfony/doctrine-bridge) >= %{symfony_min_ver} +BuildRequires: php-composer(symfony/finder) <  %{symfony_max_ver} +BuildRequires: php-composer(symfony/finder) >= %{symfony_min_ver} +BuildRequires: php-composer(symfony/framework-bundle) <  %{symfony_max_ver}  BuildRequires: php-composer(symfony/framework-bundle) >= %{symfony_min_ver} -BuildRequires: php-composer(symfony/validator)        >= %{symfony_min_ver} -BuildRequires: php-composer(symfony/yaml)             >= %{symfony_min_ver} -BuildRequires: php-composer(symfony/security-acl)     >= %{symfony_min_ver} +BuildRequires: php-composer(symfony/validator) <  %{symfony_max_ver} +BuildRequires: php-composer(symfony/validator) >= %{symfony_min_ver} +BuildRequires: php-composer(symfony/yaml) <  %{symfony_max_ver} +BuildRequires: php-composer(symfony/yaml) >= %{symfony_min_ver} +%if 0%{?el6} +BuildRequires: php-composer(symfony/security) <  %{symfony_max_ver} +BuildRequires: php-composer(symfony/security) >= %{symfony_min_ver} +%else +BuildRequires: php-composer(symfony/security-acl) <  %{symfony_max_ver} +BuildRequires: php-composer(symfony/security-acl) >= %{symfony_min_ver} +%endif  ## phpcompatinfo (computed from version 1.3.0)  BuildRequires: php-hash  BuildRequires: php-reflection  BuildRequires: php-spl  ## Autoloader -BuildRequires: php-composer(symfony/class-loader) +BuildRequires: php-composer(fedora/autoloader)  %endif  # composer.json -Requires:      php(language)                         >= %{php_min_ver} -Requires:      php-composer(doctrine/cache)          >= %{cache_min_ver} -Requires:      php-composer(doctrine/cache)          <  %{cache_max_ver} -Requires:      php-composer(doctrine/inflector)      >= %{inflector_min_ver} -Requires:      php-composer(doctrine/inflector)      <  %{inflector_max_ver} -Requires:      php-composer(symfony/doctrine-bridge) >= %{symfony_min_ver} +Requires:      php(language) >= %{php_min_ver} +Requires:      php-composer(doctrine/cache) <  %{cache_max_ver} +Requires:      php-composer(doctrine/cache) >= %{cache_min_ver} +Requires:      php-composer(doctrine/inflector) <  %{inflector_max_ver} +Requires:      php-composer(doctrine/inflector) >= %{inflector_min_ver}  Requires:      php-composer(symfony/doctrine-bridge) <  %{symfony_max_ver} +Requires:      php-composer(symfony/doctrine-bridge) >= %{symfony_min_ver}  # phpcompatinfo (computed from version 1.3.0)  Requires:      php-hash  Requires:      php-reflection  Requires:      php-spl  # Autoloader -Requires:      php-composer(symfony/class-loader) +Requires:      php-composer(fedora/autoloader)  # Weak dependencies  %if 0%{?fedora} >= 21  Suggests:      php-pecl(memcache) @@ -112,45 +125,32 @@ Autoloader: %{phpdir}/Doctrine/Bundle/DoctrineCacheBundle/autoload.php  %prep  %setup -qn %{github_name}-%{github_commit} + +%build  : Create autoloader  cat <<'AUTOLOAD' | tee autoload.php  <?php  /**   * Autoloader for %{name} and its' dependencies   * (created by %{name}-%{version}-%{release}). - * - * @return \Symfony\Component\ClassLoader\ClassLoader   */ +require_once '%{phpdir}/Fedora/Autoloader/autoload.php'; -if (!isset($fedoraClassLoader) || !($fedoraClassLoader instanceof \Symfony\Component\ClassLoader\ClassLoader)) { -    if (!class_exists('Symfony\\Component\\ClassLoader\\ClassLoader', false)) { -        require_once 'Symfony/Component/ClassLoader/ClassLoader.php'; -    } - -    $fedoraClassLoader = new \Symfony\Component\ClassLoader\ClassLoader(); -    $fedoraClassLoader->register(); -} - -$fedoraClassLoader->addPrefix('Doctrine\\Bundle\\DoctrineCacheBundle\\', dirname(dirname(dirname(__DIR__)))); - -// Required dependencies -require_once '%{phpdir}/Doctrine/Common/Cache/autoload.php'; -require_once '%{phpdir}/Doctrine/Common/Inflector/autoload.php'; -require_once '%{phpdir}/Symfony/Bridge/Doctrine/autoload.php'; +\Fedora\Autoloader\Autoload::addPsr4('Doctrine\\Bundle\\DoctrineCacheBundle\\', __DIR__); -// Optional dependencies -@include_once '%{phpdir}/Symfony/Component/Security/autoload.php'; +\Fedora\Autoloader\Dependencies::required(array( +    '%{phpdir}/Doctrine/Common/Cache/autoload.php', +    '%{phpdir}/Doctrine/Common/Inflector/autoload.php', +    '%{phpdir}/Symfony/Bridge/Doctrine/autoload.php', +)); -return $fedoraClassLoader; +\Fedora\Autoloader\Dependencies::optional(array( +    '%{phpdir}/Symfony/Component/Security/autoload.php', +));  AUTOLOAD -%build -# Empty build section, nothing required - -  %install -rm -rf %{buildroot}  mkdir -p %{buildroot}%{phpdir}/Doctrine/Bundle/DoctrineCacheBundle  cp -pr Acl Command DependencyInjection Resources Tests *.php \      %{buildroot}%{phpdir}/Doctrine/Bundle/DoctrineCacheBundle/ @@ -161,15 +161,17 @@ cp -pr Acl Command DependencyInjection Resources Tests *.php \  : Create tests bootstrap  cat <<'BOOTSTRAP' | tee bootstrap.php  <?php -$fedoraClassLoader = -    require '%{buildroot}%{phpdir}/Doctrine/Bundle/DoctrineCacheBundle/autoload.php'; - -require_once '%{phpdir}/Symfony/Bundle/FrameworkBundle/autoload.php'; -require_once '%{phpdir}/Symfony/Component/Console/autoload.php'; -require_once '%{phpdir}/Symfony/Component/Finder/autoload.php'; -require_once '%{phpdir}/Symfony/Component/Validator/autoload.php'; -require_once '%{phpdir}/Symfony/Component/Yaml/autoload.php'; +require_once '%{buildroot}%{phpdir}/Doctrine/Bundle/DoctrineCacheBundle/autoload.php'; + +\Fedora\Autoloader\Dependencies::required(array( +    '%{phpdir}/Symfony/Bundle/FrameworkBundle/autoload.php', +    '%{phpdir}/Symfony/Component/Console/autoload.php', +    '%{phpdir}/Symfony/Component/Finder/autoload.php', +    '%{phpdir}/Symfony/Component/Validator/autoload.php', +    '%{phpdir}/Symfony/Component/Yaml/autoload.php', +));  BOOTSTRAP +  : Modify PHPUnit config  sed -e 's#\./#%{buildroot}%{phpdir}/Doctrine/Bundle/DoctrineCacheBundle/#g' \      -e 's#>\.<#>%{buildroot}%{phpdir}/Doctrine/Bundle/DoctrineCacheBundle<#' \ @@ -180,28 +182,24 @@ pushd %{buildroot}%{phpdir}/Doctrine/Bundle/DoctrineCacheBundle/Tests      rm -f \          Functional/Fixtures/config/predis.xml \          Functional/PredisCacheTest.php -%if 0%{?rhel} == 5 -    rm DependencyInjection/XmlDoctrineCacheExtensionTest.php -    rm DependencyInjection/YmlDoctrineCacheExtensionTest.php -%endif  popd -%{_bindir}/phpunit --verbose --bootstrap bootstrap.php - -if which php70; then -   php70 %{_bindir}/phpunit --verbose --bootstrap bootstrap.php -fi +: Upstream tests +RETURN_CODE=0 +PHPUNIT=$(which phpunit) +for PHP_EXEC in "" %{?rhel:php54 php55} php56 php70 php71 php72; do +    if [ -z "$PHP_EXEC" ] || which $PHP_EXEC; then +        $PHP_EXEC $PHPUNIT --verbose --bootstrap bootstrap.php \ +            || RETURN_CODE=1 +    fi +done +exit $RETURN_CODE  %else  : Tests skipped  %endif -%clean -rm -rf %{buildroot} - -  %files -%defattr(-,root,root,-)  %{!?_licensedir:%global license %%doc}  %license LICENSE  %doc *.md @@ -212,6 +210,11 @@ rm -rf %{buildroot}  %changelog +* Fri May 12 2017 Shawn Iwinski <shawn.iwinski@gmail.com> - 1.3.0-3 +- Switch autoloader to php-composer(fedora/autoloader) +- Add max versions to build dependencies +- Test with SCLs if available +  * Thu Mar 31 2016 Shawn Iwinski <shawn.iwinski@gmail.com> - 1.3.0-1  - Updated to 1.3.0 (RHBZ #1279828)  - Updated dependency versions for their autoloaders and modified autoloader  | 
