#!/bin/sh if [ $# -gt 2 -o $# -lt 1 ]; then echo "Syntax: $0 []" exit 1 fi SERVER=$1 SERVERBASE=$HOME/servers/$SERVER BUILD=$HOME/servers/builds SOURCE=$HOME/source SOCKET=$SERVERBASE/build/var/run/socket if ! [ -d $SERVERBASE ]; then echo "$SERVER server not found." exit 1 fi if ! [ -d $SOURCE ]; then echo "$SOURCE not found." exit 1 fi case $SERVER in 1.2 ) cd $SOURCE/1.2 || exit 1 ;; 1.4 ) cd $SOURCE/1.4 || exit 1 ;; * ) cd $SOURCE/trunk || exit 1 ;; esac REVISION="" if [ "$2" != "" ]; then REVISION="-r $2" fi echo 'svn update...' rev=$(svn up $REVISION | tail -n 1 | sed -e 's/[^0-9]//g') if [ "$rev" == "" ]; then echo "No revision information found." exit 1 fi # reminder for local changes echo "to $rev" svn status DIR=wesnothd-svn-${rev}_$SERVER mkdir $BUILD/$DIR echo 'autogen.sh and configure...' ./autogen.sh > $BUILD/$DIR/autogen.log ./configure --prefix=$BUILD/$DIR --program-suffix=-$SERVER --enable-server --enable-raw-sockets --disable-game --with-fifodir=$BUILD/$DIR/var/run --disable-nls --enable-debug --enable-lite > $BUILD/$DIR/configure.log CXXFLAGS='-pg' LDFLAGS='-pg' make clean > /dev/null echo 'make...' make > $BUILD/$DIR/make.log || exit 1 echo 'make install...' make install > $BUILD/$DIR/install.log || exit 1 cd $SERVERBASE if [ -p $SOCKET ]; then rm -f oldbuild mv build oldbuild else #the server under build has never been started, keep the oldbuild link to the (currently) running server rm -f build fi ln -s ../builds/$DIR/ build