#!/bin/sh
ROOT=$(git rev-parse --show-toplevel)

[ -z "$BUILD" ] && BUILD=Debug
if [ -z "$JOBS" ] ; then
  if [ -e /usr/sbin/sysctl ]; then
    JOBS=`sysctl -n hw.ncpu`
  else
    JOBS=`nproc`
  fi
fi
DISTCC=`which distcc`
if [ ! -z "$DISTCC" ] ; then
JOBS=`distcc -j`
if [ -z "$JOBS" ] ; then
JOBS=1
elif [ $JOBS -gt 1 ] ; then
[ -z "$CC" ] && [ ! -z `which clang` ] && CC="clang"
[ -z "$CC" ] && [ ! -z `which gcc` ] && CC="gcc"
[ -z "$CC" ] && [ ! -z `which tcc` ] && CC="tcc"
[ -z "$CC" ] && [ ! -z `which cc` ] && CC="cc"
CC="$DISTCC $CC"
MAKEOPTS=-j$JOBS
fi
fi
echo "Building with $JOBS jobs"

if [ ! -d $ROOT/$BUILD ]; then
  echo "cannot find build directory $BUILD in $ROOT. did you run cmake-init?"
  exit
fi

echo "build eressea"
cd $ROOT/$BUILD
BRANCH=$(git status -s -b | head -1 | cut -d\  -f 2 | sed 's/\..*//')
if [ "$BRANCH"=="master" ] ; then
VERSION=$(git describe --match 'v*.*.*' --tags | sed 's/^v//')
cmake -DERESSEA_VERSION="$VERSION" ..
else
REV=$(git rev-parse --short HEAD)
cmake -DERESSEA_BUILDNO="$REV" ..
fi
make $MAKEOPTS && make test
cd $OLDPWD