You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

bootstrap.sh 2.5 kB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. #!/bin/bash
  2. # Cygwin support. $cygwin _must_ be set to either true or false.
  3. case "`uname`" in
  4. CYGWIN*) cygwin=true ;;
  5. *) cygwin=false ;;
  6. esac
  7. # For Cygwin, ensure paths are in UNIX format before anything is touched
  8. if $cygwin; then
  9. [ -n "$JAVA_HOME" ] &&
  10. JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
  11. [ -n "$CLASSPATH" ] &&
  12. CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
  13. fi
  14. LOCALCLASSPATH=lib/parser.jar:lib/jaxp.jar
  15. if [ "$CLASSPATH" != "" ] ; then
  16. LOCALCLASSPATH=$CLASSPATH:$LOCALCLASSPATH
  17. fi
  18. if [ "$JAVA_HOME" != "" ] ; then
  19. if test -f $JAVA_HOME/lib/tools.jar ; then
  20. LOCALCLASSPATH=$LOCALCLASSPATH:$JAVA_HOME/lib/tools.jar
  21. fi
  22. if test -f $JAVA_HOME/lib/classes.zip ; then
  23. LOCALCLASSPATH=$LOCALCLASSPATH:$JAVA_HOME/lib/classes.zip
  24. fi
  25. else
  26. echo "Warning: JAVA_HOME environment variable is not set."
  27. echo " If build fails because sun.* classes could not be found"
  28. echo " you will need to set the JAVA_HOME environment variable"
  29. echo " to the installation directory of java."
  30. fi
  31. if [ ! -x "$JAVA_HOME/bin/java" ] ; then
  32. echo "Error: JAVA_HOME is not defined correctly."
  33. echo " We cannot execute JAVA_HOME/bin/java"
  34. exit
  35. fi
  36. if [ -z "$JAVAC" ] ; then
  37. JAVAC=${JAVA_HOME}/bin/javac;
  38. fi
  39. echo ... Bootstrapping Ant Distribution
  40. rm -rf build
  41. TOOLS=src/main/org/apache/tools
  42. CLASSDIR=build/classes
  43. mkdir -p build
  44. mkdir -p ${CLASSDIR}
  45. echo ... Compiling Ant Classes
  46. export CLASSPATH=$LOCALCLASSPATH:src/main
  47. # For Cygwin, switch paths to Windows format before running javac
  48. if $cygwin; then
  49. CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
  50. fi
  51. ${JAVAC} -d ${CLASSDIR} ${TOOLS}/tar/*.java \
  52. ${TOOLS}/ant/util/regexp/RegexpMatcher.java \
  53. ${TOOLS}/ant/util/regexp/RegexpMatcherFactory.java \
  54. ${TOOLS}/ant/util/*.java ${TOOLS}/ant/types/*.java \
  55. ${TOOLS}/ant/*.java ${TOOLS}/ant/taskdefs/*.java
  56. echo ... Copying Required Files
  57. cp src/main/org/apache/tools/ant/taskdefs/defaults.properties \
  58. ${CLASSDIR}/org/apache/tools/ant/taskdefs
  59. cp src/main/org/apache/tools/ant/types/defaults.properties \
  60. ${CLASSDIR}/org/apache/tools/ant/types
  61. echo ... Building Ant Distribution
  62. export CLASSPATH=$LOCALCLASSPATH:build/classes
  63. # For Cygwin, switch paths to Windows format before running javac
  64. if $cygwin; then
  65. CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
  66. fi
  67. ${JAVA_HOME}/bin/java -classpath ${CLASSPATH} org.apache.tools.ant.Main $*
  68. echo ... Done Bootstrapping Ant Distribution