Merge topic 'doc-3.12-relnotes'

049cc31d84 Help: Organize and revise 3.12 release notes
27bba7e8aa Help: Consolidate 3.12 release notes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2132
This commit is contained in:
Brad King
2018-06-05 15:40:03 +00:00
committed by Kitware Robot
59 changed files with 301 additions and 361 deletions

300
Help/release/3.12.rst Normal file
View File

@@ -0,0 +1,300 @@
CMake 3.12 Release Notes
************************
.. only:: html
.. contents::
Changes made since CMake 3.11 include the following.
New Features
============
Generators
----------
* The :ref:`Visual Studio Generators` for VS 2017 learned to support a
``version=14.##`` option in the :variable:`CMAKE_GENERATOR_TOOLSET`
value (e.g. via the :manual:`cmake(1)` ``-T`` option) to specify a
toolset version number.
Command-Line
------------
* The :manual:`cmake(1)` :ref:`Build Tool Mode` (``cmake --build``) gained
``--parallel [<jobs>]`` and ``-j [<jobs>]`` options to specify a parallel
build level. They map to corresponding options of the native build tool.
Commands
--------
* The :command:`add_compile_definitions` command was added to set preprocessor
definitions at directory level. This supersedes :command:`add_definitions`.
* The :command:`cmake_minimum_required` and :command:`cmake_policy(VERSION)`
commands now accept a version range using the form ``<min>[...<max>]``.
The ``<min>`` version is required but policies are set based on the
``<max>`` version. This allows projects to specify a range of versions
for which they have been updated and avoid explicit policy settings.
* The :command:`file(GLOB)` and :command:`file(GLOB_RECURSE)` commands
learned a new flag ``CONFIGURE_DEPENDS`` which enables expression of
build system dependency on globbed directory's contents.
* The :command:`file(TOUCH)` and :command:`file(TOUCH_NOCREATE)` commands
were added to expose ``TOUCH`` functionality without having to use
CMake's command-line tool mode with :command:`execute_process`.
* The :command:`find_package` command now searches a prefix specified by
a ``PackageName_ROOT`` CMake or environment variable. Package roots are
maintained as a stack so nested calls to all ``find_*`` commands inside
find modules also search the roots as prefixes.
See policy :policy:`CMP0074`.
* The :command:`install` command learned an optional ``NAMELINK_COMPONENT``
parameter, which allows you to change the component for a shared library's
namelink. If none is specified, the value of ``COMPONENT`` is used by
default.
* The :command:`list` command learned a ``JOIN`` sub-command
to concatenate list's elements separated by a glue string.
* The :command:`list` command learned a ``SUBLIST`` sub-command
to get a sublist of the list.
* The :command:`list` command learned a ``TRANSFORM`` sub-command
to apply various string transformation to list's elements.
* The :command:`project` command learned an optional ``HOMEPAGE_URL``
parameter which has the effect of setting variables like
:variable:`PROJECT_HOMEPAGE_URL`, :variable:`<PROJECT-NAME>_HOMEPAGE_URL`
and :variable:`CMAKE_PROJECT_HOMEPAGE_URL`.
* The :command:`string` command learned a ``JOIN`` sub-command
to concatenate input strings separated by a glue string.
* :command:`target_compile_options` and :command:`add_compile_options`
commands gained a ``SHELL:`` prefix to specify a group of related
options using shell-like quoting.
* The :command:`target_link_libraries` command now supports
:ref:`Object Libraries`. Linking to an object library uses its object
files in direct dependents and also propagates usage requirements.
* The :command:`target_link_libraries` command may now be called
to modify targets created outside the current directory.
Variables
---------
* The :variable:`CMAKE_FOLDER` variable was added to initialize the
:prop_tgt:`FOLDER` property on all targets.
* The :variable:`CMAKE_DOTNET_TARGET_FRAMEWORK_VERSION` variable
was defined to initialize all
:prop_tgt:`DOTNET_TARGET_FRAMEWORK_VERSION` target properties.
* ``CMAKE_PROJECT_VERSION*`` variables have been introduced:
- :variable:`CMAKE_PROJECT_VERSION`
- :variable:`CMAKE_PROJECT_VERSION_MAJOR`
- :variable:`CMAKE_PROJECT_VERSION_MINOR`
- :variable:`CMAKE_PROJECT_VERSION_PATCH`
- :variable:`CMAKE_PROJECT_VERSION_TWEAK`
* The :variable:`CMAKE_SUPPRESS_REGENERATION` variable was extended to
support the :generator:`Ninja` and :ref:`Makefile Generators`.
It is also now documented.
* ``CMAKE_VS_SDK_*_DIRECTORIES`` variables were defined to tell
:ref:`Visual Studio Generators` for VS 2010 and above how to populate
fields in ``.vcxproj`` files that specify SDK directories. The
variables are:
- :variable:`CMAKE_VS_SDK_EXCLUDE_DIRECTORIES`
- :variable:`CMAKE_VS_SDK_EXECUTABLE_DIRECTORIES`
- :variable:`CMAKE_VS_SDK_INCLUDE_DIRECTORIES`
- :variable:`CMAKE_VS_SDK_LIBRARY_DIRECTORIES`
- :variable:`CMAKE_VS_SDK_LIBRARY_WINRT_DIRECTORIES`
- :variable:`CMAKE_VS_SDK_REFERENCE_DIRECTORIES`
- :variable:`CMAKE_VS_SDK_SOURCE_DIRECTORIES`
* A :variable:`MSVC_TOOLSET_VERSION` variable was added to provide the
MSVC toolset version associated with the current MSVC compiler version
in :variable:`MSVC_VERSION`.
Properties
----------
* The :prop_tgt:`COMMON_LANGUAGE_RUNTIME` target property was introduced
to configure the use of managed C++ for :ref:`Visual Studio Generators`
for VS 2010 and above.
A corresponding :prop_tgt:`IMPORTED_COMMON_LANGUAGE_RUNTIME` target
property was added to support ``C++/CLI`` for imported targets.
* The :prop_tgt:`DOTNET_TARGET_FRAMEWORK_VERSION` target property
was introduced as replacement for
:prop_tgt:`VS_DOTNET_TARGET_FRAMEWORK_VERSION`, which is considered
deprecated now.
* An :prop_tgt:`EXPORT_PROPERTIES` target property was added to specify a
custom list of target properties to include in targets exported by the
:command:`install(EXPORT)` and :command:`export` commands.
* The :prop_tgt:`PDB_OUTPUT_DIRECTORY` property learned to support
:manual:`generator expressions <cmake-generator-expressions(7)>`.
* A :prop_dir:`TESTS` directory property was added to hold the list of
tests defined by the :command:`add_test` command.
* A :prop_tgt:`VS_DEBUGGER_COMMAND` target property was created to set the
debugging command line with :ref:`Visual Studio Generators` for VS 2010
and above.
* HLSL source file properties :prop_sf:`VS_SHADER_DISABLE_OPTIMIZATIONS`
and :prop_sf:`VS_SHADER_ENABLE_DEBUG` gained support for generator
expressions.
* HLSL source file property :prop_sf:`VS_SHADER_OBJECT_FILE_NAME` has been
added to the :ref:`Visual Studio Generators` for VS 2010 and above.
The property specifies the file name of the compiled shader object.
Modules
-------
* The :module:`FindALSA` module now provides imported targets.
* The :module:`FindCURL` module now provides imported targets.
* The :module:`FindJPEG` module now provides imported targets.
* The :module:`FindLibXml2` module now provides imported targets.
* A :module:`FindODBC` module was added to find an Open Database Connectivity
(ODBC) library.
* The :module:`FindPkgConfig` module has learned to export the found
libraries with full path for direct consumption with the
:command:`target_link_libraries` command.
* New :module:`FindPython3` and :module:`FindPython2` modules, as well as
a new :module:`FindPython` module, have been added to provide a new way
to locate python environments.
* The :module:`UseSWIG` module gained a whole refresh and is now more
consistent with standard CMake commands to generate libraries and is
fully configurable through properties.
* The :module:`UseSWIG` module learned to manage multiple behaviors through
``UseSWIG_MODULE_VERSION`` variable to ensure legacy support as well as more
robust handling of ``SWIG`` advanced features (like ``%template``).
* The :module:`WriteCompilerDetectionHeader` module gained a ``BARE_FEATURES``
option to add a compatibility define for the exact keyword of a new language
feature.
Generator Expressions
---------------------
* A new ``$<GENEX_EVAL:...>`` and ``$<TARGET_GENEX_EVAL:target,...>``
:manual:`generator expression <cmake-generator-expressions(7)>`
has been added to enable consumption of generator expressions whose
evaluation results itself in generator expressions.
* A new ``$<IN_LIST:...>``
:manual:`generator expression <cmake-generator-expressions(7)>`
has been added.
* A new ``$<TARGET_EXISTS:...>``
:manual:`generator expression <cmake-generator-expressions(7)>`
has been added.
* A new ``$<TARGET_NAME_IF_EXISTS:...>``
:manual:`generator expression <cmake-generator-expressions(7)>`
has been added.
CTest
-----
* The :command:`ctest_start` command has been reworked so that you can simply
call ``ctest_start(APPEND)`` and it will read all the needed information from
the TAG file. The argument parsing has also been relaxed so that the order of
the arguments is less significant.
* A :prop_test:`PROCESSOR_AFFINITY` test property was added to request
that CTest run a test with CPU affinity for a set of processors
disjoint from other concurrently running tests with the property set.
CPack
-----
* The :module:`CPack` module now uses variables
:variable:`CMAKE_PROJECT_VERSION_MAJOR`,
:variable:`CMAKE_PROJECT_VERSION_MINOR` and
:variable:`CMAKE_PROJECT_VERSION_PATCH`
to initialize corresponding CPack variables.
* :manual:`cpack(1)` gained basic support for `NuGet`_.
See the :module:`CPackNuGet` module.
.. _NuGet: https://docs.microsoft.com/en-us/nuget/what-is-nuget
Other
-----
* The :manual:`Compile Features <cmake-compile-features(7)>` functionality
is now aware of C++ 20. No specific features are yet enumerated besides
the ``cxx_std_20`` meta-feature.
* The :manual:`Compile Features <cmake-compile-features(7)>` functionality
is now aware of the availability of C features in MSVC since VS 2010.
* The :manual:`Compile Features <cmake-compile-features(7)>` functionality
is now aware of C language standards supported by Texas Instruments C
compilers.
Deprecated and Removed Features
===============================
* The :generator:`Visual Studio 8 2005` generator has been removed.
* CMake no longer produces ``<tgt>_LIB_DEPENDS`` cache entries
for library targets. See policy :policy:`CMP0073`.
Other Changes
=============
* Include flags for directories marked as ``SYSTEM`` are now moved after
non-system directories. The ``-isystem`` flag does this automatically,
so moving them explicitly to the end makes the behavior consistent on
compilers that do not have any ``-isystem`` flag.
* Fortran dependency scanning now supports dependencies implied by
`Fortran Submodules`_.
* The existence and functionality of the file
``${CMAKE_BINARY_DIR}/cmake_install.cmake`` has now been documented in the
:command:`install` documentation so that external packaging software can take
advantage of CPack-style component installs.
* The :module:`CheckIncludeFile` module ``check_include_file`` macro
learned to honor the ``CMAKE_REQUIRED_LIBRARIES`` variable.
See policy :policy:`CMP0075`.
* The :module:`CheckIncludeFileCXX` module ``check_include_file_cxx`` macro
learned to honor the ``CMAKE_REQUIRED_LIBRARIES`` variable.
See policy :policy:`CMP0075`.
* The :module:`CheckIncludeFiles` module ``check_include_files`` macro
learned to honor the ``CMAKE_REQUIRED_LIBRARIES`` variable.
See policy :policy:`CMP0075`.
* The :manual:`cmake(1)` ``-E copy_directory`` tool now fails when the
source directory does not exist. Previously it succeeded by creating
an empty destination directory.
* The :module:`UseSWIG` module :command:`swig_add_library` command
(and legacy ``swig_add_module`` command) now set the prefix of
Java modules to ``""`` for MINGW, MSYS, and CYGWIN environments.
.. _`Fortran Submodules`: http://fortranwiki.org/fortran/show/Submodules

