浏览代码

Help: Consolidate 3.20 release notes

Run the `Utilities/Release/consolidate-relnotes.bash` script to move
notes from `Help/release/dev/*` into `Help/release/3.20.rst`.
Brad King 4 年之前
父节点
当前提交
4911636728
共有 57 个文件被更改,包括 278 次插入379 次删除
  1. 277 0
      Help/release/3.20.rst
  2. 0 5
      Help/release/dev/AddFileDependencies-deprecate.rst
  3. 0 6
      Help/release/dev/ExternalData-suppress-progress.rst
  4. 0 6
      Help/release/dev/FindBoost-no-warn.rst
  5. 0 4
      Help/release/dev/FindIntl-imported-target.rst
  6. 0 4
      Help/release/dev/FindOpenSSL-version-range.rst
  7. 0 6
      Help/release/dev/FindPython-FIND_UNVERSIONED_NAMES.rst
  8. 0 6
      Help/release/dev/Java-export-native_headers-target.rst
  9. 0 7
      Help/release/dev/OUTPUT_DIRECTORY.rst
  10. 0 5
      Help/release/dev/TestBigEndian-use-abi-result.rst
  11. 0 6
      Help/release/dev/UseSWIG-dependencies.rst
  12. 0 5
      Help/release/dev/abi-byte-order.rst
  13. 0 5
      Help/release/dev/after-option-in-target_include-directories.rst
  14. 0 8
      Help/release/dev/aix-xcoff-edit.rst
  15. 0 12
      Help/release/dev/android-ndk.rst
  16. 0 4
      Help/release/dev/build-test-presets.rst
  17. 0 5
      Help/release/dev/clang-tidy-objc.rst
  18. 0 4
      Help/release/dev/clang-win32-subsystem.rst
  19. 0 5
      Help/release/dev/cmake_path.rst
  20. 0 6
      Help/release/dev/configure_file-user-permissions.rst
  21. 0 6
      Help/release/dev/cpack-compression-threads.rst
  22. 0 8
      Help/release/dev/cpack-deb-shlibdeps-private-search-dirs.rst
  23. 0 7
      Help/release/dev/cpack-nsis-branding-text.rst
  24. 0 6
      Help/release/dev/cpack-nsis-utf-8-bom.rst
  25. 0 31
      Help/release/dev/cpack-nuget.rst
  26. 0 7
      Help/release/dev/cpackifw-package-wizard-show-page-list.rst
  27. 0 7
      Help/release/dev/cpp-cuda-23.rst
  28. 0 5
      Help/release/dev/ctest-test-dir.rst
  29. 0 6
      Help/release/dev/cuda-archs-env.rst
  30. 0 9
      Help/release/dev/cuda-nvcc-ccache-symlink.rst
  31. 0 11
      Help/release/dev/custom-command-output-genex.rst
  32. 0 5
      Help/release/dev/explicit-LANGUAGE-flag.rst
  33. 0 5
      Help/release/dev/explicit-source-extensions.rst
  34. 0 6
      Help/release/dev/export-compile-commands-per-target.rst
  35. 0 8
      Help/release/dev/external-project-configure-handled-by-build.rst
  36. 0 13
      Help/release/dev/fetchcontent-performance.rst
  37. 0 5
      Help/release/dev/file-generate-new-line-style.rst
  38. 0 6
      Help/release/dev/file-generate-permissions.rst
  39. 0 5
      Help/release/dev/fileapi-toolchains.rst
  40. 0 5
      Help/release/dev/install-files-rename-genex.rst
  41. 0 19
      Help/release/dev/intel-llvm-compilers.rst
  42. 0 7
      Help/release/dev/make-GENERATED-visible-from-any-scope.rst
  43. 0 5
      Help/release/dev/makefile-depfile.rst
  44. 0 5
      Help/release/dev/makefiles-dependencies-use-compiler.rst
  45. 0 7
      Help/release/dev/msvc-no-GR.rst
  46. 0 5
      Help/release/dev/ninja-depfile-transformation.rst
  47. 0 4
      Help/release/dev/nvhpc-compiler.rst
  48. 0 8
      Help/release/dev/object-lib-multiarch.rst
  49. 0 4
      Help/release/dev/qt-autogen-per-config.rst
  50. 0 10
      Help/release/dev/rel-package-names.rst
  51. 0 5
      Help/release/dev/remove-WCDH-module.rst
  52. 0 5
      Help/release/dev/remove-server-mode.rst
  53. 0 4
      Help/release/dev/target-sources-supports-custom-target.rst
  54. 0 5
      Help/release/dev/try_run-allow-to-set-working-directory.rst
  55. 0 7
      Help/release/dev/unity-build-anonymous-macros.rst
  56. 0 9
      Help/release/dev/xcode-embed-frameworks.rst
  57. 1 0
      Help/release/index.rst

+ 277 - 0
Help/release/3.20.rst

