# TODO:
# - cron?
-# - rename to apache-mod_bw (it is not the same as apache1-mod_bandwidth)
-
-%define mod_name bandwidth
+%define mod_name bw
%define apxs /usr/sbin/apxs
Summary: Apache module: bandwidth limits
-Summary(pl): Modu³ do Apache: limity pasma
+Summary(pl.UTF-8): Moduł do Apache: limity pasma
Name: apache-mod_%{mod_name}
-Version: 0.6
-Release: 0.2
-License: Apache
-Group: Networking/Daemons
-Source0: http://www.ivn.cl/apache/bw_mod-%{version}.tgz
-# Source0-md5: 0c92fa6344f487321291a592dbb49856
+Version: 0.92
+Release: 4
+License: Apache v2.0
+Group: Networking/Daemons/HTTP
+Source0: http://ivn.cl/files/source/mod_bw-%{version}.tgz
+# Source0-md5: 90f5e632dad5de8d49dcdb61453dcf97
Source1: %{name}.conf
+Source2: %{name}.tmpfiles
URL: http://www.ivn.cl/apache/
-BuildRequires: apache-devel >= 2.0.0
BuildRequires: %{apxs}
-Requires(post,preun): %{apxs}
-Requires(post,preun): grep
-Requires(preun): fileutils
-Requires: apache >= 2.0.0
+BuildRequires: apache-devel >= 2.0.0
+BuildRequires: rpmbuild(macros) >= 1.268
+BuildRequires: sed >= 4.0
+Requires: apache(modules-api) = %apache_modules_api
Requires: crondaemon
Requires: procps
-Obsoletes: apache-mod_%{mod_name} <= %{version}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define _pkglibdir %(%{apxs} -q LIBEXECDIR)
-%define _sysconfdir %(%{apxs} -q SYSCONFDIR)
+%define _pkglibdir %(%{apxs} -q LIBEXECDIR 2>/dev/null)
+%define _sysconfdir %(%{apxs} -q SYSCONFDIR 2>/dev/null)/conf.d
%description
"Mod_bandwidth" is a module for the Apache webserver that enable the
setting of server-wide or per connection bandwidth limits, based on
the directory, size of files and remote IP/domain.
-%description -l pl
-Modu³ pozwalaj±cy na ograniczanie pasma poprzez serwer Apache bazuj±c
-na katalogu, wielko¶ci plików oraz zdalnym IP/domenie.
+%description -l pl.UTF-8
+Moduł pozwalający na ograniczanie pasma serwera Apache bazując na
+katalogu, wielkości plików lub zdalnym IP/domenie.
%prep
-%setup -q -n bw_mod-%{version}
+%setup -qc
%build
-perl -pi -e 's@include "apr@include "apr/apr@g' bw_mod-%{version}.c
-perl -pi -e 's@^.*apr_buckets.h.*$@@' bw_mod-%{version}.c
-%{apxs} -c bw_mod-%{version}.c
-mv .libs/bw_mod-%{version}.so mod_bandwidth.so
+%{apxs} -c mod_bw.c
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{%{_pkglibdir},%{_sysconfdir}} \
$RPM_BUILD_ROOT%{_var}/run/%{name}/{link,master} \
- $RPM_BUILD_ROOT{/etc/cron.d,%{_sbindir},%{_sysconfdir}/httpd.conf}
+ $RPM_BUILD_ROOT{/etc/cron.d,%{_sbindir}} \
+ $RPM_BUILD_ROOT/usr/lib/tmpfiles.d
-install mod_%{mod_name}.so $RPM_BUILD_ROOT%{_pkglibdir}
-install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf/97_mod_%{mod_name}.conf
+install -p .libs/mod_bw.so $RPM_BUILD_ROOT%{_pkglibdir}/mod_%{mod_name}.so
+cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/97_mod_%{mod_name}.conf
+install %{SOURCE2} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/%{name}.conf
%clean
rm -rf $RPM_BUILD_ROOT
%post
-if [ -f /var/lock/subsys/apache ]; then
- /etc/rc.d/init.d/apache restart 1>&2
-fi
+%service -q httpd restart
-%preun
+%postun
if [ "$1" = "0" ]; then
- umask 027
- if [ -f /var/lock/subsys/apache ]; then
- /etc/rc.d/init.d/apache restart 1>&2
- fi
+ %service -q httpd restart
fi
%files
%defattr(644,root,root,755)
-%doc bw_mod-%{version}.txt LICENSE
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/httpd.conf/*mod_*.conf
+%doc mod_bw.txt LICENSE ChangeLog
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*_mod_%{mod_name}.conf
+%attr(755,root,root) %{_pkglibdir}/*.so
#%config(noreplace) %verify(not size mtime md5) %attr(640,root,root) /etc/cron.d/%{name}
#%attr(755,root,root) %{_sbindir}/*
-%attr(755,root,root) %{_pkglibdir}/*
+/usr/lib/tmpfiles.d/%{name}.conf
%attr(750,http,root) %dir %{_var}/run/%{name}
%attr(750,http,root) %dir %{_var}/run/%{name}/link
%attr(750,http,root) %dir %{_var}/run/%{name}/master