]> git.pld-linux.org Git - packages/solr.git/blame - solr.spec
up to 4.6.0
[packages/solr.git] / solr.spec
CommitLineData
d102a775
ER
1# TODO
2# - build from source, external deps
1f2ae4fd 3# - split libs in java-solr package to subpackages depending on their usage
69e3938e
ER
4# NOTES:
5# - http://wiki.apache.org/solr/SolrTomcat
b48e66e4
ER
6#
7# Conditional build:
8%bcond_without tests # don't build and run tests
d102a775 9%bcond_with source # don't build source jar
b48e66e4 10
3c70c3f5 11%include /usr/lib/rpm/macros.java
1a1de2b1
JB
12Summary: Solr - open source enterprise search server
13Summary(pl.UTF-8): Solr - profesjonalny serwer wyszukiwarki o otwartych źródłach
63d70431 14Name: solr
a564228c
ER
15Version: 4.6.0
16Release: 1
69e3938e 17License: Apache v2.0
3c70c3f5 18Group: Development/Languages/Java
aad1c0c5 19Source0: http://www.apache.org/dist/lucene/solr/%{version}/%{name}-%{version}.tgz
a564228c 20# Source0-md5: d79ca3e4f39db24ac6167825a72c5754
79baabf1 21Source1: %{name}-context.xml
1f2ae4fd 22Source2: %{name}.xml
69e3938e 23URL: https://lucene.apache.org/solr/
f8483063 24#BuildRequires: java-ivy >= 2.2.0
d102a775 25#BuildRequires: java-junit
3c70c3f5 26BuildRequires: jpackage-utils
3c70c3f5
ER
27BuildRequires: rpm-javaprov
28BuildRequires: rpmbuild(macros) >= 1.300
1f2ae4fd 29Requires: java-%{name} = %{version}-%{release}
e80ed4c1 30Requires: java-slf4j >= 1.6
3c70c3f5 31Requires: jpackage-utils
d102a775
ER
32Requires: tomcat
33Obsoletes: apache-solr < 3.6.0
3c70c3f5 34BuildArch: noarch
3c70c3f5
ER
35BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
36
e80ed4c1
ER
37%define webappdir %{_datadir}/%{name}
38%define _tomcatdir %{_datadir}/tomcat
79baabf1 39
3c70c3f5
ER
40%description
41Solr is an open source enterprise search server based on the Lucene
42Java search library, with XML/HTTP and JSON APIs, hit highlighting,
43faceted search, caching, replication, and a web administration
44interface. It runs in a Java servlet container such as Tomcat.
45
1a1de2b1
JB
46%description -l pl.UTF-8
47Solr to profesjonalny serwer wyszukiwarki o otwartych źródłach oparty
48na bibliotece wyszukiwarki Lucene w Javie z API XML/HTTP i JSON,
49podświetlaniem dopasowań, pamięcią podręczną, replikacją i interfejsem
50administracyjnym WWW. Działa w kontenerze serwletowym Javy, takim jak
51Tomcat.
52
1f2ae4fd
ER
53%package -n java-%{name}
54Summary: Solr libraries
55Group: Libraries/Java
56Requires: jpackage-utils
57
58%description -n java-%{name}
59Solr libraries:
60- analysis-extras
61- cell
62- clustering
63- core
64- dataimporthandler
65- dataimporthandler-extras
66- langid
67- solrj
68- test-framework
69- uima
70- velocity
71
3c70c3f5 72%prep
aad1c0c5 73%setup -q
15a1045d 74
b48e66e4 75%if %{with source}
15a1045d
ER
76# remove bindist
77rm -rf dist/*
016ba3db
ER
78%else
79# unpack war
80install -d war
aad1c0c5 81unzip -d war dist/solr-%{version}.war
b48e66e4 82%endif
3c70c3f5
ER
83
84%build
85required_jars="junit"
86export CLASSPATH=$(build-classpath $required_jars)
b48e66e4 87%if %{with source}
15a1045d
ER
88%ant dist \
89 -Dversion=%{version}
b48e66e4 90%endif
3c70c3f5
ER
91
92%install
93rm -rf $RPM_BUILD_ROOT
d102a775 94
1f2ae4fd 95# install .jars
3c70c3f5 96install -d $RPM_BUILD_ROOT%{_javadir}
aad1c0c5 97for a in dist/solr-*.jar; do
1f2ae4fd
ER
98 jar=${a##*/}
99 cp -p dist/$jar $RPM_BUILD_ROOT%{_javadir}
100 ln -s $jar $RPM_BUILD_ROOT%{_javadir}/${jar%%-%{version}.jar}.jar
35e54e9c 101done
35e54e9c 102
e80ed4c1
ER
103# get logging jars to tomcat to load
104# http://wiki.apache.org/solr/SolrLogging
105install -d $RPM_BUILD_ROOT%{_tomcatdir}/lib
106for jar in slf4j-api.jar jcl-over-slf4j.jar; do
107 ln -s %{_javadir}/$jar $RPM_BUILD_ROOT%{_tomcatdir}/lib
108done
109
1f2ae4fd 110# install webapp
79baabf1 111install -d $RPM_BUILD_ROOT%{webappdir}
016ba3db 112cp -a war/* $RPM_BUILD_ROOT%{webappdir}
79baabf1 113
1f2ae4fd 114# install tomcat context descriptor
729b5b87 115install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_tomcatconfdir}}
d102a775 116cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/tomcat-context.xml
79baabf1 117ln -sf %{_sysconfdir}/%{name}/tomcat-context.xml $RPM_BUILD_ROOT%{_tomcatconfdir}/%{name}.xml
3c70c3f5 118
729b5b87
ER
119# setup cores configuration
120install -d $RPM_BUILD_ROOT%{_sharedstatedir}/%{name}
121cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/solr.xml
122ln -s %{_sysconfdir}/%{name}/solr.xml $RPM_BUILD_ROOT%{_sharedstatedir}/%{name}
123
124# setup sample instance
aad1c0c5
ER
125install -d $RPM_BUILD_ROOT{%{_sharedstatedir}/%{name}/example/data,%{_sysconfdir}/%{name}/example}
126cp -a example/solr/{solr.xml,zoo.cfg} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/example
bd628ad4 127ln -s %{_sysconfdir}/%{name}/example $RPM_BUILD_ROOT%{_sharedstatedir}/%{name}/example/conf
d102a775 128
3c70c3f5
ER
129%clean
130rm -rf $RPM_BUILD_ROOT
131
79baabf1
ER
132%postun
133%tomcat_clear_cache %{name}
134
3c70c3f5
ER
135%files
136%defattr(644,root,root,755)
69e3938e 137%doc CHANGES.txt NOTICE.txt README.txt
79baabf1 138%dir %{_sysconfdir}/%{name}
729b5b87
ER
139%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/tomcat-context.xml
140%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/solr.xml
79baabf1 141%{_tomcatconfdir}/%{name}.xml
d102a775 142%dir %{webappdir}
016ba3db
ER
143%{webappdir}/META-INF
144%dir %{webappdir}/WEB-INF
145%dir %{webappdir}/WEB-INF/lib
146%{webappdir}/WEB-INF/lib/*.jar
147%{webappdir}/WEB-INF/web.xml
148%{webappdir}/WEB-INF/weblogic.xml
aad1c0c5 149%{webappdir}/admin.html
016ba3db 150%{webappdir}/favicon.ico
aad1c0c5
ER
151%{webappdir}/css
152%{webappdir}/img
153%{webappdir}/js
154%{webappdir}/tpl
016ba3db 155
e80ed4c1
ER
156# make tomcat load these jars
157# FIXME: how to do this "properly"
158%{_tomcatdir}/lib/jcl-over-slf4j.jar
159%{_tomcatdir}/lib/slf4j-api.jar
160
d102a775 161%dir %{_sharedstatedir}/%{name}
729b5b87
ER
162%{_sharedstatedir}/%{name}/solr.xml
163
164# sample instance configuration
aad1c0c5
ER
165%dir %{_sysconfdir}/%{name}/example
166%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/example/solr.xml
167%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/example/zoo.cfg
729b5b87
ER
168%attr(750,root,servlet) %dir %{_sharedstatedir}/%{name}/example
169%attr(2775,root,servlet) %dir %{_sharedstatedir}/%{name}/example/data
bd628ad4 170%{_sharedstatedir}/%{name}/example/conf
aad1c0c5 171
1f2ae4fd
ER
172%files -n java-%{name}
173%defattr(644,root,root,755)
aad1c0c5 174%{_javadir}/solr-*.jar
This page took 0.145078 seconds and 4 git commands to generate.