CLANG_TOOLS_DIR holds the the current bin/ directory, maybe with a %(build_mode)
placeholder. It is used to add the just-built binaries to $PATH for lit tests.
In most cases it equals LLVM_TOOLS_DIR, which is used for the same purpose.
But for a standalone build of clang, CLANG_TOOLS_DIR points at the build tree
and LLVM_TOOLS_DIR points at the provided LLVM binaries.
Currently CLANG_TOOLS_DIR is set in clang/test/, clang-tools-extra/test/, and
other things always built with clang. This is a few cryptic lines of CMake in
each place. Meanwhile LLVM_TOOLS_DIR is provided by configure_site_lit_cfg().
This patch moves CLANG_TOOLS_DIR to configure_site_lit_cfg() and renames it:
- there's nothing clang-specific about the value
- it will also replace LLD_TOOLS_DIR, LLDB_TOOLS_DIR etc (not in this patch)
It also defines CURRENT_LIBS_DIR. While I removed the last usage of
CLANG_LIBS_DIR in e4cab4e24d, there are LLD_LIBS_DIR usages etc that
may be live, and I'd like to mechanically update them in a followup patch.
Differential Revision: https://reviews.llvm.org/D121763
15 lines
618 B
Python
15 lines
618 B
Python
@LIT_SITE_CFG_IN_HEADER@
|
|
|
|
# Variables needed for common llvm config.
|
|
config.clang_tools_dir = "@CURRENT_TOOLS_DIR@"
|
|
config.lit_tools_dir = "@LLVM_LIT_TOOLS_DIR@"
|
|
config.llvm_tools_dir = lit_config.substitute("@LLVM_TOOLS_DIR@")
|
|
config.llvm_libs_dir = lit_config.substitute("@LLVM_LIBS_DIR@")
|
|
config.target_triple = "@TARGET_TRIPLE@"
|
|
config.python_executable = "@Python3_EXECUTABLE@"
|
|
|
|
config.clang_pseudo_source_dir = "@CMAKE_CURRENT_SOURCE_DIR@/.."
|
|
config.clang_pseudo_binary_dir = "@CMAKE_CURRENT_BINARY_DIR@/.."
|
|
# Delegate logic to lit.cfg.py.
|
|
lit_config.load_config(config, "@CMAKE_CURRENT_SOURCE_DIR@/lit.cfg.py")
|