@@ -0,0 +1,277 @@
+CMake 3.20 Release Notes
+************************
+
+.. only:: html
+
+  .. contents::
+
+Changes made since CMake 3.19 include the following.
+
+* The :variable:`CMAKE_<LANG>_BYTE_ORDER` variable was added to provide the
+  target architecture byte order detected from the toolchain.
+
+* The :module:`AddFileDependencies` module is deprecated.
+  Port projects to use :command:`set_property` directly.
+
+* The :command:`target_include_directories` command gained a new option
+  ``AFTER``.
+
+* On AIX, installation of XCOFF executables and shared libraries
+  no longer requires relinking to change the runtime search path
+  from the build-tree RPATH to the install-tree RPATH.  CMake now
+  edits the XCOFF binaries directly during installation, as has
+  long been done on ELF platforms.
+
+* CMake's support for :ref:`Cross Compiling for Android`
+  is now merged with the Android NDK's toolchain file.
+  They now have similar behavior, though some variable names differ.
+  User-facing changes include:
+
+  - ``find_*`` functions will search NDK ABI / API specific paths by default.
+
+  - The default :variable:`CMAKE_BUILD_TYPE` for Android is
+    now ``RelWithDebInfo``.
+
+* :manual:`cmake-presets(7)` gained support for build and test presets.
+
+* The target property :prop_tgt:`<LANG>_CLANG_TIDY` and the associated
+  variable :variable:`CMAKE_<LANG>_CLANG_TIDY` learned to support OBJC and OBJCXX.
+
+* :prop_tgt:`WIN32_EXECUTABLE` now works on Windows with Clang.
+
+* The :command:`cmake_path` command was added for operations on
+  filesystem paths.
+
+* The :command:`configure_file` command gained a ``USE_SOURCE_PERMISSIONS``
+  and ``FILE_PERMISSIONS`` option to support copying of permissions of source
+  file and specifying user defined permissions.
+
+* :module:`CPack` gained the :variable:`CPACK_THREADS` variable to
+  control the number of threads used for parallelized operations,
+  such as compressing the installer package.
+
+* The :module:`CPackDeb` module learned a new
+  :variable:`CPACK_DEBIAN_PACKAGE_SHLIBDEPS_PRIVATE_DIRS`
+  variable to specify additional search directories for
+  resolving private library dependencies when using
+  ``dpkg-shlibdeps``.
+
+* The :cpack_gen:`CPack IFW Generator` gained new
+  :variable:`CPACK_IFW_PACKAGE_WIZARD_SHOW_PAGE_LIST` variable to
+  control visibility of the widget listing installer pages on the left side
+  of the wizard. This feature available only since QtIFW 4.0.
+
+* The :cpack_gen:`CPack NSIS Generator` gained new variables
+  :variable:`CPACK_NSIS_BRANDING_TEXT` and
+  :variable:`CPACK_NSIS_BRANDING_TEXT_TRIM_POSITION` to change the
+  text at the bottom of the install window and change its trim position
+
+* The :cpack_gen:`CPack NSIS Generator` now handles correctly Unicode characters.
+  If you want to have a ``CPACK_RESOURCE_FILE_LICENSE`` with UTF-8 characters
+  it needs to be encoded in UTF-8 BOM.
+
+* The :cpack_gen:`CPack NuGet Generator` gained options:
+
+  - :variable:`CPACK_NUGET_PACKAGE_ICON` and
+    :variable:`CPACK_NUGET_<compName>_PACKAGE_ICON`
+    allow package icons to be specified by local files.
+  - :variable:`CPACK_NUGET_PACKAGE_LICENSE_EXPRESSION` and
+    :variable:`CPACK_NUGET_<compName>_PACKAGE_LICENSE_EXPRESSION` add
+    support for specifying licenses recognized by the
+    `Software Package Data Exchange`_ (SPDX).
+  - :variable:`CPACK_NUGET_PACKAGE_LICENSE_FILE_NAME` and
+    :variable:`CPACK_NUGET_<compName>_PACKAGE_LICENSE_FILE_NAME` allow
+    licenses to be specified by local files.
+  - :variable:`CPACK_NUGET_PACKAGE_LANGUAGE` and
+    :variable:`CPACK_NUGET_<compName>_PACKAGE_LANGUAGE` allow the locale
+    for a package to be specified, for example ``en_CA``.
+
+ Some other variables have been deprecated to reflect changes in the
+ NuGet specification:
+
+ - :variable:`CPACK_NUGET_PACKAGE_ICONURL` and
+   :variable:`CPACK_NUGET_<compName>_PACKAGE_ICONURL` have been deprecated;
+   replace with a reference to a local icon file.
+ - :variable:`CPACK_NUGET_PACKAGE_LICENSEURL` and
+   :variable:`CPACK_NUGET_<compName>_PACKAGE_LICENSEURL` have been deprecated;
+   replace with a reference to the project's license file or SPDX
+   license expression.
+
+.. _Software Package Data Exchange: https://spdx.org/
+
+* :prop_tgt:`CXX_STANDARD`, :prop_tgt:`CUDA_STANDARD`,
+  :prop_tgt:`OBJCXX_STANDARD` and the
+  :manual:`Compile Features <cmake-compile-features(7)>` functionality gained
+  support for C++23.
+
+* :manual:`ctest(1)` gained a ``--test-dir`` option to specify the directory
+  in which to look for tests.
+
+* The :envvar:`CUDAARCHS` environment variable was added for initializing
+  :variable:`CMAKE_CUDA_ARCHITECTURES`. Useful in cases where the compiler
+  default is unsuitable for the machine's GPU.
+
+* ``CUDA`` language support now works when ``nvcc`` is a symbolic link,
+  for example due to a ``ccache`` or ``colornvcc`` wrapper script.
+
+* The :module:`FindCUDAToolkit` module gained support for finding CUDA
+  toolkits when ``nvcc`` is a symbolic link,
+  for example due to a ``ccache`` or ``colornvcc`` wrapper script.
+
+* :command:`add_custom_command` and :command:`add_custom_target` now
+  support :manual:`generator expressions <cmake-generator-expressions(7)>`
+  in their ``OUTPUT`` and ``BYPRODUCTS`` options.
+
+  Their ``COMMAND``, ``WORKING_DIRECTORY``, and ``DEPENDS`` options gained
+  support for new generator expressions ``$<COMMAND_CONFIG:...>`` and
+  ``$<OUTPUT_CONFIG:...>`` that control cross-config handling when using
+  the :generator:`Ninja Multi-Config` generator.
+
+* The :prop_sf:`LANGUAGE` source file property now forces compilation
+  as the specified language.  See policy :policy:`CMP0119`.
+
+* Source file extensions must now be explicit. See policy :policy:`CMP0115` for
+  details.
+
+* The :prop_tgt:`EXPORT_COMPILE_COMMANDS` target property was added
+  for the associated :variable:`CMAKE_EXPORT_COMPILE_COMMANDS` variable
+  to allow for configuration of exporting compile commands per target.
+
+* The :module:`ExternalData` module ``ExternalData_add_target`` now supports a
+  ``SHOW_PROGRESS <bool>`` argument to suppress progress output during the
+  build.
+
+* The :module:`ExternalProject` function ``ExternalProject_Add`` learned a new
+  ``CONFIGURE_HANDLED_BY_BUILD`` option to have subsequent runs of the configure
+  step be triggered by the build step when an external project dependency
+  rebuilds instead of always rerunning the configure step when an external
+  project dependency rebuilds.
+
+* The implementation of the :module:`ExternalProject` module was
+  significantly refactored.  The patch step gained support for
+  using the terminal with a new ``USES_TERMINAL_PATCH`` keyword
+  as a by-product of that work.
+* The :module:`FetchContent` module no longer creates a separate
+  sub-build to implement the content population.  It now invokes
+  the step scripts directly from within the main project's
+  configure stage.  This significantly speeds up the configure
+  phase when the required content is already populated and
+  up-to-date.
+
+* The :manual:`cmake-file-api(7)` gained a new "toolchains" object
+  kind that describes the compiler used for each enabled language.
+
+* The :command:`file(GENERATE)` command gained ``NEWLINE_STYLE`` option to
+  support newline style of the generated file.
+
+* The :command:`file(GENERATE)` command gained ``NO_SOURCE_PERMISSIONS``,
+  ``USE_SOURCE_PERMISSIONS``, and ``FILE_PERMISSIONS`` options to support
+  permissions of the generated file.
+
+* The :module:`FindBoost` module gained a ``Boost_NO_WARN_NEW_VERSIONS``
+  option to silence the warning about unknown dependencies for new
+  Boost versions.
+
+* The :module:`FindIntl` module now provides an imported target.
+
+* :module:`FindOpenSSL` module gains the capability to manage a version range.
+
+* Modules :module:`FindPython3`, :module:`FindPython2` and :module:`FindPython`
+  gain the capability to control how interpreter unversioned names are
+  searched.
+
+* The :command:`install(FILES)` command ``RENAME`` option learned to
+  support :manual:`generator expressions <cmake-generator-expressions(7)>`.
+
+* The Intel oneAPI NextGen LLVM compilers are now supported with
+  compiler id ``IntelLLVM``:
+
+  * The ``icx``/``icpx`` C/C++ compilers on Linux, and the ``icx``
+    C/C++ compiler on Windows, are fully supported as of oneAPI 2021.1.
+
+  * The ``ifx`` Fortran compiler on Linux is partially supported.
+    As of oneAPI 2021.1, ``ifx`` does not define several identification
+    macros, so CMake identifies it as the classic ``Intel`` compiler.
+    This works in many cases because ``ifx`` accepts the same command line
+    parameters as ``ifort``.
+
+  * The ``ifx`` Fortran compiler on Windows is not yet supported.
+
+  The Intel oneAPI Classic compilers (``icc``, ``icpc``, and ``ifort``)
+  continue to be supported with compiler id ``Intel``.
+
+* ``add_jar()`` command, from :module:`UseJava` module, gains new capabilities
+  for ``GENERATE_NATIVE_HEADERS`` option. These capabilities facilitate the
+  exportation of the generated target.
+
+* The :command:`add_custom_command` command gained ``DEPFILE`` support on
+  :ref:`Makefile Generators`.
+
+* The :ref:`Makefile Generators` gained the capability, for a selection of
+  compilers, to use the compiler itself to generate implicit dependencies.
+
+* The :prop_sf:`GENERATED` source-file property is now visible
+  from any directory scope, regardles in which scope or for what
+  scope it was set.
+  See policy :policy:`CMP0118`.
+
+* With MSVC-like compilers the value of
+  :variable:`CMAKE_CXX_FLAGS <CMAKE_<LANG>_FLAGS>` no longer contains
+  the ``/GR`` flag for runtime type information by default.
+  See policy :policy:`CMP0117`.
+
+* Ninja generators now transform ``DEPFILE`` s from
+  :command:`add_custom_command`. See policy :policy:`CMP0116` for details.
+
+* The NVIDIA HPC SDK compilers are now supported with compiler id ``NVHPC``.
+
+* The :command:`add_library` command previously prohibited imported object
+  libraries when using potentially multi-architecture configurations.
+  This mostly affected the :generator:`Xcode` generator, e.g. when targeting
+  iOS or one of the other device platforms.  This restriction has now been
+  removed.
+
+* The variables :variable:`CMAKE_RUNTIME_OUTPUT_DIRECTORY`,
+  :variable:`CMAKE_LIBRARY_OUTPUT_DIRECTORY`, and
+  :variable:`CMAKE_ARCHIVE_OUTPUT_DIRECTORY` now support target-dependent
+  generator expressions.
+
+* The :ref:`Qt AUTOMOC` feature now works with per-config sources.
+
+* The precompiled Linux binaries provided on ``cmake.org`` have changed
+  their naming pattern to ``cmake-$ver-linux-$arch``, where ``$arch``
+  is either ``x86_64`` or ``aarch64``.
+
+* The precompiled Windows binaries provided on ``cmake.org`` have changed
+  their naming pattern to ``cmake-$ver-windows-$arch``, where ``$arch``
+  is either ``x86_64`` or ``i386``.
+
+* The :manual:`cmake-server(7)` mode has been removed.
+  Clients should use the :manual:`cmake-file-api(7)` instead.
+
+* The :module:`WriteCompilerDetectionHeader` module has been deprecated
+  via policy :policy:`CMP0120`.  Projects should be ported away from it.
+
+* The :command:`target_sources` now supports custom targets.
+
+* The :module:`TestBigEndian` module has been deprecated in favor
+  of the :variable:`CMAKE_<LANG>_BYTE_ORDER` variable.
+
+* The :command:`try_run` command gained a ``WORKING_DIRECTORY`` option to
+  support setting of working directory.
+
+* The :prop_tgt:`UNITY_BUILD_UNIQUE_ID` target property
+  was added to support generation of an identifier that is
+  unique per source file in unity builds.  It can help to
+  resolve duplicate symbol problems with anonymous namespaces.
+
+* :module:`UseSWIG` module gained the capability, for
+  :ref:`Makefile <Makefile Generators>` and :ref:`Ninja <Ninja Generators>`
+  generators, to use ``swig`` tool to generate implicit dependencies.
+
+* When using the Xcode generator, it is now possible to embed frameworks
+  using the new :prop_tgt:`XCODE_EMBED_FRAMEWORKS <XCODE_EMBED_<type>>`
+  target property.  Aspects of the embedding can be customized with the
+  :prop_tgt:`XCODE_EMBED_FRAMEWORKS_PATH <XCODE_EMBED_<type>>`,
+  :prop_tgt:`XCODE_EMBED_FRAMEWORKS_CODE_SIGN_ON_COPY` and
+  :prop_tgt:`XCODE_EMBED_FRAMEWORKS_REMOVE_HEADERS_ON_COPY` target properties.

