JAR files in ${PREFIX}/share/java/classes/ in the CLASSPATH for Ant. Bumped PORTREVISION.
142 lines
3.7 KiB
Bash
142 lines
3.7 KiB
Bash
#!/bin/sh
|
|
#
|
|
# FreeBSD-specific startup script for Jakarta Ant.
|
|
#
|
|
# See: http://jakarta.apache.org/ant/
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
|
|
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
|
|
|
|
# Determine the JDK home directory
|
|
if [ -z "${JAVA_HOME}" ]; then
|
|
JAVA_HOME=${DEFAULT_JAVA_HOME}
|
|
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 find ${JAVACMD}"
|
|
exit 1
|
|
fi
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
# Determine CLASSPATH
|
|
#-----------------------------------------------------------------------------
|
|
|
|
# Initialize the classpath to the existing classpath
|
|
if [ -n "$CLASSPATH" ]; then
|
|
LOCALCLASSPATH="${CLASSPATH}"
|
|
fi
|
|
|
|
# Add the dependency .jar files from ${ANT_HOME}/lib
|
|
for JAR_FILE in "${ANT_LIB}"/*.jar; do
|
|
|
|
# If the directory is empty, then the input string is returned
|
|
if [ -f "${JAR_FILE}" ]; then
|
|
if [ -z "$LOCALCLASSPATH" ]; then
|
|
LOCALCLASSPATH="${JAR_FILE}"
|
|
else
|
|
LOCALCLASSPATH="${JAR_FILE}":"$LOCALCLASSPATH"
|
|
fi
|
|
fi
|
|
done
|
|
|
|
# FreeBSD-specific: Add the .jar files from ${PREFIX}/share/java/classes
|
|
for JAR_FILE in "%%PREFIX%%/share/java/classes"/*.jar; do
|
|
|
|
# If the directory is empty, then the input string is returned
|
|
if [ -f "${JAR_FILE}" ]; then
|
|
if [ -z "${LOCALCLASSPATH}" ]; then
|
|
LOCALCLASSPATH="${JAR_FILE}"
|
|
else
|
|
LOCALCLASSPATH="${JAR_FILE}":"${LOCALCLASSPATH}"
|
|
fi
|
|
fi
|
|
done
|
|
|
|
# Add the JDK tools.jar or classes.zip file to the CLASSPATH
|
|
if [ -n "${JAVA_HOME}" ]; then
|
|
if [ -f "${JAVA_HOME}/lib/tools.jar" ]; then
|
|
LOCALCLASSPATH="${LOCALCLASSPATH}:${JAVA_HOME}/lib/tools.jar"
|
|
elif [ -f "${JAVA_HOME}/lib/classes.zip" ]; then
|
|
LOCALCLASSPATH="${LOCALCLASSPATH}:${JAVA_HOME}/lib/classes.zip"
|
|
fi
|
|
else
|
|
echo "Warning: JAVA_HOME environment variable is not set."
|
|
echo " If build fails because sun.* classes could not be found"
|
|
echo " you will need to set the JAVA_HOME environment variable"
|
|
echo " to the installation directory of java."
|
|
fi
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
# Determine all Ant options
|
|
#-----------------------------------------------------------------------------
|
|
|
|
# Add Jikes flag if appropriate
|
|
if ${usejikes}; then
|
|
ANT_OPTS="${ANT_OPTS} -Dbuild.compiler=jikes"
|
|
fi
|
|
|
|
# Add the Jikes path to the options if necessary
|
|
if [ -n "${JIKESPATH}" ]; then
|
|
ANT_OPTS="${ANT_OPTS} -Djikes.class.path=${JIKESPATH}"
|
|
fi
|
|
|
|
# Add option for the CLASSPATH
|
|
ANT_OPTS="${ANT_OPTS} -classpath ${LOCALCLASSPATH}"
|
|
|
|
# Add option for Ant home directory
|
|
ANT_OPTS="${ANT_OPTS} -Dant.home=${ANT_HOME}"
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
# Call Ant
|
|
#-----------------------------------------------------------------------------
|
|
|
|
if [ -n "${VERBOSE_ANT_SCRIPT}" ]; then
|
|
echo "Java command: ${JAVACMD}"
|
|
echo "Ant options: ${ANT_OPTS}"
|
|
echo "Ant arguments: ${ANT_ARGS}"
|
|
fi
|
|
|
|
${JAVACMD} ${ANT_OPTS} org.apache.tools.ant.Main ${ANT_ARGS} $@
|