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