#!/bin/sh # Heavily based on the Slackware 12.2 SlackBuild # http://sauerbraten.org # Packager Andrea Sciucca ( gohanz at infinito.it) # http://www.slacky.it # # Required: # # Exit on most errors set -e CWD=`pwd` TMP=${TMP:-/tmp/tgz} PKG=$TMP/package/sauerbraten NAME=sauerbraten VERSION=2009_05_04_trooper_edition CHOST=i486 ARCH=${ARCH:-i686} BUILD=1as SOURCE=http://garr.dl.sourceforge.net/sourceforge/sauerbraten/$NAME'_'$VERSION'_'linux.tar.bz2 if [ ! -e $NAME'_'$VERSION'_'linux.tar.bz2 ]; then wget -c $SOURCE fi if [ "$ARCH" = "i486" ]; then SLKCFLAGS="-O2 -march=i486 -mtune=i686" elif [ "$ARCH" = "i686" ]; then SLKCFLAGS="-O3 -march=i686 -pipe -fomit-frame-pointer" elif [ "$ARCH" = "athlon64" ]; then SLKCFLAGS="-O2 -march=athlon64 -pipe" elif [ "$ARCH" = "athlonxp" ]; then SLKCFLAGS="-O3 -march=athlon-xp -pipe -fomit-frame-pointer" elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" fi if [ ! -d $TMP ]; then mkdir -p $TMP fi if [ ! -d $PKG ]; then mkdir -p $PKG fi cd $TMP #tar xvjf $CWD/$NAME'_'$VERSION'_'linux.tar.bz2 echo -e "\E[0;32m+--------------------------------+\E[0;0m" echo -e "\E[0;32m| Start SlackBuild Sauerbraten |\E[0;0m" echo -e "\E[0;32m+--------------------------------+\E[0;0m" cd $NAME find . -perm 666 -exec chmod 644 {} \; find . -perm 664 -exec chmod 644 {} \; find . -perm 600 -exec chmod 644 {} \; find . -perm 444 -exec chmod 644 {} \; find . -perm 400 -exec chmod 644 {} \; find . -perm 440 -exec chmod 644 {} \; find . -perm 777 -exec chmod 755 {} \; find . -perm 775 -exec chmod 755 {} \; find . -perm 511 -exec chmod 755 {} \; find . -perm 711 -exec chmod 755 {} \; find . -perm 555 -exec chmod 755 {} \; chown -R root:root . rm $TMP/$NAME/bin_unix/* cd src make make install cd .. mkdir -p $PKG/usr/share/sauerbraten cp -a bin_unix $PKG/usr/share/sauerbraten cp -a data $PKG/usr/share/sauerbraten cp -a packages $PKG/usr/share/sauerbraten mkdir -p $PKG/usr/bin install -m 755 $CWD/sauerbraten $PKG/usr/bin install -m 755 $CWD/sauerbraten_server $PKG/usr/bin # Installing icon and desktop. mkdir -p $PKG/usr/share/pixmaps cp $CWD/sauerbraten.png $PKG/usr/share/pixmaps mkdir -p ${PKG}/usr/share/applications cat << EOF > $PKG/usr/share/applications/sauerbraten.desktop [Desktop Entry] Name=Sauerbraten Name[it]=Sauerbraten GenericName=First person shooter GenericName[it]=Sparatutto tridimensionale Comment=Free first person shooter (major redesign of the Cube FPS) Comment=Sparatutto tridimensionale (rivisitazione di Cube FPS) Exec=sauerbraten Terminal=false Icon=sauerbraten.png Type=Application Categories=Game;ActionGame; EOF mkdir -p ${PKG}/usr/share/applications cat << EOF > $PKG/usr/share/applications/sauerbraten_server.desktop [Desktop Entry] Name=Sauerbraten Server Name[it]=Sauerbraten Server GenericName=Network server for Sauerbraten GenericName[it]=Server di rete per Sauerbraten Comment=Your pc work as network server for Sauerbraten game Comment=Il tuo pc diventa un server di rete per il gioco Sauerbraten Exec=sauerbraten_server Terminal=true Icon=sauerbraten.png Type=Application Categories=Game;ActionGame; EOF mkdir -p $PKG/usr/doc/$NAME-$VERSION mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc cat $CWD/slack-desc > $PKG/usr/doc/$NAME-$VERSION/slack-desc cat $CWD/$NAME.SlackBuild > $PKG/usr/doc/$NAME-$VERSION/$NAME.SlackBuild ( cd $PKG find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null find . | xargs file | grep "current ar archive" | cut -f 1 -d : | xargs strip -g 2> /dev/null ) echo "if [ -x /usr/bin/update-mime-database ]; then /usr/bin/update-mime-database /usr/share/mime &> /dev/null fi" >> $PKG/install/doinst.sh echo "" >> $PKG/install/doinst.sh echo "if [ -x /usr/bin/update-desktop-database ]; then /usr/bin/update-desktop-database &> /dev/null fi" >> $PKG/install/doinst.sh echo "" >> $PKG/install/doinst.sh echo "if [ -x /usr/bin/gtk-update-icon-cache ]; then /usr/bin/gtk-update-icon-cache -f -q /usr/share/icons/hicolor &> /dev/null fi" >> $PKG/install/doinst.sh echo "" >> $PKG/install/doinst.sh cd $PKG requiredbuilder -v -y -s $CWD $PKG makepkg -l y -c n $CWD/$NAME-$VERSION-$ARCH-$BUILD.tgz if [ "$1" = "--cleanup" ]; then rm -rf $TMP fi