+ 0 - 5
Help/release/dev/AddFileDependencies-deprecate.rst

@@ -1,5 +0,0 @@
-AddFileDependencies-deprecate
------------------------------
-
-* The :module:`AddFileDependencies` module is deprecated.
-  Port projects to use :command:`set_property` directly.

+ 0 - 6
Help/release/dev/ExternalData-suppress-progress.rst

@@ -1,6 +0,0 @@
-ExternalData-suppress-progress
-------------------------------
-
-* The :module:`ExternalData` module ``ExternalData_add_target`` now supports a
-  ``SHOW_PROGRESS <bool>`` argument to suppress progress output during the
-  build.

+ 0 - 6
Help/release/dev/FindBoost-no-warn.rst

@@ -1,6 +0,0 @@
-FindBoost-no-warn
------------------
-
-* The :module:`FindBoost` module gained a ``Boost_NO_WARN_NEW_VERSIONS``
-  option to silence the warning about unknown dependencies for new
-  Boost versions.

+ 0 - 4
Help/release/dev/FindIntl-imported-target.rst

@@ -1,4 +0,0 @@
-FindIntl-imported-target
-------------------------
-
-* The :module:`FindIntl` module now provides an imported target.

+ 0 - 4
Help/release/dev/FindOpenSSL-version-range.rst

