diff options
author | José Fonseca <jfonseca@vmware.com> | 2010-04-10 02:41:39 +0100 |
---|---|---|
committer | José Fonseca <jfonseca@vmware.com> | 2010-04-11 17:17:34 +0900 |
commit | ea532f0e725bd68e7784189c9b7f6f7bf7f9d901 (patch) | |
tree | 1b318d82380b08fb3f602597b61d797a2f5656bd /common.py | |
parent | 9fc93b80413d63aeb08b5a17602d111ed3899faf (diff) |
scons: Make LLVM a black-white dependency.
Now that draw depends on llvm it is very difficult to correctly handle
broken llvm installations. Either the user requests LLVM and it needs to
supply a working installation. Or it doesn't, and it gets no LLVM
accelerate pipe drivers.
Diffstat (limited to 'common.py')
-rw-r--r-- | common.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/common.py b/common.py index 97389ed5001b..4b6960c66c80 100644 --- a/common.py +++ b/common.py @@ -3,6 +3,7 @@ import os import os.path +import subprocess import sys import platform as _platform @@ -33,6 +34,11 @@ else: default_machine = _platform.machine() default_machine = _machine_map.get(default_machine, 'generic') +if 'LLVM' in os.environ or subprocess.call(['llvm-config', '--version'], stdout=subprocess.PIPE) == 0: + default_llvm = 'yes' +else: + default_llvm = 'no' + if default_platform in ('linux', 'freebsd'): default_dri = 'yes' elif default_platform in ('winddk', 'windows', 'wince', 'darwin'): @@ -61,5 +67,5 @@ def AddOptions(opts): opts.Add(EnumOption('platform', 'target platform', default_platform, allowed_values=('linux', 'cell', 'windows', 'winddk', 'wince', 'darwin', 'embedded'))) opts.Add('toolchain', 'compiler toolchain', 'default') - opts.Add(BoolOption('llvm', 'use LLVM', 'no')) + opts.Add(BoolOption('llvm', 'use LLVM', default_llvm)) opts.Add(BoolOption('dri', 'build DRI drivers', default_dri)) |