]> git.pld-linux.org Git - packages/php-pecl-solr.git/blame - php-pecl-solr.spec
need exts for -m test
[packages/php-pecl-solr.git] / php-pecl-solr.spec
CommitLineData
e1bb081c
ER
1#
2# Conditional build:
3%bcond_without tests # build without tests
026132b4 4%bcond_with network_tests # run tests requiring setup Solr Server on localhost:8983
e1bb081c 5
cbdd8c75 6%define php_name php%{?php_suffix}
e1bb081c
ER
7%define modname solr
8Summary: Object oriented API to Apache Solr
5d3d0344 9Summary(fr.UTF-8): API orientée objet pour Apache Solr
cbdd8c75 10Name: %{php_name}-pecl-solr
19ad5280 11Version: 2.4.0
53f4a906 12Release: 2
b334e9fd 13License: PHP v3.01
e1bb081c 14Group: Development/Languages
d7ce20a0 15Source0: https://pecl.php.net/get/%{modname}-%{version}.tgz
19ad5280 16# Source0-md5: 2c9accf66681a3daaaf371bc07e44902
026132b4 17Patch0: tests-online.patch
d7ce20a0 18URL: https://pecl.php.net/package/solr
5584ac4f 19BuildRequires: %{php_name}-cli
53f4a906 20BuildRequires: %{php_name}-curl
d7ce20a0 21BuildRequires: %{php_name}-devel >= 4:5.3.0
53f4a906 22BuildRequires: %{php_name}-json
e1bb081c 23BuildRequires: curl-devel
47345f3b 24BuildRequires: libxml2-devel >= 1:2.6.16
e1bb081c 25BuildRequires: php-packagexml2cl
511528d9 26BuildRequires: rpmbuild(macros) >= 1.666
a809e4e7 27%if %{with tests}
eb3bdc6b 28BuildRequires: %{php_name}-pcre
a809e4e7
ER
29BuildRequires: %{php_name}-xml
30%endif
17a4a157 31%{?requires_php_extension}
203c0eb5 32Requires: %{php_name}-cli
a809e4e7 33Requires: %{php_name}-json
eb3bdc6b 34Requires: %{php_name}-pcre
cbdd8c75
ER
35Requires: %{php_name}-xml
36Provides: php(solr) = %{version}
17a4a157 37Obsoletes: php-pecl-solr < 1.0.2-6
e1bb081c
ER
38BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
39
40%description
41Feature-rich library that allows PHP developers to communicate easily
42and efficiently with Apache Solr server instances using an
43object-oriented API.
44
45It effectively simplifies the process of interacting with Apache Solr
46using PHP5 and it already comes with built-in readiness for the latest
47features available in Solr 1.4. The extension has features such as
48built-in, serializable query string builder objects which effectively
49simplifies the manipulation of name-value pair request parameters
50across repeated requests. The response from the Solr server is also
51automatically parsed into native php objects whose properties can be
52accessed as array keys or object properties without any additional
53configuration on the client-side. Its advanced HTTP client reuses the
54same connection across multiple requests and provides built-in support
55for connecting to Solr servers secured behind HTTP Authentication or
56HTTP proxy servers. It is also able to connect to SSL-enabled
57containers.
58
b334e9fd
ER
59Notice: PECL Solr 2.x is not compatible with Apache Solr Server 3.x
60
5d3d0344 61%description -l fr.UTF-8
e1bb081c
ER
62Bibliothèque riche en fonctionnalités qui permet aux développeurs PHP
63de communiquer facilement et efficacement avec des instances du
64serveur Apache Solr en utilisant une API orientée objet.
65
66Cela simplifie réellement le processus d'interaction avec Apache Solr
67en utilisant PHP5 et fournit dores et déjà des facilités pour les
68dernières fonctionnalités disponibles dans Solr 1.4. L'extension
69possède des fonctionnalités telles qu'un constructeur de requêtes
70embarqué et sérialisable qui simplifie réellement la manipulation des
71couples de paramètres nom-valeur entre différentes requêtes. La
72réponse de Solr est également analysée automatiquement en objets php
73natifs dont les propriétés sont accessibles en tant que clés de
74tableaux ou en tant que propriétés d'objets sans la moindre
75configuration supplémentaire sur le client. Son client HTTP avancé
76utilise la même connexion entre différentes requêtes et fournit un
77support embarqué pour la connexion aux serveurs Solr protégés par
78authentification HTTP ou par un serveur mandataire. Il est également
79possible de se connecter à des serveurs via SSL.
80
81%prep
b334e9fd 82%setup -qc
e1bb081c 83mv %{modname}-%{version}/* .
19ad5280 84%{!?with_network_tests:%patch0 -p1}
e1bb081c 85
5584ac4f
ER
86cat <<'EOF' > run-tests.sh
87#!/bin/sh
88export NO_INTERACTION=1 REPORT_EXIT_STATUS=1 MALLOC_CHECK_=2
89exec %{__make} test \
90 PHP_EXECUTABLE=%{__php} \
eb3bdc6b 91 PHP_TEST_SHARED_SYSTEM_EXTENSIONS="json pcre" \
5584ac4f
ER
92 RUN_TESTS_SETTINGS="-q $*"
93EOF
94chmod +x run-tests.sh
95
e1bb081c
ER
96%build
97packagexml2cl package.xml > ChangeLog
98
f6a0a363 99# Check version
19ad5280 100extver=$(awk -F'"' '/define PHP_SOLR_VERSION / {print $2}' src/php%{php_major_version}/php_solr_version.h)
f6a0a363
ER
101if test "x${extver}" != "x%{version}"; then
102 : Error: Upstream version is ${extver}, expecting %{version}.
103 exit 1
104fi
105
e1bb081c
ER
106phpize
107%configure
108%{__make}
109
511528d9
ER
110%{__php} -n -q \
111 -d extension_dir=modules \
a809e4e7
ER
112 -d extension=%{php_extensiondir}/curl.so \
113 -d extension=%{php_extensiondir}/json.so \
e1bb081c 114 -d extension=%{modname}.so \
511528d9
ER
115 -m > modules.log
116grep %{modname} modules.log
de2189f2 117
5584ac4f
ER
118%if %{with tests}
119./run-tests.sh --show-diff
e1bb081c
ER
120%endif
121
122%install
123rm -rf $RPM_BUILD_ROOT
124install -d $RPM_BUILD_ROOT{%{php_sysconfdir}/conf.d,%{php_extensiondir}}
125%{__make} install \
126 EXTENSION_DIR=%{php_extensiondir} \
127 INSTALL_ROOT=$RPM_BUILD_ROOT
b334e9fd 128
e1bb081c
ER
129cat <<'EOF' > $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/%{modname}.ini
130; Enable Solr extension module
131extension=%{modname}.so
132EOF
133
134%clean
135rm -rf $RPM_BUILD_ROOT
136
7a2204f2
ER
137%post
138%php_webserver_restart
139
140%postun
141if [ "$1" = 0 ]; then
142 %php_webserver_restart
143fi
144
e1bb081c
ER
145%files
146%defattr(644,root,root,755)
147%doc ChangeLog CREDITS README.SUBMITTING_CONTRIBUTIONS README.MEMORY_ALLOCATION
148%doc README.ABOUT_SOLR_EXTENSION TODO LICENSE docs/documentation.php
149%config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/%{modname}.ini
150%{php_extensiondir}/%{modname}.so
This page took 0.041623 seconds and 4 git commands to generate.