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
33 lines
1.3 KiB
Python
33 lines
1.3 KiB
Python
@LIT_SITE_CFG_IN_HEADER@
|
|
|
|
import lit.util
|
|
|
|
config.have_dia_sdk = lit.util.pythonize_bool("@LLVM_ENABLE_DIA_SDK@")
|
|
config.llvm_src_root = "@LLVM_SOURCE_DIR@"
|
|
config.llvm_obj_root = "@LLVM_BINARY_DIR@"
|
|
config.llvm_tools_dir = lit_config.substitute("@LLVM_TOOLS_DIR@")
|
|
config.llvm_libs_dir = lit_config.substitute("@LLVM_LIBS_DIR@")
|
|
config.llvm_shlib_dir = "@SHLIBDIR@"
|
|
config.llvm_shlib_ext = "@SHLIBEXT@"
|
|
config.lit_tools_dir = "@LLVM_LIT_TOOLS_DIR@"
|
|
config.errc_messages = "@LLVM_LIT_ERRC_MESSAGES@"
|
|
config.lld_obj_root = "@LLD_BINARY_DIR@"
|
|
config.lld_libs_dir = lit_config.substitute("@CURRENT_LIBS_DIR@")
|
|
config.lld_tools_dir = lit_config.substitute("@CURRENT_TOOLS_DIR@")
|
|
config.target_triple = "@LLVM_TARGET_TRIPLE@"
|
|
config.python_executable = "@Python3_EXECUTABLE@"
|
|
config.have_zlib = @LLVM_ENABLE_ZLIB@
|
|
config.have_libxar = @LLVM_HAVE_LIBXAR@
|
|
config.have_libxml2 = @LLVM_ENABLE_LIBXML2@
|
|
config.sizeof_void_p = @CMAKE_SIZEOF_VOID_P@
|
|
config.ld_lld_default_mingw = @LLD_DEFAULT_LD_LLD_IS_MINGW@
|
|
config.build_examples = @LLVM_BUILD_EXAMPLES@
|
|
config.has_plugins = @LLVM_ENABLE_PLUGINS@
|
|
config.linked_bye_extension = @LLVM_BYE_LINK_INTO_TOOLS@
|
|
|
|
import lit.llvm
|
|
lit.llvm.initialize(lit_config, config)
|
|
|
|
# Let the main config do the real work.
|
|
lit_config.load_config(config, "@LLD_SOURCE_DIR@/test/lit.cfg.py")
|