# TODO:
# - figure out how to kill mod-mono-server.exe process when apache is restarted
%define mod_name mod_mono
-%define apxs /usr/sbin/apxs
+%define apxs /usr/sbin/apxs
Summary: Mono module for Apache 2
Summary(pl.UTF-8): ModuĊ Mono dla serwera Apache 2
Name: apache-%{mod_name}
-Version: 1.2.6
+Version: 3.12
Release: 1
Epoch: 1
-License: Apache
-Group: Networking/Daemons
-#Source0Download: http://go-mono.com/sources-stable/
-Source0: http://go-mono.com/sources/mod_mono/%{mod_name}-%{version}.tar.bz2
-# Source0-md5: 51768697b8c714789fb57eddc551a569
+License: Apache v2.0
+Group: Networking/Daemons/HTTP
+Source0: http://download.mono-project.com/sources/mod_mono/%{mod_name}-%{version}.tar.gz
+# Source0-md5: bb99d807ce32040370360fae4996f967
+Patch0: apache-mod_mono-ac.patch
URL: http://www.mono-project.com/
BuildRequires: %{apxs}
BuildRequires: apache-devel >= 2.0.52-2
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: libtool
-BuildRequires: mono-csharp >= 1.0
+BuildRequires: mono-csharp >= 3.12
BuildRequires: pkgconfig
Requires: apache(modules-api) = %apache_modules_api
-Requires: mono-csharp >= 1.0
-Requires: xsp
+Requires: mono-csharp >= 3.12
+Requires: xsp >= 2.10
Obsoletes: mod_mono
ExcludeArch: i386
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _httpdir /home/services/httpd
-%define _pkglibdir %(%{apxs} -q LIBEXECDIR 2>/dev/null)
-%define _sysconfdir %(%{apxs} -q SYSCONFDIR 2>/dev/null)
+%define apacheconfdir %(%{apxs} -q SYSCONFDIR 2>/dev/null)/conf.d
+%define apachelibdir %(%{apxs} -q LIBEXECDIR 2>/dev/null)
%description
This is an experimental module that allows you to run ASP.NET pages on
%prep
%setup -q -n %{mod_name}-%{version}
+%patch0 -p1
%build
# Build Apache Module
%{__libtoolize}
%{__aclocal}
-%{__autoconf}
+%{__autoconf} -I m4
%{__automake}
%configure \
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_sysconfdir}/httpd.conf,%{_pkglibdir},%{_mandir}/man8}
+install -d $RPM_BUILD_ROOT{%{apacheconfdir},%{apachelibdir},%{_mandir}/man8}
-install src/.libs/%{mod_name}.so $RPM_BUILD_ROOT%{_pkglibdir}
+install src/.libs/%{mod_name}.so $RPM_BUILD_ROOT%{apachelibdir}
install man/%{mod_name}.8 $RPM_BUILD_ROOT%{_mandir}/man8
-cat > $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf/70_mod_%{mod_name}.conf <<EOF
+cat > $RPM_BUILD_ROOT%{apacheconfdir}/70_mod_%{mod_name}.conf <<'EOF'
LoadModule mono_module modules/%{mod_name}.so
MonoApplications "/asp_net:%{_httpdir}/asp_net"
Alias /asp_net "%{_httpdir}/asp_net"
%clean
rm -rf $RPM_BUILD_ROOT
+%post
+%service -q httpd restart
+
+%postun
+if [ "$1" = "0" ]; then
+ %service -q httpd restart
+fi
+
%files
%defattr(644,root,root,755)
%doc ChangeLog INSTALL NEWS README
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf/*_mod_%{mod_name}.conf
-%attr(755,root,root) %{_pkglibdir}/mod_mono.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{apacheconfdir}/*_mod_%{mod_name}.conf
+%attr(755,root,root) %{apachelibdir}/mod_mono.so
%{_mandir}/man8/mod_mono.8*