Help: Consolidate 3.31 release notes
Run the `Utilities/Release/consolidate-relnotes.bash` script to move notes from `Help/release/dev/*` into `Help/release/3.31.rst`.
This commit is contained in:
parent
eed2b2d2cb
commit
fae66f4751
276
Help/release/3.31.rst
Normal file
276
Help/release/3.31.rst
Normal file
@ -0,0 +1,276 @@
|
||||
CMake 3.31 Release Notes
|
||||
************************
|
||||
|
||||
.. only:: html
|
||||
|
||||
.. contents::
|
||||
|
||||
Changes made since CMake 3.30 include the following.
|
||||
|
||||
* On AIX, shared libraries may now be created as shared library archives.
|
||||
See the :variable:`CMAKE_AIX_SHARED_LIBRARY_ARCHIVE` variable
|
||||
and :prop_tgt:`AIX_SHARED_LIBRARY_ARCHIVE` target property.
|
||||
|
||||
* The :prop_tgt:`MACOSX_FRAMEWORK_BUNDLE_NAME <MACOSX_FRAMEWORK_INFO_PLIST>`
|
||||
target property was added to set the ``CFBundleName`` key in an Apple
|
||||
:prop_tgt:`FRAMEWORK`'s ``Info.plist`` file.
|
||||
|
||||
* The :variable:`CMAKE_HOST_EXECUTABLE_SUFFIX` variable was added to
|
||||
provide suffix for executable names on the host platform.
|
||||
|
||||
* The :option:`cmake -LR[A][H]` option was added to list cache entries
|
||||
whose names match a regular expression.
|
||||
|
||||
* The :command:`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 :module:`FindPkgConfig` module.
|
||||
|
||||
* When executing a CMake workflow preset, the ``--preset`` option can now be
|
||||
omitted, allowing the simpler command line
|
||||
:option:`cmake --workflow \<preset\> <cmake--workflow --preset>`.
|
||||
|
||||
* The :ref:`Ninja Generators` and :ref:`Makefile Generators` now produce
|
||||
a ``codegen`` build target. See policy :policy:`CMP0171`. It drives a
|
||||
subset of the build graph sufficient to run custom commands created with
|
||||
:command:`add_custom_command`'s new ``CODEGEN`` option.
|
||||
|
||||
* The :command:`add_custom_command` command gained a ``CODEGEN`` option
|
||||
to mark a custom commands outputs as dependencies of a ``codegen`` target.
|
||||
|
||||
* The :cpack_gen:`CPack DEB Generator` gained a
|
||||
:variable:`CPACK_DEBIAN_PACKAGE_MULTIARCH` option
|
||||
to support multi-arch packages.
|
||||
|
||||
* The :cpack_gen:`CPack IFW Generator` gained the new
|
||||
:variable:`CPACK_IFW_PACKAGE_PRODUCT_IMAGE_URLS` variable to
|
||||
specify images associated with entries of
|
||||
:variable:`CPACK_IFW_PACKAGE_PRODUCT_IMAGES`.
|
||||
This feature is available for QtIFW 4.0 and newer.
|
||||
|
||||
* The :cpack_gen:`CPack RPM Generator` gained support for ``zstd`` as a
|
||||
:variable:`CPACK_RPM_COMPRESSION_TYPE` value.
|
||||
|
||||
* The :module:`CPack` module enables per-machine installation by default
|
||||
in the :cpack_gen:`CPack WIX Generator`. See policy :policy:`CMP0172`
|
||||
and the :variable:`CPACK_WIX_INSTALL_SCOPE` variable.
|
||||
|
||||
* The :variable:`CMAKE_<LANG>_HOST_COMPILER_ID` and
|
||||
:variable:`CMAKE_<LANG>_HOST_COMPILER_VERSION` variables were added,
|
||||
where ``<LANG>`` is either ``CUDA`` or ``HIP``. They are populated
|
||||
when :variable:`CMAKE_<LANG>_COMPILER_ID` is ``NVIDIA`` to identify
|
||||
NVCC's host compiler.
|
||||
|
||||
* The :module:`FindCUDAToolkit` module now provides a ``CUDA::nvml_static``
|
||||
target.
|
||||
|
||||
* The :command:`file(DOWNLOAD)` and :command:`file(UPLOAD)` commands now
|
||||
verify TLS server certificates for connections to ``https://`` URLs by
|
||||
default. See the :variable:`CMAKE_TLS_VERIFY` variable for details.
|
||||
This change was made without a policy so that users are protected
|
||||
even when building projects that have not been updated.
|
||||
Users may set the :envvar:`CMAKE_TLS_VERIFY` environment
|
||||
variable to ``0`` to restore the old default.
|
||||
|
||||
* The :command:`ctest_submit` command and :option:`ctest -T Submit <ctest -T>`
|
||||
step now verify TLS server certificates for connections to ``https://`` URLs
|
||||
by default. See the :variable:`CTEST_TLS_VERIFY` variable for details.
|
||||
|
||||
* The :command:`file(DOWNLOAD)` and :command:`file(UPLOAD)` commands now
|
||||
require TLS 1.2 or higher for connections to ``https://`` URLs by default.
|
||||
See the :variable:`CMAKE_TLS_VERSION` variable for details.
|
||||
|
||||
* The :command:`ctest_submit` command and :option:`ctest -T Submit <ctest -T>`
|
||||
step now require TLS 1.2 or higher for connections to ``https://`` URLs by
|
||||
default. See the :variable:`CTEST_TLS_VERSION` variable for details.
|
||||
|
||||
* The :module:`CMakeFindFrameworks` module has been deprecated via
|
||||
:policy:`CMP0173`. Projects should use :command:`find_library` instead.
|
||||
|
||||
* Compatibility with versions of CMake older than 3.10 is now deprecated
|
||||
and will be removed from a future version. Calls to
|
||||
:command:`cmake_minimum_required` or :command:`cmake_policy` that set
|
||||
the policy version to an older value now issue a deprecation diagnostic.
|
||||
|
||||
* The :command:`file(GET_RUNTIME_DEPENDENCIES)` command was updated
|
||||
to more closely match the dynamic loader's behavior on Linux.
|
||||
|
||||
* The :command:`execute_process` command's ``ENCODING`` option,
|
||||
meaningful on Windows, now defaults to ``UTF-8``.
|
||||
See policy :policy:`CMP0176`.
|
||||
|
||||
* The :command:`file(ARCHIVE_CREATE)` command gained a ``WORKING_DIRECTORY``
|
||||
option to specify a working directory for the archiving process.
|
||||
|
||||
* The :module:`FindOpenMP` module gained support for the ``CUDA`` language.
|
||||
|
||||
* The :command:`gtest_discover_tests` command gained a new
|
||||
``DISCOVERY_EXTRA_ARGS`` keyword. It allows extra arguments to be
|
||||
appended to the command line when querying for the list of tests.
|
||||
|
||||
* The :command:`install(FILES)` and :command:`install(DIRECTORY)` commands'
|
||||
``TYPE`` argument gained support for a ``LIBEXEC`` type.
|
||||
|
||||
* The :module:`CMakePackageConfigHelpers` module's
|
||||
:command:`generate_apple_platform_selection_file` function
|
||||
gained support iOS Mac Catalyst.
|
||||
|
||||
* The LFortran compiler is now supported with
|
||||
:variable:`compiler id <CMAKE_<LANG>_COMPILER_ID>` ``LFortran``.
|
||||
|
||||
* The :variable:`CMAKE_LINK_LIBRARIES_STRATEGY` variable and
|
||||
corresponding :prop_tgt:`LINK_LIBRARIES_STRATEGY` target
|
||||
property were added to optionally specify the strategy
|
||||
CMake uses to generate link lines.
|
||||
|
||||
* The :module:`CMakePushCheckState` module ``cmake_push_check_state``,
|
||||
``cmake_pop_check_state`` and ``cmake_reset_check_state`` macros
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckCCompilerFlag` module ``check_c_compiler_flag`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckCSourceCompiles` module ``check_c_source_compiles`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckCSourceRuns` module ``check_c_source_runs`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckCXXCompilerFlag` module ``check_cxx_compiler_flag`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckCXXSourceCompiles` module ``check_cxx_source_compiles`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckCXXSourceRuns` module ``check_cxx_source_runs`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckCXXSymbolExists` module ``check_cxx_symbol_exists`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckCompilerFlag` module ``check_compiler_flag`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckFortranCompilerFlag` module ``check_fortran_compiler_flag`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckFortranFunctionExists` module ``check_fortran_function_exists`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckFortranSourceCompiles` module ``check_fortran_source_compiles`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckFortranSourceRuns` module ``check_fortran_source_runs`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckFunctionExists` module ``check_function_exists`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckIncludeFile` module ``check_include_file`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckIncludeFileCXX` module ``check_include_file_cxx`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckIncludeFiles` module ``check_include_files`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckOBJCCompilerFlag` module ``check_objc_compiler_flag`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckLibraryExists` module ``check_library_exists`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckOBJCCompilerFlag` module ``check_objc_compiler_flag`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckOBJCSourceCompiles` module ``check_objc_source_compiles`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckOBJCSourceRuns` module ``check_objc_source_runs`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckOBJCXXCompilerFlag` module ``check_objcxx_compiler_flag`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckOBJCXXSourceCompiles` module ``check_objcxx_source_compiles`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckOBJCXXSourceRuns` module ``check_objcxx_source_runs`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckPrototypeDefinition` module ``check_prototype_definition`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckSourceCompiles` module ``check_source_compiles`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckSourceRuns` module ``check_source_runs`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckStructHasMember` module ``check_struct_has_member`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckSymbolExists` module ``check_symbol_exists`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckTypeSize` module ``check_type_size`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckVariableExists` module ``check_variable_exists`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* Targets with C++ modules may now export their module compile commands using
|
||||
the :prop_tgt:`EXPORT_BUILD_DATABASE` target property. This is initialized
|
||||
with the :variable:`CMAKE_EXPORT_BUILD_DATABASE` variable which is itself
|
||||
initialized using the :envvar:`CMAKE_EXPORT_BUILD_DATABASE` environment
|
||||
variable. Only supported with the :ref:`Ninja Generators`.
|
||||
|
||||
* All ``DESTINATION`` arguments in :command:`install` commands
|
||||
are now :ref:`normalized <Normalization>`, with the exception
|
||||
of ``INCLUDES DESTINATION`` arguments in the ``TARGETS`` form.
|
||||
|
||||
* Empty list elements in the :prop_tgt:`TEST_LAUNCHER` and
|
||||
:prop_tgt:`CROSSCOMPILING_EMULATOR` target properties are now preserved
|
||||
when the executable for a command given to :command:`add_test` is a CMake
|
||||
target. See policy :policy:`CMP0178`.
|
||||
|
||||
* Empty list elements in the :prop_tgt:`TEST_LAUNCHER` and
|
||||
:prop_tgt:`CROSSCOMPILING_EMULATOR` target properties are now preserved
|
||||
for the test created by :command:`ExternalData_Add_Test` from the
|
||||
:module:`ExternalData` module. See policy :policy:`CMP0178`.
|
||||
|
||||
* Empty list elements in the :prop_tgt:`TEST_LAUNCHER` and
|
||||
:prop_tgt:`CROSSCOMPILING_EMULATOR` target properties are now preserved
|
||||
for tests created by :command:`gtest_add_tests` and
|
||||
:command:`gtest_discover_tests` from the :module:`GoogleTest` module.
|
||||
Empty list elements after the ``EXTRA_ARGS`` keyword of these two commands
|
||||
are also now preserved. See policy :policy:`CMP0178`.
|
||||
|
||||
* Preset files may now include comments using the key ``$comment``
|
||||
at any level within the JSON object to provide documentation.
|
||||
|
||||
* Preset files may now request graphviz output using the ``graphviz`` key
|
||||
in a configure preset.
|
||||
|
||||
* The :command:`project` command now always sets
|
||||
:variable:`<PROJECT-NAME>_SOURCE_DIR`, :variable:`<PROJECT-NAME>_BINARY_DIR`,
|
||||
and :variable:`<PROJECT-NAME>_IS_TOP_LEVEL` as both normal variables and
|
||||
cache entries. See policy :policy:`CMP0180`.
|
||||
|
||||
* The :generator:`Visual Studio 12 2013` generator has been removed.
|
||||
|
||||
* The :variable:`CMAKE_<LANG>_STANDARD_LINK_DIRECTORIES` variable was added.
|
||||
Toolchain files can set this variable to control which link library directory
|
||||
paths are always passed to the compiler for the specified language.
|
||||
|
||||
* When static libraries on link lines are de-duplicated (by policy
|
||||
:policy:`CMP0156`), the first occurrence is now kept on all platforms.
|
||||
See policy :policy:`CMP0179`.
|
||||
|
||||
* The :prop_tgt:`UNITY_BUILD` target property now supports the
|
||||
CUDA (``CUDA``) language.
|
||||
|
||||
* The :prop_tgt:`VS_FRAMEWORK_REFERENCES` target property was added
|
||||
to tell :ref:`Visual Studio Generators` to add framework references.
|
@ -1,4 +0,0 @@
|
||||
FindOpenMP-CUDA
|
||||
---------------
|
||||
|
||||
* The :module:`FindOpenMP` module gained support for the ``CUDA`` language.
|
@ -1,6 +0,0 @@
|
||||
GoogleTest-DISCOVERY_EXTRA_ARGS
|
||||
-------------------------------
|
||||
|
||||
* The :command:`gtest_discover_tests` command gained a new
|
||||
``DISCOVERY_EXTRA_ARGS`` keyword. It allows extra arguments to be
|
||||
appended to the command line when querying for the list of tests.
|
@ -1,6 +0,0 @@
|
||||
aix-archive-shared-libraries
|
||||
----------------------------
|
||||
|
||||
* On AIX, shared libraries may now be created as shared library archives.
|
||||
See the :variable:`CMAKE_AIX_SHARED_LIBRARY_ARCHIVE` variable
|
||||
and :prop_tgt:`AIX_SHARED_LIBRARY_ARCHIVE` target property.
|
@ -1,6 +0,0 @@
|
||||
apple-framework-bundle-name
|
||||
---------------------------
|
||||
|
||||
* The :prop_tgt:`MACOSX_FRAMEWORK_BUNDLE_NAME <MACOSX_FRAMEWORK_INFO_PLIST>`
|
||||
target property was added to set the ``CFBundleName`` key in an Apple
|
||||
:prop_tgt:`FRAMEWORK`'s ``Info.plist`` file.
|
@ -1,6 +0,0 @@
|
||||
cmake--workflow-preset
|
||||
----------------------
|
||||
|
||||
* When executing a CMake workflow preset, the ``--preset`` option can now be
|
||||
omitted, allowing the simpler command line
|
||||
:option:`cmake --workflow \<preset\> <cmake--workflow --preset>`.
|
@ -1,5 +0,0 @@
|
||||
cmake-list-cached-variables
|
||||
---------------------------
|
||||
|
||||
* The :option:`cmake -LR[A][H]` option was added to list cache entries
|
||||
whose names match a regular expression.
|
@ -1,8 +0,0 @@
|
||||
cmake-pkg-config
|
||||
----------------
|
||||
|
||||
* The :command:`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 :module:`FindPkgConfig` module.
|
@ -1,5 +0,0 @@
|
||||
cmake-host-executable-suffix
|
||||
----------------------------
|
||||
|
||||
* The :variable:`CMAKE_HOST_EXECUTABLE_SUFFIX` variable was added to
|
||||
provide suffix for executable names on the host platform.
|
@ -1,10 +0,0 @@
|
||||
codegen
|
||||
-------
|
||||
|
||||
* The :ref:`Ninja Generators` and :ref:`Makefile Generators` now produce
|
||||
a ``codegen`` build target. See policy :policy:`CMP0171`. It drives a
|
||||
subset of the build graph sufficient to run custom commands created with
|
||||
:command:`add_custom_command`'s new ``CODEGEN`` option.
|
||||
|
||||
* The :command:`add_custom_command` command gained a ``CODEGEN`` option
|
||||
to mark a custom commands outputs as dependencies of a ``codegen`` target.
|
@ -1,6 +0,0 @@
|
||||
cpack-debian-multiarch
|
||||
----------------------
|
||||
|
||||
* The :cpack_gen:`CPack DEB Generator` gained a
|
||||
:variable:`CPACK_DEBIAN_PACKAGE_MULTIARCH` option
|
||||
to support multi-arch packages.
|
@ -1,8 +0,0 @@
|
||||
cpack-ifw-product-images
|
||||
------------------------
|
||||
|
||||
* The :cpack_gen:`CPack IFW Generator` gained the new
|
||||
:variable:`CPACK_IFW_PACKAGE_PRODUCT_IMAGE_URLS` variable to
|
||||
specify images associated with entries of
|
||||
:variable:`CPACK_IFW_PACKAGE_PRODUCT_IMAGES`.
|
||||
This feature is available for QtIFW 4.0 and newer.
|
@ -1,5 +0,0 @@
|
||||
cpack-rpm-zstd
|
||||
--------------
|
||||
|
||||
* The :cpack_gen:`CPack RPM Generator` gained support for ``zstd`` as a
|
||||
:variable:`CPACK_RPM_COMPRESSION_TYPE` value.
|
@ -1,6 +0,0 @@
|
||||
cpack-wix-per-machine
|
||||
---------------------
|
||||
|
||||
* The :module:`CPack` module enables per-machine installation by default
|
||||
in the :cpack_gen:`CPack WIX Generator`. See policy :policy:`CMP0172`
|
||||
and the :variable:`CPACK_WIX_INSTALL_SCOPE` variable.
|
@ -1,8 +0,0 @@
|
||||
cuda-host-compiler-id
|
||||
---------------------
|
||||
|
||||
* The :variable:`CMAKE_<LANG>_HOST_COMPILER_ID` and
|
||||
:variable:`CMAKE_<LANG>_HOST_COMPILER_VERSION` variables were added,
|
||||
where ``<LANG>`` is either ``CUDA`` or ``HIP``. They are populated
|
||||
when :variable:`CMAKE_<LANG>_COMPILER_ID` is ``NVIDIA`` to identify
|
||||
NVCC's host compiler.
|
@ -1,5 +0,0 @@
|
||||
cuda-static-nvml
|
||||
----------------
|
||||
|
||||
* The :module:`FindCUDAToolkit` module now provides a ``CUDA::nvml_static``
|
||||
target.
|
@ -1,14 +0,0 @@
|
||||
curl-tls-verify
|
||||
---------------
|
||||
|
||||
* The :command:`file(DOWNLOAD)` and :command:`file(UPLOAD)` commands now
|
||||
verify TLS server certificates for connections to ``https://`` URLs by
|
||||
default. See the :variable:`CMAKE_TLS_VERIFY` variable for details.
|
||||
This change was made without a policy so that users are protected
|
||||
even when building projects that have not been updated.
|
||||
Users may set the :envvar:`CMAKE_TLS_VERIFY` environment
|
||||
variable to ``0`` to restore the old default.
|
||||
|
||||
* The :command:`ctest_submit` command and :option:`ctest -T Submit <ctest -T>`
|
||||
step now verify TLS server certificates for connections to ``https://`` URLs
|
||||
by default. See the :variable:`CTEST_TLS_VERIFY` variable for details.
|
@ -1,10 +0,0 @@
|
||||
curl-tls-version
|
||||
----------------
|
||||
|
||||
* The :command:`file(DOWNLOAD)` and :command:`file(UPLOAD)` commands now
|
||||
require TLS 1.2 or higher for connections to ``https://`` URLs by default.
|
||||
See the :variable:`CMAKE_TLS_VERSION` variable for details.
|
||||
|
||||
* The :command:`ctest_submit` command and :option:`ctest -T Submit <ctest -T>`
|
||||
step now require TLS 1.2 or higher for connections to ``https://`` URLs by
|
||||
default. See the :variable:`CTEST_TLS_VERSION` variable for details.
|
@ -1,5 +0,0 @@
|
||||
deprecate-CMakeFindFrameworks
|
||||
-----------------------------
|
||||
|
||||
* The :module:`CMakeFindFrameworks` module has been deprecated via
|
||||
:policy:`CMP0173`. Projects should use :command:`find_library` instead.
|
@ -1,7 +0,0 @@
|
||||
deprecate-pre-3.10
|
||||
------------------
|
||||
|
||||
* Compatibility with versions of CMake older than 3.10 is now deprecated
|
||||
and will be removed from a future version. Calls to
|
||||
:command:`cmake_minimum_required` or :command:`cmake_policy` that set
|
||||
the policy version to an older value now issue a deprecation diagnostic.
|
@ -1,5 +0,0 @@
|
||||
elf-lib-deps-resolve
|
||||
--------------------
|
||||
|
||||
* The :command:`file(GET_RUNTIME_DEPENDENCIES)` command was updated
|
||||
to more closely match the dynamic loader's behavior on Linux.
|
@ -1,6 +0,0 @@
|
||||
execute_process-encoding
|
||||
------------------------
|
||||
|
||||
* The :command:`execute_process` command's ``ENCODING`` option,
|
||||
meaningful on Windows, now defaults to ``UTF-8``.
|
||||
See policy :policy:`CMP0176`.
|
@ -1,5 +0,0 @@
|
||||
file-archive-workdir
|
||||
--------------------
|
||||
|
||||
* The :command:`file(ARCHIVE_CREATE)` command gained a ``WORKING_DIRECTORY``
|
||||
option to specify a working directory for the archiving process.
|
@ -1,5 +0,0 @@
|
||||
install-type-libexec
|
||||
--------------------
|
||||
|
||||
* The :command:`install(FILES)` and :command:`install(DIRECTORY)` commands'
|
||||
``TYPE`` argument gained support for a ``LIBEXEC`` type.
|
@ -1,6 +0,0 @@
|
||||
ios-mac-catalyst
|
||||
----------------
|
||||
|
||||
* The :module:`CMakePackageConfigHelpers` module's
|
||||
:command:`generate_apple_platform_selection_file` function
|
||||
gained support iOS Mac Catalyst.
|
@ -1,5 +0,0 @@
|
||||
lfortran
|
||||
--------
|
||||
|
||||
* The LFortran compiler is now supported with
|
||||
:variable:`compiler id <CMAKE_<LANG>_COMPILER_ID>` ``LFortran``.
|
@ -1,7 +0,0 @@
|
||||
link-strategy
|
||||
-------------
|
||||
|
||||
* The :variable:`CMAKE_LINK_LIBRARIES_STRATEGY` variable and
|
||||
corresponding :prop_tgt:`LINK_LIBRARIES_STRATEGY` target
|
||||
property were added to optionally specify the strategy
|
||||
CMake uses to generate link lines.
|
@ -1,99 +0,0 @@
|
||||
macro-required-link-directories
|
||||
-------------------------------
|
||||
|
||||
* The :module:`CMakePushCheckState` module ``cmake_push_check_state``,
|
||||
``cmake_pop_check_state`` and ``cmake_reset_check_state`` macros
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckCCompilerFlag` module ``check_c_compiler_flag`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckCSourceCompiles` module ``check_c_source_compiles`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckCSourceRuns` module ``check_c_source_runs`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckCXXCompilerFlag` module ``check_cxx_compiler_flag`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckCXXSourceCompiles` module ``check_cxx_source_compiles`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckCXXSourceRuns` module ``check_cxx_source_runs`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckCXXSymbolExists` module ``check_cxx_symbol_exists`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckCompilerFlag` module ``check_compiler_flag`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckFortranCompilerFlag` module ``check_fortran_compiler_flag`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckFortranFunctionExists` module ``check_fortran_function_exists`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckFortranSourceCompiles` module ``check_fortran_source_compiles`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckFortranSourceRuns` module ``check_fortran_source_runs`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckFunctionExists` module ``check_function_exists`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckIncludeFile` module ``check_include_file`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckIncludeFileCXX` module ``check_include_file_cxx`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckIncludeFiles` module ``check_include_files`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckOBJCCompilerFlag` module ``check_objc_compiler_flag`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckLibraryExists` module ``check_library_exists`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckOBJCCompilerFlag` module ``check_objc_compiler_flag`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckOBJCSourceCompiles` module ``check_objc_source_compiles`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckOBJCSourceRuns` module ``check_objc_source_runs`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckOBJCXXCompilerFlag` module ``check_objcxx_compiler_flag`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckOBJCXXSourceCompiles` module ``check_objcxx_source_compiles`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckOBJCXXSourceRuns` module ``check_objcxx_source_runs`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckPrototypeDefinition` module ``check_prototype_definition`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckSourceCompiles` module ``check_source_compiles`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckSourceRuns` module ``check_source_runs`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckStructHasMember` module ``check_struct_has_member`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckSymbolExists` module ``check_symbol_exists`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckTypeSize` module ``check_type_size`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
||||
|
||||
* The :module:`CheckVariableExists` module ``check_variable_exists`` macro
|
||||
learned to honor the ``CMAKE_REQUIRED_LINK_DIRECTORIES`` variable.
|
@ -1,8 +0,0 @@
|
||||
module-cdb
|
||||
==========
|
||||
|
||||
* Targets with C++ modules may now export their module compile commands using
|
||||
the :prop_tgt:`EXPORT_BUILD_DATABASE` target property. This is initialized
|
||||
with the :variable:`CMAKE_EXPORT_BUILD_DATABASE` variable which is itself
|
||||
initialized using the :envvar:`CMAKE_EXPORT_BUILD_DATABASE` environment
|
||||
variable. Only supported with the :ref:`Ninja Generators`.
|
@ -1,6 +0,0 @@
|
||||
normalize-install-destination-paths
|
||||
-----------------------------------
|
||||
|
||||
* All ``DESTINATION`` arguments in :command:`install` commands
|
||||
are now :ref:`normalized <Normalization>`, with the exception
|
||||
of ``INCLUDES DESTINATION`` arguments in the ``TARGETS`` form.
|
@ -1,19 +0,0 @@
|
||||
preserve-empty-args-test-command-lines
|
||||
--------------------------------------
|
||||
|
||||
* Empty list elements in the :prop_tgt:`TEST_LAUNCHER` and
|
||||
:prop_tgt:`CROSSCOMPILING_EMULATOR` target properties are now preserved
|
||||
when the executable for a command given to :command:`add_test` is a CMake
|
||||
target. See policy :policy:`CMP0178`.
|
||||
|
||||
* Empty list elements in the :prop_tgt:`TEST_LAUNCHER` and
|
||||
:prop_tgt:`CROSSCOMPILING_EMULATOR` target properties are now preserved
|
||||
for the test created by :command:`ExternalData_Add_Test` from the
|
||||
:module:`ExternalData` module. See policy :policy:`CMP0178`.
|
||||
|
||||
* Empty list elements in the :prop_tgt:`TEST_LAUNCHER` and
|
||||
:prop_tgt:`CROSSCOMPILING_EMULATOR` target properties are now preserved
|
||||
for tests created by :command:`gtest_add_tests` and
|
||||
:command:`gtest_discover_tests` from the :module:`GoogleTest` module.
|
||||
Empty list elements after the ``EXTRA_ARGS`` keyword of these two commands
|
||||
are also now preserved. See policy :policy:`CMP0178`.
|
@ -1,5 +0,0 @@
|
||||
preset-comments
|
||||
---------------
|
||||
|
||||
* Preset files may now include comments using the key ``$comment``
|
||||
at any level within the JSON object to provide documentation.
|
@ -1,5 +0,0 @@
|
||||
presets-graphviz
|
||||
----------------
|
||||
|
||||
* Preset files may now request graphviz output using the ``graphviz`` key
|
||||
in a configure preset.
|
@ -1,7 +0,0 @@
|
||||
project-vars-policy
|
||||
-------------------
|
||||
|
||||
* The :command:`project` command now always sets
|
||||
:variable:`<PROJECT-NAME>_SOURCE_DIR`, :variable:`<PROJECT-NAME>_BINARY_DIR`,
|
||||
and :variable:`<PROJECT-NAME>_IS_TOP_LEVEL` as both normal variables and
|
||||
cache entries. See policy :policy:`CMP0180`.
|
@ -1,4 +0,0 @@
|
||||
remove-vs12-generator
|
||||
---------------------
|
||||
|
||||
* The :generator:`Visual Studio 12 2013` generator has been removed.
|
@ -1,6 +0,0 @@
|
||||
standard-link-directories
|
||||
-------------------------
|
||||
|
||||
* The :variable:`CMAKE_<LANG>_STANDARD_LINK_DIRECTORIES` variable was added.
|
||||
Toolchain files can set this variable to control which link library directory
|
||||
paths are always passed to the compiler for the specified language.
|
@ -1,6 +0,0 @@
|
||||
static-libraries-deduplication
|
||||
------------------------------
|
||||
|
||||
* When static libraries on link lines are de-duplicated (by policy
|
||||
:policy:`CMP0156`), the first occurrence is now kept on all platforms.
|
||||
See policy :policy:`CMP0179`.
|
@ -1,5 +0,0 @@
|
||||
unity-build-supports-cuda
|
||||
-------------------------
|
||||
|
||||
* The :prop_tgt:`UNITY_BUILD` target property now supports the
|
||||
CUDA (``CUDA``) language.
|
@ -1,5 +0,0 @@
|
||||
vs-framework-references
|
||||
-----------------------
|
||||
|
||||
* The :prop_tgt:`VS_FRAMEWORK_REFERENCES` target property was added
|
||||
to tell :ref:`Visual Studio Generators` to add framework references.
|
@ -15,6 +15,7 @@ Releases
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
3.31 <3.31>
|
||||
3.30 <3.30>
|
||||
3.29 <3.29>
|
||||
3.28 <3.28>
|
||||
|
Loading…
Reference in New Issue
Block a user