View File

@@ -1,14 +0,0 @@
CheckIncludeFile-required-libs
------------------------------
* The :module:`CheckIncludeFile` module ``check_include_file`` macro
learned to honor the ``CMAKE_REQUIRED_LIBRARIES`` variable.
See policy :policy:`CMP0075`.
* The :module:`CheckIncludeFileCXX` module ``check_include_file_cxx`` macro
learned to honor the ``CMAKE_REQUIRED_LIBRARIES`` variable.
See policy :policy:`CMP0075`.
* The :module:`CheckIncludeFiles` module ``check_include_files`` macro
learned to honor the ``CMAKE_REQUIRED_LIBRARIES`` variable.
See policy :policy:`CMP0075`.

View File

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

View File

@@ -1,5 +0,0 @@
FindODBC-module
---------------
* A :module:`FindODBC` module was added to find an Open Database Connectivity
(ODBC) library.

View File

@@ -1,6 +0,0 @@
FindPkgConfig-LINK_LIBRARIES
----------------------------
* The :module:`FindPkgConfig` module has learned to export the found libraries
with full path for direct consumption with the :command:`target_link_libraries`
command.

View File

@@ -1,5 +0,0 @@
FindPython(2|3)
---------------
* The new :module:`FindPython3` and :module:`FindPython2` modules, as well as
:module:`FindPython`, provide a new way to locate python environments.

