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