X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=test%2Flit.cfg;h=3ba4c993ef64a3100abe14612d788baa2bf4c981;hb=ab3d00e5350fd4c097e2a5b077da7584692029a7;hp=3b45bf9bd3b50013b345c72e5a2761056536a674;hpb=197f1f024677641dc86760c56d5fcaff7e1b52ee;p=oota-llvm.git diff --git a/test/lit.cfg b/test/lit.cfg index 3b45bf9bd3b..3ba4c993ef6 100644 --- a/test/lit.cfg +++ b/test/lit.cfg @@ -40,13 +40,30 @@ if llvm_obj_root is not None: config.environment['PATH'] = path llvmgcc_dir = getattr(config, 'llvmgcc_dir', None) - if not llvm_tools_dir: - lit.fatal('No llvm-gcc dir set!') if llvmgcc_dir: path = os.path.pathsep.join((os.path.join(llvmgcc_dir, 'bin'), config.environment['PATH'])) config.environment['PATH'] = path +# Propagate 'HOME' through the environment. +if 'HOME' in os.environ: + config.environment['HOME'] = os.environ['HOME'] + +# Propagate 'INCLUDE' through the environment. +if 'INCLUDE' in os.environ: + config.environment['INCLUDE'] = os.environ['INCLUDE'] + +# Propagate 'LIB' through the environment. +if 'LIB' in os.environ: + config.environment['LIB'] = os.environ['LIB'] + +# Propagate LLVM_SRC_ROOT into the environment. +config.environment['LLVM_SRC_ROOT'] = getattr(config, 'llvm_src_root', '') + +# Propagate PYTHON_EXECUTABLE into the environment +config.environment['PYTHON_EXECUTABLE'] = getattr(config, 'python_executable', + '') + ### import os @@ -102,7 +119,7 @@ import re site_exp = {} # FIXME: Implement lit.site.cfg. for line in open(os.path.join(config.llvm_obj_root, 'test', 'site.exp')): - m = re.match('set ([^ ]+) "([^"]*)"', line) + m = re.match('set ([^ ]+) "(.*)"', line) if m: site_exp[m.group(1)] = m.group(2) @@ -114,6 +131,11 @@ for sub in ['llvmgcc', 'llvmgxx', 'compile_cxx', 'compile_c', if sub in ('llvmgcc', 'llvmgxx'): config.substitutions.append(('%' + sub, site_exp[sub] + ' -emit-llvm -w')) + # FIXME: This is a hack to avoid LLVMC tests failing due to a clang driver + # warning when passing in "-fexceptions -fno-exceptions". + elif sub == 'compile_cxx': + config.substitutions.append(('%' + sub, + site_exp[sub].replace('-fno-exceptions', ''))) else: config.substitutions.append(('%' + sub, site_exp[sub])) @@ -122,6 +144,10 @@ excludes = [] # Provide target_triple for use in XFAIL and XTARGET. config.target_triple = site_exp['target_triplet'] +# When running under valgrind, we mangle '-vg' or '-vg_leak' onto the end of the +# triple so we can check it with XFAIL and XTARGET. +config.target_triple += lit.valgrindTriple + # Provide llvm_supports_target for use in local configs. targets = set(site_exp["TARGETS_TO_BUILD"].split()) def llvm_supports_target(name): @@ -130,13 +156,13 @@ def llvm_supports_target(name): def llvm_supports_darwin_and_target(name): return 'darwin' in config.target_triple and llvm_supports_target(name) -langs = set(site_exp['llvmgcc_langs'].split(',')) +langs = set([s.strip() for s in site_exp['llvmgcc_langs'].split(',')]) def llvm_gcc_supports(name): - return name in langs + return name.strip() in langs -bindings = set(site_exp['llvm_bindings'].split(',')) +bindings = set([s.strip() for s in site_exp['llvm_bindings'].split(',')]) def llvm_supports_binding(name): - return name in bindings + return name.strip() in bindings # Provide on_clone hook for reading 'dg.exp'. import os