# Contributor: Carlo Landmeter # Contributor: blattersturm # Maintainer: pkgname=mono pkgver=5.0.1.1 pkgrel=0 pkgdesc="Free implementation of the .NET platform including runtime and compiler" url="http://www.mono-project.com/" #arch="x86_64 x86" arch="" license="GPL" depends="python2" depends_dev="zlib-dev libgdiplus-dev" makedepends="$depends_dev python2 linux-headers paxmark autoconf automake libtool cmake" install="" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" source="http://download.mono-project.com/sources/mono/mono-${pkgver/_/~}.tar.bz2 " _builddir="$srcdir"/mono-${pkgver} prepare() { local i cd "$_builddir" for i in $source; do case $i in *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;; esac done } build() { cd "$_builddir" # set the minimum arch for x86 to prevent atomic linker errors [ "$CARCH" = "x86" ] && export CFLAGS="$CFLAGS -march=i586 -mtune=generic" # autogen to fix supplied configure linker issues with make install ./autogen.sh \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ --localstatedir=/var \ --disable-boehm \ --enable-parallel-mark \ --with-mcs-docs=no \ --without-sigaltstack \ || return 1 make get-monolite-latest # dirty hack to set paxmark on grsec kernels make || paxmark -mr mono/mini/mono-sgen && make || return 1 } package() { cd "$_builddir" make -j1 DESTDIR="$pkgdir" install || return 1 # mark all bins scanelf --nobanner "$pkgdir"/usr/bin/* | awk '{print $2}' \ | xargs paxmark -mr } sha512sums="de2a8a3580b8236bafdc7e6967d68da08bf2dc775bce5166aba6134c1b986ae7fc56b97743d5122de14bf8fe074d3508c07324735616439dea0913633ee817da mono-5.0.1.1.tar.bz2"