@@ -1,4 +0,0 @@
-FindOpenSSL-version-range
--------------------------
-
-* :module:`FindOpenSSL` module gains the capability to manage a version range.

+ 0 - 6
Help/release/dev/FindPython-FIND_UNVERSIONED_NAMES.rst

@@ -1,6 +0,0 @@
-FindPython-FIND_UNVERSIONED_NAMES
----------------------------------
-
-* Modules :module:`FindPython3`, :module:`FindPython2` and :module:`FindPython`
-  gain the capability to control how interpreter unversioned names are
-  searched.

+ 0 - 6
Help/release/dev/Java-export-native_headers-target.rst

@@ -1,6 +0,0 @@
-Java-export-native_headers-target
----------------------------------
-
-* ``add_jar()`` command, from :module:`UseJava` module, gains new capabilities
-  for ``GENERATE_NATIVE_HEADERS`` option. These capabilities facilitate the
-  exportation of the generated target.

+ 0 - 7
Help/release/dev/OUTPUT_DIRECTORY.rst

@@ -1,7 +0,0 @@
-OUTPUT_DIRECTORY
-----------------
-
-* The variables :variable:`CMAKE_RUNTIME_OUTPUT_DIRECTORY`,
-  :variable:`CMAKE_LIBRARY_OUTPUT_DIRECTORY`, and
-  :variable:`CMAKE_ARCHIVE_OUTPUT_DIRECTORY` now support target-dependent
-  generator expressions.

