summaryrefslogtreecommitdiff
path: root/bootstrap.sh
diff options
context:
space:
mode:
authortwogee <g.grigelionis@gmail.com>2017-12-19 16:24:39 +0100
committertwogee <g.grigelionis@gmail.com>2017-12-19 16:53:48 +0100
commita79d27597a0f1fa949048ed3ce3372bb9a328412 (patch)
tree35e8e9e692857ef442f038f9c7659cbb005273c7 /bootstrap.sh
parenteec1ab7606ec0399d6db159a09316507af0959c0 (diff)
downloadant-a79d27597a0f1fa949048ed3ce3372bb9a328412.tar.gz
Make build & bootstrap work on macOS (cf ant);
normalise whitespace in scripts and use Perl idioms properly
Diffstat (limited to 'bootstrap.sh')
-rwxr-xr-xbootstrap.sh84
1 files changed, 43 insertions, 41 deletions
diff --git a/bootstrap.sh b/bootstrap.sh
index 60b6ece03..c58fbb338 100755
--- a/bootstrap.sh
+++ b/bootstrap.sh
@@ -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}