diff options
author | Brad King <brad.king@kitware.com> | 2024-10-09 13:23:02 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2024-10-09 13:32:02 (GMT) |
commit | fae66f4751128be8c65752730b9661a8bf22df3f (patch) | |
tree | 533965e9110ed5aeebd27ea16d44067a2303e497 /Help | |
parent | eed2b2d2cb41f65b0ca0b46c76dc922593a20201 (diff) | |
download | CMake-fae66f4751128be8c65752730b9661a8bf22df3f.zip CMake-fae66f4751128be8c65752730b9661a8bf22df3f.tar.gz CMake-fae66f4751128be8c65752730b9661a8bf22df3f.tar.bz2 |
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`.
Diffstat (limited to 'Help')
40 files changed, 277 insertions, 344 deletions
diff --git a/Help/release/3.31.rst b/Help/release/3.31.rst new file mode 100644 index 0000000..7c516fc --- /dev/null +++ b/Help/release/3.31.rst @@ -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. diff --git a/Help/release/dev/FindOpenMP-CUDA.rst b/Help/release/dev/FindOpenMP-CUDA.rst deleted file mode 100644 index 9c21d53..0000000 --- a/Help/release/dev/FindOpenMP-CUDA.rst +++ /dev/null @@ -1,4 +0,0 @@ -FindOpenMP-CUDA ---------------- - -* The :module:`FindOpenMP` module gained support for the ``CUDA`` language. diff --git a/Help/release/dev/GoogleTest-DISCOVERY_EXTRA_ARGS.rst b/Help/release/dev/GoogleTest-DISCOVERY_EXTRA_ARGS.rst deleted file mode 100644 index c625694..0000000 --- a/Help/release/dev/GoogleTest-DISCOVERY_EXTRA_ARGS.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/aix-archive-shared-libraries.rst b/Help/release/dev/aix-archive-shared-libraries.rst deleted file mode 100644 index 467c367..0000000 --- a/Help/release/dev/aix-archive-shared-libraries.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/apple-framework-bundle-name.rst b/Help/release/dev/apple-framework-bundle-name.rst deleted file mode 100644 index 541845b..0000000 --- a/Help/release/dev/apple-framework-bundle-name.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/cmake--workflow-preset.rst b/Help/release/dev/cmake--workflow-preset.rst deleted file mode 100644 index 2e07eb9..0000000 --- a/Help/release/dev/cmake--workflow-preset.rst +++ /dev/null @@ -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>`. diff --git a/Help/release/dev/cmake-list-cached-variables.rst b/Help/release/dev/cmake-list-cached-variables.rst deleted file mode 100644 index 983925d..0000000 --- a/Help/release/dev/cmake-list-cached-variables.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/cmake-pkg-config.rst b/Help/release/dev/cmake-pkg-config.rst deleted file mode 100644 index 411aed2..0000000 --- a/Help/release/dev/cmake-pkg-config.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/cmake_host_executable_suffix.rst b/Help/release/dev/cmake_host_executable_suffix.rst deleted file mode 100644 index 3a8b945..0000000 --- a/Help/release/dev/cmake_host_executable_suffix.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/codegen.rst b/Help/release/dev/codegen.rst deleted file mode 100644 index e8b61c9..0000000 --- a/Help/release/dev/codegen.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/cpack-debian-multiarch.rst b/Help/release/dev/cpack-debian-multiarch.rst deleted file mode 100644 index f593103..0000000 --- a/Help/release/dev/cpack-debian-multiarch.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/cpack-ifw-product-images.rst b/Help/release/dev/cpack-ifw-product-images.rst deleted file mode 100644 index c598124..0000000 --- a/Help/release/dev/cpack-ifw-product-images.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/cpack-rpm-zstd.rst b/Help/release/dev/cpack-rpm-zstd.rst deleted file mode 100644 index 828d5f6..0000000 --- a/Help/release/dev/cpack-rpm-zstd.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/cpack-wix-per-machine.rst b/Help/release/dev/cpack-wix-per-machine.rst deleted file mode 100644 index b62cf63..0000000 --- a/Help/release/dev/cpack-wix-per-machine.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/cuda-host-compiler-id.rst b/Help/release/dev/cuda-host-compiler-id.rst deleted file mode 100644 index ab68861..0000000 --- a/Help/release/dev/cuda-host-compiler-id.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/cuda-static-nvml.rst b/Help/release/dev/cuda-static-nvml.rst deleted file mode 100644 index e44b078..0000000 --- a/Help/release/dev/cuda-static-nvml.rst +++ /dev/null @@ -1,5 +0,0 @@ -cuda-static-nvml ----------------- - -* The :module:`FindCUDAToolkit` module now provides a ``CUDA::nvml_static`` - target. diff --git a/Help/release/dev/curl-tls-verify.rst b/Help/release/dev/curl-tls-verify.rst deleted file mode 100644 index 96ee421..0000000 --- a/Help/release/dev/curl-tls-verify.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/curl-tls-version.rst b/Help/release/dev/curl-tls-version.rst deleted file mode 100644 index ea142b3..0000000 --- a/Help/release/dev/curl-tls-version.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/deprecate-CMakeFindFrameworks.rst b/Help/release/dev/deprecate-CMakeFindFrameworks.rst deleted file mode 100644 index 785962f..0000000 --- a/Help/release/dev/deprecate-CMakeFindFrameworks.rst +++ /dev/null @@ -1,5 +0,0 @@ -deprecate-CMakeFindFrameworks ------------------------------ - -* The :module:`CMakeFindFrameworks` module has been deprecated via - :policy:`CMP0173`. Projects should use :command:`find_library` instead. diff --git a/Help/release/dev/deprecate-pre-3.10.rst b/Help/release/dev/deprecate-pre-3.10.rst deleted file mode 100644 index 7689039..0000000 --- a/Help/release/dev/deprecate-pre-3.10.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/elf-lib-deps-resolve.rst b/Help/release/dev/elf-lib-deps-resolve.rst deleted file mode 100644 index f7866eb..0000000 --- a/Help/release/dev/elf-lib-deps-resolve.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/execute_process-encoding.rst b/Help/release/dev/execute_process-encoding.rst deleted file mode 100644 index f6999e3..0000000 --- a/Help/release/dev/execute_process-encoding.rst +++ /dev/null @@ -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`. diff --git a/Help/release/dev/file-archive-workdir.rst b/Help/release/dev/file-archive-workdir.rst deleted file mode 100644 index baf4a22..0000000 --- a/Help/release/dev/file-archive-workdir.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/install-type-libexec.rst b/Help/release/dev/install-type-libexec.rst deleted file mode 100644 index d77a36b..0000000 --- a/Help/release/dev/install-type-libexec.rst +++ /dev/null @@ -1,5 +0,0 @@ -install-type-libexec --------------------- - -* The :command:`install(FILES)` and :command:`install(DIRECTORY)` commands' - ``TYPE`` argument gained support for a ``LIBEXEC`` type. diff --git a/Help/release/dev/ios-mac-catalyst.rst b/Help/release/dev/ios-mac-catalyst.rst deleted file mode 100644 index 93a3768..0000000 --- a/Help/release/dev/ios-mac-catalyst.rst +++ /dev/null @@ -1,6 +0,0 @@ -ios-mac-catalyst ----------------- - -* The :module:`CMakePackageConfigHelpers` module's - :command:`generate_apple_platform_selection_file` function - gained support iOS Mac Catalyst. diff --git a/Help/release/dev/lfortran.rst b/Help/release/dev/lfortran.rst deleted file mode 100644 index e63835e..0000000 --- a/Help/release/dev/lfortran.rst +++ /dev/null @@ -1,5 +0,0 @@ -lfortran --------- - -* The LFortran compiler is now supported with - :variable:`compiler id <CMAKE_<LANG>_COMPILER_ID>` ``LFortran``. diff --git a/Help/release/dev/link-strategy.rst b/Help/release/dev/link-strategy.rst deleted file mode 100644 index ab626d1..0000000 --- a/Help/release/dev/link-strategy.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/macro-required-link-directories.rst b/Help/release/dev/macro-required-link-directories.rst deleted file mode 100644 index 1e4adc7..0000000 --- a/Help/release/dev/macro-required-link-directories.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/module-cdb.rst b/Help/release/dev/module-cdb.rst deleted file mode 100644 index 6c28c79..0000000 --- a/Help/release/dev/module-cdb.rst +++ /dev/null @@ -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`. diff --git a/Help/release/dev/normalize-install-destination-paths.rst b/Help/release/dev/normalize-install-destination-paths.rst deleted file mode 100644 index 74a76a6..0000000 --- a/Help/release/dev/normalize-install-destination-paths.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/preserve-empty-args-test-command-lines.rst b/Help/release/dev/preserve-empty-args-test-command-lines.rst deleted file mode 100644 index a533ac8..0000000 --- a/Help/release/dev/preserve-empty-args-test-command-lines.rst +++ /dev/null @@ -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`. diff --git a/Help/release/dev/preset-comments.rst b/Help/release/dev/preset-comments.rst deleted file mode 100644 index 0d0e768..0000000 --- a/Help/release/dev/preset-comments.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/presets-graphviz.rst b/Help/release/dev/presets-graphviz.rst deleted file mode 100644 index f3eb480..0000000 --- a/Help/release/dev/presets-graphviz.rst +++ /dev/null @@ -1,5 +0,0 @@ -presets-graphviz ----------------- - -* Preset files may now request graphviz output using the ``graphviz`` key - in a configure preset. diff --git a/Help/release/dev/project-vars-policy.rst b/Help/release/dev/project-vars-policy.rst deleted file mode 100644 index 02287aa..0000000 --- a/Help/release/dev/project-vars-policy.rst +++ /dev/null @@ -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`. diff --git a/Help/release/dev/remove-vs12-generator.rst b/Help/release/dev/remove-vs12-generator.rst deleted file mode 100644 index fdbdc07..0000000 --- a/Help/release/dev/remove-vs12-generator.rst +++ /dev/null @@ -1,4 +0,0 @@ -remove-vs12-generator ---------------------- - -* The :generator:`Visual Studio 12 2013` generator has been removed. diff --git a/Help/release/dev/standard-link-directories.rst b/Help/release/dev/standard-link-directories.rst deleted file mode 100644 index 5c4f287..0000000 --- a/Help/release/dev/standard-link-directories.rst +++ /dev/null @@ -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. diff --git a/Help/release/dev/static-libraries-deduplication.rst b/Help/release/dev/static-libraries-deduplication.rst deleted file mode 100644 index e388579..0000000 --- a/Help/release/dev/static-libraries-deduplication.rst +++ /dev/null @@ -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`. diff --git a/Help/release/dev/unity-build-supports-cuda.rst b/Help/release/dev/unity-build-supports-cuda.rst deleted file mode 100644 index b6c09d1..0000000 --- a/Help/release/dev/unity-build-supports-cuda.rst +++ /dev/null @@ -1,5 +0,0 @@ -unity-build-supports-cuda -------------------------- - -* The :prop_tgt:`UNITY_BUILD` target property now supports the - CUDA (``CUDA``) language. diff --git a/Help/release/dev/vs-framework-references.rst b/Help/release/dev/vs-framework-references.rst deleted file mode 100644 index 1f50b50..0000000 --- a/Help/release/dev/vs-framework-references.rst +++ /dev/null @@ -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. diff --git a/Help/release/index.rst b/Help/release/index.rst index fbff07b..101dd68 100644 --- a/Help/release/index.rst +++ b/Help/release/index.rst @@ -15,6 +15,7 @@ Releases .. toctree:: :maxdepth: 1 + 3.31 <3.31> 3.30 <3.30> 3.29 <3.29> 3.28 <3.28> |