+ 0 - 5
Help/release/dev/TestBigEndian-use-abi-result.rst

@@ -1,5 +0,0 @@
-TestBigEndian-use-abi-result
-----------------------------
-
-* The :module:`TestBigEndian` module has been deprecated in favor
-  of the :variable:`CMAKE_<LANG>_BYTE_ORDER` variable.

+ 0 - 6
Help/release/dev/UseSWIG-dependencies.rst

@@ -1,6 +0,0 @@
-UseSWIG-dependencies
---------------------
-
-* :module:`UseSWIG` module gained the capability, for
-  :ref:`Makefile <Makefile Generators>` and :ref:`Ninja <Ninja Generators>`
-  generators, to use ``swig`` tool to generate implicit dependencies.

+ 0 - 5
Help/release/dev/abi-byte-order.rst

@@ -1,5 +0,0 @@
-abi-byte-order
---------------
-
-* The :variable:`CMAKE_<LANG>_BYTE_ORDER` variable was added to provide the
-  target architecture byte order detected from the toolchain.

+ 0 - 5
Help/release/dev/after-option-in-target_include-directories.rst

@@ -1,5 +0,0 @@
-after-option-in-target_include-directories.rst
-----------------------------------------------
-
-* The :command:`target_include_directories` command gained a new option
-  ``AFTER``.

+ 0 - 8
Help/release/dev/aix-xcoff-edit.rst

@@ -1,8 +0,0 @@
-aix-xcoff-edit
---------------
-
-* On AIX, installation of XCOFF executables and shared libraries
-  no longer requires relinking to change the runtime search path
-  from the build-tree RPATH to the install-tree RPATH.  CMake now
-  edits the XCOFF binaries directly during installation, as has
-  long been done on ELF platforms.

+ 0 - 12
Help/release/dev/android-ndk.rst

@@ -1,12 +0,0 @@
-android-ndk
------------
-
-* CMake's support for :ref:`Cross Compiling for Android`
-  is now merged with the Android NDK's toolchain file.
-  They now have similar behavior, though some variable names differ.
-  User-facing changes include:
-
-  - ``find_*`` functions will search NDK ABI / API specific paths by default.
-
-  - The default :variable:`CMAKE_BUILD_TYPE` for Android is
-    now ``RelWithDebInfo``.

+ 0 - 4
Help/release/dev/build-test-presets.rst

@@ -1,4 +0,0 @@
-build-test-presets
-------------------
-
-* :manual:`cmake-presets(7)` gained support for build and test presets.

+ 0 - 5
Help/release/dev/clang-tidy-objc.rst

@@ -1,5 +0,0 @@
-clang-tidy-objc
----------------
-
-* The target property :prop_tgt:`<LANG>_CLANG_TIDY` and the associated
-  variable :variable:`CMAKE_<LANG>_CLANG_TIDY` learned to support OBJC and OBJCXX.

+ 0 - 4
Help/release/dev/clang-win32-subsystem.rst

@@ -1,4 +0,0 @@
-clang-win32-subsystem
----------------------
-
-* :prop_tgt:`WIN32_EXECUTABLE` now works on Windows with Clang.

+ 0 - 5
Help/release/dev/cmake_path.rst

@@ -1,5 +0,0 @@
-cmake_path
-----------
-
-* The :command:`cmake_path` command was added for operations on
-  filesystem paths.

+ 0 - 6
Help/release/dev/configure_file-user-permissions.rst

@@ -1,6 +0,0 @@
-configure_file-user-permissions
--------------------------------
-
-* The :command:`configure_file` command gained a ``USE_SOURCE_PERMISSIONS``
-  and ``FILE_PERMISSIONS`` option to support copying of permissions of source
-  file and specifying user defined permissions.

+ 0 - 6
Help/release/dev/cpack-compression-threads.rst

@@ -1,6 +0,0 @@
-cpack-compression-threads
--------------------------
-
-* :module:`CPack` gained the :variable:`CPACK_THREADS` variable to
-  control the number of threads used for parallelized operations,
-  such as compressing the installer package.

+ 0 - 8
Help/release/dev/cpack-deb-shlibdeps-private-search-dirs.rst

@@ -1,8 +0,0 @@
-cpack-deb-shlibdeps-resolving-private-dependencies
---------------------------------------------------
-
-* The :module:`CPackDeb` module learned a new
-  :variable:`CPACK_DEBIAN_PACKAGE_SHLIBDEPS_PRIVATE_DIRS`
-  variable to specify additional search directories for
-  resolving private library dependencies when using
-  ``dpkg-shlibdeps``.

+ 0 - 7
Help/release/dev/cpack-nsis-branding-text.rst

