]> git.pld-linux.org Git - packages/tomcat.git/blame_incremental - tomcat.spec
- set swallowOutput=true to redirect System.out to logger
[packages/tomcat.git] / tomcat.spec
... / ...
CommitLineData
1
2# Conditional build:
3%bcond_without javadoc # skip building javadocs
4%bcond_without webservices # skip building webservices
5
6%define jspapiver 2.1
7%define servletapiver 2.5
8
9%include /usr/lib/rpm/macros.java
10Summary: Web server and Servlet/JSP Engine, RI for Servlet %{servletapiver}/JSP %{jspapiver} API
11Summary(pl.UTF-8): Serwer www i silnik Servlet/JSP będący wzorcową implementacją API Servlet %{servletapiver}/JSP %{jspapiver}
12Name: tomcat
13Version: 6.0.32
14Release: 1
15License: Apache v2.0
16Group: Networking/Daemons/Java
17Source0: http://www.apache.org/dist/tomcat/tomcat-6/v%{version}/src/apache-%{name}-%{version}-src.tar.gz
18# Source0-md5: 19a1eaa9c9938b520d3c360d8cf4af22
19Source1: apache-%{name}.init
20Source2: apache-%{name}.sysconfig
21Source3: %{name}-build.properties
22Source10: %{name}-context-ROOT.xml
23Source11: %{name}-context-docs.xml
24Source12: %{name}-context-manager.xml
25Source13: %{name}-context-host-manager.xml
26Source14: %{name}-context-examples.xml
27Patch0: %{name}-build.xml.patch
28Patch1: %{name}-extras.xml.patch
29Patch2: server.xml-URIEncoding-utf8.patch
30Patch3: %{name}-LDAPUserDatabase.patch
31Patch4: %{name}-catalina.policy-javadir.patch
32Patch5: %{name}-userdir.patch
33URL: http://tomcat.apache.org/
34BuildRequires: ant >= 1.5.3
35BuildRequires: ant-trax
36BuildRequires: java-commons-daemon >= 1.0
37BuildRequires: java-commons-dbcp-tomcat5 >= 0:1.1
38BuildRequires: java-commons-pool-tomcat5
39BuildRequires: java-eclipse-jdt >= 3.2
40%if %{with webservices}
41BuildRequires: java(JSR109)
42BuildRequires: java-geronimo-spec-jaxrpc
43%endif
44BuildRequires: java-jdbc-mysql
45BuildRequires: java-mail
46BuildRequires: jdk
47BuildRequires: jpackage-utils
48BuildRequires: rpm-javaprov
49BuildRequires: rpmbuild(macros) >= 1.300
50Requires(post,preun): /sbin/chkconfig
51Requires(postun): /usr/sbin/groupdel
52Requires(postun): /usr/sbin/userdel
53Requires(pre): /bin/id
54Requires(pre): /usr/bin/getgid
55Requires(pre): /usr/sbin/groupadd
56Requires(pre): /usr/sbin/useradd
57Requires: java(jaxp_parser_impl)
58Requires: java(jndi) >= 1.2.1
59Requires: java-%{name}-catalina = %{epoch}:%{version}-%{release}
60Requires: java-%{name}-coyote = %{epoch}:%{version}-%{release}
61Requires: java-%{name}-jasper = %{epoch}:%{version}-%{release}
62Requires: java-commons-dbcp-tomcat5 >= 0:1.1
63Requires: java-commons-pool-tomcat5
64Requires: java-jdbc-mysql
65Requires: java-mail
66Requires: java-servletapi = %{epoch}:%{version}-%{release}
67Requires: jpackage-utils
68Requires: jre >= 1.2
69Requires: jsvc
70Requires: rc-scripts
71Suggests: tomcat-native
72Provides: group(servlet)
73Provides: group(tomcat)
74Provides: user(tomcat)
75Obsoletes: apache-tomcat
76Obsoletes: jakarta-tomcat
77BuildArch: noarch
78BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
79
80%define _tomcatdir %{_datadir}/tomcat
81%define _logdir %{_var}/log
82%define _vardir %{_var}/lib/tomcat
83
84%define find_jar() %{expand:%%define jarfile {%(jar=$(find-jar %1); echo ${jar:-%%nil})}}%{?jarfile}%{!?jarfile:%{error:find-jar %1 failed}}%{nil}
85
86%description
87Tomcat is the servlet container that is used in the official Reference
88Implementation for the Java Servlet and JavaServer Pages technologies.
89The Java Servlet and JavaServer Pages specifications are developed by
90Sun under the Java Community Process.
91
92Tomcat is developed in an open and participatory environment and
93released under the Apache Software License. Tomcat is intended to be a
94collaboration of the best-of-breed developers from around the world.
95We invite you to participate in this open development project.
96
97%description -l pl.UTF-8
98Tomcat to kontener serwletowy używany przez oficjalną implementację
99wzorcową technologii Java Servlet i JavaServer Pages. Specyfikacje
100Java Servlet i JavaServer Pages są rozwijane przez Suna zgodnie z Java
101Community Process.
102
103%package webapp-docs
104Summary: The Apache Tomcat Servlet/JSP Container documentation
105Summary(pl.UTF-8): Dokumentacja do Tomcata - kontenera Servlet/JSP
106Group: Documentation
107Obsoletes: apache-tomcat-doc
108Obsoletes: jakarta-tomcat-doc
109Obsoletes: tomcat-doc
110
111%description webapp-docs
112The Tomcat Servlet/JSP Container documentation.
113
114%description webapp-docs -l pl.UTF-8
115Dokumentacja do Tomcata - kontenera Servlet/JSP.
116
117%package webapp-manager
118Summary: The Apache Tomcat Servlet/JSP application manager
119Summary(pl.UTF-8): Zarządca aplikacji w Tomcacie
120Group: Networking/Daemons/Java/Servlets
121Requires: %{name} = %{epoch}:%{version}-%{release}
122
123%description webapp-manager
124The Apache Tomcat Servlet/JSP application manager.
125
126%description webapp-manager -l pl.UTF-8
127Zarządca aplikacji w Tomcacie.
128
129%package webapp-host-manager
130Summary: The Apache Tomcat Servlet/JSP virtual hosts manager
131Summary(pl.UTF-8): Zarządca wirtualnych hostów w Tomcacie
132Group: Networking/Daemons/Java/Servlets
133Requires: %{name} = %{epoch}:%{version}-%{release}
134Obsoletes: tomcat-admin
135
136%description webapp-host-manager
137The Apache Tomcat Servlet/JSP virtual hosts manager.
138
139%description webapp-host-manager -l pl.UTF-8
140Zarządca wirtualnych hostów w Tomcacie.
141
142%package webapp-examples
143Summary: The Apache Tomcat Servlet/JSP example applications
144Summary(pl.UTF-8): Przykładowe aplikacje dla Tomcata
145Group: Networking/Daemons/Java/Servlets
146Requires: %{name} = %{epoch}:%{version}-%{release}
147
148%description webapp-examples
149The Apache Tomcat Servlet/JSP example applications.
150
151%description webapp-examples -l pl.UTF-8
152Przykładowe aplikacje dla Tomcata.
153
154%package webservices
155Summary: Web Services support (JSR 109)
156Group: Libraries/Java
157Requires: %{name} = %{epoch}:%{version}-%{release}
158Requires: java(JSR109)
159Requires: java-geronimo-spec-jaxrpc
160
161%description webservices
162Factories for JSR 109 which may be used to resolve web services
163references.
164
165%package -n java-tomcat-catalina
166Summary: Tomcat's servlet container
167Group: Libraries/Java
168Requires: jpackage-utils
169
170%description -n java-tomcat-catalina
171Catalina is Tomcat's servlet container. Catalina implements Sun
172Microsystems' specifications for servlet and JavaServer Pages (JSP).
173
174%package -n java-tomcat-coyote
175Summary: Tomcat HTTP connector
176Group: Libraries/Java
177Requires: jpackage-utils
178
179%description -n java-tomcat-coyote
180Coyote is Tomcat's HTTP Connector component that supports the HTTP 1.1
181protocol for the web server or application container. Coyote listens
182for incoming connections on a specific TCP port on the server and
183forwards the request to the Tomcat Engine to process the request and
184send back a response to the requesting client.
185
186%package -n java-tomcat-jasper
187Summary: JSP compiler
188Summary(pl.UTF-8): Kompilator JSP
189Group: Libraries/Java
190Requires: java-eclipse-jdt >= 3.2
191Requires: jpackage-utils
192Obsoletes: apache-tomcat-jasper
193Obsoletes: tomcat-jasper
194
195%description -n java-tomcat-jasper
196Jasper is Java ServerPages compiler used by Apache Tomcat servlet
197container.
198
199%description -n java-tomcat-jasper -l pl.UTF-8
200Jasper jest kompilatorem Java ServerPages używanym przez kontener
201servletów Apache Tomcat.
202
203%package -n java-servletapi
204Summary: Java servlet and JSP implementation classes
205Summary(pl.UTF-8): Klasy z implementacją Java Servlet i JSP
206Group: Libraries/Java
207Provides: java(jsp) = %{jspapiver}
208Provides: java(servlet) = %{servletapiver}
209Obsoletes: jakarta-servletapi5
210Obsoletes: java-servletapi5
211
212%description -n java-servletapi
213Implementation classes of the Java Servlet and JSP APIs (packages
214javax.servlet, javax.servlet.http, javax.servlet.jsp, and
215javax.servlet.jsp.tagext).
216
217%description -n java-servletapi -l pl.UTF-8
218Implementacje klas API Java Servlet i JSP (pakiety javax.servlet,
219javax.servlet.http, javax.servlet.jsp i java.servlet.jsp.tagext).
220
221%prep
222%setup -q -n apache-%{name}-%{version}-src
223%patch0 -p0
224%patch1 -p0
225%patch2 -p1
226%patch3 -p1
227%patch4 -p1
228%patch5 -p1
229
230# we don't need those scripts
231rm bin/*.bat
232rm bin/{startup,shutdown}.sh
233
234cp -a %{SOURCE3} build.properties
235
236%build
237TOPDIR=$(pwd)
238
239%ant \
240 -Drpm.javadir=%{_javadir} \
241 -Drpm.libdir=%{_libdir}
242
243%if %{with javadoc}
244%ant -f dist.xml dist-javadoc
245%endif
246
247%if %{with webservices}
248mkdir -p output/extras/webservices
249
250ln -sf %{_javadir}/geronimo-spec-jaxrpc.jar output/extras/webservices/jaxrpc.jar
251ln -sf %{_javadir}/jsr109.jar output/extras/webservices/wsdl4j.jar
252
253%ant -f extras.xml webservices
254%endif
255
256%install
257rm -rf $RPM_BUILD_ROOT
258cd output/build
259
260TOMCATDIR=$RPM_BUILD_ROOT%{_tomcatdir}
261CATALINADIR=$RPM_BUILD_ROOT/var/lib/tomcat
262
263# useful for constructing relative symlinks. Is there a better way?
264TOMCATDIRREV=$(echo %{_tomcatdir} | sed 's#[^/]\+#..#g;s#^/##')
265CATALINADIRREV=$(echo /var/lib/tomcat | sed 's#[^/]\+#..#g;s#^/##')
266SYSCONFDIRREV=$(echo %{_sysconfdir} | sed 's#[^/]\+#..#g;s#^/##')
267
268install -d $TOMCATDIR \
269 $CATALINADIR/temp \
270 $RPM_BUILD_ROOT%{_vardir}/webapps \
271 $RPM_BUILD_ROOT%{_vardir}/work \
272 $RPM_BUILD_ROOT%{_vardir}/conf \
273 $RPM_BUILD_ROOT%{_logdir}/tomcat \
274 $RPM_BUILD_ROOT/etc/sysconfig \
275 $RPM_BUILD_ROOT/etc/rc.d/init.d
276
277install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/tomcat
278cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/tomcat
279
280cp -a conf/* $CATALINADIR/conf
281install -d $CATALINADIR/conf/Catalina/localhost
282cp -a %{SOURCE10} $CATALINADIR/conf/Catalina/localhost/ROOT.xml
283cp -a %{SOURCE11} $CATALINADIR/conf/Catalina/localhost/docs.xml
284cp -a %{SOURCE12} $CATALINADIR/conf/Catalina/localhost/manager.xml
285cp -a %{SOURCE13} $CATALINADIR/conf/Catalina/localhost/host-manager.xml
286cp -a %{SOURCE14} $CATALINADIR/conf/Catalina/localhost/examples.xml
287
288cp -a bin lib webapps $TOMCATDIR
289cp -a temp $CATALINADIR
290
291ln -sf $CATALINADIRREV%{_logdir}/tomcat $CATALINADIR/logs
292ln -sf $TOMCATDIRREV%{_logdir}/tomcat $TOMCATDIR/logs
293ln -sf $TOMCATDIRREV%{_vardir}/work $TOMCATDIR/work
294ln -sf $TOMCATDIRREV%{_vardir}/conf $TOMCATDIR/conf
295ln -sf $SYSCONFDIRREV%{_vardir}/conf $RPM_BUILD_ROOT%{_sysconfdir}/tomcat
296
297# symlinks instead of copies
298jars="commons-daemon commons-logging-api"
299for jar in $jars; do
300 jar=$(find-jar $jar)
301 ln -sf $jar $TOMCATDIR/bin
302done
303
304jars="commons-pool-tomcat5 commons-dbcp-tomcat5 mysql-connector-java org.eclipse.jdt.core mail"
305for jar in $jars; do
306 jar=$(find-jar $jar)
307 ln -sf $jar $TOMCATDIR/lib
308done
309
310install -d $RPM_BUILD_ROOT%{_javadir}
311mv $TOMCATDIR/lib/jasper*.jar $RPM_BUILD_ROOT%{_javadir}
312mv $TOMCATDIR/lib/jsp-api.jar $RPM_BUILD_ROOT%{_javadir}/jsp-api-%{jspapiver}.jar
313mv $TOMCATDIR/lib/servlet-api.jar $RPM_BUILD_ROOT%{_javadir}/servlet-api-%{servletapiver}.jar
314mv $TOMCATDIR/lib/catalina.jar $RPM_BUILD_ROOT%{_javadir}/tomcat6-catalina.jar
315mv $TOMCATDIR/lib/tomcat-coyote.jar $RPM_BUILD_ROOT%{_javadir}/tomcat6-coyote.jar
316
317ln -s jsp-api-%{jspapiver}.jar $RPM_BUILD_ROOT%{_javadir}/jsp-api.jar
318ln -s servlet-api-%{servletapiver}.jar $RPM_BUILD_ROOT%{_javadir}/servlet-api.jar
319
320# XXX add softlinks jasper-compiler.jar and jasper-runtime for compatibility with tomcat 5.5?
321ln -sf %{_javadir}/jasper-el.jar $TOMCATDIR/lib
322ln -sf %{_javadir}/jasper.jar $TOMCATDIR/lib
323
324ln -sf %{_javadir}/jsp-api-%{jspapiver}.jar $TOMCATDIR/lib/jsp-api.jar
325ln -sf %{_javadir}/servlet-api-%{servletapiver}.jar $TOMCATDIR/lib/servlet-api.jar
326
327ln -sf %{_javadir}/tomcat6-catalina.jar $TOMCATDIR/lib/catalina.jar
328ln -sf %{_javadir}/tomcat6-coyote.jar $TOMCATDIR/lib/tomcat-coyote.jar
329
330%if %{with webservices}
331install ../extras/catalina-ws.jar $TOMCATDIR/lib/catalina-ws.jar
332
333ln -s %{_javadir}/geronimo-spec-jaxrpc.jar $TOMCATDIR/lib/jaxrpc.jar
334ln -s %{_javadir}/jsr109.jar $TOMCATDIR/lib/jsr109.jar
335%endif
336
337%clean
338rm -rf $RPM_BUILD_ROOT
339
340%pre
341%groupadd -g 234 -r -f tomcat
342%groupadd -g 237 -r -f servlet
343%useradd -u 234 -r -d /var/lib/tomcat -s /bin/false -c "Tomcat User" -g tomcat -G servlet tomcat
344
345%post
346/sbin/chkconfig --add tomcat
347%service tomcat restart
348
349%preun
350if [ "$1" = "0" ]; then
351 %service tomcat stop
352 /sbin/chkconfig --del tomcat
353fi
354
355%postun
356if [ "$1" = "0" ]; then
357 %userremove tomcat
358 %groupremove tomcat
359 %groupremove servlet
360fi
361
362%files
363%defattr(644,root,root,755)
364%doc KEYS RELEASE-NOTES RELEASE-PLAN-6.0.txt RUNNING.txt
365%attr(754,root,root) /etc/rc.d/init.d/tomcat
366%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/tomcat
367%{_sysconfdir}/tomcat
368%dir %{_tomcatdir}
369%dir %{_tomcatdir}/conf
370%dir %{_tomcatdir}/bin
371%{_tomcatdir}/bin/catalina-tasks.xml
372%attr(755,root,root) %{_tomcatdir}/bin/*.sh
373%{_tomcatdir}/bin/*.jar
374%dir %{_tomcatdir}/lib
375%{_tomcatdir}/lib/annotations-api.jar
376%{_tomcatdir}/lib/catalina-ant.jar
377%{_tomcatdir}/lib/catalina-ha.jar
378%{_tomcatdir}/lib/catalina.jar
379%{_tomcatdir}/lib/catalina-tribes.jar
380%{_tomcatdir}/lib/commons-dbcp-tomcat5.jar
381%{_tomcatdir}/lib/commons-pool-tomcat5.jar
382%{_tomcatdir}/lib/el-api.jar
383%{_tomcatdir}/lib/jasper-el.jar
384%{_tomcatdir}/lib/jasper.jar
385%{_tomcatdir}/lib/jsp-api.jar
386%{_tomcatdir}/lib/mail.jar
387%{_tomcatdir}/lib/mysql-connector-java.jar
388%{_tomcatdir}/lib/org.eclipse.jdt.core.jar
389%{_tomcatdir}/lib/servlet-api.jar
390%{_tomcatdir}/lib/tomcat-coyote.jar
391%{_tomcatdir}/lib/tomcat-i18n-es.jar
392%{_tomcatdir}/lib/tomcat-i18n-fr.jar
393%{_tomcatdir}/lib/tomcat-i18n-ja.jar
394
395%dir %{_tomcatdir}/webapps
396
397%config(noreplace) %attr(664,root,tomcat) %verify(not md5 mtime size) %{_vardir}/conf/Catalina/localhost/ROOT.xml
398%{_tomcatdir}/webapps/ROOT
399
400%{_tomcatdir}/logs
401%{_tomcatdir}/work
402%dir %attr(770,root,tomcat) %{_vardir}
403# these directory has to be writeable because /admin need to modify config
404# files and create temporary files
405%dir %attr(770,root,tomcat) %{_vardir}/conf
406%dir %attr(770,root,tomcat) %{_vardir}/conf/Catalina
407%dir %{_vardir}/conf/Catalina/localhost
408# tomcat config has to be writeable because of tomcat-users.xml file and Catalina dir
409%config(noreplace) %attr(660,root,tomcat) %verify(not md5 mtime size) %{_vardir}/conf/catalina.policy
410%config(noreplace) %attr(660,root,tomcat) %verify(not md5 mtime size) %{_vardir}/conf/*.properties*
411%config(noreplace) %attr(660,root,tomcat) %verify(not md5 mtime size) %{_vardir}/conf/*.xml
412%dir %attr(770,root,tomcat) %{_vardir}/work
413%dir %attr(770,root,tomcat) %{_vardir}/webapps
414%dir %attr(770,root,tomcat) %{_vardir}/temp
415%dir %attr(770,root,tomcat) %{_logdir}/tomcat
416%{_vardir}/logs
417
418%files webapp-docs
419%defattr(644,root,root,755)
420%config(noreplace) %attr(664,root,tomcat) %verify(not md5 mtime size) %{_vardir}/conf/Catalina/localhost/docs.xml
421%{_tomcatdir}/webapps/docs
422
423%files webapp-manager
424%defattr(644,root,root,755)
425%config(noreplace) %attr(664,root,tomcat) %verify(not md5 mtime size) %{_vardir}/conf/Catalina/localhost/manager.xml
426%{_tomcatdir}/webapps/manager
427
428%files webapp-host-manager
429%defattr(644,root,root,755)
430%config(noreplace) %attr(664,root,tomcat) %verify(not md5 mtime size) %{_vardir}/conf/Catalina/localhost/host-manager.xml
431%{_tomcatdir}/webapps/host-manager
432
433%files webapp-examples
434%defattr(644,root,root,755)
435%config(noreplace) %attr(664,root,tomcat) %verify(not md5 mtime size) %{_vardir}/conf/Catalina/localhost/examples.xml
436%{_tomcatdir}/webapps/examples
437
438%if %{with webservices}
439%files webservices
440%defattr(644,root,root,755)
441%{_tomcatdir}/lib/catalina-ws.jar
442%{_tomcatdir}/lib/jsr109.jar
443%{_tomcatdir}/lib/jaxrpc.jar
444%endif
445
446%files -n java-tomcat-jasper
447%defattr(644,root,root,755)
448%{_javadir}/jasper-el.jar
449%{_javadir}/jasper.jar
450
451%files -n java-tomcat-catalina
452%defattr(644,root,root,755)
453%{_javadir}/tomcat6-catalina.jar
454
455%files -n java-tomcat-coyote
456%defattr(644,root,root,755)
457%{_javadir}/tomcat6-coyote.jar
458
459%files -n java-servletapi
460%defattr(644,root,root,755)
461%{_javadir}/jsp-api*.jar
462%{_javadir}/servlet-api*.jar
This page took 0.070362 seconds and 4 git commands to generate.