# 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" license="GPL" depends="python2" depends_dev="zlib-dev libgdiplus-dev" makedepends="$depends_dev python2 linux-headers paxmark autoconf automake libtool cmake" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" source="http://download.mono-project.com/sources/mono/mono-${pkgver/_/~}.tar.bz2" builddir="$srcdir/$pkgname-$pkgver" prepare() { default_prepare cd "$builddir" # Remove hardcoded lib directory from the config. sed -i 's|$mono_libdir/||g' data/config.in # We need to do this so it don't get killed in the build proces when # MPROTECT and RANDMMAP is enable. sed -i '/exec "/ i\paxmark mr "$(readlink -f "$MONO_EXECUTABLE")"' \ runtime/mono-wrapper.in } build() { cd "$builddir" # Based on Fedora and SUSE package. export CFLAGS="$CFLAGS -fno-strict-aliasing" # Set the minimum arch for x86 to prevent atomic linker errors. [ "$CARCH" = "x86" ] && export CFLAGS="$CFLAGS -march=i586 -mtune=generic" # Run 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-rpath \ --disable-boehm \ --enable-parallel-mark \ --with-mcs-docs=no \ --without-sigaltstack make } package() { cd "$builddir" make -j1 DESTDIR="$pkgdir" install cd "$pkgdir" # Remove .la files. rm ./usr/lib/*.la # Remove Windows-only stuff. rm -r ./usr/lib/mono/*/Mono.Security.Win32* rm ./usr/lib/libMonoSupportW.* } sha512sums="de2a8a3580b8236bafdc7e6967d68da08bf2dc775bce5166aba6134c1b986ae7fc56b97743d5122de14bf8fe074d3508c07324735616439dea0913633ee817da mono-5.0.1.1.tar.bz2"