Browse Source

New build procedure for Unix based systems

This is the update for the Unix based build scripts. The changes are the
following

Automatic bootstrapping if lib/ant.jar is mising or the bin files
are not present

Removed inclusion of the $HOME/.antrc in the bootstrap.sh although
it is still used in the ant shell script.

Lined up Windows and Unix scripts, including echo statements so it is easier
to make changes affecting both envionments in the future.

Added chmod calls to the install targets so the ant shell scripts are
executable.


git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@267777 13f79535-47bb-0310-9956-ffa450edef68
master
Conor MacNeill 25 years ago
parent
commit
6857348375
5 changed files with 60 additions and 58 deletions
  1. +15
    -10
      bootstrap.bat
  2. +18
    -21
      bootstrap.sh
  3. +8
    -20
      build.sh
  4. +4
    -0
      build.xml
  5. +15
    -7
      src/bin/ant

+ 15
- 10
bootstrap.bat View File

@@ -18,33 +18,38 @@ if "" == "%JAVAC%" set JAVAC=%JAVA_HOME%\bin\javac
echo. echo.
echo ... Bootstrapping Ant Distribution echo ... Bootstrapping Ant Distribution


SET LOCALCLASSPATH=classes;src\main
if exist lib\ant.jar erase lib\ant.jar if exist lib\ant.jar erase lib\ant.jar

SET LOCALCLASSPATH=
for %%i in (lib\*.jar) do call src\bin\lcp.bat %%i for %%i in (lib\*.jar) do call src\bin\lcp.bat %%i

if exist %JAVA_HOME%\lib\tools.jar call src\bin\lcp.bat %JAVA_HOME%\lib\tools.jar if exist %JAVA_HOME%\lib\tools.jar call src\bin\lcp.bat %JAVA_HOME%\lib\tools.jar
if exist %JAVA_HOME%\lib\classes.zip call src\bin\lcp.bat %JAVA_HOME%\lib\classes.zip if exist %JAVA_HOME%\lib\classes.zip call src\bin\lcp.bat %JAVA_HOME%\lib\classes.zip
SET CLASSPATH=%CLASSPATH%;%LOCALCLASSPATH%

set TOOLS=src\main\org\apache\tools
set CLASSDIR=classes

SET CLASSPATH=%CLASSPATH%;%LOCALCLASSPATH%;%CLASSDIR%;src\main


echo JAVA_HOME=%JAVA_HOME% echo JAVA_HOME=%JAVA_HOME%
echo JAVA=%JAVA% echo JAVA=%JAVA%
echo JAVAC=%JAVAC% echo JAVAC=%JAVAC%
echo CLASSPATH=%CLASSPATH% echo CLASSPATH=%CLASSPATH%


if "%OS%" == "Windows_NT" if exist classes\nul rmdir/s/q classes
if not "%OS%" == "Windows_NT" if exist classes\nul deltree/y classes
mkdir classes
if "%OS%" == "Windows_NT" if exist %CLASSDIR%\nul rmdir/s/q %CLASSDIR%
if not "%OS%" == "Windows_NT" if exist %CLASSDIR%\nul deltree/y %CLASSDIR%


set TOOLS=src\main\org\apache\tools
mkdir %CLASSDIR%


echo. echo.
echo ... Compiling Ant Classes echo ... Compiling Ant Classes


%JAVAC% -d classes %TOOLS%\tar\*.java %TOOLS%\ant\*.java %TOOLS%\ant\taskdefs\*.java
%JAVAC% -d %CLASSDIR% %TOOLS%\tar\*.java %TOOLS%\ant\*.java %TOOLS%\ant\taskdefs\*.java


echo. echo.
echo ... Copying Required Files echo ... Copying Required Files


copy %TOOLS%\ant\taskdefs\*.properties classes\org\apache\tools\ant\taskdefs
copy %TOOLS%\ant\taskdefs\*.properties %CLASSDIR%\org\apache\tools\ant\taskdefs


echo. echo.
echo ... Building Ant Distribution echo ... Building Ant Distribution
@@ -54,8 +59,8 @@ echo ... Building Ant Distribution
echo. echo.
echo ... Cleaning Up Build Directories echo ... Cleaning Up Build Directories


if "%OS%" == "Windows_NT" if exist classes\nul rmdir/s/q classes
if not "%OS%" == "Windows_NT" if exist classes\nul deltree/y classes
if "%OS%" == "Windows_NT" if exist %CLASSDIR%\nul rmdir/s/q %CLASSDIR%
if not "%OS%" == "Windows_NT" if exist %CLASSDIR%\nul deltree/y %CLASSDIR%


echo. echo.
echo ... Done Bootstrapping Ant Distribution echo ... Done Bootstrapping Ant Distribution


+ 18
- 21
bootstrap.sh View File

@@ -1,16 +1,9 @@
#!/bin/sh #!/bin/sh


if [ -f $HOME/.antrc ] ; then
. $HOME/.antrc
fi
ANT_HOME=.
export ANT_HOME


if [ "$ANT_HOME" = "" ] ; then
ANT_HOME=`pwd`
export ANT_HOME
fi

SRCDIR=src/main/org/apache/tools
CLASSDIR=classes
echo ... Bootstrapping Ant Distribution


if test -f lib/ant.jar ; then if test -f lib/ant.jar ; then
rm lib/ant.jar rm lib/ant.jar
@@ -32,28 +25,32 @@ if test -f $JAVA_HOME/lib/classes.zip ; then
CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/classes.zip CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/classes.zip
fi fi


TOOLS=src/main/org/apache/tools
CLASSDIR=classes

CLASSPATH=${CLASSPATH}:${CLASSDIR}:src/main CLASSPATH=${CLASSPATH}:${CLASSDIR}:src/main
export CLASSPATH


