diff options
| author | Remi Collet <fedora@famillecollet.com> | 2015-12-15 07:25:35 +0100 | 
|---|---|---|
| committer | Remi Collet <fedora@famillecollet.com> | 2015-12-15 07:25:35 +0100 | 
| commit | 01f519c5fd4e8c02e6c32f9d62a71516c708acb4 (patch) | |
| tree | 6e235b8653bad765b9df970b4f9292fc57b7d62a | |
| parent | ccba1154de1f962cb5ff2cea2e8c88e6ac72c244 (diff) | |
php-solarium: 3.5.0
| -rw-r--r-- | php-solarium-autoload.php | 18 | ||||
| -rw-r--r-- | php-solarium.spec | 54 | 
2 files changed, 42 insertions, 30 deletions
diff --git a/php-solarium-autoload.php b/php-solarium-autoload.php new file mode 100644 index 0000000..ad48221 --- /dev/null +++ b/php-solarium-autoload.php @@ -0,0 +1,18 @@ +<?php +/* Autoloader for solarium/solarium and its dependencies */ + +$vendorDir = '/usr/share/php'; +// Use Symfony autoloader +if (!isset($fedoraClassLoader) || !($fedoraClassLoader instanceof \Symfony\Component\ClassLoader\ClassLoader)) { +    if (!class_exists('Symfony\\Component\\ClassLoader\\ClassLoader', false)) { +        require_once $vendorDir . '/Symfony/Component/ClassLoader/ClassLoader.php'; +    } + +    $fedoraClassLoader = new \Symfony\Component\ClassLoader\ClassLoader(); +    $fedoraClassLoader->register(); +} + +$fedoraClassLoader->addPrefix('Solarium\\', dirname(__DIR__)); + +// dependencies +require_once $vendorDir . '/Symfony/Component/autoload.php'; diff --git a/php-solarium.spec b/php-solarium.spec index 255fb00..f4ff502 100644 --- a/php-solarium.spec +++ b/php-solarium.spec @@ -6,7 +6,7 @@  #  # Please, preserve the changelog entries  # -%global gh_commit    90d006c65efffcbcbfa8a31920e93c10d0657b96 +%global gh_commit    0b51430cc3b8a975084435dada53a3c27940b2d6  %global gh_short     %(c=%{gh_commit}; echo ${c:0:7})  %global gh_owner     basdenooijer  %global gh_project   solarium @@ -14,13 +14,14 @@  Name:           php-%{gh_project}  Summary:        Solarium PHP Solr client library -Version:        3.4.1 +Version:        3.5.0  Release:        1%{?dist}  URL:            http://www.solarium-project.org/ -Source0:        https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{gh_project}-%{version}.tar.gz  License:        BSD  Group:          Development/Libraries +Source0:        https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{gh_project}-%{version}.tar.gz +Source1:        %{name}-autoload.php  BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)  BuildArch:      noarch @@ -28,20 +29,22 @@ BuildArch:      noarch  # For tests  BuildRequires:  php(language) >= 5.3.2  BuildRequires:  php-pear(pear.phpunit.de/PHPUnit) -BuildRequires:  php-symfony-eventdispatcher > 2.1 -BuildRequires:  php-symfony-eventdispatcher < 3 +BuildRequires:  php-composer(symfony/event-dispatcher) > 2.3 +BuildRequires:  php-composer(symfony/class-loader)  %endif  # From composer.json  Requires:       php(language) >= 5.3.2 -Requires:       php-symfony-eventdispatcher > 2.1 -Requires:       php-symfony-eventdispatcher < 3 +Requires:       php-composer(symfony/event-dispatcher) > 2.3 +Requires:       php-composer(symfony/event-dispatcher) < 3  # From phpcompatinfo report for version 3.4.1  Requires:       php-curl  Requires:       php-date  Requires:       php-json  Requires:       php-pcre  Requires:       php-spl +# For our autoloader +Requires:       php-composer(symfony/class-loader)  Provides:       php-composer(solarium/solarium) = %{version} @@ -53,6 +56,8 @@ Where many other Solr libraries only handle the communication with Solr,  Solarium also relieves you of handling all the complex Solr query parameters  using a well documented API. +Autoloader: %{_datadir}/php/Solarium/autoload.php +  Documentation: http://wiki.solarium-project.org/ @@ -61,26 +66,7 @@ Documentation: http://wiki.solarium-project.org/  rm examples/.gitignore -: Create trivial PSR0 autoloader -cat <<EOF | tee psr0.php -<?php -spl_autoload_register(function (\$class) { -    \$file = str_replace('\\\\', '/', \$class).'.php'; -    @include \$file; -}); -EOF - -: Create phpunit configuration file -cat <<EOF | tee phpunit.xml -<?xml version="1.0" encoding="UTF-8"?> -<phpunit bootstrap="psr0.php"> -    <testsuites> -       <testsuite name="Solarium"> -         <directory suffix="Test.php">tests</directory> -       </testsuite> -    </testsuites> -</phpunit> -EOF +cp %{SOURCE1} library/Solarium/autoload.php  %build @@ -94,10 +80,16 @@ cp -pr library/Solarium %{buildroot}%{_datadir}/php/Solarium  %check  %if %{with_tests} +: Autoloader +mkdir vendor +ln -s %{buildroot}%{_datadir}/php/Solarium/autoload.php vendor/autoload.php +  : Run upstream test suite against installed library -phpunit \ -  --include-path=%{buildroot}%{_datadir}/php:./tests \ -  --verbose +%{_bindir}/phpunit --verbose + +if which php70; then +   php70 %{_bindir}/phpunit --verbose +fi  %else  : Skip upstream test suite  %endif @@ -114,6 +106,8 @@ phpunit \  %changelog  * Mon Jun 15 2015 Remi Collet <remi@fedoraproject.org> - 3.4.1-1  - update to 3.4.1 +- add autoloader +- run test suite with both php 5 and 7 when available  * Tue Nov 18 2014 Remi Collet <remi@fedoraproject.org> - 3.3.0-2  - provide php-composer(solarium/solarium)  | 
