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