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