CMake 3.22.0-rc1 is ready for testing

I am proud to announce the first CMake 3.22 release candidate.

Documentation is available at:

Release notes appear below and are also published at

Some of the more significant changes in CMake 3.22 are:

  • The “Compile Features” functionality now correctly disables or
    enables compiler extensions when no standard level is specified and
    avoids unnecessarily adding language standard flags if the requested
    settings match the compiler’s defaults. See “CMP0128”.
  • The “cmake_host_system_information()” command can now query OS
    identification variables from the “/etc/os-release” file.
  • The “CMAKE_BUILD_TYPE” environment variable was added to provide a
    default value for the “CMAKE_BUILD_TYPE” variable.
  • The “CMAKE_REQUIRE_FIND_PACKAGE_<PackageName>” variable was added to
    turn a non-REQUIRED “find_package()” call into a REQUIRED one.
  • The “FetchContent” module now passes through the “CMAKE_TLS_VERIFY”,
    (when defined) to the underlying “ExternalProject” sub-build.
    Previously, those variables were silently ignored by “FetchContent”.
  • The “Visual Studio 10 2010” generator is now deprecated and will be
    removed in a future version of CMake.

Questions or comments are always welcome!