]>
Commit | Line | Data |
---|---|---|
1 | ||
2 | # Conditional build: | |
3 | %bcond_without javadoc # skip building javadocs | |
4 | %bcond_without extras # skip building extras | |
5 | ||
6 | %define jspapiver 2.2 | |
7 | %define servletapiver 3.0 | |
8 | ||
9 | %define tomcatnatver 1.1.27 | |
10 | ||
11 | # Java Commons Logging version. Must be >= 1.1. | |
12 | %define jclver 1.2 | |
13 | ||
14 | Summary: Web server and Servlet/JSP Engine, RI for Servlet %{servletapiver}/JSP %{jspapiver} API | |
15 | Summary(pl.UTF-8): Serwer www i silnik Servlet/JSP będący wzorcową implementacją API Servlet %{servletapiver}/JSP %{jspapiver} | |
16 | Name: tomcat | |
17 | Version: 7.0.107 | |
18 | Release: 1 | |
19 | License: Apache v2.0 | |
20 | Group: Networking/Daemons/Java | |
21 | Source0: http://www.apache.org/dist/tomcat/tomcat-7/v%{version}/src/apache-%{name}-%{version}-src.tar.gz | |
22 | # Source0-md5: 7b37e6f4000c979fe337f8f1b67961e2 | |
23 | Source1: apache-%{name}.init | |
24 | Source2: apache-%{name}.sysconfig | |
25 | Source3: %{name}-build.properties | |
26 | Source10: %{name}-context-ROOT.xml | |
27 | Source11: %{name}-context-docs.xml | |
28 | Source12: %{name}-context-manager.xml | |
29 | Source13: %{name}-context-host-manager.xml | |
30 | Source14: %{name}-context-examples.xml | |
31 | Source15: %{name}.logrotate | |
32 | Source16: log4j.properties | |
33 | Source100: http://www.apache.org/dist/commons/logging/source/commons-logging-%{jclver}-src.tar.gz | |
34 | # Source100-md5: ce977548f1cbf46918e93cd38ac35163 | |
35 | Patch0: %{name}-build.xml.patch | |
36 | Patch1: server.xml-URIEncoding-utf8.patch | |
37 | Patch2: %{name}-LDAPUserDatabase.patch | |
38 | Patch3: %{name}-catalina.policy-javadir.patch | |
39 | Patch4: %{name}-userdir.patch | |
40 | Patch5: logging.patch | |
41 | Patch6: jcl.patch | |
42 | Patch7: %{name}-build.patch | |
43 | Patch100: jcl-build.xml.patch | |
44 | URL: http://tomcat.apache.org/ | |
45 | BuildRequires: ant >= 1.5.3 | |
46 | BuildRequires: java(JSR109) | |
47 | BuildRequires: java-avalon-framework | |
48 | BuildRequires: java-avalon-logkit | |
49 | BuildRequires: java-commons-daemon >= 1.0 | |
50 | BuildRequires: java-commons-dbcp-tomcat5 >= 0:1.1 | |
51 | BuildRequires: java-commons-pool-tomcat5 | |
52 | BuildRequires: java-eclipse-jdt >= 4.4.2 | |
53 | BuildRequires: java-geronimo-spec-jaxrpc | |
54 | BuildRequires: java-jdbc-mysql | |
55 | BuildRequires: java-junit | |
56 | BuildRequires: java-log4j | |
57 | BuildRequires: java-mail | |
58 | BuildRequires: jdk >= 1.6 | |
59 | BuildRequires: jpackage-utils | |
60 | BuildRequires: rpm >= 4.4.9-56 | |
61 | BuildRequires: rpm-javaprov | |
62 | BuildRequires: rpmbuild(macros) >= 1.657 | |
63 | BuildRequires: sed >= 4.0 | |
64 | Requires(post,preun): /sbin/chkconfig | |
65 | Requires(postun): /usr/sbin/groupdel | |
66 | Requires(postun): /usr/sbin/userdel | |
67 | Requires(pre): /bin/id | |
68 | Requires(pre): /usr/bin/getgid | |
69 | Requires(pre): /usr/sbin/groupadd | |
70 | Requires(pre): /usr/sbin/useradd | |
71 | Requires: java(jaxp_parser_impl) | |
72 | Requires: java(jndi) >= 1.2.1 | |
73 | Requires: java-%{name}-catalina = %{version}-%{release} | |
74 | Requires: java-%{name}-coyote = %{version}-%{release} | |
75 | Requires: java-%{name}-jasper = %{version}-%{release} | |
76 | Requires: java-commons-dbcp-tomcat5 >= 0:1.1 | |
77 | Requires: java-commons-pool-tomcat5 | |
78 | Requires: java-jdbc-mysql | |
79 | Requires: java-mail | |
80 | Requires: java-servletapi = %{version}-%{release} | |
81 | Requires: jpackage-utils | |
82 | Requires: jre >= 1.2 | |
83 | Requires: jsvc | |
84 | Requires: rc-scripts | |
85 | Suggests: logrotate | |
86 | Suggests: tomcat-native >= %{tomcatnatver} | |
87 | Provides: group(servlet) | |
88 | Provides: group(tomcat) | |
89 | Provides: user(tomcat) | |
90 | Obsoletes: apache-tomcat | |
91 | Obsoletes: jakarta-tomcat | |
92 | %if "%{pld_release}" != "ac" | |
93 | Conflicts: logrotate < 3.8.0 | |
94 | %endif | |
95 | Conflicts: tomcat-native < %{tomcatnatver} | |
96 | BuildArch: noarch | |
97 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
98 | ||
99 | %define _tomcatdir %{_datadir}/tomcat | |
100 | %define _logdir %{_var}/log | |
101 | %define _vardir %{_var}/lib/tomcat | |
102 | ||
103 | %description | |
104 | Tomcat is the servlet container that is used in the official Reference | |
105 | Implementation for the Java Servlet and JavaServer Pages technologies. | |
106 | The Java Servlet and JavaServer Pages specifications are developed by | |
107 | Sun under the Java Community Process. | |
108 | ||
109 | Tomcat is developed in an open and participatory environment and | |
110 | released under the Apache Software License. Tomcat is intended to be a | |
111 | collaboration of the best-of-breed developers from around the world. | |
112 | ||
113 | %description -l pl.UTF-8 | |
114 | Tomcat to kontener serwletowy używany przez oficjalną implementację | |
115 | wzorcową technologii Java Servlet i JavaServer Pages. Specyfikacje | |
116 | Java Servlet i JavaServer Pages są rozwijane przez Suna zgodnie z Java | |
117 | Community Process. | |
118 | ||
119 | %package webapp-docs | |
120 | Summary: The Apache Tomcat Servlet/JSP Container documentation | |
121 | Summary(pl.UTF-8): Dokumentacja do Tomcata - kontenera Servlet/JSP | |
122 | Group: Documentation | |
123 | Requires: %{name} = %{version}-%{release} | |
124 | Obsoletes: apache-tomcat-doc | |
125 | Obsoletes: jakarta-tomcat-doc | |
126 | Obsoletes: tomcat-doc | |
127 | ||
128 | %description webapp-docs | |
129 | The Tomcat Servlet/JSP Container documentation. | |
130 | ||
131 | %description webapp-docs -l pl.UTF-8 | |
132 | Dokumentacja do Tomcata - kontenera Servlet/JSP. | |
133 | ||
134 | %package webapp-manager | |
135 | Summary: The Apache Tomcat Servlet/JSP application manager | |
136 | Summary(pl.UTF-8): Zarządca aplikacji w Tomcacie | |
137 | Group: Networking/Daemons/Java/Servlets | |
138 | Requires: %{name} = %{version}-%{release} | |
139 | ||
140 | %description webapp-manager | |
141 | The Apache Tomcat Servlet/JSP application manager. | |
142 | ||
143 | %description webapp-manager -l pl.UTF-8 | |
144 | Zarządca aplikacji w Tomcacie. | |
145 | ||
146 | %package webapp-host-manager | |
147 | Summary: The Apache Tomcat Servlet/JSP virtual hosts manager | |
148 | Summary(pl.UTF-8): Zarządca wirtualnych hostów w Tomcacie | |
149 | Group: Networking/Daemons/Java/Servlets | |
150 | Requires: %{name} = %{version}-%{release} | |
151 | Obsoletes: tomcat-admin | |
152 | ||
153 | %description webapp-host-manager | |
154 | The Apache Tomcat Servlet/JSP virtual hosts manager. | |
155 | ||
156 | %description webapp-host-manager -l pl.UTF-8 | |
157 | Zarządca wirtualnych hostów w Tomcacie. | |
158 | ||
159 | %package webapp-examples | |
160 | Summary: The Apache Tomcat Servlet/JSP example applications | |
161 | Summary(pl.UTF-8): Przykładowe aplikacje dla Tomcata | |
162 | Group: Networking/Daemons/Java/Servlets | |
163 | Requires: %{name} = %{version}-%{release} | |
164 | ||
165 | %description webapp-examples | |
166 | The Apache Tomcat Servlet/JSP example applications. | |
167 | ||
168 | %description webapp-examples -l pl.UTF-8 | |
169 | Przykładowe aplikacje dla Tomcata. | |
170 | ||
171 | %package webservices | |
172 | Summary: Web Services support (JSR 109) | |
173 | Summary(pl.UTF-8): Wsparcie dla Web Services (JSR 109) | |
174 | Group: Libraries/Java | |
175 | Requires: %{name} = %{version}-%{release} | |
176 | Requires: java(JSR109) | |
177 | Requires: java-geronimo-spec-jaxrpc | |
178 | ||
179 | %description webservices | |
180 | Factories for JSR 109 which may be used to resolve web services | |
181 | references. | |
182 | ||
183 | %description webservices -l pl.UTF-8 | |
184 | Wsparcie dla JSR 109 (Web Services). | |
185 | ||
186 | %package jmx | |
187 | Summary: JMX remote interface for Tomcat | |
188 | Summary(pl.UTF-8): Zdalny interfejs JMX dla Tomcata | |
189 | Group: Libraries/Java | |
190 | Requires: %{name} = %{version}-%{release} | |
191 | ||
192 | %description jmx | |
193 | JMX remote interface for Tomcat. | |
194 | ||
195 | %description jmx -l pl.UTF-8 | |
196 | Zdalny interfejs JMX dla Tomcata. | |
197 | ||
198 | %package -n java-tomcat-catalina | |
199 | Summary: Tomcat's servlet engine | |
200 | Summary(pl.UTF-8): Silnik servletów dla Tomcata. | |
201 | Group: Libraries/Java | |
202 | Requires: jpackage-utils | |
203 | ||
204 | %description -n java-tomcat-catalina | |
205 | Catalina is Tomcat's servlet container. Catalina implements Sun | |
206 | Microsystems' specifications for servlet and JavaServer Pages (JSP). | |
207 | ||
208 | %description -n java-tomcat-catalina -l pl.UTF-8 | |
209 | Bibliotek Javy zawierające silnik servletów i JSP tomcata. | |
210 | ||
211 | %package -n java-tomcat-coyote | |
212 | Summary: Tomcat HTTP connector | |
213 | Summary(pl.UTF-8): Interfejs HTTP dla Tomcata | |
214 | Group: Libraries/Java | |
215 | Requires: jpackage-utils | |
216 | ||
217 | %description -n java-tomcat-coyote | |
218 | Coyote is Tomcat's HTTP Connector component that supports the HTTP 1.1 | |
219 | protocol for the web server or application container. Coyote listens | |
220 | for incoming connections on a specific TCP port on the server and | |
221 | forwards the request to the Tomcat Engine to process the request and | |
222 | send back a response to the requesting client. | |
223 | ||
224 | %description -n java-tomcat-coyote -l pl.UTF-8 | |
225 | Biblioteki Javy zawierające serwer HTTP 1.1 dla Tomcata. | |
226 | ||
227 | %package -n java-tomcat-jasper | |
228 | Summary: JSP compiler | |
229 | Summary(pl.UTF-8): Kompilator JSP | |
230 | Group: Libraries/Java | |
231 | Requires: java-eclipse-jdt >= 4.2.2 | |
232 | Requires: jpackage-utils | |
233 | Obsoletes: apache-tomcat-jasper | |
234 | Obsoletes: tomcat-jasper | |
235 | ||
236 | %description -n java-tomcat-jasper | |
237 | Jasper is Java ServerPages compiler used by Apache Tomcat servlet | |
238 | container. | |
239 | ||
240 | %description -n java-tomcat-jasper -l pl.UTF-8 | |
241 | Jasper jest kompilatorem Java ServerPages używanym przez kontener | |
242 | servletów Apache Tomcat. | |
243 | ||
244 | %package -n java-servletapi | |
245 | Summary: Java servlet and JSP implementation classes | |
246 | Summary(pl.UTF-8): Klasy z implementacją Java Servlet i JSP | |
247 | Group: Libraries/Java | |
248 | Provides: java(jsp) = %{jspapiver} | |
249 | Provides: java(servlet) = %{servletapiver} | |
250 | Obsoletes: jakarta-servletapi5 | |
251 | Obsoletes: jakarta-servletapi5 | |
252 | Obsoletes: java-servletapi5 | |
253 | ||
254 | %description -n java-servletapi | |
255 | Implementation classes of the Java Servlet and JSP APIs (packages | |
256 | javax.servlet, javax.servlet.http, javax.servlet.jsp, and | |
257 | javax.servlet.jsp.tagext). | |
258 | ||
259 | %description -n java-servletapi -l pl.UTF-8 | |
260 | Implementacje klas API Java Servlet i JSP (pakiety javax.servlet, | |
261 | javax.servlet.http, javax.servlet.jsp i java.servlet.jsp.tagext). | |
262 | ||
263 | %prep | |
264 | %setup -q -a100 -n apache-%{name}-%{version}-src | |
265 | %patch0 -p1 | |
266 | %patch1 -p1 | |
267 | %patch2 -p1 | |
268 | %patch3 -p1 | |
269 | %patch4 -p1 | |
270 | %patch5 -p1 | |
271 | %patch6 -p1 | |
272 | %patch7 -p1 | |
273 | ||
274 | # Prepare java-commmons-logging sources | |
275 | install -d output/extras/logging | |
276 | mv commons-logging-%{jclver}-src output/extras/logging | |
277 | cd output/extras/logging/commons-logging-%{jclver}-src | |
278 | %undos build.xml | |
279 | %patch100 -p1 | |
280 | cd - | |
281 | ||
282 | # we don't need those scripts | |
283 | rm bin/*.bat | |
284 | rm bin/{startup,shutdown}.sh | |
285 | ||
286 | cp -p %{SOURCE3} build.properties | |
287 | ||
288 | %build | |
289 | if test ! -e build.properties.local; then | |
290 | cat > build.properties.local <<-EOF | |
291 | log4j.jar=$(find-jar log4j) | |
292 | log4j12.jar=$(find-jar log4j) | |
293 | junit.jar=$(find-jar junit) | |
294 | logkit.jar=$(find-jar avalon-logkit) | |
295 | avalon-framework-impl.jar=$(find-jar avalon-framework-impl.jar) | |
296 | avalon-framework-api.jar=$(find-jar avalon-framework-api.jar) | |
297 | servletapi.jar=$(pwd)/output/build/lib/servlet-api.jar | |
298 | commons-logging.version=%{jclver} | |
299 | java.7.home=%{java_home} | |
300 | EOF | |
301 | cat build.properties.local >> build.properties | |
302 | fi | |
303 | if grep '=$' build.properties; then | |
304 | : Some .jar could not be found | |
305 | exit 1 | |
306 | fi | |
307 | ||
308 | export LC_ALL=en_US | |
309 | ||
310 | # Base package | |
311 | %ant | |
312 | ||
313 | %if %{with extras} | |
314 | install -d output/extras/webservices | |
315 | ln -sf %{_javadir}/geronimo-spec-jaxrpc.jar output/extras/webservices/jaxrpc.jar | |
316 | ln -sf %{_javadir}/jsr109.jar output/extras/webservices/wsdl4j.jar | |
317 | %ant extras | |
318 | %endif | |
319 | ||
320 | # Javadoc | |
321 | %if %{with javadoc} | |
322 | %ant javadoc | |
323 | %endif | |
324 | ||
325 | %install | |
326 | rm -rf $RPM_BUILD_ROOT | |
327 | cd output/build | |
328 | ||
329 | TOMCATDIR=$RPM_BUILD_ROOT%{_tomcatdir} | |
330 | CATALINADIR=$RPM_BUILD_ROOT/var/lib/tomcat | |
331 | ||
332 | # useful for constructing relative symlinks. Is there a better way? | |
333 | TOMCATDIRREV=$(echo %{_tomcatdir} | sed 's#[^/]\+#..#g;s#^/##') | |
334 | CATALINADIRREV=$(echo /var/lib/tomcat | sed 's#[^/]\+#..#g;s#^/##') | |
335 | ||
336 | install -d $TOMCATDIR \ | |
337 | $CATALINADIR/temp \ | |
338 | $RPM_BUILD_ROOT%{_vardir}/webapps \ | |
339 | $RPM_BUILD_ROOT%{_vardir}/work \ | |
340 | $RPM_BUILD_ROOT%{_logdir}/{archive/,}tomcat \ | |
341 | $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/Catalina/localhost \ | |
342 | $RPM_BUILD_ROOT/etc/{sysconfig,rc.d/init.d,logrotate.d} | |
343 | ||
344 | install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/tomcat | |
345 | cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/tomcat | |
346 | ||
347 | cp -a conf/* $RPM_BUILD_ROOT%{_sysconfdir}/%{name} | |
348 | ln -sf $CATALINADIRREV%{_sysconfdir}/%{name} $RPM_BUILD_ROOT%{_vardir}/conf | |
349 | cp -p %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/Catalina/localhost/ROOT.xml | |
350 | cp -p %{SOURCE11} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/Catalina/localhost/docs.xml | |
351 | cp -p %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/Catalina/localhost/manager.xml | |
352 | cp -p %{SOURCE13} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/Catalina/localhost/host-manager.xml | |
353 | cp -p %{SOURCE14} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/Catalina/localhost/examples.xml | |
354 | cp -p %{SOURCE15} $RPM_BUILD_ROOT/etc/logrotate.d/%{name} | |
355 | %if "%{pld_release}" == "ac" | |
356 | %{__sed} -i -e '/su/d' $RPM_BUILD_ROOT/etc/logrotate.d/%{name} | |
357 | %endif | |
358 | cp -p %{SOURCE16} $RPM_BUILD_ROOT%{_sysconfdir}/%{name} | |
359 | ||
360 | cp -a bin lib webapps $TOMCATDIR | |
361 | cp -a temp $CATALINADIR | |
362 | ||
363 | ln -sf $CATALINADIRREV%{_logdir}/tomcat $CATALINADIR/logs | |
364 | ln -sf $TOMCATDIRREV%{_logdir}/tomcat $TOMCATDIR/logs | |
365 | ln -sf $TOMCATDIRREV%{_vardir}/work $TOMCATDIR/work | |
366 | ln -sf $TOMCATDIRREV%{_vardir}/conf $TOMCATDIR/conf | |
367 | ||
368 | # symlinks instead of copies | |
369 | jars="commons-daemon commons-logging-api" | |
370 | for jar in $jars; do | |
371 | jar=$(find-jar $jar) | |
372 | ln -sf $jar $TOMCATDIR/bin | |
373 | done | |
374 | ||
375 | jars="commons-pool-tomcat5 commons-dbcp-tomcat5 mysql-connector-java org.eclipse.jdt.core mail" | |
376 | for jar in $jars; do | |
377 | jar=$(find-jar $jar) | |
378 | ln -sf $jar $TOMCATDIR/lib | |
379 | done | |
380 | ||
381 | install -d $RPM_BUILD_ROOT%{_javadir} | |
382 | mv $TOMCATDIR/lib/jasper*.jar $RPM_BUILD_ROOT%{_javadir} | |
383 | mv $TOMCATDIR/lib/jsp-api.jar $RPM_BUILD_ROOT%{_javadir}/jsp-api-%{jspapiver}.jar | |
384 | mv $TOMCATDIR/lib/servlet-api.jar $RPM_BUILD_ROOT%{_javadir}/servlet-api-%{servletapiver}.jar | |
385 | mv $TOMCATDIR/lib/catalina.jar $RPM_BUILD_ROOT%{_javadir}/tomcat-catalina.jar | |
386 | mv $TOMCATDIR/lib/tomcat-coyote.jar $RPM_BUILD_ROOT%{_javadir}/tomcat-coyote.jar | |
387 | mv $TOMCATDIR/lib/tomcat-util.jar $RPM_BUILD_ROOT%{_javadir}/tomcat-util.jar | |
388 | mv $TOMCATDIR/lib/tomcat-api.jar $RPM_BUILD_ROOT%{_javadir}/tomcat-api.jar | |
389 | ||
390 | ln -s jsp-api-%{jspapiver}.jar $RPM_BUILD_ROOT%{_javadir}/jsp-api.jar | |
391 | ln -s servlet-api-%{servletapiver}.jar $RPM_BUILD_ROOT%{_javadir}/servlet-api.jar | |
392 | ||
393 | # XXX add softlinks jasper-compiler.jar and jasper-runtime for compatibility with tomcat 5.5? | |
394 | ln -sf %{_javadir}/jasper-el.jar $TOMCATDIR/lib | |
395 | ln -sf %{_javadir}/jasper.jar $TOMCATDIR/lib | |
396 | ||
397 | ln -sf %{_javadir}/jsp-api-%{jspapiver}.jar $TOMCATDIR/lib/jsp-api.jar | |
398 | ln -sf %{_javadir}/servlet-api-%{servletapiver}.jar $TOMCATDIR/lib/servlet-api.jar | |
399 | ||
400 | ln -sf %{_javadir}/tomcat-catalina.jar $TOMCATDIR/lib/catalina.jar | |
401 | ln -sf %{_javadir}/tomcat-util.jar $TOMCATDIR/lib/util.jar | |
402 | ln -sf %{_javadir}/tomcat-api.jar $TOMCATDIR/lib/api.jar | |
403 | ||
404 | ln -sf %{_javadir}/tomcat-coyote.jar $TOMCATDIR/lib/tomcat-coyote.jar | |
405 | ||
406 | %if %{with extras} | |
407 | cp -a ../extras/catalina-ws.jar $TOMCATDIR/lib/catalina-ws.jar | |
408 | cp -a ../extras/catalina-jmx-remote.jar $TOMCATDIR/lib/catalina-jmx-remote.jar | |
409 | cp -a ../extras/tomcat-juli-adapters.jar $RPM_BUILD_ROOT%{_javadir}/tomcat-juli-adapters.jar | |
410 | cp -a ../extras/tomcat-juli.jar $RPM_BUILD_ROOT%{_javadir}/tomcat-juli.jar | |
411 | ln -sf %{_javadir}/tomcat-juli-adapters.jar $TOMCATDIR/lib/juli-adapters.jar | |
412 | ln -sf %{_javadir}/tomcat-juli.jar $TOMCATDIR/lib/juli.jar | |
413 | %endif | |
414 | ||
415 | ln -s %{_javadir}/geronimo-spec-jaxrpc.jar $TOMCATDIR/lib/jaxrpc.jar | |
416 | ln -s %{_javadir}/jsr109.jar $TOMCATDIR/lib/jsr109.jar | |
417 | ||
418 | %clean | |
419 | rm -rf $RPM_BUILD_ROOT | |
420 | ||
421 | %pretrans | |
422 | # handle /var/lib/tomcat/logs -> /var/log/tomcat migration | |
423 | if [ -d %{_vardir}/logs ] && [ ! -L %{_vardir}/logs ]; then | |
424 | mv -v %{_vardir}/logs{,.rpmsave} | |
425 | fi | |
426 | ||
427 | # migrate /var/lib/tomcat/conf to /etc/tomcat | |
428 | if [ -d %{_vardir}/conf ] && [ ! -L %{_vardir}/conf ]; then | |
429 | if [ -d %{_sysconfdir}/%{name} ]; then | |
430 | if [ ! -L %{_sysconfdir}/%{name} ]; then | |
431 | mv %{_vardir}/conf/* %{_sysconfdir}/%{name} | |
432 | rmdir %{_vardir}/conf 2>/dev/null || mv -v %{_vardir}/conf{,.rpmsave} | |
433 | else | |
434 | mv -v %{_sysconfdir}/%{name}{,.rpmsave} | |
435 | mv %{_vardir}/conf %{_sysconfdir}/%{name} | |
436 | fi | |
437 | else | |
438 | mv %{_vardir}/conf %{_sysconfdir}/%{name} | |
439 | fi | |
440 | ln -s %{_sysconfdir}/%{name} %{_vardir}/conf | |
441 | fi | |
442 | exit 0 | |
443 | ||
444 | %pre | |
445 | %groupadd -g 234 -r -f tomcat | |
446 | %groupadd -g 237 -r -f servlet | |
447 | %useradd -u 234 -r -d /var/lib/tomcat -s /bin/false -c "Tomcat User" -g tomcat -G servlet tomcat | |
448 | ||
449 | %post | |
450 | /sbin/chkconfig --add tomcat | |
451 | %service tomcat restart | |
452 | ||
453 | %preun | |
454 | if [ "$1" = "0" ]; then | |
455 | %service tomcat stop | |
456 | /sbin/chkconfig --del tomcat | |
457 | fi | |
458 | ||
459 | %postun | |
460 | if [ "$1" = "0" ]; then | |
461 | %userremove tomcat | |
462 | %groupremove tomcat | |
463 | %groupremove servlet | |
464 | fi | |
465 | ||
466 | %files | |
467 | %defattr(644,root,root,755) | |
468 | %doc KEYS RELEASE-NOTES | |
469 | %attr(754,root,root) /etc/rc.d/init.d/tomcat | |
470 | %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/tomcat | |
471 | %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name} | |
472 | ||
473 | # these directory has to be writeable because /admin need to modify config | |
474 | # files and create temporary files | |
475 | %dir %attr(770,root,tomcat) %{_sysconfdir}/%{name} | |
476 | %dir %attr(770,root,tomcat) %{_sysconfdir}/%{name}/Catalina | |
477 | %dir %{_sysconfdir}/%{name}/Catalina/localhost | |
478 | # tomcat config has to be writeable because of tomcat-users.xml file and Catalina dir | |
479 | %config(noreplace) %attr(660,root,tomcat) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/catalina.policy | |
480 | %config(noreplace) %attr(660,root,tomcat) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/*.properties | |
481 | %config(noreplace) %attr(660,root,tomcat) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/*.xml | |
482 | ||
483 | %config(noreplace) %attr(664,root,tomcat) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/Catalina/localhost/ROOT.xml | |
484 | ||
485 | %dir %{_tomcatdir} | |
486 | # symlink | |
487 | %{_tomcatdir}/conf | |
488 | %dir %{_tomcatdir}/bin | |
489 | %{_tomcatdir}/bin/catalina-tasks.xml | |
490 | %attr(755,root,root) %{_tomcatdir}/bin/*.sh | |
491 | %{_tomcatdir}/bin/*.jar | |
492 | %dir %{_tomcatdir}/lib | |
493 | %{_tomcatdir}/lib/annotations-api.jar | |
494 | %{_tomcatdir}/lib/api.jar | |
495 | %{_tomcatdir}/lib/catalina-ant.jar | |
496 | %{_tomcatdir}/lib/catalina-ha.jar | |
497 | %{_tomcatdir}/lib/catalina.jar | |
498 | %{_tomcatdir}/lib/catalina-tribes.jar | |
499 | %{_tomcatdir}/lib/commons-dbcp-tomcat5.jar | |
500 | %{_tomcatdir}/lib/commons-pool-tomcat5.jar | |
501 | %{_tomcatdir}/lib/el-api.jar | |
502 | %{_tomcatdir}/lib/jasper-el.jar | |
503 | %{_tomcatdir}/lib/jasper.jar | |
504 | %{_tomcatdir}/lib/jsp-api.jar | |
505 | %{_tomcatdir}/lib/mail.jar | |
506 | %{_tomcatdir}/lib/mysql-connector-java.jar | |
507 | %{_tomcatdir}/lib/org.eclipse.jdt.core.jar | |
508 | %{_tomcatdir}/lib/servlet-api.jar | |
509 | %{_tomcatdir}/lib/tomcat-jdbc.jar | |
510 | %{_tomcatdir}/lib/tomcat-coyote.jar | |
511 | %{_tomcatdir}/lib/tomcat-dbcp.jar | |
512 | %{_tomcatdir}/lib/tomcat-i18n-es.jar | |
513 | %{_tomcatdir}/lib/tomcat-i18n-fr.jar | |
514 | %{_tomcatdir}/lib/tomcat-i18n-ja.jar | |
515 | %{_tomcatdir}/lib/tomcat-i18n-ru.jar | |
516 | %{_tomcatdir}/lib/tomcat7-websocket.jar | |
517 | %{_tomcatdir}/lib/websocket-api.jar | |
518 | %{_tomcatdir}/lib/util.jar | |
519 | %if %{with extras} | |
520 | %{_tomcatdir}/lib/juli-adapters.jar | |
521 | %{_tomcatdir}/lib/juli.jar | |
522 | %endif | |
523 | ||
524 | %dir %{_tomcatdir}/webapps | |
525 | ||
526 | %{_tomcatdir}/webapps/ROOT | |
527 | ||
528 | %{_tomcatdir}/logs | |
529 | %{_tomcatdir}/work | |
530 | %dir %attr(770,root,tomcat) %{_vardir} | |
531 | %dir %attr(770,root,tomcat) %{_vardir}/work | |
532 | %dir %attr(770,root,tomcat) %{_vardir}/webapps | |
533 | %dir %attr(770,root,tomcat) %{_vardir}/temp | |
534 | %dir %attr(770,root,tomcat) %{_logdir}/tomcat | |
535 | %dir %attr(770,root,root) %{_logdir}/archive/tomcat | |
536 | %{_vardir}/conf | |
537 | %{_vardir}/logs | |
538 | ||
539 | %files webapp-docs | |
540 | %defattr(644,root,root,755) | |
541 | %config(noreplace,missingok) %attr(664,root,tomcat) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/Catalina/localhost/docs.xml | |
542 | %{_tomcatdir}/webapps/docs | |
543 | ||
544 | %files webapp-manager | |
545 | %defattr(644,root,root,755) | |
546 | %config(noreplace,missingok) %attr(664,root,tomcat) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/Catalina/localhost/manager.xml | |
547 | %{_tomcatdir}/webapps/manager | |
548 | ||
549 | %files webapp-host-manager | |
550 | %defattr(644,root,root,755) | |
551 | %config(noreplace,missingok) %attr(664,root,tomcat) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/Catalina/localhost/host-manager.xml | |
552 | %{_tomcatdir}/webapps/host-manager | |
553 | ||
554 | %files webapp-examples | |
555 | %defattr(644,root,root,755) | |
556 | %config(noreplace,missingok) %attr(664,root,tomcat) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/Catalina/localhost/examples.xml | |
557 | %{_tomcatdir}/webapps/examples | |
558 | ||
559 | %files webservices | |
560 | %defattr(644,root,root,755) | |
561 | %{_tomcatdir}/lib/jsr109.jar | |
562 | %{_tomcatdir}/lib/jaxrpc.jar | |
563 | %if %{with extras} | |
564 | %{_tomcatdir}/lib/catalina-ws.jar | |
565 | %endif | |
566 | ||
567 | %if %{with extras} | |
568 | %files jmx | |
569 | %defattr(644,root,root,755) | |
570 | %{_tomcatdir}/lib/catalina-jmx-remote.jar | |
571 | %endif | |
572 | ||
573 | %files -n java-tomcat-jasper | |
574 | %defattr(644,root,root,755) | |
575 | %{_javadir}/jasper-el.jar | |
576 | %{_javadir}/jasper.jar | |
577 | ||
578 | %files -n java-tomcat-catalina | |
579 | %defattr(644,root,root,755) | |
580 | %{_javadir}/tomcat-api.jar | |
581 | %{_javadir}/tomcat-catalina.jar | |
582 | %{_javadir}/tomcat-util.jar | |
583 | %if %{with extras} | |
584 | %{_javadir}/tomcat-juli-adapters.jar | |
585 | %{_javadir}/tomcat-juli.jar | |
586 | %endif | |
587 | ||
588 | %files -n java-tomcat-coyote | |
589 | %defattr(644,root,root,755) | |
590 | %{_javadir}/tomcat-coyote.jar | |
591 | ||
592 | %files -n java-servletapi | |
593 | %defattr(644,root,root,755) | |
594 | %{_javadir}/jsp-api*.jar | |
595 | %{_javadir}/servlet-api*.jar |