@LIT_SITE_CFG_IN_HEADER@ import shutil, sys, os, uuid import lit.util from pathlib import Path config.targets_to_build = "@TARGETS_TO_BUILD@".split() config.llvm_src_root = "@LLVM_SOURCE_DIR@" config.llvm_tools_dir = lit_config.substitute("@LLVM_TOOLS_DIR@") config.llvm_libs_dir = "@LLVM_LIBS_DIR@" config.llvm_shlib_dir = lit_config.substitute("@SHLIBDIR@") config.lit_tools_dir = "@LLVM_LIT_TOOLS_DIR@" config.llvm_plugin_ext = "@LLVM_PLUGIN_EXT@" config.cross_project_tests_obj_root = "@CROSS_PROJECT_TESTS_BINARY_DIR@" config.cross_project_tests_src_root = "@CROSS_PROJECT_TESTS_SOURCE_DIR@" config.host_triple = "@LLVM_HOST_TRIPLE@" config.target_triple = "@LLVM_TARGET_TRIPLE@" config.is_msvc = lit.util.pythonize_bool("@MSVC@") config.llvm_enabled_projects = "@LLVM_ENABLE_PROJECTS@".split(";") config.mlir_src_root = "@MLIR_SOURCE_DIR@" config.llvm_use_sanitizer = "@LLVM_USE_SANITIZER@" import lit.llvm lit.llvm.initialize(lit_config, config) # Let the main config do the real work. lit_config.load_config(config, "@CROSS_PROJECT_TESTS_SOURCE_DIR@/lit.cfg.py") def are_short_names_enabled(path): d = Path(path) / str(uuid.uuid4()) / "verylongdir" d.mkdir(parents=True) try: return (d.parent / "verylo~1").exists() finally: shutil.rmtree(d.parent) if os.name == "nt" and are_short_names_enabled(config.environment.get("TEMP")): config.available_features.add("tempshortpaths")