diff options
Diffstat (limited to 'abs/extra/mono')
-rw-r--r-- | abs/extra/mono/PKGBUILD | 47 | ||||
-rw-r--r-- | abs/extra/mono/__changelog | 1 | ||||
-rw-r--r-- | abs/extra/mono/bug434892.patch | 11 | ||||
-rw-r--r-- | abs/extra/mono/mono.rc.d | 35 |
4 files changed, 94 insertions, 0 deletions
diff --git a/abs/extra/mono/PKGBUILD b/abs/extra/mono/PKGBUILD new file mode 100644 index 0000000..94ad05a --- /dev/null +++ b/abs/extra/mono/PKGBUILD @@ -0,0 +1,47 @@ +# $Id: PKGBUILD 25123 2009-01-23 17:05:04Z daniel $ +# Maintainer: Daniel Isenmann <daniel@archlinux.org> +# Contributor: Brice Carpentier <brice@dlfp.org> + +pkgname=mono +pkgver=2.2 +pkgrel=1 +pkgdesc="Free implementation of the .NET platform including runtime and compiler" +arch=(i686 x86_64) +license=('GPL' 'LGPL2' 'MPL' 'custom:MITX11') +url="http://www.mono-project.com/" +depends=('zlib' 'libgdiplus>=2.2') +makedepends=('pkgconfig' 'bison') +options=('!libtool' '!makeflags') +provides=('monodoc') +conflicts=('monodoc') +source=(http://www.go-mono.com/sources/${pkgname}/${pkgname}-${pkgver}.tar.bz2 + mono.rc.d) +md5sums=('da147e24d14a73d8ad52775dd4a3d165' + '8315e46c6a6e9625502521fc0ad1a322') + +build() { + # get rid of that .wapi errors; thanks to brice + export MONO_SHARED_DIR=${startdir}/src/weird + mkdir -p "${MONO_SHARED_DIR}" + mkdir -p ${startdir}/pkg/usr/share/licenses/$pkgname + # build mono + cd ${startdir}/src/${pkgname}-${pkgver} + rm -f libgc/libtool.m4 + autoreconf --force --install + autoreconf --force --install libgc + ./configure --prefix=/usr --sysconfdir=/etc \ + --with-libgdiplus=installed --with-icu=no \ + --with-tls=pthread --with-jit=yes --with-preview=yes \ + --with-sigaltstack=yes --enable-nunit-tests \ + --with-moonlight=yes + make || return 1 + sed -i "/NO_INSTALL = yes/d" mcs/nunit20/nunit-console/Makefile + make DESTDIR=${startdir}/pkg install + + # install daemons and pathes + mkdir -p ${startdir}/pkg/etc/rc.d + install -m755 ${startdir}/src/mono.rc.d $startdir/pkg/etc/rc.d/mono + + #install license + install -m644 mcs/MIT.X11 ${startdir}/pkg/usr/share/licenses/$pkgname/ +} diff --git a/abs/extra/mono/__changelog b/abs/extra/mono/__changelog new file mode 100644 index 0000000..254c863 --- /dev/null +++ b/abs/extra/mono/__changelog @@ -0,0 +1 @@ +add bison as a make depends diff --git a/abs/extra/mono/bug434892.patch b/abs/extra/mono/bug434892.patch new file mode 100644 index 0000000..d4f46f6 --- /dev/null +++ b/abs/extra/mono/bug434892.patch @@ -0,0 +1,11 @@ +--- trunk/mcs/class/System.Web.Services/System.Web.Services.Description/BasicProfileChecker.cs 2008/07/01 20:17:46 107006 ++++ trunk/mcs/class/System.Web.Services/System.Web.Services.Description/BasicProfileChecker.cs 2008/10/28 09:32:46 117243 +@@ -177,7 +177,7 @@ + foreach (OperationMessage om in op.Messages) { + Message msg = ctx.Services.GetMessage (om.Message); + foreach (MessagePart part in msg.Parts) +- parts.Add (part,part); ++ parts [part] = part; // do not use Add() - there could be the same MessagePart instance. + } + } + diff --git a/abs/extra/mono/mono.rc.d b/abs/extra/mono/mono.rc.d new file mode 100644 index 0000000..548cc2d --- /dev/null +++ b/abs/extra/mono/mono.rc.d @@ -0,0 +1,35 @@ +#!/bin/bash +. /etc/rc.conf +. /etc/rc.d/functions + +case "$1" in + start) + stat_busy "Registering .NET IL binaries with mono" + if [ ! -d /proc/sys/fs/binfmt_misc ]; then + stat_die "You need support for \"misc binaries\" in your kernel!" + fi + mount | grep -q binfmt_misc + if [ $? != 0 ]; then + mount -t binfmt_misc binfmt_misc /proc/sys/fs/binfmt_misc + if [ $? != 0 ]; then + stat_die + fi + fi + echo ':CLR:M::MZ::/usr/bin/mono:' > /proc/sys/fs/binfmt_misc/register + stat_done + ;; + stop) + + stat_busy "Unregistering .NET IL binaries" + if [ -f /proc/sys/fs/binfmt_misc/CLR ]; then + echo '-1' > /proc/sys/fs/binfmt_misc/CLR + fi + stat_done + ;; + restart) + $0 stop + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac |