Browse Source

Make build & bootstrap work on macOS (cf ant);

normalise whitespace in scripts and use Perl idioms properly
master
twogee 7 years ago
parent
commit
580e99c5bf
13 changed files with 229 additions and 248 deletions
  1. +43
    -41
      bootstrap.sh
  2. +19
    -13
      build.sh
  3. +1
    -1
      src/script/.gitattributes
  4. +83
    -87
      src/script/ant
  5. +2
    -2
      src/script/ant.bat
  6. +2
    -2
      src/script/ant.cmd
  7. +2
    -3
      src/script/antRun.bat
  8. +7
    -9
      src/script/antRun.pl
  9. +1
    -1
      src/script/antenv.cmd
  10. +19
    -20
      src/script/complete-ant-cmd.pl
  11. +2
    -3
      src/script/lcp.bat
  12. +46
    -64
      src/script/runant.pl
  13. +2
    -2
      src/script/runrc.cmd

+ 43
- 41
bootstrap.sh View File

@@ -19,30 +19,34 @@
cygwin=false; cygwin=false;
darwin=false; darwin=false;
case "`uname`" in case "`uname`" in
CYGWIN*) cygwin=true ;;
Darwin*) darwin=true
if [ -z "$JAVA_HOME" ] ; then
JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Home
fi
;;
CYGWIN*)
cygwin=true ;;
Darwin*)
darwin=true
if [ -z "$JAVA_HOME" ]; then
if [ -x '/usr/libexec/java_home' ]; then
JAVA_HOME=`/usr/libexec/java_home`
elif [ -d "/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home" ]; then
JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home
fi
fi
;;
esac esac


# For Cygwin, ensure paths are in UNIX format before anything is touched # For Cygwin, ensure paths are in UNIX format before anything is touched
if $cygwin ; then
[ -n "$JAVA_HOME" ] &&
JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
[ -n "$CLASSPATH" ] &&
CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
if $cygwin; then
[ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
[ -n "$CLASSPATH" ] && CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
fi fi


# You will need to specify JAVA_HOME if compiling with 1.2 or later. # You will need to specify JAVA_HOME if compiling with 1.2 or later.


if [ -n "$JAVA_HOME" ] ; then
if [ -f "$JAVA_HOME/lib/tools.jar" ] ; then
if [ -n "$JAVA_HOME" ]; then
if [ -f "$JAVA_HOME/lib/tools.jar" ]; then
CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/tools.jar CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/tools.jar
fi fi


if [ -f "$JAVA_HOME/lib/classes.zip" ] ; then
if [ -f "$JAVA_HOME/lib/classes.zip" ]; then
CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/classes.zip CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/classes.zip
fi fi
else else
@@ -55,9 +59,9 @@ fi
# IBM's JDK on AIX uses strange locations for the executables: # IBM's JDK on AIX uses strange locations for the executables:
# JAVA_HOME/jre/sh for java and rmid # JAVA_HOME/jre/sh for java and rmid
# JAVA_HOME/sh for javac and rmic # JAVA_HOME/sh for javac and rmic
if [ -z "$JAVAC" ] ; then
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/sh/javac" ] ; then
if [ -z "$JAVAC" ]; then
if [ -n "$JAVA_HOME" ]; then
if [ -x "$JAVA_HOME/sh/javac" ]; then
JAVAC=${JAVA_HOME}/sh/javac; JAVAC=${JAVA_HOME}/sh/javac;
else else
JAVAC=${JAVA_HOME}/bin/javac; JAVAC=${JAVA_HOME}/bin/javac;
@@ -66,9 +70,9 @@ if [ -z "$JAVAC" ] ; then
JAVAC=javac JAVAC=javac
fi fi
fi fi
if [ -z "$JAVACMD" ] ; then
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
if [ -z "$JAVACMD" ]; then
if [ -n "$JAVA_HOME" ]; then
if [ -x "$JAVA_HOME/jre/sh/java" ]; then
JAVACMD=$JAVA_HOME/jre/sh/java JAVACMD=$JAVA_HOME/jre/sh/java
else else
JAVACMD=$JAVA_HOME/bin/java JAVACMD=$JAVA_HOME/bin/java
@@ -78,7 +82,7 @@ if [ -z "$JAVACMD" ] ; then
fi fi
fi fi


if [ ! -x "$JAVACMD" ] ; then
if [ ! -x "$JAVACMD" ]; then
echo "Error: JAVA_HOME is not defined correctly." echo "Error: JAVA_HOME is not defined correctly."
echo " We cannot execute $JAVACMD" echo " We cannot execute $JAVACMD"
exit exit
@@ -89,22 +93,21 @@ export ANT_HOME


echo ... Bootstrapping Ant Distribution echo ... Bootstrapping Ant Distribution


if [ -d "bootstrap" ] ; then
if [ -d "bootstrap" ]; then
rm -r bootstrap rm -r bootstrap
fi fi


if [ -d "build" ] ; then
if [ -d "build" ]; then
rm -r build rm -r build
fi fi


DIRLIBS=lib/optional/*.jar DIRLIBS=lib/optional/*.jar
for i in ${DIRLIBS}
do
# if the directory is empty, then it will return the input string
# this is stupid, so case for it
if [ "$i" != "${DIRLIBS}" ] ; then
CLASSPATH=$CLASSPATH:"$i"
fi
for i in ${DIRLIBS}; do
# if the directory is empty, then it will return the input string
# this is stupid, so case for it
if [ "$i" != "${DIRLIBS}" ]; then
CLASSPATH=$CLASSPATH:"$i"
fi
done done


TOOLS=src/main/org/apache/tools TOOLS=src/main/org/apache/tools
@@ -126,14 +129,14 @@ mkdir -p bin
echo ... Compiling Ant Classes echo ... Compiling Ant Classes


"${JAVAC}" $BOOTJAVAC_OPTS -d ${CLASSDIR} ${TOOLS}/bzip2/*.java ${TOOLS}/tar/*.java ${TOOLS}/zip/*.java \ "${JAVAC}" $BOOTJAVAC_OPTS -d ${CLASSDIR} ${TOOLS}/bzip2/*.java ${TOOLS}/tar/*.java ${TOOLS}/zip/*.java \
${TOOLS}/ant/util/regexp/RegexpMatcher.java \
${TOOLS}/ant/util/regexp/RegexpMatcherFactory.java \
${TOOLS}/ant/property/*.java \
${TOOLS}/ant/types/*.java \
${TOOLS}/ant/types/resources/*.java \
${TOOLS}/ant/*.java ${TOOLS}/ant/taskdefs/*.java \
${TOOLS}/ant/taskdefs/compilers/*.java \
${TOOLS}/ant/taskdefs/condition/*.java
${TOOLS}/ant/util/regexp/RegexpMatcher.java \
${TOOLS}/ant/util/regexp/RegexpMatcherFactory.java \
${TOOLS}/ant/property/*.java \
${TOOLS}/ant/types/*.java \
${TOOLS}/ant/types/resources/*.java \
${TOOLS}/ant/*.java ${TOOLS}/ant/taskdefs/*.java \
${TOOLS}/ant/taskdefs/compilers/*.java \
${TOOLS}/ant/taskdefs/condition/*.java
ret=$? ret=$?
if [ $ret != 0 ]; then if [ $ret != 0 ]; then
echo ... Failed compiling Ant classes ! echo ... Failed compiling Ant classes !
@@ -143,9 +146,9 @@ fi
echo ... Copying Required Files echo ... Copying Required Files


cp src/main/org/apache/tools/ant/taskdefs/defaults.properties \ cp src/main/org/apache/tools/ant/taskdefs/defaults.properties \
${CLASSDIR}/org/apache/tools/ant/taskdefs
${CLASSDIR}/org/apache/tools/ant/taskdefs
cp src/main/org/apache/tools/ant/types/defaults.properties \ cp src/main/org/apache/tools/ant/types/defaults.properties \
${CLASSDIR}/org/apache/tools/ant/types
${CLASSDIR}/org/apache/tools/ant/types
cp src/script/antRun bin cp src/script/antRun bin
chmod +x bin/antRun chmod +x bin/antRun


@@ -158,7 +161,6 @@ if [ $ret != 0 ]; then
exit $ret exit $ret
fi fi



echo ... Cleaning Up Build Directories echo ... Cleaning Up Build Directories


rm -rf ${CLASSDIR} rm -rf ${CLASSDIR}


+ 19
- 13
build.sh View File

@@ -19,34 +19,41 @@
cygwin=false; cygwin=false;
darwin=false; darwin=false;
case "`uname`" in case "`uname`" in
CYGWIN*) cygwin=true ;;
Darwin*) darwin=true
if [ -z "$JAVA_HOME" ] ; then
JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Home
fi
;;
CYGWIN*)
cygwin=true
;;
Darwin*)
darwin=true
if [ -z "$JAVA_HOME" ]; then
if [ -x '/usr/libexec/java_home' ]; then
JAVA_HOME=`/usr/libexec/java_home`
elif [ -d "/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home" ]; then
JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home
fi
fi
;;
esac esac


REALANTHOME=$ANT_HOME REALANTHOME=$ANT_HOME
if [ -z "$PWD" ]; then if [ -z "$PWD" ]; then
ANT_HOME=./bootstrap
ANT_HOME=./bootstrap
else else
ANT_HOME="$PWD"/bootstrap
ANT_HOME="$PWD"/bootstrap
fi fi
export ANT_HOME export ANT_HOME


if test ! -f bootstrap/lib/ant.jar -o ! -x bootstrap/bin/ant -o ! -x bootstrap/bin/antRun ; then
if test ! -f bootstrap/lib/ant.jar -o ! -x bootstrap/bin/ant -o ! -x bootstrap/bin/antRun; then
/bin/sh ./bootstrap.sh /bin/sh ./bootstrap.sh
fi fi


if test ! -f bootstrap/lib/ant.jar -o ! -x bootstrap/bin/ant -o ! -x bootstrap/bin/antRun ; then
if test ! -f bootstrap/lib/ant.jar -o ! -x bootstrap/bin/ant -o ! -x bootstrap/bin/antRun; then
echo Bootstrap FAILED echo Bootstrap FAILED
exit 1 exit 1
fi fi


if [ "$REALANTHOME" != "" ] ; then
if [ "$REALANTHOME" != "" ]; then
if $cygwin; then if $cygwin; then
REALANTHOME=`cygpath --windows "$REALANTHOME"`
REALANTHOME=`cygpath --windows "$REALANTHOME"`
fi fi
ANT_INSTALL="-Dant.install=$REALANTHOME" ANT_INSTALL="-Dant.install=$REALANTHOME"
else else
@@ -54,4 +61,3 @@ else
fi fi


bootstrap/bin/ant -nouserlib -lib lib/optional "$ANT_INSTALL" $* bootstrap/bin/ant -nouserlib -lib lib/optional "$ANT_INSTALL" $*


+ 1
- 1
src/script/.gitattributes View File

@@ -1,2 +1,2 @@
ant eol=lf ant eol=lf
anrRun eol=lf
antRun eol=lf

+ 83
- 87
src/script/ant View File

@@ -22,35 +22,33 @@ use_jikes_default=false
ant_exec_debug=false ant_exec_debug=false
show_help=false show_help=false


if [ -z "$PROTECT_NL" ]
then
if [ -z "$PROTECT_NL" ]; then
PROTECT_NL=true PROTECT_NL=true
os=`uname -s` os=`uname -s`
rel=`uname -r` rel=`uname -r`
# heirloom bourne-shell used by Solaris 10 is not POSIX # heirloom bourne-shell used by Solaris 10 is not POSIX
# it lacks features necessary to protect trailing NL from subshell trimming # it lacks features necessary to protect trailing NL from subshell trimming
if [ "$os" = SunOS -a "$rel" = "5.10" ]
then
if [ "$os" = SunOS -a "$rel" = "5.10" ]; then
PROTECT_NL=false PROTECT_NL=false
fi fi
fi fi


for arg in "$@" ; do
if [ "$arg" = "--noconfig" ] ; then
for arg in "$@"; do
if [ "$arg" = "--noconfig" ]; then
no_config=true no_config=true
elif [ "$arg" = "--usejikes" ] ; then
elif [ "$arg" = "--usejikes" ]; then
use_jikes_default=true use_jikes_default=true
elif [ "$arg" = "--execdebug" ] ; then
elif [ "$arg" = "--execdebug" ]; then
ant_exec_debug=true ant_exec_debug=true
elif [ my"$arg" = my"--h" -o my"$arg" = my"--help" ] ; then
elif [ my"$arg" = my"--h" -o my"$arg" = my"--help" ]; then
show_help=true show_help=true
ant_exec_args="$ant_exec_args -h" ant_exec_args="$ant_exec_args -h"
else else
if [ my"$arg" = my"-h" -o my"$arg" = my"-help" ] ; then
if [ my"$arg" = my"-h" -o my"$arg" = my"-help" ]; then
show_help=true show_help=true
fi fi


if [ "$PROTECT_NL" = "true" ] ; then
if [ "$PROTECT_NL" = "true" ]; then
# pad the value with X to protect trailing NLs from subshell output trimming # pad the value with X to protect trailing NLs from subshell output trimming
esc_arg="${arg}X" esc_arg="${arg}X"
else else
@@ -64,14 +62,13 @@ for arg in "$@" ; do
# subshell (heirloom and posix) will trim the added trailing newline # subshell (heirloom and posix) will trim the added trailing newline
esc_arg="`printf '%s\n' "$esc_arg" | sed -e 's@\([$\"\`\\]\)@\\\\\\1@g' `" esc_arg="`printf '%s\n' "$esc_arg" | sed -e 's@\([$\"\`\\]\)@\\\\\\1@g' `"


if [ "$PROTECT_NL" = "true" ] ; then
if [ "$PROTECT_NL" = "true" ]; then
# remove the padding X added above, this syntax is POSIX compatible but not heirloom-sh # remove the padding X added above, this syntax is POSIX compatible but not heirloom-sh
esc_arg="${esc_arg%X}" esc_arg="${esc_arg%X}"
fi fi
quoted_arg="\"$esc_arg\"" quoted_arg="\"$esc_arg\""


if $ant_exec_debug
then
if $ant_exec_debug; then
# using printf to avoid echo line continuation and escape interpretation # using printf to avoid echo line continuation and escape interpretation
printf "arg : %s\n" "$arg" printf "arg : %s\n" "$arg"
printf "quoted_arg: %s\n" "$quoted_arg" printf "quoted_arg: %s\n" "$quoted_arg"
@@ -81,37 +78,37 @@ for arg in "$@" ; do
done done


# Source/default ant configuration # Source/default ant configuration
if $no_config ; then
if $no_config; then
rpm_mode=false rpm_mode=false
usejikes=$use_jikes_default usejikes=$use_jikes_default
else else
# load system-wide ant configuration (ONLY if ANT_HOME has NOT been set) # load system-wide ant configuration (ONLY if ANT_HOME has NOT been set)
if [ -z "$ANT_HOME" -o "$ANT_HOME" = "/usr/share/ant" ]; then if [ -z "$ANT_HOME" -o "$ANT_HOME" = "/usr/share/ant" ]; then
if [ -f "/etc/ant.conf" ] ; then
if [ -f "/etc/ant.conf" ]; then
. /etc/ant.conf . /etc/ant.conf
fi fi
fi fi


# load user ant configuration # load user ant configuration
if [ -f "$HOME/.ant/ant.conf" ] ; then
if [ -f "$HOME/.ant/ant.conf" ]; then
. $HOME/.ant/ant.conf . $HOME/.ant/ant.conf
fi fi
if [ -f "$HOME/.antrc" ] ; then
if [ -f "$HOME/.antrc" ]; then
. "$HOME/.antrc" . "$HOME/.antrc"
fi fi


# provide default configuration values # provide default configuration values
if [ -z "$rpm_mode" ] ; then
if [ -z "$rpm_mode" ]; then
rpm_mode=false rpm_mode=false
fi fi
if [ -z "$usejikes" ] ; then
if [ -z "$usejikes" ]; then
usejikes=$use_jikes_default usejikes=$use_jikes_default
fi fi
fi fi


# Setup Java environment in rpm mode # Setup Java environment in rpm mode
if $rpm_mode ; then
if [ -f /usr/share/java-utils/java-functions ] ; then
if $rpm_mode; then
if [ -f /usr/share/java-utils/java-functions ]; then
. /usr/share/java-utils/java-functions . /usr/share/java-utils/java-functions
set_jvm set_jvm
set_javacmd set_javacmd
@@ -123,32 +120,37 @@ cygwin=false;
darwin=false; darwin=false;
mingw=false; mingw=false;
case "`uname`" in case "`uname`" in
CYGWIN*) cygwin=true ;;
Darwin*) darwin=true
if [ -z "$JAVA_HOME" ] ; then
if [ -x '/usr/libexec/java_home' ] ; then
JAVA_HOME=`/usr/libexec/java_home`
elif [ -d "/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home" ]; then
JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home
fi
fi
;;
MINGW*) mingw=true ;;
CYGWIN*)
cygwin=true
;;
Darwin*)
darwin=true
if [ -z "$JAVA_HOME" ]; then
if [ -x '/usr/libexec/java_home' ]; then
JAVA_HOME=`/usr/libexec/java_home`
elif [ -d "/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home" ]; then
JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home
fi
fi
;;
MINGW*)
mingw=true
;;
esac esac


if [ -z "$ANT_HOME" -o ! -d "$ANT_HOME" ] ; then
if [ -z "$ANT_HOME" -o ! -d "$ANT_HOME" ]; then
## resolve links - $0 may be a link to ant's home ## resolve links - $0 may be a link to ant's home
PRG="$0" PRG="$0"
progname=`basename "$0"` progname=`basename "$0"`


# need this for relative symlinks # need this for relative symlinks
while [ -h "$PRG" ] ; do
while [ -h "$PRG" ]; do
ls=`ls -ld "$PRG"` ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'` link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
PRG="$link"
else else
PRG=`dirname "$PRG"`"/$link"
PRG=`dirname "$PRG"`"/$link"
fi fi
done done


@@ -160,41 +162,37 @@ fi


# For Cygwin and Mingw, ensure paths are in UNIX format before # For Cygwin and Mingw, ensure paths are in UNIX format before
# anything is touched # anything is touched
if $cygwin ; then
[ -n "$ANT_HOME" ] &&
ANT_HOME=`cygpath --unix "$ANT_HOME"`
[ -n "$JAVA_HOME" ] &&
JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
if $cygwin; then
[ -n "$ANT_HOME" ] && ANT_HOME=`cygpath --unix "$ANT_HOME"`
[ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
fi fi
if $mingw ; then
[ -n "$ANT_HOME" ] &&
ANT_HOME="`(cd "$ANT_HOME"; pwd)`"
[ -n "$JAVA_HOME" ] &&
JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
if $mingw; then
[ -n "$ANT_HOME" ] && ANT_HOME="`(cd "$ANT_HOME"; pwd)`"
[ -n "$JAVA_HOME" ] && JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
fi fi


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


if [ -z "$JAVACMD" ] ; then
if [ -n "$JAVA_HOME" ] ; then
if [ -z "$JAVACMD" ]; then
if [ -n "$JAVA_HOME" ]; then
# IBM's JDK on AIX uses strange locations for the executables # IBM's JDK on AIX uses strange locations for the executables
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ]; then
JAVACMD="$JAVA_HOME/jre/sh/java" JAVACMD="$JAVA_HOME/jre/sh/java"
elif [ -x "$JAVA_HOME/jre/bin/java" ] ; then
elif [ -x "$JAVA_HOME/jre/bin/java" ]; then
JAVACMD="$JAVA_HOME/jre/bin/java" JAVACMD="$JAVA_HOME/jre/bin/java"
else else
JAVACMD="$JAVA_HOME/bin/java" JAVACMD="$JAVA_HOME/bin/java"
fi fi
else else
JAVACMD=`which java 2> /dev/null ` JAVACMD=`which java 2> /dev/null `
if [ -z "$JAVACMD" ] ; then
if [ -z "$JAVACMD" ]; then
JAVACMD=java JAVACMD=java
fi fi
fi fi
fi fi


if [ ! -x "$JAVACMD" ] ; then
if [ ! -x "$JAVACMD" ]; then
echo "Error: JAVA_HOME is not defined correctly." echo "Error: JAVA_HOME is not defined correctly."
echo " We cannot execute $JAVACMD" echo " We cannot execute $JAVACMD"
exit 1 exit 1
@@ -207,41 +205,40 @@ fi
# is discouraged as it is not java-version safe. A user should # is discouraged as it is not java-version safe. A user should
# request optional jars and their dependencies via the OPT_JAR_LIST # request optional jars and their dependencies via the OPT_JAR_LIST
# variable # variable
if $rpm_mode && [ -x /usr/bin/build-classpath ] ; then
if $rpm_mode && [ -x /usr/bin/build-classpath ]; then
LOCALCLASSPATH="$(/usr/bin/build-classpath ant ant-launcher jaxp_parser_impl xml-commons-apis)" LOCALCLASSPATH="$(/usr/bin/build-classpath ant ant-launcher jaxp_parser_impl xml-commons-apis)"


# If no optional jars have been specified then build the default list # If no optional jars have been specified then build the default list
if [ -z "$OPT_JAR_LIST" ] ; then
if [ -z "$OPT_JAR_LIST" ]; then
for file in /etc/ant.d/*; do for file in /etc/ant.d/*; do
if [ -f "$file" ]; then if [ -f "$file" ]; then
case "$file" in case "$file" in
*~) ;;
*#*) ;;
*.rpmsave) ;;
*.rpmnew) ;;
*)
for dep in `cat "$file"`; do
OPT_JAR_LIST="$OPT_JAR_LIST${OPT_JAR_LIST:+ }$dep"
done
*~|*#*|*.rpmsave|*.rpmnew)
;;
*)
for dep in `cat "$file"`; do
OPT_JAR_LIST="$OPT_JAR_LIST${OPT_JAR_LIST:+ }$dep"
done
;;
esac esac
fi fi
done done
fi fi


# If the user requested to try to add some other jars to the classpath # If the user requested to try to add some other jars to the classpath
if [ -n "$OPT_JAR_LIST" ] ; then
if [ -n "$OPT_JAR_LIST" ]; then
_OPTCLASSPATH="$(/usr/bin/build-classpath $OPT_JAR_LIST 2> /dev/null)" _OPTCLASSPATH="$(/usr/bin/build-classpath $OPT_JAR_LIST 2> /dev/null)"
if [ -n "$_OPTCLASSPATH" ] ; then
if [ -n "$_OPTCLASSPATH" ]; then
LOCALCLASSPATH="$LOCALCLASSPATH:$_OPTCLASSPATH" LOCALCLASSPATH="$LOCALCLASSPATH:$_OPTCLASSPATH"
fi fi
fi fi


# Explicitly add javac path to classpath, assume JAVA_HOME set # Explicitly add javac path to classpath, assume JAVA_HOME set
# properly in rpm mode # properly in rpm mode
if [ -f "$JAVA_HOME/lib/tools.jar" ] ; then
if [ -f "$JAVA_HOME/lib/tools.jar" ]; then
LOCALCLASSPATH="$LOCALCLASSPATH:$JAVA_HOME/lib/tools.jar" LOCALCLASSPATH="$LOCALCLASSPATH:$JAVA_HOME/lib/tools.jar"
fi fi
if [ -f "$JAVA_HOME/lib/classes.zip" ] ; then
if [ -f "$JAVA_HOME/lib/classes.zip" ]; then
LOCALCLASSPATH="$LOCALCLASSPATH:$JAVA_HOME/lib/classes.zip" LOCALCLASSPATH="$LOCALCLASSPATH:$JAVA_HOME/lib/classes.zip"
fi fi


@@ -251,11 +248,11 @@ if $rpm_mode && [ -x /usr/bin/build-classpath ] ; then
# #
# if CLASSPATH_OVERRIDE is not set, we'll have the normal behaviour # if CLASSPATH_OVERRIDE is not set, we'll have the normal behaviour
# with ant-found jars first and user CLASSPATH after # with ant-found jars first and user CLASSPATH after
if [ -n "$CLASSPATH" ] ; then
# merge local and specified classpath
if [ -z "$LOCALCLASSPATH" ] ; then
if [ -n "$CLASSPATH" ]; then
# merge local and specified classpath
if [ -z "$LOCALCLASSPATH" ]; then
LOCALCLASSPATH="$CLASSPATH" LOCALCLASSPATH="$CLASSPATH"
elif [ -n "$CLASSPATH_OVERRIDE" ] ; then
elif [ -n "$CLASSPATH_OVERRIDE" ]; then
LOCALCLASSPATH="$CLASSPATH:$LOCALCLASSPATH" LOCALCLASSPATH="$CLASSPATH:$LOCALCLASSPATH"
else else
LOCALCLASSPATH="$LOCALCLASSPATH:$CLASSPATH" LOCALCLASSPATH="$LOCALCLASSPATH:$CLASSPATH"
@@ -266,20 +263,19 @@ if $rpm_mode && [ -x /usr/bin/build-classpath ] ; then
fi fi
else else
# not using rpm_mode; use launcher to determine classpaths # not using rpm_mode; use launcher to determine classpaths
if [ -z "$LOCALCLASSPATH" ] ; then
if [ -z "$LOCALCLASSPATH" ]; then
LOCALCLASSPATH=$ANT_LIB/ant-launcher.jar LOCALCLASSPATH=$ANT_LIB/ant-launcher.jar
else else
LOCALCLASSPATH=$ANT_LIB/ant-launcher.jar:$LOCALCLASSPATH LOCALCLASSPATH=$ANT_LIB/ant-launcher.jar:$LOCALCLASSPATH
fi fi
fi fi


if [ -n "$JAVA_HOME" ] ; then
if [ -n "$JAVA_HOME" ]; then
# OSX hack to make Ant work with jikes # OSX hack to make Ant work with jikes
if $darwin ; then
if $darwin; then
OSXHACK="${JAVA_HOME}/../Classes" OSXHACK="${JAVA_HOME}/../Classes"
if [ -d "${OSXHACK}" ] ; then
for i in "${OSXHACK}"/*.jar
do
if [ -d "${OSXHACK}" ]; then
for i in "${OSXHACK}"/*.jar; do
JIKESPATH="$JIKESPATH:$i" JIKESPATH="$JIKESPATH:$i"
done done
fi fi
@@ -297,7 +293,7 @@ fi
# in the name in the path. Let's assume that paths containing ; are more # in the name in the path. Let's assume that paths containing ; are more
# rare than windows style paths on cygwin. # rare than windows style paths on cygwin.
if $cygwin; then if $cygwin; then
if [ "$OS" = "Windows_NT" ] && cygpath -m .>/dev/null 2>/dev/null ; then
if [ "$OS" = "Windows_NT" ] && cygpath -m .>/dev/null 2>/dev/null; then
format=mixed format=mixed
else else
format=windows format=windows
@@ -307,7 +303,7 @@ if $cygwin; then
[ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --$format "$JAVA_HOME"` [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --$format "$JAVA_HOME"`
LCP_TEMP=`cygpath --path --unix "$LOCALCLASSPATH"` LCP_TEMP=`cygpath --path --unix "$LOCALCLASSPATH"`
LOCALCLASSPATH=`cygpath --path --$format "$LCP_TEMP"` LOCALCLASSPATH=`cygpath --path --$format "$LCP_TEMP"`
if [ -n "$CLASSPATH" ] ; then
if [ -n "$CLASSPATH" ]; then
CP_TEMP=`cygpath --path --unix "$CLASSPATH"` CP_TEMP=`cygpath --path --unix "$CLASSPATH"`
CLASSPATH=`cygpath --path --$format "$CP_TEMP"` CLASSPATH=`cygpath --path --$format "$CP_TEMP"`
fi fi
@@ -315,7 +311,7 @@ if $cygwin; then
fi fi


# Show script help if requested # Show script help if requested
if $show_help ; then
if $show_help; then
echo $0 '[script options] [options] [target [target2 [target3] ..]]' echo $0 '[script options] [options] [target [target2 [target3] ..]]'
echo 'Script Options:' echo 'Script Options:'
echo ' --help, --h print this message and ant help' echo ' --help, --h print this message and ant help'
@@ -326,33 +322,33 @@ if $show_help ; then
echo ' set explicitly in configuration files' echo ' set explicitly in configuration files'
echo ' --execdebug print ant exec line generated by this' echo ' --execdebug print ant exec line generated by this'
echo ' launch script' echo ' launch script'
echo ' '
echo ''
fi fi
# add a second backslash to variables terminated by a backslash under cygwin # add a second backslash to variables terminated by a backslash under cygwin
if $cygwin; then if $cygwin; then
case "$ANT_HOME" in case "$ANT_HOME" in
*\\ ) *\\ )
ANT_HOME="$ANT_HOME\\"
ANT_HOME="$ANT_HOME\\"
;; ;;
esac esac
case "$CYGHOME" in case "$CYGHOME" in
*\\ ) *\\ )
CYGHOME="$CYGHOME\\"
CYGHOME="$CYGHOME\\"
;; ;;
esac esac
case "$JIKESPATH" in case "$JIKESPATH" in
*\\ ) *\\ )
JIKESPATH="$JIKESPATH\\"
JIKESPATH="$JIKESPATH\\"
;; ;;
esac esac
case "$LOCALCLASSPATH" in case "$LOCALCLASSPATH" in
*\\ ) *\\ )
LOCALCLASSPATH="$LOCALCLASSPATH\\"
LOCALCLASSPATH="$LOCALCLASSPATH\\"
;; ;;
esac esac
case "$CLASSPATH" in case "$CLASSPATH" in
*\\ ) *\\ )
CLASSPATH="$CLASSPATH\\"
CLASSPATH="$CLASSPATH\\"
;; ;;
esac esac
fi fi
@@ -371,7 +367,7 @@ else
fi fi
fi fi
ant_exec_command="exec \"\$JAVACMD\" $ANT_OPTS -classpath \"\$LOCALCLASSPATH\" -Dant.home=\"\$ANT_HOME\" -Dant.library.dir=\"\$ANT_LIB\" $ant_sys_opts org.apache.tools.ant.launch.Launcher $ANT_ARGS -cp \"\$CLASSPATH\"" ant_exec_command="exec \"\$JAVACMD\" $ANT_OPTS -classpath \"\$LOCALCLASSPATH\" -Dant.home=\"\$ANT_HOME\" -Dant.library.dir=\"\$ANT_LIB\" $ant_sys_opts org.apache.tools.ant.launch.Launcher $ANT_ARGS -cp \"\$CLASSPATH\""
if $ant_exec_debug ; then
if $ant_exec_debug; then
# using printf to avoid echo line continuation and escape interpretation confusion # using printf to avoid echo line continuation and escape interpretation confusion
printf "%s\n" "$ant_exec_command $ant_exec_args" printf "%s\n" "$ant_exec_command $ant_exec_args"
fi fi


+ 2
- 2
src/script/ant.bat View File

@@ -6,9 +6,9 @@ REM this work for additional information regarding copyright ownership.
REM The ASF licenses this file to You under the Apache License, Version 2.0 REM The ASF licenses this file to You under the Apache License, Version 2.0
REM (the "License"); you may not use this file except in compliance with REM (the "License"); you may not use this file except in compliance with
REM the License. You may obtain a copy of the License at REM the License. You may obtain a copy of the License at
REM
REM
REM http://www.apache.org/licenses/LICENSE-2.0 REM http://www.apache.org/licenses/LICENSE-2.0
REM
REM
REM Unless required by applicable law or agreed to in writing, software REM Unless required by applicable law or agreed to in writing, software
REM distributed under the License is distributed on an "AS IS" BASIS, REM distributed under the License is distributed on an "AS IS" BASIS,
REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.


+ 2
- 2
src/script/ant.cmd View File

@@ -1,4 +1,4 @@
/*
/*
Licensed to the Apache Software Foundation (ASF) under one or more Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership. this work for additional information regarding copyright ownership.
@@ -13,7 +13,7 @@
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and See the License for the specific language governing permissions and
limitations under the License. limitations under the License.
Run ant Run ant
*/ */




+ 2
- 3
src/script/antRun.bat View File

@@ -6,9 +6,9 @@ REM this work for additional information regarding copyright ownership.
REM The ASF licenses this file to You under the Apache License, Version 2.0 REM The ASF licenses this file to You under the Apache License, Version 2.0
REM (the "License"); you may not use this file except in compliance with REM (the "License"); you may not use this file except in compliance with
REM the License. You may obtain a copy of the License at REM the License. You may obtain a copy of the License at
REM
REM
REM http://www.apache.org/licenses/LICENSE-2.0 REM http://www.apache.org/licenses/LICENSE-2.0
REM
REM
REM Unless required by applicable law or agreed to in writing, software REM Unless required by applicable law or agreed to in writing, software
REM distributed under the License is distributed on an "AS IS" BASIS, REM distributed under the License is distributed on an "AS IS" BASIS,
REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -47,4 +47,3 @@ rem echo %ANT_RUN_CMD%


if "%OS%"=="Windows_NT" @endlocal if "%OS%"=="Windows_NT" @endlocal
if "%OS%"=="WINNT" @endlocal if "%OS%"=="WINNT" @endlocal


+ 7
- 9
src/script/antRun.pl View File

@@ -20,7 +20,7 @@
# antRun.pl # antRun.pl
# #
# wrapper script for invoking commands on a platform with Perl installed # wrapper script for invoking commands on a platform with Perl installed
# this is akin to antRun.bat, and antRun the SH script
# this is akin to antRun.bat, and antRun the SH script
####################################################################### #######################################################################
#be fussy about variables #be fussy about variables
use strict; use strict;
@@ -29,21 +29,20 @@ use strict;
#use warnings; #use warnings;


#and set $debug to 1 to turn on trace info (currently unused) #and set $debug to 1 to turn on trace info (currently unused)
my $debug=1;
my $debug = 1;


####################################################################### #######################################################################
# change drive and directory to "%1" # change drive and directory to "%1"
my $ANT_RUN_CMD = @ARGV[0]; my $ANT_RUN_CMD = @ARGV[0];


# assign current run command to "%2" # assign current run command to "%2"
chdir (@ARGV[0]) || die "Can't cd to $ARGV[0]: $!\n";
chdir(@ARGV[0]) || die "Can't cd to $ARGV[0]: $!\n";
if ($^O eq "NetWare") { if ($^O eq "NetWare") {
# There is a bug in Perl 5 on NetWare, where chdir does not # There is a bug in Perl 5 on NetWare, where chdir does not
# do anything. On NetWare, the following path-prefixed form should
# do anything. On NetWare, the following path-prefixed form should
# always work. (afaict) # always work. (afaict)
$ANT_RUN_CMD .= "/".@ARGV[1];
}
else {
$ANT_RUN_CMD .= "/" . @ARGV[1];
} else {
$ANT_RUN_CMD = @ARGV[1]; $ANT_RUN_CMD = @ARGV[1];
} }


@@ -55,8 +54,7 @@ shift;
my $returnValue = system $ANT_RUN_CMD, @ARGV; my $returnValue = system $ANT_RUN_CMD, @ARGV;
if ($returnValue eq 0) { if ($returnValue eq 0) {
exit 0; exit 0;
}
else {
} else {
# only 0 and 1 are widely recognized as exit values # only 0 and 1 are widely recognized as exit values
# so change the exit value to 1 # so change the exit value to 1
exit 1; exit 1;


+ 1
- 1
src/script/antenv.cmd View File

@@ -1,4 +1,4 @@
/*
/*
Licensed to the Apache Software Foundation (ASF) under one or more Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership. this work for additional information regarding copyright ownership.


+ 19
- 20
src/script/complete-ant-cmd.pl View File

@@ -15,10 +15,10 @@
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
# #
# A script to allow Bash or Z-Shell to complete an Ant command-line.
# A script to allow Bash or Z-Shell to complete an Ant command-line.
# #
# To install for Bash 2.0 or better, add the following to ~/.bashrc: # To install for Bash 2.0 or better, add the following to ~/.bashrc:
#
#
# complete -C complete-ant-cmd.pl ant build.sh # complete -C complete-ant-cmd.pl ant build.sh
# #
# To install for Z-Shell 2.5 or better, add the following to ~/.zshrc: # To install for Z-Shell 2.5 or better, add the following to ~/.zshrc:
@@ -37,11 +37,11 @@ my $word = $ARGV[1];


my @completions; my @completions;
if ($word =~ /^-/) { if ($word =~ /^-/) {
list( restrict( $word, getArguments() ));
list(restrict($word, getArguments()));
} elsif ($cmdLine =~ /-(f|file|buildfile)\s+\S*$/) { } elsif ($cmdLine =~ /-(f|file|buildfile)\s+\S*$/) {
list( getBuildFiles($word) );
list(getBuildFiles($word));
} else { } else {
list( restrict( $word, getTargets() ));
list(restrict($word, getTargets()));
} }


exit(0); exit(0);
@@ -54,18 +54,18 @@ sub list {


sub restrict { sub restrict {
my ($word, @completions) = @_; my ($word, @completions) = @_;
grep( /^\Q$word\E/, @completions );
grep(/^\Q$word\E/, @completions);
} }


sub getArguments { sub getArguments {
qw(-buildfile -debug -emacs -f -file -find -help -listener -logfile
-logger -projecthelp -quiet -verbose -version);
qw(-buildfile -debug -emacs -f -file -find -help -listener -logfile
-logger -projecthelp -quiet -verbose -version);
} }




sub getBuildFiles { sub getBuildFiles {
my ($word) = @_; my ($word) = @_;
grep( /\.xml$/, glob( "$word*" ));
grep(/\.xml$/, glob("$word*"));
} }


sub getTargets { sub getTargets {
@@ -83,10 +83,10 @@ sub getTargets {
my $cacheFile = $buildFile; my $cacheFile = $buildFile;
$cacheFile =~ s|(.*/)?(.*)|${1}.ant-targets-${2}|; $cacheFile =~ s|(.*/)?(.*)|${1}.ant-targets-${2}|;
if ((!-e $cacheFile) || (-z $cacheFile) || (-M $buildFile) < (-M $cacheFile)) { if ((!-e $cacheFile) || (-z $cacheFile) || (-M $buildFile) < (-M $cacheFile)) {
open( CACHE, '>'.$cacheFile ) || die "can\'t write $cacheFile: $!\n";
open( HELP, "$antCmd -projecthelp -debug -buildfile '$buildFile'|" ) || return();
open(CACHE, '>'.$cacheFile) || die "can\'t write $cacheFile: $!\n";
open(HELP, "$antCmd -projecthelp -debug -buildfile '$buildFile'|") || return();
my %targets; my %targets;
while( <HELP> ) {
while (<HELP>) {
# Exclude target names starting with dash, because they cannot be # Exclude target names starting with dash, because they cannot be
# specified on the command line. # specified on the command line.
if (/^\s+\+Target:\s+(?!-)(\S+)/) { if (/^\s+\+Target:\s+(?!-)(\S+)/) {
@@ -94,22 +94,21 @@ sub getTargets {
} }
} }
my @targets = sort keys %targets; my @targets = sort keys %targets;
for (@targets) { print CACHE "$_\n"; }
for (@targets) {
print CACHE "$_\n";
}
return @targets; return @targets;
} }
# Read the target-cache # Read the target-cache
open( CACHE, $cacheFile ) || die "can\'t read $cacheFile: $!\n";
open(CACHE, $cacheFile) || die "can\'t read $cacheFile: $!\n";
my @targets; my @targets;
while (<CACHE>) { while (<CACHE>) {
chop; chop;
s/\r$//; # for Cygwin s/\r$//; # for Cygwin
push( @targets, $_ );
push(@targets, $_);
} }
close( CACHE );
close(CACHE);
@targets; @targets;


} }




+ 2
- 3
src/script/lcp.bat View File

@@ -5,9 +5,9 @@ REM this work for additional information regarding copyright ownership.
REM The ASF licenses this file to You under the Apache License, Version 2.0 REM The ASF licenses this file to You under the Apache License, Version 2.0
REM (the "License"); you may not use this file except in compliance with REM (the "License"); you may not use this file except in compliance with
REM the License. You may obtain a copy of the License at REM the License. You may obtain a copy of the License at
REM
REM
REM http://www.apache.org/licenses/LICENSE-2.0 REM http://www.apache.org/licenses/LICENSE-2.0
REM
REM
REM Unless required by applicable law or agreed to in writing, software REM Unless required by applicable law or agreed to in writing, software
REM distributed under the License is distributed on an "AS IS" BASIS, REM distributed under the License is distributed on an "AS IS" BASIS,
REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -28,4 +28,3 @@ goto argCheck


:gotAllArgs :gotAllArgs
set LOCALCLASSPATH=%LOCALCLASSPATH%;%_CLASSPATHCOMPONENT% set LOCALCLASSPATH=%LOCALCLASSPATH%;%_CLASSPATHCOMPONENT%


+ 46
- 64
src/script/runant.pl View File

@@ -27,7 +27,7 @@
# the code is not totally portable due to classpath and directory splitting # the code is not totally portable due to classpath and directory splitting
# issues. oops. (NB, use File::Spec::Functions will help and the code is # issues. oops. (NB, use File::Spec::Functions will help and the code is
# structured for the catfile() call, but because of perl version funnies # structured for the catfile() call, but because of perl version funnies
# the code is not included.
# the code is not included.
####################################################################### #######################################################################
# #
# Assumptions: # Assumptions:
@@ -47,7 +47,7 @@ use strict;
#use warnings; #use warnings;


#and set $debug to 1 to turn on trace info #and set $debug to 1 to turn on trace info
my $debug=1;
my $debug = 1;


####################################################################### #######################################################################
# #
@@ -55,43 +55,34 @@ my $debug=1;
# #


my $HOME = $ENV{ANT_HOME}; my $HOME = $ENV{ANT_HOME};
if ($HOME eq "")
{
if (!$HOME) {
die "\n\nANT_HOME *MUST* be set!\n\n"; die "\n\nANT_HOME *MUST* be set!\n\n";
}
}


my $JAVACMD = $ENV{JAVACMD};
$JAVACMD = "java" if $JAVACMD eq "";
my $JAVACMD = $ENV{JAVACMD} || "java";


my $onnetware = 0;
if ($^O eq "NetWare")
{
$onnetware = 1;
}
my $onnetware = ($^O eq "NetWare");


my $oncygwin = ($^O eq "cygwin"); my $oncygwin = ($^O eq "cygwin");


#ISSUE: what java wants to split up classpath varies from platform to platform
#ISSUE: what java wants to split up classpath varies from platform to platform
#and perl is not too hot at hinting which box it is on. #and perl is not too hot at hinting which box it is on.
#here I assume ":" 'cept on win32, dos, and netware. Add extra tests here as needed. #here I assume ":" 'cept on win32, dos, and netware. Add extra tests here as needed.
my $s=":";
if(($^O eq "MSWin32") || ($^O eq "dos") || ($^O eq "cygwin") ||
($onnetware == 1))
{
$s=";";
}
my $s = ":";
if (($^O eq "MSWin32") || ($^O eq "dos") || $oncygwin || $onnetware) {
$s=";";
}


#build up standard classpath #build up standard classpath
my $localpath = "$HOME/lib/ant-launcher.jar"; my $localpath = "$HOME/lib/ant-launcher.jar";
#set JVM options and Ant arguments, if any #set JVM options and Ant arguments, if any
my @ANT_OPTS=split(" ", $ENV{ANT_OPTS});
my @ANT_ARGS=split(" ", $ENV{ANT_ARGS});
my @ANT_OPTS = split(" ", $ENV{ANT_OPTS});
my @ANT_ARGS = split(" ", $ENV{ANT_ARGS});


#jikes #jikes
if($ENV{JIKESPATH} ne "")
{
push @ANT_OPTS, "-Djikes.class.path=$ENV{JIKESPATH}";
}
if ($ENV{JIKESPATH}) {
push @ANT_OPTS, "-Djikes.class.path=$ENV{JIKESPATH}";
}


#construct arguments to java #construct arguments to java
my @ARGS; my @ARGS;
@@ -99,52 +90,43 @@ push @ARGS, @ANT_OPTS;


my $CYGHOME = ""; my $CYGHOME = "";


my $classpath=$ENV{CLASSPATH};
if ($oncygwin == 1) {
$localpath = `cygpath --path --windows $localpath`;
chomp ($localpath);
if (! $classpath eq "")
{
$classpath = `cygpath --path --windows "$classpath"`;
chomp ($classpath);
}
$HOME = `cygpath --path --windows $HOME`;
chomp ($HOME);
$CYGHOME = `cygpath --path --windows $ENV{HOME}`;
chomp ($CYGHOME);
my $classpath = $ENV{CLASSPATH};
if ($oncygwin) {
$localpath = `cygpath --path --windows $localpath`;
chomp ($localpath);
if (!$classpath) {
$classpath = `cygpath --path --windows "$classpath"`;
chomp ($classpath);
}
$HOME = `cygpath --path --windows $HOME`;
chomp ($HOME);
$CYGHOME = `cygpath --path --windows $ENV{HOME}`;
chomp ($CYGHOME);
} }
push @ARGS, "-classpath", "$localpath"; push @ARGS, "-classpath", "$localpath";
push @ARGS, "-Dant.home=$HOME"; push @ARGS, "-Dant.home=$HOME";
if ( ! $CYGHOME eq "" )
{
push @ARGS, "-Dcygwin.user.home=\"$CYGHOME\""
if (!$CYGHOME) {
push @ARGS, "-Dcygwin.user.home=\"$CYGHOME\""
} }
push @ARGS, "org.apache.tools.ant.launch.Launcher", @ANT_ARGS; push @ARGS, "org.apache.tools.ant.launch.Launcher", @ANT_ARGS;
push @ARGS, @ARGV; push @ARGS, @ARGV;
if (! $classpath eq "")
{
if ($onnetware == 1)
{
# make classpath literally $CLASSPATH
# this is to avoid pushing us over the 512 character limit
# even skip the ; - that is already in $localpath
push @ARGS, "-lib", "\$CLASSPATH";
}
else
{
push @ARGS, "-lib", "$classpath";
}
if (!$classpath) {
if ($onnetware) {
# make classpath literally $CLASSPATH
# this is to avoid pushing us over the 512 character limit
# even skip the ; - that is already in $localpath
push @ARGS, "-lib", "\$CLASSPATH";
} else {
push @ARGS, "-lib", "$classpath";
}
} }
print "\n $JAVACMD @ARGS\n\n" if ($debug); print "\n $JAVACMD @ARGS\n\n" if ($debug);


my $returnValue = system $JAVACMD, @ARGS; my $returnValue = system $JAVACMD, @ARGS;
if ($returnValue eq 0)
{
exit 0;
}
else
{
# only 0 and 1 are widely recognized as exit values
# so change the exit value to 1
exit 1;
}
if ($returnValue eq 0) {
exit 0;
} else {
# only 0 and 1 are widely recognized as exit values
# so change the exit value to 1
exit 1;
}

+ 2
- 2
src/script/runrc.cmd View File

@@ -1,4 +1,4 @@
/*
/*
Licensed to the Apache Software Foundation (ASF) under one or more Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership. this work for additional information regarding copyright ownership.
@@ -15,7 +15,7 @@
limitations under the License. limitations under the License.


Run RC file, name is in the first arg, second arg is either PATH Run RC file, name is in the first arg, second arg is either PATH
ENV or -r or nothing
ENV or -r or nothing
*/ */


parse arg name path rest parse arg name path rest


Loading…
Cancel
Save