]> git.pld-linux.org Git - packages/apache-tomcat.git/blame_incremental - apache-tomcat.spec
- don't try to build dbcp connector here
[packages/apache-tomcat.git] / apache-tomcat.spec
... / ...
CommitLineData
1# Conditional build:
2%bcond_without javadoc # skip building javadocs
3#
4Summary: Apache Servlet/JSP Engine, RI for Servlet 2.4/JSP 2.0 API
5Summary(pl.UTF-8): Silnik Servlet/JSP Apache będący wzorcową implementacją API Servlet 2.4/JSP 2.0
6Name: apache-tomcat
7Version: 5.5.23
8Release: 0.1
9License: Apache
10Group: Development/Languages/Java
11Source0: http://www.apache.org/dist/tomcat/tomcat-5/v%{version}/src/%{name}-%{version}-src.tar.gz
12# Source0-md5: 362d1d8b15dc09882440dcab8c592dd7
13Source1: %{name}.init
14Patch0: %{name}-skip-servletapi.patch
15Patch1: %{name}-nsis.patch
16Patch2: %{name}-native.patch
17Patch3: %{name}-skip-jdt.patch
18Patch4: %{name}-no-connectors.patch
19Patch5: %{name}-nowrite.patch
20URL: http://tomcat.apache.org/
21BuildRequires: ant >= 1.5.3
22BuildRequires: ant-trax
23BuildRequires: eclipse-jdt
24BuildRequires: jaas
25BuildRequires: jakarta-commons-beanutils >= 1.7
26BuildRequires: jakarta-commons-collections >= 0:3.1
27BuildRequires: jakarta-commons-collections-tomcat5 >= 0:3.1
28BuildRequires: jakarta-commons-daemon >= 1.0
29BuildRequires: jakarta-commons-dbcp >= 0:1.2.1
30BuildRequires: jakarta-commons-dbcp-tomcat5 >= 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
34BuildRequires: jakarta-commons-httpclient
35BuildRequires: jakarta-commons-launcher >= 0:0.9
36BuildRequires: jakarta-commons-logging >= 0:1.0.4
37BuildRequires: jakarta-commons-modeler >= 2.0
38BuildRequires: jakarta-commons-pool >= 0:1.2
39BuildRequires: jakarta-commons-pool-tomcat5 >= 0:1.2
40BuildRequires: jakarta-regexp >= 0:1.3
41BuildRequires: jakarta-servletapi5
42#BuildRequires: jakarta-struts >= 0:1.2.7
43BuildRequires: jakarta-struts >= 1.0.2
44BuildRequires: javamail >= 0:1.3.1
45BuildRequires: jaxp_parser_impl >= 0:2.7.1
46BuildRequires: jdbc-stdext >= 0:2.0
47BuildRequires: jdk >= 1.5
48BuildRequires: jmx
49BuildRequires: jndi >= 0:1.2.1
50BuildRequires: jpackage-utils
51BuildRequires: jsse >= 0:1.0.3
52BuildRequires: jta >= 0:1.0.1
53BuildRequires: junit >= 0:3.8.1
54BuildRequires: logging-log4j
55#BuildRequires: mx4j >= 0:3.0.1
56BuildRequires: mx4j >= 1.1.1
57BuildRequires: puretls
58BuildRequires: rpmbuild(macros) >= 1.300
59BuildRequires: xerces-j >= 0:2.7.1
60BuildRequires: xml-commons
61#BuildRequires: xml-commons >= 1.3
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
71#Requires: jaf >= 1.0.1
72Requires: jakarta-commons-beanutils
73Requires: jakarta-commons-collections
74Requires: jakarta-commons-digester
75Requires: jakarta-commons-fileupload
76Requires: jakarta-commons-logging
77Requires: jakarta-regexp
78Requires: jakarta-servletapi >= 4
79Requires: javamail >= 1.2
80Requires: jaxp_parser_impl
81Requires: jdbc-stdext >= 2.0
82Requires: jndi >= 1.2.1
83Requires: jre >= 1.2
84Requires: jsse >= 1.0.2
85Requires: jta >= 1.0.1
86Requires: mx4j >= 1.1.1
87Requires: rc-scripts
88Requires: xml-commons
89Provides: group(http)
90Provides: user(http)
91Obsoletes: jakarta-tomcat
92BuildArch: noarch
93BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
94
95%define _tomcatdir %{_datadir}/tomcat
96%define _logdir %{_var}/log
97%define _vardir %{_var}/lib/tomcat
98%define _sysconfdir /etc/tomcat
99
100%description
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.
105
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
111%description -l pl.UTF-8
112Tomcat to kontener serwletowy używany przez oficjalną implementację
113wzorcową technologii Java Servlet i JavaServer Pages. Specyfikacje
114Java Servlet i JavaServer Pages są rozwijane przez Suna zgodnie z Java
115Community Process.
116
117%package doc
118Summary: The Apache Tomcat Servlet/JSP Container documentation
119Summary(pl.UTF-8): Dokumentacja do Tomcata - kontekera Servlet/JSP
120Group: Development/Languages/Java
121Obsoletes: jakarta-tomcat-doc
122
123%description doc
124The Tomcat Servlet/JSP Container documentation.
125
126%description doc -l pl.UTF-8
127Dokumentacja do Tomcata - kontekera Servlet/JSP.
128
129%prep
130%setup -q -n %{name}-%{version}-src
131%patch0 -p1
132%patch1 -p1
133%patch2 -p1
134%patch3 -p1
135%patch4 -p1
136%patch5 -p1
137
138# servletapi built from jakarta-servletapi5.spec
139rm -rf servletapi
140
141# Remove pre-built jars
142find -name '*.jar' | xargs rm -fv
143
144%build
145TOPDIR=$(pwd)
146
147mkdir -p tomcat-deps
148> tomcat-deps/tomcat-dbcp.jar
149
150%if 0
151# build jasper javadocs
152cd jasper
153CLASSPATH=$(build-classpath xml-commons-apis)
154cat > build.properties <<EOF
155ant.jar=$(build-classpath ant)
156servlet-api.jar=$(build-classpath servlet-api)
157jsp-api.jar=$(build-classpath jsp-api)
158tools.jar=%{java_home}/lib/tools.jar
159xercesImpl.jar=$(build-classpath jaxp_parser_impl)
160xmlParserAPIs.jar=$(build-classpath xml-commons-apis)
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)
165commons-el.jar=$(build-classpath commons-el)
166EOF
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
178
179# build tomcat 5.5
180cat > build.properties <<EOF
181commons-beanutils.jar=$(build-classpath commons-beanutils)
182commons-launcher.jar=$(build-classpath commons-launcher)
183commons-daemon.jar=$(build-classpath commons-daemon)
184commons-digester.jar=$(build-classpath commons-digester)
185commons-el.jar=$(build-classpath commons-el)
186commons-logging-api.jar=$(build-classpath commons-logging-api)
187commons-logging.jar=$(build-classpath commons-logging)
188commons-modeler.jar=$(build-classpath commons-modeler)
189xercesImpl.jar=$(build-classpath jaxp_parser_impl)
190xml-apis.jar=$(build-classpath xml-commons-apis)
191jdt.jar=$(build-classpath org.eclipse.jdt.core)
192jasper-compiler-jdt.home=$TOPDIR/tomcat-deps
193commons-httpclient.jar=$(build-classpath commons-httpclient)
194commons-collections.jar=$(build-classpath commons-collections)
195commons-fileupload.jar=$(build-classpath commons-fileupload)
196jmx.jar=$(build-classpath jmx)
197jmx-tools.jar=$(build-classpath jmx)
198junit.jar=$(build-classpath junit)
199struts.jar=$(build-classpath struts)
200jcert.jar=$(build-classpath java/jcert)
201jnet.jar=$(build-classpath java/jnet)
202jsse.jar=$(build-classpath java/jsse)
203jta.jar=$(build-classpath jta)
204puretls.jar=$(build-classpath puretls)
205servlet-api.jar=$(build-classpath servlet-api)
206servletapi.build.notrequired=true
207jsp-api.jar=$(build-classpath jsp-api)
208jspapi.build.notrequired=true
209log4j.jar=$(build-classpath log4j)
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
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
218EOF
219
220%ant \
221 -Dcompile.source=1.4
222
223%install
224rm -rf $RPM_BUILD_ROOT
225cd build/build
226TOMCATDIR=$RPM_BUILD_ROOT%{_tomcatdir}
227CATALINADIR=$RPM_BUILD_ROOT/var/lib/tomcat
228
229# we don't need dos scripts
230rm -f bin/*.bat
231
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} \
240 $RPM_BUILD_ROOT%{_logdir}/tomcat \
241 $RPM_BUILD_ROOT%{_vardir}/work \
242 $RPM_BUILD_ROOT/etc/rc.d/init.d
243
244install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/tomcat
245
246cp -pR conf/* $RPM_BUILD_ROOT%{_sysconfdir}
247cp -HR bin common server $TOMCATDIR
248
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
299
300%clean
301rm -rf $RPM_BUILD_ROOT
302
303%pre
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
306
307%post
308/sbin/chkconfig --add tomcat
309%service tomcat restart
310
311%preun
312if [ "$1" = "0" ]; then
313 %service tomcat stop
314 /sbin/chkconfig --del tomcat
315fi
316
317%postun
318if [ "$1" = "0" ]; then
319 %userremove http
320 %groupremove http
321fi
322
323%files
324%defattr(644,root,root,755)
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
330%dir %{_tomcatdir}
331%dir %{_tomcatdir}/bin
332%{_tomcatdir}/bin/catalina-tasks.xml
333%{_tomcatdir}/bin/jkstatus-tasks.xml
334%{_tomcatdir}/bin/jmxaccessor-tasks.xml
335%attr(755,root,root) %{_tomcatdir}/bin/*.sh
336%{_tomcatdir}/bin/*.jar
337%dir %{_tomcatdir}/common
338%dir %{_tomcatdir}/common/classes
339%dir %{_tomcatdir}/common/endorsed
340%dir %{_tomcatdir}/common/i18n
341%{_tomcatdir}/common/endorsed/*.jar
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
346%{_tomcatdir}/common/lib
347%{_tomcatdir}/conf
348%{_tomcatdir}/logs
349%dir %{_tomcatdir}/server
350%dir %{_tomcatdir}/server/classes
351%{_tomcatdir}/server/lib
352%{_tomcatdir}/server/webapps
353%{_tomcatdir}/webapps
354%{_tomcatdir}/work
355%{_tomcatdir}/shared
356%{_tomcatdir}/temp
357%dir %{_vardir}
358%dir %attr(1730,root,http) %{_vardir}/work
359%dir %attr(1730,root,http) %{_logdir}/tomcat
360
361%if 0
362%files doc
363%defattr(644,root,root,755)
364%doc catalina/docs/*
365%endif
This page took 0.039715 seconds and 4 git commands to generate.