#!/bin/sh

## set the path to your Yale installation here or in an environment variable
#YALE_HOME=${HOME}/yale

## set the maximum amount of memory Java uses here or in an environment variable
#MAX_JAVA_MEMORY=256

## set the path to the files with additional operators here or in an environment variable
#YALE_OPERATORS_ADDITIONAL=

if [ -z "${YALE_HOME}" ] ; then
    BIN_DIR=`dirname "$0"`
    YALE_HOME=`dirname "${BIN_DIR}"`
    echo "YALE_HOME is not set. Trying the directory '${YALE_HOME}'..."
fi 

if [ -z "${JAVA_HOME}" ] ; then
    echo "JAVA_HOME is not set. Edit $0 and/or your local startup files."
    exit 1
else
    JAVA=${JAVA_HOME}/bin/java
fi

if [ -z "${MAX_JAVA_MEMORY}" ] ; then
    MAX_JAVA_MEMORY=128
    echo "No maximum Java memory defined, using 128 Mb..."
fi


BUILD="${YALE_HOME}/build"
YALE_JAR="${YALE_HOME}/lib/yale.jar"
YALE_CLASSPATH=""

if [ -d "${BUILD}" ] ; then
    YALE_CLASSPATH=${BUILD}
elif [ -f "${YALE_JAR}" ] ; then
    YALE_CLASSPATH=${YALE_JAR}
else
    echo "Neither ${BUILD} nor ${YALE_JAR} was found."
    echo "Try 'ant build' or 'ant dist' first or check the value of YALE_HOME!"
    exit 1
fi

for JAR in ${YALE_HOME}/lib/*.jar ${YALE_HOME}/lib/freehep/*.jar
do
CLASSPATH=${CLASSPATH}:${JAR}
done

CLASSPATH=${YALE_CLASSPATH}:${CLASSPATH}

echo "Starting Yale from '${YALE_HOME}', using classes from '${YALE_CLASSPATH}'..."

$JAVA \
    -Xmx${MAX_JAVA_MEMORY}m \
	-cp ${CLASSPATH} \
	-Dyale.home=${YALE_HOME} \
	-Dyale.operators.additional=${YALE_OPERATORS_ADDITIONAL} \
	edu.udo.cs.yale.YaleCommandLine $@
