# CMake 3.21.1 available for download

**URL:** https://discourse.cmake.org/t/cmake-3-21-1-available-for-download/3840
**Category:** Announcements
**Created:** [July 27, 2021, 4:09pm UTC](https://discourse.cmake.org/t/cmake-3-21-1-available-for-download/3840 "2021-07-27T16:09:37Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![Tom\_Osika](https://discourse.cmake.org/user_avatar/discourse.cmake.org/tom_osika/32/1101_2.png) [@Tom\_Osika](https://discourse.cmake.org/u/Tom_Osika)
#### Post date: [July 27, 2021, 4:09pm UTC](https://discourse.cmake.org/t/cmake-3-21-1-available-for-download/3840/1 "2021-07-27T16:09:38Z")

</div>

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/](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

---

<div class="post-metadata">

### Author: ![Niels\_Dekker](https://discourse.cmake.org/letter_avatar_proxy/v4/letter/n/9d8465/32.png) [@Niels\_Dekker](https://discourse.cmake.org/u/Niels_Dekker)
#### Post date: [July 28, 2021, 3:35pm UTC](https://discourse.cmake.org/t/cmake-3-21-1-available-for-download/3840/2 "2021-07-28T15:35:32Z")

</div>

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](https://gitlab.kitware.com/cmake/cmake/-/commit/8fb349a80e3feef7d139dd4ade2a2e64e6652e5))

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](https://github.com/InsightSoftwareConsortium/ITK/issues/2661) I just did a new ITK VS2019 build with CMake 3.21.1, and it was entirely successful. 😃
