slackbuilds_ponce/games/angband/angband.SlackBuild
David Somero 259b3fa2b9 games/angband: Misc automated cleanups.
Signed-off-by: David Somero <xgizzmo@slackbuilds.org>
2010-06-04 01:04:01 -04:00

107 lines
2.9 KiB
Bash

#!/bin/sh
# Slackware build script for angband
# Written by Marshall Scott (bacchist@gmail.com)
PRGNAM=angband
VERSION=3.1.0beta
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i486 ;;
arm*) ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$( uname -m ) ;;
esac
fi
CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
rm -rf $TMP/$PRGNAM-$VERSION
cd $TMP || exit 1
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || exit 1
cd $PRGNAM-$VERSION || exit 1
chown -R root:root .
chmod -R u+w,go+r-w,a-s .
# Fixup the DESTDIR support for --with-setgid
patch -p1 < $CWD/Fix_DESTDIR_support.patch || exit 1
# --enable-gtk and setgid are incompatible, so we'll not build the gtk part
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--with-libpath=/usr/share/games/angband \
--bindir=/usr/games \
--with-setgid=games \
--build=$ARCH-slackware-linux \
|| exit 1
make || exit
make install DESTDIR=$PKG || exit
# We'll deviate from what upstream does a little bit...
mkdir -p $PKG/var/games/angband
mv $PKG/usr/share/games/angband/{apex,bone,data,save} $PKG/var/games/angband
( cd $PKG/usr/share/games/angband
for i in apex bone data save ; do
ln -s ../../../../var/games/angband/$i .
done
)
# We'll kill the "delete.me" files in the package; probably these are left so
# that lesser package management tools don't choke on empty directories
find $PKG -name "delete.me" -exec rm -f {} \; || true
# Now let's prevent upgrades from clobbering any existing datafiles
# We'll handle these in doinst.sh
mv $PKG/var/games/angband/apex/scores.raw \
$PKG/var/games/angband/apex/scores.raw.new
for i in \
artifact ego_item flavor limits monster object p_class \
p_hist p_race prices shop_own spells terrain vault ;
do mv $PKG/var/games/angband/data/$i.raw \
$PKG/var/games/angband/data/$i.raw.new ;
done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
changes.txt copying.txt faq.txt readme.txt thanks.txt lib/help/ \
$PKG/usr/doc/$PRGNAM-$VERSION
find $PKG/usr/doc/$PRGNAM-$VERSION -type f -exec chmod 644 {} \;
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$APP.SlackBuild
rm -f $PKG/usr/doc/$PRGNAM-$VERSION/help/.depend*
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.${PKGTYPE:-tgz}