]> git.pld-linux.org Git - packages/apache-tomcat.git/blame - apache-tomcat.spec
- 5.5.27
[packages/apache-tomcat.git] / apache-tomcat.spec
CommitLineData
a50d18a2
ER
1# TODO
2# - packages for *.renametojar files (-cgi and -ssi in server/lib)
3#
d58ce9ff 4# Conditional build:
d58ce9ff
ER
5%bcond_without javadoc # skip building javadocs
6#
7Summary: Apache Servlet/JSP Engine, RI for Servlet 2.4/JSP 2.0 API
e22e9de1 8Summary(pl.UTF-8): Silnik Servlet/JSP Apache będący wzorcową implementacją API Servlet 2.4/JSP 2.0
3cd7b38d 9Name: apache-tomcat
7f75c591 10Version: 5.5.27
a9122388 11Release: 0.1
27743710 12License: Apache
4470e4fe 13Group: Development/Languages/Java
3cd7b38d 14Source0: http://www.apache.org/dist/tomcat/tomcat-5/v%{version}/src/%{name}-%{version}-src.tar.gz
7f75c591 15# Source0-md5: eb3f196013550b9b1684e4ff18593a8e
fe9b4066 16Source1: %{name}.init
3cd7b38d
ER
17Patch0: %{name}-skip-servletapi.patch
18Patch1: %{name}-nsis.patch
19Patch2: %{name}-native.patch
20Patch3: %{name}-skip-jdt.patch
05be5db6 21Patch4: %{name}-no-connectors.patch
7f75c591 22Patch5: %{name}-dbcp.patch
797e0d23 23URL: http://tomcat.apache.org/
51bf99d9 24BuildRequires: ant >= 1.5.3
581348cf
ER
25BuildRequires: ant-trax
26BuildRequires: eclipse-jdt
4c334025 27BuildRequires: jaas
23f53f24
ER
28BuildRequires: jakarta-commons-beanutils >= 1.7
29BuildRequires: jakarta-commons-collections >= 0:3.1
2a69eb9c 30BuildRequires: jakarta-commons-collections-tomcat5 >= 0:3.1
23f53f24
ER
31BuildRequires: jakarta-commons-daemon >= 1.0
32BuildRequires: jakarta-commons-dbcp >= 0:1.2.1
2a69eb9c 33BuildRequires: jakarta-commons-dbcp-tomcat5 >= 0:1.2.1
23f53f24
ER
34BuildRequires: jakarta-commons-digester >= 0:1.7
35BuildRequires: jakarta-commons-el >= 0:1.0
36BuildRequires: jakarta-commons-fileupload >= 0:1.0
8bfa2080 37BuildRequires: jakarta-commons-httpclient
23f53f24
ER
38BuildRequires: jakarta-commons-launcher >= 0:0.9
39BuildRequires: jakarta-commons-logging >= 0:1.0.4
8bfa2080 40BuildRequires: jakarta-commons-modeler >= 2.0
23f53f24 41BuildRequires: jakarta-commons-pool >= 0:1.2
2a69eb9c 42BuildRequires: jakarta-commons-pool-tomcat5 >= 0:1.2
23f53f24 43BuildRequires: jakarta-regexp >= 0:1.3
8bfa2080 44BuildRequires: jakarta-servletapi5
23f53f24 45#BuildRequires: jakarta-struts >= 0:1.2.7
0c0e0d39 46BuildRequires: jakarta-struts >= 1.0.2
23f53f24
ER
47BuildRequires: javamail >= 0:1.3.1
48BuildRequires: jaxp_parser_impl >= 0:2.7.1
49BuildRequires: jdbc-stdext >= 0:2.0
581348cf 50BuildRequires: jdk >= 1.5
8eee8985 51BuildRequires: jmx
23f53f24 52BuildRequires: jndi >= 0:1.2.1
581348cf 53BuildRequires: jpackage-utils
23f53f24
ER
54BuildRequires: jsse >= 0:1.0.3
55BuildRequires: jta >= 0:1.0.1
56BuildRequires: junit >= 0:3.8.1
581348cf 57BuildRequires: logging-log4j
23f53f24 58#BuildRequires: mx4j >= 0:3.0.1
581348cf
ER
59BuildRequires: mx4j >= 1.1.1
60BuildRequires: puretls
61BuildRequires: rpmbuild(macros) >= 1.300
23f53f24 62BuildRequires: xerces-j >= 0:2.7.1
8665efb1 63BuildRequires: xml-commons
23f53f24 64#BuildRequires: xml-commons >= 1.3
43310914
ER
65Requires(post,postun): /sbin/ldconfig
66Requires(post,preun): /sbin/chkconfig
67Requires(postun): /usr/sbin/groupdel
68Requires(postun): /usr/sbin/userdel
69Requires(pre): /bin/id
70Requires(pre): /usr/bin/getgid
71Requires(pre): /usr/sbin/groupadd
72Requires(pre): /usr/sbin/useradd
73Requires: jaas
581348cf 74#Requires: jaf >= 1.0.1
a50d18a2
ER
75#Requires: jakarta-commons-beanutils
76#Requires: jakarta-commons-collections
77#Requires: jakarta-commons-dbcp-tomcat5
78#Requires: jakarta-commons-digester
79Requires: jakarta-commons-el
80#Requires: jakarta-commons-fileupload
81#Requires: jakarta-commons-logging
55df0736 82Requires: jakarta-regexp
43310914
ER
83Requires: jakarta-servletapi >= 4
84Requires: javamail >= 1.2
85Requires: jaxp_parser_impl
55df0736 86Requires: jdbc-stdext >= 2.0
55df0736 87Requires: jndi >= 1.2.1
43310914 88Requires: jre >= 1.2
55df0736
JB
89Requires: jsse >= 1.0.2
90Requires: jta >= 1.0.1
43310914 91Requires: mx4j >= 1.1.1
d58ce9ff 92Requires: rc-scripts
8665efb1 93Requires: xml-commons
0c0e0d39 94Provides: group(http)
95Provides: user(http)
3cd7b38d 96Obsoletes: jakarta-tomcat
4470e4fe 97BuildArch: noarch
98BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
99
8eee8985 100%define _tomcatdir %{_datadir}/tomcat
4470e4fe 101%define _logdir %{_var}/log
55df0736 102%define _vardir %{_var}/lib/tomcat
8eee8985 103%define _sysconfdir /etc/tomcat
4470e4fe 104
105%description
d58ce9ff
ER
106Tomcat is the servlet container that is used in the official Reference
107Implementation for the Java Servlet and JavaServer Pages technologies.
108The Java Servlet and JavaServer Pages specifications are developed by
109Sun under the Java Community Process.
4470e4fe 110
d58ce9ff
ER
111Tomcat is developed in an open and participatory environment and
112released under the Apache Software License. Tomcat is intended to be a
113collaboration of the best-of-breed developers from around the world.
114We invite you to participate in this open development project.
115
e22e9de1
JB
116%description -l pl.UTF-8
117Tomcat to kontener serwletowy używany przez oficjalną implementację
118wzorcową technologii Java Servlet i JavaServer Pages. Specyfikacje
3cd7b38d
ER
119Java Servlet i JavaServer Pages są rozwijane przez Suna zgodnie z Java
120Community Process.
4470e4fe 121
122%package doc
3cd7b38d 123Summary: The Apache Tomcat Servlet/JSP Container documentation
e22e9de1 124Summary(pl.UTF-8): Dokumentacja do Tomcata - kontekera Servlet/JSP
4470e4fe 125Group: Development/Languages/Java
3cd7b38d 126Obsoletes: jakarta-tomcat-doc
4470e4fe 127
128%description doc
2b38d386
JB
129The Tomcat Servlet/JSP Container documentation.
130
e22e9de1
JB
131%description doc -l pl.UTF-8
132Dokumentacja do Tomcata - kontekera Servlet/JSP.
4470e4fe 133
134%prep
3cd7b38d 135%setup -q -n %{name}-%{version}-src
8bfa2080
ER
136%patch0 -p1
137%patch1 -p1
138%patch2 -p1
139%patch3 -p1
05be5db6 140%patch4 -p1
99082140 141%patch5 -p1
8bfa2080 142
05be5db6 143# servletapi built from jakarta-servletapi5.spec
8bfa2080 144rm -rf servletapi
d58ce9ff
ER
145
146# Remove pre-built jars
147find -name '*.jar' | xargs rm -fv
4470e4fe 148
149%build
d58ce9ff
ER
150TOPDIR=$(pwd)
151
8bfa2080
ER
152%if 0
153# build jasper javadocs
154cd jasper
155CLASSPATH=$(build-classpath xml-commons-apis)
a50d18a2 156# building jasper needs eclipse classes
d58ce9ff 157cat > build.properties <<EOF
a50d18a2
ER
158ant.jar=$(find-jar ant)
159servlet-api.jar=$(find-jar servlet-api)
160jsp-api.jar=$(find-jar jsp-api)
d58ce9ff 161tools.jar=%{java_home}/lib/tools.jar
a50d18a2
ER
162xercesImpl.jar=$(find-jar jaxp_parser_impl)
163xmlParserAPIs.jar=$(find-jar xml-commons-apis)
164commons-collections.jar=$(find-jar commons-collections)
165commons-logging.jar=$(find-jar commons-logging)
166commons-daemon.jar=$(find-jar commons-daemon)
167junit.jar=$(find-jar junit)
168commons-el.jar=$(find-jar commons-el)
d58ce9ff 169EOF
8bfa2080
ER
170#%ant dist
171
172%if %{with javadoc}
173%ant javadoc \
174 -Dcompile.source=1.4 \
175 -Dbuild.compiler=modern \
176
177%endif
178cd -
179%endif
d58ce9ff
ER
180
181# build tomcat 5.5
8bfa2080 182cat > build.properties <<EOF
a50d18a2
ER
183commons-beanutils.jar=$(find-jar commons-beanutils)
184commons-launcher.jar=$(find-jar commons-launcher)
185commons-daemon.jar=$(find-jar commons-daemon)
186commons-digester.jar=$(find-jar commons-digester)
187commons-el.jar=$(find-jar commons-el)
188commons-logging-api.jar=$(find-jar commons-logging-api)
189commons-logging.jar=$(find-jar commons-logging)
190commons-modeler.jar=$(find-jar commons-modeler)
191xercesImpl.jar=$(find-jar jaxp_parser_impl)
192xml-apis.jar=$(find-jar xml-commons-apis)
193jdt.jar=$(find-jar org.eclipse.jdt.core)
74f47b90 194jasper-compiler-jdt.home=$TOPDIR/tomcat-deps
a50d18a2
ER
195commons-httpclient.jar=$(find-jar commons-httpclient)
196commons-collections.jar=$(find-jar commons-collections)
197commons-fileupload.jar=$(find-jar commons-fileupload)
198jmx.jar=$(find-jar jmx)
199jmx-tools.jar=$(find-jar jmx)
200junit.jar=$(find-jar junit)
201struts.jar=$(find-jar struts)
202jcert.jar=$(find-jar jcert)
203jnet.jar=$(find-jar jnet)
204jsse.jar=$(find-jar jsse)
205jta.jar=$(find-jar jta)
206puretls.jar=$(find-jar puretls)
207servlet-api.jar=$(find-jar servlet-api)
8bfa2080 208servletapi.build.notrequired=true
a50d18a2 209jsp-api.jar=$(find-jar jsp-api)
8bfa2080 210jspapi.build.notrequired=true
a50d18a2
ER
211log4j.jar=$(find-jar log4j)
212tomcat-dbcp.jar=$(find-jar jakarta-commons-dbcp-tomcat5)
d58ce9ff
ER
213EOF
214
05be5db6
ER
215%ant \
216 -Dcompile.source=1.4
d58ce9ff 217
4470e4fe 218%install
219rm -rf $RPM_BUILD_ROOT
8eee8985
ER
220cd build/build
221TOMCATDIR=$RPM_BUILD_ROOT%{_tomcatdir}
222CATALINADIR=$RPM_BUILD_ROOT/var/lib/tomcat
4470e4fe 223
8eee8985
ER
224# we don't need dos scripts
225rm -f bin/*.bat
8665efb1 226
8eee8985 227randpw=$(echo $RANDOM$$ | md5sum | cut -c 1-15)
a50d18a2 228%{__sed} -i -e "s:SHUTDOWN:${randpw}:" conf/{server,server-minimal}.xml
8eee8985
ER
229
230install -d $TOMCATDIR/bin \
231 $TOMCATDIR/common/{lib,classes,endorsed} \
232 $TOMCATDIR/server/{lib,classes} \
233 $TOMCATDIR/webapps \
234 $RPM_BUILD_ROOT%{_sysconfdir} \
55df0736
JB
235 $RPM_BUILD_ROOT%{_logdir}/tomcat \
236 $RPM_BUILD_ROOT%{_vardir}/work \
237 $RPM_BUILD_ROOT/etc/rc.d/init.d
98862cba 238
8eee8985 239install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/tomcat
4470e4fe 240
8eee8985
ER
241cp -pR conf/* $RPM_BUILD_ROOT%{_sysconfdir}
242cp -HR bin common server $TOMCATDIR
d58ce9ff 243
a50d18a2
ER
244cp -rf server/webapps $TOMCATDIR/server
245cp -rf webapps $TOMCATDIR
246cp -rf shared $TOMCATDIR
247cp -rf temp $TOMCATDIR
8eee8985 248
a50d18a2
ER
249ln -sf %{_logdir}/tomcat $TOMCATDIR/logs
250ln -sf %{_vardir}/work $TOMCATDIR/work
251ln -sf %{_sysconfdir} $TOMCATDIR/conf
8eee8985
ER
252
253# symlinks instead of copies
a50d18a2
ER
254ln -sf $(find-jar commons-el) $TOMCATDIR/common/lib/commons-el.jar
255ln -sf $(find-jar jakarta-commons-dbcp-tomcat5) $TOMCATDIR/common/lib/jakarta-commons-dbcp-tomcat5.jar
256ln -sf $(find-jar servlet-api) $TOMCATDIR/common/lib/servlet-api.jar
257
258ln -sf $(find-jar commons-modeler) $TOMCATDIR/server/lib/commons-modeler.jar
259
260%if 0
261# do not make these symlinks as ant didn't do
262ln -sf $(find-jar commons-daemon) $TOMCATDIR/bin/commons-daemon.jar
263ln -sf $(find-jar activation) $TOMCATDIR/common/lib/activation.jar
264ln -sf $(find-jar ant) $TOMCATDIR/common/lib/ant.jar
265ln -sf $(find-jar commons-collections) $TOMCATDIR/common/lib/commons-collections.jar
266ln -sf $(find-jar commons-dbcp) $TOMCATDIR/common/lib/commons-dbcp.jar
267ln -sf $(find-jar commons-logging-api) $TOMCATDIR/common/lib/commons-logging-api.jar
268ln -sf $(find-jar commons-pool) $TOMCATDIR/common/lib/commons-pool.jar
269ln -sf $(find-jar servlet) $TOMCATDIR/common/lib/servlet.jar
270ln -sf $(find-jar servlet) $TOMCATDIR/common/lib/servletapi4.jar
271ln -sf $(find-jar jdbc-stdext) $TOMCATDIR/common/lib/jdbc-stdext.jar
272ln -sf jdbc-stdext.jar $TOMCATDIR/common/lib/jdbc2_0-stdext.jar
273ln -sf jdbc-stdext.jar $TOMCATDIR/common/lib/jdbc-stdext-2.0.jar
274ln -sf $(find-jar jmxri) $TOMCATDIR/common/lib/jmxri.jar
275ln -sf $(find-jar jndi) $TOMCATDIR/common/lib/jndi.jar
276ln -sf $(find-jar jta) $TOMCATDIR/common/lib/jta.jar
277ln -sf $(find-jar mail) $TOMCATDIR/common/lib/mail.jar
278ln -sf $(find-jar jsse) $TOMCATDIR/common/lib/jsse.jar
279ln -sf $(find-jar junit) $TOMCATDIR/common/lib/junit.jar
280ln -sf $(find-jar mailapi) $TOMCATDIR/common/lib/mailapi.jar
281ln -sf $(find-jar pop3) $TOMCATDIR/common/lib/pop3.jar
282ln -sf pop3.jar $TOMCATDIR/common/lib/pop.jar
283ln -sf $(find-jar smtp) $TOMCATDIR/common/lib/smtp.jar
284ln -sf $(find-jar imap) $TOMCATDIR/common/lib/imap.jar
285ln -sf $(find-jar commons-beanutils) $TOMCATDIR/server/lib/commons-beanutils.jar
286ln -sf $(find-jar commons-digester) $TOMCATDIR/server/lib/commons-digester.jar
287ln -sf $(find-jar commons-fileupload) $TOMCATDIR/server/lib/commons-fileupload.jar
288ln -sf $(find-jar commons-logging) $TOMCATDIR/server/lib/commons-logging.jar
289ln -sf $(find-jar jaas) $TOMCATDIR/server/lib/jaas.jar
290ln -sf $(find-jar mx4j-jmx) $TOMCATDIR/server/lib/mx4j-jmx.jar
291ln -sf $(find-jar regexp) $TOMCATDIR/server/lib/regexp.jar
292ln -sf $(find-jar regexp) $TOMCATDIR/server/lib/jakarta-regexp-1.2.jar
293ln -sf $(find-jar regexp) $TOMCATDIR/server/lib/regexp-1.2.jar
294%endif
295
296ln -sf $(find-jar jaxp_parser_impl) $TOMCATDIR/common/endorsed/jaxp_parser_impl.jar
297ln -sf $(find-jar xml-commons-apis) $TOMCATDIR/common/endorsed/xml-commons-apis.jar
298ln -sf $(find-jar struts) $TOMCATDIR/server/webapps/admin/WEB-INF/lib/struts.jar
55df0736 299
4470e4fe 300%clean
301rm -rf $RPM_BUILD_ROOT
302
50d4797f 303%pre
aa5bd00e
ER
304%groupadd -g 51 -r -f http
305%useradd -u 51 -r -d /home/services/httpd -s /bin/false -c "HTTP User" -g http http
50d4797f 306
307%post
308/sbin/chkconfig --add tomcat
4c334025 309%service tomcat restart
50d4797f 310
311%preun
312if [ "$1" = "0" ]; then
4c334025 313 %service tomcat stop
50d4797f 314 /sbin/chkconfig --del tomcat
315fi
316
317%postun
318if [ "$1" = "0" ]; then
0c0e0d39 319 %userremove http
320 %groupremove http
50d4797f 321fi
322
4470e4fe 323%files
324%defattr(644,root,root,755)
8eee8985
ER
325%doc build/{RELEASE-NOTES,RUNNING.txt}
326# tomcat wants to regenerate tomcat-users.xml
327%dir %attr(775,root,http) %{_sysconfdir}
328%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*
329%attr(754,root,root) /etc/rc.d/init.d/tomcat
55df0736
JB
330%dir %{_tomcatdir}
331%dir %{_tomcatdir}/bin
8eee8985
ER
332%{_tomcatdir}/bin/catalina-tasks.xml
333%{_tomcatdir}/bin/jkstatus-tasks.xml
334%{_tomcatdir}/bin/jmxaccessor-tasks.xml
98862cba 335%attr(755,root,root) %{_tomcatdir}/bin/*.sh
98862cba 336%{_tomcatdir}/bin/*.jar
55df0736
JB
337%dir %{_tomcatdir}/common
338%dir %{_tomcatdir}/common/classes
50d4797f 339%dir %{_tomcatdir}/common/endorsed
8eee8985 340%dir %{_tomcatdir}/common/i18n
8665efb1 341%{_tomcatdir}/common/endorsed/*.jar
8eee8985
ER
342%{_tomcatdir}/common/i18n/tomcat-i18n-en.jar
343%lang(es) %{_tomcatdir}/common/i18n/tomcat-i18n-es.jar
344%lang(fr) %{_tomcatdir}/common/i18n/tomcat-i18n-fr.jar
345%lang(ja) %{_tomcatdir}/common/i18n/tomcat-i18n-ja.jar
4470e4fe 346%{_tomcatdir}/common/lib
347%{_tomcatdir}/conf
4470e4fe 348%{_tomcatdir}/logs
55df0736
JB
349%dir %{_tomcatdir}/server
350%dir %{_tomcatdir}/server/classes
4470e4fe 351%{_tomcatdir}/server/lib
50d4797f 352%{_tomcatdir}/server/webapps
55df0736
JB
353%{_tomcatdir}/webapps
354%{_tomcatdir}/work
50d4797f 355%{_tomcatdir}/shared
356%{_tomcatdir}/temp
55df0736 357%dir %{_vardir}
8eee8985
ER
358%dir %attr(1730,root,http) %{_vardir}/work
359%dir %attr(1730,root,http) %{_logdir}/tomcat
4470e4fe 360
8eee8985 361%if 0
4470e4fe 362%files doc
9c3d8079 363%defattr(644,root,root,755)
4470e4fe 364%doc catalina/docs/*
8eee8985 365%endif
This page took 0.128248 seconds and 4 git commands to generate.