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