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.4 kB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. #!/bin/sh
  2. # You will need to specify JAVA_HOME if compiling with 1.2 or later.
  3. unset CLASSPATH
  4. if [ "$JAVA_HOME" != "" ] ; then
  5. if [ -f $JAVA_HOME/lib/tools.jar ] ; then
  6. CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/tools.jar
  7. fi
  8. if [ -f "$JAVA_HOME/lib/classes.zip" ] ; then
  9. CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/classes.zip
  10. fi
  11. else
  12. echo "Warning: JAVA_HOME environment variable not set."
  13. echo " If build fails because sun.* classes could not be found"
  14. echo " you will need to set the JAVA_HOME environment variable"
  15. echo " to the installation directory of java."
  16. fi
  17. if [ ! -x "$JAVA_HOME/bin/java" ] ; then
  18. echo "Error: JAVA_HOME is not defined correctly."
  19. echo " We cannot execute JAVA_HOME/bin/java"
  20. exit
  21. fi
  22. # More Cygwin support
  23. if [ "$OSTYPE" = "cygwin32" ] || [ "$OSTYPE" = "cygwin" ] ; then
  24. CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
  25. fi
  26. ANT_HOME=.
  27. export ANT_HOME
  28. if [ -z "$JAVAC" ] ; then
  29. JAVAC=${JAVA_HOME}/bin/javac;
  30. fi
  31. echo ... Bootstrapping Ant Distribution
  32. if [ -f "lib/ant.jar" ] ; then
  33. rm lib/ant.jar
  34. fi
  35. if [ -f "lib/optional.jar" ] ; then
  36. rm lib/optional.jar
  37. fi
  38. CLASSPATH=lib/parser.jar:lib/jaxp.jar:${CLASSPATH}
  39. TOOLS=src/main/org/apache/tools
  40. CLASSDIR=classes
  41. CLASSPATH=${CLASSDIR}:src/main:${CLASSPATH}
  42. # convert the unix path to windows
  43. if [ "$OSTYPE" = "cygwin32" ] || [ "$OSTYPE" = "cygwin" ] ; then
  44. CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
  45. fi
  46. export CLASSPATH
  47. mkdir -p ${CLASSDIR}
  48. mkdir -p build
  49. echo ... Compiling Ant Classes
  50. ${JAVAC} -d ${CLASSDIR} ${TOOLS}/tar/*.java \
  51. ${TOOLS}/ant/util/regexp/RegexpMatcher.java \
  52. ${TOOLS}/ant/util/regexp/RegexpMatcherFactory.java \
  53. ${TOOLS}/ant/util/*.java ${TOOLS}/ant/types/*.java \
  54. ${TOOLS}/ant/*.java ${TOOLS}/ant/taskdefs/*.java
  55. echo ... Copying Required Files
  56. cp src/main/org/apache/tools/ant/taskdefs/defaults.properties \
  57. ${CLASSDIR}/org/apache/tools/ant/taskdefs
  58. cp src/main/org/apache/tools/ant/types/defaults.properties \
  59. ${CLASSDIR}/org/apache/tools/ant/types
  60. echo ... Building Ant Distribution
  61. cp -r ${CLASSDIR} build
  62. ${JAVA_HOME}/bin/java -classpath ${CLASSPATH} org.apache.tools.ant.Main \
  63. -buildfile build.xml bootstrap
  64. echo ... Cleaning Up Build Directories
  65. chmod +x bootstrap/bin/ant bootstrap/bin/antRun
  66. rm -rf ${CLASSDIR}
  67. echo ... Done Bootstrapping Ant Distribution