normalise whitespace in scripts and use Perl idioms properlymaster
| @@ -19,30 +19,34 @@ | |||
| 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 | |||
| ;; | |||
| 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 | |||
| # 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 | |||
| # 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 | |||
| fi | |||
| if [ -f "$JAVA_HOME/lib/classes.zip" ] ; then | |||
| if [ -f "$JAVA_HOME/lib/classes.zip" ]; then | |||
| CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/classes.zip | |||
| fi | |||
| else | |||
| @@ -55,9 +59,9 @@ fi | |||
| # IBM's JDK on AIX uses strange locations for the executables: | |||
| # JAVA_HOME/jre/sh for java and rmid | |||
| # 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; | |||
| else | |||
| JAVAC=${JAVA_HOME}/bin/javac; | |||
| @@ -66,9 +70,9 @@ if [ -z "$JAVAC" ] ; then | |||
| JAVAC=javac | |||
| 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 | |||
| else | |||
| JAVACMD=$JAVA_HOME/bin/java | |||
| @@ -78,7 +82,7 @@ if [ -z "$JAVACMD" ] ; then | |||
| fi | |||
| fi | |||
| if [ ! -x "$JAVACMD" ] ; then | |||
| if [ ! -x "$JAVACMD" ]; then | |||
| echo "Error: JAVA_HOME is not defined correctly." | |||
| echo " We cannot execute $JAVACMD" | |||
| exit | |||
| @@ -89,22 +93,21 @@ export ANT_HOME | |||
| echo ... Bootstrapping Ant Distribution | |||
| if [ -d "bootstrap" ] ; then | |||
| if [ -d "bootstrap" ]; then | |||
| rm -r bootstrap | |||
| fi | |||
| if [ -d "build" ] ; then | |||
| if [ -d "build" ]; then | |||
| rm -r build | |||
| fi | |||
| 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 | |||
| TOOLS=src/main/org/apache/tools | |||
| @@ -126,14 +129,14 @@ mkdir -p bin | |||
| echo ... Compiling Ant Classes | |||
| "${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=$? | |||
| if [ $ret != 0 ]; then | |||
| echo ... Failed compiling Ant classes ! | |||
| @@ -143,9 +146,9 @@ fi | |||
| echo ... Copying Required Files | |||
| 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 \ | |||
| ${CLASSDIR}/org/apache/tools/ant/types | |||
| ${CLASSDIR}/org/apache/tools/ant/types | |||
| cp src/script/antRun bin | |||
| chmod +x bin/antRun | |||
| @@ -158,7 +161,6 @@ if [ $ret != 0 ]; then | |||
| exit $ret | |||
| fi | |||
| echo ... Cleaning Up Build Directories | |||
| rm -rf ${CLASSDIR} | |||
| @@ -19,34 +19,41 @@ | |||
| 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 | |||
| ;; | |||
| 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 | |||
| REALANTHOME=$ANT_HOME | |||
| if [ -z "$PWD" ]; then | |||
| ANT_HOME=./bootstrap | |||
| ANT_HOME=./bootstrap | |||
| else | |||
| ANT_HOME="$PWD"/bootstrap | |||
| ANT_HOME="$PWD"/bootstrap | |||
| fi | |||
| 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 | |||
| 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 | |||
| exit 1 | |||
| fi | |||
| if [ "$REALANTHOME" != "" ] ; then | |||
| if [ "$REALANTHOME" != "" ]; then | |||
| if $cygwin; then | |||
| REALANTHOME=`cygpath --windows "$REALANTHOME"` | |||
| REALANTHOME=`cygpath --windows "$REALANTHOME"` | |||
| fi | |||
| ANT_INSTALL="-Dant.install=$REALANTHOME" | |||
| else | |||
| @@ -54,4 +61,3 @@ else | |||
| fi | |||
| bootstrap/bin/ant -nouserlib -lib lib/optional "$ANT_INSTALL" $* | |||
| @@ -1,2 +1,2 @@ | |||
| ant eol=lf | |||
| anrRun eol=lf | |||
| antRun eol=lf | |||
| @@ -22,35 +22,33 @@ use_jikes_default=false | |||
| ant_exec_debug=false | |||
| show_help=false | |||
| if [ -z "$PROTECT_NL" ] | |||
| then | |||
| if [ -z "$PROTECT_NL" ]; then | |||
| PROTECT_NL=true | |||
| os=`uname -s` | |||
| rel=`uname -r` | |||
| # heirloom bourne-shell used by Solaris 10 is not POSIX | |||
| # 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 | |||
| fi | |||
| fi | |||
| for arg in "$@" ; do | |||
| if [ "$arg" = "--noconfig" ] ; then | |||
| for arg in "$@"; do | |||
| if [ "$arg" = "--noconfig" ]; then | |||
| no_config=true | |||
| elif [ "$arg" = "--usejikes" ] ; then | |||
| elif [ "$arg" = "--usejikes" ]; then | |||
| use_jikes_default=true | |||
| elif [ "$arg" = "--execdebug" ] ; then | |||
| elif [ "$arg" = "--execdebug" ]; then | |||
| 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 | |||
| ant_exec_args="$ant_exec_args -h" | |||
| 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 | |||
| fi | |||
| if [ "$PROTECT_NL" = "true" ] ; then | |||
| if [ "$PROTECT_NL" = "true" ]; then | |||
| # pad the value with X to protect trailing NLs from subshell output trimming | |||
| esc_arg="${arg}X" | |||
| else | |||
| @@ -64,14 +62,13 @@ for arg in "$@" ; do | |||
| # subshell (heirloom and posix) will trim the added trailing newline | |||
| 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 | |||
| esc_arg="${esc_arg%X}" | |||
| fi | |||
| quoted_arg="\"$esc_arg\"" | |||
| if $ant_exec_debug | |||
| then | |||
| if $ant_exec_debug; then | |||
| # using printf to avoid echo line continuation and escape interpretation | |||
| printf "arg : %s\n" "$arg" | |||
| printf "quoted_arg: %s\n" "$quoted_arg" | |||
| @@ -81,37 +78,37 @@ for arg in "$@" ; do | |||
| done | |||
| # Source/default ant configuration | |||
| if $no_config ; then | |||
| if $no_config; then | |||
| rpm_mode=false | |||
| usejikes=$use_jikes_default | |||
| else | |||
| # 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 [ -f "/etc/ant.conf" ] ; then | |||
| if [ -f "/etc/ant.conf" ]; then | |||
| . /etc/ant.conf | |||
| fi | |||
| fi | |||
| # load user ant configuration | |||
| if [ -f "$HOME/.ant/ant.conf" ] ; then | |||
| if [ -f "$HOME/.ant/ant.conf" ]; then | |||
| . $HOME/.ant/ant.conf | |||
| fi | |||
| if [ -f "$HOME/.antrc" ] ; then | |||
| if [ -f "$HOME/.antrc" ]; then | |||
| . "$HOME/.antrc" | |||
| fi | |||
| # provide default configuration values | |||
| if [ -z "$rpm_mode" ] ; then | |||
| if [ -z "$rpm_mode" ]; then | |||
| rpm_mode=false | |||
| fi | |||
| if [ -z "$usejikes" ] ; then | |||
| if [ -z "$usejikes" ]; then | |||
| usejikes=$use_jikes_default | |||
| fi | |||
| fi | |||
| # 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 | |||
| set_jvm | |||
| set_javacmd | |||
| @@ -123,32 +120,37 @@ cygwin=false; | |||
| darwin=false; | |||
| mingw=false; | |||
| 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 | |||
| 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 | |||
| PRG="$0" | |||
| progname=`basename "$0"` | |||
| # need this for relative symlinks | |||
| while [ -h "$PRG" ] ; do | |||
| while [ -h "$PRG" ]; do | |||
| ls=`ls -ld "$PRG"` | |||
| link=`expr "$ls" : '.*-> \(.*\)$'` | |||
| if expr "$link" : '/.*' > /dev/null; then | |||
| PRG="$link" | |||
| PRG="$link" | |||
| else | |||
| PRG=`dirname "$PRG"`"/$link" | |||
| PRG=`dirname "$PRG"`"/$link" | |||
| fi | |||
| done | |||
| @@ -160,41 +162,37 @@ fi | |||
| # For Cygwin and Mingw, ensure paths are in UNIX format before | |||
| # 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 | |||
| 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 | |||
| # set ANT_LIB location | |||
| 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 | |||
| if [ -x "$JAVA_HOME/jre/sh/java" ] ; then | |||
| if [ -x "$JAVA_HOME/jre/sh/java" ]; then | |||
| 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" | |||
| else | |||
| JAVACMD="$JAVA_HOME/bin/java" | |||
| fi | |||
| else | |||
| JAVACMD=`which java 2> /dev/null ` | |||
| if [ -z "$JAVACMD" ] ; then | |||
| if [ -z "$JAVACMD" ]; then | |||
| JAVACMD=java | |||
| fi | |||
| fi | |||
| fi | |||
| if [ ! -x "$JAVACMD" ] ; then | |||
| if [ ! -x "$JAVACMD" ]; then | |||
| echo "Error: JAVA_HOME is not defined correctly." | |||
| echo " We cannot execute $JAVACMD" | |||
| exit 1 | |||
| @@ -207,41 +205,40 @@ fi | |||
| # is discouraged as it is not java-version safe. A user should | |||
| # request optional jars and their dependencies via the OPT_JAR_LIST | |||
| # 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)" | |||
| # 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 | |||
| if [ -f "$file" ]; then | |||
| 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 | |||
| fi | |||
| done | |||
| fi | |||
| # 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)" | |||
| if [ -n "$_OPTCLASSPATH" ] ; then | |||
| if [ -n "$_OPTCLASSPATH" ]; then | |||
| LOCALCLASSPATH="$LOCALCLASSPATH:$_OPTCLASSPATH" | |||
| fi | |||
| fi | |||
| # Explicitly add javac path to classpath, assume JAVA_HOME set | |||
| # 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" | |||
| fi | |||
| if [ -f "$JAVA_HOME/lib/classes.zip" ] ; then | |||
| if [ -f "$JAVA_HOME/lib/classes.zip" ]; then | |||
| LOCALCLASSPATH="$LOCALCLASSPATH:$JAVA_HOME/lib/classes.zip" | |||
| 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 | |||
| # 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" | |||
| elif [ -n "$CLASSPATH_OVERRIDE" ] ; then | |||
| elif [ -n "$CLASSPATH_OVERRIDE" ]; then | |||
| LOCALCLASSPATH="$CLASSPATH:$LOCALCLASSPATH" | |||
| else | |||
| LOCALCLASSPATH="$LOCALCLASSPATH:$CLASSPATH" | |||
| @@ -266,20 +263,19 @@ if $rpm_mode && [ -x /usr/bin/build-classpath ] ; then | |||
| fi | |||
| else | |||
| # not using rpm_mode; use launcher to determine classpaths | |||
| if [ -z "$LOCALCLASSPATH" ] ; then | |||
| if [ -z "$LOCALCLASSPATH" ]; then | |||
| LOCALCLASSPATH=$ANT_LIB/ant-launcher.jar | |||
| else | |||
| LOCALCLASSPATH=$ANT_LIB/ant-launcher.jar:$LOCALCLASSPATH | |||
| fi | |||
| fi | |||
| if [ -n "$JAVA_HOME" ] ; then | |||
| if [ -n "$JAVA_HOME" ]; then | |||
| # OSX hack to make Ant work with jikes | |||
| if $darwin ; then | |||
| if $darwin; then | |||
| 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" | |||
| done | |||
| fi | |||
| @@ -297,7 +293,7 @@ fi | |||
| # in the name in the path. Let's assume that paths containing ; are more | |||
| # rare than windows style paths on cygwin. | |||
| 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 | |||
| else | |||
| format=windows | |||
| @@ -307,7 +303,7 @@ if $cygwin; then | |||
| [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --$format "$JAVA_HOME"` | |||
| LCP_TEMP=`cygpath --path --unix "$LOCALCLASSPATH"` | |||
| LOCALCLASSPATH=`cygpath --path --$format "$LCP_TEMP"` | |||
| if [ -n "$CLASSPATH" ] ; then | |||
| if [ -n "$CLASSPATH" ]; then | |||
| CP_TEMP=`cygpath --path --unix "$CLASSPATH"` | |||
| CLASSPATH=`cygpath --path --$format "$CP_TEMP"` | |||
| fi | |||
| @@ -315,7 +311,7 @@ if $cygwin; then | |||
| fi | |||
| # Show script help if requested | |||
| if $show_help ; then | |||
| if $show_help; then | |||
| echo $0 '[script options] [options] [target [target2 [target3] ..]]' | |||
| echo 'Script Options:' | |||
| echo ' --help, --h print this message and ant help' | |||
| @@ -326,33 +322,33 @@ if $show_help ; then | |||
| echo ' set explicitly in configuration files' | |||
| echo ' --execdebug print ant exec line generated by this' | |||
| echo ' launch script' | |||
| echo ' ' | |||
| echo '' | |||
| fi | |||
| # add a second backslash to variables terminated by a backslash under cygwin | |||
| if $cygwin; then | |||
| case "$ANT_HOME" in | |||
| *\\ ) | |||
| ANT_HOME="$ANT_HOME\\" | |||
| ANT_HOME="$ANT_HOME\\" | |||
| ;; | |||
| esac | |||
| case "$CYGHOME" in | |||
| *\\ ) | |||
| CYGHOME="$CYGHOME\\" | |||
| CYGHOME="$CYGHOME\\" | |||
| ;; | |||
| esac | |||
| case "$JIKESPATH" in | |||
| *\\ ) | |||
| JIKESPATH="$JIKESPATH\\" | |||
| JIKESPATH="$JIKESPATH\\" | |||
| ;; | |||
| esac | |||
| case "$LOCALCLASSPATH" in | |||
| *\\ ) | |||
| LOCALCLASSPATH="$LOCALCLASSPATH\\" | |||
| LOCALCLASSPATH="$LOCALCLASSPATH\\" | |||
| ;; | |||
| esac | |||
| case "$CLASSPATH" in | |||
| *\\ ) | |||
| CLASSPATH="$CLASSPATH\\" | |||
| CLASSPATH="$CLASSPATH\\" | |||
| ;; | |||
| esac | |||
| fi | |||
| @@ -371,7 +367,7 @@ else | |||
| 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\"" | |||
| if $ant_exec_debug ; then | |||
| if $ant_exec_debug; then | |||
| # using printf to avoid echo line continuation and escape interpretation confusion | |||
| printf "%s\n" "$ant_exec_command $ant_exec_args" | |||
| fi | |||
| @@ -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 "License"); you may not use this file except in compliance with | |||
| REM the License. You may obtain a copy of the License at | |||
| REM | |||
| REM | |||
| REM http://www.apache.org/licenses/LICENSE-2.0 | |||
| REM | |||
| REM | |||
| 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 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |||
| @@ -1,4 +1,4 @@ | |||
| /* | |||
| /* | |||
| Licensed to the Apache Software Foundation (ASF) under one or more | |||
| contributor license agreements. See the NOTICE file distributed with | |||
| this work for additional information regarding copyright ownership. | |||
| @@ -13,7 +13,7 @@ | |||
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |||
| See the License for the specific language governing permissions and | |||
| limitations under the License. | |||
| Run ant | |||
| */ | |||
| @@ -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 "License"); you may not use this file except in compliance with | |||
| REM the License. You may obtain a copy of the License at | |||
| REM | |||
| REM | |||
| REM http://www.apache.org/licenses/LICENSE-2.0 | |||
| REM | |||
| REM | |||
| 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 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%"=="WINNT" @endlocal | |||
| @@ -20,7 +20,7 @@ | |||
| # antRun.pl | |||
| # | |||
| # 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 | |||
| use strict; | |||
| @@ -29,21 +29,20 @@ use strict; | |||
| #use warnings; | |||
| #and set $debug to 1 to turn on trace info (currently unused) | |||
| my $debug=1; | |||
| my $debug = 1; | |||
| ####################################################################### | |||
| # change drive and directory to "%1" | |||
| my $ANT_RUN_CMD = @ARGV[0]; | |||
| # 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") { | |||
| # 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) | |||
| $ANT_RUN_CMD .= "/".@ARGV[1]; | |||
| } | |||
| else { | |||
| $ANT_RUN_CMD .= "/" . @ARGV[1]; | |||
| } else { | |||
| $ANT_RUN_CMD = @ARGV[1]; | |||
| } | |||
| @@ -55,8 +54,7 @@ shift; | |||
| my $returnValue = system $ANT_RUN_CMD, @ARGV; | |||
| if ($returnValue eq 0) { | |||
| exit 0; | |||
| } | |||
| else { | |||
| } else { | |||
| # only 0 and 1 are widely recognized as exit values | |||
| # so change the exit value to 1 | |||
| exit 1; | |||
| @@ -1,4 +1,4 @@ | |||
| /* | |||
| /* | |||
| Licensed to the Apache Software Foundation (ASF) under one or more | |||
| contributor license agreements. See the NOTICE file distributed with | |||
| this work for additional information regarding copyright ownership. | |||
| @@ -15,10 +15,10 @@ | |||
| # See the License for the specific language governing permissions and | |||
| # 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: | |||
| # | |||
| # | |||
| # complete -C complete-ant-cmd.pl ant build.sh | |||
| # | |||
| # To install for Z-Shell 2.5 or better, add the following to ~/.zshrc: | |||
| @@ -37,11 +37,11 @@ my $word = $ARGV[1]; | |||
| my @completions; | |||
| if ($word =~ /^-/) { | |||
| list( restrict( $word, getArguments() )); | |||
| list(restrict($word, getArguments())); | |||
| } elsif ($cmdLine =~ /-(f|file|buildfile)\s+\S*$/) { | |||
| list( getBuildFiles($word) ); | |||
| list(getBuildFiles($word)); | |||
| } else { | |||
| list( restrict( $word, getTargets() )); | |||
| list(restrict($word, getTargets())); | |||
| } | |||
| exit(0); | |||
| @@ -54,18 +54,18 @@ sub list { | |||
| sub restrict { | |||
| my ($word, @completions) = @_; | |||
| grep( /^\Q$word\E/, @completions ); | |||
| grep(/^\Q$word\E/, @completions); | |||
| } | |||
| 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 { | |||
| my ($word) = @_; | |||
| grep( /\.xml$/, glob( "$word*" )); | |||
| grep(/\.xml$/, glob("$word*")); | |||
| } | |||
| sub getTargets { | |||
| @@ -83,10 +83,10 @@ sub getTargets { | |||
| my $cacheFile = $buildFile; | |||
| $cacheFile =~ s|(.*/)?(.*)|${1}.ant-targets-${2}|; | |||
| 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; | |||
| while( <HELP> ) { | |||
| while (<HELP>) { | |||
| # Exclude target names starting with dash, because they cannot be | |||
| # specified on the command line. | |||
| if (/^\s+\+Target:\s+(?!-)(\S+)/) { | |||
| @@ -94,22 +94,21 @@ sub getTargets { | |||
| } | |||
| } | |||
| my @targets = sort keys %targets; | |||
| for (@targets) { print CACHE "$_\n"; } | |||
| for (@targets) { | |||
| print CACHE "$_\n"; | |||
| } | |||
| return @targets; | |||
| } | |||
| # Read the target-cache | |||
| open( CACHE, $cacheFile ) || die "can\'t read $cacheFile: $!\n"; | |||
| open(CACHE, $cacheFile) || die "can\'t read $cacheFile: $!\n"; | |||
| my @targets; | |||
| while (<CACHE>) { | |||
| chop; | |||
| s/\r$//; # for Cygwin | |||
| push( @targets, $_ ); | |||
| push(@targets, $_); | |||
| } | |||
| close( CACHE ); | |||
| close(CACHE); | |||
| @targets; | |||
| } | |||
| @@ -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 "License"); you may not use this file except in compliance with | |||
| REM the License. You may obtain a copy of the License at | |||
| REM | |||
| REM | |||
| REM http://www.apache.org/licenses/LICENSE-2.0 | |||
| REM | |||
| REM | |||
| 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 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |||
| @@ -28,4 +28,3 @@ goto argCheck | |||
| :gotAllArgs | |||
| set LOCALCLASSPATH=%LOCALCLASSPATH%;%_CLASSPATHCOMPONENT% | |||
| @@ -27,7 +27,7 @@ | |||
| # 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 | |||
| # structured for the catfile() call, but because of perl version funnies | |||
| # the code is not included. | |||
| # the code is not included. | |||
| ####################################################################### | |||
| # | |||
| # Assumptions: | |||
| @@ -47,7 +47,7 @@ use strict; | |||
| #use warnings; | |||
| #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}; | |||
| if ($HOME eq "") | |||
| { | |||
| if (!$HOME) { | |||
| 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"); | |||
| #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. | |||
| #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 | |||
| my $localpath = "$HOME/lib/ant-launcher.jar"; | |||
| #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 | |||
| 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 | |||
| my @ARGS; | |||
| @@ -99,52 +90,43 @@ push @ARGS, @ANT_OPTS; | |||
| 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, "-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, @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); | |||
| 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; | |||
| } | |||
| @@ -1,4 +1,4 @@ | |||
| /* | |||
| /* | |||
| Licensed to the Apache Software Foundation (ASF) under one or more | |||
| contributor license agreements. See the NOTICE file distributed with | |||
| this work for additional information regarding copyright ownership. | |||
| @@ -15,7 +15,7 @@ | |||
| limitations under the License. | |||
| 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 | |||