View File

@@ -1,5 +0,0 @@
PDBDirectoryGenExpression
-------------------------
* The :prop_tgt:`PDB_OUTPUT_DIRECTORY` property learned to support
:manual:`generator expressions <cmake-generator-expressions(7)>`.

View File

@@ -1,6 +0,0 @@
UseSWIG-multiple-behaviors
--------------------------
* The :module:`UseSWIG` module learned to manage multiple behaviors through
``UseSWIG_MODULE_VERSION`` variable to ensure legacy support as well as more
robust handling of ``SWIG`` advanced features (like ``%template``).

View File

@@ -1,6 +0,0 @@
UseSWIG-fix-library-prefix
--------------------------
* The :module:`UseSWIG` module :command:`swig_add_library` command
(and legacy ``swig_add_module`` command) now set the prefix of
Java modules to ``""`` for MINGW, MSYS, and CYGWIN environments.

View File

@@ -1,6 +0,0 @@
UseSWIG-modernize-module
------------------------
* The :module:`UseSWIG` gained a whole refresh and is now more consistent with
standard CMake commands to generate libraries and is fully configurable through
properties.

View File

@@ -1,4 +0,0 @@
alsa-target
-----------
* The :module:`FindALSA` module now provides imported targets.

View File

@@ -1,5 +0,0 @@
avoid-LIB_DEPENDS
-----------------
* CMake no longer produces ``<tgt>_LIB_DEPENDS`` cache entries
for library targets. See policy :policy:`CMP0073`.

