]> git.pld-linux.org Git - packages/ApacheJServ.git/blame - ApacheJServ.spec
fix make install overwriting it's own files
[packages/ApacheJServ.git] / ApacheJServ.spec
CommitLineData
57399735 1%define apxs /usr/sbin/apxs1
bdcfd1a4 2%define mod_name jserv
c5a88d2e 3%include /usr/lib/rpm/macros.java
0464d88f 4Summary: Servlet engine with support for the leading web server
f31c9f99 5Summary(pl.UTF-8): Silnik serwletów ze wsparciem dla wiodącego serwera WWW
0464d88f 6Name: ApacheJServ
65efde2f 7Version: 1.1.2
cf132c90 8Release: 10
c5a88d2e 9License: freely distributable & usable
b0e1d361 10Group: Networking/Daemons
20a63901 11Source0: http://java.apache.org/jserv/dist/%{name}-%{version}.tar.gz
3166ca6f 12# Source0-md5: 6d48a1b9fcc5eea4dfebaae29ba5a485
df00301c
ER
13Source2: %{name}.conf
14Source3: %{name}.init
40377a8b 15Source4: %{name}.sysconfig
f74275df 16Source5: runjserv
268055d2 17Patch0: %{name}-enable-secret.patch
57399735 18Patch1: %{name}-ac.patch
fd455b82 19Patch2: %{name}-jre-env.patch
40377a8b 20Patch3: %{name}-config.patch
cf132c90 21Patch4: doc-overwrite.patch
c5a88d2e 22URL: http://archive.apache.org/dist/java/jserv/
57399735 23BuildRequires: apache1-devel >= 1.3.9-8
bdcfd1a4
ER
24BuildRequires: autoconf
25BuildRequires: automake
d352347d 26BuildRequires: gettext-tools
c5a88d2e
ER
27BuildRequires: jdk
28BuildRequires: jpackage-utils
29BuildRequires: rpm-javaprov
30BuildRequires: rpmbuild(macros) >= 1.300
df00301c 31BuildRequires: sed >= 4.0
c5a88d2e 32BuildRequires: servlet = 2.0
bdcfd1a4
ER
33Requires(post,preun): rc-scripts
34Requires(pre): /bin/id
35Requires(pre): /usr/bin/getgid
36Requires(pre): /usr/sbin/groupadd
37Requires(pre): /usr/sbin/useradd
17606e1c 38Requires: jpackage-utils
c5a88d2e 39Requires: jre
bec07bfd 40Requires: rc-scripts >= 0.4.0.19
c5a88d2e 41Requires: servlet = 2.0
bdcfd1a4 42Provides: group(jserv)
bdcfd1a4 43Provides: user(jserv)
c5a88d2e 44Obsoletes: ApacheJServ-doc
bdcfd1a4 45Obsoletes: ApacheJServ-init
40377a8b 46Obsoletes: jserv
450b5f3c 47BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
0464d88f 48
df00301c 49%define _pkglibdir %(%{apxs} -q LIBEXECDIR 2>/dev/null)
df00301c
ER
50%define httpdconf %(%{apxs} -q SYSCONFDIR 2>/dev/null)
51%define _sysconfdir /etc/jserv
0464d88f 52
53%description
20a63901 54Apache JServ is a servlet engine, developed by the Java Apache Project
aad54880 55<http://java.apache.org/>. The Apache JServ servlet engine is written
56in 100pc Java application, and listens for servlet requests using the
57Apache Java protocol (AJp). Typically, these requests will originate
c5a88d2e 58from the mod_jserv Apache module (DSO included).
0464d88f 59
68895dec 60%description -l pl.UTF-8
268055d2
JB
61Apache JServ jest silnikiem serwletowym, rozwijanym przez Java Apache
62Project <http://java.apache.org/>. Silnik serwletowy Apache JServ
68895dec
JR
63został napisany od początku do końca w Javie; nasłuchuje wywołań
64serwletu wykorzystując protokół Apache Java (AJp). Zazwyczaj wywołania
c5a88d2e 65te pochodzą z modułu Apache mod_jservmodule (łącznie z DSO).
9a5e72cc 66
0da805cf
ER
67%package -n apache1-mod_jserv
68Summary: JServ module for Apache
f31c9f99 69Summary(pl.UTF-8): Moduł JServ dla Apache'a
0da805cf 70Group: Networking/Daemons
ea7f12ca 71Requires: apache1-base >= 1.3.33-2
bdcfd1a4 72Obsoletes: ApacheJServ-auto
0da805cf
ER
73
74%description -n apache1-mod_jserv
f92e0060
JB
75JServ module for Apache.
76
68895dec
JR
77%description -n apache1-mod_jserv -l pl.UTF-8
78Moduł JServ dla Apache'a.
0da805cf 79
0464d88f 80%prep
c5a88d2e 81%setup -q
65efde2f 82%patch0 -p0
57399735 83%patch1 -p0
fd455b82 84%patch2 -p1
40377a8b 85%patch3 -p1
cf132c90 86%patch4 -p1
0464d88f 87
c5a88d2e 88# servlet-2.0 is the highest version the jserv code compiles with
a7430cbd
ER
89servlet_jar=$(find-jar servlet-2.0)
90%{__sed} -i -e "
929ed262 91 s|@JSDK_CLASSES@|$servlet_jar|g
c5a88d2e
ER
92 s|@JAVA@|%java|g
93" conf/jserv.properties.in
0464d88f 94
95# do not load module in provided jserv.conf; we do this in httpd.conf
a7430cbd 96%{__sed} -i -e 's|@LOAD_OR_NOT@|#|g' conf/jserv.conf.in
c021981c
ER
97
98# we don't want gcj related deps
a7430cbd
ER
99%{__sed} -i -e '/^SUBDIRS/s,java,,' src/Makefile.am
100%{__sed} -i -e '/^SUBDIRS/s,example,,' Makefile.am
0464d88f 101
a76ad017 102%build
f74275df 103export JAVA_HOME="%{java_home}"
c5a88d2e 104if [ ! -f _autotools.stamp ]; then
c021981c
ER
105 %{__gettextize}
106 %{__libtoolize}
107 %{__aclocal}
108 %{__autoconf}
109 %{__automake}
c5a88d2e 110 touch _autotools.stamp
c021981c
ER
111fi
112
c021981c 113### JSERV
df00301c 114CFLAGS="$(%{apxs} -q CFLAGS) %{rpmcflags}"
82a93744 115dir=$(pwd)
df00301c
ER
116%configure \
117 %{!?debug:--disable-debugging} \
ed122ce4 118 --with-apxs=%{apxs} \
c5a88d2e 119 --with-logdir=/var/log/jserv \
bec07bfd 120 --with-servlets=%{_datadir}/jserv/servlets \
82a93744 121 --with-java-platform=1.4 \
c5a88d2e 122 --with-JSDK=$(find-jar servlet-2.0) \
82a93744
ER
123 %{!?with_gcj:GCJ=javac GCJFLAGS= CLASSPATH=$dir JAVAC_OPT="-source 1.4"} \
124 %{!?with_gcj:--with-javac=%{javac} --with-java=%{java} --with-jdk-home=$JAVA_HOME} \
125 %{?with_gcj:--with-javac=%{_bindir}/gcj --with-jar=%{_bindir}/fastjar} \
57399735 126
c021981c
ER
127%{__make} %{!?with_gcj:OBJEXT=class JAVAC_OPT='-source 1.4'} \
128 -C src/java
d00fe253 129%{__make}
0464d88f 130
131%install
20a63901 132rm -rf $RPM_BUILD_ROOT
f74275df 133install -d $RPM_BUILD_ROOT{/etc/{sysconfig,rc.d/init.d},%{httpdconf}/conf.d,%{_javadir},%{_sbindir}}
5e5f80c3 134
bdcfd1a4 135install %{SOURCE2} $RPM_BUILD_ROOT%{httpdconf}/conf.d/80_mod_jserv.conf
df00301c 136install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/jserv
40377a8b 137install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/jserv
f74275df 138install %{SOURCE5} $RPM_BUILD_ROOT%{_sbindir}
20a63901 139
b0e1d361
PG
140%{__make} install \
141 DESTDIR=$RPM_BUILD_ROOT
0464d88f 142
5e5f80c3 143# we removed java from SUBDIRS, so do it manually
c021981c
ER
144%{__make} install \
145 %{!?with_gcj:OBJEXT=class JAVAC_OPT='-source 1.4'} \
146 -C src/java \
147 DESTDIR=$RPM_BUILD_ROOT
148
bdcfd1a4
ER
149> $RPM_BUILD_ROOT%{httpdconf}/jserv.secret.key
150> $RPM_BUILD_ROOT%{_sysconfdir}/jserv.secret.key
0464d88f 151
bec07bfd
ER
152install -d $RPM_BUILD_ROOT%{_datadir}/jserv/servlets
153
fd455b82
ER
154# duplicate
155rm -f $RPM_BUILD_ROOT%{_sysconfdir}/jserv.conf
bdcfd1a4 156rm -rf $RPM_BUILD_ROOT%{_prefix}/docs
fd455b82 157
0464d88f 158%clean
159rm -rf $RPM_BUILD_ROOT
160
bdcfd1a4
ER
161%pre
162%groupadd -g 154 jserv
163%useradd -u 154 -g jserv -d /etc/jserv -c "JServ User" jserv
0464d88f 164
bdcfd1a4 165%post
bdcfd1a4
ER
166if [ ! -s %{_sysconfdir}/jserv.secret.key ]; then
167 if [ -s %{httpdconf}/jserv.secret.key ]; then
168 cat %{httpdconf}/jserv.secret.key > %{_sysconfdir}/jserv.secret.key
169 else
170 dd if=/dev/urandom bs=1 count=42 2>/dev/null \
171 | (md5sum 2>/dev/null || cat) > %{_sysconfdir}/jserv.secret.key
172 fi
0464d88f 173fi
df00301c 174/sbin/chkconfig --add jserv
bdcfd1a4 175%service jserv restart "Apache JServ Daemon"
0464d88f 176
bdcfd1a4 177%preun
df00301c 178if [ "$1" = 0 ]; then
40377a8b 179 %service jserv stop
df00301c 180 /sbin/chkconfig --del jserv
0464d88f 181fi
182
bdcfd1a4 183%postun
fd455b82
ER
184if [ "$1" = "0" ]; then
185 %userremove jserv
186 %groupremove jserv
187fi
188
bdcfd1a4 189%post -n apache1-mod_jserv
bdcfd1a4
ER
190if [ ! -s %{httpdconf}/jserv.secret.key ]; then
191 if [ -s %{_sysconfdir}/jserv.secret.key ]; then
192 cat %{_sysconfdir}/jserv.secret.key > %{httpdconf}/jserv.secret.key
193 else
194 dd if=/dev/urandom bs=1 count=42 2>/dev/null \
195 | (md5sum 2>/dev/null || cat) > %{httpdconf}/jserv.secret.key
196 fi
197fi
198%service -q apache restart
199
200%postun -n apache1-mod_jserv
201if [ "$1" = "0" ]; then
202 %service -q apache restart
203fi
204
0464d88f 205%files
20a63901 206%defattr(644,root,root,755)
b419ba29 207%doc LICENSE README
c5a88d2e 208%doc index.html docs
bec07bfd 209%dir %attr(750,root,jserv) %{_sysconfdir}
bdcfd1a4
ER
210%attr(640,root,jserv) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/jserv.secret.key
211%attr(640,root,jserv) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/jserv.properties
212%attr(640,root,jserv) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/zone.properties
213%attr(754,root,root) /etc/rc.d/init.d/jserv
82a93744 214%attr(755,root,root) %{_sbindir}/runjserv
40377a8b 215%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/jserv
df00301c 216%{_javadir}/ApacheJServ.jar
bec07bfd
ER
217%dir %{_datadir}/jserv
218%dir %attr(750,root,jserv) %{_datadir}/jserv/servlets
c5a88d2e 219%attr(770,root,jserv) %dir /var/log/jserv
0464d88f 220
0da805cf
ER
221%files -n apache1-mod_jserv
222%defattr(644,root,root,755)
0da805cf 223%attr(755,root,root) %{_pkglibdir}/mod_jserv.so
bdcfd1a4
ER
224%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{httpdconf}/conf.d/80_mod_jserv.conf
225%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{httpdconf}/jserv.secret.key
This page took 0.114872 seconds and 4 git commands to generate.