#!/bin/sh # Slackware build script for eduke32 # Written by B. Watson (yalhcru@gmail.com) # Comment next line to skip building the Build utilities: BUILD_UTILS=${BUILD_UTILS:-"yes"} PRGNAM=eduke32 VERSION=${VERSION:-20080709} SRCDIR=${PRGNAM}_src_${VERSION} ARCH=${ARCH:-i486} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} CWD=$(pwd) TMP=${TMP:-/tmp/SBo} # For consistency's sake, use this PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} # Drop the package in /tmp # TODO: fix the Makefiles so they'll honor external CFLAGS. # The default flags include -O2 already, which is good enough for now. if [ "$ARCH" = "i486" ]; then SLKCFLAGS="-O2 -march=i486 -mtune=i686" elif [ "$ARCH" = "i686" ]; then SLKCFLAGS="-O2 -march=i686 -mtune=i686" else echo "Sorry, $PRGNAM can't be compiled on $ARCH with this script (yet)" exit 1 fi set -e rm -rf $PKG mkdir -p $TMP $PKG/usr/libexec/$PRGNAM $PKG/usr/bin \ $PKG/usr/share/games/$PRGNAM $OUTPUT cd $TMP rm -rf $SRCDIR unzip $CWD/$SRCDIR.zip cd $SRCDIR chown -R root:root . 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 {} \; cd eduke32 make # There is no "make install"; binary is already stripped for i in eduke32 mapster32; do cat $i > $PKG/usr/libexec/$PRGNAM/$i chown root:root $PKG/usr/libexec/$PRGNAM/$i chmod 0755 $PKG/usr/libexec/$PRGNAM/$i done # Wrapper script to make things behave nicer cat $CWD/eduke32.wrapper > $PKG/usr/bin/eduke32 chown root:root $PKG/usr/bin/eduke32 chmod 755 $PKG/usr/bin/eduke32 ( cd $PKG/usr/bin ; ln -s eduke32 mapster32 ) # Mapster help files cp *.hlp *.HLP names.h tiles.cfg $PKG/usr/share/games/eduke32 mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION cp -a ChangeLog* *.txt *.TXT *.sample *.cfg \ $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild cp $CWD/README_game_data.txt $PKG/usr/doc/$PRGNAM-$VERSION ( cd $PKG/usr/share/games/$PRGNAM ln -s ../../../doc/$PRGNAM-$VERSION/README_game_data.txt . ) # Icon and desktop link mkdir -p $PKG/usr/share/applications cp $CWD/mapster32.desktop $CWD/eduke32.desktop $PKG/usr/share/applications mkdir -p $PKG/usr/share/pixmaps cp $CWD/eduke32.png $PKG/usr/share/pixmaps # slack-desc mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc cat $CWD/doinst.sh > $PKG/install/doinst.sh # Build the utilities, if requested. if [ "$BUILD_UTILS" = "yes" ]; then cd $TMP/$SRCDIR/build make utils for i in kextract kgroup transpal wad2art wad2map; do strip $i cat $i > $PKG/usr/bin/$i chown root:root $PKG/usr/bin/$i chmod 0755 $PKG/usr/bin/$i done cp doc/* $PKG/usr/doc/$PRGNAM-$VERSION echo "$PRGNAM: This package includes the Build engine utiliies (kextract et al)" >> $PKG/install/slack-desc fi cd $PKG /sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz