]> git.pld-linux.org Git - packages/xapian-bindings.git/blob - xapian-bindings.spec
- release 8 (by relup.sh)
[packages/xapian-bindings.git] / xapian-bindings.spec
1 #
2 # Conditional build:
3 %bcond_without  dotnet          # C# bindings
4 %bcond_without  java            # Java bindings
5 %bcond_without  lua             # Lua bindings
6 %bcond_without  perl            # Perl bindings
7 %bcond_without  php             # PHP bindings
8 %bcond_without  python2         # Python 2 bindings
9 %bcond_without  python3         # Python 3 bindings
10 %bcond_without  ruby            # Ruby bindings
11 %bcond_without  tcl             # Tcl bindings
12
13 %ifarch x32
14 %undefine       with_dotnet
15 %endif
16
17 %{?with_dotnet:%include /usr/lib/rpm/macros.mono}
18 %{?with_perl:%include   /usr/lib/rpm/macros.perl}
19 Summary:        Bindings for Xapian
20 Summary(pl.UTF-8):      Wiązania do Xapiana
21 Name:           xapian-bindings
22 Version:        1.4.4
23 Release:        8
24 License:        GPL v2+
25 Group:          Development/Languages
26 Source0:        https://oligarchy.co.uk/xapian/%{version}/%{name}-%{version}.tar.xz
27 # Source0-md5:  55f2678a029baa4f897f583e86e33ed8
28 Patch0:         python-install.patch
29 URL:            https://xapian.org/
30 BuildRequires:  autoconf >= 2.63
31 BuildRequires:  automake >= 1:1.11.2
32 %{?with_java:BuildRequires:     jdk >= 1.2}
33 %{?with_java:BuildRequires:     jpackage-utils}
34 BuildRequires:  libtool >= 2:2.2.6
35 %{?with_lua:BuildRequires:      lua51-devel >= 5.1.5-2}
36 # 2.6.x should be sufficient, but 2.11.1 complaints about write permissions to /usr/share/.mono/keypairs
37 %{?with_dotnet:BuildRequires:   mono-devel >= 2.11.4}
38 %{?with_perl:BuildRequires:     perl-devel >= 1:5.8.0}
39 %{?with_php:BuildRequires:      %{php_name}-devel >= 4:5.0.4}
40 BuildRequires:  pkgconfig
41 %{?with_python2:BuildRequires:  python-devel >= 1:2.6}
42 %{?with_python3:BuildRequires:  python3-devel >= 1:3.2}
43 BuildRequires:  python-modules >= 1:2.3
44 BuildRequires:  rpm-pythonprov
45 BuildRequires:  rpmbuild(macros) >= 1.665
46 %{?with_ruby:BuildRequires:     ruby-devel >= 1.8}
47 %{?with_ruby:BuildRequires:     ruby-modules >= 1.8}
48 %{?with_ruby:BuildRequires:     rpm-rubyprov}
49 %{?with_tcl:BuildRequires:      tcl-devel >= 8.1}
50 BuildRequires:  xapian-core-devel >= %{version}
51 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
52
53 %if %{with php}
54 %if "%{php_major_version}" >= "7"
55 %define         phpbindname     php7
56 %else
57 %define         phpbindname     php
58 %endif
59 %endif
60
61 %description
62 Xapian is an Open Source Probabilistic Information Retrieval Library.
63 It offers a highly adaptable toolkit that allows developers to easily
64 add advanced indexing and search facilities to applications. This
65 package is a collection of bindings for different programming
66 languages.
67
68 %description -l pl.UTF-8
69 Xapian to mająca otwarte źródła biblioteka do uzyskiwania informacji
70 probabilistycznych. Oferuje wysoce adoptowalne narzędzia pozwalające
71 programistom łatwo dodawać do aplikacji zaawansowane możliwości
72 indeksowania i wyszukiwania. Ten pakiet zawiera zestaw wiązań dla
73 różnych języków programowania.
74
75 %package -n dotnet-xapian
76 Summary:        Files needed for developing C# applications which use Xapian
77 Summary(pl.UTF-8):      Pliki do tworzenia aplikacji C# wykorzystujących Xapiana
78 Group:          Development/Languages
79 Requires:       mono >= 2.6.7
80 Requires:       xapian-core-libs >= %{version}
81 Obsoletes:      csharp-xapian
82
83 %description -n dotnet-xapian
84 Xapian is an Open Source Probabilistic Information Retrieval
85 framework. It offers a highly adaptable toolkit that allows developers
86 to easily add advanced indexing and search facilities to applications.
87 This package provides the files needed for developing C# applications
88 which use Xapian.
89
90 %description -n dotnet-xapian -l pl.UTF-8
91 Xapian to mająca otwarte źródła biblioteka do uzyskiwania informacji
92 probabilistycznych. Oferuje wysoce adoptowalne narzędzia pozwalające
93 programistom łatwo dodawać do aplikacji zaawansowane możliwości
94 indeksowania i wyszukiwania. Ten pakiet zawiera pliki potrzebne przy
95 tworzeniu aplikacji C# wykorzystujących Xapiana.
96
97 %package -n java-xapian
98 Summary:        Files needed for developing Java applications which use Xapian
99 Summary(pl.UTF-8):      Pliki do tworzenia aplikacji Javy wykorzystujących Xapiana
100 Group:          Libraries/Java
101 Requires:       jpackage-utils
102 Requires:       jre
103 Requires:       xapian-core-libs >= %{version}
104
105 %description -n java-xapian
106 Xapian is an Open Source Probabilistic Information Retrieval
107 framework. It offers a highly adaptable toolkit that allows developers
108 to easily add advanced indexing and search facilities to applications.
109 This package provides the files needed for developing Java
110 applications which use Xapian.
111
112 %description -n java-xapian -l pl.UTF-8
113 Xapian to mająca otwarte źródła biblioteka do uzyskiwania informacji
114 probabilistycznych. Oferuje wysoce adoptowalne narzędzia pozwalające
115 programistom łatwo dodawać do aplikacji zaawansowane możliwości
116 indeksowania i wyszukiwania. Ten pakiet zawiera pliki potrzebne przy
117 tworzeniu aplikacji Javy wykorzystujących Xapiana.
118
119 %package -n lua-xapian
120 Summary:        Files needed for developing Lua scripts which use Xapian
121 Summary(pl.UTF-8):      Pliki do tworzenia skryptów w języku Lua wykorzystujących Xapiana
122 Group:          Development/Languages
123 Requires:       lua51-libs
124 Requires:       xapian-core-libs >= %{version}
125
126 %description -n lua-xapian
127 Xapian is an Open Source Probabilistic Information Retrieval
128 framework. It offers a highly adaptable toolkit that allows developers
129 to easily add advanced indexing and search facilities to applications.
130 This package provides the files needed for developing Lua scripts
131 which use Xapian.
132
133 %description -n lua-xapian -l pl.UTF-8
134 Xapian to mająca otwarte źródła biblioteka do uzyskiwania informacji
135 probabilistycznych. Oferuje wysoce adoptowalne narzędzia pozwalające
136 programistom łatwo dodawać do aplikacji zaawansowane możliwości
137 indeksowania i wyszukiwania. Ten pakiet zawiera pliki potrzebne przy
138 tworzeniu skryptów w języku Lua wykorzystujących Xapiana.
139
140 %package -n perl-Xapian
141 Summary:        Xapian - Perl XS frontend to the Xapian C++ search library
142 Summary(pl.UTF-8):      Xapian - interfejs Perlowy XS do biblioteki wyszukiwania Xapian
143 Group:          Development/Languages/Perl
144 Requires:       xapian-core-libs >= %{version}
145
146 %description -n perl-Xapian
147 This module wraps most methods of most Xapian classes. The missing
148 classes and methods should be added in the future. It also provides a
149 simplified, more 'perlish' interface to some common operations.
150
151 %description -n perl-Xapian -l pl.UTF-8
152 Ten moduł obudowuje większość metod z większości klas Xapiana.
153 Brakujące klasy i metody powinny być dodane w przyszłości. Moduł
154 udostępnia także uproszczony, bardziej perlowy interfejs do niektórych
155 popularnych operacji.
156
157 %package -n %{php_name}-xapian
158 Summary:        Files needed for developing PHP scripts which use Xapian
159 Summary(pl.UTF-8):      Pliki do tworzenia skryptów w PHP wykorzystujących Xapiana
160 Group:          Development/Languages/PHP
161 Requires:       xapian-core-libs >= %{version}
162 %{?requires_php_extension}
163
164 %description -n %{php_name}-xapian
165 Xapian is an Open Source Probabilistic Information Retrieval
166 framework. It offers a highly adaptable toolkit that allows developers
167 to easily add advanced indexing and search facilities to applications.
168 This package provides the files needed for developing PHP scripts
169 which use Xapian.
170
171 %description -n %{php_name}-xapian -l pl.UTF-8
172 Xapian to mająca otwarte źródła biblioteka do uzyskiwania informacji
173 probabilistycznych. Oferuje wysoce adoptowalne narzędzia pozwalające
174 programistom łatwo dodawać do aplikacji zaawansowane możliwości
175 indeksowania i wyszukiwania. Ten pakiet zawiera pliki potrzebne przy
176 tworzeniu skryptów w PHP wykorzystujących Xapiana.
177
178 %package -n python-xapian
179 Summary:        Files needed for developing Python 2 scripts which use Xapian
180 Summary(pl.UTF-8):      Pliki do tworzenia skryptów w Pythonie 2 wykorzystujących Xapiana
181 Group:          Development/Languages/Python
182 Requires:       python-modules >= 1:2.6
183 Requires:       xapian-core-libs >= %{version}
184
185 %description -n python-xapian
186 Xapian is an Open Source Probabilistic Information Retrieval
187 framework. It offers a highly adaptable toolkit that allows developers
188 to easily add advanced indexing and search facilities to applications.
189 This package provides the files needed for developing Python scripts
190 which use Xapian.
191
192 %description -n python-xapian -l pl.UTF-8
193 Xapian to mająca otwarte źródła biblioteka do uzyskiwania informacji
194 probabilistycznych. Oferuje wysoce adoptowalne narzędzia pozwalające
195 programistom łatwo dodawać do aplikacji zaawansowane możliwości
196 indeksowania i wyszukiwania. Ten pakiet zawiera pliki potrzebne przy
197 tworzeniu skryptów w Pythonie wykorzystujących Xapiana.
198
199 %package -n python3-xapian
200 Summary:        Files needed for developing Python 3 scripts which use Xapian
201 Summary(pl.UTF-8):      Pliki do tworzenia skryptów w Pythonie 3 wykorzystujących Xapiana
202 Group:          Development/Languages/Python
203 Requires:       python3-modules >= 1:3.2
204 Requires:       xapian-core-libs >= %{version}
205
206 %description -n python3-xapian
207 Xapian is an Open Source Probabilistic Information Retrieval
208 framework. It offers a highly adaptable toolkit that allows developers
209 to easily add advanced indexing and search facilities to applications.
210 This package provides the files needed for developing Python scripts
211 which use Xapian.
212
213 %description -n python3-xapian -l pl.UTF-8
214 Xapian to mająca otwarte źródła biblioteka do uzyskiwania informacji
215 probabilistycznych. Oferuje wysoce adoptowalne narzędzia pozwalające
216 programistom łatwo dodawać do aplikacji zaawansowane możliwości
217 indeksowania i wyszukiwania. Ten pakiet zawiera pliki potrzebne przy
218 tworzeniu skryptów w Pythonie wykorzystujących Xapiana.
219
220 %package -n ruby-xapian
221 Summary:        Files needed for developing Ruby scripts which use Xapian
222 Summary(pl.UTF-8):      Pliki do tworzenia skryptów w języku Ruby wykorzystujących Xapiana
223 Group:          Development/Languages
224 Requires:       xapian-core-libs >= %{version}
225
226 %description -n ruby-xapian
227 Xapian is an Open Source Probabilistic Information Retrieval
228 framework. It offers a highly adaptable toolkit that allows developers
229 to easily add advanced indexing and search facilities to applications.
230 This package provides the files needed for developing Ruby scripts
231 which use Xapian.
232
233 %description -n ruby-xapian -l pl.UTF-8
234 Xapian to mająca otwarte źródła biblioteka do uzyskiwania informacji
235 probabilistycznych. Oferuje wysoce adoptowalne narzędzia pozwalające
236 programistom łatwo dodawać do aplikacji zaawansowane możliwości
237 indeksowania i wyszukiwania. Ten pakiet zawiera pliki potrzebne przy
238 tworzeniu skryptów w języku Ruby wykorzystujących Xapiana.
239
240 %package -n tcl-xapian
241 Summary:        Files needed for developing Tcl scripts which use Xapian
242 Summary(pl.UTF-8):      Pliki do tworzenia skryptów w Tcl-u wykorzystujących Xapiana
243 Group:          Development/Languages/Tcl
244 Requires:       tcl >= 8.1
245 Requires:       xapian-core-libs >= %{version}
246
247 %description -n tcl-xapian
248 Xapian is an Open Source Probabilistic Information Retrieval
249 framework. It offers a highly adaptable toolkit that allows developers
250 to easily add advanced indexing and search facilities to applications.
251 This package provides the files needed for developing TCL scripts
252 which use Xapian.
253
254 %description -n tcl-xapian -l pl.UTF-8
255 Xapian to mająca otwarte źródła biblioteka do uzyskiwania informacji
256 probabilistycznych. Oferuje wysoce adoptowalne narzędzia pozwalające
257 programistom łatwo dodawać do aplikacji zaawansowane możliwości
258 indeksowania i wyszukiwania. Ten pakiet zawiera pliki potrzebne przy
259 tworzeniu skryptów w Tcl-u wykorzystujących Xapiana.
260
261 %prep
262 %setup -q
263 %patch0 -p1
264
265 %build
266 %{__libtoolize}
267 %{__aclocal}
268 %{__autoconf}
269 %{__autoheader}
270 %{__automake}
271 CLASSPATH="." \
272 %configure \
273         PERL_ARCH=%{perl_vendorarch} \
274         PERL_LIB=%{perl_vendorlib} \
275         RUBY_LIB=%{ruby_vendorlibdir} \
276         RUBY_LIB_ARCH=%{ruby_vendorarchdir} \
277         %{?with_lua:LUA=/usr/bin/lua5.1 LUA_INC=/usr/include/lua51} \
278         %{?with_dotnet:--with-csharp} \
279         %{?with_java:--with-java} \
280         %{?with_lua:--with-lua} \
281         %{?with_perl:--with-perl} \
282         %{?with_python2:--with-python} \
283         %{?with_python3:--with-python3} \
284         %{?with_php:--with-%{phpbindname}} \
285         %{?with_ruby:--with-ruby} \
286         %{?with_tcl:--with-tcl}
287
288 %{__make} \
289         JAVA_CPPFLAGS="-I%{_jvmdir}/java/include -I%{_jvmdir}/java/include/linux"
290
291 %install
292 rm -rf $RPM_BUILD_ROOT
293 %{__make} install \
294         DESTDIR=$RPM_BUILD_ROOT \
295         jnidir=%{_jnidir} \
296         phpincdir=%{php_data_dir}
297
298 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}
299
300 %if %{with java}
301 install -D java/built/xapian.jar $RPM_BUILD_ROOT%{_javadir}/xapian-%{version}.jar
302 ln -sf xapian-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/xapian.jar
303 %endif
304
305 for binding in %{?with_dotnet:csharp} %{?with_perl:perl} %{?with_php:%{phpbindname}} %{?with_python2:python} %{?with_python3:python3} %{?with_ruby:ruby} %{?with_tcl:tcl8}; do
306         install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/$binding
307         [ ! -f $binding/docs/index.html ] || cp -p $binding/docs/index.html $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/$binding
308         cp -pr $binding/docs/examples $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/$binding
309 done
310
311 %if %{with python2}
312 %py_postclean
313 %endif
314 %if %{with python3}
315 install -d $RPM_BUILD_ROOT%{py3_sitedir}/xapian/__pycache__
316 %{__mv} $RPM_BUILD_ROOT%{py3_sitedir}/xapian/*.py[co] $RPM_BUILD_ROOT%{py3_sitedir}/xapian/__pycache__
317 %endif
318
319 %clean
320 rm -rf $RPM_BUILD_ROOT
321
322 %files
323 %defattr(644,root,root,755)
324 %doc AUTHORS ChangeLog HACKING NEWS README TODO
325 %{_examplesdir}/%{name}-%{version}
326
327 %if %{with dotnet}
328 %files -n dotnet-xapian
329 %defattr(644,root,root,755)
330 %attr(755,root,root) %{_libdir}/_XapianSharp.so
331 %dir %{_libdir}/mono
332 %{_libdir}/mono/XapianSharp
333 %dir %{_libdir}/mono/gac
334 %{_libdir}/mono/gac/XapianSharp
335 %endif
336
337 %if %{with java}
338 %files -n java-xapian
339 %defattr(644,root,root,755)
340 %attr(755,root,root) %{_jnidir}/libxapian_jni.so
341 %{_javadir}/xapian-%{version}.jar
342 %{_javadir}/xapian.jar
343 %endif
344
345 %if %{with lua}
346 %files -n lua-xapian
347 %defattr(644,root,root,755)
348 %attr(755,root,root) %{_libdir}/lua/5.1/xapian.so
349 %endif
350
351 %if %{with perl}
352 %files -n perl-Xapian
353 %defattr(644,root,root,755)
354 %{perl_vendorlib}/Xapian.pm
355 %dir %{perl_vendorlib}/Xapian
356 %{perl_vendorlib}/Xapian/*.pm
357 %dir %{perl_vendorarch}/auto/Xapian
358 %attr(755,root,root) %{perl_vendorarch}/auto/Xapian/Xapian.so
359 %endif
360
361 %if %{with php}
362 %files -n %{php_name}-xapian
363 %defattr(644,root,root,755)
364 %attr(755,root,root) %{php_extensiondir}/xapian.so
365 %{php_data_dir}/xapian.php
366 %endif
367
368 %if %{with python2}
369 %files -n python-xapian
370 %defattr(644,root,root,755)
371 %dir %{py_sitedir}/xapian
372 %attr(755,root,root) %{py_sitedir}/xapian/_xapian.so
373 %{py_sitedir}/xapian/__init__.py[co]
374 %endif
375
376 %if %{with python3}
377 %files -n python3-xapian
378 %defattr(644,root,root,755)
379 %dir %{py3_sitedir}/xapian
380 %attr(755,root,root) %{py3_sitedir}/xapian/_xapian.cpython-*.so
381 %{py3_sitedir}/xapian/__init__.py
382 %{py3_sitedir}/xapian/__pycache__
383 %endif
384
385 %if %{with ruby}
386 %files -n ruby-xapian
387 %defattr(644,root,root,755)
388 %attr(755,root,root) %{ruby_vendorarchdir}/_xapian.so
389 %{ruby_vendorlibdir}/xapian.rb
390 %endif
391
392 %if %{with tcl}
393 %files -n tcl-xapian
394 %defattr(644,root,root,755)
395 %dir %{_libdir}/xapian%{version}
396 %{_libdir}/xapian%{version}/pkgIndex.tcl
397 %attr(755,root,root) %{_libdir}/xapian%{version}/xapian.so
398 %endif
This page took 0.176699 seconds and 3 git commands to generate.