View File

@@ -1,7 +0,0 @@
cmake-install-doc
-----------------
* The existence and functionality of the file
``${CMAKE_BINARY_DIR}/cmake_install.cmake`` has now been documented in the
:command:`install` documentation so that external packaging software can take
advantage of CPack-style component installs.

View File

@@ -1,5 +0,0 @@
command-add_compile_definitions
-------------------------------
* The :command:`add_compile_definitions` command was added to set preprocessor
definitions at directory level. This supersedes :command:`add_definitions`.

View File

@@ -1,6 +0,0 @@
compile-options-shell
---------------------
* :command:`target_compile_options` and :command:`add_compile_options`
commands gained a ``SHELL:`` prefix to specify a group of related
options using shell-like quoting.

View File

@@ -1,6 +0,0 @@
copy_directory
--------------
* The :manual:`cmake(1)` ``-E copy_directory`` tool now fails when the
source directory does not exist. Previously it succeeded by creating
an empty destination directory.

View File

@@ -1,7 +0,0 @@
cpack-nuget
-----------
* :manual:`cpack(1)` gained basic support for `NuGet`_.
See the :module:`CPackNuGet` module.
.. _NuGet: https://docs.microsoft.com/en-us/nuget/what-is-nuget

View File

@@ -1,10 +0,0 @@
cpack-use-project-version
-------------------------
* Introduce :variable:`CMAKE_PROJECT_VERSION` and the corresponding components:
:variable:`CMAKE_PROJECT_VERSION_MAJOR`, :variable:`CMAKE_PROJECT_VERSION_MINOR`,
:variable:`CMAKE_PROJECT_VERSION_PATCH` and :variable:`CMAKE_PROJECT_VERSION_TWEAK`.
* :module:`CPack` module use :variable:`CMAKE_PROJECT_VERSION_MAJOR`,
:variable:`CMAKE_PROJECT_VERSION_MINOR` and :variable:`CMAKE_PROJECT_VERSION_PATCH`
to initialize corresponding CPack variables.

