summaryrefslogtreecommitdiffstats
path: root/framework/src/ant/apache-ant-1.9.6/bootstrap.sh
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/ant/apache-ant-1.9.6/bootstrap.sh')
-rwxr-xr-xframework/src/ant/apache-ant-1.9.6/bootstrap.sh167
1 files changed, 167 insertions, 0 deletions
diff --git a/framework/src/ant/apache-ant-1.9.6/bootstrap.sh b/framework/src/ant/apache-ant-1.9.6/bootstrap.sh
new file mode 100755
index 00000000..60b6ece0
--- /dev/null
+++ b/framework/src/ant/apache-ant-1.9.6/bootstrap.sh
@@ -0,0 +1,167 @@
+#!/bin/sh
+
+# 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.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# 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.
+
+# 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
+
+# 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"`
+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
+ CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/tools.jar
+ fi
+
+ if [ -f "$JAVA_HOME/lib/classes.zip" ] ; then
+ CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/classes.zip
+ fi
+else
+ echo "Warning: JAVA_HOME environment variable 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
+
+# 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
+ JAVAC=${JAVA_HOME}/sh/javac;
+ else
+ JAVAC=${JAVA_HOME}/bin/javac;
+ fi
+ else
+ JAVAC=javac
+ fi
+fi
+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
+ fi
+ else
+ JAVACMD=java
+ fi
+fi
+
+if [ ! -x "$JAVACMD" ] ; then
+ echo "Error: JAVA_HOME is not defined correctly."
+ echo " We cannot execute $JAVACMD"
+ exit
+fi
+
+ANT_HOME=.
+export ANT_HOME
+
+echo ... Bootstrapping Ant Distribution
+
+if [ -d "bootstrap" ] ; then
+ rm -r bootstrap
+fi
+
+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
+done
+
+TOOLS=src/main/org/apache/tools
+CLASSDIR=build/classes
+
+CLASSPATH=${CLASSDIR}:src/main:${CLASSPATH}
+
+# For Cygwin, switch to Windows format before running java
+if $cygwin; then
+ CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
+fi
+
+export CLASSPATH
+
+mkdir -p build
+mkdir -p ${CLASSDIR}
+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
+ret=$?
+if [ $ret != 0 ]; then
+ echo ... Failed compiling Ant classes !
+ exit $ret
+fi
+
+echo ... Copying Required Files
+
+cp src/main/org/apache/tools/ant/taskdefs/defaults.properties \
+ ${CLASSDIR}/org/apache/tools/ant/taskdefs
+cp src/main/org/apache/tools/ant/types/defaults.properties \
+ ${CLASSDIR}/org/apache/tools/ant/types
+cp src/script/antRun bin
+chmod +x bin/antRun
+
+echo ... Building Ant Distribution
+
+"${JAVACMD}" -classpath "${CLASSPATH}" -Dant.home=. $ANT_OPTS org.apache.tools.ant.Main -emacs "$@" bootstrap
+ret=$?
+if [ $ret != 0 ]; then
+ echo ... Failed Building Ant Distribution !
+ exit $ret
+fi
+
+
+echo ... Cleaning Up Build Directories
+
+rm -rf ${CLASSDIR}
+rm -rf bin
+
+echo ... Done Bootstrapping Ant Distribution