|
|
@@ -3,10 +3,10 @@ |
|
|
|
|
|
|
|
runant.py |
|
|
|
|
|
|
|
This script is a translation of the runant.pl written by Steve Loughran. |
|
|
|
It runs ant with/out arguments, it should be quite portable (thanks to |
|
|
|
the python os library) |
|
|
|
This script has been tested with Python2.0/Win2K |
|
|
|
This script is a translation of the runant.pl written by Steve Loughran. |
|
|
|
It runs ant with/out arguments, it should be quite portable (thanks to |
|
|
|
the python os library) |
|
|
|
This script has been tested with Python2.0/Win2K |
|
|
|
|
|
|
|
Copyright (c) 2001 The Apache Software Foundation. All rights |
|
|
|
reserved. |
|
|
@@ -28,72 +28,52 @@ debug = 0 |
|
|
|
# |
|
|
|
# check to make sure environment is setup |
|
|
|
# |
|
|
|
if not os.environ.has_key('ANT_HOME'): |
|
|
|
print '\n\nANT_HOME *MUST* be set!\n\n' |
|
|
|
sys.exit(1) |
|
|
|
if os.environ.has_key('ANT_HOME'): |
|
|
|
ANT_HOME = os.environ['ANT_HOME'] |
|
|
|
else: |
|
|
|
ANT_HOME = os.environ['ANT_HOME'] |
|
|
|
ANT_HOME = os.path.dirname(os.path.dirname(os.path.abspath(sys.argv[0]))) |
|
|
|
|
|
|
|
# Add jar files |
|
|
|
ANT_LIB = os.path.join(ANT_HOME, 'lib') |
|
|
|
|
|
|
|
if not os.environ.has_key('JAVACMD'): |
|
|
|
JAVACMD = 'java' |
|
|
|
JAVACMD = 'java' |
|
|
|
else: |
|
|
|
JAVACMD = os.environ['JAVACMD'] |
|
|
|
|
|
|
|
# Sets the separator char for CLASSPATH |
|
|
|
SEPARATOR = ':' |
|
|
|
if os.name == 'dos' or os.name == 'nt': |
|
|
|
SEPARATOR = ';' |
|
|
|
JAVACMD = os.environ['JAVACMD'] |
|
|
|
|
|
|
|
# Build up standard classpath |
|
|
|
localpath = '' |
|
|
|
if os.environ.has_key('CLASSPATH'): |
|
|
|
localpath = os.environ['CLASSPATH'] |
|
|
|
localpath = os.environ['CLASSPATH'] |
|
|
|
else: |
|
|
|
if debug: |
|
|
|
print 'Warning: no initial classpath\n' |
|
|
|
|
|
|
|
# Add jar files |
|
|
|
LIBDIR = os.path.join(ANT_HOME, 'lib') |
|
|
|
jarfiles = [] |
|
|
|
for file in os.listdir(LIBDIR): |
|
|
|
if file[-4:] == '.jar': |
|
|
|
jarfiles.append(os.path.join(LIBDIR,file)) |
|
|
|
if debug: |
|
|
|
print 'Jar files:' |
|
|
|
for jar in jarfiles: |
|
|
|
print jar |
|
|
|
localpath = localpath + SEPARATOR + string.join(jarfiles, SEPARATOR) |
|
|
|
|
|
|
|
# If JAVA_HOME is defined, look for tools.jar & classes.zip |
|
|
|
# and add to classpath |
|
|
|
if os.environ.has_key('JAVA_HOME') and os.environ['JAVA_HOME'] != '': |
|
|
|
JAVA_HOME = os.environ['JAVA_HOME'] |
|
|
|
TOOLS = os.path.join(JAVA_HOME, os.path.join('lib', 'tools.jar')) |
|
|
|
if os.path.exists(TOOLS): |
|
|
|
localpath = localpath + SEPARATOR + TOOLS |
|
|
|
CLASSES = os.path.join(JAVA_HOME, os.path.join('lib', 'classes.zip')) |
|
|
|
if os.path.exists(CLASSES): |
|
|
|
localpath = localpath + SEPARATOR + CLASSES |
|
|
|
if debug: |
|
|
|
print 'Warning: no initial classpath\n' |
|
|
|
|
|
|
|
launcher_jar = os.path.join(ANT_LIB, 'ant-launcher.jar') |
|
|
|
if not os.path.exists(launcher_jar): |
|
|
|
print 'Unable to locate ant-launcher.jar. Expected to find it in %s' % \ |
|
|
|
ANT_LIB |
|
|
|
if localpath: |
|
|
|
localpath = launcher_jar + os.pathsep + localpath |
|
|
|
else: |
|
|
|
print '\n\nWarning: JAVA_HOME environment variable is not set.\n', \ |
|
|
|
'If the build fails because sun.* classes could not be found\n', \ |
|
|
|
'you will need to set the JAVA_HOME environment variable\n', \ |
|
|
|
'to the installation directory of java\n' |
|
|
|
localpath = launcher_jar |
|
|
|
|
|
|
|
# Jikes |
|
|
|
ANT_OPTS = [] |
|
|
|
if os.environ.has_key('ANT_OPTS'): |
|
|
|
ANT_OPTS = string.split(os.environ['ANT_OPTS']) |
|
|
|
ANT_OPTS = string.split(os.environ['ANT_OPTS']) |
|
|
|
|
|
|
|
OPTS = [] |
|
|
|
if os.environ.has_key('JIKESPATH'): |
|
|
|
ANT_OPTS.append('-Djikes.class.path=' + os.environ['JIKESPATH']) |
|
|
|
OPTS.append('-Djikes.class.path=' + os.environ['JIKESPATH']) |
|
|
|
|
|
|
|
# Builds the commandline |
|
|
|
cmdline = '%s -classpath %s -Dant.home=%s %s org.apache.tools.ant.Main %s' \ |
|
|
|
% (JAVACMD, localpath, ANT_HOME, string.join(ANT_OPTS,' '), \ |
|
|
|
string.join(sys.argv[1:], ' ')) |
|
|
|
cmdline = ('%s %s -classpath %s -Dant.home=\"%s\" %s ' + \ |
|
|
|
'org.apache.tools.ant.launch.Launcher %s') \ |
|
|
|
% (JAVACMD, string.join(ANT_OPTS,' '), localpath, ANT_HOME, \ |
|
|
|
string.join(OPTS,' '), string.join(sys.argv[1:], ' ')) |
|
|
|
|
|
|
|
if debug: |
|
|
|
print '\n%s\n\n' % (cmdline) |
|
|
|
print '\n%s\n\n' % (cmdline) |
|
|
|
|
|
|
|
# Run the biniou! |
|
|
|
os.system(cmdline) |