View File

@@ -1,6 +0,0 @@
ctest-affinity
--------------
* A :prop_test:`PROCESSOR_AFFINITY` test property was added to request
that CTest run a test with CPU affinity for a set of processors
disjoint from other concurrently running tests with the property set.

View File

@@ -1,7 +0,0 @@
ctest-start-args-rework
-----------------------
* The :command:`ctest_start` command has been reworked so that you can simply
call ``ctest_start(APPEND)`` and it will read all the needed information from
the TAG file. The argument parsing has also been relaxed so that the order of
the arguments is less significant.

View File

@@ -1,4 +0,0 @@
curl-target
-----------
* The :module:`FindCURL` module now provides imported targets.

View File

@@ -1,5 +0,0 @@
directory-property-TESTS
------------------------
* The :prop_dir:`TESTS` directory property was added to hold the list of tests defined by
command :command:`add_test`.

View File

@@ -1,11 +0,0 @@
dotnet-target-fw-initialization
-------------------------------
* The :prop_tgt:`DOTNET_TARGET_FRAMEWORK_VERSION` target property
was introduced as replacement for
:prop_tgt:`VS_DOTNET_TARGET_FRAMEWORK_VERSION`, which is considered
deprecated now.
* The :variable:`CMAKE_DOTNET_TARGET_FRAMEWORK_VERSION` variable
was defined to initialize all
:prop_tgt:`DOTNET_TARGET_FRAMEWORK_VERSION` target properties.

View File

@@ -1,6 +0,0 @@
EXPORT_PROPERTIES
-----------------
* An :prop_tgt:`EXPORT_PROPERTIES` target property was added to specify a
custom list of target properties to include in targets exported by the
:command:`install(EXPORT)` and :command:`export` commands.

View File

@@ -1,6 +0,0 @@
features-c++20
--------------
* The :manual:`Compile Features <cmake-compile-features(7)>` functionality
is now aware of C++ 20. No specific features are yet enumerated besides
the ``cxx_std_20`` meta-feature.

View File

@@ -1,5 +0,0 @@
features-msvc-c
---------------
* The :manual:`Compile Features <cmake-compile-features(7)>` functionality
is now aware of the availability of C features in MSVC since VS 2010.

View File

@@ -1,6 +0,0 @@
file_cmd_touch
------------------
* The :command:`file(TOUCH)` and :command:`file(TOUCH_NOCREATE)` commands
were added to expose TOUCH functionality without having to use CMake's
command-line tool mode with :command:`execute_process`.

View File

@@ -1,8 +0,0 @@
find-package_root-restore
-------------------------
* The :command:`find_package` command now searches a prefix specified by
a ``PackageName_ROOT`` CMake or environment variable. Package roots are
maintained as a stack so nested calls to all ``find_*`` commands inside
find modules also search the roots as prefixes.
See policy :policy:`CMP0074`.

View File

@@ -1,7 +0,0 @@
fortran-submodule-depends
-------------------------
* Fortran dependency scanning now supports dependencies implied by
`Fortran Submodules`_.
.. _`Fortran Submodules`: http://fortranwiki.org/fortran/show/Submodules

View File

@@ -1,7 +0,0 @@
genex-GENEX_EVAL
----------------
* New ``$<GENEX_EVAL:...>`` and ``$<TARGET_GENEX_EVAL:target,...>``
:manual:`generator expression <cmake-generator-expressions(7)>`
had been added to enable consumption of generator expressions whose
evaluation results itself in generator expressions.

