]> git.pld-linux.org Git - packages/php-pecl-solr.git/blame_incremental - php-pecl-solr.spec
requires pcre ext; covered by tests
[packages/php-pecl-solr.git] / php-pecl-solr.spec
... / ...
CommitLineData
1#
2# Conditional build:
3%bcond_without tests # build without tests
4%bcond_with network_tests # run tests requiring setup Solr Server on localhost:8983
5
6%define php_name php%{?php_suffix}
7%define modname solr
8Summary: Object oriented API to Apache Solr
9Summary(fr.UTF-8): API orientée objet pour Apache Solr
10Name: %{php_name}-pecl-solr
11Version: 2.4.0
12Release: 1
13License: PHP v3.01
14Group: Development/Languages
15Source0: https://pecl.php.net/get/%{modname}-%{version}.tgz
16# Source0-md5: 2c9accf66681a3daaaf371bc07e44902
17Patch0: tests-online.patch
18URL: https://pecl.php.net/package/solr
19BuildRequires: %{php_name}-cli
20BuildRequires: %{php_name}-devel >= 4:5.3.0
21BuildRequires: curl-devel
22BuildRequires: libxml2-devel >= 1:2.6.16
23BuildRequires: php-packagexml2cl
24BuildRequires: rpmbuild(macros) >= 1.666
25%if %{with tests}
26BuildRequires: %{php_name}-curl
27BuildRequires: %{php_name}-json
28BuildRequires: %{php_name}-pcre
29BuildRequires: %{php_name}-xml
30%endif
31%{?requires_php_extension}
32Requires: %{php_name}-cli
33Requires: %{php_name}-json
34Requires: %{php_name}-pcre
35Requires: %{php_name}-xml
36Provides: php(solr) = %{version}
37Obsoletes: php-pecl-solr < 1.0.2-6
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
59Notice: PECL Solr 2.x is not compatible with Apache Solr Server 3.x
60
61%description -l fr.UTF-8
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
82%setup -qc
83mv %{modname}-%{version}/* .
84%{!?with_network_tests:%patch0 -p1}
85
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} \
91 PHP_TEST_SHARED_SYSTEM_EXTENSIONS="json pcre" \
92 RUN_TESTS_SETTINGS="-q $*"
93EOF
94chmod +x run-tests.sh
95
96%build
97packagexml2cl package.xml > ChangeLog
98
99# Check version
100extver=$(awk -F'"' '/define PHP_SOLR_VERSION / {print $2}' src/php%{php_major_version}/php_solr_version.h)
101if test "x${extver}" != "x%{version}"; then
102 : Error: Upstream version is ${extver}, expecting %{version}.
103 exit 1
104fi
105
106phpize
107%configure
108%{__make}
109
110%{__php} -n -q \
111 -d extension_dir=modules \
112 -d extension=%{php_extensiondir}/curl.so \
113 -d extension=%{php_extensiondir}/json.so \
114 -d extension=%{modname}.so \
115 -m > modules.log
116grep %{modname} modules.log
117
118%if %{with tests}
119./run-tests.sh --show-diff
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
128
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
137%post
138%php_webserver_restart
139
140%postun
141if [ "$1" = 0 ]; then
142 %php_webserver_restart
143fi
144
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.046111 seconds and 4 git commands to generate.