[PATCH] D121838: Generalize "check-all" umbrella targets, use for check-clang-tools

Sam McCall via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Apr 6 10:01:40 PDT 2022

sammccall added a comment.

In D121838#3433472 <https://reviews.llvm.org/D121838#3433472>, @tstellar wrote:

> Can you elaborate more on the problem this is solving? Also, what are the user visible changes?

Most directly, check-clang-tools does not currently run clangd or clang-pseudo tests, but does after this patch.

More generally, it removes the requirement to intermingle the layout of projects (e.g. those under clang-tools-extra) that we want a single `check-*` target to cover.

Lit is a monolithic runner that expects to see all tests, manage parallelism and failures, and display interactive output.
This means if you want to run all tests in a subdirectory via e.g. ninja, you need to define a `check-mydir` target that knows about each lit test suite involved.

Examples of this pattern are:

- `check-clang-tools` for `llvm-project/clang-tools-extra/`, today we force the tests of each project in this directory into a single test suite directory. (`clangd/` and `pseudo/` do not follow this, and so their tests are not run by `check-clang-tools`).
- `check-all` for the `llvm-project/` root, today we use global variables to keep track of all test suites. This is the mechanism this patch attempts to generalize.

> Will check-all and check-clang run the same set of tests as before?

Yes, only check-clang-tools is intended to change.

  rG LLVM Github Monorepo



More information about the cfe-commits mailing list