View File

@@ -1,5 +0,0 @@
genex-IN_LIST-logical-operator
------------------------------
* A new ``$<IN_LIST:...>`` :manual:`generator expression <cmake-generator-expressions(7)>`
has been added.

View File

@@ -1,6 +0,0 @@
genex-TARGET_EXISTS
-------------------
* A new ``$<TARGET_EXISTS:...>``
:manual:`generator expression <cmake-generator-expressions(7)>`
has been added.

View File

@@ -1,6 +0,0 @@
genex-TARGET_NAME_IF_EXISTS
---------------------------
* A new ``$<TARGET_NAME_IF_EXISTS:...>``
:manual:`generator expression <cmake-generator-expressions(7)>`
has been added.

View File

@@ -1,6 +0,0 @@
glob_configure_depends
----------------------
* The :command:`file(GLOB)` and :command:`file(GLOB_RECURSE)` commands
learned a new flag ``CONFIGURE_DEPENDS`` which enables expression of
build system dependency on globbed directory's contents.

View File

@@ -1,4 +0,0 @@
libxml2-target
--------------
* The :module:`FindLibXml2` module now provides imported targets.

View File

@@ -1,5 +0,0 @@
list-join
---------
* The :command:`list` command learned a ``JOIN`` sub-command
to concatenate list's elements separated by a glue string.

View File

@@ -1,5 +0,0 @@
list-sublist
------------
* The :command:`list` command learned a ``SUBLIST`` sub-command
to get a sublist of the list.

View File

@@ -1,5 +0,0 @@
list-transform
--------------
* The :command:`list` command learned a ``TRANSFORM`` sub-command
to apply various string transformation to list's elements.

View File

@@ -1,8 +0,0 @@
target property COMMON_LANGUAGE_RUNTIME
---------------------------------------
* The :prop_tgt:`COMMON_LANGUAGE_RUNTIME` target property was introduced
to configure the use of managed C++ for :ref:`Visual Studio Generators`
for VS 2010 and above.
* To support ``C++/CLI`` for imported targets, the
:prop_tgt:`IMPORTED_COMMON_LANGUAGE_RUNTIME` was added.

View File

@@ -1,6 +0,0 @@
msvc-toolset-version-variable
-----------------------------
* A :variable:`MSVC_TOOLSET_VERSION` variable was added to provide the
MSVC toolset version associated with the current MSVC compiler version
in :variable:`MSVC_VERSION`.

View File

@@ -1,7 +0,0 @@
namelink-component
------------------
* The :command:`install` command learned an optional ``NAMELINK_COMPONENT``
parameter, which allows you to change the component for a shared library's
namelink. If none is specified, the value of ``COMPONENT`` is used by
default.

View File

@@ -1,6 +0,0 @@
object-library-linking
----------------------
* The :command:`target_link_libraries` command now supports
:ref:`Object Libraries`. Linking to an object library uses its object
files in direct dependents and also propagates usage requirements.

View File

@@ -1,6 +0,0 @@
parallel_build_option
---------------------
* The :manual:`cmake(1)` :ref:`Build Tool Mode` (``cmake --build``) gained
``--parallel [<jobs>]`` and ``-j [<jobs>]`` options to specify a parallel
build level. They map to corresponding options of the native build tool.

View File

@@ -1,8 +0,0 @@
policy-version-range
--------------------
* The :command:`cmake_minimum_required` and :command:`cmake_policy(VERSION)`
commands now accept a version range using the form ``<min>[...<max>]``.
The ``<min>`` version is required but policies are set based on the
``<max>`` version. This allows projects to specify a range of versions
for which they have been updated and avoid explicit policy settings.

View File

@@ -1,7 +0,0 @@
project-homepage
----------------
* The :command:`project` command learned an optional ``HOMEPAGE_URL``
parameter which has the effect of setting variables like
:variable:`PROJECT_HOMEPAGE_URL`, :variable:`<PROJECT-NAME>_HOMEPAGE_URL`
and :variable:`CMAKE_PROJECT_HOMEPAGE_URL`.

View File

@@ -1,4 +0,0 @@
remove-vs8-generator
--------------------
* The :generator:`Visual Studio 8 2005` generator has been removed.

