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