1#!/bin/sh
2
3CWD=`pwd`
4BASE=$CWD/../..
5if [ "$TMP" = "" ]; then
6  TMP=/tmp
7fi
8
9# clean, update
10make -C $BASE clean || exit 1
11svn up $BASE || exit 1
12
13# extract version info
14VERSION=`grep "\#define *PRODUCT_VERSION" $BASE/code/qcommon/q_shared.h | \
15  sed -e 's/[^"]*"\(.*\)"/\1/'`
16
17SVN_REV=`LANG=C svnversion $BASE`
18if [ ! "$SVN_REV" = "" ]; then
19  VERSION=${VERSION}_SVN${SVN_REV}
20fi
21
22PKG_VERSION=$VERSION
23
24ARCH=${ARCH:-i586}
25
26if [ "$ARCH" = "i?86" ]; then
27  ARCHSUFFIX="i386"
28elif [ "$ARCH" = "x86_64" ]; then
29  ARCHSUFFIX="64"
30fi
31
32BUILD=${BUILD:-1_io}
33
34APP=ioquake3
35
36PKG=$TMP/package-$APP
37
38rm -rf $PKG
39mkdir -p $PKG
40
41# build
42make -C $BASE release copyfiles COPYDIR="$PKG"/usr/games/$APP|| exit 1
43
44# copy additional files
45cp $BASE/BUGS $BASE/COPYING.txt $BASE/ChangeLog $BASE/README $PKG/usr/games/$APP/
46cat $CWD/$APP.SlackBuild > $PKG/usr/games/$APP/$APP.SlackBuild
47
48mkdir -p $PKG/usr/share/$APP/icons
49cp $BASE/misc/quake3.png $PKG/usr/share/$APP/icons/ioquake3.png
50
51mkdir -p $PKG/usr/bin
52cat >> $PKG/usr/bin/ioquake3 << EOF
53#!/bin/sh
54cd /usr/games/$APP/
55./ioquake3.${ARCHSUFFIX} \$*
56exit \$? 
57EOF
58chmod 754 $PKG/usr/bin/ioquake3
59
60mkdir -p $PKG/usr/bin
61cat >> $PKG/usr/bin/ioq3ded << EOF
62#!/bin/sh
63cd /usr/games/$APP/
64./ioq3ded.${ARCHSUFFIX} \$*
65exit \$? 
66EOF
67chmod 754 $PKG/usr/bin/ioq3ded
68
69mkdir -p $PKG/install
70cat $CWD/slack-desc > $PKG/install/slack-desc
71
72cat >> $PKG/install/doinst.sh << EOF
73chmod 754 /usr/games/$APP/*.${ARCHSUFFIX}
74chmod 754 /usr/bin/ioquake3 /usr/bin/ioq3ded
75EOF
76chmod +x $PKG/install/doinst.sh
77
78pushd $PKG
79chown -R root:root install/ || exit 1
80chown -R root:games usr/ || exit 1
81/sbin/makepkg -l y -c n $TMP/$APP-$VERSION-$ARCH-$BUILD.tgz
82popd
83
84