CMake 3.28.4 available for download

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

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

See also the release notes and release milestone

Thanks for your support!


Changes made since CMake 3.28.3:

Ben Boeckel (26):

  • cmDyndepCollation: collapse full path before looking up
  • Tests/CXXModules: support testing rebuild conditions
  • cxxmodules: return failure from the collator when private usage is found
  • Tests/CXXModules: test that objects depend on their modmap files
  • cxxmodules: depend on the modmap contents
  • cmNinjaTargetGenerator: use emplace_back for scanning deps
  • Tests/CXXModules: test that objects depend on dependent modules json files
  • cmNinjaTargetGenerator: scanning depends on the module metadata
  • Tests/CXXModules: add a test to ensure that restat works for collation
  • Ninja: make the collator rule use restat = 1
  • Tests/CXXModules: document CMake_TEST_MODULE_COMPILATION items
  • Tests/CXXModules: support building a project with Ninja
  • Tests/CXXModules: add a test importing from a Ninja install
  • cmGeneratorTarget: store synthetic targets in its cache
  • Tests/CXXModules: add a test with transitive targets
  • cmTarget: copy link libraries from the right properties
  • Tests/CXXModules: test transitive modules usage
  • cmExportFileGenerator: export link libraries as-is
  • cmGeneratorTarget: discover synthetic targets recursively
  • Tests/CXXModules: test cxx_std_20 coming from a dependency
  • Clang: detect -resource-dir for clang-scan-deps
  • cmGeneratorTarget: collapse paths before querying the fileset cache
  • CMakeDetermineCompilerId: use _ARG1 to query the clang resource dir
  • cmExportFileGenerator: only export include paths for HEADERS file sets
  • cmImportedCxxModuleInfo: remove unused pointer field
  • Tests/CXXModules: add a test using TARGET_OBJECTS from modules

Brad King (21):

  • Tests/RunCMake/Ninja: Rename showIncludes case for clang-cl <= 17
  • gitlab-ci: update macOS jobs to use Xcode 15.2
  • cmUVProcessChain: Implement no-extension-on-Windows support with libuv 1.48
  • libuv: win/spawn: optionally run executable paths with no file extension
  • cmLocalGenerator: Avoid unnecessary lookup without a deployment target
  • visionOS: Update deployment-target flag for Xcode 15.1 beta
  • Tests: Update RunCMake.XcodeProject-Device for visionOS in Xcode 15.1 beta
  • Tests: Enable visionOS tests with Xcode 15.2
  • Tests/CommandLength: Refactor test commands to reduce test run time
  • Help: Add 3.28.4 release note draft for visionOS updates
  • Tests: Update RunCMake.TargetObjects cmake_minimum_required version
  • Restore support for TARGET_OBJECTS in link interfaces with unity builds
  • Tests/RunCMake/CXXModules: Update VS circular error message
  • FindTIFF: Fix name of upstream TIFF cmake package
  • Tests: Update RunCMake.CompileFeatures for Xcode 15.3
  • Tests: Update RunCMake.CheckCompilerFlag for Xcode 15.3
  • gitlab-ci: update macOS jobs to use Xcode 15.3
  • Autogen: Restore target-ordering dependencies in Makefiles with DEPFILE
  • cmQtAutoGenInitializer: De-duplicate autogen/timestamp target depend logic
  • Ninja: Fix Fortran module deps in files INCLUDEd by preprocessed sources
  • CMake 3.28.4

Hermann von Kleist (1):

  • FindMatlab: Revert undocumented and now-unnecessary full version lookup

Martin Storsjö (1):

  • Ninja: Update showIncludes prefix detection for clang-cl 18

Robert Maynard (1):

  • FindCUDAToolkit: Fix cudart dependencies