ePrivacy and GPDR Cookie Consent by Cookie Consent
CMake software

CMake - releases history

Top Download Club  |  Development  |  Compilers & Interpreters  |  CMake
Version Change log
CMake 4.0.1 Apr 11, 2025 New Features:
File-Based API:
The cmake-file-api(7) "codemodel" version 2 version field has been updated to 2.8.
The cmake-file-api(7) "codemodel" version 2 "target" object gained a new debugger field.
Command-Line:
The cmake --link-no-warning-as-error option was added to suppress the effects of the LINK_WARNING_AS_ERROR target property and CMAKE_LINK_WARNING_AS_ERROR variable.
The cmake --project-file option was added to specify an alternate filename for CMakeLists.txt files. This is intended for temporary use by developers during an incremental transition and not for publication of a final product. CMake will always emit a warning when the project file is anything other than CMakeLists.txt.
Commands:
The target_link_libraries() command now supports the LINKER: prefix.
Variables:
The AIX and CMAKE_HOST_AIX variables are now set to true when the target or host system is AIX, respectively.
Linker flag variables learned to support the LINKER: prefix:
CMAKE_EXE_LINKER_FLAGS
CMAKE_EXE_LINKER_FLAGS_<CONFIG>
CMAKE_SHARED_LINKER_FLAGS
CMAKE_SHARED_LINKER_FLAGS_<CONFIG>
CMAKE_MODULE_LINKER_FLAGS
CMAKE_MODULE_LINKER_FLAGS_<CONFIG>
See policy CMP0181.
The CMAKE_EXECUTE_PROCESS_COMMAND_ERROR_IS_FATAL variable was added to specify the execute_process() command's default COMMAND_ERROR_IS_FATAL behavior.
The CMAKE_<LANG>_LINK_MODE and CMAKE_<LANG>_DEVICE_LINK_MODE variables were added to provide information on how the link step is done.
The CMAKE_LINK_WARNING_AS_ERROR variable and corresponding LINK_WARNING_AS_ERROR target property were added to link using a linker-specific flag to treat warnings as errors.
The CMAKE_MSVC_RUNTIME_CHECKS variable and MSVC_RUNTIME_CHECKS target property were introduced to select runtime checks for compilers targeting the MSVC ABI. See policy CMP0184.
The CMAKE_POLICY_VERSION_MINIMUM variable was added to help packagers and end users try to configure existing projects that have not been upd
CMake 4.0.0 Mar 29, 2025 New Features:
File-Based API:
The cmake-file-api(7) "codemodel" version 2 version field has been updated to 2.8.
The cmake-file-api(7) "codemodel" version 2 "target" object gained a new debugger field.
Command-Line:
The cmake --link-no-warning-as-error option was added to suppress the effects of the LINK_WARNING_AS_ERROR target property and CMAKE_LINK_WARNING_AS_ERROR variable.
The cmake --project-file option was added to specify an alternate filename for CMakeLists.txt files. This is intended for temporary use by developers during an incremental transition and not for publication of a final product. CMake will always emit a warning when the project file is anything other than CMakeLists.txt.
Commands:
The target_link_libraries() command now supports the LINKER: prefix.
Variables:
The AIX and CMAKE_HOST_AIX variables are now set to true when the target or host system is AIX, respectively.
Linker flag variables learned to support the LINKER: prefix:
CMAKE_EXE_LINKER_FLAGS
CMAKE_EXE_LINKER_FLAGS_<CONFIG>
CMAKE_SHARED_LINKER_FLAGS
CMAKE_SHARED_LINKER_FLAGS_<CONFIG>
CMAKE_MODULE_LINKER_FLAGS
CMAKE_MODULE_LINKER_FLAGS_<CONFIG>
See policy CMP0181.
The CMAKE_EXECUTE_PROCESS_COMMAND_ERROR_IS_FATAL variable was added to specify the execute_process() command's default COMMAND_ERROR_IS_FATAL behavior.
The CMAKE_<LANG>_LINK_MODE and CMAKE_<LANG>_DEVICE_LINK_MODE variables were added to provide information on how the link step is done.
The CMAKE_LINK_WARNING_AS_ERROR variable and corresponding LINK_WARNING_AS_ERROR target property were added to link using a linker-specific flag to treat warnings as errors.
The CMAKE_MSVC_RUNTIME_CHECKS variable and MSVC_RUNTIME_CHECKS target property were introduced to select runtime checks for compilers targeting the MSVC ABI. See policy CMP0184.
The CMAKE_POLICY_VERSION_MINIMUM variable was added to help packagers and end users try to configure existing projects that have not been upd
CMake 3.31.6 Mar 1, 2025 Some implementation updates were made to support ecosystem changes and/or fix regressions.
CMake 3.31.5 Feb 6, 2025 Brad King (5):
Clang/CUDA: Fix language-wide flags when linking .so with compiler driver
Tests: Update expected results for ninja post-1.12 development
FindMatlab: Fix multi-signature function documentation anchors
WINDOWS_EXPORT_ALL_SYMBOLS: Fix vftable symbol export on ARM64EC
CMake 3.31.5
Felipe Torrezan (1):
IAR: decouple linker location from toolkit's bin dir
Martin Duffy (1):
install: Generate InstallScripts.json in consistent location
CMake 3.31.4 Jan 11, 2025 VS: Factor out check for mixed C and C++ target
VS: Restore support for mixing C++23 and C in one target with clang-cl
cmLocalUnixMakefileGenerator3: Simplify progress command generation
Makefile: Fix per-directory codegen target
Makefile: Enable progress messages for codegen target
cmGlobalNinjaGenerator: Remove unused local variable
cmGlobalNinjaGenerator: Remove unnecessary local variable
cmGlobalNinjaGenerator: Fix local variable name for codegen target
cmGlobalNinjaGenerator: Clarify order of codegen build statement logic
cmGlobalNinjaGenerator: Simplify per-directory configuration list lookup
Ninja: Add missing top-level codegen dependencies on per-directory codegen
Tests/RunCMake/CXXModules: Rename FileSetModules cases to be more specific
target_sources: Improve error message for CXX_MODULES on INTERFACE libraries
Help: Update link to UTF-8 RFC 3629
ci: update macOS jobs to use Xcode 16.2
CMake 3.31.3
install: Restore treatment of DESTINATION as a single-valued keyword
CMake 3.31.3 Dec 25, 2024 VS: Factor out check for mixed C and C++ target
VS: Restore support for mixing C++23 and C in one target with clang-cl
cmLocalUnixMakefileGenerator3: Simplify progress command generation
Makefile: Fix per-directory codegen target
Makefile: Enable progress messages for codegen target
cmGlobalNinjaGenerator: Remove unused local variable
cmGlobalNinjaGenerator: Remove unnecessary local variable
cmGlobalNinjaGenerator: Fix local variable name for codegen target
cmGlobalNinjaGenerator: Clarify order of codegen build statement logic
cmGlobalNinjaGenerator: Simplify per-directory configuration list lookup
Ninja: Add missing top-level codegen dependencies on per-directory codegen
Tests/RunCMake/CXXModules: Rename FileSetModules cases to be more specific
target_sources: Improve error message for CXX_MODULES on INTERFACE libraries
Help: Update link to UTF-8 RFC 3629
ci: update macOS jobs to use Xcode 16.2
CMake 3.31.3
install: Restore treatment of DESTINATION as a single-valued keyword
CMake 3.31.2 Dec 6, 2024 AIX: Disallow TARGET_SONAME_* genex for AIX_SHARED_LIBRARY_ARCHIVE targets
AIX: Propagate AIX_SHARED_LIBRARY_ARCHIVE through exports
GNU linker: Use single-argument form of --dependency-file flag
fileapi: Do not expose flags for linker-generated dependencies
LINK_OPTIONS: Fix crash on empty LINKER: prefix
ci: Update to ROCm 6 HIP on Fedora 41
CMake 3.31.2
Tutorial: Restore TODO 4 comment in step 7
Intel/Classic: deactivate linker dependency file support
FindPython: Ensure SABIModule is found in all cases
Autogen: Restore <target_name>_autogen_timestamp_deps target
Autogen: Fix Ninja Multi-Config dependency graph regression
Autogen: Revert adding ui files to byproducts of the timestamp target
FindRuby: Add support for 3.4
CMake 3.31.1 Nov 25, 2024 Help: Add missing one-line summary to policy CMP0132
FindBoost: Add support for Boost 1.86
ci: Rebuild Fedora 41 image with updates Clarify advice given by compatibility deprecation message for CMake < 3.10
Help: Clarify instructions for using older VS toolsets with newer VS versions
ci: Update Windows builds to MSVC 14.42 toolset
ci: update macOS jobs to use Xcode 16.1
libarchive: Update script to get 3.7.7
execute_process: Restore CLOEXEC on OUTPUT_FILE and ERROR_FILE descriptors
CMake 3.31.1
GoogleTest: Clear script content buffer on flush and flush less often
GoogleTest: Avoid extra call to set DISABLED test property in discovery
CMP0175: Do not reject USES_TERMINAL for add_custom_command(TARGET)
Linker configuration: Add missing platforms
LLD linker: avoid regression on archive libraries deduplication
cmExperimental: Make CPS-export experimental notice more consistent
FindSQLite3: Guard calls to pkg_check_modules
Help: Guard calls to pkg_check_modules in cmake-developer(7) example
FindImageMagick: Fix ARCH_INCLUDE_DIR detection for version 7 and newer
Linux: Recognize multiarch directories for musl-linux-any
CMake 3.31.0 Nov 9, 2024 New Features:
Presets:
“cmake-presets(7)” files may now include comments using the key $comment” at any level within the JSON object to provide documentation.
“cmake-presets(7)” files may now request graphviz output using the “graphviz” key in a configure preset.
Generators:
The Ninja Generators and Makefile Generators now produce a “codegen”
build target. See policy “CMP0171”. It drives a subset of the
build graph sufficient to run custom commands created with "add_custom_command()”'s new “CODEGEN” option.
Command-Line:
The “cmake --workflow” mode now accepts a preset name as the first argument, allowing the simpler command line “cmake --workflow <preset>”.
The “cmake -LR[A][H]” option was added to list cache entries whose names match a regular expression.
Compilers:
The LFortran compiler is now supported with “compiler id” “LFortran”.
Commands:
The “add_custom_command()” command gained a “CODEGEN” option to mark a custom command’s outputs as dependencies of a “codegen” target. See policy “CMP0171”.
The “cmake_pkg_config()” command was added as an endpoint for using CMake’s native pkg-config format parser. The only supported option in this release is “EXTRACT”, which provides low-level access to the values produced by parsing a pkg-config file. For most users, this is not yet a suitable replacement for the “FindPkgConfig” module.
The “file(ARCHIVE_CREATE)” command gained a “WORKING_DIRECTORY” option to specify a working directory for the archiving process.
The “file(MAKE_DIRECTORY)” command gained a “RESULT” option to capture failure in a result variable.
The “install(FILES)” and “install(DIRECTORY)” commands’ “TYPE” argument gained support for a “LIBEXEC” type.
Variables:
The “CMAKE_AIX_SHARED_LIBRARY_ARCHIVE” variable and corresponding “AIX_SHARED_LIBRARY_ARCHIVE” target property were added to create shared libraries on AIX as sh
CMake 3.30.5 Oct 9, 2024 Only check non-cache vars when setting project vars
NEWSLETTER
© 2025 TopDownload.Club  |  All rights reserved.
created by FAUST