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

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  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 [ -d "bootstrap" ] ; then
  33. rm -r bootstrap
  34. fi
  35. CLASSPATH=lib/parser.jar:lib/jaxp.jar:${CLASSPATH}
  36. TOOLS=src/main/org/apache/tools
  37. CLASSDIR=classes
  38. CLASSPATH=${CLASSDIR}:src/main:${CLASSPATH}
  39. # convert the unix path to windows
  40. if [ "$OSTYPE" = "cygwin32" ] || [ "$OSTYPE" = "cygwin" ] ; then
  41. CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
  42. fi
  43. export CLASSPATH
  44. mkdir -p ${CLASSDIR}
  45. mkdir -p build/classes
  46. echo ... Compiling Ant Classes
  47. ${JAVAC} -d ${CLASSDIR} ${TOOLS}/tar/*.java \
  48. ${TOOLS}/ant/util/regexp/RegexpMatcher.java \
  49. ${TOOLS}/ant/util/regexp/RegexpMatcherFactory.java \
  50. ${TOOLS}/ant/util/*.java ${TOOLS}/ant/types/*.java \
  51. ${TOOLS}/ant/*.java ${TOOLS}/ant/taskdefs/*.java
  52. echo ... Copying Required Files
  53. cp src/main/org/apache/tools/ant/taskdefs/defaults.properties \
  54. ${CLASSDIR}/org/apache/tools/ant/taskdefs
  55. cp src/main/org/apache/tools/ant/types/defaults.properties \
  56. ${CLASSDIR}/org/apache/tools/ant/types
  57. echo ... Building Ant Distribution
  58. cp -r ${CLASSDIR} build/classes
  59. ${JAVA_HOME}/bin/java -classpath ${CLASSPATH} org.apache.tools.ant.Main \
  60. -buildfile build.xml bootstrap
  61. echo ... Cleaning Up Build Directories
  62. chmod +x bootstrap/bin/ant bootstrap/bin/antRun
  63. rm -rf ${CLASSDIR}
  64. echo ... Done Bootstrapping Ant Distribution