+# TODO
+# - package -DSTATEDIR=/var/lib/mod_watch ?
%define mod_name watch
-%define apxs /usr/sbin/apxs
+%define apxs /usr/sbin/apxs
Summary: Apache module: Monitoring Interface for MRTG
-Summary(pl): Modu³ do apache: Interfejs do monitorowania za pomoc± MRTG
+Summary(pl.UTF-8): Moduł do apache: Interfejs do monitorowania za pomocą MRTG
Name: apache-mod_%{mod_name}
-Version: 3.13
-Release: 3
+Version: 4.03
+Release: 9
License: BSD
-Group: Networking/Daemons
-Source0: http://www.snert.com/Software/mod_watch/mod_watch%(echo %{version} | sed -e "s#\.##g").tgz
+Group: Networking/Daemons/HTTP
+Source0: http://www.snert.com/Software/download/mod_watch%(echo %{version} | tr -d .).tgz
+# Source0-md5: 06d57713adb935f16596d22256bca913
Source1: %{name}.conf
-Patch0: %{name}-PLD-v6stuff.patch
+Patch0: %{name}-apr-fix.patch
+Patch1: %{name}-shm-fix.patch
+Patch2: %{name}-mutex.patch
+Patch3: %{name}-apache24.patch
URL: http://www.snert.com/Software/mod_watch/
BuildRequires: %{apxs}
-BuildRequires: apache(EAPI)-devel
-Prereq: %{_sbindir}/apxs
-Requires: apache(EAPI)
+BuildRequires: apache-devel >= 2.0.52-2
+BuildRequires: rpm-perlprov
+BuildRequires: rpmbuild(macros) >= 1.268
+Requires: apache(modules-api) = %apache_modules_api
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define _pkglibdir %(%{apxs} -q LIBEXECDIR)
+%define _pkglibdir %(%{apxs} -q LIBEXECDIR 2>/dev/null)
+%define _sysconfdir %(%{apxs} -q SYSCONFDIR 2>/dev/null)/conf.d
%description
This module will watch and collect the bytes, requests, and documents
-in & out per virtual host, file owner, remote-ip address, directory or
+in & out per virtual host, file owner, remote IP address, directory or
location, and the web server as a whole. This module was designed for
use with MRTG, which will make nice graphical representations of the
data, but is general enough that it can be applied to other purposes,
as the raw data is accessed by a URL. This module supports
mod_vhost_alias and mod_gzip.
-%description -l pl
-Ten modu³ kontroluje i zbiera informacje na temat ilo¶ci przes³anych
-bajtów (przychodz±cych i wychodz±cych) wg. serwera wirtualnego, w³a¶ciciela
-plików, zdalnego adresu ip, katalogu lub lokacji oraz serwera jako ca³o¶ci.
-Modu³ zosta³ zaprojektowany do pracy z MRTG, dziêki czemu otrzymamy ³adn±,
-graficzn± reprezentacje danych. Modu³ wspiera mod_vhost_alias oraz mod_gzip.
+%description -l pl.UTF-8
+Ten moduł kontroluje i zbiera informacje na temat ilości przesłanych
+bajtów (przychodzących i wychodzących) wg. serwera wirtualnego,
+właściciela plików, zdalnego adresu IP, katalogu lub lokacji oraz
+serwera jako całości. Moduł został zaprojektowany do pracy z MRTG,
+dzięki czemu otrzymamy ładną, graficzną reprezentacje danych. Moduł
+wspiera mod_vhost_alias oraz mod_gzip.
%prep
-%setup -q -n mod_%{mod_name}-%{version}
-%patch -p0
+%setup -q -n mod_%{mod_name}-4.3
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+%patch3 -p1
%build
-%{__make} build-dynamic
+%{__make} -f Makefile.dso build \
+ APXS=%{apxs}
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_pkglibdir},%{_sysconfdir}/httpd}
+install -d $RPM_BUILD_ROOT{%{_pkglibdir},%{_bindir},%{_sysconfdir}}
-install mod_%{mod_name}.so $RPM_BUILD_ROOT%{_pkglibdir}
-install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd/mod_watch.conf
+install .libs/mod_%{mod_name}.so $RPM_BUILD_ROOT%{_pkglibdir}
+install apache2mrtg.pl mod_watch.pl $RPM_BUILD_ROOT%{_bindir}
+install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/99_mod_watch.conf
-mv mod_watch.html mod_watch_pl.html
-sed -e 's/<!--#/<!--/g' index.shtml > mod_watch.html
+%clean
+rm -rf $RPM_BUILD_ROOT
%post
-%{apxs} -e -a -n %{mod_name} %{_pkglibdir}/mod_%{mod_name}.so 1>&2
-if [ -f %{_sysconfdir}/httpd/httpd.conf ] && \
- ! grep -q "^Include.*mod_watch.conf" %{_sysconfdir}/httpd/httpd.conf; then
- echo Include %{_sysconfdir}/httpd/mod_watch.conf >> %{_sysconfdir}/httpd/httpd.conf
-fi
-if [ -f /var/lock/subsys/httpd ]; then
- /etc/rc.d/init.d/httpd restart 1>&2
-else
- echo "Run \"/etc/rc.d/init.d/httpd start\" to start apache http daemon."
-fi
+%service -q httpd restart
-%preun
+%postun
if [ "$1" = "0" ]; then
- %{apxs} -e -A -n %{mod_name} %{_pkglibdir}/mod_%{mod_name}.so 1>&2
- grep -v "^Include.*mod_watch.conf" %{_sysconfdir}/httpd/httpd.conf > \
- %{_sysconfdir}/httpd/httpd.conf.tmp
- mv -f %{_sysconfdir}/httpd/httpd.conf.tmp /etc/httpd/httpd.conf
- if [ -f /var/lock/subsys/httpd ]; then
- /etc/rc.d/init.d/httpd restart 1>&2
- fi
+ %service -q httpd restart
fi
-%clean
-rm -rf $RPM_BUILD_ROOT
-
%files
%defattr(644,root,root,755)
-%doc CHANGES* *.html
-%attr(755,root,root) %{_pkglibdir}/*
-%{_sysconfdir}/httpd/mod_watch.conf
+%doc CHANGES* *html *.txt Contrib nfields.pl
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*_mod_%{mod_name}.conf
+%attr(755,root,root) %{_pkglibdir}/*.so
+%attr(755,root,root) %{_bindir}/*