-%define mod_name mod_mono
-%define xsp_version 1.0
-
+# 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
Summary: Mono module for Apache 2
-Summary(pl): Modu³ Mono dla serwera Apache 2
-Name: apache-mod_mono
-Version: 1.0
-Release: 0.9
+Summary(pl.UTF-8): Moduł Mono dla serwera Apache 2
+Name: apache-%{mod_name}
+Version: 1.2.4
+Release: 1
Epoch: 1
License: Apache
Group: Networking/Daemons
-Source0: http://mono2.ximian.com/archive/1.0/%{mod_name}-%{version}.tar.gz
-# Source0-md5: 154720f6286105d513d1688f4a6e2b29
-Source1: http://mono2.ximian.com/archive/1.0/xsp-%{xsp_version}.tar.gz
-# Source1-md5: cd681f02d0f93774ba126d77fd377f4b
+#Source0Download: http://go-mono.com/sources-stable/
+Source0: http://www.go-mono.com/sources/mod_mono/%{mod_name}-%{version}.tar.bz2
+# Source0-md5: 17b5278a22b3502d3b9499943cf02273
Patch0: %{name}-apu-config.patch
URL: http://www.mono-project.com/
-BuildRequires: apache-devel >= 2.0
+BuildRequires: %{apxs}
+BuildRequires: apache-devel >= 2.0.52-2
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: libtool
-BuildRequires: mono
-Requires: apache >= 2.0
+BuildRequires: mono-csharp >= 1.0
+BuildRequires: pkgconfig
+Requires: apache(modules-api) = %apache_modules_api
+Requires: mono-csharp >= 1.0
+Requires: xsp
Obsoletes: mod_mono
+ExcludeArch: i386
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define apxs %{_sbindir}/apxs
%define _httpdir /home/services/httpd
-%define _pkglibdir %(%{apxs} -q LIBEXECDIR)
+%define _pkglibdir %(%{apxs} -q LIBEXECDIR 2>/dev/null)
+%define _sysconfdir %(%{apxs} -q SYSCONFDIR 2>/dev/null)
%description
This is an experimental module that allows you to run ASP.NET pages on
Unix with Apache and Mono.
-%description -l pl
-Ten eksperymentalny modu³ umo¿liwia uruchamianie stron ASP.NET na
+%description -l pl.UTF-8
+Ten eksperymentalny moduł umożliwia uruchamianie stron ASP.NET na
Uniksie z serwerem Apache i Mono.
%prep
-%setup -q -n %{mod_name}-%{version} -a 1
+%setup -q -n %{mod_name}-%{version}
%patch0 -p1
%build
-rm -rf $RPM_BUILD_ROOT
-# Build sample ASP.NET pages from xsp distribution
-cd xsp-%{xsp_version}
-%{__aclocal}
-%{__autoconf}
-%{__automake}
-%configure \
- --with-apxs=%{apxs}
-
-%{__make} \
- DESTDIR=$RPM_BUILD_ROOT
-
-%{__make} install \
- DESTDIR=$RPM_BUILD_ROOT
-cd ..
-
# Build Apache Module
%{__libtoolize}
%{__aclocal}
%configure \
--with-apxs=%{apxs} \
- --with-apr-config=%{_bindir}/apr-config \
- --with-apu-config=%{_bindir}/apu-config
-
+ --with-apr-config=%{_bindir}/apr-1-config \
+ --with-apu-config=%{_bindir}/apu-1-config \
+ CFLAGS="%{rpmcflags} -D_GNU_SOURCE -D_LARGEFILE64_SOURCE"
+
%{__make} \
DESTDIR=$RPM_BUILD_ROOT
-# Build Mono DLL
-%{__make} -C src -f makedll.mak
-
%install
-install -d $RPM_BUILD_ROOT{%{_sysconfdir}/httpd/httpd.conf,%{_pkglibdir},%{_examplesdir}/%{name}-%{version}} \
- $RPM_BUILD_ROOT%{_httpdir}/{.wapi,mono}
+rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT{%{_sysconfdir}/httpd.conf,%{_pkglibdir},%{_mandir}/man8}
-install src/.libs/libmod_mono.so $RPM_BUILD_ROOT%{_pkglibdir}/mod_mono.so
-install src/ModMono.dll $RPM_BUILD_ROOT%{_libdir}
-mv -f $RPM_BUILD_ROOT%{_docdir}/xsp/test $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
-mv xsp-1.0/INSTALL xsp-1.0/INSTALL-xsp
-mv xsp-1.0/NEWS xsp-1.0/NEWS-xsp
-mv xsp-1.0/README xsp-1.0/README-xsp
-mv xsp-1.0/ChangeLog xsp-1.0/ChangeLog-xsp
+install src/.libs/%{mod_name}.so $RPM_BUILD_ROOT%{_pkglibdir}
+install man/%{mod_name}.8 $RPM_BUILD_ROOT%{_mandir}/man8
-cat > $RPM_BUILD_ROOT%{_sysconfdir}/httpd/httpd.conf/70_mod_mono.conf <<EOF
-LoadModule mono_module modules/mod_mono.so
-MonoApplications "/mono:%{_httpdir}/mono"
-Alias /mono "%{_httpdir}/mono"
-<Location /mono>
- SetHandler mono
+cat > $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf/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"
+<Location /asp_net>
+ SetHandler mono
</Location>
EOF
%files
%defattr(644,root,root,755)
-%doc ChangeLog INSTALL NEWS README xsp-1.0/{INSTALL,NEWS,README,ChangeLog}-xsp
-%attr(755,root,root) %{_pkglibdir}/mod_mono.so
-%attr(755,root,root) %{_bindir}/*
-%attr(755,root,root) %{_libdir}/*.dll
-%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/httpd/httpd.conf/*
-%attr(750,http,http) %{_httpdir}/.wapi
-%{_mandir}/man1/*
-%{_examplesdir}/%{name}-%{version}
+%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}/*.so
+%{_mandir}/man8/*