Browse Source

Merge topic 'doc-3.22-relnotes'

9f0b52b8e6 Help: Update Sphinx versionadded directives for 3.22 release
c632a7105c Help: Organize and revise 3.22 release notes
48e503ec78 Help: Consolidate 3.22 release notes

Acked-by: Kitware Robot <[email protected]>
Merge-request: !6606
Brad King 4 years ago
parent
commit
8c27ccd945
32 changed files with 151 additions and 170 deletions
  1. 2 0
      Help/policy/CMP0127.rst
  2. 2 0
      Help/prop_test/ENVIRONMENT_MODIFICATION.rst
  3. 2 0
      Help/prop_tgt/Fortran_BUILDING_INSTRINSIC_MODULES.rst
  4. 144 0
      Help/release/3.22.rst
  5. 0 4
      Help/release/dev/FindJasper-imported-target.rst
  6. 0 5
      Help/release/dev/FindPkgConfig-PKG_CONFIG-args.rst
  7. 0 6
      Help/release/dev/GoogleTest-gtest-filter.rst
  8. 0 5
      Help/release/dev/LINK_WHAT_USE_USE-configuration.rst
  9. 0 6
      Help/release/dev/UseSWIG-dependencies.rst
  10. 0 16
      Help/release/dev/cmake-install-mode-symlink.rst
  11. 0 6
      Help/release/dev/cmake_dependent_option_policy.rst
  12. 0 10
      Help/release/dev/compile-features-standard-logic-rework.rst
  13. 0 6
      Help/release/dev/cpack-deb-add-zstd-compression.rst
  14. 0 6
      Help/release/dev/cpack-rpm-requires-exclude-from.rst
  15. 0 7
      Help/release/dev/ctest-environment-modifications.rst
  16. 0 7
      Help/release/dev/ctest-runtime-labels.rst
  17. 0 6
      Help/release/dev/ctest_memcheck-generate-test.xml.rst
  18. 0 9
      Help/release/dev/env-init-configs.rst
  19. 0 8
      Help/release/dev/fetchcontent-CMAKE-vars-passthrough.rst
  20. 0 6
      Help/release/dev/find-blas-lapack-sizeof-integer.rst
  21. 0 4
      Help/release/dev/find-matlab-imported-targets.rst
  22. 0 5
      Help/release/dev/find_package-required-var.rst
  23. 0 7
      Help/release/dev/msvc-isystem.rst
  24. 0 5
      Help/release/dev/ninja-edit_cache.rst
  25. 0 4
      Help/release/dev/nsis-minimal-version.rst
  26. 0 6
      Help/release/dev/nsis_ignore_install_page.rst
  27. 0 6
      Help/release/dev/os-release.rst
  28. 0 5
      Help/release/dev/string-TIMESTAMP-specifier-V.rst
  29. 0 5
      Help/release/dev/target_compile_features-ignore-disabled-langs.rst
  30. 0 5
      Help/release/dev/vs10-deprecate.rst
  31. 0 5
      Help/release/dev/vs_settings.rst
  32. 1 0
      Help/release/index.rst

+ 2 - 0
Help/policy/CMP0127.rst

@@ -1,6 +1,8 @@
 CMP0127
 -------
 
