]>
Commit | Line | Data |
---|---|---|
eca62e60 | 1 | # Conditional build: |
eca62e60 ER |
2 | %bcond_without javadoc # skip building javadocs |
3 | # | |
4 | Summary: Apache Servlet/JSP Engine, RI for Servlet 2.4/JSP 2.0 API | |
f045ab88 | 5 | Summary(pl.UTF-8): Silnik Servlet/JSP Apache będący wzorcową implementacją API Servlet 2.4/JSP 2.0 |
51bcbcd2 | 6 | Name: apache-tomcat |
eca62e60 ER |
7 | Version: 5.5.23 |
8 | Release: 0.1 | |
802a649b | 9 | License: Apache |
623f0978 | 10 | Group: Development/Languages/Java |
51bcbcd2 | 11 | Source0: http://www.apache.org/dist/tomcat/tomcat-5/v%{version}/src/%{name}-%{version}-src.tar.gz |
eca62e60 | 12 | # Source0-md5: 362d1d8b15dc09882440dcab8c592dd7 |
d61c5134 | 13 | Source1: jakarta-tomcat.init |
51bcbcd2 ER |
14 | Patch0: %{name}-skip-servletapi.patch |
15 | Patch1: %{name}-nsis.patch | |
16 | Patch2: %{name}-native.patch | |
17 | Patch3: %{name}-skip-jdt.patch | |
d61c5134 | 18 | Patch4: %{name}-no-connectors.patch |
aef723ef | 19 | URL: http://tomcat.apache.org/ |
498e9275 | 20 | BuildRequires: ant >= 1.5.3 |
7ea1b4e7 ER |
21 | BuildRequires: ant-trax |
22 | BuildRequires: eclipse-jdt | |
6c0937ca | 23 | BuildRequires: jaas |
ac4a959f ER |
24 | BuildRequires: jakarta-commons-beanutils >= 1.7 |
25 | BuildRequires: jakarta-commons-collections >= 0:3.1 | |
26 | BuildRequires: jakarta-commons-collections-source >= 0:3.1 | |
27 | BuildRequires: jakarta-commons-daemon >= 1.0 | |
28 | BuildRequires: jakarta-commons-dbcp >= 0:1.2.1 | |
29 | BuildRequires: jakarta-commons-dbcp-source >= 0:1.2.1 | |
30 | BuildRequires: jakarta-commons-digester >= 0:1.7 | |
31 | BuildRequires: jakarta-commons-el >= 0:1.0 | |
32 | BuildRequires: jakarta-commons-fileupload >= 0:1.0 | |
7bfc9a0d | 33 | BuildRequires: jakarta-commons-httpclient |
ac4a959f ER |
34 | BuildRequires: jakarta-commons-launcher >= 0:0.9 |
35 | BuildRequires: jakarta-commons-logging >= 0:1.0.4 | |
7bfc9a0d | 36 | BuildRequires: jakarta-commons-modeler >= 2.0 |
ac4a959f ER |
37 | BuildRequires: jakarta-commons-pool >= 0:1.2 |
38 | BuildRequires: jakarta-commons-pool-source >= 0:1.2 | |
39 | BuildRequires: jakarta-regexp >= 0:1.3 | |
7bfc9a0d | 40 | BuildRequires: jakarta-servletapi5 |
ac4a959f | 41 | #BuildRequires: jakarta-struts >= 0:1.2.7 |
834c4a58 | 42 | BuildRequires: jakarta-struts >= 1.0.2 |
ac4a959f ER |
43 | BuildRequires: javamail >= 0:1.3.1 |
44 | BuildRequires: jaxp_parser_impl >= 0:2.7.1 | |
45 | BuildRequires: jdbc-stdext >= 0:2.0 | |
7ea1b4e7 | 46 | BuildRequires: jdk >= 1.5 |
a97a4eb2 | 47 | BuildRequires: jmx |
ac4a959f | 48 | BuildRequires: jndi >= 0:1.2.1 |
7ea1b4e7 | 49 | BuildRequires: jpackage-utils |
ac4a959f ER |
50 | BuildRequires: jsse >= 0:1.0.3 |
51 | BuildRequires: jta >= 0:1.0.1 | |
52 | BuildRequires: junit >= 0:3.8.1 | |
7ea1b4e7 | 53 | BuildRequires: logging-log4j |
ac4a959f | 54 | #BuildRequires: mx4j >= 0:3.0.1 |
7ea1b4e7 ER |
55 | BuildRequires: mx4j >= 1.1.1 |
56 | BuildRequires: puretls | |
57 | BuildRequires: rpmbuild(macros) >= 1.300 | |
ac4a959f | 58 | BuildRequires: xerces-j >= 0:2.7.1 |
f271c61b | 59 | BuildRequires: xml-commons |
ac4a959f | 60 | #BuildRequires: xml-commons >= 1.3 |
8129909e ER |
61 | Requires(post,postun): /sbin/ldconfig |
62 | Requires(post,preun): /sbin/chkconfig | |
63 | Requires(postun): /usr/sbin/groupdel | |
64 | Requires(postun): /usr/sbin/userdel | |
65 | Requires(pre): /bin/id | |
66 | Requires(pre): /usr/bin/getgid | |
67 | Requires(pre): /usr/sbin/groupadd | |
68 | Requires(pre): /usr/sbin/useradd | |
69 | Requires: jaas | |
7ea1b4e7 | 70 | #Requires: jaf >= 1.0.1 |
cb354147 | 71 | Requires: jakarta-commons-beanutils |
8129909e | 72 | Requires: jakarta-commons-collections |
cb354147 | 73 | Requires: jakarta-commons-digester |
3389dfb4 | 74 | Requires: jakarta-commons-fileupload |
8129909e | 75 | Requires: jakarta-commons-logging |
a0446376 | 76 | Requires: jakarta-regexp |
8129909e ER |
77 | Requires: jakarta-servletapi >= 4 |
78 | Requires: javamail >= 1.2 | |
79 | Requires: jaxp_parser_impl | |
a0446376 | 80 | Requires: jdbc-stdext >= 2.0 |
a0446376 | 81 | Requires: jndi >= 1.2.1 |
8129909e | 82 | Requires: jre >= 1.2 |
a0446376 JB |
83 | Requires: jsse >= 1.0.2 |
84 | Requires: jta >= 1.0.1 | |
8129909e | 85 | Requires: mx4j >= 1.1.1 |
eca62e60 | 86 | Requires: rc-scripts |
f271c61b | 87 | Requires: xml-commons |
834c4a58 | 88 | Provides: group(http) |
89 | Provides: user(http) | |
51bcbcd2 | 90 | Obsoletes: jakarta-tomcat |
623f0978 | 91 | BuildArch: noarch |
92 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
93 | ||
a97a4eb2 | 94 | %define _tomcatdir %{_datadir}/tomcat |
623f0978 | 95 | %define _logdir %{_var}/log |
a0446376 | 96 | %define _vardir %{_var}/lib/tomcat |
a97a4eb2 | 97 | %define _sysconfdir /etc/tomcat |
623f0978 | 98 | |
99 | %description | |
eca62e60 ER |
100 | Tomcat is the servlet container that is used in the official Reference |
101 | Implementation for the Java Servlet and JavaServer Pages technologies. | |
102 | The Java Servlet and JavaServer Pages specifications are developed by | |
103 | Sun under the Java Community Process. | |
623f0978 | 104 | |
eca62e60 ER |
105 | Tomcat is developed in an open and participatory environment and |
106 | released under the Apache Software License. Tomcat is intended to be a | |
107 | collaboration of the best-of-breed developers from around the world. | |
108 | We invite you to participate in this open development project. | |
109 | ||
f045ab88 JB |
110 | %description -l pl.UTF-8 |
111 | Tomcat to kontener serwletowy używany przez oficjalną implementację | |
112 | wzorcową technologii Java Servlet i JavaServer Pages. Specyfikacje | |
51bcbcd2 ER |
113 | Java Servlet i JavaServer Pages są rozwijane przez Suna zgodnie z Java |
114 | Community Process. | |
623f0978 | 115 | |
116 | %package doc | |
51bcbcd2 | 117 | Summary: The Apache Tomcat Servlet/JSP Container documentation |
f045ab88 | 118 | Summary(pl.UTF-8): Dokumentacja do Tomcata - kontekera Servlet/JSP |
623f0978 | 119 | Group: Development/Languages/Java |
51bcbcd2 | 120 | Obsoletes: jakarta-tomcat-doc |
623f0978 | 121 | |
122 | %description doc | |
e1f70dd8 JB |
123 | The Tomcat Servlet/JSP Container documentation. |
124 | ||
f045ab88 JB |
125 | %description doc -l pl.UTF-8 |
126 | Dokumentacja do Tomcata - kontekera Servlet/JSP. | |
623f0978 | 127 | |
128 | %prep | |
51bcbcd2 | 129 | %setup -q -n %{name}-%{version}-src |
7bfc9a0d ER |
130 | %patch0 -p1 |
131 | %patch1 -p1 | |
132 | %patch2 -p1 | |
133 | %patch3 -p1 | |
d61c5134 | 134 | %patch4 -p1 |
7bfc9a0d | 135 | |
d61c5134 | 136 | # servletapi built from jakarta-servletapi5.spec |
7bfc9a0d | 137 | rm -rf servletapi |
eca62e60 ER |
138 | |
139 | # Remove pre-built jars | |
140 | find -name '*.jar' | xargs rm -fv | |
623f0978 | 141 | |
142 | %build | |
eca62e60 ER |
143 | TOPDIR=$(pwd) |
144 | ||
7bfc9a0d ER |
145 | mkdir -p tomcat-deps |
146 | > tomcat-deps/tomcat-dbcp.jar | |
eca62e60 | 147 | |
7bfc9a0d ER |
148 | %if 0 |
149 | # build jasper javadocs | |
150 | cd jasper | |
151 | CLASSPATH=$(build-classpath xml-commons-apis) | |
eca62e60 ER |
152 | cat > build.properties <<EOF |
153 | ant.jar=$(build-classpath ant) | |
7bfc9a0d ER |
154 | servlet-api.jar=$(build-classpath servlet-api) |
155 | jsp-api.jar=$(build-classpath jsp-api) | |
eca62e60 | 156 | tools.jar=%{java_home}/lib/tools.jar |
eca62e60 ER |
157 | xercesImpl.jar=$(build-classpath jaxp_parser_impl) |
158 | xmlParserAPIs.jar=$(build-classpath xml-commons-apis) | |
eca62e60 ER |
159 | commons-collections.jar=$(build-classpath commons-collections) |
160 | commons-logging.jar=$(build-classpath commons-logging) | |
161 | commons-daemon.jar=$(build-classpath commons-daemon) | |
162 | junit.jar=$(build-classpath junit) | |
7bfc9a0d | 163 | commons-el.jar=$(build-classpath commons-el) |
eca62e60 | 164 | EOF |
7bfc9a0d ER |
165 | # building jasper needs eclipse classes |
166 | #%ant dist | |
167 | ||
168 | %if %{with javadoc} | |
169 | %ant javadoc \ | |
170 | -Dcompile.source=1.4 \ | |
171 | -Dbuild.compiler=modern \ | |
172 | ||
173 | %endif | |
174 | cd - | |
175 | %endif | |
eca62e60 ER |
176 | |
177 | # build tomcat 5.5 | |
7bfc9a0d | 178 | cat > build.properties <<EOF |
eca62e60 | 179 | commons-beanutils.jar=$(build-classpath commons-beanutils) |
7bfc9a0d ER |
180 | commons-launcher.jar=$(build-classpath commons-launcher) |
181 | commons-daemon.jar=$(build-classpath commons-daemon) | |
eca62e60 ER |
182 | commons-digester.jar=$(build-classpath commons-digester) |
183 | commons-el.jar=$(build-classpath commons-el) | |
eca62e60 | 184 | commons-logging-api.jar=$(build-classpath commons-logging-api) |
7bfc9a0d | 185 | commons-logging.jar=$(build-classpath commons-logging) |
eca62e60 | 186 | commons-modeler.jar=$(build-classpath commons-modeler) |
7bfc9a0d ER |
187 | xercesImpl.jar=$(build-classpath jaxp_parser_impl) |
188 | xml-apis.jar=$(build-classpath xml-commons-apis) | |
c2e39bad ER |
189 | jdt.jar=$(build-classpath org.eclipse.jdt.core) |
190 | jasper-compiler-jdt.home=$TOPDIR/tomcat-deps | |
7bfc9a0d ER |
191 | commons-httpclient.jar=$(build-classpath commons-httpclient) |
192 | commons-collections.jar=$(build-classpath commons-collections) | |
193 | commons-fileupload.jar=$(build-classpath commons-fileupload) | |
a97a4eb2 ER |
194 | jmx.jar=$(build-classpath jmx) |
195 | jmx-tools.jar=$(build-classpath jmx) | |
eca62e60 | 196 | junit.jar=$(build-classpath junit) |
7bfc9a0d | 197 | struts.jar=$(build-classpath struts) |
7bfc9a0d ER |
198 | jcert.jar=$(build-classpath java/jcert) |
199 | jnet.jar=$(build-classpath java/jnet) | |
200 | jsse.jar=$(build-classpath java/jsse) | |
201 | jta.jar=$(build-classpath jta) | |
7bfc9a0d | 202 | puretls.jar=$(build-classpath puretls) |
7bfc9a0d | 203 | servlet-api.jar=$(build-classpath servlet-api) |
7bfc9a0d | 204 | servletapi.build.notrequired=true |
7bfc9a0d ER |
205 | jsp-api.jar=$(build-classpath jsp-api) |
206 | jspapi.build.notrequired=true | |
7ea1b4e7 | 207 | log4j.jar=$(build-classpath log4j) |
7bfc9a0d ER |
208 | # source is needed because source is copied modified and recompiled as tomcat jar |
209 | # see <target name="-build-tomcat-dbcp"> in build/build.xml | |
7bfc9a0d ER |
210 | commons-collections.home=%{_prefix}/src/jakarta-commons-collections-3.1 |
211 | commons-pool.home=%{_prefix}/src/jakarta-commons-pool-1.3 | |
212 | commons-dbcp.home=%{_prefix}/src/jakarta-commons-dbcp-1.2.1 | |
213 | tomcat-dbcp.home=$TOPDIR/tomcat-deps | |
214 | # err, it compiles three above and then appends to the jar, so the file should exist | |
215 | tomcat-dbcp.jar=$TOPDIR/tomcat-deps/tomcat-dbcp.jar | |
eca62e60 ER |
216 | EOF |
217 | ||
d61c5134 ER |
218 | %ant \ |
219 | -Dcompile.source=1.4 | |
eca62e60 | 220 | |
623f0978 | 221 | %install |
222 | rm -rf $RPM_BUILD_ROOT | |
a97a4eb2 ER |
223 | cd build/build |
224 | TOMCATDIR=$RPM_BUILD_ROOT%{_tomcatdir} | |
225 | CATALINADIR=$RPM_BUILD_ROOT/var/lib/tomcat | |
623f0978 | 226 | |
a97a4eb2 ER |
227 | # we don't need dos scripts |
228 | rm -f bin/*.bat | |
f271c61b | 229 | |
a97a4eb2 ER |
230 | randpw=$(echo $RANDOM$$ | md5sum | cut -c 1-15) |
231 | sed -i -e s:SHUTDOWN:${randpw}: conf/{server,server-minimal}.xml | |
232 | ||
233 | install -d $TOMCATDIR/bin \ | |
234 | $TOMCATDIR/common/{lib,classes,endorsed} \ | |
235 | $TOMCATDIR/server/{lib,classes} \ | |
236 | $TOMCATDIR/webapps \ | |
237 | $RPM_BUILD_ROOT%{_sysconfdir} \ | |
a0446376 JB |
238 | $RPM_BUILD_ROOT%{_logdir}/tomcat \ |
239 | $RPM_BUILD_ROOT%{_vardir}/work \ | |
240 | $RPM_BUILD_ROOT/etc/rc.d/init.d | |
389e46b9 | 241 | |
a97a4eb2 | 242 | install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/tomcat |
623f0978 | 243 | |
a97a4eb2 ER |
244 | cp -pR conf/* $RPM_BUILD_ROOT%{_sysconfdir} |
245 | cp -HR bin common server $TOMCATDIR | |
eca62e60 | 246 | |
a97a4eb2 ER |
247 | cp -rf server/webapps $TOMCATDIR/server |
248 | cp -rf webapps $TOMCATDIR | |
249 | cp -rf shared $TOMCATDIR | |
250 | cp -rf temp $TOMCATDIR | |
251 | ||
252 | ln -sf %{_logdir}/tomcat $TOMCATDIR/logs | |
253 | ln -sf %{_vardir}/work $TOMCATDIR/work | |
254 | ln -sf %{_sysconfdir} $TOMCATDIR/conf | |
255 | ||
256 | # symlinks instead of copies | |
257 | ln -sf %{_javadir}/commons-daemon.jar $TOMCATDIR/bin | |
258 | ||
259 | ln -sf %{_javadir}/activation.jar $TOMCATDIR/common/lib | |
260 | ln -sf %{_javadir}/ant.jar $TOMCATDIR/common/lib | |
261 | ln -sf %{_javadir}/commons-collections.jar $TOMCATDIR/common/lib | |
262 | ln -sf %{_javadir}/commons-dbcp.jar $TOMCATDIR/common/lib | |
263 | ln -sf %{_javadir}/commons-logging-api.jar $TOMCATDIR/common/lib | |
264 | ln -sf %{_javadir}/commons-pool.jar $TOMCATDIR/common/lib | |
265 | ln -sf %{_javadir}/servlet.jar $TOMCATDIR/common/lib | |
266 | ln -sf %{_javadir}/servlet.jar $TOMCATDIR/common/lib/servletapi4.jar | |
267 | ln -sf %{_javadir}/jdbc-stdext.jar $TOMCATDIR/common/lib/jdbc2_0-stdext.jar | |
268 | ln -sf %{_javadir}/jdbc-stdext.jar $TOMCATDIR/common/lib/jdbc-stdext-2.0.jar | |
269 | ln -sf %{_javadir}/jmxri.jar $TOMCATDIR/common/lib | |
270 | ln -sf %{_javadir}/jndi.jar $TOMCATDIR/common/lib | |
271 | ln -sf %{_javadir}/jta.jar $TOMCATDIR/common/lib | |
272 | ln -sf %{_javadir}/mail.jar $TOMCATDIR/common/lib | |
273 | ln -sf %{_javadir}/jsse.jar $TOMCATDIR/common/lib | |
274 | ln -sf %{_javadir}/junit.jar $TOMCATDIR/common/lib | |
275 | ||
276 | ln -sf %{_javadir}/mailapi.jar $TOMCATDIR/common/lib | |
277 | ln -sf %{_javadir}/pop3.jar $TOMCATDIR/common/lib | |
278 | ln -sf %{_javadir}/pop3.jar $TOMCATDIR/common/lib/pop.jar | |
279 | ln -sf %{_javadir}/smtp.jar $TOMCATDIR/common/lib | |
280 | ln -sf %{_javadir}/imap.jar $TOMCATDIR/common/lib | |
281 | ||
282 | ln -sf %{_javadir}/commons-beanutils.jar $TOMCATDIR/server/lib | |
283 | ln -sf %{_javadir}/commons-digester.jar $TOMCATDIR/server/lib | |
284 | ln -sf %{_javadir}/commons-fileupload.jar $TOMCATDIR/server/lib | |
285 | ln -sf %{_javadir}/commons-logging.jar $TOMCATDIR/server/lib | |
286 | ln -sf %{_javadir}/commons-modeler.jar $TOMCATDIR/server/lib | |
287 | ln -sf %{_javadir}/jaas.jar $TOMCATDIR/server/lib/jaas.jar | |
288 | ln -sf %{_javadir}/mx4j-jmx.jar $TOMCATDIR/server/lib | |
289 | ln -sf %{_javadir}/regexp.jar $TOMCATDIR/server/lib | |
290 | ln -sf %{_javadir}/regexp.jar $TOMCATDIR/server/lib/jakarta-regexp-1.2.jar | |
291 | ln -sf %{_javadir}/regexp.jar $TOMCATDIR/server/lib/regexp-1.2.jar | |
292 | ||
293 | ln -sf %{_javadir}/jaxp_parser_impl.jar $TOMCATDIR/common/endorsed | |
294 | ln -sf %{_javadir}/xml-commons-apis.jar $TOMCATDIR/common/endorsed | |
295 | ||
296 | ln -sf %{_javadir}/struts.jar $TOMCATDIR/server/webapps/admin/WEB-INF/lib | |
a0446376 | 297 | |
623f0978 | 298 | %clean |
299 | rm -rf $RPM_BUILD_ROOT | |
300 | ||
2b56d949 | 301 | %pre |
37375245 ER |
302 | %groupadd -g 51 -r -f http |
303 | %useradd -u 51 -r -d /home/services/httpd -s /bin/false -c "HTTP User" -g http http | |
2b56d949 | 304 | |
305 | %post | |
306 | /sbin/chkconfig --add tomcat | |
6c0937ca | 307 | %service tomcat restart |
2b56d949 | 308 | |
309 | %preun | |
310 | if [ "$1" = "0" ]; then | |
6c0937ca | 311 | %service tomcat stop |
2b56d949 | 312 | /sbin/chkconfig --del tomcat |
313 | fi | |
314 | ||
315 | %postun | |
316 | if [ "$1" = "0" ]; then | |
834c4a58 | 317 | %userremove http |
318 | %groupremove http | |
2b56d949 | 319 | fi |
320 | ||
623f0978 | 321 | %files |
322 | %defattr(644,root,root,755) | |
a97a4eb2 ER |
323 | %doc build/{RELEASE-NOTES,RUNNING.txt} |
324 | # tomcat wants to regenerate tomcat-users.xml | |
325 | %dir %attr(775,root,http) %{_sysconfdir} | |
326 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/* | |
327 | %attr(754,root,root) /etc/rc.d/init.d/tomcat | |
a0446376 JB |
328 | %dir %{_tomcatdir} |
329 | %dir %{_tomcatdir}/bin | |
a97a4eb2 ER |
330 | %{_tomcatdir}/bin/catalina-tasks.xml |
331 | %{_tomcatdir}/bin/jkstatus-tasks.xml | |
332 | %{_tomcatdir}/bin/jmxaccessor-tasks.xml | |
389e46b9 | 333 | %attr(755,root,root) %{_tomcatdir}/bin/*.sh |
389e46b9 | 334 | %{_tomcatdir}/bin/*.jar |
a0446376 JB |
335 | %dir %{_tomcatdir}/common |
336 | %dir %{_tomcatdir}/common/classes | |
2b56d949 | 337 | %dir %{_tomcatdir}/common/endorsed |
a97a4eb2 | 338 | %dir %{_tomcatdir}/common/i18n |
f271c61b | 339 | %{_tomcatdir}/common/endorsed/*.jar |
a97a4eb2 ER |
340 | %{_tomcatdir}/common/i18n/tomcat-i18n-en.jar |
341 | %lang(es) %{_tomcatdir}/common/i18n/tomcat-i18n-es.jar | |
342 | %lang(fr) %{_tomcatdir}/common/i18n/tomcat-i18n-fr.jar | |
343 | %lang(ja) %{_tomcatdir}/common/i18n/tomcat-i18n-ja.jar | |
623f0978 | 344 | %{_tomcatdir}/common/lib |
345 | %{_tomcatdir}/conf | |
623f0978 | 346 | %{_tomcatdir}/logs |
a0446376 JB |
347 | %dir %{_tomcatdir}/server |
348 | %dir %{_tomcatdir}/server/classes | |
623f0978 | 349 | %{_tomcatdir}/server/lib |
2b56d949 | 350 | %{_tomcatdir}/server/webapps |
a0446376 JB |
351 | %{_tomcatdir}/webapps |
352 | %{_tomcatdir}/work | |
2b56d949 | 353 | %{_tomcatdir}/shared |
354 | %{_tomcatdir}/temp | |
a0446376 | 355 | %dir %{_vardir} |
a97a4eb2 ER |
356 | %dir %attr(1730,root,http) %{_vardir}/work |
357 | %dir %attr(1730,root,http) %{_logdir}/tomcat | |
623f0978 | 358 | |
a97a4eb2 | 359 | %if 0 |
623f0978 | 360 | %files doc |
ff740076 | 361 | %defattr(644,root,root,755) |
623f0978 | 362 | %doc catalina/docs/* |
a97a4eb2 | 363 | %endif |