@@ -1,7 +0,0 @@
-cpack-nsis-branding-text
-------------------------
-
-* The :cpack_gen:`CPack NSIS Generator` gained new variables
-  :variable:`CPACK_NSIS_BRANDING_TEXT` and
-  :variable:`CPACK_NSIS_BRANDING_TEXT_TRIM_POSITION` to change the
-  text at the bottom of the install window and change its trim position

+ 0 - 6
Help/release/dev/cpack-nsis-utf-8-bom.rst

@@ -1,6 +0,0 @@
-cpack-nsis-utf8-bom
--------------------
-
-* The :cpack_gen:`CPack NSIS Generator` now handles correctly Unicode characters.
-  If you want to have a ``CPACK_RESOURCE_FILE_LICENSE`` with UTF-8 characters
-  it needs to be encoded in UTF-8 BOM.

+ 0 - 31
Help/release/dev/cpack-nuget.rst

@@ -1,31 +0,0 @@
-cpack-nuget
------------
-
-* The :cpack_gen:`CPack NuGet Generator` gained options:
-
-  - :variable:`CPACK_NUGET_PACKAGE_ICON` and
-    :variable:`CPACK_NUGET_<compName>_PACKAGE_ICON`
-    allow package icons to be specified by local files.
-  - :variable:`CPACK_NUGET_PACKAGE_LICENSE_EXPRESSION` and
-    :variable:`CPACK_NUGET_<compName>_PACKAGE_LICENSE_EXPRESSION` add
-    support for specifying licenses recognized by the
-    `Software Package Data Exchange`_ (SPDX).
-  - :variable:`CPACK_NUGET_PACKAGE_LICENSE_FILE_NAME` and
-    :variable:`CPACK_NUGET_<compName>_PACKAGE_LICENSE_FILE_NAME` allow
-    licenses to be specified by local files.
-  - :variable:`CPACK_NUGET_PACKAGE_LANGUAGE` and
-    :variable:`CPACK_NUGET_<compName>_PACKAGE_LANGUAGE` allow the locale
-    for a package to be specified, for example ``en_CA``.
-
- Some other variables have been deprecated to reflect changes in the
- NuGet specification:
-
- - :variable:`CPACK_NUGET_PACKAGE_ICONURL` and
-   :variable:`CPACK_NUGET_<compName>_PACKAGE_ICONURL` have been deprecated;
-   replace with a reference to a local icon file.
- - :variable:`CPACK_NUGET_PACKAGE_LICENSEURL` and
-   :variable:`CPACK_NUGET_<compName>_PACKAGE_LICENSEURL` have been deprecated;
-   replace with a reference to the project's license file or SPDX
-   license expression.
-
-.. _Software Package Data Exchange: https://spdx.org/

+ 0 - 7
Help/release/dev/cpackifw-package-wizard-show-page-list.rst

@@ -1,7 +0,0 @@
-cpackifw-package-wizard-show-page-list
---------------------------------------
-
-* The :cpack_gen:`CPack IFW Generator` gained new
-  :variable:`CPACK_IFW_PACKAGE_WIZARD_SHOW_PAGE_LIST` variable to
-  control visibility of the widget listing installer pages on the left side
-  of the wizard. This feature available only since QtIFW 4.0.

+ 0 - 7
Help/release/dev/cpp-cuda-23.rst

@@ -1,7 +0,0 @@
-cpp-cuda-23
------------
-
-* :prop_tgt:`CXX_STANDARD`, :prop_tgt:`CUDA_STANDARD`,
-  :prop_tgt:`OBJCXX_STANDARD` and the
-  :manual:`Compile Features <cmake-compile-features(7)>` functionality gained
-  support for C++23.

+ 0 - 5
Help/release/dev/ctest-test-dir.rst

@@ -1,5 +0,0 @@
-ctest-test-dir.rst
-------------------
-
-* :manual:`ctest(1)` gained a ``--test-dir`` option to specify the directory
-  in which to look for tests.

+ 0 - 6
Help/release/dev/cuda-archs-env.rst

@@ -1,6 +0,0 @@
-cuda-archs-env
---------------
-
-* The :envvar:`CUDAARCHS` environment variable was added for initializing
-  :variable:`CMAKE_CUDA_ARCHITECTURES`. Useful in cases where the compiler
-  default is unsuitable for the machine's GPU.

+ 0 - 9
Help/release/dev/cuda-nvcc-ccache-symlink.rst

@@ -1,9 +0,0 @@
-cuda-nvcc-ccache-symlink
-------------------------
-
-* ``CUDA`` language support now works when ``nvcc`` is a symbolic link,
-  for example due to a ``ccache`` or ``colornvcc`` wrapper script.
-
-* The :module:`FindCUDAToolkit` module gained support for finding CUDA
-  toolkits when ``nvcc`` is a symbolic link,
-  for example due to a ``ccache`` or ``colornvcc`` wrapper script.

+ 0 - 11
Help/release/dev/custom-command-output-genex.rst

@@ -1,11 +0,0 @@
-custom-command-output-genex
----------------------------
-
-* :command:`add_custom_command` and :command:`add_custom_target` now
-  support :manual:`generator expressions <cmake-generator-expressions(7)>`
-  in their ``OUTPUT`` and ``BYPRODUCTS`` options.
-
-  Their ``COMMAND``, ``WORKING_DIRECTORY``, and ``DEPENDS`` options gained
-  support for new generator expressions ``$<COMMAND_CONFIG:...>`` and
-  ``$<OUTPUT_CONFIG:...>`` that control cross-config handling when using
-  the :generator:`Ninja Multi-Config` generator.

