CMake 3.21.1 available for download

We are pleased to announce that CMake 3.21.1 is now available for download.

Please use the latest release from our download page:
https://cmake.org/download/

Thanks for your support!


Changes made since CMake 3.21.0:

Alexey Edelev (2):

  • AUTOUIC: Fix cyclic dependency between generated UI headers and timestamp
  • AUTOUIC: Fix generating of dependency rules for UI header files

Ben Boeckel (5):

  • ci: use CMake 3.21.0
  • Help/ctest_memcheck: mention ctest_test arguments
  • TestDriver: suppress deprecated header lints for time.h
  • TestDriver: use CM_NULL to avoid lints about nullptr usage
  • Help/ctest_test: add a comment to also update ctest_memcheck

Brad King (29):

  • enable_language: Fix test for working compiler with CMP0126 NEW behavior
  • VS: Recognize CSharp VS 2019 compiler version v142
  • VS: Improve v142 CL flag table LanguageStandard ordering
  • VS: Add CSharp VS 2022 compiler version and flag table v143
  • VS: Add v143 flag tables for VS 17.0 Preview 2
  • VS: Fix /MANIFESTUAC: link flag mapping for v143
  • VS: Map the link /debug flag for v143
  • VS: Remove the /MERGE flag from v143 link flag table
  • VS: Fix /analyze:log flag mapping for v143
  • VS: Add -Zc:inline[-] flag table entry for v143
  • VS: Populate /Y- flag table entry for v143
  • VS: Populate -Qspectre- flag table entry for v143
  • VS: Populate /JMC- flag table entry for v143
  • VS: Remove empty ConformanceMode entry from flag table for v143
  • VS: Remove empty LanguageStandard entries from flag table for v143
  • VS: Remove empty ExternalWarningLevel entry from flag table for v143
  • VS: Remove broken EnableASAN entry from flag table for v143
  • VS: Fix /sourceDependencies flag table entries for v143
  • VS: Update Visual Studio 17 2022 generator for Preview 2
  • CMakeDetermineCompilerId: Fix CMAKE_EXECUTABLE_FORMAT in CMP0126 NEW behavior
  • try_compile: Propagate CMP0126 to the generated test project
  • CMakeDependentOption: Revert “Allow parentheses in the depends string”
  • cmMessenger: Revert to non-color messages on Windows
  • cmGeneratorExpressionNode: Factor out local variable for global generator
  • Swift: Update test case to try CMP0126 NEW behavior
  • Ninja Multi-Config: Restore TARGET_OBJECTS support in cross-configs
  • VS: Remove cl /FS entry from flag table for v142 and v143
  • VS: Remove C++ module CompileAs flag table entries for v142 and v143
  • CMake 3.21.1

Craig Scott (10):

  • Help: Clarify wording of CMP0124
  • Help: Explain policy CMP0125 in more detail
  • Help: Make policy CMP0126 wording more accurate
  • Help: Fix trivial typo
  • Help: Clarify which project() call PROJECT_IS_TOP_LEVEL is for
  • Help: Re-order file() sub-commands in Filesystem section
  • Help: Expand details for file(COPY_FILE)
  • Help: Clarify and correct wording around DEPFILE option
  • Help: Improve wording and cross-referencing for ctest JUnit output
  • Help: Add cross-references between test output size ctest variables

Jean-Marc Hengen (1):

  • IAR: Moved search logic to BinUtils.

Joerg Bornemann (1):

  • AutoGen: Fix needless compilation of mocs_compilation.cpp

KWSys Upstream (1):

  • KWSys 2021-07-26 (d5fd6ca2)

Kyle Edwards (2):

  • CMakePresets.json: Fix expansion issue with empty binaryDir
  • Tests: Clean up Ninja Multi-Config test from cb777dd

Lorenzo Cappelletti (3):

  • Compiler/IAR: search for both IAR’s binaries * and *.exe
  • Compiler/IAR: Avoid clobbering CMAKE_EXECUTABLE_SUFFIX
  • Help: Document CMAKE_EXECUTABLE_SUFFIX_<LANG> explicitly

Martin Storsjö (1):

  • libuv: Fix building with mingw toolchains for ARM/AArch64

Raul Tambre (1):

  • GNU: Correct C23 flags

Yauheni Khnykin (1):

  • FindXCTest: Fix output directory for test bundle with Xcode 12.5

Đoàn Trần Công Danh (2):

  • Tests/CompileOptions: allow CMAKE_BUILD_TYPE=None
  • Add option to explicitly avoid using execinfo for backtraces
1 Like

Thanks very much @brad.king for including the fix of the CMake 3.21.0 issue that I submitted just two days ago (issue #22476), by “VS: Remove cl /FS entry from flag table for v142 and v143” (commit 8fb349a8)

I’m very glad to see that it does indeed fix the Visual C++ errors that I encountered with CMake 3.21.0: Visual Studio 2019 16.10.4 VXL fatal error C1090: PDB API call failed, error code ‘3’ · Issue #2661 · InsightSoftwareConsortium/ITK · GitHub I just did a new ITK VS2019 build with CMake 3.21.1, and it was entirely successful. :smiley: