[all-commits] [llvm/llvm-project] a1db72: [cross-project-tests] Derive tool substitutions fr...

Alexander Richardson via All-commits all-commits at lists.llvm.org
Wed Sep 23 13:12:03 PDT 2026


  Branch: refs/heads/users/arichardson/cross-project-tests-derive-tool-substitutions-from-cmake
  Home:   https://github.com/llvm/llvm-project
  Commit: a1db72ba39c1b102a37be39aef683c863124507e
      https://github.com/llvm/llvm-project/commit/a1db72ba39c1b102a37be39aef683c863124507e
  Author: Alex Richardson <alexrichardson at google.com>
  Date:   2026-09-21 (Mon, 21 Sep 2026)

  Changed paths:
    M cross-project-tests/CMakeLists.txt
    M cross-project-tests/lit.cfg.py
    M cross-project-tests/lit.site.cfg.py.in

  Log Message:
  -----------
  [cross-project-tests] Derive tool substitutions from CMake and reject unlisted llvm-* tools

Previously, `cross-project-tests/CMakeLists.txt` listed `llvm-*` binaries in
`CROSS_PROJECT_TEST_DEPS` without registering corresponding `ToolSubst` entries
in `cross-project-tests/lit.cfg.py`, so tests invoking tools such as
`llvm-objdump` or `llvm-dis` would silently pick them up from `$PATH` instead of
the build directory.

Factor the tool list into `CROSS_PROJECT_TEST_TOOLS` (adding `llvm-nm`,
`llvm-readelf`, and `llvm-readobj`), pass it through `lit.site.cfg.py.in` into
`lit.cfg.py` so the CMake dependencies and lit substitutions stay in sync, and
add a catch-all substitution mapping any remaining bare `llvm-*` command to
`false 'missing CROSS_PROJECT_TEST_TOOLS substitution for ...'` to catch missing
entries immediately.

This commit was created with the help of AI tools



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list