#!/bin/sh

LIB=rox-clib

APP_DIR=`dirname $0`
APP_DIR=`cd "$APP_DIR";pwd`; export APP_DIR

if [ "x$PLATFORM" = x ]; then

  ARCH=`uname -m`
  case $ARCH in
	i?86) ARCH=ix86 ;;
  esac

  PLATFORM=`uname -s`-$ARCH ; export PLATFORM
fi

if [ "x$MAKE" = x ]; then
  MAKE=make export MAKE
fi

if [ "x$PKG_CONFIG_PATH" = x ]; then
  PKG_CONFIG_PATH="$APP_DIR"/"$PLATFORM"/lib
else
  PKG_CONFIG_PATH="$APP_DIR"/"$PLATFORM"/lib:"$PKG_CONFIG_PATH"
fi
export PKG_CONFIG_PATH

DEBUGGER=""

case "$1" in
    --xterm-compile)
        exec xterm -e "$0" --compile;;
    --compile)
	if [ ! -d "$APP_DIR"/src ] ; then
	    echo "ERROR from $0:" >&2
	    echo "Cannot compile - source code is missing!" >&2
	    exit 1
	fi
	echo "Compiling $APP_DIR... please wait..." >&2
	if [ ! -x "$APP_DIR/src/configure" ]; then
	    echo "No 'configure' script! Trying to run autoconf..."
	    (cd "$APP_DIR"/src; ./dist)
	fi
	rm -f "$APP_DIR"/src/config.cache "$APP_DIR"/src/Makefile
	cd "$APP_DIR"/src && ./configure --with-platform=$PLATFORM \
			&& $MAKE clean && $MAKE  \
			&& echo Done >&2 && exit 0
	echo Compile failed >&2
	echo Press Return... >&2
	read WAIT
	exit 1;;
    --location)
        exec echo "$APP_DIR";;
esac

BIN="$APP_DIR"/$PLATFORM/bin/pkg

if [ -x "$BIN" ] ; then
    exec $DEBUGGER "$BIN" "$@"
else
    echo "ERROR from $0:" >&2
    echo "I cannot find an executable file for your host type ($PLATFORM)." >&2
    echo "Trying to compile..." >&2
    if [ -n "$DISPLAY" ]; then
	xterm -e "$0" --compile
    else
	"$0" --compile
    fi
    if [ -x "$BIN" ]; then
	exec "$BIN" "$@"
    fi
    exit 1
fi
