mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-02 03:39:43 -06:00
Help: Consolidate 3.12 release notes
Run the `Utilities/Release/consolidate-relnotes.bash` script to move notes from `Help/release/dev/*` into `Help/release/3.12.rst`.
This commit is contained in:
255
Help/release/3.12.rst
Normal file
255
Help/release/3.12.rst
Normal file
@@ -0,0 +1,255 @@
|
||||
CMake 3.12 Release Notes
|
||||
************************
|
||||
|
||||
.. only:: html
|
||||
|
||||
.. contents::
|
||||
|
||||
Changes made since CMake 3.11 include the following.
|
||||
|
||||
* The :module:`FindALSA` module now provides imported targets.
|
||||
|
||||
* CMake no longer produces ``<tgt>_LIB_DEPENDS`` cache entries
|
||||
for library targets. See policy :policy:`CMP0073`.
|
||||
|
||||
* 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 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 :command:`add_compile_definitions` command was added to set preprocessor
|
||||
definitions at directory level. This supersedes :command:`add_definitions`.
|
||||
|
||||
* :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 :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.
|
||||
|
||||
* :manual:`cpack(1)` gained basic support for `NuGet`_.
|
||||
See the :module:`CPackNuGet` module.
|
||||
|
||||
.. _NuGet: https://docs.microsoft.com/en-us/nuget/what-is-nuget
|
||||
|
||||
* 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.
|
||||
|
||||
* 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.
|
||||
|
||||
* 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.
|
||||
|
||||
* The :module:`FindCURL` module now provides imported targets.
|
||||
|
||||
* The :prop_dir:`TESTS` directory property was added to hold the list of tests defined by
|
||||
command :command:`add_test`.
|
||||
|
||||
* 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.
|
||||
|
||||
* 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 :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 :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 :module:`FindJPEG` module now provides imported targets.
|
||||
|
||||
* A :module:`FindODBC` module was added to find an Open Database Connectivity
|
||||
(ODBC) library.
|
||||
|
||||
* 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 :module:`FindPkgConfig` module has learned to export the found libraries
|
||||
with full path for direct consumption with the :command:`target_link_libraries`
|
||||
command.
|
||||
|
||||
* The new :module:`FindPython3` and :module:`FindPython2` modules, as well as
|
||||
:module:`FindPython`, provide a new way to locate python environments.
|
||||
|
||||
* Fortran dependency scanning now supports dependencies implied by
|
||||
`Fortran Submodules`_.
|
||||
|
||||
.. _`Fortran Submodules`: http://fortranwiki.org/fortran/show/Submodules
|
||||
|
||||
* 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.
|
||||
|
||||
* 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.
|
||||
|
||||
* 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 :module:`FindLibXml2` module now provides imported targets.
|
||||
|
||||
* 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 :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.
|
||||
|
||||
* 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`.
|
||||
|
||||
* 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:`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 :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.
|
||||
|
||||
* The :prop_tgt:`PDB_OUTPUT_DIRECTORY` property learned to support
|
||||
:manual:`generator expressions <cmake-generator-expressions(7)>`.
|
||||
|
||||
* 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:`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 :generator:`Visual Studio 8 2005` generator has been removed.
|
||||
|
||||
* 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.
|
||||
|
||||
* The :command:`string` command learned a ``JOIN`` sub-command
|
||||
to concatenate input strings separated by a glue string.
|
||||
|
||||
* The :command:`target_link_libraries` command may now be called
|
||||
to modify targets created outside the current directory.
|
||||
|
||||
* The :manual:`Compile Features <cmake-compile-features(7)>` functionality
|
||||
is now aware of C language standards supported by Texas Instruments C
|
||||
compilers.
|
||||
|
||||
* 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.
|
||||
|
||||
* 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.
|
||||
|
||||
* 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 :variable:`CMAKE_FOLDER` variable was added to initialize the
|
||||
:prop_tgt:`FOLDER` property on all targets.
|
||||
|
||||
* 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.
|
||||
|
||||
* 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.
|
||||
|
||||
* 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.
|
||||
|
||||
* ``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`
|
||||
|
||||
* Added support for generator expressions for the following source file
|
||||
properties:
|
||||
|
||||
- :prop_sf:`VS_SHADER_DISABLE_OPTIMIZATIONS`
|
||||
- :prop_sf:`VS_SHADER_ENABLE_DEBUG`
|
||||
|
||||
* 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.
|
||||
|
||||
* 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.
|
||||
@@ -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`.
|
||||
@@ -1,4 +0,0 @@
|
||||
FindJPEG-imported-targets
|
||||
-------------------------
|
||||
|
||||
* The :module:`FindJPEG` module now provides imported targets.
|
||||
@@ -1,5 +0,0 @@
|
||||
FindODBC-module
|
||||
---------------
|
||||
|
||||
* A :module:`FindODBC` module was added to find an Open Database Connectivity
|
||||
(ODBC) library.
|
||||
@@ -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.
|
||||
@@ -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.
|
||||
@@ -1,5 +0,0 @@
|
||||
PDBDirectoryGenExpression
|
||||
-------------------------
|
||||
|
||||
* The :prop_tgt:`PDB_OUTPUT_DIRECTORY` property learned to support
|
||||
:manual:`generator expressions <cmake-generator-expressions(7)>`.
|
||||
@@ -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``).
|
||||
@@ -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.
|
||||
@@ -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.
|
||||
@@ -1,4 +0,0 @@
|
||||
alsa-target
|
||||
-----------
|
||||
|
||||
* The :module:`FindALSA` module now provides imported targets.
|
||||
@@ -1,5 +0,0 @@
|
||||
avoid-LIB_DEPENDS
|
||||
-----------------
|
||||
|
||||
* CMake no longer produces ``<tgt>_LIB_DEPENDS`` cache entries
|
||||
for library targets. See policy :policy:`CMP0073`.
|
||||
@@ -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.
|
||||
@@ -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`.
|
||||
@@ -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.
|
||||
@@ -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.
|
||||
@@ -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
|
||||
@@ -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.
|
||||
@@ -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.
|
||||
@@ -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.
|
||||
@@ -1,4 +0,0 @@
|
||||
curl-target
|
||||
-----------
|
||||
|
||||
* The :module:`FindCURL` module now provides imported targets.
|
||||
@@ -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`.
|
||||
@@ -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.
|
||||
@@ -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.
|
||||
@@ -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.
|
||||
@@ -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.
|
||||
@@ -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`.
|
||||
@@ -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`.
|
||||
@@ -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
|
||||
@@ -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.
|
||||
@@ -1,5 +0,0 @@
|
||||
genex-IN_LIST-logical-operator
|
||||
------------------------------
|
||||
|
||||
* A new ``$<IN_LIST:...>`` :manual:`generator expression <cmake-generator-expressions(7)>`
|
||||
has been added.
|
||||
@@ -1,6 +0,0 @@
|
||||
genex-TARGET_EXISTS
|
||||
-------------------
|
||||
|
||||
* A new ``$<TARGET_EXISTS:...>``
|
||||
:manual:`generator expression <cmake-generator-expressions(7)>`
|
||||
has been added.
|
||||
@@ -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.
|
||||
@@ -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.
|
||||
@@ -1,4 +0,0 @@
|
||||
libxml2-target
|
||||
--------------
|
||||
|
||||
* The :module:`FindLibXml2` module now provides imported targets.
|
||||
@@ -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.
|
||||
@@ -1,5 +0,0 @@
|
||||
list-sublist
|
||||
------------
|
||||
|
||||
* The :command:`list` command learned a ``SUBLIST`` sub-command
|
||||
to get a sublist of the list.
|
||||
@@ -1,5 +0,0 @@
|
||||
list-transform
|
||||
--------------
|
||||
|
||||
* The :command:`list` command learned a ``TRANSFORM`` sub-command
|
||||
to apply various string transformation to list's elements.
|
||||
@@ -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.
|
||||
@@ -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`.
|
||||
@@ -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.
|
||||
@@ -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.
|
||||
@@ -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.
|
||||
@@ -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.
|
||||
@@ -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`.
|
||||
@@ -1,4 +0,0 @@
|
||||
remove-vs8-generator
|
||||
--------------------
|
||||
|
||||
* The :generator:`Visual Studio 8 2005` generator has been removed.
|
||||
@@ -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.
|
||||
@@ -1,5 +0,0 @@
|
||||
string-join
|
||||
-----------
|
||||
|
||||
* The :command:`string` command learned a ``JOIN`` sub-command
|
||||
to concatenate input strings separated by a glue string.
|
||||
@@ -1,5 +0,0 @@
|
||||
subdirectory-linking
|
||||
--------------------
|
||||
|
||||
* The :command:`target_link_libraries` command may now be called
|
||||
to modify targets created outside the current directory.
|
||||
@@ -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.
|
||||
@@ -1,5 +0,0 @@
|
||||
variable-CMAKE_FOLDER
|
||||
---------------------
|
||||
|
||||
* The :variable:`CMAKE_FOLDER` variable was added to initialize the
|
||||
:prop_tgt:`FOLDER` property on all targets.
|
||||
@@ -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.
|
||||
@@ -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.
|
||||
@@ -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.
|
||||
@@ -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`
|
||||
@@ -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`
|
||||
@@ -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.
|
||||
@@ -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.
|
||||
@@ -15,6 +15,7 @@ Releases
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
3.12 <3.12>
|
||||
3.11 <3.11>
|
||||
3.10 <3.10>
|
||||
3.9 <3.9>
|
||||
|
||||
Reference in New Issue
Block a user