aboutsummaryrefslogtreecommitdiff
path: root/misc/setup/ioquake3.SlackBuild
diff options
context:
space:
mode:
Diffstat (limited to 'misc/setup/ioquake3.SlackBuild')
-rw-r--r--misc/setup/ioquake3.SlackBuild77
1 files changed, 77 insertions, 0 deletions
diff --git a/misc/setup/ioquake3.SlackBuild b/misc/setup/ioquake3.SlackBuild
new file mode 100644
index 0000000..af261b7
--- /dev/null
+++ b/misc/setup/ioquake3.SlackBuild
@@ -0,0 +1,77 @@
+#!/bin/sh
+
+CWD=`pwd`
+BASE=$CWD/../..
+if [ "$TMP" = "" ]; then
+ TMP=/tmp
+fi
+
+# clean, update
+make -C $BASE clean || exit 1
+svn up $BASE || exit 1
+
+# extract version info
+VERSION=`grep "\#define *PRODUCT_VERSION" $BASE/code/qcommon/q_shared.h | \
+ sed -e 's/[^"]*"\(.*\)"/\1/'`
+
+SVN_REV=`LANG=C svnversion $BASE`
+if [ ! "$SVN_REV" = "" ]; then
+ VERSION=${VERSION}_SVN${SVN_REV}
+fi
+
+PKG_VERSION=$VERSION
+
+ARCH=${ARCH:-i586}
+
+BUILD=${BUILD:-1_io}
+
+APP=ioquake3
+
+PKG=$TMP/package-$APP
+
+rm -rf $PKG
+mkdir -p $PKG
+
+# build
+make -C $BASE release copyfiles COPYDIR="$PKG"/usr/games/$APP|| exit 1
+
+# copy additional files
+cp $BASE/BUGS $BASE/COPYING.txt $BASE/ChangeLog $BASE/README $PKG/usr/games/$APP/
+cat $CWD/$APP.SlackBuild > $PKG/usr/games/$APP/$APP.SlackBuild
+
+mkdir -p $PKG/usr/share/$APP/icons
+cp $BASE/misc/quake3.png $PKG/usr/share/$APP/icons/ioquake3.png
+
+mkdir -p $PKG/usr/bin
+cat >> $PKG/usr/bin/ioquake3 << EOF
+#!/bin/sh
+cd /usr/games/$APP/
+./ioquake3.i386 \$*
+exit \$?
+EOF
+chmod 754 $PKG/usr/bin/ioquake3
+
+mkdir -p $PKG/usr/bin
+cat >> $PKG/usr/bin/ioq3ded << EOF
+#!/bin/sh
+cd /usr/games/$APP/
+./ioq3ded.i386 \$*
+exit \$?
+EOF
+chmod 754 $PKG/usr/bin/ioq3ded
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cat >> $PKG/install/doinst.sh << EOF
+chmod 754 /usr/games/$APP/*.i386
+chmod 754 /usr/bin/ioquake3 /usr/bin/ioq3ded
+EOF
+chmod +x $PKG/install/doinst.sh
+
+pushd $PKG
+chown -R root:root install/ || exit 1
+chown -R root:games usr/ || exit 1
+/sbin/makepkg -l y -c n $TMP/$APP-$VERSION-$ARCH-$BUILD.tgz
+popd
+