mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-18 22:54:00 +00:00
added extra/mono
This commit is contained in:
parent
b35583f5a3
commit
71ffbb86f6
5 changed files with 159 additions and 0 deletions
69
extra/mono/PKGBUILD
Normal file
69
extra/mono/PKGBUILD
Normal file
|
@ -0,0 +1,69 @@
|
||||||
|
# $Id: PKGBUILD 140778 2011-10-19 07:11:57Z daniel $
|
||||||
|
# Maintainer: Daniel Isenmann <daniel@archlinux.org>
|
||||||
|
# Contributor: Brice Carpentier <brice@dlfp.org>
|
||||||
|
|
||||||
|
# ALARM: Kevin Mihelich <kevin@plugapps.com>
|
||||||
|
# - Added alarm.patch for armv7h to fix detection of VFP capability
|
||||||
|
# and using autogen.sh to rebuild for configure.in changes.
|
||||||
|
# - Remove noautobuild on next version bump.
|
||||||
|
|
||||||
|
plugrel=1
|
||||||
|
noautobuild=1
|
||||||
|
|
||||||
|
pkgname=mono
|
||||||
|
pkgver=2.10.6
|
||||||
|
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.10' 'sh')
|
||||||
|
makedepends=('pkgconfig')
|
||||||
|
options=('!libtool' '!makeflags')
|
||||||
|
provides=('monodoc')
|
||||||
|
conflicts=('monodoc')
|
||||||
|
source=(http://download.mono-project.com/sources/${pkgname}/${pkgname}-${pkgver}.tar.bz2
|
||||||
|
mono.rc.d
|
||||||
|
alarm.patch)
|
||||||
|
md5sums=('c442cef4cd6668b0a1391a661f6815a9'
|
||||||
|
'8315e46c6a6e9625502521fc0ad1a322'
|
||||||
|
'db43f2824188e4d1583b676f2e62db24')
|
||||||
|
|
||||||
|
build() {
|
||||||
|
cd ${srcdir}/${pkgname}-${pkgver}
|
||||||
|
# build mono
|
||||||
|
if [ "$CARCH" = "armv7h" ]; then
|
||||||
|
patch -Np1 -i ${srcdir}/alarm.patch
|
||||||
|
./autogen.sh --prefix=/usr --sysconfdir=/etc \
|
||||||
|
--with-libgdiplus=installed --with-fpu=VFP
|
||||||
|
else
|
||||||
|
./configure --prefix=/usr --sysconfdir=/etc \
|
||||||
|
--with-libgdiplus=installed
|
||||||
|
fi
|
||||||
|
make || return 1
|
||||||
|
|
||||||
|
# build jay
|
||||||
|
cd ${srcdir}/${pkgname}-${pkgver}/mcs/jay
|
||||||
|
make || return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
package() {
|
||||||
|
cd ${srcdir}/${pkgname}-${pkgver}
|
||||||
|
make DESTDIR=${pkgdir} install || return 1
|
||||||
|
|
||||||
|
# install jay
|
||||||
|
cd ${srcdir}/${pkgname}-${pkgver}/mcs/jay
|
||||||
|
make DESTDIR=${pkgdir} prefix=/usr INSTALL=../../install-sh install
|
||||||
|
cd ${srcdir}/${pkgname}-${pkgver}
|
||||||
|
|
||||||
|
# install daemons and pathes
|
||||||
|
mkdir -p ${pkgdir}/etc/rc.d
|
||||||
|
install -m755 ${srcdir}/mono.rc.d ${pkgdir}/etc/rc.d/mono
|
||||||
|
|
||||||
|
#install license
|
||||||
|
mkdir -p ${pkgdir}/usr/share/licenses/${pkgname}
|
||||||
|
install -m644 mcs/MIT.X11 ${pkgdir}/usr/share/licenses/${pkgname}/
|
||||||
|
|
||||||
|
#fix .pc file to be able to request mono on what it depends, fixes #go-oo build
|
||||||
|
sed -i -e "s:#Requires:Requires:" ${pkgdir}/usr/lib/pkgconfig/mono.pc
|
||||||
|
}
|
31
extra/mono/alarm.patch
Normal file
31
extra/mono/alarm.patch
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
--- a/configure.in 2011-09-13 21:36:18.000000000 -0600
|
||||||
|
+++ b/configure.in 2011-10-20 00:25:35.000000000 -0600
|
||||||
|
@@ -2651,15 +2651,24 @@
|
||||||
|
])
|
||||||
|
fi
|
||||||
|
|
||||||
|
-if test ${TARGET} = ARM && test x$cross_compiling = xno && test x$enable_mcs_build != xno; then
|
||||||
|
+AC_ARG_WITH(fpu, [ --with-fpu=FPA,VFP,NONE Select fpu to use on arm],[fpu=$withval])
|
||||||
|
+
|
||||||
|
+if test ${TARGET} = ARM; then
|
||||||
|
dnl ******************************************
|
||||||
|
dnl *** Check to see what FPU is available ***
|
||||||
|
dnl ******************************************
|
||||||
|
AC_MSG_CHECKING(which FPU to use)
|
||||||
|
|
||||||
|
- AC_TRY_COMPILE([], [
|
||||||
|
- __asm__ ("ldfd f0, [r0]");
|
||||||
|
- ], fpu=FPA, fpu=NONE)
|
||||||
|
+ if test "x$fpu" = "x"; then
|
||||||
|
+
|
||||||
|
+ AC_TRY_COMPILE([], [
|
||||||
|
+ __asm__ ("ldfd f0, [r0]");
|
||||||
|
+ ], fpu=FPA, [
|
||||||
|
+ AC_TRY_COMPILE([], [
|
||||||
|
+ __asm__ ("fldd d0, [r0]");
|
||||||
|
+ ], fpu=VFP, fpu=NONE)
|
||||||
|
+ ])
|
||||||
|
+ fi
|
||||||
|
|
||||||
|
AC_MSG_RESULT($fpu)
|
||||||
|
CPPFLAGS="$CPPFLAGS -DARM_FPU_$fpu=1"
|
11
extra/mono/bug434892.patch
Normal file
11
extra/mono/bug434892.patch
Normal file
|
@ -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.
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
13
extra/mono/mini_amd64.patch
Normal file
13
extra/mono/mini_amd64.patch
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
--- mono/mini/mini-amd64.c 2009-03-19 21:08:18 UTC (rev 129824)
|
||||||
|
+++ mono/mini/mini-amd64.c 2009-03-19 21:09:53 UTC (rev 129825)
|
||||||
|
@@ -1009,7 +1009,7 @@
|
||||||
|
locals_size += mono_type_size (ins->inst_vtype, &ialign);
|
||||||
|
}
|
||||||
|
|
||||||
|
- if ((cfg->num_varinfo > 10000) || (locals_size >= (1 << 15))) {
|
||||||
|
+ if ((cfg->num_varinfo > 5000) || (locals_size >= (1 << 15)) || (header->code_size > 110000)) {
|
||||||
|
/* Avoid hitting the stack_alloc_size < (1 << 16) assertion in emit_epilog () */
|
||||||
|
cfg->arch.omit_fp = FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
35
extra/mono/mono.rc.d
Normal file
35
extra/mono/mono.rc.d
Normal file
|
@ -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
|
Loading…
Reference in a new issue