diff options
-rw-r--r-- | development/mono/README | 12 | ||||
-rw-r--r-- | development/mono/configure.in.patch (renamed from development/mono/mono-2.x.configure.in.patch) | 0 | ||||
-rw-r--r-- | development/mono/doinst.sh | 12 | ||||
-rw-r--r-- | development/mono/mono.SlackBuild | 96 | ||||
-rw-r--r-- | development/mono/mono.info | 16 | ||||
-rw-r--r-- | development/mono/slack-desc | 30 |
6 files changed, 96 insertions, 70 deletions
diff --git a/development/mono/README b/development/mono/README index c58a798cf4..699c670deb 100644 --- a/development/mono/README +++ b/development/mono/README @@ -1,4 +1,8 @@ -Mono is a Open Source implementation of the .NET Framework: it -is made up of a runtime engine that implements the ECMA Common -Language Infrastructure (CLI), a set of compilers that target -the CLI, and a large collection of class libraries. +Mono is a software platform designed to allow developers to easily create +cross platform applications. It is an open source implementation of +Microsoft's .Net Framework based on the ECMA standards for C# and the Common +Language Runtime. We feel that by embracing a successful, standardized +software platform, we can lower the barriers to producing great applications +for Linux. + +This requires libgdiplus. diff --git a/development/mono/mono-2.x.configure.in.patch b/development/mono/configure.in.patch index e97ad18dc9..e97ad18dc9 100644 --- a/development/mono/mono-2.x.configure.in.patch +++ b/development/mono/configure.in.patch diff --git a/development/mono/doinst.sh b/development/mono/doinst.sh index ff2c6034a1..0b0ed88ec6 100644 --- a/development/mono/doinst.sh +++ b/development/mono/doinst.sh @@ -1,4 +1,3 @@ - config() { NEW="$1" OLD="$(dirname $NEW)/$(basename $NEW .new)" @@ -12,5 +11,14 @@ config() { # Otherwise, we leave the .new copy for the admin to consider... } -for i in $(find etc/ -name "*.new" | xargs) ; do config $i ; done +config etc/mono/config.new +config etc/mono/mconfig/config.xml.new +config etc/mono/1.0/machine.config.new +config etc/mono/1.0/DefaultWsdlHelpGenerator.aspx.new +config etc/mono/browscap.ini.new +config etc/mono/2.0/settings.map.new +config etc/mono/2.0/machine.config.new +config etc/mono/2.0/Browsers/Compat.browser.new +config etc/mono/2.0/web.config.new +config etc/mono/2.0/DefaultWsdlHelpGenerator.aspx.new diff --git a/development/mono/mono.SlackBuild b/development/mono/mono.SlackBuild index 52d4d16edc..6619c94caf 100644 --- a/development/mono/mono.SlackBuild +++ b/development/mono/mono.SlackBuild @@ -1,30 +1,10 @@ #!/bin/sh -# Slackware build script for Mono - -# Copyright 2006 Martin Lefebvre <dadexter@gmail.com> -# Copyright 2008 Erik Hanson <erik@slackbuilds.org> -# All rights reserved. -# -# Redistribution and use of this script, with or without modification, is -# permitted provided that the following conditions are met: -# -# 1. Redistributions of this script must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# -# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED -# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO -# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# Slackware build script for mono +# Written by Sebastián Salazar Molina <ssalazar@orangepeople.cl> PRGNAM=mono -VERSION=2.4 +VERSION=${VERSION:-2.6.1} ARCH=${ARCH:-i486} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} @@ -35,12 +15,17 @@ PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} if [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mtune=i686" + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" elif [ "$ARCH" = "i686" ]; then - SLKCFLAGS="-O2 -march=i686 -mtune=i686" + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" fi -set -eu +set -e rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT @@ -49,11 +34,16 @@ rm -rf $PRGNAM-$VERSION tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2 cd $PRGNAM-$VERSION chown -R root:root . -chmod -R u+w,go+r-w,a-s . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; -# Fix configure.in and regenerate the build system -patch -p0 < $CWD/mono-2.x.configure.in.patch -autoreconf +# patch provided by http://www.nabble.com/user/UserProfile.jtp?user=543318 +# http://go-mono.com/forums/#nabble-p21561564 +patch -p0 < $CWD/configure.in.patch +autoconf CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ @@ -62,26 +52,48 @@ CXXFLAGS="$SLKCFLAGS" \ --sysconfdir=/etc \ --localstatedir=/var \ --mandir=/usr/man \ - --enable-shared=yes \ - --enable-static=no + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --docdir=/usr/doc/$PRGNAM-$VERSION \ + --build=$ARCH-slackware-linux make -make install-strip DESTDIR=$PKG +make install DESTDIR=$PKG -mv $PKG/usr/share/man/man1/* $PKG/usr/man/man1/ -rmdir $PKG/usr/share/man/man1 $PKG/usr/share/man +# There's still something braindead in here that doesn't grok --mandir +mv $PKG/usr/share/man/man1/* $PKG/usr/man/man1 ; rm -rf $PKG/usr/share/man gzip -9 $PKG/usr/man/man?/*.? -# Let's not clobber existing config files -find $PKG/etc -type f -exec mv -v {} {}.new \; +# Don't clobber the config files +mv $PKG/etc/mono/config $PKG/etc/mono/config.new +mv $PKG/etc/mono/mconfig/config.xml $PKG/etc/mono/mconfig/config.xml.new +mv $PKG/etc/mono/1.0/machine.config $PKG/etc/mono/1.0/machine.config.new +mv $PKG/etc/mono/1.0/DefaultWsdlHelpGenerator.aspx \ + $PKG/etc/mono/1.0/DefaultWsdlHelpGenerator.aspx.new +mv $PKG/etc/mono/browscap.ini $PKG/etc/mono/browscap.ini.new +mv $PKG/etc/mono/2.0/settings.map $PKG/etc/mono/2.0/settings.map.new +mv $PKG/etc/mono/2.0/machine.config $PKG/etc/mono/2.0/machine.config.new +mv $PKG/etc/mono/2.0/Browsers/Compat.browser \ + $PKG/etc/mono/2.0/Browsers/Compat.browser.new +mv $PKG/etc/mono/2.0/web.config $PKG/etc/mono/2.0/web.config.new +mv $PKG/etc/mono/2.0/DefaultWsdlHelpGenerator.aspx \ + $PKG/etc/mono/2.0/DefaultWsdlHelpGenerator.aspx.new + +( cd $PKG + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null || true + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null || true +) -mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION $PKG/install -cp -a AUTHORS COPYING.LIB LICENSE NEWS docs/* $PKG/usr/doc/$PRGNAM-$VERSION -rm $PKG/usr/doc/$PRGNAM-$VERSION/Makefile* -mv $PKG/usr/share/libgc-mono $PKG/usr/doc/$PRGNAM-$VERSION +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a \ + AUTHORS ChangeLog COPYING.LIB LICENSE NEWS README \ + $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc cat $CWD/doinst.sh > $PKG/install/doinst.sh cd $PKG -/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/development/mono/mono.info b/development/mono/mono.info index a32d5b5a0a..7ce3095abe 100644 --- a/development/mono/mono.info +++ b/development/mono/mono.info @@ -1,8 +1,10 @@ PRGNAM="mono" -VERSION="2.4" -HOMEPAGE="http://www.mono-project.com" -DOWNLOAD="http://ftp.novell.com/pub/mono/sources/mono/mono-2.4.tar.bz2" -MD5SUM="da2bf1c0aba2958d26c5e8a9a49fd9d1" -MAINTAINER="Erik Hanson" -EMAIL="erik@slackbuilds.org" -APPROVED="dsomero" +VERSION="2.6.1" +HOMEPAGE="http://www.mono-project.com/" +DOWNLOAD="http://ftp.novell.com/pub/mono/sources/mono/mono-2.6.1.tar.bz2" +MD5SUM="4cd2157c9eabbe9f49232d5ee3a2a57e" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +MAINTAINER="Sebastián Salazar Molina" +EMAIL="ssalazar@orangepeople.cl" +APPROVED="rworkman" diff --git a/development/mono/slack-desc b/development/mono/slack-desc index dc1c6e16c5..14a3f708de 100644 --- a/development/mono/slack-desc +++ b/development/mono/slack-desc @@ -1,19 +1,19 @@ # HOW TO EDIT THIS FILE: # The "handy ruler" below makes it easier to edit a package description. Line -# up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must -# make exactly 11 lines for the formatting to be correct. It's also -# customary to leave one space after the ':'. +# up the first '|' above the ':' following the base package name, and the '|' on +# the right side marks the last column you can put a character in. You must make +# exactly 11 lines for the formatting to be correct. It's also customary to +# leave one space after the ':'. |-----handy-ruler------------------------------------------------------| -mono: Mono (Open Source implementation of the .NET Framework) -mono: -mono: Mono is a Open Source implementation of the .NET Framework: it -mono: is made up of a runtime engine that implements the ECMA Common -mono: Language Infrastructure (CLI), a set of compilers that target -mono: the CLI, and a large collection of class libraries. -mono: -mono: -mono: -mono: -mono: +mono: Mono (cross platform, open source .NET development framework.) +mono: +mono: Mono is a software platform designed to allow developers to easily +mono: create cross platform applications. +mono: It is an open source implementation of Microsoft's .Net Framework +mono: based on the ECMA standards for C# and the Common Language Runtime. +mono: +mono: Last information can be found at +mono: http://www.mono-project.com +mono: +mono: |