1*9880d681SAndroid Build Coastguard Worker#!/usr/bin/env python 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Workerimport os 4*9880d681SAndroid Build Coastguard Workerimport sys 5*9880d681SAndroid Build Coastguard Worker 6*9880d681SAndroid Build Coastguard Worker# Variables configured at build time. 7*9880d681SAndroid Build Coastguard Workerllvm_source_root = "@LLVM_SOURCE_DIR@" 8*9880d681SAndroid Build Coastguard Workerllvm_obj_root = "@LLVM_BINARY_DIR@" 9*9880d681SAndroid Build Coastguard Worker 10*9880d681SAndroid Build Coastguard Worker# Make sure we can find the lit package. 11*9880d681SAndroid Build Coastguard Workersys.path.insert(0, os.path.join(llvm_source_root, 'utils', 'lit')) 12*9880d681SAndroid Build Coastguard Worker 13*9880d681SAndroid Build Coastguard Worker# Set up some builtin parameters, so that by default the LLVM test suite 14*9880d681SAndroid Build Coastguard Worker# configuration file knows how to find the object tree. 15*9880d681SAndroid Build Coastguard Workerbuiltin_parameters = { 16*9880d681SAndroid Build Coastguard Worker 'build_mode' : "@BUILD_MODE@", 17*9880d681SAndroid Build Coastguard Worker 'llvm_site_config' : os.path.join(llvm_obj_root, 'test', 'lit.site.cfg'), 18*9880d681SAndroid Build Coastguard Worker 'llvm_unit_site_config' : os.path.join(llvm_obj_root, 'test', 'Unit', 19*9880d681SAndroid Build Coastguard Worker 'lit.site.cfg') 20*9880d681SAndroid Build Coastguard Worker } 21*9880d681SAndroid Build Coastguard Worker 22*9880d681SAndroid Build Coastguard Workerclang_obj_root = os.path.join(llvm_obj_root, 'tools', 'clang') 23*9880d681SAndroid Build Coastguard Worker 24*9880d681SAndroid Build Coastguard Workerif os.path.exists(clang_obj_root): 25*9880d681SAndroid Build Coastguard Worker builtin_parameters['clang_site_config'] = \ 26*9880d681SAndroid Build Coastguard Worker os.path.join(clang_obj_root, 'test', 'lit.site.cfg') 27*9880d681SAndroid Build Coastguard Worker clang_tools_extra_obj_root = os.path.join(clang_obj_root, 'tools', 'extra') 28*9880d681SAndroid Build Coastguard Worker if os.path.exists(clang_tools_extra_obj_root): 29*9880d681SAndroid Build Coastguard Worker builtin_parameters['clang_tools_extra_site_config'] = \ 30*9880d681SAndroid Build Coastguard Worker os.path.join(clang_tools_extra_obj_root, 'test', 'lit.site.cfg') 31*9880d681SAndroid Build Coastguard Worker 32*9880d681SAndroid Build Coastguard Workerlld_obj_root = os.path.join(llvm_obj_root, 'tools', 'lld') 33*9880d681SAndroid Build Coastguard Workerif os.path.exists(lld_obj_root): 34*9880d681SAndroid Build Coastguard Worker builtin_parameters['lld_site_config'] = \ 35*9880d681SAndroid Build Coastguard Worker os.path.join(lld_obj_root, 'test', 'lit.site.cfg') 36*9880d681SAndroid Build Coastguard Worker 37*9880d681SAndroid Build Coastguard Workercompilerrt_obj_root = os.path.join(llvm_obj_root, 'projects', 'compiler-rt') 38*9880d681SAndroid Build Coastguard Workerif os.path.exists(compilerrt_obj_root): 39*9880d681SAndroid Build Coastguard Worker builtin_parameters['compilerrt_site_basedir'] = \ 40*9880d681SAndroid Build Coastguard Worker os.path.join(compilerrt_obj_root, 'test') 41*9880d681SAndroid Build Coastguard Worker 42*9880d681SAndroid Build Coastguard Workerif __name__=='__main__': 43*9880d681SAndroid Build Coastguard Worker import lit 44*9880d681SAndroid Build Coastguard Worker lit.main(builtin_parameters) 45