+ 0 - 5
Help/release/dev/explicit-LANGUAGE-flag.rst

@@ -1,5 +0,0 @@
-explicit-LANGUAGE-flag
-----------------------
-
-* The :prop_sf:`LANGUAGE` source file property now forces compilation
-  as the specified language.  See policy :policy:`CMP0119`.

+ 0 - 5
Help/release/dev/explicit-source-extensions.rst

@@ -1,5 +0,0 @@
-explicit-source-extensions
---------------------------
-
-* Source file extensions must now be explicit. See policy :policy:`CMP0115` for
-  details.

+ 0 - 6
Help/release/dev/export-compile-commands-per-target.rst

@@ -1,6 +0,0 @@
-export-compile-commands-per-target
-----------------------------------
-
-* The :prop_tgt:`EXPORT_COMPILE_COMMANDS` target property was added
-  for the associated :variable:`CMAKE_EXPORT_COMPILE_COMMANDS` variable
-  to allow for configuration of exporting compile commands per target.

+ 0 - 8
Help/release/dev/external-project-configure-handled-by-build.rst

@@ -1,8 +0,0 @@
-external-project-configure-handled-by-build
--------------------------------------------
-
-* The :module:`ExternalProject` function ``ExternalProject_Add`` learned a new
-  ``CONFIGURE_HANDLED_BY_BUILD`` option to have subsequent runs of the configure
-  step be triggered by the build step when an external project dependency
-  rebuilds instead of always rerunning the configure step when an external
-  project dependency rebuilds.

+ 0 - 13
Help/release/dev/fetchcontent-performance.rst

@@ -1,13 +0,0 @@
-fetchcontent-performance
-------------------------
-
-* The implementation of the :module:`ExternalProject` module was
-  significantly refactored.  The patch step gained support for
-  using the terminal with a new ``USES_TERMINAL_PATCH`` keyword
-  as a by-product of that work.
-* The :module:`FetchContent` module no longer creates a separate
-  sub-build to implement the content population.  It now invokes
-  the step scripts directly from within the main project's
-  configure stage.  This significantly speeds up the configure
-  phase when the required content is already populated and
-  up-to-date.

+ 0 - 5
Help/release/dev/file-generate-new-line-style.rst

@@ -1,5 +0,0 @@
-file-generate-new-line-style
-----------------------------
-
-* The :command:`file(GENERATE)` command gained ``NEWLINE_STYLE`` option to
-  support newline style of the generated file.

+ 0 - 6
Help/release/dev/file-generate-permissions.rst

@@ -1,6 +0,0 @@
-file-generate-permissions
--------------------------
-
-* The :command:`file(GENERATE)` command gained ``NO_SOURCE_PERMISSIONS``,
-  ``USE_SOURCE_PERMISSIONS``, and ``FILE_PERMISSIONS`` options to support
-  permissions of the generated file.

+ 0 - 5
Help/release/dev/fileapi-toolchains.rst

@@ -1,5 +0,0 @@
-fileapi-toolchains
-------------------
-
-* The :manual:`cmake-file-api(7)` gained a new "toolchains" object
-  kind that describes the compiler used for each enabled language.

+ 0 - 5
Help/release/dev/install-files-rename-genex.rst

@@ -1,5 +0,0 @@
-install-files-rename-genex
---------------------------
-
-* The :command:`install(FILES)` command ``RENAME`` option learned to
-  support :manual:`generator expressions <cmake-generator-expressions(7)>`.

+ 0 - 19
Help/release/dev/intel-llvm-compilers.rst

@@ -1,19 +0,0 @@
-intel-llvm-compilers
---------------------
-
-* The Intel oneAPI NextGen LLVM compilers are now supported with
-  compiler id ``IntelLLVM``:
-
-  * The ``icx``/``icpx`` C/C++ compilers on Linux, and the ``icx``
-    C/C++ compiler on Windows, are fully supported as of oneAPI 2021.1.
-
-  * The ``ifx`` Fortran compiler on Linux is partially supported.
-    As of oneAPI 2021.1, ``ifx`` does not define several identification
-    macros, so CMake identifies it as the classic ``Intel`` compiler.
-    This works in many cases because ``ifx`` accepts the same command line
-    parameters as ``ifort``.
-
-  * The ``ifx`` Fortran compiler on Windows is not yet supported.
-
-  The Intel oneAPI Classic compilers (``icc``, ``icpc``, and ``ifort``)
-  continue to be supported with compiler id ``Intel``.

+ 0 - 7
Help/release/dev/make-GENERATED-visible-from-any-scope.rst

@@ -1,7 +0,0 @@
-make-GENERATED-visible-from-any-scope
--------------------------------------
-
-* The :prop_sf:`GENERATED` source-file property is now visible
-  from any directory scope, regardles in which scope or for what
-  scope it was set.
-  See policy :policy:`CMP0118`.

+ 0 - 5
Help/release/dev/makefile-depfile.rst