mkdir -p ${CLASSDIR} mkdir -p ${CLASSDIR}


export CLASSPATH
echo ... Compiling Ant Classes


echo
echo Building with classpath: $CLASSPATH
echo
javac -d ${CLASSDIR} ${TOOLS}/tar/*.java
javac -d ${CLASSDIR} ${TOOLS}/ant/*.java
javac -d ${CLASSDIR} ${TOOLS}/ant/taskdefs/*.java


javac -d ${CLASSDIR} ${SRCDIR}/tar/*.java
javac -d ${CLASSDIR} ${SRCDIR}/ant/*.java
javac -d ${CLASSDIR} ${SRCDIR}/ant/taskdefs/*.java
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/taskdefs/defaults.properties ${CLASSDIR}/org/apache/tools/ant/taskdefs


echo ... Building Ant Distribution

java org.apache.tools.ant.Main clean main bootstrap java org.apache.tools.ant.Main clean main bootstrap
java org.apache.tools.ant.Main clean


if test ! -d bin; then mkdir bin; fi
cp src/bin/antRun bin
chmod +x bin/antRun
echo ... Cleaning Up Build Directories
chmod +x bin/ant bin/antRun


rm -rf ${CLASSDIR} rm -rf ${CLASSDIR}


echo ... Done Bootstrapping Ant Distribution

+ 8
- 20
build.sh View File

@@ -1,28 +1,16 @@
#!/bin/sh #!/bin/sh


if [ "$ANT_HOME" = "" ] ; then
ANT_HOME=`pwd`
fi
REALANTHOME=$ANT_HOME
ANT_HOME=.
export ANT_HOME export ANT_HOME


LOCALCLASSPATH=`echo $ANT_HOME/lib/*.jar | tr ' ' ':'`

if [ "$CLASSPATH" != "" ] ; then
LOCALCLASSPATH=$CLASSPATH:$LOCALCLASSPATH
fi

if test -f $JAVA_HOME/lib/tools.jar ; then
LOCALCLASSPATH=$LOCALCLASSPATH:$JAVA_HOME/lib/tools.jar
fi
if test ! -f lib/ant.jar -o ! -x bin/ant -o ! -x bin/antRun ; then
./bootstrap.sh
fi


if test -f $JAVA_HOME/lib/classes.zip ; then
LOCALCLASSPATH=$LOCALCLASSPATH:$JAVA_HOME/lib/classes.zip
if [ "$REALANTHOME" != "" ] ; then
ANT_INSTALL="-Dant.install $REALANTHOME"
fi fi


echo
echo Building with classpath: $LOCALCLASSPATH
echo

chmod 0755 $ANT_HOME/bin/antRun
bin/ant $ANT_INSTALL $*


java -Dant.home=$ANT_HOME -classpath $LOCALCLASSPATH $ANT_OPTS org.apache.tools.ant.Main $*

+ 4
- 0
build.xml View File

@@ -192,6 +192,8 @@
<echo message="installing full copy of ant into ${ant.install}"/> <echo message="installing full copy of ant into ${ant.install}"/>
<mkdir dir="${ant.install}"/> <mkdir dir="${ant.install}"/>
<copydir src="${ant.dist.dir}" dest="${ant.install}"/> <copydir src="${ant.dist.dir}" dest="${ant.install}"/>
<chmod perm="+x" file="${ant.install}/bin/ant"/>
<chmod perm="+x" file="${ant.install}/bin/antRun"/>
</target> </target>
<target name="install" depends="main" if="ant.install"> <target name="install" depends="main" if="ant.install">
@@ -199,6 +201,8 @@
<mkdir dir="${ant.install}"/> <mkdir dir="${ant.install}"/>
<copydir src="${lib.dir}" dest="${ant.install}/lib"/> <copydir src="${lib.dir}" dest="${ant.install}/lib"/>
<copydir src="${bin.dir}" dest="${ant.install}/bin"/> <copydir src="${bin.dir}" dest="${ant.install}/bin"/>
<chmod perm="+x" file="${ant.install}/bin/ant"/>
<chmod perm="+x" file="${ant.install}/bin/antRun"/>
</target> </target>


<!-- =================================================================== --> <!-- =================================================================== -->


+ 15
- 7
src/bin/ant View File

@@ -37,13 +37,21 @@ if [ "$JAVACMD" = "" ] ; then
JAVACMD=java JAVACMD=java
fi fi


# Use the original tools.jar if available
if [ ! "$JAVA_HOME" = "" ] ; then
CLASSPATH=${JAVA_HOME}/lib/tools.jar:$CLASSPATH
CLASSPATH=${JAVA_HOME}/lib/classes.zip:$CLASSPATH
LOCALCLASSPATH=`echo $ANT_HOME/lib/*.jar | tr ' ' ':'`

if [ "$CLASSPATH" != "" ] ; then
LOCALCLASSPATH=$CLASSPATH:$LOCALCLASSPATH
fi

if [ "$JAVA_HOME" != "" ] ; then
if test -f $JAVA_HOME/lib/tools.jar ; then
LOCALCLASSPATH=$LOCALCLASSPATH:$JAVA_HOME/lib/tools.jar
fi

if test -f $JAVA_HOME/lib/classes.zip ; then
LOCALCLASSPATH=$LOCALCLASSPATH:$JAVA_HOME/lib/classes.zip
fi
fi fi


CLASSPATH=${ANT_HOME}/lib/ant.jar:$CLASSPATH
export CLASSPATH
$JAVACMD -classpath $LOCALCLASSPATH -Dant.home=${ANT_HOME} $ANT_OPTS org.apache.tools.ant.Main $@


$JAVACMD -Dant.home=${ANT_HOME} org.apache.tools.ant.Main $@

Loading…
Cancel
Save