clang-tools 24.0.0git
test/lit.cfg.py
Go to the documentation of this file.
1import os
2
3import lit.llvm
4import lit.util
5
6lit.llvm.initialize(lit_config, config)
7lit.llvm.llvm_config.clang_setup()
8lit.llvm.llvm_config.use_default_substitutions()
9
10config.name = "Clangd"
11config.suffixes = [".test"]
12config.excludes = ["Inputs"]
13config.test_format = lit.formats.ShTest()
14config.test_source_root = config.clangd_source_dir + "/test"
15config.test_exec_root = config.clangd_binary_dir + "/test"
16
17
18# Used to enable tests based on the required targets. Can be queried with e.g.
19# REQUIRES: x86-registered-target
20def calculate_arch_features(arch_string):
21 return [arch.lower() + "-registered-target" for arch in arch_string.split()]
22
23
24lit.llvm.llvm_config.feature_config([("--targets-built", calculate_arch_features)])
25
26# Clangd-specific lit environment.
27config.substitutions.append(
28 ("%clangd-benchmark-dir", config.clangd_binary_dir + "/benchmarks")
29)
30
31if config.clangd_build_xpc:
32 config.available_features.add("clangd-xpc-support")
33
34if config.clangd_enable_remote:
35 config.available_features.add("clangd-remote-index")
36
37if config.clangd_tidy_checks:
38 config.available_features.add("clangd-tidy-checks")
39
40if config.have_zlib:
41 config.available_features.add("zlib")
42
43if lit.util.pythonize_bool(config.have_benchmarks):
44 config.available_features.add("have-benchmarks")
45
46# It is not realistically possible to account for all options that could
47# possibly be present in system and user configuration files, so disable
48# default configs for the test runs.
49config.environment["CLANG_NO_DEFAULT_CONFIG"] = "1"
calculate_arch_features(arch_string)