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