summaryrefslogtreecommitdiff
path: root/utils/llvm-lit/llvm-lit.in
blob: 1455b4e037f54e2102202d864e69e4d0e114a570 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#!/usr/bin/env python

import os
import sys

# Variables configured at build time.
llvm_source_root = "@LLVM_SOURCE_DIR@"
llvm_obj_root = "@LLVM_BINARY_DIR@"

# Make sure we can find the lit package.
sys.path.insert(0, os.path.join(llvm_source_root, 'utils', 'lit'))

# Set up some builtin parameters, so that by default the LLVM test suite
# configuration file knows how to find the object tree.
builtin_parameters = {
    'build_mode' : "@BUILD_MODE@",
    'llvm_site_config' : os.path.join(llvm_obj_root, 'test', 'lit.site.cfg'),
    'llvm_unit_site_config' : os.path.join(llvm_obj_root, 'test', 'Unit',
                                           'lit.site.cfg')
    }

clang_obj_root = os.path.join(llvm_obj_root, 'tools', 'clang')

if os.path.exists(clang_obj_root):
    builtin_parameters['clang_site_config'] = \
        os.path.join(clang_obj_root, 'test', 'lit.site.cfg')
    clang_tools_extra_obj_root = os.path.join(clang_obj_root, 'tools', 'extra')
    if os.path.exists(clang_tools_extra_obj_root):
        builtin_parameters['clang_tools_extra_site_config'] = \
            os.path.join(clang_tools_extra_obj_root, 'test', 'lit.site.cfg')

lld_obj_root = os.path.join(llvm_obj_root, 'projects', 'lld')
if os.path.exists(lld_obj_root):
    builtin_parameters['lld_site_config'] = \
        os.path.join(lld_obj_root, 'test', 'lit.site.cfg')

if __name__=='__main__':
    import lit
    lit.main(builtin_parameters)