View File

@@ -1,7 +0,0 @@
reorder-sys-includes
--------------------
* Include directories marked as ``SYSTEM`` are now moved after non-system
directories. The ``-isystem`` flag does this automatically, so moving
them explicitly to the end makes the behavior consistent on compilers
that do not have any ``-isystem`` flag.

View File

@@ -1,5 +0,0 @@
string-join
-----------
* The :command:`string` command learned a ``JOIN`` sub-command
to concatenate input strings separated by a glue string.

View File

@@ -1,5 +0,0 @@
subdirectory-linking
--------------------
* The :command:`target_link_libraries` command may now be called
to modify targets created outside the current directory.

View File

@@ -1,6 +0,0 @@
ti-c-standard
-------------
* The :manual:`Compile Features <cmake-compile-features(7)>` functionality
is now aware of C language standards supported by Texas Instruments C
compilers.

View File

@@ -1,5 +0,0 @@
variable-CMAKE_FOLDER
---------------------
* The :variable:`CMAKE_FOLDER` variable was added to initialize the
:prop_tgt:`FOLDER` property on all targets.

View File

@@ -1,6 +0,0 @@
variable-CMAKE_SUPPRESS_REGENERATION
------------------------------------
* The :variable:`CMAKE_SUPPRESS_REGENERATION` variable was extended to support the
:generator:`Ninja` and :ref:`Makefile Generators`.
* The :variable:`CMAKE_SUPPRESS_REGENERATION` variable is now documented.

View File

@@ -1,6 +0,0 @@
vs-debugger-configuration
-------------------------
* For the :ref:`Visual Studio Generators` for VS 2010 and above
the debugging command line can be set using a new
:prop_tgt:`VS_DEBUGGER_COMMAND` target property.

View File

@@ -1,6 +0,0 @@
vs-hlsl-object-name
-------------------
* HLSL source file property :prop_sf:`VS_SHADER_OBJECT_FILE_NAME` has been
added to the :ref:`Visual Studio Generators` for VS 2010 and above.
The property specifies the file name of the compiled shader object.

View File

@@ -1,15 +0,0 @@
vs-sdk-dirs
-----------
* ``CMAKE_VS_SDK_*_DIRECTORIES`` variables were defined to tell
:ref:`Visual Studio Generators` for VS 2010 and above how to populate
fields in ``.vcxproj`` files that specify SDK directories. The
variables are:
- :variable:`CMAKE_VS_SDK_EXCLUDE_DIRECTORIES`
- :variable:`CMAKE_VS_SDK_EXECUTABLE_DIRECTORIES`
- :variable:`CMAKE_VS_SDK_INCLUDE_DIRECTORIES`
- :variable:`CMAKE_VS_SDK_LIBRARY_DIRECTORIES`
- :variable:`CMAKE_VS_SDK_LIBRARY_WINRT_DIRECTORIES`
- :variable:`CMAKE_VS_SDK_REFERENCE_DIRECTORIES`
- :variable:`CMAKE_VS_SDK_SOURCE_DIRECTORIES`

View File

@@ -1,8 +0,0 @@
vs-shader-generator-expressions
-------------------------------
* Added support for generator expressions for the following source file
properties:
- :prop_sf:`VS_SHADER_DISABLE_OPTIMIZATIONS`
- :prop_sf:`VS_SHADER_ENABLE_DEBUG`

View File

@@ -1,7 +0,0 @@
vs-toolset-version
------------------
* The :ref:`Visual Studio Generators` for VS 2017 learned to support a
``version=14.##`` option in the :variable:`CMAKE_GENERATOR_TOOLSET`
value (e.g. via the :manual:`cmake(1)` ``-T`` option) to specify a
toolset version number.

View File

@@ -1,6 +0,0 @@
wcdh-raw-features
-----------------
* The :module:`WriteCompilerDetectionHeader` module now supports the
``BARE_FEATURES`` argument which allows to add a compatibility define for
the exact keyword of a new language feature.

View File

@@ -15,6 +15,7 @@ Releases
.. toctree::
:maxdepth: 1
3.12 <3.12>
3.11 <3.11>
3.10 <3.10>
3.9 <3.9>