1import lit.llvm 2 3lit.llvm.initialize(lit_config, config) 4lit.llvm.llvm_config.use_clang([], [], required=False) 5lit.llvm.llvm_config.use_default_substitutions() 6 7config.name = 'Clangd' 8config.suffixes = ['.test'] 9config.excludes = ['Inputs'] 10config.test_format = lit.formats.ShTest(not lit.llvm.llvm_config.use_lit_shell) 11config.test_source_root = config.clangd_source_dir + "/test" 12config.test_exec_root = config.clangd_binary_dir + "/test" 13 14 15# Used to enable tests based on the required targets. Can be queried with e.g. 16# REQUIRES: x86-registered-target 17def calculate_arch_features(arch_string): 18 return [arch.lower() + '-registered-target' for arch in arch_string.split()] 19 20 21lit.llvm.llvm_config.feature_config([('--targets-built', 22 calculate_arch_features)]) 23 24# Clangd-specific lit environment. 25config.substitutions.append(('%clangd-benchmark-dir', 26 config.clangd_binary_dir + "/benchmarks")) 27 28if config.clangd_build_xpc: 29 config.available_features.add('clangd-xpc-support') 30 31if config.clangd_enable_remote: 32 config.available_features.add('clangd-remote-index') 33 34if config.clangd_tidy_checks: 35 config.available_features.add('clangd-tidy-checks') 36 37if config.have_zlib: 38 config.available_features.add('zlib') 39