]> git.pld-linux.org Git - packages/apache-tomcat.git/blame - apache-tomcat.spec
- BUILDS, so cleaning up
[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
3f4d8696 28BuildRequires: jakarta-commons-beanutils
43310914 29BuildRequires: jakarta-commons-collections
8bfa2080
ER
30BuildRequires: jakarta-commons-collections-source
31BuildRequires: jakarta-commons-daemon
32BuildRequires: jakarta-commons-dbcp
33BuildRequires: jakarta-commons-dbcp-source
3f4d8696 34BuildRequires: jakarta-commons-digester
581348cf 35%{?with_javadoc:BuildRequires: jakarta-commons-el}
66800769 36BuildRequires: jakarta-commons-fileupload
8bfa2080 37BuildRequires: jakarta-commons-httpclient
74f47b90 38BuildRequires: jakarta-commons-launcher
43310914 39BuildRequires: jakarta-commons-logging
8bfa2080
ER
40BuildRequires: jakarta-commons-modeler >= 2.0
41BuildRequires: jakarta-commons-pool
42BuildRequires: jakarta-commons-pool-source
98862cba 43BuildRequires: jakarta-regexp
8bfa2080 44BuildRequires: jakarta-servletapi5
0c0e0d39 45BuildRequires: jakarta-struts >= 1.0.2
0c0e0d39 46BuildRequires: javamail >= 1.2
581348cf 47BuildRequires: jaxp_parser_impl
55df0736 48BuildRequires: jdbc-stdext >= 2.0
581348cf 49BuildRequires: jdk >= 1.5
55df0736 50BuildRequires: jndi >= 1.2.1
581348cf 51BuildRequires: jpackage-utils
55df0736
JB
52BuildRequires: jsse >= 1.0.2
53BuildRequires: jta >= 1.0.1
55df0736 54BuildRequires: junit >= 3.7
581348cf
ER
55BuildRequires: logging-log4j
56BuildRequires: mx4j >= 1.1.1
57BuildRequires: puretls
58BuildRequires: rpmbuild(macros) >= 1.300
0c0e0d39 59BuildRequires: tyrex >= 1.0
581348cf 60BuildRequires: xerces-j
8665efb1 61BuildRequires: xml-commons
43310914
ER
62Requires(post,postun): /sbin/ldconfig
63Requires(post,preun): /sbin/chkconfig
64Requires(postun): /usr/sbin/groupdel
65Requires(postun): /usr/sbin/userdel
66Requires(pre): /bin/id
67Requires(pre): /usr/bin/getgid
68Requires(pre): /usr/sbin/groupadd
69Requires(pre): /usr/sbin/useradd
70Requires: jaas
581348cf 71#Requires: jaf >= 1.0.1
3f4d8696 72Requires: jakarta-commons-beanutils
43310914 73Requires: jakarta-commons-collections
3f4d8696 74Requires: jakarta-commons-digester
66800769 75Requires: jakarta-commons-fileupload
43310914 76Requires: jakarta-commons-logging
55df0736 77Requires: jakarta-regexp
43310914
ER
78Requires: jakarta-servletapi >= 4
79Requires: javamail >= 1.2
80Requires: jaxp_parser_impl
55df0736 81Requires: jdbc-stdext >= 2.0
55df0736 82Requires: jndi >= 1.2.1
43310914 83Requires: jre >= 1.2
55df0736
JB
84Requires: jsse >= 1.0.2
85Requires: jta >= 1.0.1
43310914 86Requires: mx4j >= 1.1.1
d58ce9ff 87Requires: rc-scripts
a0a11518 88Requires: tyrex >= 1.0
8665efb1 89Requires: xml-commons
0c0e0d39 90Provides: group(http)
91Provides: user(http)
3cd7b38d 92Obsoletes: jakarta-tomcat
4470e4fe 93BuildArch: noarch
94BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
95
4470e4fe 96%define _tomcatdir %{_libdir}/tomcat
97%define _logdir %{_var}/log
55df0736 98%define _vardir %{_var}/lib/tomcat
4470e4fe 99
100%description
d58ce9ff
ER
101Tomcat is the servlet container that is used in the official Reference
102Implementation for the Java Servlet and JavaServer Pages technologies.
103The Java Servlet and JavaServer Pages specifications are developed by
104Sun under the Java Community Process.
4470e4fe 105
d58ce9ff
ER
106Tomcat is developed in an open and participatory environment and
107released under the Apache Software License. Tomcat is intended to be a
108collaboration of the best-of-breed developers from around the world.
109We invite you to participate in this open development project.
110
e22e9de1
JB
111%description -l pl.UTF-8
112Tomcat to kontener serwletowy używany przez oficjalną implementację
113wzorcową technologii Java Servlet i JavaServer Pages. Specyfikacje
3cd7b38d
ER
114Java Servlet i JavaServer Pages są rozwijane przez Suna zgodnie z Java
115Community Process.
4470e4fe 116
117%package doc
3cd7b38d 118Summary: The Apache Tomcat Servlet/JSP Container documentation
e22e9de1 119Summary(pl.UTF-8): Dokumentacja do Tomcata - kontekera Servlet/JSP
4470e4fe 120Group: Development/Languages/Java
3cd7b38d 121Obsoletes: jakarta-tomcat-doc
4470e4fe 122
123%description doc
2b38d386
JB
124The Tomcat Servlet/JSP Container documentation.
125
e22e9de1
JB
126%description doc -l pl.UTF-8
127Dokumentacja do Tomcata - kontekera Servlet/JSP.
4470e4fe 128
129%prep
3cd7b38d 130%setup -q -n %{name}-%{version}-src
8bfa2080
ER
131%patch0 -p1
132%patch1 -p1
133%patch2 -p1
134%patch3 -p1
05be5db6 135%patch4 -p1
8bfa2080 136
05be5db6 137# servletapi built from jakarta-servletapi5.spec
8bfa2080 138rm -rf servletapi
d58ce9ff
ER
139
140# Remove pre-built jars
141find -name '*.jar' | xargs rm -fv
4470e4fe 142
143%build
d58ce9ff
ER
144TOPDIR=$(pwd)
145
8bfa2080
ER
146mkdir -p tomcat-deps
147> tomcat-deps/tomcat-dbcp.jar
d58ce9ff 148
8bfa2080
ER
149%if 0
150# build jasper javadocs
151cd jasper
152CLASSPATH=$(build-classpath xml-commons-apis)
d58ce9ff
ER
153cat > build.properties <<EOF
154ant.jar=$(build-classpath ant)
8bfa2080
ER
155servlet-api.jar=$(build-classpath servlet-api)
156jsp-api.jar=$(build-classpath jsp-api)
d58ce9ff 157tools.jar=%{java_home}/lib/tools.jar
d58ce9ff
ER
158xercesImpl.jar=$(build-classpath jaxp_parser_impl)
159xmlParserAPIs.jar=$(build-classpath xml-commons-apis)
d58ce9ff
ER
160commons-collections.jar=$(build-classpath commons-collections)
161commons-logging.jar=$(build-classpath commons-logging)
162commons-daemon.jar=$(build-classpath commons-daemon)
163junit.jar=$(build-classpath junit)
8bfa2080 164commons-el.jar=$(build-classpath commons-el)
d58ce9ff 165EOF
8bfa2080
ER
166# building jasper needs eclipse classes
167#%ant dist
168
169%if %{with javadoc}
170%ant javadoc \
171 -Dcompile.source=1.4 \
172 -Dbuild.compiler=modern \
173
174%endif
175cd -
176%endif
d58ce9ff
ER
177
178# build tomcat 5.5
8bfa2080 179cat > build.properties <<EOF
d58ce9ff 180commons-beanutils.jar=$(build-classpath commons-beanutils)
8bfa2080
ER
181commons-launcher.jar=$(build-classpath commons-launcher)
182commons-daemon.jar=$(build-classpath commons-daemon)
d58ce9ff
ER
183commons-digester.jar=$(build-classpath commons-digester)
184commons-el.jar=$(build-classpath commons-el)
d58ce9ff 185commons-logging-api.jar=$(build-classpath commons-logging-api)
8bfa2080 186commons-logging.jar=$(build-classpath commons-logging)
d58ce9ff 187commons-modeler.jar=$(build-classpath commons-modeler)
8bfa2080
ER
188xercesImpl.jar=$(build-classpath jaxp_parser_impl)
189xml-apis.jar=$(build-classpath xml-commons-apis)
74f47b90
ER
190jdt.jar=$(build-classpath org.eclipse.jdt.core)
191jasper-compiler-jdt.home=$TOPDIR/tomcat-deps
8bfa2080
ER
192commons-httpclient.jar=$(build-classpath commons-httpclient)
193commons-collections.jar=$(build-classpath commons-collections)
194commons-fileupload.jar=$(build-classpath commons-fileupload)
d58ce9ff
ER
195jmx.jar=$(build-classpath jre/jmx)
196jmx-tools.jar=$(build-classpath jre/jmx)
d58ce9ff 197junit.jar=$(build-classpath junit)
8bfa2080 198struts.jar=$(build-classpath struts)
8bfa2080
ER
199jcert.jar=$(build-classpath java/jcert)
200jnet.jar=$(build-classpath java/jnet)
201jsse.jar=$(build-classpath java/jsse)
202jta.jar=$(build-classpath jta)
8bfa2080 203puretls.jar=$(build-classpath puretls)
8bfa2080 204servlet-api.jar=$(build-classpath servlet-api)
8bfa2080 205servletapi.build.notrequired=true
8bfa2080
ER
206jsp-api.jar=$(build-classpath jsp-api)
207jspapi.build.notrequired=true
581348cf 208log4j.jar=$(build-classpath log4j)
8bfa2080
ER
209# source is needed because source is copied modified and recompiled as tomcat jar
210# see <target name="-build-tomcat-dbcp"> in build/build.xml
8bfa2080
ER
211commons-collections.home=%{_prefix}/src/jakarta-commons-collections-3.1
212commons-pool.home=%{_prefix}/src/jakarta-commons-pool-1.3
213commons-dbcp.home=%{_prefix}/src/jakarta-commons-dbcp-1.2.1
214tomcat-dbcp.home=$TOPDIR/tomcat-deps
215# err, it compiles three above and then appends to the jar, so the file should exist
216tomcat-dbcp.jar=$TOPDIR/tomcat-deps/tomcat-dbcp.jar
d58ce9ff
ER
217EOF
218
05be5db6
ER
219%ant \
220 -Dcompile.source=1.4
d58ce9ff 221
4470e4fe 222%install
223rm -rf $RPM_BUILD_ROOT
224
8665efb1 225DEST=$RPM_BUILD_ROOT%{_tomcatdir}
226
227install -d $DEST/bin \
228 $DEST/common/{lib,classes,endorsed} \
229 $DEST/server/{lib,classes} \
230 $DEST/webapps \
98862cba 231 $RPM_BUILD_ROOT%{_sysconfdir}/tomcat \
55df0736
JB
232 $RPM_BUILD_ROOT%{_logdir}/tomcat \
233 $RPM_BUILD_ROOT%{_vardir}/work \
234 $RPM_BUILD_ROOT/etc/rc.d/init.d
98862cba 235
8665efb1 236install build/bin/*.sh $DEST/bin
237install build/bin/bootstrap*.jar $DEST/bin
238install build/bin/tomcat*.jar $DEST/bin
239install build/common/lib/naming-*.jar $DEST/common/lib
240install build/common/lib/jasper-*.jar $DEST/common/lib
241install build/conf/* $RPM_BUILD_ROOT%{_sysconfdir}/tomcat
242install build/server/lib/catalina*.jar $DEST/server/lib
243install build/server/lib/servlets*.jar $DEST/server/lib
244install build/server/lib/tomcat*.jar $DEST/server/lib
245install build/server/lib/servlets-cgi.renametojar $DEST/server/lib/servlets-cgi.jar
246install build/server/lib/servlets-ssi.renametojar $DEST/server/lib/servlets-ssi.jar
247cp -rf build/server/webapps $DEST/server
248cp -rf build/webapps $DEST
249cp -rf build/shared $DEST
250cp -rf build/temp $DEST
251
252ln -sf %{_logdir}/tomcat $DEST/logs
253ln -sf %{_vardir}/work $DEST/work
254ln -sf %{_sysconfdir}/tomcat $DEST/conf
4470e4fe 255
4c3d1713 256# symlinks instead of copies
d58ce9ff
ER
257ln -sf %{_javadir}/commons-daemon.jar $DEST/bin
258
259ln -sf %{_javadir}/activation.jar $DEST/common/lib
260ln -sf %{_javadir}/ant.jar $DEST/common/lib
261ln -sf %{_javadir}/commons-collections.jar $DEST/common/lib
262ln -sf %{_javadir}/commons-dbcp.jar $DEST/common/lib
263ln -sf %{_javadir}/commons-logging-api.jar $DEST/common/lib
264ln -sf %{_javadir}/commons-pool.jar $DEST/common/lib
265ln -sf %{_javadir}/servlet.jar $DEST/common/lib
266ln -sf %{_javadir}/servlet.jar $DEST/common/lib/servletapi4.jar
267ln -sf %{_javadir}/jdbc-stdext.jar $DEST/common/lib/jdbc2_0-stdext.jar
268ln -sf %{_javadir}/jdbc-stdext.jar $DEST/common/lib/jdbc-stdext-2.0.jar
269ln -sf %{_javadir}/jmxri.jar $DEST/common/lib
270ln -sf %{_javadir}/jndi.jar $DEST/common/lib
271ln -sf %{_javadir}/jta.jar $DEST/common/lib
272ln -sf %{_javadir}/mail.jar $DEST/common/lib
273ln -sf %{_javadir}/jsse.jar $DEST/common/lib
274ln -sf %{_javadir}/tyrex.jar $DEST/common/lib
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.072862 seconds and 4 git commands to generate.