@@ -1,5 +0,0 @@
-makefile-depfile
-----------------
-
-* The :command:`add_custom_command` command gained ``DEPFILE`` support on
-  :ref:`Makefile Generators`.

+ 0 - 5
Help/release/dev/makefiles-dependencies-use-compiler.rst

@@ -1,5 +0,0 @@
-makefiles-dependencies-use-compiler
------------------------------------
-
-* The :ref:`Makefile Generators` gained the capability, for a selection of
-  compilers, to use the compiler itself to generate implicit dependencies.

+ 0 - 7
Help/release/dev/msvc-no-GR.rst

@@ -1,7 +0,0 @@
-msvc-no-GR
-----------
-
-* With MSVC-like compilers the value of
-  :variable:`CMAKE_CXX_FLAGS <CMAKE_<LANG>_FLAGS>` no longer contains
-  the ``/GR`` flag for runtime type information by default.
-  See policy :policy:`CMP0117`.

+ 0 - 5
Help/release/dev/ninja-depfile-transformation.rst

@@ -1,5 +0,0 @@
-ninja-depfile-transformation
-----------------------------
-
-* Ninja generators now transform ``DEPFILE`` s from
-  :command:`add_custom_command`. See policy :policy:`CMP0116` for details.

+ 0 - 4
Help/release/dev/nvhpc-compiler.rst

@@ -1,4 +0,0 @@
-nvhpc-compiler
---------------
-
-* The NVIDIA HPC SDK compilers are now supported with compiler id ``NVHPC``.

+ 0 - 8
Help/release/dev/object-lib-multiarch.rst

@@ -1,8 +0,0 @@
-object-lib-multiarch
---------------------
-
-* The :command:`add_library` command previously prohibited imported object
-  libraries when using potentially multi-architecture configurations.
-  This mostly affected the :generator:`Xcode` generator, e.g. when targeting
-  iOS or one of the other device platforms.  This restriction has now been
-  removed.

+ 0 - 4
Help/release/dev/qt-autogen-per-config.rst

@@ -1,4 +0,0 @@
-qt-autogen-per-config
----------------------
-
-* The :ref:`Qt AUTOMOC` feature now works with per-config sources.

+ 0 - 10
Help/release/dev/rel-package-names.rst

@@ -1,10 +0,0 @@
-rel-package-names
------------------
-
-* The precompiled Linux binaries provided on ``cmake.org`` have changed
-  their naming pattern to ``cmake-$ver-linux-$arch``, where ``$arch``
-  is either ``x86_64`` or ``aarch64``.
-
-* The precompiled Windows binaries provided on ``cmake.org`` have changed
-  their naming pattern to ``cmake-$ver-windows-$arch``, where ``$arch``
-  is either ``x86_64`` or ``i386``.

+ 0 - 5
Help/release/dev/remove-WCDH-module.rst

@@ -1,5 +0,0 @@
-remove-WCDH-module
-------------------
-
-* The :module:`WriteCompilerDetectionHeader` module has been deprecated
-  via policy :policy:`CMP0120`.  Projects should be ported away from it.

+ 0 - 5
Help/release/dev/remove-server-mode.rst

@@ -1,5 +0,0 @@
-remove-server-mode
-------------------
-
-* The :manual:`cmake-server(7)` mode has been removed.
-  Clients should use the :manual:`cmake-file-api(7)` instead.

+ 0 - 4
Help/release/dev/target-sources-supports-custom-target.rst

@@ -1,4 +0,0 @@
-target-sources-supports-custom-target
--------------------------------------
-
-* The :command:`target_sources` now supports custom targets.

+ 0 - 5
Help/release/dev/try_run-allow-to-set-working-directory.rst

@@ -1,5 +0,0 @@
-try_run-allow-to-set-working-directory
---------------------------------------
-
-* The :command:`try_run` command gained a ``WORKING_DIRECTORY`` option to
-  support setting of working directory.

+ 0 - 7
Help/release/dev/unity-build-anonymous-macros.rst

@@ -1,7 +0,0 @@
-unity-build-anonymous-macros
-----------------------------
-
-* The :prop_tgt:`UNITY_BUILD_UNIQUE_ID` target property
-  was added to support generation of an identifier that is
-  unique per source file in unity builds.  It can help to
-  resolve duplicate symbol problems with anonymous namespaces.

+ 0 - 9
Help/release/dev/xcode-embed-frameworks.rst

@@ -1,9 +0,0 @@
-xcode-embed-frameworks
-----------------------
-
-* When using the Xcode generator, it is now possible to embed frameworks
-  using the new :prop_tgt:`XCODE_EMBED_FRAMEWORKS <XCODE_EMBED_<type>>`
-  target property.  Aspects of the embedding can be customized with the
-  :prop_tgt:`XCODE_EMBED_FRAMEWORKS_PATH <XCODE_EMBED_<type>>`,
-  :prop_tgt:`XCODE_EMBED_FRAMEWORKS_CODE_SIGN_ON_COPY` and
-  :prop_tgt:`XCODE_EMBED_FRAMEWORKS_REMOVE_HEADERS_ON_COPY` target properties.

+ 1 - 0
Help/release/index.rst

@@ -15,6 +15,7 @@ Releases
 .. toctree::
    :maxdepth: 1
 
+   3.20 <3.20>
    3.19 <3.19>
    3.18 <3.18>
    3.17 <3.17>