mirror of
https://github.com/Kitware/CMake.git
synced 2026-02-18 13:10:17 -06:00
@@ -203,6 +203,8 @@ Package
|
||||
|
||||
.. variable:: CPACK_IFW_PACKAGE_RESOURCES
|
||||
|
||||
.. versionadded:: 3.7
|
||||
|
||||
List of additional resources ('.qrc' files) to include in the installer
|
||||
binary.
|
||||
|
||||
@@ -273,6 +275,8 @@ These variables are cached, and may be configured if needed.
|
||||
|
||||
.. variable:: CPACK_IFW_ARCHIVEGEN_EXECUTABLE
|
||||
|
||||
.. versionadded:: 3.19
|
||||
|
||||
The path to ``archivegen``.
|
||||
|
||||
.. variable:: CPACK_IFW_BINARYCREATOR_EXECUTABLE
|
||||
|
||||
@@ -13,5 +13,8 @@ configuration run (including the first), the environment variable will be
|
||||
ignored if the :variable:`CMAKE_CUDA_HOST_COMPILER` variable is defined.
|
||||
|
||||
This environment variable is primarily meant for use with projects that
|
||||
enable ``CUDA`` as a first-class language. The :module:`FindCUDA`
|
||||
module will also use it to initialize its ``CUDA_HOST_COMPILER`` setting.
|
||||
enable ``CUDA`` as a first-class language.
|
||||
|
||||
.. versionadded:: 3.13
|
||||
The :module:`FindCUDA`
|
||||
module will use this variable to initialize its ``CUDA_HOST_COMPILER`` setting.
|
||||
|
||||
@@ -59,9 +59,10 @@ fix each one up according to its own list of prerequisites.
|
||||
Then clear all the keys and call ``verify_app`` on the final bundle to
|
||||
ensure that it is truly standalone.
|
||||
|
||||
As an optional parameter (``IGNORE_ITEM``) a list of file names can be passed,
|
||||
which are then ignored
|
||||
(e.g. ``IGNORE_ITEM "vcredist_x86.exe;vcredist_x64.exe"``).
|
||||
.. versionadded:: 3.6
|
||||
As an optional parameter (``IGNORE_ITEM``) a list of file names can be passed,
|
||||
which are then ignored
|
||||
(e.g. ``IGNORE_ITEM "vcredist_x86.exe;vcredist_x64.exe"``).
|
||||
|
||||
.. code-block:: cmake
|
||||
|
||||
@@ -78,9 +79,10 @@ Verifies that an application ``<app>`` appears valid based on running
|
||||
analysis tools on it. Calls :command:`message(FATAL_ERROR)` if the application
|
||||
is not verified.
|
||||
|
||||
As an optional parameter (``IGNORE_ITEM``) a list of file names can be passed,
|
||||
which are then ignored
|
||||
(e.g. ``IGNORE_ITEM "vcredist_x86.exe;vcredist_x64.exe"``)
|
||||
.. versionadded:: 3.6
|
||||
As an optional parameter (``IGNORE_ITEM``) a list of file names can be passed,
|
||||
which are then ignored
|
||||
(e.g. ``IGNORE_ITEM "vcredist_x86.exe;vcredist_x64.exe"``)
|
||||
|
||||
.. code-block:: cmake
|
||||
|
||||
@@ -155,9 +157,10 @@ them. Set values associated with each key such that we can loop over
|
||||
all of them and copy prerequisite libs into the bundle and then do
|
||||
appropriate ``install_name_tool`` fixups.
|
||||
|
||||
As an optional parameter (``IGNORE_ITEM``) a list of file names can be passed,
|
||||
which are then ignored
|
||||
(e.g. ``IGNORE_ITEM "vcredist_x86.exe;vcredist_x64.exe"``)
|
||||
.. versionadded:: 3.6
|
||||
As an optional parameter (``IGNORE_ITEM``) a list of file names can be passed,
|
||||
which are then ignored
|
||||
(e.g. ``IGNORE_ITEM "vcredist_x86.exe;vcredist_x64.exe"``)
|
||||
|
||||
.. code-block:: cmake
|
||||
|
||||
@@ -215,9 +218,10 @@ Verifies that the sum of all prerequisites of all files inside the
|
||||
bundle are contained within the bundle or are ``system`` libraries,
|
||||
presumed to exist everywhere.
|
||||
|
||||
As an optional parameter (``IGNORE_ITEM``) a list of file names can be passed,
|
||||
which are then ignored
|
||||
(e.g. ``IGNORE_ITEM "vcredist_x86.exe;vcredist_x64.exe"``)
|
||||
.. versionadded:: 3.6
|
||||
As an optional parameter (``IGNORE_ITEM``) a list of file names can be passed,
|
||||
which are then ignored
|
||||
(e.g. ``IGNORE_ITEM "vcredist_x86.exe;vcredist_x64.exe"``)
|
||||
|
||||
.. code-block:: cmake
|
||||
|
||||
|
||||
@@ -29,8 +29,9 @@ Graphviz package:
|
||||
|
||||
dot -Tpng -o foo.png foo.dot
|
||||
|
||||
The different dependency types ``PUBLIC``, ``INTERFACE`` and ``PRIVATE``
|
||||
are represented as solid, dashed and dotted edges.
|
||||
.. versionadded:: 3.10
|
||||
The different dependency types ``PUBLIC``, ``INTERFACE`` and ``PRIVATE``
|
||||
are represented as solid, dashed and dotted edges.
|
||||
|
||||
Variables specific to the Graphviz support
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -81,13 +81,14 @@ always relative to the installed location of the package. This works both for
|
||||
relative and also for absolute locations. For absolute locations it works
|
||||
only if the absolute location is a subdirectory of ``INSTALL_PREFIX``.
|
||||
|
||||
If the ``INSTALL_PREFIX`` argument is passed, this is used as base path to
|
||||
calculate all the relative paths. The ``<path>`` argument must be an absolute
|
||||
path. If this argument is not passed, the :variable:`CMAKE_INSTALL_PREFIX`
|
||||
variable will be used instead. The default value is good when generating a
|
||||
FooConfig.cmake file to use your package from the install tree. When
|
||||
generating a FooConfig.cmake file to use your package from the build tree this
|
||||
option should be used.
|
||||
.. versionadded:: 3.1
|
||||
If the ``INSTALL_PREFIX`` argument is passed, this is used as base path to
|
||||
calculate all the relative paths. The ``<path>`` argument must be an absolute
|
||||
path. If this argument is not passed, the :variable:`CMAKE_INSTALL_PREFIX`
|
||||
variable will be used instead. The default value is good when generating a
|
||||
FooConfig.cmake file to use your package from the install tree. When
|
||||
generating a FooConfig.cmake file to use your package from the build tree this
|
||||
option should be used.
|
||||
|
||||
By default ``configure_package_config_file`` also generates two helper macros,
|
||||
``set_and_check()`` and ``check_required_components()`` into the
|
||||
@@ -159,23 +160,28 @@ If your project has more elaborated version matching rules, you will need to
|
||||
write your own custom ``ConfigVersion.cmake`` file instead of using this
|
||||
macro.
|
||||
|
||||
.. note:: ``COMPATIBILITY_MODE`` ``AnyNewerVersion`` handles the version range
|
||||
.. versionadded:: 3.11
|
||||
The ``SameMinorVersion`` compatibility mode.
|
||||
|
||||
.. versionadded:: 3.14
|
||||
If ``ARCH_INDEPENDENT`` is given, the installed package version will be
|
||||
considered compatible even if it was built for a different architecture than
|
||||
the requested architecture. Otherwise, an architecture check will be performed,
|
||||
and the package will be considered compatible only if the architecture matches
|
||||
exactly. For example, if the package is built for a 32-bit architecture, the
|
||||
package is only considered compatible if it is used on a 32-bit architecture,
|
||||
unless ``ARCH_INDEPENDENT`` is given, in which case the package is considered
|
||||
compatible on any architecture.
|
||||
|
||||
.. note:: ``ARCH_INDEPENDENT`` is intended for header-only libraries or similar
|
||||
packages with no binaries.
|
||||
|
||||
.. versionadded:: 3.19
|
||||
``COMPATIBILITY_MODE`` ``AnyNewerVersion`` handles the version range
|
||||
if any is specified (see :command:`find_package` command for the details).
|
||||
All other modes are incompatible with version ranges and will display an
|
||||
author warning if one is specified.
|
||||
|
||||
If ``ARCH_INDEPENDENT`` is given, the installed package version will be
|
||||
considered compatible even if it was built for a different architecture than
|
||||
the requested architecture. Otherwise, an architecture check will be performed,
|
||||
and the package will be considered compatible only if the architecture matches
|
||||
exactly. For example, if the package is built for a 32-bit architecture, the
|
||||
package is only considered compatible if it is used on a 32-bit architecture,
|
||||
unless ``ARCH_INDEPENDENT`` is given, in which case the package is considered
|
||||
compatible on any architecture.
|
||||
|
||||
.. note:: ``ARCH_INDEPENDENT`` is intended for header-only libraries or similar
|
||||
packages with no binaries.
|
||||
|
||||
Internally, this macro executes :command:`configure_file()` to create the
|
||||
resulting version file. Depending on the ``COMPATIBILITY``, the corresponding
|
||||
``BasicConfigVersion-<COMPATIBILITY>.cmake.in`` file is used.
|
||||
|
||||
@@ -194,6 +194,8 @@ installers. The most commonly-used variables are:
|
||||
|
||||
.. variable:: CPACK_PACKAGE_CHECKSUM
|
||||
|
||||
.. versionadded:: 3.7
|
||||
|
||||
An algorithm that will be used to generate an additional file with the
|
||||
checksum of the package. The output file name will be::
|
||||
|
||||
@@ -271,6 +273,8 @@ installers. The most commonly-used variables are:
|
||||
|
||||
.. variable:: CPACK_VERBATIM_VARIABLES
|
||||
|
||||
.. versionadded:: 3.4
|
||||
|
||||
If set to ``TRUE``, values of variables prefixed with ``CPACK_`` will be
|
||||
escaped before being written to the configuration files, so that the cpack
|
||||
program receives them exactly as they were specified. If not, characters
|
||||
@@ -356,6 +360,8 @@ The following variables are for advanced uses of CPack:
|
||||
|
||||
.. variable:: CPACK_INSTALL_SCRIPTS
|
||||
|
||||
.. versionadded:: 3.16
|
||||
|
||||
Extra CMake scripts executed by CPack during its local staging
|
||||
installation. They are executed before installing the files to be packaged.
|
||||
The scripts are not called by a standalone install (e.g.: ``make install``).
|
||||
@@ -372,6 +378,8 @@ The following variables are for advanced uses of CPack:
|
||||
|
||||
.. variable:: CPACK_PRE_BUILD_SCRIPTS
|
||||
|
||||
.. versionadded:: 3.19
|
||||
|
||||
List of CMake scripts to execute after CPack has installed the files to
|
||||
be packaged into a staging directory and before producing the package(s)
|
||||
from those files. See also :variable:`CPACK_INSTALL_SCRIPTS` and
|
||||
@@ -379,6 +387,8 @@ The following variables are for advanced uses of CPack:
|
||||
|
||||
.. variable:: CPACK_POST_BUILD_SCRIPTS
|
||||
|
||||
.. versionadded:: 3.19
|
||||
|
||||
List of CMake scripts to execute after CPack has produced the resultant
|
||||
packages and before copying them back to the build directory.
|
||||
See also :variable:`CPACK_INSTALL_SCRIPTS`,
|
||||
@@ -386,6 +396,8 @@ The following variables are for advanced uses of CPack:
|
||||
|
||||
.. variable:: CPACK_PACKAGE_FILES
|
||||
|
||||
.. versionadded:: 3.19
|
||||
|
||||
List of package files created in the staging directory, with each file
|
||||
provided as a full absolute path. This variable is populated by CPack
|
||||
just before invoking the post-build scripts listed in
|
||||
|
||||
@@ -51,20 +51,28 @@ The module defines the following commands:
|
||||
of a group to which it belongs.
|
||||
|
||||
``ESSENTIAL``
|
||||
.. versionadded:: 3.6
|
||||
|
||||
if set, then the package manager stays disabled until that
|
||||
component is updated.
|
||||
|
||||
``VIRTUAL``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
if set, then the component will be hidden from the installer.
|
||||
It is a equivalent of the ``HIDDEN`` option from the
|
||||
:command:`cpack_add_component` command.
|
||||
|
||||
``FORCED_INSTALLATION``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
if set, then the component must always be installed.
|
||||
It is a equivalent of the ``REQUIRED`` option from the
|
||||
:command:`cpack_add_component` command.
|
||||
|
||||
``REQUIRES_ADMIN_RIGHTS``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
set it if the component needs to be installed with elevated permissions.
|
||||
|
||||
``NAME``
|
||||
@@ -72,14 +80,20 @@ The module defines the following commands:
|
||||
By default used origin component name.
|
||||
|
||||
``DISPLAY_NAME``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
set to rewrite original name configured by
|
||||
:command:`cpack_add_component` command.
|
||||
|
||||
``DESCRIPTION``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
set to rewrite original description configured by
|
||||
:command:`cpack_add_component` command.
|
||||
|
||||
``UPDATE_TEXT``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
will be added to the component description if this is an update to
|
||||
the component.
|
||||
|
||||
@@ -88,22 +102,32 @@ The module defines the following commands:
|
||||
By default used :variable:`CPACK_PACKAGE_VERSION`.
|
||||
|
||||
``RELEASE_DATE``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
keep empty to auto generate.
|
||||
|
||||
``SCRIPT``
|
||||
is a relative or absolute path to operations script
|
||||
for this component.
|
||||
|
||||
``PRIORITY`` | ``SORTING_PRIORITY``
|
||||
is priority of the component in the tree.
|
||||
The ``PRIORITY`` option is deprecated and will be removed in a future
|
||||
version of CMake. Please use ``SORTING_PRIORITY`` option instead.
|
||||
``SORTING_PRIORITY``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
is priority of the component in the tree.
|
||||
|
||||
``PRIORITY``
|
||||
.. deprecated:: 3.8
|
||||
Old name for ``SORTING_PRIORITY``.
|
||||
|
||||
``DEPENDS``, ``DEPENDENCIES``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
``DEPENDS`` | ``DEPENDENCIES``
|
||||
list of dependency component or component group identifiers in
|
||||
QtIFW style.
|
||||
|
||||
``AUTO_DEPEND_ON``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
list of identifiers of component or component group in QtIFW style
|
||||
that this component has an automatic dependency on.
|
||||
|
||||
@@ -112,21 +136,31 @@ The module defines the following commands:
|
||||
component. You can specify more then one license.
|
||||
|
||||
``DEFAULT``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
Possible values are: TRUE, FALSE, and SCRIPT.
|
||||
Set to FALSE to disable the component in the installer or to SCRIPT
|
||||
to resolved during runtime (don't forget add the file of the script
|
||||
as a value of the ``SCRIPT`` option).
|
||||
|
||||
``USER_INTERFACES``
|
||||
.. versionadded:: 3.7
|
||||
|
||||
is a list of <file_path> ('.ui' files) representing pages to load.
|
||||
|
||||
``TRANSLATIONS``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
is a list of <file_path> ('.qm' files) representing translations to load.
|
||||
|
||||
``REPLACES``
|
||||
.. versionadded:: 3.10
|
||||
|
||||
list of identifiers of component or component group to replace.
|
||||
|
||||
``CHECKABLE``
|
||||
.. versionadded:: 3.10
|
||||
|
||||
Possible values are: TRUE, FALSE.
|
||||
Set to FALSE if you want to hide the checkbox for an item.
|
||||
This is useful when only a few subcomponents should be selected
|
||||
@@ -162,13 +196,19 @@ The module defines the following commands:
|
||||
command.
|
||||
|
||||
``VIRTUAL``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
if set, then the group will be hidden from the installer.
|
||||
Note that setting this on a root component does not work.
|
||||
|
||||
``FORCED_INSTALLATION``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
if set, then the group must always be installed.
|
||||
|
||||
``REQUIRES_ADMIN_RIGHTS``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
set it if the component group needs to be installed with elevated
|
||||
permissions.
|
||||
|
||||
@@ -177,14 +217,20 @@ The module defines the following commands:
|
||||
By default used origin component group name.
|
||||
|
||||
``DISPLAY_NAME``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
set to rewrite original name configured by
|
||||
:command:`cpack_add_component_group` command.
|
||||
|
||||
``DESCRIPTION``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
set to rewrite original description configured by
|
||||
:command:`cpack_add_component_group` command.
|
||||
|
||||
``UPDATE_TEXT``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
will be added to the component group description if this is an update to
|
||||
the component group.
|
||||
|
||||
@@ -193,22 +239,30 @@ The module defines the following commands:
|
||||
By default used :variable:`CPACK_PACKAGE_VERSION`.
|
||||
|
||||
``RELEASE_DATE``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
keep empty to auto generate.
|
||||
|
||||
``SCRIPT``
|
||||
is a relative or absolute path to operations script
|
||||
for this component group.
|
||||
|
||||
``PRIORITY`` | ``SORTING_PRIORITY``
|
||||
``SORTING_PRIORITY``
|
||||
is priority of the component group in the tree.
|
||||
The ``PRIORITY`` option is deprecated and will be removed in a future
|
||||
version of CMake. Please use ``SORTING_PRIORITY`` option instead.
|
||||
|
||||
``DEPENDS`` | ``DEPENDENCIES``
|
||||
``PRIORITY``
|
||||
.. deprecated:: 3.8
|
||||
Old name for ``SORTING_PRIORITY``.
|
||||
|
||||
``DEPENDS``, ``DEPENDENCIES``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
list of dependency component or component group identifiers in
|
||||
QtIFW style.
|
||||
|
||||
``AUTO_DEPEND_ON``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
list of identifiers of component or component group in QtIFW style
|
||||
that this component group has an automatic dependency on.
|
||||
|
||||
@@ -217,6 +271,8 @@ The module defines the following commands:
|
||||
component group. You can specify more then one license.
|
||||
|
||||
``DEFAULT``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
Possible values are: TRUE, FALSE, and SCRIPT.
|
||||
Set to TRUE to preselect the group in the installer
|
||||
(this takes effect only on groups that have no visible child components)
|
||||
@@ -224,15 +280,23 @@ The module defines the following commands:
|
||||
the script as a value of the ``SCRIPT`` option).
|
||||
|
||||
``USER_INTERFACES``
|
||||
.. versionadded:: 3.7
|
||||
|
||||
is a list of <file_path> ('.ui' files) representing pages to load.
|
||||
|
||||
``TRANSLATIONS``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
is a list of <file_path> ('.qm' files) representing translations to load.
|
||||
|
||||
``REPLACES``
|
||||
.. versionadded:: 3.10
|
||||
|
||||
list of identifiers of component or component group to replace.
|
||||
|
||||
``CHECKABLE``
|
||||
.. versionadded:: 3.10
|
||||
|
||||
Possible values are: TRUE, FALSE.
|
||||
Set to FALSE if you want to hide the checkbox for an item.
|
||||
This is useful when only a few subcomponents should be selected
|
||||
@@ -272,6 +336,8 @@ The module defines the following commands:
|
||||
|
||||
.. command:: cpack_ifw_update_repository
|
||||
|
||||
.. versionadded:: 3.6
|
||||
|
||||
Update QtIFW specific repository from remote repository.
|
||||
|
||||
::
|
||||
@@ -307,6 +373,8 @@ The module defines the following commands:
|
||||
|
||||
.. command:: cpack_ifw_add_package_resources
|
||||
|
||||
.. versionadded:: 3.7
|
||||
|
||||
Add additional resources in the installer binary.
|
||||
|
||||
::
|
||||
|
||||
@@ -39,7 +39,10 @@ After generating this tar file, it can be sent to CDash for display with the
|
||||
upload to CDash. Relative paths will be interpreted with respect
|
||||
to the top-level build directory.
|
||||
|
||||
``TARBALL_COMPRESSION <option>`` Specify a compression algorithm for the
|
||||
``TARBALL_COMPRESSION <option>``
|
||||
.. versionadded:: 3.18
|
||||
|
||||
Specify a compression algorithm for the
|
||||
``TARBALL`` data file. Using this option reduces the size of the data file
|
||||
before it is submitted to CDash. ``<option>`` must be one of ``GZIP``,
|
||||
``BZIP2``, ``XZ``, ``ZSTD``, ``FROM_EXT``, or an expression that CMake
|
||||
@@ -68,15 +71,23 @@ After generating this tar file, it can be sent to CDash for display with the
|
||||
If not specified, the default option is just ``-b -x``.
|
||||
|
||||
``GLOB``
|
||||
.. versionadded:: 3.6
|
||||
|
||||
Recursively search for .gcda files in build_dir rather than
|
||||
determining search locations by reading TargetDirectories.txt.
|
||||
|
||||
``DELETE``
|
||||
.. versionadded:: 3.6
|
||||
|
||||
Delete coverage files after they've been packaged into the .tar.
|
||||
|
||||
``QUIET``
|
||||
Suppress non-error messages that otherwise would have been
|
||||
printed out by this function.
|
||||
|
||||
.. versionadded:: 3.3
|
||||
Added support for the :variable:`CTEST_CUSTOM_COVERAGE_EXCLUDE` variable.
|
||||
|
||||
#]=======================================================================]
|
||||
|
||||
function(ctest_coverage_collect_gcov)
|
||||
|
||||
@@ -24,9 +24,12 @@ long as your CMakeLists uses include(CTest) or
|
||||
include(CTestUseLaunchers), it will use the value of the ENV variable
|
||||
to initialize a CTEST_USE_LAUNCHERS cache variable. This cache
|
||||
variable initialization only occurs if CTEST_USE_LAUNCHERS is not
|
||||
already defined. If CTEST_USE_LAUNCHERS is on in a ctest -S script
|
||||
the ctest_configure command will add -DCTEST_USE_LAUNCHERS:BOOL=TRUE
|
||||
to the cmake command used to configure the project.
|
||||
already defined.
|
||||
|
||||
.. versionadded:: 3.8
|
||||
If CTEST_USE_LAUNCHERS is on in a ctest -S script
|
||||
the ctest_configure command will add -DCTEST_USE_LAUNCHERS:BOOL=TRUE
|
||||
to the cmake command used to configure the project.
|
||||
#]=======================================================================]
|
||||
|
||||
if(NOT DEFINED CTEST_USE_LAUNCHERS AND DEFINED ENV{CTEST_USE_LAUNCHERS_DEFAULT})
|
||||
|
||||
@@ -44,6 +44,8 @@ Check if given C source compiles and links into an executable.
|
||||
directory property will be ignored.
|
||||
|
||||
``CMAKE_REQUIRED_LINK_OPTIONS``
|
||||
.. versionadded:: 3.14
|
||||
|
||||
A :ref:`;-list <CMake Language Lists>` of options to add to the link
|
||||
command (see :command:`try_compile` for further details).
|
||||
|
||||
@@ -54,6 +56,8 @@ Check if given C source compiles and links into an executable.
|
||||
further details).
|
||||
|
||||
``CMAKE_REQUIRED_QUIET``
|
||||
.. versionadded:: 3.1
|
||||
|
||||
If this variable evaluates to a boolean true value, all status messages
|
||||
associated with the check will be suppressed.
|
||||
|
||||
|
||||
@@ -43,6 +43,8 @@ subsequently be run.
|
||||
directory property will be ignored.
|
||||
|
||||
``CMAKE_REQUIRED_LINK_OPTIONS``
|
||||
.. versionadded:: 3.14
|
||||
|
||||
A :ref:`;-list <CMake Language Lists>` of options to add to the link
|
||||
command (see :command:`try_run` for further details).
|
||||
|
||||
@@ -53,6 +55,8 @@ subsequently be run.
|
||||
further details).
|
||||
|
||||
``CMAKE_REQUIRED_QUIET``
|
||||
.. versionadded:: 3.1
|
||||
|
||||
If this variable evaluates to a boolean true value, all status messages
|
||||
associated with the check will be suppressed.
|
||||
|
||||
|
||||
@@ -44,6 +44,8 @@ Check if given C++ source compiles and links into an executable.
|
||||
directory property will be ignored.
|
||||
|
||||
``CMAKE_REQUIRED_LINK_OPTIONS``
|
||||
.. versionadded:: 3.14
|
||||
|
||||
A :ref:`;-list <CMake Language Lists>` of options to add to the link
|
||||
command (see :command:`try_compile` for further details).
|
||||
|
||||
@@ -54,6 +56,8 @@ Check if given C++ source compiles and links into an executable.
|
||||
further details).
|
||||
|
||||
``CMAKE_REQUIRED_QUIET``
|
||||
.. versionadded:: 3.1
|
||||
|
||||
If this variable evaluates to a boolean true value, all status messages
|
||||
associated with the check will be suppressed.
|
||||
|
||||
|
||||
@@ -43,6 +43,8 @@ subsequently be run.
|
||||
directory property will be ignored.
|
||||
|
||||
``CMAKE_REQUIRED_LINK_OPTIONS``
|
||||
.. versionadded:: 3.14
|
||||
|
||||
A :ref:`;-list <CMake Language Lists>` of options to add to the link
|
||||
command (see :command:`try_run` for further details).
|
||||
|
||||
@@ -53,6 +55,8 @@ subsequently be run.
|
||||
further details).
|
||||
|
||||
``CMAKE_REQUIRED_QUIET``
|
||||
.. versionadded:: 3.1
|
||||
|
||||
If this variable evaluates to a boolean true value, all status messages
|
||||
associated with the check will be suppressed.
|
||||
|
||||
|
||||
@@ -49,12 +49,14 @@ the way the check is run:
|
||||
a :ref:`;-list <CMake Language Lists>` of header search paths to pass to
|
||||
the compiler.
|
||||
``CMAKE_REQUIRED_LINK_OPTIONS``
|
||||
a :ref:`;-list <CMake Language Lists>` of options to add to the link command.
|
||||
.. versionadded:: 3.14
|
||||
a :ref:`;-list <CMake Language Lists>` of options to add to the link command.
|
||||
``CMAKE_REQUIRED_LIBRARIES``
|
||||
a :ref:`;-list <CMake Language Lists>` of libraries to add to the link
|
||||
command. See policy :policy:`CMP0075`.
|
||||
``CMAKE_REQUIRED_QUIET``
|
||||
execute quietly without messages.
|
||||
.. versionadded:: 3.1
|
||||
execute quietly without messages.
|
||||
|
||||
For example:
|
||||
|
||||
|
||||
@@ -24,8 +24,9 @@ The following variables may be set before calling this macro to modify
|
||||
the way the check is run:
|
||||
|
||||
``CMAKE_REQUIRED_LINK_OPTIONS``
|
||||
A :ref:`;-list <CMake Language Lists>` of options to add to the link
|
||||
command (see :command:`try_compile` for further details).
|
||||
.. versionadded:: 3.14
|
||||
A :ref:`;-list <CMake Language Lists>` of options to add to the link
|
||||
command (see :command:`try_compile` for further details).
|
||||
|
||||
``CMAKE_REQUIRED_LIBRARIES``
|
||||
A :ref:`;-list <CMake Language Lists>` of libraries to add to the link
|
||||
|
||||
@@ -65,6 +65,8 @@ Check if given Fortran source compiles and links into an executable.
|
||||
directory property will be ignored.
|
||||
|
||||
``CMAKE_REQUIRED_LINK_OPTIONS``
|
||||
.. versionadded:: 3.14
|
||||
|
||||
A :ref:`;-list <CMake Language Lists>` of options to add to the link
|
||||
command (see :command:`try_compile` for further details).
|
||||
|
||||
|
||||
@@ -28,12 +28,14 @@ way the check is run:
|
||||
a :ref:`;-list <CMake Language Lists>` of header search paths to pass to
|
||||
the compiler.
|
||||
``CMAKE_REQUIRED_LINK_OPTIONS``
|
||||
a :ref:`;-list <CMake Language Lists>` of options to add to the link command.
|
||||
.. versionadded:: 3.14
|
||||
a :ref:`;-list <CMake Language Lists>` of options to add to the link command.
|
||||
``CMAKE_REQUIRED_LIBRARIES``
|
||||
a :ref:`;-list <CMake Language Lists>` of libraries to add to the link
|
||||
command. See policy :policy:`CMP0075`.
|
||||
``CMAKE_REQUIRED_QUIET``
|
||||
execute quietly without messages.
|
||||
.. versionadded:: 3.1
|
||||
execute quietly without messages.
|
||||
|
||||
.. note::
|
||||
|
||||
|
||||
@@ -33,6 +33,9 @@ property.
|
||||
It makes no sense to use this module when :policy:`CMP0069` is set to ``OLD`` so
|
||||
module will return error in this case. See policy :policy:`CMP0069` for details.
|
||||
|
||||
.. versionadded:: 3.13
|
||||
Add support for Visual Studio generators.
|
||||
|
||||
Examples
|
||||
^^^^^^^^
|
||||
|
||||
|
||||
@@ -29,12 +29,14 @@ the way the check is run:
|
||||
a :ref:`;-list <CMake Language Lists>` of header search paths to pass to
|
||||
the compiler.
|
||||
``CMAKE_REQUIRED_LINK_OPTIONS``
|
||||
a :ref:`;-list <CMake Language Lists>` of options to add to the link command.
|
||||
.. versionadded:: 3.14
|
||||
a :ref:`;-list <CMake Language Lists>` of options to add to the link command.
|
||||
``CMAKE_REQUIRED_LIBRARIES``
|
||||
a :ref:`;-list <CMake Language Lists>` of libraries to add to the link
|
||||
command. See policy :policy:`CMP0075`.
|
||||
``CMAKE_REQUIRED_QUIET``
|
||||
execute quietly without messages.
|
||||
.. versionadded:: 3.1
|
||||
execute quietly without messages.
|
||||
|
||||
See the :module:`CheckIncludeFiles` module to check for multiple headers
|
||||
at once. See the :module:`CheckIncludeFileCXX` module to check for headers
|
||||
|
||||
@@ -29,12 +29,14 @@ the way the check is run:
|
||||
a :ref:`;-list <CMake Language Lists>` of header search paths to pass to
|
||||
the compiler.
|
||||
``CMAKE_REQUIRED_LINK_OPTIONS``
|
||||
a :ref:`;-list <CMake Language Lists>` of options to add to the link command.
|
||||
.. versionadded:: 3.14
|
||||
a :ref:`;-list <CMake Language Lists>` of options to add to the link command.
|
||||
``CMAKE_REQUIRED_LIBRARIES``
|
||||
a :ref:`;-list <CMake Language Lists>` of libraries to add to the link
|
||||
command. See policy :policy:`CMP0075`.
|
||||
``CMAKE_REQUIRED_QUIET``
|
||||
execute quietly without messages.
|
||||
.. versionadded:: 3.1
|
||||
execute quietly without messages.
|
||||
|
||||
See modules :module:`CheckIncludeFile` and :module:`CheckIncludeFiles`
|
||||
to check for one or more ``C`` headers.
|
||||
|
||||
@@ -35,12 +35,14 @@ the way the check is run:
|
||||
a :ref:`;-list <CMake Language Lists>` of header search paths to pass to
|
||||
the compiler.
|
||||
``CMAKE_REQUIRED_LINK_OPTIONS``
|
||||
a :ref:`;-list <CMake Language Lists>` of options to add to the link command.
|
||||
.. versionadded:: 3.14
|
||||
a :ref:`;-list <CMake Language Lists>` of options to add to the link command.
|
||||
``CMAKE_REQUIRED_LIBRARIES``
|
||||
a :ref:`;-list <CMake Language Lists>` of libraries to add to the link
|
||||
command. See policy :policy:`CMP0075`.
|
||||
``CMAKE_REQUIRED_QUIET``
|
||||
execute quietly without messages.
|
||||
.. versionadded:: 3.1
|
||||
execute quietly without messages.
|
||||
|
||||
See modules :module:`CheckIncludeFile` and :module:`CheckIncludeFileCXX`
|
||||
to check for a single header file in ``C`` or ``CXX`` languages.
|
||||
|
||||
@@ -26,13 +26,18 @@ Check if the function exists.
|
||||
The following variables may be set before calling this macro to modify
|
||||
the way the check is run:
|
||||
|
||||
::
|
||||
|
||||
CMAKE_REQUIRED_FLAGS = string of compile command line flags
|
||||
CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
|
||||
CMAKE_REQUIRED_LINK_OPTIONS = list of options to pass to link command
|
||||
CMAKE_REQUIRED_LIBRARIES = list of libraries to link
|
||||
CMAKE_REQUIRED_QUIET = execute quietly without messages
|
||||
``CMAKE_REQUIRED_FLAGS``
|
||||
string of compile command line flags.
|
||||
``CMAKE_REQUIRED_DEFINITIONS``
|
||||
list of macros to define (-DFOO=bar).
|
||||
``CMAKE_REQUIRED_LINK_OPTIONS``
|
||||
.. versionadded:: 3.14
|
||||
list of options to pass to link command.
|
||||
``CMAKE_REQUIRED_LIBRARIES``
|
||||
list of libraries to link.
|
||||
``CMAKE_REQUIRED_QUIET``
|
||||
.. versionadded:: 3.1
|
||||
execute quietly without messages.
|
||||
#]=======================================================================]
|
||||
|
||||
include_guard(GLOBAL)
|
||||
|
||||
@@ -35,14 +35,20 @@ Check if the prototype we expect is correct.
|
||||
The following variables may be set before calling this function to modify
|
||||
the way the check is run:
|
||||
|
||||
::
|
||||
|
||||
CMAKE_REQUIRED_FLAGS = string of compile command line flags
|
||||
CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
|
||||
CMAKE_REQUIRED_INCLUDES = list of include directories
|
||||
CMAKE_REQUIRED_LINK_OPTIONS = list of options to pass to link command
|
||||
CMAKE_REQUIRED_LIBRARIES = list of libraries to link
|
||||
CMAKE_REQUIRED_QUIET = execute quietly without messages
|
||||
``CMAKE_REQUIRED_FLAGS``
|
||||
string of compile command line flags.
|
||||
``CMAKE_REQUIRED_DEFINITIONS``
|
||||
list of macros to define (-DFOO=bar).
|
||||
``CMAKE_REQUIRED_INCLUDES``
|
||||
list of include directories.
|
||||
``CMAKE_REQUIRED_LINK_OPTIONS``
|
||||
.. versionadded:: 3.14
|
||||
list of options to pass to link command.
|
||||
``CMAKE_REQUIRED_LIBRARIES``
|
||||
list of libraries to link.
|
||||
``CMAKE_REQUIRED_QUIET``
|
||||
.. versionadded:: 3.1
|
||||
execute quietly without messages.
|
||||
#]=======================================================================]
|
||||
|
||||
#
|
||||
|
||||
@@ -23,18 +23,23 @@ Check if the given struct or class has the specified member variable
|
||||
<language> - the compiler to use (C or CXX)
|
||||
|
||||
|
||||
|
||||
The following variables may be set before calling this macro to modify
|
||||
the way the check is run:
|
||||
|
||||
::
|
||||
|
||||
CMAKE_REQUIRED_FLAGS = string of compile command line flags
|
||||
CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
|
||||
CMAKE_REQUIRED_INCLUDES = list of include directories
|
||||
CMAKE_REQUIRED_LINK_OPTIONS = list of options to pass to link command
|
||||
CMAKE_REQUIRED_LIBRARIES = list of libraries to link
|
||||
CMAKE_REQUIRED_QUIET = execute quietly without messages
|
||||
``CMAKE_REQUIRED_FLAGS``
|
||||
string of compile command line flags.
|
||||
``CMAKE_REQUIRED_DEFINITIONS``
|
||||
list of macros to define (-DFOO=bar).
|
||||
``CMAKE_REQUIRED_INCLUDES``
|
||||
list of include directories.
|
||||
``CMAKE_REQUIRED_LINK_OPTIONS``
|
||||
.. versionadded:: 3.14
|
||||
list of options to pass to link command.
|
||||
``CMAKE_REQUIRED_LIBRARIES``
|
||||
list of libraries to link.
|
||||
``CMAKE_REQUIRED_QUIET``
|
||||
.. versionadded:: 3.1
|
||||
execute quietly without messages.
|
||||
|
||||
|
||||
Example:
|
||||
|
||||
@@ -39,12 +39,14 @@ the way the check is run:
|
||||
a :ref:`;-list <CMake Language Lists>` of header search paths to pass to
|
||||
the compiler.
|
||||
``CMAKE_REQUIRED_LINK_OPTIONS``
|
||||
a :ref:`;-list <CMake Language Lists>` of options to add to the link command.
|
||||
.. versionadded:: 3.14
|
||||
a :ref:`;-list <CMake Language Lists>` of options to add to the link command.
|
||||
``CMAKE_REQUIRED_LIBRARIES``
|
||||
a :ref:`;-list <CMake Language Lists>` of libraries to add to the link
|
||||
command. See policy :policy:`CMP0075`.
|
||||
``CMAKE_REQUIRED_QUIET``
|
||||
execute quietly without messages.
|
||||
.. versionadded:: 3.1
|
||||
execute quietly without messages.
|
||||
|
||||
For example:
|
||||
|
||||
|
||||
@@ -57,19 +57,25 @@ member you can do something like this:
|
||||
check_type_size("((struct something*)0)->member" SIZEOF_MEMBER)
|
||||
|
||||
|
||||
|
||||
The following variables may be set before calling this macro to modify
|
||||
the way the check is run:
|
||||
|
||||
::
|
||||
|
||||
CMAKE_REQUIRED_FLAGS = string of compile command line flags
|
||||
CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
|
||||
CMAKE_REQUIRED_INCLUDES = list of include directories
|
||||
CMAKE_REQUIRED_LINK_OPTIONS = list of options to pass to link command
|
||||
CMAKE_REQUIRED_LIBRARIES = list of libraries to link
|
||||
CMAKE_REQUIRED_QUIET = execute quietly without messages
|
||||
CMAKE_EXTRA_INCLUDE_FILES = list of extra headers to include
|
||||
``CMAKE_REQUIRED_FLAGS``
|
||||
string of compile command line flags.
|
||||
``CMAKE_REQUIRED_DEFINITIONS``
|
||||
list of macros to define (-DFOO=bar).
|
||||
``CMAKE_REQUIRED_INCLUDES``
|
||||
list of include directories.
|
||||
``CMAKE_REQUIRED_LINK_OPTIONS``
|
||||
.. versionadded:: 3.14
|
||||
list of options to pass to link command.
|
||||
``CMAKE_REQUIRED_LIBRARIES``
|
||||
list of libraries to link.
|
||||
``CMAKE_REQUIRED_QUIET``
|
||||
.. versionadded:: 3.1
|
||||
execute quietly without messages.
|
||||
``CMAKE_EXTRA_INCLUDE_FILES``
|
||||
list of extra headers to include.
|
||||
#]=======================================================================]
|
||||
|
||||
include(CheckIncludeFile)
|
||||
|
||||
@@ -26,13 +26,18 @@ Check if the variable exists.
|
||||
The following variables may be set before calling this macro to modify
|
||||
the way the check is run:
|
||||
|
||||
::
|
||||
|
||||
CMAKE_REQUIRED_FLAGS = string of compile command line flags
|
||||
CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
|
||||
CMAKE_REQUIRED_LINK_OPTIONS = list of options to pass to link command
|
||||
CMAKE_REQUIRED_LIBRARIES = list of libraries to link
|
||||
CMAKE_REQUIRED_QUIET = execute quietly without messages
|
||||
``CMAKE_REQUIRED_FLAGS``
|
||||
string of compile command line flags.
|
||||
``CMAKE_REQUIRED_DEFINITIONS``
|
||||
list of macros to define (-DFOO=bar).
|
||||
``CMAKE_REQUIRED_LINK_OPTIONS``
|
||||
.. versionadded:: 3.14
|
||||
list of options to pass to link command.
|
||||
``CMAKE_REQUIRED_LIBRARIES``
|
||||
list of libraries to link.
|
||||
``CMAKE_REQUIRED_QUIET``
|
||||
.. versionadded:: 3.1
|
||||
execute quietly without messages.
|
||||
#]=======================================================================]
|
||||
|
||||
include_guard(GLOBAL)
|
||||
|
||||
@@ -5,6 +5,9 @@
|
||||
Documentation
|
||||
-------------
|
||||
|
||||
.. deprecated:: 3.18
|
||||
This module does nothing, unless policy :policy:`CMP0106` is set to ``OLD``.
|
||||
|
||||
This module provides support for the VTK documentation framework. It
|
||||
relies on several tools (Doxygen, Perl, etc).
|
||||
#]=======================================================================]
|
||||
|
||||
@@ -90,10 +90,11 @@ Module Functions
|
||||
in one of the paths specified in the ``ExternalData_OBJECT_STORES``
|
||||
variable.
|
||||
|
||||
The ``SHOW_PROGRESS`` argument may be passed to suppress progress information
|
||||
during the download of objects. If not provided, it defaults to ``OFF`` for
|
||||
:generator:`Ninja` and :generator:`Ninja Multi-Config` generators and ``ON``
|
||||
otherwise.
|
||||
.. versionadded:: 3.20
|
||||
The ``SHOW_PROGRESS`` argument may be passed to suppress progress information
|
||||
during the download of objects. If not provided, it defaults to ``OFF`` for
|
||||
:generator:`Ninja` and :generator:`Ninja Multi-Config` generators and ``ON``
|
||||
otherwise.
|
||||
|
||||
Typically only one target is needed to manage all external data within
|
||||
a project. Call this function once at the end of configuration after
|
||||
@@ -114,6 +115,8 @@ calling any of the functions provided by this module.
|
||||
|
||||
.. variable:: ExternalData_CUSTOM_SCRIPT_<key>
|
||||
|
||||
.. versionadded:: 3.2
|
||||
|
||||
Specify a full path to a ``.cmake`` custom fetch script identified by
|
||||
``<key>`` in entries of the ``ExternalData_URL_TEMPLATES`` list.
|
||||
See `Custom Fetch Scripts`_.
|
||||
@@ -132,6 +135,8 @@ calling any of the functions provided by this module.
|
||||
|
||||
.. variable:: ExternalData_NO_SYMLINKS
|
||||
|
||||
.. versionadded:: 3.3
|
||||
|
||||
The real data files named by expanded ``DATA{}`` references may be made
|
||||
available under ``ExternalData_BINARY_ROOT`` using symbolic links on
|
||||
some platforms. The ``ExternalData_NO_SYMLINKS`` variable may be set
|
||||
@@ -177,6 +182,8 @@ calling any of the functions provided by this module.
|
||||
|
||||
.. variable:: ExternalData_URL_ALGO_<algo>_<key>
|
||||
|
||||
.. versionadded:: 3.3
|
||||
|
||||
Specify a custom URL component to be substituted for URL template
|
||||
placeholders of the form ``%(algo:<key>)``, where ``<key>`` is a
|
||||
valid C identifier, when fetching an object referenced via hash
|
||||
@@ -207,10 +214,11 @@ For example, the argument ``DATA{img.png}`` may be satisfied by either a
|
||||
real ``img.png`` file in the current source directory or a ``img.png.md5``
|
||||
file containing its MD5 sum.
|
||||
|
||||
Multiple content links of the same name with different hash algorithms
|
||||
are supported (e.g. ``img.png.sha256`` and ``img.png.sha1``) so long as
|
||||
they all correspond to the same real file. This allows objects to be
|
||||
fetched from sources indexed by different hash algorithms.
|
||||
.. versionadded:: 3.8
|
||||
Multiple content links of the same name with different hash algorithms
|
||||
are supported (e.g. ``img.png.sha256`` and ``img.png.sha1``) so long as
|
||||
they all correspond to the same real file. This allows objects to be
|
||||
fetched from sources indexed by different hash algorithms.
|
||||
|
||||
Referencing File Series
|
||||
"""""""""""""""""""""""
|
||||
@@ -269,8 +277,11 @@ associated file options. For example, the argument
|
||||
``DATA{MyDataDir/,REGEX:.*}`` will pass the full path to a ``MyDataDir``
|
||||
directory on the command line and ensure that the directory contains
|
||||
files corresponding to every file or content link in the ``MyDataDir``
|
||||
source directory. In order to match associated files in subdirectories,
|
||||
specify a ``RECURSE:`` option, e.g. ``DATA{MyDataDir/,RECURSE:,REGEX:.*}``.
|
||||
source directory.
|
||||
|
||||
.. versionadded:: 3.3
|
||||
In order to match associated files in subdirectories,
|
||||
specify a ``RECURSE:`` option, e.g. ``DATA{MyDataDir/,RECURSE:,REGEX:.*}``.
|
||||
|
||||
Hash Algorithms
|
||||
^^^^^^^^^^^^^^^
|
||||
@@ -290,6 +301,9 @@ The following hash algorithms are supported::
|
||||
SHA3_384 .sha3-384 Keccak SHA-3
|
||||
SHA3_512 .sha3-512 Keccak SHA-3
|
||||
|
||||
.. versionadded:: 3.8
|
||||
Added the ``SHA3_*`` hash algorithms.
|
||||
|
||||
Note that the hashes are used only for unique data identification and
|
||||
download verification.
|
||||
|
||||
@@ -298,6 +312,8 @@ download verification.
|
||||
Custom Fetch Scripts
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.2
|
||||
|
||||
When a data file must be fetched from one of the URL templates
|
||||
specified in the ``ExternalData_URL_TEMPLATES`` variable, it is
|
||||
normally downloaded using the :command:`file(DOWNLOAD)` command.
|
||||
|
||||
@@ -56,6 +56,8 @@ External Project Definition
|
||||
(see *Logging Options* below).
|
||||
|
||||
``LOG_DIR <dir>``
|
||||
.. versionadded:: 3.14
|
||||
|
||||
Directory in which to store the logs of each step.
|
||||
|
||||
``DOWNLOAD_DIR <dir>``
|
||||
@@ -144,6 +146,9 @@ External Project Definition
|
||||
is determined by inspecting the actual content rather than using logic
|
||||
based on the file extension.
|
||||
|
||||
.. versionchanged:: 3.7
|
||||
Multiple URLs are allowed.
|
||||
|
||||
``URL_HASH <algo>=<hashValue>``
|
||||
Hash of the archive file to be downloaded. The argument should be of
|
||||
the form ``<algo>=<hashValue>`` where ``algo`` can be any of the hashing
|
||||
@@ -164,6 +169,8 @@ External Project Definition
|
||||
of code internal to the ``ExternalProject`` module.
|
||||
|
||||
``DOWNLOAD_NO_EXTRACT <bool>``
|
||||
.. versionadded:: 3.6
|
||||
|
||||
Allows the extraction part of the download step to be disabled by
|
||||
passing a boolean true value for this option. If this option is not
|
||||
given, the downloaded contents will be unpacked automatically if
|
||||
@@ -180,15 +187,23 @@ External Project Definition
|
||||
Maximum time allowed for file download operations.
|
||||
|
||||
``INACTIVITY_TIMEOUT <seconds>``
|
||||
.. versionadded:: 3.19
|
||||
|
||||
Terminate the operation after a period of inactivity.
|
||||
|
||||
``HTTP_USERNAME <username>``
|
||||
.. versionadded:: 3.7
|
||||
|
||||
Username for the download operation if authentication is required.
|
||||
|
||||
``HTTP_PASSWORD <password>``
|
||||
.. versionadded:: 3.7
|
||||
|
||||
Password for the download operation if authentication is required.
|
||||
|
||||
``HTTP_HEADER <header1> [<header2>...]``
|
||||
.. versionadded:: 3.7
|
||||
|
||||
Provides an arbitrary list of HTTP headers for the download operation.
|
||||
This can be useful for accessing content in systems like AWS, etc.
|
||||
|
||||
@@ -201,6 +216,9 @@ External Project Definition
|
||||
cannot be provided, this option can be an alternative verification
|
||||
measure.
|
||||
|
||||
.. versionchanged:: 3.6
|
||||
This option also applies to ``git clone`` invocations.
|
||||
|
||||
``TLS_CAINFO <file>``
|
||||
Specify a custom certificate authority file to use if ``TLS_VERIFY``
|
||||
is enabled. If this option is not specified, the value of the
|
||||
@@ -208,6 +226,8 @@ External Project Definition
|
||||
:command:`file(DOWNLOAD)`)
|
||||
|
||||
``NETRC <level>``
|
||||
.. versionadded:: 3.11
|
||||
|
||||
Specify whether the ``.netrc`` file is to be used for operation.
|
||||
If this option is not specified, the value of the ``CMAKE_NETRC``
|
||||
variable will be used instead (see :command:`file(DOWNLOAD)`)
|
||||
@@ -225,11 +245,16 @@ External Project Definition
|
||||
is ignored.
|
||||
|
||||
``NETRC_FILE <file>``
|
||||
.. versionadded:: 3.11
|
||||
|
||||
Specify an alternative ``.netrc`` file to the one in your home directory
|
||||
if the ``NETRC`` level is ``OPTIONAL`` or ``REQUIRED``. If this option
|
||||
is not specified, the value of the ``CMAKE_NETRC_FILE`` variable will
|
||||
be used instead (see :command:`file(DOWNLOAD)`)
|
||||
|
||||
.. versionadded:: 3.1
|
||||
Added support for `tbz2`, `.tar.xz`, `.txz`, and `.7z` extensions.
|
||||
|
||||
*Git*
|
||||
NOTE: A git version of 1.6.5 or later is required if this download method
|
||||
is used.
|
||||
@@ -267,22 +292,30 @@ External Project Definition
|
||||
|
||||
``GIT_SUBMODULES <module>...``
|
||||
Specific git submodules that should also be updated. If this option is
|
||||
not provided, all git submodules will be updated. When :policy:`CMP0097`
|
||||
is set to ``NEW`` if this value is set to an empty string then no submodules
|
||||
are initialized or updated.
|
||||
not provided, all git submodules will be updated.
|
||||
|
||||
.. versionchanged:: 3.16
|
||||
When :policy:`CMP0097` is set to ``NEW``, if this value is set
|
||||
to an empty string then no submodules are initialized or updated.
|
||||
|
||||
``GIT_SUBMODULES_RECURSE <bool>``
|
||||
.. versionadded:: 3.17
|
||||
|
||||
Specify whether git submodules (if any) should update recursively by
|
||||
passing the ``--recursive`` flag to ``git submodule update``.
|
||||
If not specified, the default is on.
|
||||
|
||||
``GIT_SHALLOW <bool>``
|
||||
.. versionadded:: 3.6
|
||||
|
||||
When this option is enabled, the ``git clone`` operation will be given
|
||||
the ``--depth 1`` option. This performs a shallow clone, which avoids
|
||||
downloading the whole history and instead retrieves just the commit
|
||||
denoted by the ``GIT_TAG`` option.
|
||||
|
||||
``GIT_PROGRESS <bool>``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
When enabled, this option instructs the ``git clone`` operation to
|
||||
report its progress by passing it the ``--progress`` option. Without
|
||||
this option, the clone step for large projects may appear to make the
|
||||
@@ -292,12 +325,16 @@ External Project Definition
|
||||
overly noisy if lots of external projects are used.
|
||||
|
||||
``GIT_CONFIG <option1> [<option2>...]``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
Specify a list of config options to pass to ``git clone``. Each option
|
||||
listed will be transformed into its own ``--config <option>`` on the
|
||||
``git clone`` command line, with each option required to be in the
|
||||
form ``key=value``.
|
||||
|
||||
``GIT_REMOTE_UPDATE_STRATEGY <strategy>``
|
||||
.. versionadded:: 3.18
|
||||
|
||||
When ``GIT_TAG`` refers to a remote branch, this option can be used to
|
||||
specify how the update step behaves. The ``<strategy>`` must be one of
|
||||
the following:
|
||||
@@ -379,6 +416,8 @@ External Project Definition
|
||||
:manual:`generator expressions <cmake-generator-expressions(7)>`.
|
||||
|
||||
``UPDATE_DISCONNECTED <bool>``
|
||||
.. versionadded:: 3.2
|
||||
|
||||
When enabled, this option causes the update step to be skipped. It does
|
||||
not, however, prevent the download step. The update step can still be
|
||||
added as a step target (see :command:`ExternalProject_Add_StepTargets`)
|
||||
@@ -436,6 +475,8 @@ External Project Definition
|
||||
``CONFIGURE_COMMAND`` option.
|
||||
|
||||
``CMAKE_GENERATOR_PLATFORM <platform>``
|
||||
.. versionadded:: 3.1
|
||||
|
||||
Pass a generator-specific platform name to the CMake command (see
|
||||
:variable:`CMAKE_GENERATOR_PLATFORM`). It is an error to provide this
|
||||
option without the ``CMAKE_GENERATOR`` option.
|
||||
@@ -446,6 +487,8 @@ External Project Definition
|
||||
option without the ``CMAKE_GENERATOR`` option.
|
||||
|
||||
``CMAKE_GENERATOR_INSTANCE <instance>``
|
||||
.. versionadded:: 3.11
|
||||
|
||||
Pass a generator-specific instance selection to the CMake command (see
|
||||
:variable:`CMAKE_GENERATOR_INSTANCE`). It is an error to provide this
|
||||
option without the ``CMAKE_GENERATOR`` option.
|
||||
@@ -454,8 +497,10 @@ External Project Definition
|
||||
The specified arguments are passed to the ``cmake`` command line. They
|
||||
can be any argument the ``cmake`` command understands, not just cache
|
||||
values defined by ``-D...`` arguments (see also
|
||||
:manual:`CMake Options <cmake(1)>`). In addition, arguments may use
|
||||
:manual:`generator expressions <cmake-generator-expressions(7)>`.
|
||||
:manual:`CMake Options <cmake(1)>`).
|
||||
|
||||
.. versionadded:: 3.3
|
||||
Arguments may use :manual:`generator expressions <cmake-generator-expressions(7)>`.
|
||||
|
||||
``CMAKE_CACHE_ARGS <arg>...``
|
||||
This is an alternate way of specifying cache variables where command line
|
||||
@@ -463,10 +508,14 @@ External Project Definition
|
||||
the form ``-Dvar:STRING=value``, which are then transformed into
|
||||
CMake :command:`set` commands with the ``FORCE`` option used. These
|
||||
``set()`` commands are written to a pre-load script which is then applied
|
||||
using the :manual:`cmake -C <cmake(1)>` command line option. Arguments
|
||||
may use :manual:`generator expressions <cmake-generator-expressions(7)>`.
|
||||
using the :manual:`cmake -C <cmake(1)>` command line option.
|
||||
|
||||
.. versionadded:: 3.3
|
||||
Arguments may use :manual:`generator expressions <cmake-generator-expressions(7)>`.
|
||||
|
||||
``CMAKE_CACHE_DEFAULT_ARGS <arg>...``
|
||||
.. versionadded:: 3.2
|
||||
|
||||
This is the same as the ``CMAKE_CACHE_ARGS`` option except the ``set()``
|
||||
commands do not include the ``FORCE`` keyword. This means the values act
|
||||
as initial defaults only and will not override any variables already set
|
||||
@@ -474,20 +523,25 @@ External Project Definition
|
||||
different behavior depending on whether the build starts from a fresh
|
||||
build directory or re-uses previous build contents.
|
||||
|
||||
If the CMake generator is the ``Green Hills MULTI`` and not overridden then
|
||||
the original project's settings for the GHS toolset and target system
|
||||
customization cache variables are propagated into the external project.
|
||||
.. versionadded:: 3.15
|
||||
If the CMake generator is the ``Green Hills MULTI`` and not overridden then
|
||||
the original project's settings for the GHS toolset and target system
|
||||
customization cache variables are propagated into the external project.
|
||||
|
||||
``SOURCE_SUBDIR <dir>``
|
||||
.. versionadded:: 3.7
|
||||
|
||||
When no ``CONFIGURE_COMMAND`` option is specified, the configure step
|
||||
assumes the external project has a ``CMakeLists.txt`` file at the top of
|
||||
its source tree (i.e. in ``SOURCE_DIR``). The ``SOURCE_SUBDIR`` option
|
||||
can be used to point to an alternative directory within the source tree
|
||||
to use as the top of the CMake source tree instead. This must be a
|
||||
relative path and it will be interpreted as being relative to
|
||||
``SOURCE_DIR``. When ``BUILD_IN_SOURCE 1`` is specified, the
|
||||
``BUILD_COMMAND`` is used to point to an alternative directory within the
|
||||
source tree.
|
||||
``SOURCE_DIR``.
|
||||
|
||||
.. versionadded:: 3.14
|
||||
When ``BUILD_IN_SOURCE`` option is enabled, the ``BUILD_COMMAND``
|
||||
is used to point to an alternative directory within the source tree.
|
||||
|
||||
**Build Step Options:**
|
||||
If the configure step assumed the external project uses CMake as its build
|
||||
@@ -524,6 +578,8 @@ External Project Definition
|
||||
developers might modify the sources in ``SOURCE_DIR``).
|
||||
|
||||
``BUILD_BYPRODUCTS <file>...``
|
||||
.. versionadded:: 3.2
|
||||
|
||||
Specifies files that will be generated by the build command but which
|
||||
might or might not have their modification time updated by subsequent
|
||||
builds. These ultimately get passed through as ``BYPRODUCTS`` to the
|
||||
@@ -578,6 +634,8 @@ External Project Definition
|
||||
``TEST_AFTER_INSTALL`` are enabled, the latter is silently ignored.
|
||||
|
||||
``TEST_EXCLUDE_FROM_MAIN <bool>``
|
||||
.. versionadded:: 3.2
|
||||
|
||||
If enabled, the main build's default ALL target will not depend on the
|
||||
test step. This can be a useful way of ensuring the test step is defined
|
||||
but only gets invoked when manually requested.
|
||||
@@ -597,6 +655,8 @@ External Project Definition
|
||||
When enabled, the output of the update step is logged to files.
|
||||
|
||||
``LOG_PATCH <bool>``
|
||||
.. versionadded:: 3.14
|
||||
|
||||
When enabled, the output of the patch step is logged to files.
|
||||
|
||||
``LOG_CONFIGURE <bool>``
|
||||
@@ -612,10 +672,14 @@ External Project Definition
|
||||
When enabled, the output of the test step is logged to files.
|
||||
|
||||
``LOG_MERGED_STDOUTERR <bool>``
|
||||
.. versionadded:: 3.14
|
||||
|
||||
When enabled, stdout and stderr will be merged for any step whose
|
||||
output is being logged to files.
|
||||
|
||||
``LOG_OUTPUT_ON_FAILURE <bool>``
|
||||
.. versionadded:: 3.14
|
||||
|
||||
This option only has an effect if at least one of the other ``LOG_<step>``
|
||||
options is enabled. If an error occurs for a step which has logging to
|
||||
file enabled, that step's output will be printed to the console if
|
||||
@@ -624,6 +688,8 @@ External Project Definition
|
||||
console.
|
||||
|
||||
**Terminal Access Options:**
|
||||
.. versionadded:: 3.4
|
||||
|
||||
Steps can be given direct access to the terminal in some cases. Giving a
|
||||
step access to the terminal may allow it to receive terminal input if
|
||||
required, such as for authentication details not provided by other options.
|
||||
@@ -673,8 +739,9 @@ External Project Definition
|
||||
discussion of the effects of this option.
|
||||
|
||||
``INDEPENDENT_STEP_TARGETS <step-target>...``
|
||||
Deprecated. This is allowed only if policy :policy:`CMP0114` is not set
|
||||
to ``NEW``.
|
||||
.. deprecated:: 3.19
|
||||
This is allowed only if policy :policy:`CMP0114` is not set to ``NEW``.
|
||||
|
||||
Generates custom targets for the specified steps and prevent these targets
|
||||
from having the usual dependencies applied to them. If this option is not
|
||||
specified, the default value is taken from the
|
||||
@@ -780,6 +847,8 @@ control needed to implement such step-level capabilities.
|
||||
Files on which this custom step depends.
|
||||
|
||||
``INDEPENDENT <bool>``
|
||||
.. versionadded:: 3.19
|
||||
|
||||
Specifies whether this step is independent of the external dependencies
|
||||
specified by the :command:`ExternalProject_Add`'s ``DEPENDS`` option.
|
||||
The default is ``FALSE``. Steps marked as independent may depend only
|
||||
@@ -795,6 +864,8 @@ control needed to implement such step-level capabilities.
|
||||
on the external targets, but may depend on targets for other steps.
|
||||
|
||||
``BYPRODUCTS <file>...``
|
||||
.. versionadded:: 3.2
|
||||
|
||||
Files that will be generated by this custom step but which might or might
|
||||
not have their modification time updated by subsequent builds. This list of
|
||||
files will ultimately be passed through as the ``BYPRODUCTS`` option to the
|
||||
@@ -831,6 +902,12 @@ control needed to implement such step-level capabilities.
|
||||
corresponding property values defined in the original call to
|
||||
:command:`ExternalProject_Add`.
|
||||
|
||||
.. versionadded:: 3.3
|
||||
Token replacement is extended to byproducts.
|
||||
|
||||
.. versionadded:: 3.11
|
||||
The ``<DOWNLOAD_DIR>`` substitution token.
|
||||
|
||||
.. command:: ExternalProject_Add_StepTargets
|
||||
|
||||
The ``ExternalProject_Add_StepTargets()`` function generates targets for the
|
||||
@@ -868,15 +945,16 @@ control needed to implement such step-level capabilities.
|
||||
can save having to repeatedly specify the same set of step targets when
|
||||
multiple external projects are being defined.
|
||||
|
||||
If :policy:`CMP0114` is set to ``NEW``, step targets are fully responsible
|
||||
for holding the custom commands implementing their steps. The primary target
|
||||
created by ``ExternalProject_Add`` depends on the step targets, and the
|
||||
step targets depend on each other. The target-level dependencies match
|
||||
the file-level dependencies used by the custom commands for each step.
|
||||
The targets for steps created with :command:`ExternalProject_Add_Step`'s
|
||||
``INDEPENDENT`` option do not depend on the external targets specified
|
||||
by :command:`ExternalProject_Add`'s ``DEPENDS`` option. The predefined
|
||||
steps ``mkdir``, ``download``, ``update``, and ``patch`` are independent.
|
||||
.. versionadded:: 3.19
|
||||
If :policy:`CMP0114` is set to ``NEW``, step targets are fully responsible
|
||||
for holding the custom commands implementing their steps. The primary target
|
||||
created by ``ExternalProject_Add`` depends on the step targets, and the
|
||||
step targets depend on each other. The target-level dependencies match
|
||||
the file-level dependencies used by the custom commands for each step.
|
||||
The targets for steps created with :command:`ExternalProject_Add_Step`'s
|
||||
``INDEPENDENT`` option do not depend on the external targets specified
|
||||
by :command:`ExternalProject_Add`'s ``DEPENDS`` option. The predefined
|
||||
steps ``mkdir``, ``download``, ``update``, and ``patch`` are independent.
|
||||
|
||||
If :policy:`CMP0114` is not ``NEW``, the following deprecated behavior
|
||||
is available:
|
||||
@@ -901,6 +979,8 @@ control needed to implement such step-level capabilities.
|
||||
|
||||
.. command:: ExternalProject_Add_StepDependencies
|
||||
|
||||
.. versionadded:: 3.2
|
||||
|
||||
The ``ExternalProject_Add_StepDependencies()`` function can be used to add
|
||||
dependencies to a step. The dependencies added must be targets CMake already
|
||||
knows about (these can be ordinary executable or library targets, custom
|
||||
|
||||
@@ -66,6 +66,8 @@ The default value for this global property is ``OPTIONAL``.
|
||||
|
||||
.. variable:: FeatureSummary_<TYPE>_DESCRIPTION
|
||||
|
||||
.. versionadded:: 3.9
|
||||
|
||||
The global property :variable:`FeatureSummary_<TYPE>_DESCRIPTION` can be defined
|
||||
for each type to replace the type name with the specified string whenever the
|
||||
package type is used in an output string.
|
||||
@@ -242,12 +244,13 @@ endfunction()
|
||||
``<TYPE>_PACKAGES_NOT_FOUND``
|
||||
only those packages which have not been found which have the type <TYPE>
|
||||
|
||||
With the exception of the ``ALL`` value, these values can be combined
|
||||
in order to customize the output. For example:
|
||||
.. versionchanged:: 3.1
|
||||
With the exception of the ``ALL`` value, these values can be combined
|
||||
in order to customize the output. For example:
|
||||
|
||||
.. code-block:: cmake
|
||||
.. code-block:: cmake
|
||||
|
||||
feature_summary(WHAT ENABLED_FEATURES DISABLED_FEATURES)
|
||||
feature_summary(WHAT ENABLED_FEATURES DISABLED_FEATURES)
|
||||
|
||||
If a ``FILENAME`` is given, the information is printed into this file. If
|
||||
``APPEND`` is used, it is appended to this file, otherwise the file is
|
||||
@@ -268,14 +271,18 @@ endfunction()
|
||||
The default value for the :variable:`FeatureSummary_REQUIRED_PKG_TYPES` global
|
||||
property is ``REQUIRED``.
|
||||
|
||||
.. versionadded:: 3.9
|
||||
The ``DEFAULT_DESCRIPTION`` option.
|
||||
|
||||
The :variable:`FeatureSummary_DEFAULT_PKG_TYPE` global property can be
|
||||
modified to change the default package type assigned when not explicitly
|
||||
assigned by the user.
|
||||
|
||||
If the ``QUIET_ON_EMPTY`` option is used, if only one type of package was
|
||||
requested, and no packages belonging to that category were found, then no
|
||||
output (including the ``DESCRIPTION``) is printed or added to the ``VAR``
|
||||
variable.
|
||||
.. versionadded:: 3.8
|
||||
If the ``QUIET_ON_EMPTY`` option is used, if only one type of package was
|
||||
requested, and no packages belonging to that category were found, then no
|
||||
output (including the ``DESCRIPTION``) is printed or added to the ``VAR``
|
||||
variable.
|
||||
|
||||
Example 1, append everything to a file:
|
||||
|
||||
@@ -617,6 +624,9 @@ endfunction()
|
||||
be displayed using ``feature_summary()`` for ``ENABLED_FEATURES`` and
|
||||
``DISABLED_FEATURES`` respectively.
|
||||
|
||||
.. versionchanged:: 3.8
|
||||
``<enabled>`` can be a list of conditions.
|
||||
|
||||
Example for setting the info for a feature:
|
||||
|
||||
.. code-block:: cmake
|
||||
|
||||
@@ -77,6 +77,9 @@ operation and would not normally be the way the module is used, but it is
|
||||
sometimes useful as part of implementing some higher level feature or to
|
||||
populate some content in CMake's script mode.
|
||||
|
||||
.. versionchanged:: 3.14
|
||||
``FetchContent`` commands can access the terminal. This is necessary
|
||||
for password prompts and real-time progress displays to work.
|
||||
|
||||
Commands
|
||||
^^^^^^^^
|
||||
@@ -371,6 +374,8 @@ is simpler and provides additional features over the pattern above.
|
||||
:variable:`CMAKE_MAKE_PROGRAM` variables will need to be set appropriately
|
||||
on the command line invoking the script.
|
||||
|
||||
.. versionadded:: 3.18
|
||||
Added support for ``DOWNLOAD_NO_EXTRACT`` and ``SOURCE_SUBDIR`` options.
|
||||
|
||||
.. command:: FetchContent_GetProperties
|
||||
|
||||
@@ -416,6 +421,8 @@ is simpler and provides additional features over the pattern above.
|
||||
|
||||
FetchContent_MakeAvailable( <name1> [<name2>...] )
|
||||
|
||||
.. versionadded:: 3.14
|
||||
|
||||
This command implements the common pattern typically needed for most
|
||||
dependencies. It iterates over each of the named dependencies in turn
|
||||
and for each one it loosely follows the
|
||||
|
||||
@@ -12,6 +12,8 @@ Find the alsa libraries (``asound``)
|
||||
IMPORTED Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.12
|
||||
|
||||
This module defines :prop_tgt:`IMPORTED` target ``ALSA::ALSA``, if
|
||||
ALSA has been found.
|
||||
|
||||
|
||||
@@ -8,6 +8,9 @@ FindArmadillo
|
||||
Find the Armadillo C++ library.
|
||||
Armadillo is a library for linear algebra & scientific computing.
|
||||
|
||||
.. versionadded:: 3.18
|
||||
Support for linking wrapped libraries directly (``ARMA_DONT_USE_WRAPPER``).
|
||||
|
||||
Using Armadillo:
|
||||
|
||||
::
|
||||
|
||||
@@ -35,21 +35,31 @@ the path to a yacc file. ``<CodeOutput>`` is the name of the source file
|
||||
generated by bison. A header file is also be generated, and contains
|
||||
the token list.
|
||||
|
||||
.. versionchanged:: 3.14
|
||||
When :policy:`CMP0088` is set to ``NEW``, ``bison`` runs in the
|
||||
:variable:`CMAKE_CURRENT_BINARY_DIR` directory.
|
||||
|
||||
The options are:
|
||||
|
||||
``COMPILE_FLAGS <flags>``
|
||||
Specify flags to be added to the ``bison`` command line.
|
||||
|
||||
``DEFINES_FILE <file>``
|
||||
.. versionadded:: 3.4
|
||||
|
||||
Specify a non-default header ``<file>`` to be generated by ``bison``.
|
||||
|
||||
``VERBOSE [<file>]``
|
||||
Tell ``bison`` to write a report file of the grammar and parser.
|
||||
If ``<file>`` is given, it specifies path the report file is copied to.
|
||||
``[<file>]`` is left for backward compatibility of this module.
|
||||
Use ``VERBOSE REPORT_FILE <file>``.
|
||||
|
||||
.. deprecated:: 3.7
|
||||
If ``<file>`` is given, it specifies path the report file is copied to.
|
||||
``[<file>]`` is left for backward compatibility of this module.
|
||||
Use ``VERBOSE REPORT_FILE <file>``.
|
||||
|
||||
``REPORT_FILE <file>``
|
||||
.. versionadded:: 3.7
|
||||
|
||||
Specify a non-default report ``<file>``, if generated.
|
||||
|
||||
The macro defines the following variables:
|
||||
|
||||
@@ -55,16 +55,39 @@ The following variables may be set to influence this module's behavior:
|
||||
* ``Arm_ilp64_mp``
|
||||
* ``Generic``
|
||||
|
||||
.. versionadded:: 3.6
|
||||
``OpenBLAS`` support.
|
||||
|
||||
.. versionadded:: 3.11
|
||||
``FLAME`` support.
|
||||
|
||||
.. versionadded:: 3.13
|
||||
Added ILP64 MKL variants (``Intel10_64ilp``, ``Intel10_64ilp_seq``).
|
||||
|
||||
.. versionadded:: 3.17
|
||||
Added single dynamic library MKL variant (``Intel10_64_dyn``).
|
||||
|
||||
.. versionadded:: 3.18
|
||||
Arm Performance Libraries support (``Arm``, ``Arm_mp``, ``Arm_ilp64``,
|
||||
``Arm_ilp64_mp``).
|
||||
|
||||
.. versionadded:: 3.19
|
||||
``FlexiBLAS`` support.
|
||||
|
||||
``BLA_F95``
|
||||
if ``ON`` tries to find the BLAS95 interfaces
|
||||
|
||||
``BLA_PREFER_PKGCONFIG``
|
||||
.. versionadded:: 3.11
|
||||
|
||||
if set ``pkg-config`` will be used to search for a BLAS library first
|
||||
and if one is found that is preferred
|
||||
|
||||
Imported targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.18
|
||||
|
||||
This module defines the following :prop_tgt:`IMPORTED` target:
|
||||
|
||||
``BLAS::BLAS``
|
||||
@@ -104,10 +127,13 @@ This module defines the following variables:
|
||||
Hints
|
||||
^^^^^
|
||||
|
||||
Set the ``MKLROOT`` environment variable to a directory that contains an MKL
|
||||
installation, or add the directory to the dynamic library loader environment
|
||||
variable for your platform (``LIB``, ``DYLD_LIBRARY_PATH`` or
|
||||
``LD_LIBRARY_PATH``).
|
||||
``MKLROOT``
|
||||
.. versionadded:: 3.15
|
||||
|
||||
Set this environment variable to a directory that contains an MKL
|
||||
installation, or add the directory to the dynamic library loader environment
|
||||
variable for your platform (``LIB``, ``DYLD_LIBRARY_PATH`` or
|
||||
``LD_LIBRARY_PATH``).
|
||||
|
||||
#]=======================================================================]
|
||||
|
||||
|
||||
@@ -10,6 +10,8 @@ Try to find BZip2
|
||||
IMPORTED Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.12
|
||||
|
||||
This module defines :prop_tgt:`IMPORTED` target ``BZip2::BZip2``, if
|
||||
BZip2 has been found.
|
||||
|
||||
@@ -21,7 +23,8 @@ This module defines the following variables:
|
||||
``BZIP2_FOUND``
|
||||
system has BZip2
|
||||
``BZIP2_INCLUDE_DIRS``
|
||||
the BZip2 include directories
|
||||
.. versionadded:: 3.12
|
||||
the BZip2 include directories
|
||||
``BZIP2_LIBRARIES``
|
||||
Link these to use BZip2
|
||||
``BZIP2_NEED_PREFIX``
|
||||
|
||||
@@ -24,6 +24,18 @@ This module finds headers and requested component libraries OR a CMake
|
||||
package configuration file provided by a "Boost CMake" build. For the
|
||||
latter case skip to the :ref:`Boost CMake` section below.
|
||||
|
||||
.. versionadded:: 3.7
|
||||
``bzip2`` and ``zlib`` components (Windows only).
|
||||
|
||||
.. versionadded:: 3.11
|
||||
The ``OPTIONAL_COMPONENTS`` option.
|
||||
|
||||
.. versionadded:: 3.13
|
||||
``stacktrace_*`` components.
|
||||
|
||||
.. versionadded:: 3.19
|
||||
``bzip2`` and ``zlib`` components on all platforms.
|
||||
|
||||
Result Variables
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -55,8 +67,12 @@ This module defines the following variables:
|
||||
Boost version number in ``X.Y.Z`` format.
|
||||
|
||||
``Boost_VERSION``
|
||||
If :policy:`CMP0093` policy is set to ``NEW``, same as ``Boost_VERSION_STRING``.
|
||||
If :policy:`CMP0093` policy is set to ``OLD`` or unset, same as ``Boost_VERSION_MACRO``.
|
||||
Boost version number in ``X.Y.Z`` format (same as ``Boost_VERSION_STRING``).
|
||||
|
||||
.. versionchanged:: 3.15
|
||||
In previous CMake versions, this variable used the raw version string
|
||||
from the Boost header (same as ``Boost_VERSION_MACRO``).
|
||||
See policy :policy:`CMP0093`.
|
||||
|
||||
``Boost_LIB_VERSION``
|
||||
Version string appended to library filenames.
|
||||
@@ -78,14 +94,8 @@ This module defines the following variables:
|
||||
information about Boost's automatic linking
|
||||
displayed during compilation
|
||||
|
||||
Note that Boost Python components require a Python version suffix
|
||||
(Boost 1.67 and later), e.g. ``python36`` or ``python27`` for the
|
||||
versions built against Python 3.6 and 2.7, respectively. This also
|
||||
applies to additional components using Python including
|
||||
``mpi_python`` and ``numpy``. Earlier Boost releases may use
|
||||
distribution-specific suffixes such as ``2``, ``3`` or ``2.7``.
|
||||
These may also be used as suffixes, but note that they are not
|
||||
portable.
|
||||
.. versionadded:: 3.15
|
||||
The ``Boost_VERSION_<PART>`` variables.
|
||||
|
||||
Cache variables
|
||||
^^^^^^^^^^^^^^^
|
||||
@@ -107,6 +117,10 @@ Search results are saved persistently in CMake cache entries:
|
||||
``Boost_<COMPONENT>_LIBRARY_RELEASE``
|
||||
Component ``<COMPONENT>`` library release variant.
|
||||
|
||||
.. versionadded:: 3.3
|
||||
Per-configuration variables ``Boost_LIBRARY_DIR_RELEASE`` and
|
||||
``Boost_LIBRARY_DIR_DEBUG``.
|
||||
|
||||
Hints
|
||||
^^^^^
|
||||
|
||||
@@ -151,11 +165,16 @@ search results affected by the changes and searches again.
|
||||
Imported Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.5
|
||||
|
||||
This module defines the following :prop_tgt:`IMPORTED` targets:
|
||||
|
||||
``Boost::headers``
|
||||
``Boost::boost``
|
||||
Target for header-only dependencies. (Boost include directory).
|
||||
``Boost::boost`` is an alias.
|
||||
|
||||
``Boost::headers``
|
||||
.. versionadded:: 3.15
|
||||
Alias for ``Boost::boost``.
|
||||
|
||||
``Boost::<component>``
|
||||
Target for specific component dependency (shared or static library);
|
||||
@@ -193,10 +212,14 @@ Users or projects may tell this module which variant to find by
|
||||
setting variables:
|
||||
|
||||
``Boost_USE_DEBUG_LIBS``
|
||||
.. versionadded:: 3.10
|
||||
|
||||
Set to ``ON`` or ``OFF`` to specify whether to search and use the debug
|
||||
libraries. Default is ``ON``.
|
||||
|
||||
``Boost_USE_RELEASE_LIBS``
|
||||
.. versionadded:: 3.10
|
||||
|
||||
Set to ``ON`` or ``OFF`` to specify whether to search and use the release
|
||||
libraries. Default is ``ON``.
|
||||
|
||||
@@ -229,15 +252,22 @@ setting variables:
|
||||
|
||||
``Boost_COMPILER``
|
||||
Set to the compiler-specific library suffix (e.g. ``-gcc43``). Default is
|
||||
auto-computed for the C++ compiler in use. A list may be used if multiple
|
||||
compatible suffixes should be tested for, in decreasing order of preference.
|
||||
auto-computed for the C++ compiler in use.
|
||||
|
||||
.. versionchanged:: 3.9
|
||||
A list may be used if multiple compatible suffixes should be tested for,
|
||||
in decreasing order of preference.
|
||||
|
||||
``Boost_LIB_PREFIX``
|
||||
.. versionadded:: 3.18
|
||||
|
||||
Set to the platform-specific library name prefix (e.g. ``lib``) used by
|
||||
Boost static libs. This is needed only on platforms where CMake does not
|
||||
know the prefix by default.
|
||||
|
||||
``Boost_ARCHITECTURE``
|
||||
.. versionadded:: 3.13
|
||||
|
||||
Set to the architecture-specific library suffix (e.g. ``-x64``).
|
||||
Default is auto-computed for the C++ compiler in use.
|
||||
|
||||
|
||||
@@ -4,12 +4,6 @@ FindCUDA
|
||||
|
||||
.. deprecated:: 3.10
|
||||
|
||||
Superseded by first-class support for the CUDA language in CMake.
|
||||
Superseded by the :module:`FindCUDAToolkit` for CUDA toolkit libraries.
|
||||
|
||||
Replacement
|
||||
^^^^^^^^^^^
|
||||
|
||||
It is no longer necessary to use this module or call ``find_package(CUDA)``
|
||||
for compiling CUDA code. Instead, list ``CUDA`` among the languages named
|
||||
in the top-level call to the :command:`project` command, or call the
|
||||
@@ -17,9 +11,10 @@ in the top-level call to the :command:`project` command, or call the
|
||||
Then one can add CUDA (``.cu``) sources to programs directly
|
||||
in calls to :command:`add_library` and :command:`add_executable`.
|
||||
|
||||
To find and use the CUDA toolkit libraries the :module:`FindCUDAToolkit`
|
||||
module has superseded this module. It works whether or not the ``CUDA``
|
||||
language is enabled.
|
||||
.. versionadded:: 3.17
|
||||
To find and use the CUDA toolkit libraries the :module:`FindCUDAToolkit`
|
||||
module has superseded this module. It works whether or not the ``CUDA``
|
||||
language is enabled.
|
||||
|
||||
Documentation of Deprecated Usage
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
@@ -30,6 +25,9 @@ This script locates the NVIDIA CUDA C tools. It should work on Linux,
|
||||
Windows, and macOS and should be reasonably up to date with CUDA C
|
||||
releases.
|
||||
|
||||
.. versionadded:: 3.19
|
||||
QNX support.
|
||||
|
||||
This script makes use of the standard :command:`find_package` arguments of
|
||||
``<VERSION>``, ``REQUIRED`` and ``QUIET``. ``CUDA_FOUND`` will report if an
|
||||
acceptable version of CUDA was found.
|
||||
@@ -94,6 +92,8 @@ or ``cuda_wrap_srcs()``:
|
||||
when ``CUDA_BUILD_EMULATION`` is ``TRUE``.
|
||||
|
||||
``CUDA_LINK_LIBRARIES_KEYWORD`` (Default: ``""``)
|
||||
.. versionadded:: 3.9
|
||||
|
||||
The ``<PRIVATE|PUBLIC|INTERFACE>`` keyword to use for internal
|
||||
:command:`target_link_libraries` calls. The default is to use no keyword which
|
||||
uses the old "plain" form of :command:`target_link_libraries`. Note that is matters
|
||||
@@ -116,13 +116,19 @@ or ``cuda_wrap_srcs()``:
|
||||
the host compiler is constructed with one or more visual studio macros
|
||||
such as ``$(VCInstallDir)``, that expands out to the path when
|
||||
the command is run from within VS.
|
||||
If the :envvar:`CUDAHOSTCXX` environment variable is set it will
|
||||
be used as the default.
|
||||
|
||||
.. versionadded:: 3.13
|
||||
If the :envvar:`CUDAHOSTCXX` environment variable is set it will
|
||||
be used as the default.
|
||||
|
||||
``CUDA_NVCC_FLAGS``, ``CUDA_NVCC_FLAGS_<CONFIG>``
|
||||
Additional NVCC command line arguments. NOTE: multiple arguments must be
|
||||
semi-colon delimited (e.g. ``--compiler-options;-Wall``)
|
||||
|
||||
.. versionadded:: 3.6
|
||||
Contents of these variables may use
|
||||
:manual:`generator expressions <cmake-generator-expressions(7)>`.
|
||||
|
||||
``CUDA_PROPAGATE_HOST_FLAGS`` (Default: ``ON``)
|
||||
Set to ``ON`` to propagate :variable:`CMAKE_{C,CXX}_FLAGS <CMAKE_<LANG>_FLAGS>` and their configuration
|
||||
dependent counterparts (e.g. ``CMAKE_C_FLAGS_DEBUG``) automatically to the
|
||||
@@ -142,6 +148,8 @@ or ``cuda_wrap_srcs()``:
|
||||
``cuda_link_separable_compilation_objects()`` should be called.
|
||||
|
||||
``CUDA_SOURCE_PROPERTY_FORMAT``
|
||||
.. versionadded:: 3.3
|
||||
|
||||
If this source file property is set, it can override the format specified
|
||||
to ``cuda_wrap_srcs()`` (``OBJ``, ``PTX``, ``CUBIN``, or ``FATBIN``). If an input source file
|
||||
is not a ``.cu`` file, setting this file will cause it to be treated as a ``.cu``
|
||||
@@ -149,6 +157,8 @@ or ``cuda_wrap_srcs()``:
|
||||
this property.
|
||||
|
||||
``CUDA_USE_STATIC_CUDA_RUNTIME`` (Default: ``ON``)
|
||||
.. versionadded:: 3.3
|
||||
|
||||
When enabled the static version of the CUDA runtime library will be used
|
||||
in ``CUDA_LIBRARIES``. If the version of CUDA configured doesn't support
|
||||
this option, then it will be silently disabled.
|
||||
@@ -227,12 +237,16 @@ Returns a list of ``PTX`` files generated from the input source files.
|
||||
|
||||
cuda_compile_fatbin(<generated_files> <file>... [OPTIONS ...])
|
||||
|
||||
.. versionadded:: 3.1
|
||||
|
||||
Returns a list of ``FATBIN`` files generated from the input source files.
|
||||
|
||||
.. code-block:: cmake
|
||||
|
||||
cuda_compile_cubin(<generated_files> <file>... [OPTIONS ...])
|
||||
|
||||
.. versionadded:: 3.1
|
||||
|
||||
Returns a list of ``CUBIN`` files generated from the input source files.
|
||||
|
||||
.. code-block:: cmake
|
||||
@@ -374,7 +388,8 @@ The script defines the following variables:
|
||||
Full version in the ``X.Y`` format.
|
||||
|
||||
``CUDA_HAS_FP16``
|
||||
Whether a short float (``float16``, ``fp16``) is supported.
|
||||
.. versionadded:: 3.6
|
||||
Whether a short float (``float16``, ``fp16``) is supported.
|
||||
|
||||
``CUDA_TOOLKIT_ROOT_DIR``
|
||||
Path to the CUDA Toolkit (defined if not set).
|
||||
@@ -407,7 +422,8 @@ The script defines the following variables:
|
||||
Only available for CUDA version 5.5+.
|
||||
|
||||
``CUDA_cudadevrt_LIBRARY``
|
||||
Device runtime library. Required for separable compilation.
|
||||
.. versionadded:: 3.7
|
||||
Device runtime library. Required for separable compilation.
|
||||
|
||||
``CUDA_cupti_LIBRARY``
|
||||
CUDA Profiling Tools Interface library.
|
||||
@@ -418,8 +434,9 @@ The script defines the following variables:
|
||||
Only available for CUDA version 3.2+.
|
||||
|
||||
``CUDA_cusolver_LIBRARY``
|
||||
CUDA Direct Solver library.
|
||||
Only available for CUDA version 7.0+.
|
||||
.. versionadded:: 3.2
|
||||
CUDA Direct Solver library.
|
||||
Only available for CUDA version 7.0+.
|
||||
|
||||
``CUDA_cusparse_LIBRARY``
|
||||
CUDA Sparse Matrix library.
|
||||
@@ -493,12 +510,14 @@ The script defines the following variables:
|
||||
Windows only.
|
||||
|
||||
``CUDA_nvToolsExt_LIBRARY``
|
||||
NVIDA CUDA Tools Extension library.
|
||||
Available for CUDA version 5+.
|
||||
.. versionadded:: 3.16
|
||||
NVIDA CUDA Tools Extension library.
|
||||
Available for CUDA version 5+.
|
||||
|
||||
``CUDA_OpenCL_LIBRARY``
|
||||
NVIDA CUDA OpenCL library.
|
||||
Available for CUDA version 5+.
|
||||
.. versionadded:: 3.16
|
||||
NVIDA CUDA OpenCL library.
|
||||
Available for CUDA version 5+.
|
||||
|
||||
#]=======================================================================]
|
||||
|
||||
|
||||
@@ -11,6 +11,9 @@ This script locates the NVIDIA CUDA toolkit and the associated libraries, but
|
||||
does not require the ``CUDA`` language be enabled for a given project. This
|
||||
module does not search for the NVIDIA CUDA Samples.
|
||||
|
||||
.. versionadded:: 3.19
|
||||
QNX support.
|
||||
|
||||
Search Behavior
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -426,6 +429,8 @@ Result variables
|
||||
Runtime library ``cudart``.
|
||||
|
||||
``CUDAToolkit_LIBRARY_ROOT``
|
||||
.. versionadded:: 3.18
|
||||
|
||||
The path to the CUDA Toolkit directory containing the nvvm directory and
|
||||
version.txt.
|
||||
|
||||
|
||||
@@ -7,8 +7,11 @@ FindCURL
|
||||
|
||||
Find the native CURL headers and libraries.
|
||||
|
||||
This module accept optional COMPONENTS to check supported features and
|
||||
protocols::
|
||||
.. versionadded:: 3.14
|
||||
This module accept optional COMPONENTS to check supported features and
|
||||
protocols:
|
||||
|
||||
::
|
||||
|
||||
PROTOCOLS: ICT FILE FTP FTPS GOPHER HTTP HTTPS IMAP IMAPS LDAP LDAPS POP3
|
||||
POP3S RTMP RTSP SCP SFTP SMB SMBS SMTP SMTPS TELNET TFTP
|
||||
@@ -18,6 +21,8 @@ protocols::
|
||||
IMPORTED Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.12
|
||||
|
||||
This module defines :prop_tgt:`IMPORTED` target ``CURL::libcurl``, if
|
||||
curl has been found.
|
||||
|
||||
@@ -38,9 +43,14 @@ This module defines the following variables:
|
||||
``CURL_VERSION_STRING``
|
||||
The version of ``curl`` found.
|
||||
|
||||
.. versionadded:: 3.13
|
||||
Debug and Release variants are found separately.
|
||||
|
||||
CURL CMake
|
||||
^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.17
|
||||
|
||||
If CURL was built using the CMake buildsystem then it provides its own
|
||||
``CURLConfig.cmake`` file for use with the :command:`find_package` command's
|
||||
config mode. This module looks for this file and, if found,
|
||||
|
||||
@@ -13,6 +13,8 @@ features this function (i.e. at least ``1.1.19``)
|
||||
Imported targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.15
|
||||
|
||||
This module defines :prop_tgt:`IMPORTED` target ``Cups::Cups``, if Cups has
|
||||
been found.
|
||||
|
||||
|
||||
@@ -19,6 +19,8 @@ This module defines the following variables:
|
||||
``CURSES_LIBRARIES``
|
||||
The libraries needed to use Curses.
|
||||
``CURSES_CFLAGS``
|
||||
.. versionadded:: 3.16
|
||||
|
||||
Parameters which ought be given to C/C++ compilers when using Curses.
|
||||
``CURSES_HAVE_CURSES_H``
|
||||
True if curses.h is available.
|
||||
@@ -31,8 +33,10 @@ This module defines the following variables:
|
||||
|
||||
Set ``CURSES_NEED_NCURSES`` to ``TRUE`` before the
|
||||
``find_package(Curses)`` call if NCurses functionality is required.
|
||||
Set ``CURSES_NEED_WIDE`` to ``TRUE`` before the
|
||||
``find_package(Curses)`` call if unicode functionality is required.
|
||||
|
||||
.. versionadded:: 3.10
|
||||
Set ``CURSES_NEED_WIDE`` to ``TRUE`` before the
|
||||
``find_package(Curses)`` call if unicode functionality is required.
|
||||
|
||||
Backward Compatibility
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -6,8 +6,7 @@ FindDoxygen
|
||||
-----------
|
||||
|
||||
Doxygen is a documentation generation tool (see http://www.doxygen.org).
|
||||
This module looks for Doxygen and some optional tools it supports. These
|
||||
tools are enabled as components in the :command:`find_package` command:
|
||||
This module looks for Doxygen and some optional tools it supports:
|
||||
|
||||
``dot``
|
||||
`Graphviz <http://graphviz.org>`_ ``dot`` utility used to render various
|
||||
@@ -19,7 +18,9 @@ tools are enabled as components in the :command:`find_package` command:
|
||||
`Dia <https://wiki.gnome.org/Apps/Dia>`_ the diagram editor used by Doxygen's
|
||||
``\diafile`` command.
|
||||
|
||||
Examples:
|
||||
.. versionadded:: 3.9
|
||||
These tools are available as components in the :command:`find_package` command.
|
||||
For example:
|
||||
|
||||
.. code-block:: cmake
|
||||
|
||||
@@ -38,12 +39,13 @@ The following variables are defined by this module:
|
||||
|
||||
The version reported by ``doxygen --version``.
|
||||
|
||||
The module defines ``IMPORTED`` targets for Doxygen and each component found.
|
||||
These can be used as part of custom commands, etc. and should be preferred over
|
||||
old-style (and now deprecated) variables like ``DOXYGEN_EXECUTABLE``. The
|
||||
following import targets are defined if their corresponding executable could be
|
||||
found (the component import targets will only be defined if that component was
|
||||
requested):
|
||||
.. versionadded:: 3.9
|
||||
The module defines ``IMPORTED`` targets for Doxygen and each component found.
|
||||
These can be used as part of custom commands, etc. and should be preferred over
|
||||
old-style (and now deprecated) variables like ``DOXYGEN_EXECUTABLE``. The
|
||||
following import targets are defined if their corresponding executable could be
|
||||
found (the component import targets will only be defined if that component was
|
||||
requested):
|
||||
|
||||
::
|
||||
|
||||
@@ -58,6 +60,8 @@ Functions
|
||||
|
||||
.. command:: doxygen_add_docs
|
||||
|
||||
.. versionadded:: 3.9
|
||||
|
||||
This function is intended as a convenience for adding a target for generating
|
||||
documentation with Doxygen. It aims to provide sensible defaults so that
|
||||
projects can generally just provide the input files and directories and that
|
||||
@@ -93,19 +97,21 @@ Functions
|
||||
the :command:`add_custom_target` command used to create the custom target
|
||||
internally.
|
||||
|
||||
If ``ALL`` is set, the target will be added to the default build target.
|
||||
.. versionadded:: 3.12
|
||||
If ``ALL`` is set, the target will be added to the default build target.
|
||||
|
||||
If ``USE_STAMP_FILE`` is set, the custom command defined by this function will
|
||||
create a stamp file with the name ``<targetName>.stamp`` in the current
|
||||
binary directory whenever doxygen is re-run. With this option present, all
|
||||
items in ``<filesOrDirs>`` must be files (i.e. no directories, symlinks or
|
||||
wildcards) and each of the files must exist at the time
|
||||
``doxygen_add_docs()`` is called. An error will be raised if any of the
|
||||
items listed is missing or is not a file when ``USE_STAMP_FILE`` is given.
|
||||
A dependency will be created on each of the files so that doxygen will only
|
||||
be re-run if one of the files is updated. Without the ``USE_STAMP_FILE``
|
||||
option, doxygen will always be re-run if the ``<targetName>`` target is built
|
||||
regardless of whether anything listed in ``<filesOrDirs>`` has changed.
|
||||
.. versionadded:: 3.16
|
||||
If ``USE_STAMP_FILE`` is set, the custom command defined by this function will
|
||||
create a stamp file with the name ``<targetName>.stamp`` in the current
|
||||
binary directory whenever doxygen is re-run. With this option present, all
|
||||
items in ``<filesOrDirs>`` must be files (i.e. no directories, symlinks or
|
||||
wildcards) and each of the files must exist at the time
|
||||
``doxygen_add_docs()`` is called. An error will be raised if any of the
|
||||
items listed is missing or is not a file when ``USE_STAMP_FILE`` is given.
|
||||
A dependency will be created on each of the files so that doxygen will only
|
||||
be re-run if one of the files is updated. Without the ``USE_STAMP_FILE``
|
||||
option, doxygen will always be re-run if the ``<targetName>`` target is built
|
||||
regardless of whether anything listed in ``<filesOrDirs>`` has changed.
|
||||
|
||||
The contents of the generated ``Doxyfile`` can be customized by setting CMake
|
||||
variables before calling ``doxygen_add_docs()``. Any variable with a name of
|
||||
@@ -308,18 +314,19 @@ if they contain at least one space:
|
||||
WARN_LOGFILE
|
||||
XML_OUTPUT
|
||||
|
||||
There are situations where it may be undesirable for a particular config option
|
||||
to be automatically quoted by ``doxygen_add_docs()``, such as ``ALIASES`` which
|
||||
may need to include its own embedded quoting. The ``DOXYGEN_VERBATIM_VARS``
|
||||
variable can be used to specify a list of Doxygen variables (including the
|
||||
leading ``DOXYGEN_`` prefix) which should not be quoted. The project is then
|
||||
responsible for ensuring that those variables' values make sense when placed
|
||||
directly in the Doxygen input file. In the case of list variables, list items
|
||||
are still separated by spaces, it is only the automatic quoting that is
|
||||
skipped. For example, the following allows ``doxygen_add_docs()`` to apply
|
||||
quoting to ``DOXYGEN_PROJECT_BRIEF``, but not each item in the
|
||||
``DOXYGEN_ALIASES`` list (:ref:`bracket syntax <Bracket Argument>` can also
|
||||
be used to make working with embedded quotes easier):
|
||||
.. versionadded:: 3.11
|
||||
There are situations where it may be undesirable for a particular config option
|
||||
to be automatically quoted by ``doxygen_add_docs()``, such as ``ALIASES`` which
|
||||
may need to include its own embedded quoting. The ``DOXYGEN_VERBATIM_VARS``
|
||||
variable can be used to specify a list of Doxygen variables (including the
|
||||
leading ``DOXYGEN_`` prefix) which should not be quoted. The project is then
|
||||
responsible for ensuring that those variables' values make sense when placed
|
||||
directly in the Doxygen input file. In the case of list variables, list items
|
||||
are still separated by spaces, it is only the automatic quoting that is
|
||||
skipped. For example, the following allows ``doxygen_add_docs()`` to apply
|
||||
quoting to ``DOXYGEN_PROJECT_BRIEF``, but not each item in the
|
||||
``DOXYGEN_ALIASES`` list (:ref:`bracket syntax <Bracket Argument>` can also
|
||||
be used to make working with embedded quotes easier):
|
||||
|
||||
.. code-block:: cmake
|
||||
|
||||
@@ -341,6 +348,8 @@ The resultant ``Doxyfile`` will contain the following lines:
|
||||
Deprecated Result Variables
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
.. deprecated:: 3.9
|
||||
|
||||
For compatibility with previous versions of CMake, the following variables
|
||||
are also defined but they are deprecated and should no longer be used:
|
||||
|
||||
@@ -375,6 +384,8 @@ are also defined but they are deprecated and should no longer be used:
|
||||
Deprecated Hint Variables
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
.. deprecated:: 3.9
|
||||
|
||||
.. variable:: DOXYGEN_SKIP_DOT
|
||||
|
||||
This variable has no effect for the component form of ``find_package``.
|
||||
|
||||
@@ -11,6 +11,8 @@ Expat is a stream-oriented XML parser library written in C.
|
||||
Imported Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.10
|
||||
|
||||
This module defines the following :prop_tgt:`IMPORTED` targets:
|
||||
|
||||
``EXPAT::EXPAT``
|
||||
|
||||
@@ -37,11 +37,20 @@ If flex is found on the system, the module provides the macro:
|
||||
)
|
||||
|
||||
which creates a custom command to generate the ``FlexOutput`` file from
|
||||
the ``FlexInput`` file. If ``COMPILE_FLAGS`` option is specified, the next
|
||||
parameter is added to the flex command line. If flex is configured to
|
||||
output a header file, the ``DEFINES_FILE`` option may be used to specify its
|
||||
name. Name is an alias used to get details of this custom command.
|
||||
Indeed the macro defines the following variables:
|
||||
the ``FlexInput`` file. Name is an alias used to get details of this custom
|
||||
command. If ``COMPILE_FLAGS`` option is specified, the next
|
||||
parameter is added to the flex command line.
|
||||
|
||||
.. versionadded:: 3.5
|
||||
If flex is configured to
|
||||
output a header file, the ``DEFINES_FILE`` option may be used to specify its
|
||||
name.
|
||||
|
||||
.. versionchanged:: 3.17
|
||||
When :policy:`CMP0098` is set to ``NEW``, ``flex`` runs in the
|
||||
:variable:`CMAKE_CURRENT_BINARY_DIR` directory.
|
||||
|
||||
The macro defines the following variables:
|
||||
|
||||
::
|
||||
|
||||
|
||||
@@ -77,6 +77,10 @@ The following cache variables are also available to set or use:
|
||||
|
||||
``FLTK_IMAGES_LIBRARY_DEBUG``
|
||||
The FLTK Images library (debug)
|
||||
|
||||
.. versionadded:: 3.11
|
||||
Debug and Release variants are found separately and use per-configuration
|
||||
variables.
|
||||
#]=======================================================================]
|
||||
|
||||
if(NOT FLTK_SKIP_OPENGL)
|
||||
|
||||
@@ -10,6 +10,8 @@ Find the FreeType font renderer includes and library.
|
||||
Imported Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.10
|
||||
|
||||
This module defines the following :prop_tgt:`IMPORTED` target:
|
||||
|
||||
``Freetype::Freetype``
|
||||
@@ -33,7 +35,10 @@ This module will set the following variables in your project:
|
||||
``FREETYPE_LIBRARIES``
|
||||
the library to link against
|
||||
``FREETYPE_VERSION_STRING``
|
||||
the version of freetype found (since CMake 2.8.8)
|
||||
the version of freetype found
|
||||
|
||||
.. versionadded:: 3.7
|
||||
Debug and Release variants are found separately.
|
||||
|
||||
Hints
|
||||
^^^^^
|
||||
|
||||
@@ -10,6 +10,8 @@ Find Geospatial Data Abstraction Library (GDAL).
|
||||
IMPORTED Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.14
|
||||
|
||||
This module defines :prop_tgt:`IMPORTED` target ``GDAL::GDAL``
|
||||
if GDAL has been found.
|
||||
|
||||
@@ -25,7 +27,8 @@ This module will set the following variables in your project:
|
||||
``GDAL_LIBRARIES``
|
||||
Libraries to link to GDAL.
|
||||
``GDAL_VERSION``
|
||||
The version of GDAL found.
|
||||
.. versionadded:: 3.14
|
||||
The version of GDAL found.
|
||||
|
||||
Cache variables
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -21,6 +21,8 @@ The following variables may be set to influence this module's behavior:
|
||||
Imported Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.1
|
||||
|
||||
This module defines the following :ref:`Imported Targets <Imported Targets>`:
|
||||
|
||||
|
||||
@@ -55,6 +57,9 @@ This module defines the following variables:
|
||||
``GLEW_VERSION_MICRO``
|
||||
GLEW micro version
|
||||
|
||||
.. versionadded:: 3.7
|
||||
Debug and Release variants are found separately.
|
||||
|
||||
#]=======================================================================]
|
||||
|
||||
include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
|
||||
|
||||
@@ -10,6 +10,8 @@ Find OpenGL Utility Toolkit (GLUT) library and include files.
|
||||
IMPORTED Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.1
|
||||
|
||||
This module defines the :prop_tgt:`IMPORTED` targets:
|
||||
|
||||
``GLUT::GLUT``
|
||||
@@ -33,6 +35,9 @@ Also defined, but not for general use are:
|
||||
GLUT_glut_LIBRARY = the full path to the glut library.
|
||||
GLUT_Xmu_LIBRARY = the full path to the Xmu library.
|
||||
GLUT_Xi_LIBRARY = the full path to the Xi Library.
|
||||
|
||||
.. versionadded:: 3.13
|
||||
Debug and Release variants are found separately.
|
||||
#]=======================================================================]
|
||||
|
||||
include(${CMAKE_CURRENT_LIST_DIR}/SelectLibraryConfigurations.cmake)
|
||||
|
||||
@@ -16,6 +16,23 @@ module. See example below.
|
||||
* ``glade``
|
||||
* ``glademm``
|
||||
|
||||
Imported Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
This module defines the following :prop_tgt:`IMPORTED` targets (subject to
|
||||
component selection):
|
||||
|
||||
``GTK2::atk``, ``GTK2::atkmm``, ``GTK2::cairo``, ``GTK2::cairomm``,
|
||||
``GTK2::gdk_pixbuf``, ``GTK2::gdk``, ``GTK2::gdkmm``, ``GTK2::gio``,
|
||||
``GTK2::giomm``, ``GTK2::glade``, ``GTK2::glademm``, ``GTK2::glib``,
|
||||
``GTK2::glibmm``, ``GTK2::gmodule``, ``GTK2::gobject``, ``GTK2::gthread``,
|
||||
``GTK2::gtk``, ``GTK2::gtkmm``, ``GTK2::harfbuzz``, ``GTK2::pango``,
|
||||
``GTK2::pangocairo``, ``GTK2::pangoft2``, ``GTK2::pangomm``,
|
||||
``GTK2::pangoxft``, ``GTK2::sigc``.
|
||||
|
||||
.. versionadded:: 3.16.7
|
||||
Added the ``GTK2::harfbuzz`` target.
|
||||
|
||||
Result Variables
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -28,7 +45,8 @@ The following variables will be defined for your use
|
||||
``GTK2_LIBRARIES``
|
||||
All libraries
|
||||
``GTK2_TARGETS``
|
||||
All imported targets
|
||||
.. versionadded:: 3.5
|
||||
All imported targets
|
||||
``GTK2_DEFINITIONS``
|
||||
Additional compiler flags
|
||||
``GTK2_VERSION``
|
||||
@@ -40,6 +58,10 @@ The following variables will be defined for your use
|
||||
``GTK2_PATCH_VERSION``
|
||||
The patch version of GTK2
|
||||
|
||||
.. versionadded:: 3.5
|
||||
When ``GTK2_USE_IMPORTED_TARGETS`` is set to ``TRUE``, ``GTK2_LIBRARIES``
|
||||
will list imported targets instead of library paths.
|
||||
|
||||
Input Variables
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
@@ -7,10 +7,14 @@ FindGTest
|
||||
|
||||
Locate the Google C++ Testing Framework.
|
||||
|
||||
.. versionadded:: 3.20
|
||||
Upstream ``GTestConfig.cmake`` is used if possible.
|
||||
|
||||
Imported targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
This module defines the following :prop_tgt:`IMPORTED` targets:
|
||||
.. versionadded:: 3.20
|
||||
This module defines the following :prop_tgt:`IMPORTED` targets:
|
||||
|
||||
``GTest::gtest``
|
||||
The Google Test ``gtest`` library, if found; adds Thread::Thread
|
||||
@@ -18,8 +22,9 @@ This module defines the following :prop_tgt:`IMPORTED` targets:
|
||||
``GTest::gtest_main``
|
||||
The Google Test ``gtest_main`` library, if found
|
||||
|
||||
For backwards compatibility, this module defines additionally the
|
||||
following deprecated :prop_tgt:`IMPORTED` targets:
|
||||
.. deprecated:: 3.20
|
||||
For backwards compatibility, this module defines additionally the
|
||||
following deprecated :prop_tgt:`IMPORTED` targets (available since 3.5):
|
||||
|
||||
``GTest::GTest``
|
||||
The Google Test ``gtest`` library, if found; adds Thread::Thread
|
||||
@@ -81,6 +86,10 @@ Deeper integration with CTest
|
||||
|
||||
See :module:`GoogleTest` for information on the :command:`gtest_add_tests`
|
||||
and :command:`gtest_discover_tests` commands.
|
||||
|
||||
.. versionchanged:: 3.9
|
||||
Previous CMake versions defined :command:`gtest_add_tests` macro in this
|
||||
module.
|
||||
#]=======================================================================]
|
||||
|
||||
include(${CMAKE_CURRENT_LIST_DIR}/GoogleTest.cmake)
|
||||
|
||||
@@ -54,7 +54,7 @@ PO_FILES <po1> <po2> ... )
|
||||
If ALL is specified, the po files are processed when building the all traget.
|
||||
It creates a custom target "pofiles".
|
||||
|
||||
.. note::
|
||||
.. versionadded:: 3.2
|
||||
If you wish to use the Gettext library (libintl), use :module:`FindIntl`.
|
||||
#]=======================================================================]
|
||||
|
||||
|
||||
@@ -5,12 +5,6 @@
|
||||
FindGit
|
||||
-------
|
||||
|
||||
The module defines the following ``IMPORTED`` targets (when
|
||||
:prop_gbl:`CMAKE_ROLE` is ``PROJECT``):
|
||||
|
||||
``Git::Git``
|
||||
Executable of the Git command-line client.
|
||||
|
||||
The module defines the following variables:
|
||||
|
||||
``GIT_EXECUTABLE``
|
||||
@@ -20,6 +14,13 @@ The module defines the following variables:
|
||||
``GIT_VERSION_STRING``
|
||||
The version of Git found.
|
||||
|
||||
.. versionadded:: 3.14
|
||||
The module defines the following ``IMPORTED`` targets (when
|
||||
:prop_gbl:`CMAKE_ROLE` is ``PROJECT``):
|
||||
|
||||
``Git::Git``
|
||||
Executable of the Git command-line client.
|
||||
|
||||
Example usage:
|
||||
|
||||
.. code-block:: cmake
|
||||
|
||||
@@ -10,6 +10,8 @@ Find the GNU Transport Layer Security library (gnutls)
|
||||
IMPORTED Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.16
|
||||
|
||||
This module defines :prop_tgt:`IMPORTED` target ``GnuTLS::GnuTLS``, if
|
||||
gnutls has been found.
|
||||
|
||||
|
||||
@@ -32,6 +32,9 @@ static link to a dynamic link for ``HDF5`` and all of it's dependencies.
|
||||
To use this feature, make sure that the ``HDF5_USE_STATIC_LIBRARIES``
|
||||
variable is set before the call to find_package.
|
||||
|
||||
.. versionadded:: 3.10
|
||||
Support for ``HDF5_USE_STATIC_LIBRARIES`` on Windows.
|
||||
|
||||
Both the serial and parallel ``HDF5`` wrappers are considered and the first
|
||||
directory to contain either one will be used. In the event that both appear
|
||||
in the same directory the serial version is preferentially selected. This
|
||||
@@ -51,7 +54,8 @@ This module will set the following variables in your project:
|
||||
``HDF5_FOUND``
|
||||
HDF5 was found on the system
|
||||
``HDF5_VERSION``
|
||||
HDF5 library version
|
||||
.. versionadded:: 3.3
|
||||
HDF5 library version
|
||||
``HDF5_INCLUDE_DIRS``
|
||||
Location of the HDF5 header files
|
||||
``HDF5_DEFINITIONS``
|
||||
@@ -128,12 +132,18 @@ Hints
|
||||
The following variables can be set to guide the search for HDF5 libraries and includes:
|
||||
|
||||
``HDF5_PREFER_PARALLEL``
|
||||
.. versionadded:: 3.4
|
||||
|
||||
set ``true`` to prefer parallel HDF5 (by default, serial is preferred)
|
||||
|
||||
``HDF5_FIND_DEBUG``
|
||||
.. versionadded:: 3.9
|
||||
|
||||
Set ``true`` to get extra debugging output.
|
||||
|
||||
``HDF5_NO_FIND_PACKAGE_CONFIG_FILE``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
Set ``true`` to skip trying to find ``hdf5-config.cmake``.
|
||||
#]=======================================================================]
|
||||
|
||||
|
||||
@@ -15,7 +15,8 @@ The module defines the following variables:
|
||||
HG_FOUND - true if the command line client was found
|
||||
HG_VERSION_STRING - the version of mercurial found
|
||||
|
||||
If the command line client executable is found the following macro is defined:
|
||||
.. versionadded:: 3.1
|
||||
If the command line client executable is found the following macro is defined:
|
||||
|
||||
::
|
||||
|
||||
|
||||
@@ -18,6 +18,9 @@ Note that on Windows ``data`` is named ``dt`` and ``i18n`` is named
|
||||
``in``; any of the names may be used, and the appropriate
|
||||
platform-specific library name will be automatically selected.
|
||||
|
||||
.. versionadded:: 3.11
|
||||
Added support for static libraries on Windows.
|
||||
|
||||
This module reports information about the ICU installation in
|
||||
several variables. General variables::
|
||||
|
||||
|
||||
@@ -23,6 +23,15 @@ Ice 3.7 and later also include C++11-specific components:
|
||||
|
||||
Note that the set of supported components is Ice version-specific.
|
||||
|
||||
.. versionadded:: 3.4
|
||||
Imported targets for components and most ``EXECUTABLE`` variables.
|
||||
|
||||
.. versionadded:: 3.7
|
||||
Debug and Release variants are found separately.
|
||||
|
||||
.. versionadded:: 3.10
|
||||
Ice 3.7 support, including new components, programs and the Nuget package.
|
||||
|
||||
This module reports information about the Ice installation in
|
||||
several variables. General variables::
|
||||
|
||||
@@ -56,6 +65,9 @@ Ice slice programs are reported in::
|
||||
Ice_SLICE2PY_EXECUTABLE - path to slice2py executable
|
||||
Ice_SLICE2RB_EXECUTABLE - path to slice2rb executable
|
||||
|
||||
.. versionadded:: 3.14
|
||||
Variables for ``slice2confluence`` and ``slice2matlab``.
|
||||
|
||||
Ice programs are reported in::
|
||||
|
||||
Ice_GLACIER2ROUTER_EXECUTABLE - path to glacier2router executable
|
||||
|
||||
@@ -7,6 +7,9 @@ FindImageMagick
|
||||
|
||||
Find ImageMagick binary suite.
|
||||
|
||||
.. versionadded:: 3.9
|
||||
Added support for ImageMagick 7.
|
||||
|
||||
This module will search for a set of ImageMagick tools specified as
|
||||
components in the :command:`find_package` call. Typical components include,
|
||||
but are not limited to (future versions of ImageMagick might have
|
||||
|
||||
@@ -15,7 +15,9 @@ installation in several variables. General variables::
|
||||
Intl_FOUND - true if the libintl headers and libraries were found
|
||||
Intl_INCLUDE_DIRS - the directory containing the libintl headers
|
||||
Intl_LIBRARIES - libintl libraries to be linked
|
||||
Intl::Intl - imported target for Intl
|
||||
|
||||
.. versionadded:: 3.20
|
||||
This module defines :prop_tgt:`IMPORTED` target ``Intl::Intl``.
|
||||
|
||||
The following cache variables may also be set::
|
||||
|
||||
@@ -26,6 +28,10 @@ The following cache variables may also be set::
|
||||
Intl_IS_BUILTIN - whether intl is a part of the C library determined
|
||||
from the result of Intl_HAVE_GETTEXT_BUILTIN and Intl_HAVE_DCGETTEXT_BUILTIN
|
||||
|
||||
.. versionadded:: 3.20
|
||||
Added the ``Intl_HAVE_GETTEXT_BUILTIN``, ``Intl_HAVE_DCGETTEXT_BUILTIN`` and
|
||||
``Intl_IS_BUILTIN`` variables.
|
||||
|
||||
.. note::
|
||||
On some platforms, such as Linux with GNU libc, the gettext
|
||||
functions are present in the C standard library and libintl
|
||||
|
||||
@@ -10,6 +10,8 @@ Find the Joint Photographic Experts Group (JPEG) library (``libjpeg``)
|
||||
Imported targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.12
|
||||
|
||||
This module defines the following :prop_tgt:`IMPORTED` targets:
|
||||
|
||||
``JPEG::JPEG``
|
||||
@@ -27,7 +29,8 @@ This module will set the following variables in your project:
|
||||
``JPEG_LIBRARIES``
|
||||
the libraries needed to use JPEG.
|
||||
``JPEG_VERSION``
|
||||
the version of the JPEG library found
|
||||
.. versionadded:: 3.12
|
||||
the version of the JPEG library found
|
||||
|
||||
Cache variables
|
||||
^^^^^^^^^^^^^^^
|
||||
@@ -41,6 +44,9 @@ The following cache variables may also be set:
|
||||
``JPEG_LIBRARY_DEBUG``
|
||||
where to find the JPEG library (debug).
|
||||
|
||||
.. versionadded:: 3.12
|
||||
Debug and Release variand are found separately.
|
||||
|
||||
Obsolete variables
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
@@ -13,6 +13,9 @@ to specify a Java installation prefix explicitly.
|
||||
|
||||
See also the :module:`FindJNI` module to find Java Native Interface (JNI).
|
||||
|
||||
.. versionadded:: 3.10
|
||||
Added support for Java 9+ version parsing.
|
||||
|
||||
Specify one or more of the following components as you call this find module. See example below.
|
||||
|
||||
::
|
||||
@@ -41,7 +44,9 @@ This module sets the following result variables:
|
||||
Java_VERSION_TWEAK = The tweak version of the package found (after '_')
|
||||
Java_VERSION = This is set to: $major[.$minor[.$patch[.$tweak]]]
|
||||
|
||||
|
||||
.. versionadded:: 3.4
|
||||
Added the ``Java_IDLJ_EXECUTABLE`` and ``Java_JARSIGNER_EXECUTABLE``
|
||||
variables.
|
||||
|
||||
The minimum required version of Java can be specified using the
|
||||
:command:`find_package` syntax, e.g.
|
||||
|
||||
@@ -45,12 +45,33 @@ The following variables may be set to influence this module's behavior:
|
||||
* ``Arm_ilp64_mp``
|
||||
* ``Generic``
|
||||
|
||||
.. versionadded:: 3.6
|
||||
``OpenBLAS`` support.
|
||||
|
||||
.. versionadded:: 3.11
|
||||
``FLAME`` support.
|
||||
|
||||
.. versionadded:: 3.13
|
||||
Added ILP64 MKL variants (``Intel10_64ilp``, ``Intel10_64ilp_seq``).
|
||||
|
||||
.. versionadded:: 3.17
|
||||
Added single dynamic library MKL variant (``Intel10_64_dyn``).
|
||||
|
||||
.. versionadded:: 3.18
|
||||
Arm Performance Libraries support (``Arm``, ``Arm_mp``, ``Arm_ilp64``,
|
||||
``Arm_ilp64_mp``).
|
||||
|
||||
.. versionadded:: 3.19
|
||||
``FlexiBLAS`` support.
|
||||
|
||||
``BLA_F95``
|
||||
if ``ON`` tries to find the BLAS95/LAPACK95 interfaces
|
||||
|
||||
Imported targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.18
|
||||
|
||||
This module defines the following :prop_tgt:`IMPORTED` target:
|
||||
|
||||
``LAPACK::LAPACK``
|
||||
|
||||
@@ -11,6 +11,10 @@ This module finds an installed LaTeX and determines the location
|
||||
of the compiler. Additionally the module looks for Latex-related
|
||||
software like BibTeX.
|
||||
|
||||
.. versionadded:: 3.2
|
||||
Component processing; support for htlatex, pdftops, Biber, xindy, XeLaTeX,
|
||||
LuaLaTeX.
|
||||
|
||||
This module sets the following result variables::
|
||||
|
||||
LATEX_FOUND: whether found Latex and requested components
|
||||
|
||||
@@ -22,6 +22,10 @@ The module defines the following ``IMPORTED`` targets:
|
||||
::
|
||||
|
||||
LibArchive::LibArchive - target for linking against libarchive
|
||||
|
||||
.. versionadded:: 3.6
|
||||
Support for new libarchive 3.2 version string format.
|
||||
|
||||
#]=======================================================================]
|
||||
|
||||
find_path(LibArchive_INCLUDE_DIR
|
||||
|
||||
@@ -11,6 +11,8 @@ Find LZMA compression algorithm headers and library.
|
||||
Imported Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.14
|
||||
|
||||
This module defines :prop_tgt:`IMPORTED` target ``LibLZMA::LibLZMA``, if
|
||||
liblzma has been found.
|
||||
|
||||
|
||||
@@ -10,12 +10,16 @@ Find the XML processing library (libxml2).
|
||||
IMPORTED Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.12
|
||||
|
||||
The following :prop_tgt:`IMPORTED` targets may be defined:
|
||||
|
||||
``LibXml2::LibXml2``
|
||||
If the libxml2 library has been found
|
||||
libxml2 library.
|
||||
``LibXml2::xmllint``
|
||||
If the xmllint command-line executable has been found
|
||||
.. versionadded:: 3.17
|
||||
|
||||
xmllint command-line executable.
|
||||
|
||||
Result variables
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -11,6 +11,8 @@ Transformations (XSLT) library (LibXslt)
|
||||
IMPORTED Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.18
|
||||
|
||||
The following :prop_tgt:`IMPORTED` targets may be defined:
|
||||
|
||||
``LibXslt::LibXslt``
|
||||
@@ -35,7 +37,8 @@ Additionally, the following two variables are set (but not required
|
||||
for using xslt):
|
||||
|
||||
``LIBXSLT_EXSLT_INCLUDE_DIR``
|
||||
The include directory for exslt.
|
||||
.. versionadded:: 3.18
|
||||
The include directory for exslt.
|
||||
``LIBXSLT_EXSLT_LIBRARIES``
|
||||
Link to these if you need to link against the exslt library.
|
||||
``LIBXSLT_XSLTPROC_EXECUTABLE``
|
||||
|
||||
@@ -5,10 +5,11 @@
|
||||
FindLua
|
||||
-------
|
||||
|
||||
|
||||
|
||||
Locate Lua library.
|
||||
|
||||
.. versionadded:: 3.18
|
||||
Support for Lua 5.4.
|
||||
|
||||
This module defines::
|
||||
|
||||
::
|
||||
|
||||
@@ -12,6 +12,10 @@ high-performance distributed-memory parallel applications, and is
|
||||
typically deployed on a cluster. MPI is a standard interface (defined
|
||||
by the MPI forum) for which many implementations are available.
|
||||
|
||||
.. versionadded:: 3.10
|
||||
Major overhaul of the module: many new variables, per-language components,
|
||||
support for a wider variety of runtimes.
|
||||
|
||||
Variables for using MPI
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -50,7 +54,8 @@ project, where ``<lang>`` is one of C, CXX, or Fortran:
|
||||
``MPI_<lang>_LIBRARIES``
|
||||
All libraries to link MPI programs against.
|
||||
|
||||
Additionally, the following :prop_tgt:`IMPORTED` targets are defined:
|
||||
.. versionadded:: 3.9
|
||||
Additionally, the following :prop_tgt:`IMPORTED` targets are defined:
|
||||
|
||||
``MPI::MPI_<lang>``
|
||||
Target for using MPI from ``<lang>``.
|
||||
@@ -236,8 +241,10 @@ If the following variables are set to true, the respective search will be perfor
|
||||
Backward Compatibility
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
.. deprecated:: 3.10
|
||||
|
||||
For backward compatibility with older versions of FindMPI, these
|
||||
variables are set, but deprecated:
|
||||
variables are set:
|
||||
|
||||
::
|
||||
|
||||
|
||||
@@ -17,6 +17,9 @@ can also be used:
|
||||
* to retrieve various information from Matlab (mex extensions, versions and
|
||||
release queries, ...)
|
||||
|
||||
.. versionadded:: 3.12
|
||||
Added Matlab Compiler Runtime (MCR) support.
|
||||
|
||||
The module supports the following components:
|
||||
|
||||
* ``ENG_LIBRARY`` and ``MAT_LIBRARY``: respectively the ``ENG`` and ``MAT``
|
||||
@@ -28,6 +31,17 @@ The module supports the following components:
|
||||
* ``MCC_COMPILER`` the MCC compiler, included with the Matlab Compiler add-on.
|
||||
* ``SIMULINK`` the Simulink environment.
|
||||
|
||||
.. versionadded:: 3.7
|
||||
Added the ``MAT_LIBRARY`` component.
|
||||
|
||||
.. versionadded:: 3.13
|
||||
Added the ``ENGINE_LIBRARY``, ``DATAARRAY_LIBRARY`` and ``MCC_COMPILER``
|
||||
components.
|
||||
|
||||
.. versionchanged:: 3.14
|
||||
Removed the ``MX_LIBRARY``, ``ENGINE_LIBRARY`` and ``DATAARRAY_LIBRARY``
|
||||
components. These libraries are found unconditionally.
|
||||
|
||||
.. note::
|
||||
|
||||
The version given to the :command:`find_package` directive is the Matlab
|
||||
@@ -107,8 +121,12 @@ Result variables
|
||||
Matlab matrix library. Available only if the component ``MAT_LIBRARY``
|
||||
is requested.
|
||||
``Matlab_ENGINE_LIBRARY``
|
||||
.. versionadded:: 3.13
|
||||
|
||||
Matlab C++ engine library, always available for R2018a and newer.
|
||||
``Matlab_DATAARRAY_LIBRARY``
|
||||
.. versionadded:: 3.13
|
||||
|
||||
Matlab C++ data array library, always available for R2018a and newer.
|
||||
``Matlab_LIBRARIES``
|
||||
the whole set of libraries of Matlab
|
||||
@@ -116,6 +134,8 @@ Result variables
|
||||
the mex compiler of Matlab. Currently not used.
|
||||
Available only if the component ``MEX_COMPILER`` is requested.
|
||||
``Matlab_MCC_COMPILER``
|
||||
.. versionadded:: 3.13
|
||||
|
||||
the mcc compiler of Matlab. Included with the Matlab Compiler add-on.
|
||||
Available only if the component ``MCC_COMPILER`` is requested.
|
||||
|
||||
@@ -923,14 +943,26 @@ endfunction()
|
||||
the same folder without any processing, with the same name as the final
|
||||
mex file, and with extension `.m`. In that case, typing ``help <name>``
|
||||
in Matlab prints the documentation contained in this file.
|
||||
``R2017b`` or ``R2018a`` may be given to specify the version of the C API
|
||||
``R2017b`` or ``R2018a``
|
||||
.. versionadded:: 3.14
|
||||
|
||||
May be given to specify the version of the C API
|
||||
to use: ``R2017b`` specifies the traditional (separate complex) C API,
|
||||
and corresponds to the ``-R2017b`` flag for the `mex` command. ``R2018a``
|
||||
specifies the new interleaved complex C API, and corresponds to the
|
||||
``-R2018a`` flag for the `mex` command. Ignored if MATLAB version prior
|
||||
to R2018a. Defaults to ``R2017b``.
|
||||
``MODULE`` or ``SHARED`` may be given to specify the type of library to be
|
||||
created. ``EXECUTABLE`` may be given to create an executable instead of
|
||||
|
||||
``MODULE`` or ``SHARED``
|
||||
.. versionadded:: 3.7
|
||||
|
||||
May be given to specify the type of library to be
|
||||
created.
|
||||
|
||||
``EXECUTABLE``
|
||||
.. versionadded:: 3.7
|
||||
|
||||
May be given to create an executable instead of
|
||||
a library. If no type is given explicitly, the type is ``SHARED``.
|
||||
``EXCLUDE_FROM_ALL``
|
||||
This option has the same meaning as for :prop_tgt:`EXCLUDE_FROM_ALL` and
|
||||
|
||||
@@ -14,6 +14,16 @@ If the compiler supports OpenACC, the flags required to compile with
|
||||
OpenACC support are returned in variables for the different languages.
|
||||
Currently, only PGI, GNU and Cray compilers are supported.
|
||||
|
||||
Imported Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.16
|
||||
|
||||
The module provides :prop_tgt:`IMPORTED` targets:
|
||||
|
||||
``OpenACC::OpenACC_<lang>``
|
||||
Target for using OpenACC from ``<lang>``.
|
||||
|
||||
Variables
|
||||
^^^^^^^^^
|
||||
|
||||
@@ -25,14 +35,11 @@ project, where ``<lang>`` is one of C, CXX, or Fortran:
|
||||
``OpenACC_<lang>_FLAGS``
|
||||
OpenACC compiler flags for ``<lang>``, separated by spaces.
|
||||
``OpenACC_<lang>_OPTIONS``
|
||||
.. versionadded:: 3.16
|
||||
|
||||
OpenACC compiler flags for ``<lang>``, as a list. Suitable for usage
|
||||
with target_compile_options or target_link_options.
|
||||
|
||||
Additionally, the module provides :prop_tgt:`IMPORTED` targets:
|
||||
|
||||
``OpenACC::OpenACC_<lang>``
|
||||
Target for using OpenACC from ``<lang>``.
|
||||
|
||||
The module will also try to provide the OpenACC version variables:
|
||||
|
||||
``OpenACC_<lang>_SPEC_DATE``
|
||||
|
||||
@@ -9,9 +9,14 @@ FindOpenCL
|
||||
|
||||
Finds Open Computing Language (OpenCL)
|
||||
|
||||
.. versionadded:: 3.10
|
||||
Detection of OpenCL 2.1 and 2.2.
|
||||
|
||||
IMPORTED Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.7
|
||||
|
||||
This module defines :prop_tgt:`IMPORTED` target ``OpenCL::OpenCL``, if
|
||||
OpenCL has been found.
|
||||
|
||||
|
||||
@@ -7,27 +7,41 @@ FindOpenGL
|
||||
|
||||
FindModule for OpenGL and OpenGL Utility Library (GLU).
|
||||
|
||||
.. versionchanged:: 3.2
|
||||
X11 is no longer added as a dependency on Unix/Linux systems.
|
||||
|
||||
.. versionadded:: 3.10
|
||||
GLVND support on Linux. See the :ref:`Linux Specific` section below.
|
||||
|
||||
Optional COMPONENTS
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.10
|
||||
|
||||
This module respects several optional COMPONENTS: ``EGL``, ``GLX``, and
|
||||
``OpenGL``. There are corresponding import targets for each of these flags.
|
||||
|
||||
IMPORTED Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.8
|
||||
|
||||
This module defines the :prop_tgt:`IMPORTED` targets:
|
||||
|
||||
``OpenGL::GL``
|
||||
Defined to the platform-specific OpenGL libraries if the system has OpenGL.
|
||||
``OpenGL::OpenGL``
|
||||
Defined to libOpenGL if the system is GLVND-based.
|
||||
Defined to the platform-specific OpenGL libraries if the system has OpenGL.
|
||||
``OpenGL::GLU``
|
||||
Defined if the system has OpenGL Utility Library (GLU).
|
||||
Defined if the system has OpenGL Utility Library (GLU).
|
||||
|
||||
.. versionadded:: 3.10
|
||||
Additionally, the following GLVND-specific library targets are defined:
|
||||
|
||||
``OpenGL::OpenGL``
|
||||
Defined to libOpenGL if the system is GLVND-based.
|
||||
``OpenGL::GLX``
|
||||
Defined if the system has OpenGL Extension to the X Window System (GLX).
|
||||
Defined if the system has OpenGL Extension to the X Window System (GLX).
|
||||
``OpenGL::EGL``
|
||||
Defined if the system has EGL.
|
||||
Defined if the system has EGL.
|
||||
|
||||
Result Variables
|
||||
^^^^^^^^^^^^^^^^
|
||||
@@ -55,6 +69,9 @@ This module sets the following variables:
|
||||
On Linux, this assumes GLX and is never correct for EGL-based targets.
|
||||
Clients are encouraged to use the ``OpenGL::*`` import targets instead.
|
||||
|
||||
.. versionadded:: 3.10
|
||||
Variables for GLVND-specific libraries ``OpenGL``, ``EGL`` and ``GLX``.
|
||||
|
||||
Cache variables
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -72,6 +89,11 @@ The following cache variables may also be set:
|
||||
Path to the OpenGL library. New code should prefer the ``OpenGL::*`` import
|
||||
targets.
|
||||
|
||||
.. versionadded:: 3.10
|
||||
Variables for GLVND-specific libraries ``OpenGL``, ``EGL`` and ``GLX``.
|
||||
|
||||
.. _`Linux Specific`:
|
||||
|
||||
Linux-specific
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
@@ -97,14 +119,14 @@ The value may be one of:
|
||||
``GLVND``
|
||||
If the GLVND OpenGL and GLX libraries are available, prefer them.
|
||||
This forces ``OPENGL_gl_LIBRARY`` to be empty.
|
||||
This is the default if components were requested (since components
|
||||
correspond to GLVND libraries) or if policy :policy:`CMP0072` is
|
||||
set to ``NEW``.
|
||||
|
||||
.. versionchanged:: 3.11
|
||||
This is the default, unless policy :policy:`CMP0072` is set to ``OLD``
|
||||
and no components are requeted (since components
|
||||
correspond to GLVND libraries).
|
||||
|
||||
``LEGACY``
|
||||
Prefer to use the legacy libGL library, if available.
|
||||
This is the default if no components were requested and
|
||||
policy :policy:`CMP0072` is not set to ``NEW``.
|
||||
|
||||
For EGL targets the client must rely on GLVND support on the user's system.
|
||||
Linking should use the ``OpenGL::OpenGL OpenGL::EGL`` targets. Using GLES*
|
||||
|
||||
@@ -13,11 +13,15 @@ OpenMP support are returned in variables for the different languages.
|
||||
The variables may be empty if the compiler does not need a special
|
||||
flag to support OpenMP.
|
||||
|
||||
.. versionadded:: 3.5
|
||||
Clang support.
|
||||
|
||||
Variables
|
||||
^^^^^^^^^
|
||||
|
||||
The module exposes the components ``C``, ``CXX``, and ``Fortran``.
|
||||
Each of these controls the various languages to search OpenMP support for.
|
||||
.. versionadded:: 3.10
|
||||
The module exposes the components ``C``, ``CXX``, and ``Fortran``.
|
||||
Each of these controls the various languages to search OpenMP support for.
|
||||
|
||||
Depending on the enabled components the following variables will be set:
|
||||
|
||||
@@ -65,6 +69,8 @@ Specifically for Fortran, the module sets the following variables:
|
||||
The module will also try to provide the OpenMP version variables:
|
||||
|
||||
``OpenMP_<lang>_SPEC_DATE``
|
||||
.. versionadded:: 3.7
|
||||
|
||||
Date of the OpenMP specification implemented by the ``<lang>`` compiler.
|
||||
``OpenMP_<lang>_VERSION_MAJOR``
|
||||
Major version of OpenMP implemented by the ``<lang>`` compiler.
|
||||
|
||||
@@ -7,15 +7,22 @@ FindOpenSSL
|
||||
|
||||
Find the OpenSSL encryption library.
|
||||
|
||||
.. versionadded:: 3.18
|
||||
Support for OpenSSL 3.0.
|
||||
|
||||
Optional COMPONENTS
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.12
|
||||
|
||||
This module supports two optional COMPONENTS: ``Crypto`` and ``SSL``. Both
|
||||
components have associated imported targets, as described below.
|
||||
|
||||
Imported Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.4
|
||||
|
||||
This module defines the following :prop_tgt:`IMPORTED` targets:
|
||||
|
||||
``OpenSSL::SSL``
|
||||
@@ -23,6 +30,8 @@ This module defines the following :prop_tgt:`IMPORTED` targets:
|
||||
``OpenSSL::Crypto``
|
||||
The OpenSSL ``crypto`` library, if found.
|
||||
``OpenSSL::applink``
|
||||
.. versionadded:: 3.18
|
||||
|
||||
The OpenSSL ``applink`` components that might be need to be compiled into
|
||||
projects under MSVC. This target is available only if found OpenSSL version
|
||||
is not less than 0.9.8. By linking this target the above OpenSSL targets can
|
||||
@@ -75,8 +84,12 @@ Hints
|
||||
^^^^^
|
||||
|
||||
Set ``OPENSSL_ROOT_DIR`` to the root directory of an OpenSSL installation.
|
||||
Set ``OPENSSL_USE_STATIC_LIBS`` to ``TRUE`` to look for static libraries.
|
||||
Set ``OPENSSL_MSVC_STATIC_RT`` set ``TRUE`` to choose the MT version of the lib.
|
||||
|
||||
.. versionadded:: 3.4
|
||||
Set ``OPENSSL_USE_STATIC_LIBS`` to ``TRUE`` to look for static libraries.
|
||||
|
||||
.. versionadded:: 3.5
|
||||
Set ``OPENSSL_MSVC_STATIC_RT`` set ``TRUE`` to choose the MT version of the lib.
|
||||
#]=======================================================================]
|
||||
|
||||
macro(_OpenSSL_test_and_find_dependencies ssl_library crypto_library)
|
||||
|
||||
@@ -10,6 +10,8 @@ Find libpng, the official reference library for the PNG image format.
|
||||
Imported targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.5
|
||||
|
||||
This module defines the following :prop_tgt:`IMPORTED` target:
|
||||
|
||||
``PNG::PNG``
|
||||
|
||||
@@ -51,7 +51,9 @@ implementing :command:`find_package(<PackageName>)` calls.
|
||||
(recommended). Not valid in the full signature.
|
||||
|
||||
``FOUND_VAR <result-var>``
|
||||
Obsolete. Specifies either ``<PackageName>_FOUND`` or
|
||||
.. deprecated:: 3.3
|
||||
|
||||
Specifies either ``<PackageName>_FOUND`` or
|
||||
``<PACKAGENAME>_FOUND`` as the result variable. This exists only
|
||||
for compatibility with older versions of CMake and is now ignored.
|
||||
Result variables of both names are always set for compatibility.
|
||||
@@ -61,8 +63,10 @@ implementing :command:`find_package(<PackageName>)` calls.
|
||||
These may be named in the generated failure message asking the
|
||||
user to set the missing variable values. Therefore these should
|
||||
typically be cache entries such as ``FOO_LIBRARY`` and not output
|
||||
variables like ``FOO_LIBRARIES``. This option is mandatory if
|
||||
``HANDLE_COMPONENTS`` is not specified.
|
||||
variables like ``FOO_LIBRARIES``.
|
||||
|
||||
.. versionchanged:: 3.18
|
||||
If ``HANDLE_COMPONENTS`` is specified, this option can be omitted.
|
||||
|
||||
``VERSION_VAR <version-var>``
|
||||
Specify the name of a variable that holds the version of the package
|
||||
@@ -74,6 +78,8 @@ implementing :command:`find_package(<PackageName>)` calls.
|
||||
if the version is ok or not.
|
||||
|
||||
``HANDLE_VERSION_RANGE``
|
||||
.. versionadded:: 3.19
|
||||
|
||||
Enable handling of a version range, if one is specified. Without this
|
||||
option, a developer warning will be displayed if a version range is
|
||||
specified.
|
||||
@@ -94,6 +100,8 @@ implementing :command:`find_package(<PackageName>)` calls.
|
||||
was found.
|
||||
|
||||
``REASON_FAILURE_MESSAGE <reason-failure-message>``
|
||||
.. versionadded:: 3.16
|
||||
|
||||
Specify a custom message of the reason for the failure which will be
|
||||
appended to the default generated message.
|
||||
|
||||
@@ -102,6 +110,8 @@ implementing :command:`find_package(<PackageName>)` calls.
|
||||
generated message. Not recommended.
|
||||
|
||||
``NAME_MISMATCHED``
|
||||
.. versionadded:: 3.17
|
||||
|
||||
Indicate that the ``<PackageName>`` does not match
|
||||
``${CMAKE_FIND_PACKAGE_NAME}``. This is usually a mistake and raises a
|
||||
warning, but it may be intentional for usage of the command for components
|
||||
@@ -163,6 +173,8 @@ message.
|
||||
|
||||
.. command:: find_package_check_version
|
||||
|
||||
.. versionadded:: 3.19
|
||||
|
||||
Helper function which can be used to check if a ``<version>`` is valid
|
||||
against version-related arguments of :command:`find_package`.
|
||||
|
||||
|
||||
@@ -632,19 +632,38 @@ endmacro()
|
||||
|
||||
When the ``QUIET`` argument is given, no status messages will be printed.
|
||||
|
||||
By default, if :variable:`CMAKE_MINIMUM_REQUIRED_VERSION` is 3.1 or
|
||||
later, or if :variable:`PKG_CONFIG_USE_CMAKE_PREFIX_PATH` is set to a
|
||||
boolean ``True`` value, then the :variable:`CMAKE_PREFIX_PATH`,
|
||||
:variable:`CMAKE_FRAMEWORK_PATH`, and :variable:`CMAKE_APPBUNDLE_PATH` cache
|
||||
and environment variables will be added to the ``pkg-config`` search path.
|
||||
The ``NO_CMAKE_PATH`` and ``NO_CMAKE_ENVIRONMENT_PATH`` arguments
|
||||
disable this behavior for the cache variables and environment variables
|
||||
respectively.
|
||||
.. versionadded:: 3.1
|
||||
The :variable:`CMAKE_PREFIX_PATH`,
|
||||
:variable:`CMAKE_FRAMEWORK_PATH`, and :variable:`CMAKE_APPBUNDLE_PATH` cache
|
||||
and environment variables will be added to the ``pkg-config`` search path.
|
||||
The ``NO_CMAKE_PATH`` and ``NO_CMAKE_ENVIRONMENT_PATH`` arguments
|
||||
disable this behavior for the cache variables and environment variables
|
||||
respectively.
|
||||
The :variable:`PKG_CONFIG_USE_CMAKE_PREFIX_PATH` variable set to ``FALSE``
|
||||
disables this behavior globally.
|
||||
|
||||
The ``IMPORTED_TARGET`` argument will create an imported target named
|
||||
``PkgConfig::<prefix>`` that can be passed directly as an argument to
|
||||
:command:`target_link_libraries`. The ``GLOBAL`` argument will make the
|
||||
imported target available in global scope.
|
||||
.. This didn't actually work until 3.3.
|
||||
|
||||
.. versionadded:: 3.6
|
||||
The ``IMPORTED_TARGET`` argument will create an imported target named
|
||||
``PkgConfig::<prefix>`` that can be passed directly as an argument to
|
||||
:command:`target_link_libraries`.
|
||||
|
||||
.. This didn't actually work until 3.7.
|
||||
|
||||
.. versionadded:: 3.13
|
||||
The ``GLOBAL`` argument will make the
|
||||
imported target available in global scope.
|
||||
|
||||
.. versionadded:: 3.15
|
||||
Non-library linker options reported by ``pkg-config`` are stored in the
|
||||
:prop_tgt:`INTERFACE_LINK_OPTIONS` target property.
|
||||
|
||||
.. versionchanged:: 3.18
|
||||
Include directories specified with ``-isystem`` are stored in the
|
||||
:prop_tgt:`INTERFACE_INCLUDE_DIRECTORIES` target property. Previous
|
||||
versions of CMake left them in the :prop_tgt:`INTERFACE_COMPILE_OPTIONS`
|
||||
property.
|
||||
|
||||
Each ``<moduleSpec>`` can be either a bare module name or it can be a
|
||||
module name with a version constraint (operators ``=``, ``<``, ``>``,
|
||||
@@ -683,6 +702,11 @@ endmacro()
|
||||
All but ``<XXX>_FOUND`` may be a :ref:`;-list <CMake Language Lists>` if the
|
||||
associated variable returned from ``pkg-config`` has multiple values.
|
||||
|
||||
.. versionchanged:: 3.18
|
||||
Include directories specified with ``-isystem`` are stored in the
|
||||
``<XXX>_INCLUDE_DIRS`` variable. Previous versions of CMake left them
|
||||
in ``<XXX>_CFLAGS_OTHER``.
|
||||
|
||||
There are some special variables whose prefix depends on the number of
|
||||
``<moduleSpec>`` given. When there is only one ``<moduleSpec>``,
|
||||
``<YYY>`` will simply be ``<prefix>``, but if two or more ``<moduleSpec>``
|
||||
@@ -697,6 +721,16 @@ endmacro()
|
||||
``<YYY>_LIBDIR``
|
||||
lib directory of the module
|
||||
|
||||
.. versionchanged:: 3.8
|
||||
For any given ``<prefix>``, ``pkg_check_modules()`` can be called multiple
|
||||
times with different parameters. Previous versions of CMake cached and
|
||||
returned the first successful result.
|
||||
|
||||
.. versionchanged:: 3.16
|
||||
If a full path to the found library can't be determined, but it's still
|
||||
visible to the linker, pass it through as ``-l<name>``. Previous versions
|
||||
of CMake failed in this case.
|
||||
|
||||
Examples:
|
||||
|
||||
.. code-block:: cmake
|
||||
@@ -768,9 +802,10 @@ endmacro()
|
||||
[IMPORTED_TARGET [GLOBAL]]
|
||||
<moduleSpec> [<moduleSpec>...])
|
||||
|
||||
If a module is found, the ``<prefix>_MODULE_NAME`` variable will contain the
|
||||
name of the matching module. This variable can be used if you need to run
|
||||
:command:`pkg_get_variable`.
|
||||
.. versionadded:: 3.16
|
||||
If a module is found, the ``<prefix>_MODULE_NAME`` variable will contain the
|
||||
name of the matching module. This variable can be used if you need to run
|
||||
:command:`pkg_get_variable`.
|
||||
|
||||
Example:
|
||||
|
||||
@@ -815,6 +850,8 @@ endmacro()
|
||||
#[========================================[.rst:
|
||||
.. command:: pkg_get_variable
|
||||
|
||||
.. versionadded:: 3.4
|
||||
|
||||
Retrieves the value of a pkg-config variable ``varName`` and stores it in the
|
||||
result variable ``resultVar`` in the calling scope.
|
||||
|
||||
@@ -849,10 +886,15 @@ Variables Affecting Behavior
|
||||
|
||||
This can be set to the path of the pkg-config executable. If not provided,
|
||||
it will be set by the module as a result of calling :command:`find_program`
|
||||
internally. The ``PKG_CONFIG`` environment variable can be used as a hint.
|
||||
internally.
|
||||
|
||||
.. versionadded:: 3.1
|
||||
The ``PKG_CONFIG`` environment variable can be used as a hint.
|
||||
|
||||
.. variable:: PKG_CONFIG_USE_CMAKE_PREFIX_PATH
|
||||
|
||||
.. versionadded:: 3.1
|
||||
|
||||
Specifies whether :command:`pkg_check_modules` and
|
||||
:command:`pkg_search_module` should add the paths in the
|
||||
:variable:`CMAKE_PREFIX_PATH`, :variable:`CMAKE_FRAMEWORK_PATH` and
|
||||
|
||||
@@ -10,6 +10,8 @@ Find the PostgreSQL installation.
|
||||
IMPORTED Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.14
|
||||
|
||||
This module defines :prop_tgt:`IMPORTED` target ``PostgreSQL::PostgreSQL``
|
||||
if PostgreSQL has been found.
|
||||
|
||||
|
||||
@@ -7,6 +7,13 @@ FindProtobuf
|
||||
|
||||
Locate and configure the Google Protocol Buffers library.
|
||||
|
||||
.. versionadded:: 3.6
|
||||
Support for :command:`find_package` version checks.
|
||||
|
||||
.. versionchanged:: 3.6
|
||||
All input and output variables use the ``Protobuf_`` prefix.
|
||||
Variables with ``PROTOBUF_`` prefix are still supported for compatibility.
|
||||
|
||||
The following variables can be set and are optional:
|
||||
|
||||
``Protobuf_SRC_ROOT_FOLDER``
|
||||
@@ -19,8 +26,12 @@ The following variables can be set and are optional:
|
||||
List of additional directories to be searched for
|
||||
imported .proto files.
|
||||
``Protobuf_DEBUG``
|
||||
.. versionadded:: 3.6
|
||||
|
||||
Show debug messages.
|
||||
``Protobuf_USE_STATIC_LIBS``
|
||||
.. versionadded:: 3.9
|
||||
|
||||
Set to ON to force the use of the static libraries.
|
||||
Default is OFF.
|
||||
|
||||
@@ -30,6 +41,8 @@ Defines the following variables:
|
||||
Found the Google Protocol Buffers library
|
||||
(libprotobuf & header files)
|
||||
``Protobuf_VERSION``
|
||||
.. versionadded:: 3.6
|
||||
|
||||
Version of package found.
|
||||
``Protobuf_INCLUDE_DIRS``
|
||||
Include directories for Google Protocol Buffers
|
||||
@@ -40,7 +53,8 @@ Defines the following variables:
|
||||
``Protobuf_LITE_LIBRARIES``
|
||||
The protobuf-lite libraries
|
||||
|
||||
The following :prop_tgt:`IMPORTED` targets are also defined:
|
||||
.. versionadded:: 3.9
|
||||
The following :prop_tgt:`IMPORTED` targets are also defined:
|
||||
|
||||
``protobuf::libprotobuf``
|
||||
The protobuf library.
|
||||
@@ -49,7 +63,8 @@ The following :prop_tgt:`IMPORTED` targets are also defined:
|
||||
``protobuf::libprotoc``
|
||||
The protoc library.
|
||||
``protobuf::protoc``
|
||||
The protoc compiler.
|
||||
.. versionadded:: 3.10
|
||||
The protoc compiler.
|
||||
|
||||
The following cache variables are also available to set or use:
|
||||
|
||||
@@ -101,7 +116,8 @@ Example:
|
||||
``HDRS``
|
||||
Variable to define with autogenerated header files
|
||||
``DESCRIPTORS``
|
||||
Variable to define with autogenerated descriptor files, if requested.
|
||||
.. versionadded:: 3.10
|
||||
Variable to define with autogenerated descriptor files, if requested.
|
||||
``EXPORT_MACRO``
|
||||
is a macro which should expand to ``__declspec(dllexport)`` or
|
||||
``__declspec(dllimport)`` depending on what is being compiled.
|
||||
@@ -110,6 +126,8 @@ Example:
|
||||
|
||||
.. command:: protobuf_generate_python
|
||||
|
||||
.. versionadded:: 3.4
|
||||
|
||||
Add custom commands to process ``.proto`` files to Python::
|
||||
|
||||
protobuf_generate_python (<PY> [<ARGN>...])
|
||||
|
||||
@@ -34,7 +34,7 @@ The following components are supported:
|
||||
* ``NumPy``: search for NumPy include directories.
|
||||
|
||||
.. versionadded:: 3.14
|
||||
Added ``NumPy`` component.
|
||||
Added the ``NumPy`` component.
|
||||
|
||||
If no ``COMPONENTS`` are specified, ``Interpreter`` is assumed.
|
||||
|
||||
|
||||
@@ -34,7 +34,7 @@ The following components are supported:
|
||||
* ``NumPy``: search for NumPy include directories.
|
||||
|
||||
.. versionadded:: 3.14
|
||||
Added ``NumPy`` component.
|
||||
Added the ``NumPy`` component.
|
||||
|
||||
If no ``COMPONENTS`` are specified, ``Interpreter`` is assumed.
|
||||
|
||||
|
||||
@@ -34,7 +34,7 @@ The following components are supported:
|
||||
* ``NumPy``: search for NumPy include directories.
|
||||
|
||||
.. versionadded:: 3.14
|
||||
Added ``NumPy`` component.
|
||||
Added the ``NumPy`` component.
|
||||
|
||||
If no ``COMPONENTS`` are specified, ``Interpreter`` is assumed.
|
||||
|
||||
|
||||
@@ -5,14 +5,14 @@
|
||||
FindQt
|
||||
------
|
||||
|
||||
.. deprecated:: 3.14
|
||||
This module is available only if policy :policy:`CMP0084` is not set to ``NEW``.
|
||||
|
||||
Searches for all installed versions of Qt3 or Qt4.
|
||||
|
||||
This module cannot handle Qt5 or any later versions.
|
||||
For those, see :manual:`cmake-qt(7)`.
|
||||
|
||||
This module exists for the :command:`find_package` command only if
|
||||
policy :policy:`CMP0084` is not set to ``NEW``.
|
||||
|
||||
This module should only be used if your project can work with multiple
|
||||
versions of Qt. If not, you should just directly use FindQt4 or
|
||||
FindQt3. If multiple versions of Qt are found on the machine, then
|
||||
|
||||
@@ -37,7 +37,8 @@ This module will set the following variables in your project:
|
||||
``Ruby_INCLUDE_DIRS``
|
||||
include dirs to be used when using the ruby library
|
||||
``Ruby_LIBRARIES``
|
||||
libraries needed to use ruby from C.
|
||||
.. versionadded:: 3.18
|
||||
libraries needed to use ruby from C.
|
||||
``Ruby_VERSION``
|
||||
the version of ruby which was found, e.g. "1.8.7"
|
||||
``Ruby_VERSION_MAJOR``
|
||||
@@ -47,9 +48,10 @@ This module will set the following variables in your project:
|
||||
``Ruby_VERSION_PATCH``
|
||||
Ruby patch version.
|
||||
|
||||
|
||||
The following variables are also provided for compatibility reasons,
|
||||
don't use them in new code:
|
||||
.. versionchanged:: 3.18
|
||||
Previous versions of CMake used the ``RUBY_`` prefix for all variables.
|
||||
The following variables are provided for compatibility reasons,
|
||||
don't use them in new code:
|
||||
|
||||
``RUBY_EXECUTABLE``
|
||||
same as Ruby_EXECUTABLE.
|
||||
@@ -67,6 +69,8 @@ don't use them in new code:
|
||||
Hints
|
||||
^^^^^
|
||||
|
||||
.. versionadded:: 3.18
|
||||
|
||||
``Ruby_ROOT_DIR``
|
||||
Define the root directory of a Ruby installation.
|
||||
|
||||
|
||||
@@ -11,6 +11,8 @@ Locate the SDL library
|
||||
Imported targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.19
|
||||
|
||||
This module defines the following :prop_tgt:`IMPORTED` target:
|
||||
|
||||
``SDL::SDL``
|
||||
@@ -36,6 +38,10 @@ This module will set the following variables in your project:
|
||||
``SDL_VERSION_PATCH``
|
||||
SDL patch version
|
||||
|
||||
.. versionadded:: 3.19
|
||||
Added the ``SDL_INCLUDE_DIRS``, ``SDL_LIBRARIES`` and ``SDL_VERSION[_<PART>]``
|
||||
variables.
|
||||
|
||||
Cache variables
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -63,6 +69,8 @@ This module responds to the flag:
|
||||
Obsolete variables
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
.. deprecated:: 3.19
|
||||
|
||||
These variables are obsolete and provided for backwards compatibility:
|
||||
|
||||
``SDL_VERSION_STRING``
|
||||
|
||||
@@ -7,14 +7,17 @@ FindSWIG
|
||||
|
||||
Find the Simplified Wrapper and Interface Generator (SWIG_) executable.
|
||||
|
||||
This module finds an installed SWIG and determines its version. If a
|
||||
``COMPONENTS`` or ``OPTIONAL_COMPONENTS`` argument is given to the
|
||||
:command:`find_package` command, it will also determine supported target
|
||||
languages.
|
||||
This module finds an installed SWIG and determines its version.
|
||||
|
||||
When a version is requested, it can be specified as a simple value or as a
|
||||
range. For a detailed description of version range usage and capabilities,
|
||||
refer to the :command:`find_package` command.
|
||||
.. versionadded:: 3.18
|
||||
If a ``COMPONENTS`` or ``OPTIONAL_COMPONENTS`` argument is given to the
|
||||
:command:`find_package` command, it will also determine supported target
|
||||
languages.
|
||||
|
||||
.. versionadded:: 3.19
|
||||
When a version is requested, it can be specified as a simple value or as a
|
||||
range. For a detailed description of version range usage and capabilities,
|
||||
refer to the :command:`find_package` command.
|
||||
|
||||
The module defines the following variables:
|
||||
|
||||
|
||||
@@ -47,7 +47,8 @@ to cmake using Squish >= 4.x:
|
||||
AUT targetName SUITE suiteName TEST squishTestName
|
||||
[SETTINGSGROUP group] [PRE_COMMAND command] [POST_COMMAND command] )
|
||||
|
||||
|
||||
.. versionchanged:: 3.18
|
||||
In previous CMake versions, this function was named ``squish_v4_add_test``.
|
||||
|
||||
The arguments have the following meaning:
|
||||
|
||||
|
||||
@@ -31,9 +31,12 @@ If the command line client executable is found two macros are defined:
|
||||
``Subversion_WC_INFO`` extracts information of a subversion working copy at a
|
||||
given location. This macro defines the following variables if running
|
||||
Subversion's ``info`` command on ``<dir>`` succeeds; otherwise a
|
||||
``SEND_ERROR`` message is generated. The error can be ignored by providing the
|
||||
``IGNORE_SVN_FAILURE`` option, which causes these variables to remain
|
||||
undefined.
|
||||
``SEND_ERROR`` message is generated.
|
||||
|
||||
.. versionadded:: 3.13
|
||||
The error can be ignored by providing the
|
||||
``IGNORE_SVN_FAILURE`` option, which causes these variables to remain
|
||||
undefined.
|
||||
|
||||
::
|
||||
|
||||
|
||||
@@ -17,12 +17,16 @@ imported target, as described below.
|
||||
Imported targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.5
|
||||
|
||||
This module defines the following :prop_tgt:`IMPORTED` targets:
|
||||
|
||||
``TIFF::TIFF``
|
||||
The TIFF library, if found.
|
||||
|
||||
``TIFF::CXX``
|
||||
.. versionadded:: 3.19
|
||||
|
||||
The C++ wrapper libtiffxx, if requested by the `COMPONENTS CXX` option,
|
||||
if the compiler is not MSVC (which includes the C++ wrapper in libtiff),
|
||||
and if found.
|
||||
@@ -56,6 +60,9 @@ The following cache variables may also be set:
|
||||
the path to the TIFFXX library for release configurations
|
||||
``TIFFXX_LIBRARY_DEBUG``
|
||||
the path to the TIFFXX library for debug configurations
|
||||
|
||||
.. versionadded:: 3.4
|
||||
Debug and Release variants are found separately.
|
||||
#]=======================================================================]
|
||||
|
||||
cmake_policy(PUSH)
|
||||
|
||||
@@ -10,6 +10,8 @@ This module determines the thread library of the system.
|
||||
Imported Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.1
|
||||
|
||||
This module defines the following :prop_tgt:`IMPORTED` target:
|
||||
|
||||
``Threads::Threads``
|
||||
@@ -38,6 +40,8 @@ Variables Affecting Behavior
|
||||
|
||||
.. variable:: THREADS_PREFER_PTHREAD_FLAG
|
||||
|
||||
.. versionadded:: 3.1
|
||||
|
||||
If the use of the -pthread compiler and linker flag is preferred then
|
||||
the caller can set this variable to TRUE. The compiler flag can only be
|
||||
used with the imported target. Use of both the imported target as well
|
||||
|
||||
@@ -16,8 +16,9 @@ IMPORTED Targets
|
||||
This module defines :prop_tgt:`IMPORTED` target ``Vulkan::Vulkan``, if
|
||||
Vulkan has been found.
|
||||
|
||||
This module defines :prop_tgt:`IMPORTED` target ``Vulkan::glslc``, if
|
||||
Vulkan and the GLSLC SPIR-V compiler has been found.
|
||||
.. versionadded:: 3.19
|
||||
This module defines :prop_tgt:`IMPORTED` target ``Vulkan::glslc``, if
|
||||
Vulkan and the GLSLC SPIR-V compiler has been found.
|
||||
|
||||
Result Variables
|
||||
^^^^^^^^^^^^^^^^
|
||||
@@ -37,6 +38,8 @@ The module will also define three cache variables::
|
||||
Hints
|
||||
^^^^^
|
||||
|
||||
.. versionadded:: 3.18
|
||||
|
||||
The ``VULKAN_SDK`` environment variable optionally specifies the
|
||||
location of the Vulkan SDK root directory for the given
|
||||
architecture. It is typically set by sourcing the toplevel
|
||||
|
||||
@@ -17,6 +17,9 @@ Try to find X11 on UNIX systems. The following values are defined
|
||||
|
||||
and also the following more fine grained variables and targets:
|
||||
|
||||
.. versionadded:: 3.14
|
||||
Imported targets.
|
||||
|
||||
::
|
||||
|
||||
X11_ICE_INCLUDE_PATH, X11_ICE_LIB, X11_ICE_FOUND, X11::ICE
|
||||
@@ -62,6 +65,23 @@ and also the following more fine grained variables and targets:
|
||||
X11_Xshape_INCLUDE_PATH, (in X11_Xext_LIB), X11_Xshape_FOUND
|
||||
X11_XSync_INCLUDE_PATH, (in X11_Xext_LIB), X11_XSync_FOUND
|
||||
X11_Xaw_INCLUDE_PATH, X11_Xaw_LIB X11_Xaw_FOUND X11::Xaw
|
||||
|
||||
.. versionadded:: 3.14
|
||||
Renamed ``Xxf86misc``, ``X11_Xxf86misc``, ``X11_Xxf86vm``, ``X11_xkbfile``,
|
||||
``X11_Xtst``, and ``X11_Xss`` libraries to match their file names.
|
||||
Deprecated the ``X11_Xinput`` library. Old names are still available
|
||||
for compatibility.
|
||||
|
||||
.. versionadded:: 3.14
|
||||
Added the ``X11_Xext_INCLUDE_PATH`` variable.
|
||||
|
||||
.. versionadded:: 3.18
|
||||
Added the ``xcb``, ``X11-xcb``, ``xcb-icccm``, ``xcb-xkb``, ``xkbcommon``,
|
||||
and ``xkbcommon-X11`` libraries.
|
||||
|
||||
.. versionadded:: 3.19
|
||||
Added the ``Xaw``, ``xcb_util``, and ``xcb_xfixes`` libraries.
|
||||
|
||||
#]=======================================================================]
|
||||
|
||||
if (UNIX)
|
||||
|
||||
@@ -12,6 +12,8 @@ Find the Apache Xerces-C++ validating XML parser headers and libraries.
|
||||
Imported targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.5
|
||||
|
||||
This module defines the following :prop_tgt:`IMPORTED` targets:
|
||||
|
||||
``XercesC::XercesC``
|
||||
@@ -40,6 +42,9 @@ The following cache variables may also be set:
|
||||
the directory containing the Xerces headers
|
||||
``XercesC_LIBRARY``
|
||||
the Xerces library
|
||||
|
||||
.. versionadded:: 3.4
|
||||
Debug and Release variants are found separately.
|
||||
#]=======================================================================]
|
||||
|
||||
# Written by Roger Leigh <rleigh@codelibre.net>
|
||||
|
||||
@@ -10,6 +10,8 @@ Find the native ZLIB includes and library.
|
||||
IMPORTED Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.1
|
||||
|
||||
This module defines :prop_tgt:`IMPORTED` target ``ZLIB::ZLIB``, if
|
||||
ZLIB has been found.
|
||||
|
||||
@@ -32,6 +34,9 @@ This module defines the following variables:
|
||||
ZLIB_VERSION_PATCH - The patch version of zlib
|
||||
ZLIB_VERSION_TWEAK - The tweak version of zlib
|
||||
|
||||
.. versionadded:: 3.4
|
||||
Debug and Release variants are found separately.
|
||||
|
||||
Backward Compatibility
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
@@ -14,6 +14,12 @@ package:
|
||||
|
||||
find_package(wxWidgets COMPONENTS core base ... OPTIONAL_COMPONENTS net ...)
|
||||
|
||||
.. versionadded:: 3.4
|
||||
Support for :command:`find_package` version argument; ``webview`` component.
|
||||
|
||||
.. versionadded:: 3.14
|
||||
``OPTIONAL_COMPONENTS`` support.
|
||||
|
||||
There are two search branches: a windows style and a unix style. For
|
||||
windows, the following variables are searched for and set to defaults
|
||||
in case of multiple choices. Change them if the defaults are not
|
||||
@@ -82,6 +88,9 @@ and unix style:
|
||||
"`wx-config --cxxflags`".
|
||||
wxWidgets_USE_FILE - Convenience include file.
|
||||
|
||||
.. versionadded:: 3.11
|
||||
The following environment variables can be used as hints: ``WX_CONFIG``,
|
||||
``WXRC_CMD``.
|
||||
|
||||
|
||||
Sample usage:
|
||||
|
||||
@@ -46,7 +46,8 @@ where ``<dir>`` is one of:
|
||||
``LOCALSTATEDIR``
|
||||
modifiable single-machine data (``var``)
|
||||
``RUNSTATEDIR``
|
||||
run-time variable data (``LOCALSTATEDIR/run``)
|
||||
.. versionadded:: 3.9
|
||||
run-time variable data (``LOCALSTATEDIR/run``)
|
||||
``LIBDIR``
|
||||
object code libraries (``lib`` or ``lib64``
|
||||
or ``lib/<multiarch-tuple>`` on Debian)
|
||||
@@ -73,6 +74,8 @@ used and the value will appear in the cache for editing by the user.
|
||||
Special Cases
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
.. versionadded:: 3.4
|
||||
|
||||
The following values of :variable:`CMAKE_INSTALL_PREFIX` are special:
|
||||
|
||||
``/``
|
||||
@@ -115,6 +118,8 @@ Macros
|
||||
|
||||
GNUInstallDirs_get_absolute_install_dir(absvar var dirname)
|
||||
|
||||
.. versionadded:: 3.7
|
||||
|
||||
Set the given variable ``absvar`` to the absolute path contained
|
||||
within the variable ``var``. This is to allow the computation of an
|
||||
absolute path, accounting for all the special cases documented
|
||||
@@ -123,6 +128,10 @@ Macros
|
||||
allow users who create additional path variables to also compute
|
||||
absolute paths where necessary, using the same logic. ``dirname`` is
|
||||
the directory name to get, e.g. ``BINDIR``.
|
||||
|
||||
.. versionchanged:: 3.20
|
||||
Added the ``<dirname>`` parameter. Previous versions of CMake passed
|
||||
this value through the variable ``${dir}``.
|
||||
#]=======================================================================]
|
||||
|
||||
cmake_policy(PUSH)
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user