Adam R. B. Jack wrote:
Ok build a new scripts-antlet then give ant dist a trythe dist is easy, just do a "ant dist" hmm not sure it get dependent jars. I will check this weekend. But you want a install to "DEPOT_HOME" I will also do that this weekend.
Yup, it is the 'extras' I am looking for. If we can put some effort into this aspect, I think we can start using it more. Usage usage usage...
You will see it generates bat and bash scripts to run java files.
You can modify the scripts antlet to also add .py scripts
Here is a what the generated bash script looks like #! /bin/sh
# Autogenerated script to execute the java class # org.apache.depot.update.tool.DownloaderTool
# load system-wide depot-update configuration if [ -f "/etc/depot-update.conf" ] ; then . /etc/depot-update.conf fi
# provide default values for people who don't use RPMs if [ -z "$rpm_mode" ] ; then rpm_mode=false; fi if [ -z "$usejikes" ] ; then usejikes=false; fi
# load user depot-update configuration if [ -f "$HOME/.depot-updaterc" ] ; then . $HOME/.depot-updaterc fi
# OS specific support. $var _must_ be set to either true or false.
cygwin=false;
darwin=false;
case "`uname`" in
CYGWIN*) cygwin=true ;;
Darwin*) darwin=true
if [ -z "$JAVA_HOME" ] ; then
JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Home fi
;;
esac
if [ -z "${depot-update_HOME}" ] ; then
# try to find depot-update
if [ -d /opt/depot-update ] ; then
depot-update_HOME=/opt/depot-update
fi if [ -d "${HOME}/opt/depot-update" ] ; then
depot-update_HOME="${HOME}/opt/depot-update"
fi## resolve links - $0 may be a link to depot-update's home PRG="$0" progname=`basename "$0"`
# need this for relative symlinks while [ -h "$PRG" ] ; do ls=`ls -ld "$PRG"` link=`expr "$ls" : '.*-> \(.*\)$'` if expr "$link" : '.*/.*' > /dev/null; then PRG="$link" else PRG=`dirname "$PRG"`"/$link" fi done
depot-update_HOME=`dirname "$PRG"`/..
# make it fully qualified
depot-update_HOME=`cd "${depot-update_HOME}" && pwd`fi
# For Cygwin, ensure paths are in UNIX format before anything is touched
if $cygwin ; then
[ -n "${depot-update_HOME}" ] &&
depot-update_HOME=`cygpath --unix "${depot-update_HOME}"`
[ -n "$JAVA_HOME" ] &&
JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
[ -n "$CLASSPATH" ] &&
CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
fi# set depot-update_LIB location
depot-update_LIB="${depot-update_HOME}/lib"if [ -z "$JAVACMD" ] ; then
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD="$JAVA_HOME/jre/sh/java"
else
JAVACMD="$JAVA_HOME/bin/java"
fi
else
JAVACMD=java
fi
fiif [ ! -x "$JAVACMD" ] ; then echo "Error: JAVA_HOME is not defined correctly." echo " We cannot execute $JAVACMD" exit 1 fi
if [ -n "$CLASSPATH" ] ; then LOCALCLASSPATH="$CLASSPATH" fi
# in rpm_mode get depot-update/optional/xml parser&api from JAVALIBDIR
if $rpm_mode; then
JAVALIBDIR="/usr/share/java"
for i in depot-update depot-update-optional jaxp_parser xml_apis
do
if [ -z "$LOCALCLASSPATH" ] ; then
LOCALCLASSPATH="$JAVALIBDIR/$i.jar"
else
LOCALCLASSPATH="$JAVALIBDIR/$i.jar:$LOCALCLASSPATH"
fi
done# in rpm mode depot-update/lib is in /usr/share/java/depot-update
depot-update_LIB="${JAVALIBDIR}/depot-update"fi
# add in the dependency .jar files in non-RPM mode (the default)
for i in "${depot-update_LIB}"/*.jar
do
# if the directory is empty, then it will return the input string
# this is stupid, so case for it
if [ -f "$i" ] ; then
if [ -z "$LOCALCLASSPATH" ] ; then
LOCALCLASSPATH="$i"
else
LOCALCLASSPATH="$i:$LOCALCLASSPATH"
fi
fi
doneif [ -n "$JAVA_HOME" ] ; then if [ -f "$JAVA_HOME/lib/tools.jar" ] ; then LOCALCLASSPATH="$LOCALCLASSPATH:$JAVA_HOME/lib/tools.jar" fi
if [ -f "$JAVA_HOME/lib/classes.zip" ] ; then LOCALCLASSPATH="$LOCALCLASSPATH:$JAVA_HOME/lib/classes.zip" fi
# OSX hack to make depot-update work with jikes
if $darwin ; then
OSXHACK="/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Classes"
if [ -d "${OSXHACK}" ] ; then
for i in "${OSXHACK}"/*.jar
do
JIKESPATH="$JIKESPATH:$i"
done
fi
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
#add the Project Jar
LOCALCLASSPATH=$LOCALCLASSPATH:${depot-update_HOME}/${project.version.package-jar}
# add the extra classpath
LOCALCLASSPATH=$LOCALCLASSPATH:
# For Cygwin, switch paths to Windows format before running java
if $cygwin; then
depot-update_HOME=`cygpath --path --windows "${depot-update_HOME}"`
JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
LOCALCLASSPATH=`cygpath --path --windows "$LOCALCLASSPATH"`
CYGHOME=`cygpath --path --windows "$HOME"`
fiif [ -n "$CYGHOME" ]; then
exec "$JAVACMD" -classpath "$LOCALCLASSPATH" -Ddepot-update.home="${depot-update_HOME}" -Dcygwin.user.home="$CYGHOME" ${depot-update_OPTS} org.apache.depot.update.tool.DownloaderTool ${depot-update_ARGS} "$@"
else
exec "$JAVACMD" -classpath "$LOCALCLASSPATH" -Ddepot-update.home="${depot-update_HOME}" ${depot-update_OPTS} org.apache.depot.update.tool.DownloaderTool ${depot-update_ARGS} "$@"
fi
