diff options
author | Vinson Lee <[email protected]> | 2009-09-07 15:16:25 +0100 |
---|---|---|
committer | José Fonseca <[email protected]> | 2009-09-07 15:16:25 +0100 |
commit | 79f48c9f9e739a1f6b0810072e41bc826f2b789d (patch) | |
tree | 3069798347d6be789bea1a8d5a653341781c9923 | |
parent | b481fb2c6d8a8def0956acb0bf9083f5441edd07 (diff) |
scons: Don't set LLVM_VERSION if one of the llvm-config calls fails.
Ubuntu 8.10 has llvm-config version 2.2, which doesn't have
nativecodegen. This triggers an exception.
-rw-r--r-- | scons/llvm.py | 18 | ||||
-rw-r--r-- | src/gallium/drivers/llvmpipe/SConscript | 2 |
2 files changed, 11 insertions, 9 deletions
diff --git a/scons/llvm.py b/scons/llvm.py index 702f1e354f6..46a8d829ca4 100644 --- a/scons/llvm.py +++ b/scons/llvm.py @@ -56,15 +56,17 @@ def generate(env): env.PrependENVPath('PATH', llvm_bin_dir) if env.Detect('llvm-config'): - try: - env['LLVM_VERSION'] = env.backtick('llvm-config --version') - except AttributeError: - env['LLVM_VERSION'] = 'X.X' + version = env.backtick('llvm-config --version').rstrip() - env.ParseConfig('llvm-config --cppflags') - env.ParseConfig('llvm-config --libs jit interpreter nativecodegen bitwriter') - env.ParseConfig('llvm-config --ldflags') - env['LINK'] = env['CXX'] + try: + env.ParseConfig('llvm-config --cppflags') + env.ParseConfig('llvm-config --libs jit interpreter nativecodegen bitwriter') + env.ParseConfig('llvm-config --ldflags') + except OSError: + print 'llvm-config version %s failed' % version + else: + env['LINK'] = env['CXX'] + env['LLVM_VERSION'] = version def exists(env): return True diff --git a/src/gallium/drivers/llvmpipe/SConscript b/src/gallium/drivers/llvmpipe/SConscript index ac1b5d6d1db..dea4b703c45 100644 --- a/src/gallium/drivers/llvmpipe/SConscript +++ b/src/gallium/drivers/llvmpipe/SConscript @@ -3,7 +3,7 @@ Import('*') env = env.Clone() env.Tool('llvm') -if 'LLVM_VERSION' not in env: +if env.has_key('LLVM_VERSION') is False: print 'warning: LLVM not found: not building llvmpipe' Return() |