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