diff options
-rw-r--r-- | php-solarium4.spec | 205 |
1 files changed, 205 insertions, 0 deletions
diff --git a/php-solarium4.spec b/php-solarium4.spec new file mode 100644 index 0000000..1284211 --- /dev/null +++ b/php-solarium4.spec @@ -0,0 +1,205 @@ +# remirepo/fedora spec file for php-solarium +# +# Copyright (c) 2013-2017 Remi Collet +# License: CC-BY-SA +# http://creativecommons.org/licenses/by-sa/4.0/ +# +# Please, preserve the changelog entries +# +%global gh_commit 9af3e40e72b60ce372726160ceba2d46b04fd0b9 +%global gh_short %(c=%{gh_commit}; echo ${c:0:7}) +%global gh_owner solariumphp +%global gh_project solarium +%global with_tests 0%{!?_without_tests:1} + +Name: php-%{gh_project} +Summary: Solarium PHP Solr client library +Version: 4.0.0 +Release: 1%{?dist} + +URL: http://www.solarium-project.org/ +License: BSD +Group: Development/Libraries +Source0: %{name}-%{version}-%{gh_short}.tgz +Source1: makesrc.sh + +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +BuildArch: noarch +%if %{with_tests} +# For tests +BuildRequires: php(language) >= 7 +%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 +BuildRequires: (php-composer(symfony/event-dispatcher) > 2.7 with php-composer(symfony/event-dispatcher) < 5) +%else +BuildRequires: php-symfony3-event-dispatcher +%endif +BuildRequires: php-composer(fedora/autoloader) +# From composer.json, "require-dev": { +# "guzzlehttp/guzzle": "^3.8 || ^6.2", +# "phpunit/phpunit": "^6.5", +# "satooshi/php-coveralls": "^1.0", +# "squizlabs/php_codesniffer": "^1.4", +# "zendframework/zendframework1": "^1.12" +BuildRequires: phpunit6 >= 6.5 +%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 +BuildRequires: (php-composer(guzzlehttp/guzzle) >= 6.2 with php-composer(guzzlehttp/guzzle) < 7) +%else +BuildRequires: php-guzzlehttp-guzzle6 >= 6.2 +%endif +%endif + +# From composer.json, "require": { +# "php": "^7.0", +# "symfony/event-dispatcher": "^2.7 || ^3.0 || ^4.0" +Requires: php(language) >= 7.0 +%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 +Requires: (php-composer(symfony/event-dispatcher) > 2.7 with php-composer(symfony/event-dispatcher) < 5) +%else +Requires: php-symfony3-event-dispatcher +%endif +# From composer.json, "suggest": { +# "minimalcode/search": "Query builder compatible with Solarium, allows simplified solr-query handling" +%if 0%{?fedora}> 21 || 0%{?rhel} >= 8 +Suggests: php-composer(minimalcode/search) +%endif +# From phpcompatinfo report for version 3.7.0 +Requires: php-curl +Requires: php-date +Requires: php-json +Requires: php-pcre +Requires: php-spl +# php-http optional, and only v1 suppported. +# For our autoloader +Requires: php-composer(fedora/autoloader) + +Provides: php-composer(solarium/solarium) = %{version} + + +%description +Solarium is a PHP Solr client library that accurately model Solr concepts. + +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/ + + +%prep +%setup -q -n %{gh_project}-%{gh_commit} + +rm examples/.gitignore + +cat << 'EOF' | tee src/autoload.php +<?php +/* Autoloader for solarium/solarium and its dependencies */ + +require_once '%{_datadir}/php/Fedora/Autoloader/autoload.php'; + +\Fedora\Autoloader\Autoload::addPsr4('Solarium\\', __DIR__); +\Fedora\Autoloader\Dependencies::required([ + [ + '%{_datadir}/php/Symfony4/Component/EventDispatcher/autoload.php', + '%{_datadir}/php/Symfony3/Component/EventDispatcher/autoload.php', + '%{_datadir}/php/Symfony/Component/EventDispatcher/autoload.php', + ], +]); +EOF + + +%build +# nothing to build + + +%install +mkdir -p %{buildroot}%{_datadir}/php +cp -pr src %{buildroot}%{_datadir}/php/Solarium + + +%check +%if %{with_tests} +: Autoloader +mkdir vendor +cat << 'EOF' | tee vendor/autoload.php +<?php +require_once '%{buildroot}%{_datadir}/php/Solarium/autoload.php'; +\Fedora\Autoloader\Autoload::addPsr4('Solarium\\Tests\\', dirname(__DIR__) . '/tests'); +\Fedora\Autoloader\Dependencies::required([ + '%{_datadir}/php/GuzzleHttp6/autoload.php', +]); +EOF + +: Run upstream test suite against installed library +ret=0 +for cmd in php php70 php71 php72 php73; do + if which $cmd; then + $cmd %{_bindir}/phpunit6 --bootstrap vendor/autoload.php || ret=1 + fi +done +exit $ret +%else +: Skip upstream test suite +%endif + + +%files +%defattr(-,root,root,-) +%{!?_licensedir:%global license %%doc} +%license COPYING +%doc composer.json *.md examples +%{_datadir}/php/Solarium + + +%changelog +* Tue Jun 12 2018 Remi Collet <remi@remirepo.net> - 4.0.0-1 +- update to 4.0.0 +- raise dependency on PHP 7.0 +- raise dependency on symfony 2.7 and allow symfony 4 +* Thu Oct 5 2017 Remi Collet <remi@remirepo.net> - 3.8.1-4 +- fix autoloader for Symfony 3, FTBFS from Koschei + +* Thu Feb 2 2017 Remi Collet <remi@fedoraproject.org> - 3.8.1-1 +- update to 3.8.1 + +* Wed Feb 1 2017 Remi Collet <remi@fedoraproject.org> - 3.8.0-1 +- update to 3.8.0 +- open https://github.com/solariumphp/solarium/pull/479 + fix for PHP 5.3 in EL-6 + +* Fri Oct 28 2016 Remi Collet <remi@fedoraproject.org> - 3.7.0-1 +- update to 3.7.0 +- add optional dependency on minimalcode/search +- switch from symfony/class-loader to fedora/autoloader + +* Tue May 3 2016 Remi Collet <remi@fedoraproject.org> - 3.6.0-1 +- update to 3.6.0 +- allow symfony 3 + +* Sat Dec 26 2015 Remi Collet <remi@fedoraproject.org> - 3.5.1-1 +- update to 3.5.1 + +* Tue Dec 15 2015 Remi Collet <remi@fedoraproject.org> - 3.5.0-1.1 +- update to 3.5.0 +- add autoloader +- run test suite with both php 5 and 7 when available + +* Mon Jun 15 2015 Remi Collet <remi@fedoraproject.org> - 3.4.1-1 +- update to 3.4.1 + +* Tue Nov 18 2014 Remi Collet <remi@fedoraproject.org> - 3.3.0-2 +- provide php-composer(solarium/solarium) +- fix license handling + +* Mon Nov 17 2014 Remi Collet <remi@fedoraproject.org> - 3.3.0-1 +- update to 3.3.0 + +* Sun Apr 6 2014 Remi Collet <remi@fedoraproject.org> - 3.2.0-1 +- update to 3.2.0 + +* Sat Dec 28 2013 Remi Collet <remi@fedoraproject.org> - 3.1.2-2 +- cleanups from review #1023879 + +* Mon Oct 28 2013 Remi Collet <remi@fedoraproject.org> - 3.1.2-1 +- Initial packaging |