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