diff options
author | Ben Webb <benmwebb@gmail.com> | 2009-04-02 20:05:58 (GMT) |
---|---|---|
committer | Ben Webb <benmwebb@gmail.com> | 2009-04-02 20:05:58 (GMT) |
commit | 9c3e75619ae9757aa8be19ed3cea480f9a11787b (patch) | |
tree | ef3109cb5a4d4c5818329f92155ba00fb9f9cc93 /src/engine/SCons/Tool/swig.py | |
parent | 86baf9eaf2229dc57765b6bc1a4ac17900c1d323 (diff) | |
download | SCons-9c3e75619ae9757aa8be19ed3cea480f9a11787b.zip SCons-9c3e75619ae9757aa8be19ed3cea480f9a11787b.tar.gz SCons-9c3e75619ae9757aa8be19ed3cea480f9a11787b.tar.bz2 |
Set a SWIGVERSION construction variable, to contain the version number of the
SWIG program.
Diffstat (limited to 'src/engine/SCons/Tool/swig.py')
-rw-r--r-- | src/engine/SCons/Tool/swig.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/engine/SCons/Tool/swig.py b/src/engine/SCons/Tool/swig.py index dda5be5..c7af701 100644 --- a/src/engine/SCons/Tool/swig.py +++ b/src/engine/SCons/Tool/swig.py @@ -119,6 +119,13 @@ def _swigEmitter(target, source, env): target.extend(java_files) return (target, source) +def _get_swig_version(env): + """Run the SWIG command line tool to get and return the version number""" + out = os.popen(env['SWIG'] + ' -version').read() + match = re.search(r'SWIG Version\s+(\S+)$', out, re.MULTILINE) + if match: + return match.group(1) + def generate(env): """Add Builders and construction variables for swig to an Environment.""" c_file, cxx_file = SCons.Tool.createCFileBuilders(env) @@ -139,6 +146,7 @@ def generate(env): java_file.add_emitter('.i', _swigEmitter) env['SWIG'] = 'swig' + env['SWIGVERSION'] = _get_swig_version(env) env['SWIGFLAGS'] = SCons.Util.CLVar('') env['SWIGDIRECTORSUFFIX'] = '_wrap.h' env['SWIGCFILESUFFIX'] = '_wrap$CFILESUFFIX' |