Skip to content

v0.10.0 — The Unix legs build with Ninja

Choose a tag to compare

@rhalbersma rhalbersma released this 16 Sep 11:14
· 55 commits to main since this release
95dead5

Nine workflows configured with no -G and got Unix Makefiles, which cost twice
over: cmake --build shells out to make with no -j, so those legs compiled
on one core of the runner's four, and Makefiles cannot scan C++20 module
dependencies at all.

They now take a generator input, defaulting to Ninja — gcc, clang,
clang-libc++, apple-clang, coverage, sanitizers, clang-tidy, codeql
and consumption, the last across all five of its configure sites. Nothing is
installed: ubuntu-24.04, macos-15 and macos-26 all ship Ninja 1.13.2. A caller
needing the platform default writes generator: Unix Makefiles; mingw.yml and
the two Visual Studio legs already named their own and are unchanged.

Also since v0.9.0:

  • vcpkg_features lets a caller name the manifest features its tests need,
    instead of pushing them into default-features and charging every consumer
    for them (#45).
  • The internal pins name a commit the history can serve. A repin made on a
    branch is stale the moment it squash-merges, which had left main and every
    PR red on 58 bad pins (#47).
  • The README claims Active rather than WIP, and says what this CI is
    indifferent to — the shape of the library, the test framework — rather than
    defending it (#46, #48, #49).

Upgrading: repin and nothing else, unless your project depends on the
generator. The build directory is CMake's own, so a caller that cached one
across the change wants a clean configure.