+.. versionadded:: 3.22
+
 :command:`cmake_dependent_option` supports full :ref:`Condition Syntax`.
 
 The ``<depends>`` parameter accepts a :ref:`semicolon-separated list <CMake

+ 2 - 0
Help/prop_test/ENVIRONMENT_MODIFICATION.rst

@@ -1,6 +1,8 @@
 ENVIRONMENT_MODIFICATION
 ------------------------
 
+.. versionadded:: 3.22
+
 Specify environment variables that should be modified for running a test. Note
 that the operations performed by this property are performed after the
 :prop_test:`ENVIRONMENT` property is already applied.

+ 2 - 0
Help/prop_tgt/Fortran_BUILDING_INSTRINSIC_MODULES.rst

@@ -1,6 +1,8 @@
 Fortran_BUILDING_INSTRINSIC_MODULES
 -----------------------------------
 
+.. versionadded:: 3.22
+
 Instructs the CMake Fortran preprocessor that the target is building
 Fortran intrinsics for building a Fortran compiler.
 

+ 144 - 0
Help/release/3.22.rst

@@ -0,0 +1,144 @@
+CMake 3.22 Release Notes
+************************
+
+.. only:: html
+
+  .. contents::
+
+Changes made since CMake 3.21 include the following.
+
+New Features
+============
+
+Commands
+--------
+
+* The :command:`cmake_host_system_information` command can now query
+  `OS identification variables`_ from the :file:`/etc/os-release` file.
+
+* The :command:`string(TIMESTAMP)` command now supports the ``%V``
+  specifier for ISO 8601 week numbers.
+
+.. _`OS identification variables`: https://www.freedesktop.org/software/systemd/man/os-release.html
+
+Variables
+---------
+
+* The :envvar:`CMAKE_BUILD_TYPE` environment variable was added to
+  provide a default value for the :variable:`CMAKE_BUILD_TYPE` variable.
+
+* The :envvar:`CMAKE_CONFIGURATION_TYPES` environment variable was added to
+  provide a default value for the :variable:`CMAKE_CONFIGURATION_TYPES`
+  variable.
+
+* The :envvar:`CMAKE_INSTALL_MODE` environment variable was added to
+  tell :command:`install` rules (implemented by :command:`file(INSTALL)`)
+  to install symbolic links instead of copying of files.
+
+* The :variable:`CMAKE_<LANG>_LINK_WHAT_YOU_USE_FLAG` and
+  :variable:`CMAKE_LINK_WHAT_YOU_USE_CHECK` variables were added to
+  control the linker flag and check used by the
+  :prop_tgt:`LINK_WHAT_YOU_USE` target property.
+
+* The :variable:`CMAKE_REQUIRE_FIND_PACKAGE_<PackageName>` variable
+  was added to turn a non-REQUIRED :command:`find_package` call into
+  a REQUIRED one.
+
+Properties
+----------
+
+* The :prop_tgt:`<LANG>_EXTENSIONS` target property is now initialized to
+  :variable:`CMAKE_<LANG>_EXTENSIONS_DEFAULT`, detected from the compiler.
+  See :policy:`CMP0128`.
+
+* The :prop_sf:`VS_SETTINGS` source file property is now supported for
+  all source file types.  Previously it worked only for non-built sources.
+
+Modules
+-------
+
+* The :module:`CMakeDependentOption` module :command:`cmake_dependent_option`
+  macro now supports full :ref:`Condition Syntax`.
+  See policy :policy:`CMP0127`.
+
+* The :module:`FetchContent` module now passes through the
+  :variable:`CMAKE_TLS_VERIFY`, :variable:`CMAKE_TLS_CAINFO`,
+  :variable:`CMAKE_NETRC` and :variable:`CMAKE_NETRC_FILE` variables (when
+  defined) to the underlying :module:`ExternalProject` sub-build.
+  Previously, those variables were silently ignored by :module:`FetchContent`.
+
+* The :module:`FindBLAS` and :module:`FindLAPACK` modules gained
+  a ``BLA_SIZEOF_INTEGER`` option to find a BLAS/LAPACK whose ABI
+  uses a specific integer size.
+
+* The :module:`FindJasper` module now provides an imported target.
+
+* The :module:`FindMatlab` module now provides imported targets.
+
+* The :module:`FindPkgConfig` module gained a :variable:`PKG_CONFIG_ARGN`
+  variable to specify arguments to ``pkg-config`` calls.
+
+* The :module:`GoogleTest` module :command:`gtest_discover_tests`
+  function gained a ``TEST_FILTER`` option to filter tests using
+  ``--gtest_filter`` during test discovery.
+
+* The :module:`UseSWIG` module, for :ref:`Visual Studio Generators`,
+  can now use the ``swig`` tool to generate implicit dependencies.
+
+CTest
+-----
+
+* :manual:`ctest(1)` learned to recognize labels attached to a test at run time.
+  Previously it was only possible to attach labels to tests at configure time
+  by using the :prop_test:`LABELS` test property.
+  See :ref:`Additional Test Measurements` for more information.
+
+* :manual:`ctest(1)` learned to be able to modify the environment for a test
+  through the :prop_test:`ENVIRONMENT_MODIFICATION` property. This is allows
+  for updates to environment variables based on the environment present at
+  test time.
+
+* The :command:`ctest_memcheck` command now also generates a
+  :file:`DynamicAnalysis-Test.xml` file which may be used to submit test
+  results to CDash.
+
+CPack
+-----
+
+* The :cpack_gen:`CPack DEB Generator` gained the
+  option to set :variable:`CPACK_DEBIAN_COMPRESSION_TYPE` to ``zstd``,
+  which enables Zstandard compression for deb packages.
+
+* The :cpack_gen:`CPack NSIS Generator` gained a new
+  :variable:`CPACK_NSIS_IGNORE_LICENSE_PAGE` variable to suppress
+  the license page in the installer.
+
+* The :cpack_gen:`CPack RPM Generator` gained the
+  :variable:`CPACK_RPM_REQUIRES_EXCLUDE_FROM` option to avoid scanning
+  specific paths for dependencies.
+
+Deprecated and Removed Features
+===============================
+
+* The :generator:`Visual Studio 10 2010` generator is now deprecated
+  and will be removed in a future version of CMake.
+
+Other Changes
+=============
+
+* The :manual:`Compile Features <cmake-compile-features(7)>` functionality now
+  correctly disables or enables compiler extensions when no standard level is
+  specified and avoids unnecessarily adding language standard flags if the
+  requested settings match the compiler's defaults. See :policy:`CMP0128`.
+
+* The :manual:`Compile Features <cmake-compile-features(7)>` functionality
+  now ignores features for languages that are not enabled.
+
+* The :ref:`Ninja Generators` now implement the ``edit_cache`` target
+  using :manual:`ccmake(1)` if available.
+
+* The :generator:`Ninja` and :generator:`NMake Makefiles` generators
+  now use the MSVC ``-external:I`` flag for system includes.
+  This became available as of VS 16.10 (toolchain version 14.29.30037).
+
+* The :cpack_gen:`CPack NSIS Generator` now requires NSIS 3.03 or later.

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

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

+ 0 - 5
Help/release/dev/FindPkgConfig-PKG_CONFIG-args.rst

@@ -1,5 +0,0 @@
-FindPkgConfig-PKG_CONFIG-args
------------------------------
-
-* The :module:`FindPkgConfig` module gained a :variable:`PKG_CONFIG_ARGN`
-  variable to specify arguments to ``pkg-config`` calls.

+ 0 - 6
Help/release/dev/GoogleTest-gtest-filter.rst

@@ -1,6 +0,0 @@
-GoogleTest-gtest-filter
------------------------
-
-* The :module:`GoogleTest` module :command:`gtest_discover_tests`
-  function gained a ``TEST_FILTER`` option to filter tests using
-  ``--gtest_filter`` during test discovery.

+ 0 - 5
Help/release/dev/LINK_WHAT_USE_USE-configuration.rst

@@ -1,5 +0,0 @@
-LINK_WHAT_YOU_USE-configuration
--------------------------------
-
-* Configuration for :prop_tgt:`LINK_WHAT_YOU_USE` feature is now controlled by
-  ``CMake`` variables and only active for ``ELF`` platforms.

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

@@ -1,6 +0,0 @@
-UseSWIG-dependencies
---------------------
-
-* :module:`UseSWIG` module gained the capability, for
-  :ref:`Visual Studio Generators` to use `swig` tool to generate implicit
-  dependencies.

+ 0 - 16
Help/release/dev/cmake-install-mode-symlink.rst

@@ -1,16 +0,0 @@
-cmake-install-mode-symlink
---------------------------
-
-* The :envvar:`CMAKE_INSTALL_MODE` environment variable was added to
-  allow users to override the default file-copying behavior of
-  :command:`install` and :command:`file(INSTALL)` into creating
-  symbolic links. This can aid in lowering storage space requirements
-  and avoiding redundancy.
-
-* The :command:`file(INSTALL)` can now be affected / modified by the
-  :envvar:`CMAKE_INSTALL_MODE` environment variable causing installation
-  of symbolic links instead of copying of files.
-
-* The :command:`install` can now be affected / modified by the
-  :envvar:`CMAKE_INSTALL_MODE` environment variable causing installation
-  of symbolic links instead of copying of files.

+ 0 - 6
Help/release/dev/cmake_dependent_option_policy.rst

@@ -1,6 +0,0 @@
-cmake_dependent_option_policy
------------------------------
-
-* The :module:`CMakeDependentOption` module :command:`cmake_dependent_option`
-  macro now supports full :ref:`Condition Syntax`.
-  See policy :policy:`CMP0127`.

+ 0 - 10
Help/release/dev/compile-features-standard-logic-rework.rst

@@ -1,10 +0,0 @@
-compile-features-standard-logic-rework
---------------------------------------
-
-* The :manual:`Compile Features <cmake-compile-features(7)>` functionality now
-  correctly disables or enables compiler extensions when no standard level is
-  specified and avoids unnecessarily adding language standard flags if the
-  requested settings match the compiler's defaults. See :policy:`CMP0128`.
-
-* :prop_tgt:`<LANG>_EXTENSIONS` is initialized to
-  :variable:`CMAKE_<LANG>_EXTENSIONS_DEFAULT`. See :policy:`CMP0128`.

+ 0 - 6
Help/release/dev/cpack-deb-add-zstd-compression.rst

@@ -1,6 +0,0 @@
-cpack-deb-add-zstd-compression
-------------------------------
-
-* The :cpack_gen:`CPack DEB Generator` gained the
-  option to set :variable:`CPACK_DEBIAN_COMPRESSION_TYPE` to zstd,
-  which enables Zstandard compression for deb packages.

+ 0 - 6
Help/release/dev/cpack-rpm-requires-exclude-from.rst

@@ -1,6 +0,0 @@
-cpack-rpm-requires-exclude-from
--------------------------------
-
-* The :cpack_gen:`CPack RPM Generator` gained the
-  :variable:`CPACK_RPM_REQUIRES_EXCLUDE_FROM` option avoid scanning
-  specific paths for dependencies.

+ 0 - 7
Help/release/dev/ctest-environment-modifications.rst

@@ -1,7 +0,0 @@
-ctest-environment-modifications
--------------------------------
-
-* :manual:`ctest(1)` learned to be able to modify the environment for a test
-  through the :prop_test:`ENVIRONMENT_MODIFICATION` property. This is allows
-  for updates to environment variables based on the environment present at
-  test time.

+ 0 - 7
Help/release/dev/ctest-runtime-labels.rst

@@ -1,7 +0,0 @@
-ctest-runtime-labels
---------------------
-
-* :manual:`ctest(1)` learned to recognize labels attached to a test at run time.
-  Previously it was only possible to attach labels to tests at configure time
-  by using the :prop_test:`LABELS` test property.
-  See :ref:`Additional Test Measurements` for more information.

+ 0 - 6
Help/release/dev/ctest_memcheck-generate-test.xml.rst

@@ -1,6 +0,0 @@
-ctest_memcheck-generate-test.xml
---------------------------------
-
-* The :command:`ctest_memcheck` command now also generates a
-  `DynamicAnalysis-Test.xml` file which may be used to submit test results to
-  CDash.

+ 0 - 9
Help/release/dev/env-init-configs.rst

@@ -1,9 +0,0 @@
-env-init-configs
-----------------
-
-* The :envvar:`CMAKE_BUILD_TYPE` environment variable was added to
-  provide a default value for the :variable:`CMAKE_BUILD_TYPE` variable.
-
-* The :envvar:`CMAKE_CONFIGURATION_TYPES` environment variable was added to
-  provide a default value for the :variable:`CMAKE_CONFIGURATION_TYPES`
-  variable.

+ 0 - 8
Help/release/dev/fetchcontent-CMAKE-vars-passthrough.rst

@@ -1,8 +0,0 @@
-fetchcontent-CMAKE-vars-passthrough.rst
----------------------------------------
-
-* The :module:`FetchContent` module now passes through the
-  :variable:`CMAKE_TLS_VERIFY`, :variable:`CMAKE_TLS_CAINFO`,
-  :variable:`CMAKE_NETRC` and :variable:`CMAKE_NETRC_FILE` variables (when
-  defined) to the underlying :module:`ExternalProject` sub-build.
-  Previously, those variables were silently ignored by :module:`FetchContent`.

+ 0 - 6
Help/release/dev/find-blas-lapack-sizeof-integer.rst

@@ -1,6 +0,0 @@
-find-blas-lapack-sizeof-integer
--------------------------------
-
-* The :module:`FindBLAS` and :module:`FindLAPACK` modules gained
-  a ``BLA_SIZEOF_INTEGER`` option to find a BLAS/LAPACK whose ABI
-  uses a specific integer size.

+ 0 - 4
Help/release/dev/find-matlab-imported-targets.rst

@@ -1,4 +0,0 @@
-find-matlab-imported-targets
-----------------------------
-
-* The :module:`FindMatlab` module now provides imported targets.

+ 0 - 5
Help/release/dev/find_package-required-var.rst

@@ -1,5 +0,0 @@
-find_package-required-var
--------------------------
-
-* The :variable:`CMAKE_REQUIRE_FIND_PACKAGE_<PackageName>` variable was added
-  to turn a non-REQUIRED :command:`find_package` call into a REQUIRED one.

+ 0 - 7
Help/release/dev/msvc-isystem.rst

@@ -1,7 +0,0 @@
-msvc-isystem
-------------
-
-* The MSVC compilers learned to pass the ``-external:I`` flag for system
-  includes when using the :generator:`Ninja` and :generator:`NMake Makefiles`
-  generators. This became available as of Visual Studio 16.10 (toolchain
-  version 14.29.30037).

+ 0 - 5
Help/release/dev/ninja-edit_cache.rst

@@ -1,5 +0,0 @@
-ninja-edit_cache
-----------------
-
-* The :ref:`Ninja Generators` now implement the ``edit_cache`` target
-  using :manual:`ccmake(1)` if available.

+ 0 - 4
Help/release/dev/nsis-minimal-version.rst

@@ -1,4 +0,0 @@
-nsis-minimal-version.rst
-------------------------
-
-* The :cpack_gen:`CPack NSIS Generator` now requires NSIS 3.03 or later.

+ 0 - 6
Help/release/dev/nsis_ignore_install_page.rst

@@ -1,6 +0,0 @@
-nsis_ignore_install_page
-------------------------
-
-* The :cpack_gen:`CPack NSIS Generator` gained a new variable
-  :variable:`CPACK_NSIS_IGNORE_LICENSE_PAGE` to ignore the
-  license page in the installer.

+ 0 - 6
Help/release/dev/os-release.rst

@@ -1,6 +0,0 @@
-os-release
-----------
-
-* The :command:`cmake_host_system_information` command query operating system
-  identification `variables <https://www.freedesktop.org/software/systemd/man/os-release.html>`_
-  from the :file:`/etc/os-release` file.

+ 0 - 5
Help/release/dev/string-TIMESTAMP-specifier-V.rst

@@ -1,5 +0,0 @@
-string-TIMESTAMP-specifier-V
-----------------------------
-
-* The :command:`string(TIMESTAMP)` command now supports the ``%V``
-  specifier for ISO 8601 week numbers.

+ 0 - 5
Help/release/dev/target_compile_features-ignore-disabled-langs.rst

@@ -1,5 +0,0 @@
-target_compile_features-ignore-disabled-langs
----------------------------------------------
-
-* :command:`target_compile_features` learned to ignored features for languages that
-  aren't enabled.

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

@@ -1,5 +0,0 @@
-vs10-deprecate
---------------
-
-* The :generator:`Visual Studio 10 2010` generator is now deprecated
-  and will be removed in a future version of CMake.

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

@@ -1,5 +0,0 @@
-vs_settings
------------
-
-* The :prop_sf:`VS_SETTINGS` source file property is now supported for
-  all source file types.  Previously it worked only for non-built sources.

+ 1 - 0
Help/release/index.rst

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