Try to re-use the same python interpreter on the build farm (AIX)

This commit is contained in:
Thomas Nagy 2012-07-09 11:51:43 +02:00
parent 6c74f1051b
commit 9dadae88cf
5 changed files with 18 additions and 12 deletions

View File

@ -1,7 +1,8 @@
NEW IN WAF 1.7.0 NEW IN WAF 1.7.0
---------------- ----------------
* The compat15 tool is not loaded by default * The compat15 tool is disabled by default (the README file explains how to enable it)
* Python >= 2.4 is now required * Python >= 2.4 is now required
* Python >= 2.6 is required for creating the Waf file in the source tree
* Added Utils.writef (similar to Utils.readf) * Added Utils.writef (similar to Utils.readf)
* Added Node.evict() to provide more control over invalid references * Added Node.evict() to provide more control over invalid references
* Do not raise exception on --help when running on python 2.4 * Do not raise exception on --help when running on python 2.4
@ -23,6 +24,7 @@ NEW IN WAF 1.7.0
* Use the cython includes in the dependency scanner #1166 * Use the cython includes in the dependency scanner #1166
* Improved the behaviour of Utils.readf/Utils.writef on Win32 * Improved the behaviour of Utils.readf/Utils.writef on Win32
* Made Task.__repr__ more robust #1174 * Made Task.__repr__ more robust #1174
* Fixed the gcc builds on hp-ux
NEW IN WAF 1.6.11 NEW IN WAF 1.6.11
----------------- -----------------

2
TODO
View File

@ -1,4 +1,4 @@
Waf 1.6.x Waf 1.7.x
--------- ---------
* fix the remaining bugs * fix the remaining bugs

View File

@ -43,10 +43,12 @@ def configure(conf):
except: except:
sub = '' sub = ''
conf.exec_command('./waf-light configure build --zip-type=gz --tools=doxygen,fluid,ocaml,swig,compiler_fc,fc_config,fc,fc_scan,g95,ifort,gfortran,batched_cc,%s --prelude='' && /bin/cp waf demos/' % sub, cwd=conf.path.parent.abspath()) conf.exec_command('%s %s configure build --zip-type=gz --tools=doxygen,fluid,ocaml,swig,compiler_fc,fc_config,fc,fc_scan,g95,ifort,gfortran,batched_cc,%s --prelude='' && /bin/cp waf demos/' % (sys.executable, sys.argv[0], sub),
cwd=conf.path.parent.abspath())
node = conf.path.find_resource('waf') node = conf.path.find_resource('waf')
if not node: if not node:
conf.fatal('could not find Waf') conf.fatal('Could not find Waf')
#if conf.exec_command([node.abspath(), '--help'], shell=False, env={}, cwd=node.parent.abspath()): #if conf.exec_command([node.abspath(), '--help'], shell=False, env={}, cwd=node.parent.abspath()):
# conf.fatal('the waf file cannot be executed') # conf.fatal('the waf file cannot be executed')
conf.env.WAF = node.abspath() conf.env.WAF = node.abspath()

View File

@ -7,7 +7,7 @@ The current Waf version requires an interpreter for the Python programming langu
==== Downloading and using the Waf binary ==== Downloading and using the Waf binary
The Waf binary is a python script which does not require any installation whatsoever. It may be executed directly from a writeable folder. Just rename it as +waf+ if necessary: The Waf binary is a python script which does not require any installation whatsoever. It may be executed directly from a writable folder. Just rename it as +waf+ if necessary:
[source,shishell] [source,shishell]
--------------- ---------------

View File

@ -40,8 +40,8 @@ C2='x'
cwd = os.getcwd() cwd = os.getcwd()
join = os.path.join join = os.path.join
if sys.hexversion<0x206000f: #if sys.hexversion<0x206000f:
raise ImportError('Python >= 2.6 is required to create the waf file') # raise ImportError('Python >= 2.6 is required to create the waf file')
WAF='waf' WAF='waf'
def b(x): def b(x):
@ -76,13 +76,13 @@ def unpack_wafdir(dir):
for x in ['Tools', 'extras']: for x in ['Tools', 'extras']:
os.makedirs(join(dir, 'waflib', x)) os.makedirs(join(dir, 'waflib', x))
except OSError: except OSError:
err("Cannot unpack waf lib into %s\nMove waf into a writeable directory" % dir) err("Cannot unpack waf lib into %s\nMove waf in a writable directory" % dir)
os.chdir(dir) os.chdir(dir)
tmp = 't.bz2' tmp = 't.bz2'
t = open(tmp,'wb') t = open(tmp,'wb')
t.write(txt) try: t.write(txt)
t.close() finally: t.close()
try: try:
t = tarfile.open(tmp) t = tarfile.open(tmp)
@ -97,8 +97,10 @@ def unpack_wafdir(dir):
except OSError: pass except OSError: pass
err("Waf cannot be unpacked, check that bzip2 support is present") err("Waf cannot be unpacked, check that bzip2 support is present")
for x in t: t.extract(x) try:
t.close() for x in t: t.extract(x)
finally:
t.close()
for x in ['Tools', 'extras']: for x in ['Tools', 'extras']:
os.chmod(join('waflib',x), 493) os.chmod(join('waflib',x), 493)