# Disable flake linting for this file since it flags "config" as a non-existent variable # flake8: noqa import os import lit.formats import lit.util from lit.llvm import llvm_config from lit.llvm.subst import ToolSubst from lit.llvm.subst import FindTool config.name = "ClangPlugins" config.test_format = lit.formats.ShTest(not llvm_config.use_lit_shell) config.suffixes = [".cpp"] config.test_source_root = os.path.dirname(__file__) llvm_config.use_default_substitutions() llvm_config.use_clang() config.substitutions.append(("%target_triple", config.target_triple)) config.substitutions.append(("%PATH%", config.environment["PATH"])) plugin_includes = " ".join(f"-I{s}" for s in config.plugin_includes.split(";")) plugin_opts = " ".join(s.replace("-fplugin=", "-load ") for s in config.plugin_opts.split(";")) config.substitutions.append(("%plugin_opts%", f"{plugin_opts} {plugin_includes}")) tools = ["clang", "clang++"] llvm_config.add_tool_substitutions(tools, config.llvm_tools_dir)