# Contributor: Carlo Landmeter # Contributor: blattersturm # Maintainer: global pkgname := 'mono' global pkgver := '5.2.0.224' global pkgrel := '0' global pkgdesc := '"Free implementation of the .NET platform including runtime and compiler'" global url := '"http://www.mono-project.com/'" global arch := '"x86_64 x86'" global license := '"GPL'" global depends := '"python2'" global depends_dev := '"zlib-dev libgdiplus-dev'" global makedepends := ""$depends_dev python2 linux-headers paxmark autoconf automake libtool cmake"" global subpackages := ""$pkgname-dev $pkgname-doc $pkgname-lang"" global source := ""http://download.mono-project.com/sources/mono/mono-$(pkgver/_/~).tar.bz2"" global builddir := ""$srcdir/$pkgname-$pkgver"" proc 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 } proc 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. test $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 } proc package { cd $builddir make -j1 DESTDIR="$pkgdir" install paxmark mr "$pkgdir"/usr/bin/mono-sgen 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.* } global sha512sums := '"914ab11c892f6e59c1a89d92eb4b130a62ea606691820f9d9f48a2a68f7de3e593c233be071cd37ad5d817c5f5fda6892f89f1b0985fc44de97c1297300c706b mono-5.2.0.224.tar.bz2'" (CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(mono)} spids:[9])] spids: [9] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(5.2.0.224)} spids:[12])] spids: [12] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(0)} spids:[15])] spids: [15] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("Free implementation of the .NET platform including runtime and compiler"))} spids: [18] ) ] spids: [18] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:url) op: Equal rhs: {(DQ ("http://www.mono-project.com/"))} spids: [23] ) ] spids: [23] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ ("x86_64 x86"))} spids:[28])] spids: [28] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (GPL))} spids:[33])] spids: [33] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ (python2))} spids:[38])] spids: [38] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:depends_dev) op: Equal rhs: {(DQ ("zlib-dev libgdiplus-dev"))} spids: [43] ) ] spids: [43] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:makedepends) op: Equal rhs: { (DQ ($ VSub_Name "$depends_dev") (" python2 linux-headers paxmark autoconf automake libtool cmake") ) } spids: [48] ) ] spids: [48] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:subpackages) op: Equal rhs: { (DQ ($ VSub_Name "$pkgname") ("-dev ") ($ VSub_Name "$pkgname") ("-doc ") ($ VSub_Name "$pkgname") (-lang) ) } spids: [54] ) ] spids: [54] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:source) op: Equal rhs: { (DQ ("http://download.mono-project.com/sources/mono/mono-") (BracedVarSub token: suffix_op: (PatSub pat: {(_)} replace: {("~")} do_all: False do_prefix: False do_suffix: False ) spids: [67 73] ) (.tar.bz2) ) } spids: [64] ) ] spids: [64] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:builddir) op: Equal rhs: {(DQ ($ VSub_Name "$srcdir") (/) ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$pkgver"))} spids: [77] ) ] spids: [77] ) (FuncDef name: prepare body: (BraceGroup children: [ (C {(default_prepare)}) (C {(cd)} {(DQ ($ VSub_Name "$builddir"))}) (C {(sed)} {(-i)} {(SQ <"s|$mono_libdir/||g">)} {(data/config.in)}) (C {(sed)} {(-i)} {(SQ <"/exec \"/ i\\paxmark mr \"$(readlink -f \"$MONO_EXECUTABLE\")\"">)} {(runtime/mono-wrapper.in)} ) ] spids: [91] ) spids: [87 90] ) (FuncDef name: build body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$builddir"))}) (C {(export)} {(Lit_VarLike "CFLAGS=") (DQ ($ VSub_Name "$CFLAGS") (" -fno-strict-aliasing"))} ) (AndOr children: [ (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$CARCH"))} {(Lit_Other "=")} {(DQ (x86))} {(Lit_Other "]")} ) (C {(export)} {(Lit_VarLike "CFLAGS=") (DQ ($ VSub_Name "$CFLAGS") (" -march=i586 -mtune=generic")) } ) ] op_id: Op_DAmp ) (C {(./autogen.sh)} {(--build) (Lit_Other "=") ($ VSub_Name "$CBUILD")} {(--host) (Lit_Other "=") ($ VSub_Name "$CHOST")} {(--prefix) (Lit_Other "=") (/usr)} {(--sysconfdir) (Lit_Other "=") (/etc)} {(--mandir) (Lit_Other "=") (/usr/share/man)} {(--infodir) (Lit_Other "=") (/usr/share/info)} {(--localstatedir) (Lit_Other "=") (/var)} {(--disable-rpath)} {(--disable-boehm)} {(--enable-parallel-mark)} {(--with-mcs-docs) (Lit_Other "=") (no)} {(--without-sigaltstack)} ) (C {(make)}) ] spids: [148] ) spids: [144 147] ) (FuncDef name: package body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$builddir"))}) (C {(make)} {(-j1)} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$pkgdir"))} {(install)}) (C {(paxmark)} {(mr)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/mono-sgen)}) (C {(cd)} {(DQ ($ VSub_Name "$pkgdir"))}) (C {(rm)} {(./usr/lib/) (Lit_Other "*") (.la)}) (C {(rm)} {(-r)} {(./usr/lib/mono/) (Lit_Other "*") (/Mono.Security.Win32) (Lit_Other "*")}) (C {(rm)} {(./usr/lib/libMonoSupportW.) (Lit_Other "*")}) ] spids: [283] ) spids: [279 282] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sha512sums) op: Equal rhs: { (DQ ( "914ab11c892f6e59c1a89d92eb4b130a62ea606691820f9d9f48a2a68f7de3e593c233be071cd37ad5d817c5f5fda6892f89f1b0985fc44de97c1297300c706b mono-5.2.0.224.tar.bz2" ) ) } spids: [359] ) ] spids: [359] ) ] )