<div dir="ltr">I am proud to announce the second CMake 3.22 release candidate.<br>  <a href="https://cmake.org/download/" target="_blank">https://cmake.org/download/</a><br><br>Documentation is available at:<br>  <a href="https://cmake.org/cmake/help/v3.22" target="_blank">https://cmake.org/cmake/help/v3.22</a><br><br>Release notes appear below and are also published at<br>  <a href="https://cmake.org/cmake/help/v3.22/release/3.22.html" target="_blank">https://cmake.org/cmake/help/v3.22/release/3.22.html</a><br><br>Some of the more significant changes in CMake 3.22 are:<br><br>* The "Compile Features" functionality now correctly disables or<br>  enables compiler extensions when no standard level is specified and<br>  avoids unnecessarily adding language standard flags if the requested<br>  settings match the compiler's defaults. See "CMP0128".<br><br>* The "cmake_host_system_information()" command can now query OS<br>  identification variables from the "/etc/os-release" file.<br><br>* The "CMAKE_BUILD_TYPE" environment variable was added to provide a<br>  default value for the "CMAKE_BUILD_TYPE" variable.<br><br>* The "CMAKE_REQUIRE_FIND_PACKAGE_<PackageName>" variable was added to<br>  turn a non-REQUIRED "find_package()" call into a REQUIRED one.<br><br>* The "FetchContent" module now passes through the "CMAKE_TLS_VERIFY",<br>  "CMAKE_TLS_CAINFO", "CMAKE_NETRC" and "CMAKE_NETRC_FILE" variables<br>  (when defined) to the underlying "ExternalProject" sub-build.<br>  Previously, those variables were silently ignored by "FetchContent".<br><br>* The "Visual Studio 10 2010" generator is now deprecated and will be<br>  removed in a future version of CMake.<br><br><br>CMake 3.22 Release Notes<br>************************<br><br>Changes made since CMake 3.21 include the following.<br><br><br>New Features<br>============<br><br><br>Commands<br>--------<br><br>* The "cmake_host_system_information()" command can now query OS<br>  identification variables from the "/etc/os-release" file.<br><br>* The "string(TIMESTAMP)" command now supports the "%V" specifier for<br>  ISO 8601 week numbers.<br><br><br>Variables<br>---------<br><br>* The "CMAKE_BUILD_TYPE" environment variable was added to provide a<br>  default value for the "CMAKE_BUILD_TYPE" variable.<br><br>* The "CMAKE_CONFIGURATION_TYPES" environment variable was added to<br>  provide a default value for the "CMAKE_CONFIGURATION_TYPES"<br>  variable.<br><br>* The "CMAKE_INSTALL_MODE" environment variable was added to tell<br>  "install()" rules (implemented by "file(INSTALL)") to install<br>  symbolic links instead of copying of files.<br><br>* The "CMAKE_<LANG>_LINK_WHAT_YOU_USE_FLAG" and<br>  "CMAKE_LINK_WHAT_YOU_USE_CHECK" variables were added to control the<br>  linker flag and check used by the "LINK_WHAT_YOU_USE" target<br>  property.<br><br>* The "CMAKE_REQUIRE_FIND_PACKAGE_<PackageName>" variable was added to<br>  turn a non-REQUIRED "find_package()" call into a REQUIRED one.<br><br><br>Properties<br>----------<br><br>* The "<LANG>_EXTENSIONS" target property is now initialized to<br>  "CMAKE_<LANG>_EXTENSIONS_DEFAULT", detected from the compiler. See<br>  "CMP0128".<br><br>* The "VS_SETTINGS" source file property is now supported for all<br>  source file types.  Previously it worked only for non-built sources.<br><br><br>Modules<br>-------<br><br>* The "CMakeDependentOption" module "cmake_dependent_option()" macro<br>  now supports full Condition Syntax. See policy "CMP0127".<br><br>* The "FetchContent" module now passes through the "CMAKE_TLS_VERIFY",<br>  "CMAKE_TLS_CAINFO", "CMAKE_NETRC" and "CMAKE_NETRC_FILE" variables<br>  (when defined) to the underlying "ExternalProject" sub-build.<br>  Previously, those variables were silently ignored by "FetchContent".<br><br>* The "FindBLAS" and "FindLAPACK" modules gained a<br>  "BLA_SIZEOF_INTEGER" option to find a BLAS/LAPACK whose ABI uses a<br>  specific integer size.<br><br>* The "FindJasper" module now provides an imported target.<br><br>* The "FindMatlab" module now provides imported targets.<br><br>* The "FindPkgConfig" module gained a "PKG_CONFIG_ARGN" variable to<br>  specify arguments to "pkg-config" calls.<br><br>* The "GoogleTest" module "gtest_discover_tests()" function gained a<br>  "TEST_FILTER" option to filter tests using "--gtest_filter" during<br>  test discovery.<br><br>* The "UseSWIG" module, for Visual Studio Generators, can now use the<br>  "swig" tool to generate implicit dependencies.<br><br><br>CTest<br>-----<br><br>* "ctest(1)" learned to recognize labels attached to a test at run<br>  time. Previously it was only possible to attach labels to tests at<br>  configure time by using the "LABELS" test property. See Additional<br>  Test Measurements for more information.<br><br>* "ctest(1)" learned to be able to modify the environment for a test<br>  through the "ENVIRONMENT_MODIFICATION" property. This is allows for<br>  updates to environment variables based on the environment present at<br>  test time.<br><br>* The "ctest_memcheck()" command now also generates a<br>  "DynamicAnalysis-Test.xml" file which may be used to submit test<br>  results to CDash.<br><br><br>CPack<br>-----<br><br>* The "CPack DEB Generator" gained the option to set<br>  "CPACK_DEBIAN_COMPRESSION_TYPE" to "zstd", which enables Zstandard<br>  compression for deb packages.<br><br>* The "CPack NSIS Generator" gained a new<br>  "CPACK_NSIS_IGNORE_LICENSE_PAGE" variable to suppress the license<br>  page in the installer.<br><br>* The "CPack RPM Generator" gained the<br>  "CPACK_RPM_REQUIRES_EXCLUDE_FROM" option to avoid scanning specific<br>  paths for dependencies.<br><br><br>Deprecated and Removed Features<br>===============================<br><br>* The "Visual Studio 10 2010" generator is now deprecated and will be<br>  removed in a future version of CMake.<br><br><br>Other Changes<br>=============<br><br>* The "Compile Features" functionality now correctly disables or<br>  enables compiler extensions when no standard level is specified and<br>  avoids unnecessarily adding language standard flags if the requested<br>  settings match the compiler's defaults. See "CMP0128".<br><br>* The "Compile Features" functionality now ignores features for<br>  languages that are not enabled.<br><br>* The Ninja Generators now implement the "edit_cache" target using<br>  "ccmake(1)" if available.<br><br>* The "Ninja" and "NMake Makefiles" generators now use the MSVC<br>  "-external:I" flag for system includes. This became available as of<br>  VS 16.10 (toolchain version 14.29.30037).<br><br>* The "CPack NSIS Generator" now requires NSIS 3.03 or later.<br><br>----------------------------------------------------------------------------<br>Changes made since CMake 3.22.0-rc1:<br><br>Arcturus Arcturus (1):<br>  Help: Fix file(INSTALL) docs w.r.t. CMAKE_INSTALL_MESSAGE<br><br>Ben Boeckel (2):<br>  cmCTestRunTest: fix modifying non-existent envvars<br>  cmRST: support `versionadded` and `versionchanged` directives<br><br>Brad King (17):<br>  zstd: Backport fix for SIGBUS on armv6 from zstd 1.5.0<br>  IRSL: Fix discovery of VS 2022 v143 toolset redistributables for preview 5<br>  Source: Fix typo in _WIN32 preprocessor checks<br>  VS: Update Visual Studio 17 2022 generator for the Release Candidate<br>  cmGlobalVisualStudio10Generator: Allow subclasses to reset MSBuild search<br>  cmGlobalVisualStudioVersionedGenerator: Allow repeating SetGeneratorInstance<br>  cmGlobalGenerator: Add method to check if generator is at least VS 10<br>  cmGlobalVisualStudio10Generator: Add method to find MSBuild early<br>  cmake_host_system_information: Add undocumented VS_MSBUILD_COMMAND key<br>  Android: Refactor sysroot detection under Visual Studio<br>  Restore honoring CMAKE_GENERATOR_INSTANCE in toolchain file<br>  BinUtils: Avoid llvm-strip versions older than Clang 11<br>  HIP: Add missing space when appending --cuda-host-only<br>  cmGlobalVisualStudioVersionedGenerator: Fix repeating SetGeneratorInstance<br>  VS: Update Visual Studio 17 2022 generator for the Release Candidates<br>  gitlab-ci: Run manual jobs automatically only on scheduled pipelines<br>  CMake 3.22.0-rc2<br><br>Erlend E. Aasland (1):<br>  CPack/IFW: Add support for QtIFW 4.2<br><br>Michael Hirsch (2):<br>  Help: gen expr: note that CONFIG is comma-separated<br>  Help: Clarify ENVIRONMENT_MODIFICATION case sensitivity<br><br>Raul Tambre (1):<br>  CheckLanguage: Don't pass CMAKE_CUDA_HOST_COMPILER for Visual Studio<br></div>