#!/bin/sh
#
#-*- mode: Fundamental; tab-width: 4; -*-
# ex:ts=4
#
# FreeBSD-specific startup script for Apache Ant.
#
# See: http://ant.apache.org/
#
# $FreeBSD: ports/devel/apache-ant/files/ant,v 1.4 2004/04/03 11:30:54 znerd Exp $
#


DEFAULT_JAVACMD=%%JAVA%%
DEFAULT_JAVA_HOME=%%JAVA_HOME%%
DEFAULT_JIKES=false
ANT_HOME=%%ANT_HOME%%


#-----------------------------------------------------------------------------
# Determine configuration settings
#-----------------------------------------------------------------------------

# Load system-wide configuration
if [ -f "%%PREFIX%%/etc/ant.conf" ]; then 
	. %%PREFIX%%/etc/ant.conf
fi

# Load user-specific configuration
if [ -f "${HOME}/.antrc" ]; then 
	. "${HOME}/.antrc"
fi

# Determine if Jikes should be used
if [ -z "${usejikes}" ]; then
	usejikes=${DEFAULT_JIKES};
fi

# Set ANT_LIB location
ANT_LIB="${ANT_HOME}/lib"

# Determine 'java' executable
if [ -z "${JAVACMD}" ]; then 
	if [ -n "${JAVA_HOME}"  ]; then
		JAVACMD="${JAVA_HOME}/bin/java"
	else
		JAVACMD=${DEFAULT_JAVACMD}
	fi
fi

# Check if 'java' executable can be found
if [ ! -x "${JAVACMD}" ]; then
	echo "Error: JAVA_HOME is not defined correctly: ${JAVA_HOME}"
	echo "       Unable to execute ${JAVACMD}"
	exit 1
fi


#-----------------------------------------------------------------------------
# Determine CLASSPATH
#-----------------------------------------------------------------------------

# Prepend LOCALCLASSPATH variable with ant-launcher.jar
if [ -z "${LOCALCLASSPATH}" ]; then
	LOCALCLASSPATH=${ANT_LIB}/ant-launcher.jar
else
	LOCALCLASSPATH=${ANT_LIB}/ant-launcher.jar:${LOCALCLASSPATH}
fi

# FreeBSD-specific: Add the .jar files from ${PREFIX}/share/java/classes
if [ "${ANT_INCLUDE_SHARED_JARS}" = "YES" ]; then
	CLASSPATH_CMD=/usr/local/bin/classpath
	if [ -x "${CLASSPATH_CMD}" ]; then
		SHARED_JARS=`${CLASSPATH_CMD}`
		LOCALCLASSPATH=${SHARED_JARS}:"${LOCALCLASSPATH}"
	else
		echo "Error: ${CLASSPATH_CMD} is not present on your system"
		echo "       you should install the java/javavmwrapper port"
		exit 1
	fi
fi


#-----------------------------------------------------------------------------
# Determine all Ant options
#-----------------------------------------------------------------------------

# Add Jikes flag if appropriate
if ${usejikes}; then
	ANT_OPTS="${ANT_OPTS} -Dbuild.compiler=jikes"
fi


#-----------------------------------------------------------------------------
# Execute Ant
#-----------------------------------------------------------------------------

if [ -n "${JIKESPATH}" ]; then
	exec "${JAVACMD}" ${ANT_OPTS} -classpath "${LOCALCLASSPATH}" -Dant.home="${ANT_HOME}" -Djikes.class.path="${JIKESPATH}" org.apache.tools.ant.launch.Launcher ${ANT_ARGS} -lib "${CLASSPATH}" "$@"
else
	exec "${JAVACMD}" ${ANT_OPTS} -classpath "${LOCALCLASSPATH}" -Dant.home="${ANT_HOME}"                                   org.apache.tools.ant.launch.Launcher ${ANT_ARGS} -lib "${CLASSPATH}" "$@"
fi
