summaryrefslogtreecommitdiffstats
path: root/Modules
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2023-03-16 13:05:55 (GMT)
committerKitware Robot <kwrobot@kitware.com>2023-03-16 13:06:04 (GMT)
commit5f74e19abb7d9a30dfbae80ef9abf7f8cfeb74e6 (patch)
treeeb496820f318674479c6f51012fd5a23dbaf0916 /Modules
parent671e4172bee68cdac01f9113a5a569c312bb5c65 (diff)
parent9e1b30121fc131f97c16e7c86224704c30fe9e17 (diff)
downloadCMake-5f74e19abb7d9a30dfbae80ef9abf7f8cfeb74e6.zip
CMake-5f74e19abb7d9a30dfbae80ef9abf7f8cfeb74e6.tar.gz
CMake-5f74e19abb7d9a30dfbae80ef9abf7f8cfeb74e6.tar.bz2
Merge topic 'doc_varreq'
9e1b30121f Help:toolchain: refer to CheckSourceCompiles cf48022dc5 Help:Check*: include CMAKE_REQUIRED_* vars to dedupe Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8300
Diffstat (limited to 'Modules')
-rw-r--r--Modules/CheckCCompilerFlag.cmake34
-rw-r--r--Modules/CheckCSourceCompiles.cmake62
-rw-r--r--Modules/CheckCSourceRuns.cmake62
-rw-r--r--Modules/CheckCXXCompilerFlag.cmake5
-rw-r--r--Modules/CheckCXXSourceCompiles.cmake62
-rw-r--r--Modules/CheckCXXSourceRuns.cmake62
-rw-r--r--Modules/CheckCXXSymbolExists.cmake27
-rw-r--r--Modules/CheckCompilerFlag.cmake34
-rw-r--r--Modules/CheckFortranCompilerFlag.cmake34
-rw-r--r--Modules/CheckFortranSourceCompiles.cmake60
-rw-r--r--Modules/CheckFortranSourceRuns.cmake58
-rw-r--r--Modules/CheckFunctionExists.cmake27
-rw-r--r--Modules/CheckIncludeFile.cmake27
-rw-r--r--Modules/CheckIncludeFileCXX.cmake27
-rw-r--r--Modules/CheckIncludeFiles.cmake27
-rw-r--r--Modules/CheckLibraryExists.cmake22
-rw-r--r--Modules/CheckOBJCCompilerFlag.cmake34
-rw-r--r--Modules/CheckOBJCSourceCompiles.cmake58
-rw-r--r--Modules/CheckOBJCSourceRuns.cmake58
-rw-r--r--Modules/CheckOBJCXXCompilerFlag.cmake34
-rw-r--r--Modules/CheckOBJCXXSourceCompiles.cmake58
-rw-r--r--Modules/CheckOBJCXXSourceRuns.cmake58
-rw-r--r--Modules/CheckPrototypeDefinition.cmake26
-rw-r--r--Modules/CheckSourceCompiles.cmake50
-rw-r--r--Modules/CheckSourceRuns.cmake58
-rw-r--r--Modules/CheckStructHasMember.cmake25
-rw-r--r--Modules/CheckSymbolExists.cmake27
-rw-r--r--Modules/CheckTypeSize.cmake26
-rw-r--r--Modules/CheckVariableExists.cmake22
29 files changed, 460 insertions, 704 deletions
diff --git a/Modules/CheckCCompilerFlag.cmake b/Modules/CheckCCompilerFlag.cmake
index 696096d..cd89a55 100644
--- a/Modules/CheckCCompilerFlag.cmake
+++ b/Modules/CheckCCompilerFlag.cmake
@@ -11,25 +11,37 @@ Check whether the C compiler supports a given flag.
.. code-block:: cmake
- check_c_compiler_flag(<flag> <var>)
+ check_c_compiler_flag(<flag> <resultVar>)
Check that the ``<flag>`` is accepted by the compiler without
a diagnostic. Stores the result in an internal cache entry
- named ``<var>``.
-
-This command temporarily sets the ``CMAKE_REQUIRED_DEFINITIONS`` variable
-and calls the ``check_c_source_compiles`` macro from the
-:module:`CheckCSourceCompiles` module. See documentation of that
-module for a listing of variables that can otherwise modify the build.
+ named ``<resultVar>``.
A positive result from this check indicates only that the compiler did not
issue a diagnostic message when given the flag. Whether the flag has any
effect or even a specific one is beyond the scope of this module.
-.. note::
- Since the :command:`try_compile` command forwards flags from variables
- like :variable:`CMAKE_C_FLAGS <CMAKE_<LANG>_FLAGS>`, unknown flags
- in such variables may cause a false negative for this check.
+The check is only performed once, with the result cached in the variable named
+by ``<resultVar>``. Every subsequent CMake run will re-use this cached value
+rather than performing the check again, even if the ``<code>`` changes. In
+order to force the check to be re-evaluated, the variable named by
+``<resultVar>`` must be manually removed from the cache.
+
+The compile and link commands can be influenced by setting any of the
+following variables prior to calling ``check_c_compiler_flag()``
+
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckCSourceCompiles.cmake b/Modules/CheckCSourceCompiles.cmake
index b24da49..ce4719a 100644
--- a/Modules/CheckCSourceCompiles.cmake
+++ b/Modules/CheckCSourceCompiles.cmake
@@ -22,51 +22,27 @@ Check if given C source compiles and links into an executable.
checking if anything in the output matches any of the specified regular
expressions.
- The underlying check is performed by the :command:`try_compile` command. The
- compile and link commands can be influenced by setting any of the following
- variables prior to calling ``check_c_source_compiles()``:
-
- ``CMAKE_REQUIRED_FLAGS``
- Additional flags to pass to the compiler. Note that the contents of
- :variable:`CMAKE_C_FLAGS <CMAKE_<LANG>_FLAGS>` and its associated
- configuration-specific variable are automatically added to the compiler
- command before the contents of ``CMAKE_REQUIRED_FLAGS``.
-
- ``CMAKE_REQUIRED_DEFINITIONS``
- A :ref:`;-list <CMake Language Lists>` of compiler definitions of the form
- ``-DFOO`` or ``-DFOO=bar``. A definition for the name specified by
- ``<resultVar>`` will also be added automatically.
-
- ``CMAKE_REQUIRED_INCLUDES``
- A :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler. These will be the only header search paths used by
- ``try_compile()``, i.e. the contents of the :prop_dir:`INCLUDE_DIRECTORIES`
- 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).
-
- ``CMAKE_REQUIRED_LIBRARIES``
- A :ref:`;-list <CMake Language Lists>` of libraries to add to the link
- command. These can be the name of system libraries or they can be
- :ref:`Imported Targets <Imported Targets>` (see :command:`try_compile` for
- 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.
-
- The check is only performed once, with the result cached in the variable
- named by ``<resultVar>``. Every subsequent CMake run will re-use this cached
- value rather than performing the check again, even if the ``<code>`` changes.
- In order to force the check to be re-evaluated, the variable named by
+ The check is only performed once, with the result cached in the variable named
+ by ``<resultVar>``. Every subsequent CMake run will re-use this cached value
+ rather than performing the check again, even if the ``<code>`` changes. In
+ order to force the check to be re-evaluated, the variable named by
``<resultVar>`` must be manually removed from the cache.
+ The compile and link commands can be influenced by setting any of the
+ following variables prior to calling ``check_c_source_compiles()``:
+
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckCSourceRuns.cmake b/Modules/CheckCSourceRuns.cmake
index a6081ff..d5a8fda 100644
--- a/Modules/CheckCSourceRuns.cmake
+++ b/Modules/CheckCSourceRuns.cmake
@@ -21,51 +21,27 @@ subsequently be run.
be set to 1, otherwise it will be set to an value that evaluates to boolean
false (e.g. an empty string or an error message).
- The underlying check is performed by the :command:`try_run` command. The
- compile and link commands can be influenced by setting any of the following
- variables prior to calling ``check_c_source_runs()``:
-
- ``CMAKE_REQUIRED_FLAGS``
- Additional flags to pass to the compiler. Note that the contents of
- :variable:`CMAKE_C_FLAGS <CMAKE_<LANG>_FLAGS>` and its associated
- configuration-specific variable are automatically added to the compiler
- command before the contents of ``CMAKE_REQUIRED_FLAGS``.
-
- ``CMAKE_REQUIRED_DEFINITIONS``
- A :ref:`;-list <CMake Language Lists>` of compiler definitions of the form
- ``-DFOO`` or ``-DFOO=bar``. A definition for the name specified by
- ``<resultVar>`` will also be added automatically.
-
- ``CMAKE_REQUIRED_INCLUDES``
- A :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler. These will be the only header search paths used by
- ``try_run()``, i.e. the contents of the :prop_dir:`INCLUDE_DIRECTORIES`
- 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).
-
- ``CMAKE_REQUIRED_LIBRARIES``
- A :ref:`;-list <CMake Language Lists>` of libraries to add to the link
- command. These can be the name of system libraries or they can be
- :ref:`Imported Targets <Imported Targets>` (see :command:`try_run` for
- 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.
-
- The check is only performed once, with the result cached in the variable
- named by ``<resultVar>``. Every subsequent CMake run will re-use this cached
- value rather than performing the check again, even if the ``<code>`` changes.
- In order to force the check to be re-evaluated, the variable named by
+ The check is only performed once, with the result cached in the variable named
+ by ``<resultVar>``. Every subsequent CMake run will re-use this cached value
+ rather than performing the check again, even if the ``<code>`` changes. In
+ order to force the check to be re-evaluated, the variable named by
``<resultVar>`` must be manually removed from the cache.
+ The compile and link commands can be influenced by setting any of the
+ following variables prior to calling ``check_c_source_runs()``:
+
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckCXXCompilerFlag.cmake b/Modules/CheckCXXCompilerFlag.cmake
index f3f94c0..a6884f5 100644
--- a/Modules/CheckCXXCompilerFlag.cmake
+++ b/Modules/CheckCXXCompilerFlag.cmake
@@ -17,11 +17,6 @@ Check whether the CXX compiler supports a given flag.
a diagnostic. Stores the result in an internal cache entry
named ``<var>``.
-This command temporarily sets the ``CMAKE_REQUIRED_DEFINITIONS`` variable
-and calls the ``check_cxx_source_compiles`` macro from the
-:module:`CheckCXXSourceCompiles` module. See documentation of that
-module for a listing of variables that can otherwise modify the build.
-
A positive result from this check indicates only that the compiler did not
issue a diagnostic message when given the flag. Whether the flag has any
effect or even a specific one is beyond the scope of this module.
diff --git a/Modules/CheckCXXSourceCompiles.cmake b/Modules/CheckCXXSourceCompiles.cmake
index 502bfa7..4b33aa8 100644
--- a/Modules/CheckCXXSourceCompiles.cmake
+++ b/Modules/CheckCXXSourceCompiles.cmake
@@ -22,51 +22,27 @@ Check if given C++ source compiles and links into an executable.
checking if anything in the output matches any of the specified regular
expressions.
- The underlying check is performed by the :command:`try_compile` command. The
- compile and link commands can be influenced by setting any of the following
- variables prior to calling ``check_cxx_source_compiles()``:
-
- ``CMAKE_REQUIRED_FLAGS``
- Additional flags to pass to the compiler. Note that the contents of
- :variable:`CMAKE_CXX_FLAGS <CMAKE_<LANG>_FLAGS>` and its associated
- configuration-specific variable are automatically added to the compiler
- command before the contents of ``CMAKE_REQUIRED_FLAGS``.
-
- ``CMAKE_REQUIRED_DEFINITIONS``
- A :ref:`;-list <CMake Language Lists>` of compiler definitions of the form
- ``-DFOO`` or ``-DFOO=bar``. A definition for the name specified by
- ``<resultVar>`` will also be added automatically.
-
- ``CMAKE_REQUIRED_INCLUDES``
- A :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler. These will be the only header search paths used by
- ``try_compile()``, i.e. the contents of the :prop_dir:`INCLUDE_DIRECTORIES`
- 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).
-
- ``CMAKE_REQUIRED_LIBRARIES``
- A :ref:`;-list <CMake Language Lists>` of libraries to add to the link
- command. These can be the name of system libraries or they can be
- :ref:`Imported Targets <Imported Targets>` (see :command:`try_compile` for
- 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.
-
- The check is only performed once, with the result cached in the variable
- named by ``<resultVar>``. Every subsequent CMake run will re-use this cached
- value rather than performing the check again, even if the ``<code>`` changes.
- In order to force the check to be re-evaluated, the variable named by
+ The check is only performed once, with the result cached in the variable named
+ by ``<resultVar>``. Every subsequent CMake run will re-use this cached value
+ rather than performing the check again, even if the ``<code>`` changes. In
+ order to force the check to be re-evaluated, the variable named by
``<resultVar>`` must be manually removed from the cache.
+ The compile and link commands can be influenced by setting any of the
+ following variables prior to calling ``check_cxx_source_compiles()``:
+
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckCXXSourceRuns.cmake b/Modules/CheckCXXSourceRuns.cmake
index af03453..3402715 100644
--- a/Modules/CheckCXXSourceRuns.cmake
+++ b/Modules/CheckCXXSourceRuns.cmake
@@ -21,51 +21,27 @@ subsequently be run.
be set to 1, otherwise it will be set to an value that evaluates to boolean
false (e.g. an empty string or an error message).
- The underlying check is performed by the :command:`try_run` command. The
- compile and link commands can be influenced by setting any of the following
- variables prior to calling ``check_cxx_source_runs()``:
-
- ``CMAKE_REQUIRED_FLAGS``
- Additional flags to pass to the compiler. Note that the contents of
- :variable:`CMAKE_CXX_FLAGS <CMAKE_<LANG>_FLAGS>` and its associated
- configuration-specific variable are automatically added to the compiler
- command before the contents of ``CMAKE_REQUIRED_FLAGS``.
-
- ``CMAKE_REQUIRED_DEFINITIONS``
- A :ref:`;-list <CMake Language Lists>` of compiler definitions of the form
- ``-DFOO`` or ``-DFOO=bar``. A definition for the name specified by
- ``<resultVar>`` will also be added automatically.
-
- ``CMAKE_REQUIRED_INCLUDES``
- A :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler. These will be the only header search paths used by
- ``try_run()``, i.e. the contents of the :prop_dir:`INCLUDE_DIRECTORIES`
- 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).
-
- ``CMAKE_REQUIRED_LIBRARIES``
- A :ref:`;-list <CMake Language Lists>` of libraries to add to the link
- command. These can be the name of system libraries or they can be
- :ref:`Imported Targets <Imported Targets>` (see :command:`try_run` for
- 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.
-
- The check is only performed once, with the result cached in the variable
- named by ``<resultVar>``. Every subsequent CMake run will re-use this cached
- value rather than performing the check again, even if the ``<code>`` changes.
- In order to force the check to be re-evaluated, the variable named by
+ The check is only performed once, with the result cached in the variable named
+ by ``<resultVar>``. Every subsequent CMake run will re-use this cached value
+ rather than performing the check again, even if the ``<code>`` changes. In
+ order to force the check to be re-evaluated, the variable named by
``<resultVar>`` must be manually removed from the cache.
+ The compile and link commands can be influenced by setting any of the
+ following variables prior to calling ``check_cxx_source_runs()``:
+
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckCXXSymbolExists.cmake b/Modules/CheckCXXSymbolExists.cmake
index 1fa0898..569dafd 100644
--- a/Modules/CheckCXXSymbolExists.cmake
+++ b/Modules/CheckCXXSymbolExists.cmake
@@ -41,22 +41,17 @@ Check if a symbol exists as a function, variable, or macro in ``C++``.
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``
- a :ref:`;-list <CMake Language Lists>` of macros to define (-DFOO=bar).
-``CMAKE_REQUIRED_INCLUDES``
- a :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler.
-``CMAKE_REQUIRED_LINK_OPTIONS``
- .. 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``
- .. versionadded:: 3.1
- execute quietly without messages.
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
For example:
diff --git a/Modules/CheckCompilerFlag.cmake b/Modules/CheckCompilerFlag.cmake
index 77c07b9..a18435b 100644
--- a/Modules/CheckCompilerFlag.cmake
+++ b/Modules/CheckCompilerFlag.cmake
@@ -13,24 +13,36 @@ Check whether the compiler supports a given flag.
.. code-block:: cmake
- check_compiler_flag(<lang> <flag> <var>)
+ check_compiler_flag(<lang> <flag> <resultVar>)
Check that the ``<flag>`` is accepted by the compiler without a diagnostic.
-Stores the result in an internal cache entry named ``<var>``.
-
-This command temporarily sets the ``CMAKE_REQUIRED_DEFINITIONS`` variable
-and calls the ``check_source_compiles(<LANG>)`` function from the
-:module:`CheckSourceCompiles` module. See documentation of that
-module for a listing of variables that can otherwise modify the build.
+Stores the result in an internal cache entry named ``<resultVar>``.
A positive result from this check indicates only that the compiler did not
issue a diagnostic message when given the flag. Whether the flag has any
effect or even a specific one is beyond the scope of this module.
-.. note::
- Since the :command:`try_compile` command forwards flags from variables
- like :variable:`CMAKE_<LANG>_FLAGS <CMAKE_<LANG>_FLAGS>`, unknown flags
- in such variables may cause a false negative for this check.
+The check is only performed once, with the result cached in the variable named
+by ``<resultVar>``. Every subsequent CMake run will re-use this cached value
+rather than performing the check again, even if the ``<code>`` changes. In
+order to force the check to be re-evaluated, the variable named by
+``<resultVar>`` must be manually removed from the cache.
+
+The compile and link commands can be influenced by setting any of the
+following variables prior to calling ``check_compiler_flag()``
+
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckFortranCompilerFlag.cmake b/Modules/CheckFortranCompilerFlag.cmake
index b19654b..c3cd088 100644
--- a/Modules/CheckFortranCompilerFlag.cmake
+++ b/Modules/CheckFortranCompilerFlag.cmake
@@ -13,25 +13,37 @@ Check whether the Fortran compiler supports a given flag.
.. code-block:: cmake
- check_fortran_compiler_flag(<flag> <var>)
+ check_fortran_compiler_flag(<flag> <resultVar>)
Check that the ``<flag>`` is accepted by the compiler without
a diagnostic. Stores the result in an internal cache entry
- named ``<var>``.
-
-This command temporarily sets the ``CMAKE_REQUIRED_DEFINITIONS`` variable
-and calls the ``check_fortran_source_compiles`` macro from the
-:module:`CheckFortranSourceCompiles` module. See documentation of that
-module for a listing of variables that can otherwise modify the build.
+ named ``<resultVar>``.
A positive result from this check indicates only that the compiler did not
issue a diagnostic message when given the flag. Whether the flag has any
effect or even a specific one is beyond the scope of this module.
-.. note::
- Since the :command:`try_compile` command forwards flags from variables
- like :variable:`CMAKE_Fortran_FLAGS <CMAKE_<LANG>_FLAGS>`, unknown flags
- in such variables may cause a false negative for this check.
+The check is only performed once, with the result cached in the variable named
+by ``<resultVar>``. Every subsequent CMake run will re-use this cached value
+rather than performing the check again, even if the ``<code>`` changes. In
+order to force the check to be re-evaluated, the variable named by
+``<resultVar>`` must be manually removed from the cache.
+
+The compile and link commands can be influenced by setting any of the
+following variables prior to calling ``check_fortran_compiler_flag()``
+
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckFortranSourceCompiles.cmake b/Modules/CheckFortranSourceCompiles.cmake
index 8dcc1d5..5158b7e 100644
--- a/Modules/CheckFortranSourceCompiles.cmake
+++ b/Modules/CheckFortranSourceCompiles.cmake
@@ -47,49 +47,27 @@ Check if given Fortran source compiles and links into an executable.
``SRC_EXT`` option can be used to override this with ``.<extension>`` instead--
``.F90`` is a typical choice.
- The underlying check is performed by the :command:`try_compile` command. The
- compile and link commands can be influenced by setting any of the following
- variables prior to calling ``check_fortran_source_compiles()``:
-
- ``CMAKE_REQUIRED_FLAGS``
- Additional flags to pass to the compiler. Note that the contents of
- :variable:`CMAKE_Fortran_FLAGS <CMAKE_<LANG>_FLAGS>` and its associated
- configuration-specific variable are automatically added to the compiler
- command before the contents of ``CMAKE_REQUIRED_FLAGS``.
-
- ``CMAKE_REQUIRED_DEFINITIONS``
- A :ref:`;-list <CMake Language Lists>` of compiler definitions of the form
- ``-DFOO`` or ``-DFOO=bar``. A definition for the name specified by
- ``<resultVar>`` will also be added automatically.
-
- ``CMAKE_REQUIRED_INCLUDES``
- A :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler. These will be the only header search paths used by
- ``try_compile()``, i.e. the contents of the :prop_dir:`INCLUDE_DIRECTORIES`
- 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).
-
- ``CMAKE_REQUIRED_LIBRARIES``
- A :ref:`;-list <CMake Language Lists>` of libraries to add to the link
- command. These can be the name of system libraries or they can be
- :ref:`Imported Targets <Imported Targets>` (see :command:`try_compile` for
- further details).
-
- ``CMAKE_REQUIRED_QUIET``
- If this variable evaluates to a boolean true value, all status messages
- associated with the check will be suppressed.
-
- The check is only performed once, with the result cached in the variable
- named by ``<resultVar>``. Every subsequent CMake run will re-use this cached
- value rather than performing the check again, even if the ``<code>`` changes.
- In order to force the check to be re-evaluated, the variable named by
+ The check is only performed once, with the result cached in the variable named
+ by ``<resultVar>``. Every subsequent CMake run will re-use this cached value
+ rather than performing the check again, even if the ``<code>`` changes. In
+ order to force the check to be re-evaluated, the variable named by
``<resultVar>`` must be manually removed from the cache.
+ The compile and link commands can be influenced by setting any of the
+ following variables prior to calling ``check_fortran_source_compiles()``:
+
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckFortranSourceRuns.cmake b/Modules/CheckFortranSourceRuns.cmake
index 985c765..f996749 100644
--- a/Modules/CheckFortranSourceRuns.cmake
+++ b/Modules/CheckFortranSourceRuns.cmake
@@ -43,47 +43,27 @@ subsequently be run.
By default, the test source file will be given a ``.F90`` file extension. The
``SRC_EXT`` option can be used to override this with ``.<extension>`` instead.
- The underlying check is performed by the :command:`try_run` command. The
- compile and link commands can be influenced by setting any of the following
- variables prior to calling ``check_fortran_source_runs()``:
-
- ``CMAKE_REQUIRED_FLAGS``
- Additional flags to pass to the compiler. Note that the contents of
- :variable:`CMAKE_Fortran_FLAGS <CMAKE_<LANG>_FLAGS>` and its associated
- configuration-specific variable are automatically added to the compiler
- command before the contents of ``CMAKE_REQUIRED_FLAGS``.
-
- ``CMAKE_REQUIRED_DEFINITIONS``
- A :ref:`;-list <CMake Language Lists>` of compiler definitions of the form
- ``-DFOO`` or ``-DFOO=bar``. A definition for the name specified by
- ``<resultVar>`` will also be added automatically.
-
- ``CMAKE_REQUIRED_INCLUDES``
- A :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler. These will be the only header search paths used by
- ``try_run()``, i.e. the contents of the :prop_dir:`INCLUDE_DIRECTORIES`
- directory property will be ignored.
-
- ``CMAKE_REQUIRED_LINK_OPTIONS``
- A :ref:`;-list <CMake Language Lists>` of options to add to the link
- command (see :command:`try_run` for further details).
-
- ``CMAKE_REQUIRED_LIBRARIES``
- A :ref:`;-list <CMake Language Lists>` of libraries to add to the link
- command. These can be the name of system libraries or they can be
- :ref:`Imported Targets <Imported Targets>` (see :command:`try_run` for
- further details).
-
- ``CMAKE_REQUIRED_QUIET``
- If this variable evaluates to a boolean true value, all status messages
- associated with the check will be suppressed.
-
- The check is only performed once, with the result cached in the variable
- named by ``<resultVar>``. Every subsequent CMake run will re-use this cached
- value rather than performing the check again, even if the ``<code>`` changes.
- In order to force the check to be re-evaluated, the variable named by
+ The check is only performed once, with the result cached in the variable named
+ by ``<resultVar>``. Every subsequent CMake run will re-use this cached value
+ rather than performing the check again, even if the ``<code>`` changes. In
+ order to force the check to be re-evaluated, the variable named by
``<resultVar>`` must be manually removed from the cache.
+ The compile and link commands can be influenced by setting any of the
+ following variables prior to calling ``check_fortran_source_runs()``:
+
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckFunctionExists.cmake b/Modules/CheckFunctionExists.cmake
index e2939ed..e7c47a4 100644
--- a/Modules/CheckFunctionExists.cmake
+++ b/Modules/CheckFunctionExists.cmake
@@ -20,22 +20,17 @@ Check if a C function can be linked
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``
- a :ref:`;-list <CMake Language Lists>` of macros to define (-DFOO=bar).
-``CMAKE_REQUIRED_INCLUDES``
- a :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler.
-``CMAKE_REQUIRED_LINK_OPTIONS``
- .. 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``
- .. versionadded:: 3.1
- execute quietly without messages.
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
.. note::
diff --git a/Modules/CheckIncludeFile.cmake b/Modules/CheckIncludeFile.cmake
index 5771307..1d8c9f7 100644
--- a/Modules/CheckIncludeFile.cmake
+++ b/Modules/CheckIncludeFile.cmake
@@ -21,22 +21,17 @@ Provides a macro to check if a header file can be included in ``C``.
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``
- a :ref:`;-list <CMake Language Lists>` of macros to define (-DFOO=bar).
-``CMAKE_REQUIRED_INCLUDES``
- a :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler.
-``CMAKE_REQUIRED_LINK_OPTIONS``
- .. 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``
- .. versionadded:: 3.1
- execute quietly without messages.
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
See the :module:`CheckIncludeFiles` module to check for multiple headers
at once. See the :module:`CheckIncludeFileCXX` module to check for headers
diff --git a/Modules/CheckIncludeFileCXX.cmake b/Modules/CheckIncludeFileCXX.cmake
index d27b485..53d9a45 100644
--- a/Modules/CheckIncludeFileCXX.cmake
+++ b/Modules/CheckIncludeFileCXX.cmake
@@ -21,22 +21,17 @@ Provides a macro to check if a header file can be included in ``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``
- a :ref:`;-list <CMake Language Lists>` of macros to define (-DFOO=bar).
-``CMAKE_REQUIRED_INCLUDES``
- a :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler.
-``CMAKE_REQUIRED_LINK_OPTIONS``
- .. 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``
- .. versionadded:: 3.1
- execute quietly without messages.
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
See modules :module:`CheckIncludeFile` and :module:`CheckIncludeFiles`
to check for one or more ``C`` headers.
diff --git a/Modules/CheckIncludeFiles.cmake b/Modules/CheckIncludeFiles.cmake
index 2f50c61..071df0c 100644
--- a/Modules/CheckIncludeFiles.cmake
+++ b/Modules/CheckIncludeFiles.cmake
@@ -27,22 +27,17 @@ be included together.
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``
- a :ref:`;-list <CMake Language Lists>` of macros to define (-DFOO=bar).
-``CMAKE_REQUIRED_INCLUDES``
- a :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler.
-``CMAKE_REQUIRED_LINK_OPTIONS``
- .. 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``
- .. versionadded:: 3.1
- execute quietly without messages.
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
See modules :module:`CheckIncludeFile` and :module:`CheckIncludeFileCXX`
to check for a single header file in ``C`` or ``CXX`` languages.
diff --git a/Modules/CheckLibraryExists.cmake b/Modules/CheckLibraryExists.cmake
index 5f1a914..8340500 100644
--- a/Modules/CheckLibraryExists.cmake
+++ b/Modules/CheckLibraryExists.cmake
@@ -26,18 +26,16 @@ 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``
- .. 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:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckOBJCCompilerFlag.cmake b/Modules/CheckOBJCCompilerFlag.cmake
index 2df30b7..ceb7e17 100644
--- a/Modules/CheckOBJCCompilerFlag.cmake
+++ b/Modules/CheckOBJCCompilerFlag.cmake
@@ -13,25 +13,37 @@ Check whether the Objective-C compiler supports a given flag.
.. code-block:: cmake
- check_objc_compiler_flag(<flag> <var>)
+ check_objc_compiler_flag(<flag> <resultVar>)
Check that the ``<flag>`` is accepted by the compiler without
a diagnostic. Stores the result in an internal cache entry
- named ``<var>``.
-
-This command temporarily sets the ``CMAKE_REQUIRED_DEFINITIONS`` variable
-and calls the ``check_objc_source_compiles`` macro from the
-:module:`CheckOBJCSourceCompiles` module. See documentation of that
-module for a listing of variables that can otherwise modify the build.
+ named ``<resultVar>``.
A positive result from this check indicates only that the compiler did not
issue a diagnostic message when given the flag. Whether the flag has any
effect or even a specific one is beyond the scope of this module.
-.. note::
- Since the :command:`try_compile` command forwards flags from variables
- like :variable:`CMAKE_OBJC_FLAGS <CMAKE_<LANG>_FLAGS>`, unknown flags
- in such variables may cause a false negative for this check.
+The check is only performed once, with the result cached in the variable named
+by ``<resultVar>``. Every subsequent CMake run will re-use this cached value
+rather than performing the check again, even if the ``<code>`` changes. In
+order to force the check to be re-evaluated, the variable named by
+``<resultVar>`` must be manually removed from the cache.
+
+The compile and link commands can be influenced by setting any of the
+following variables prior to calling ``check_objc_compiler_flag()``
+
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckOBJCSourceCompiles.cmake b/Modules/CheckOBJCSourceCompiles.cmake
index c268ef9..7663054 100644
--- a/Modules/CheckOBJCSourceCompiles.cmake
+++ b/Modules/CheckOBJCSourceCompiles.cmake
@@ -24,47 +24,27 @@ Check if given Objective-C source compiles and links into an executable.
checking if anything in the output matches any of the specified regular
expressions.
- The underlying check is performed by the :command:`try_compile` command. The
- compile and link commands can be influenced by setting any of the following
- variables prior to calling ``check_objc_source_compiles()``:
-
- ``CMAKE_REQUIRED_FLAGS``
- Additional flags to pass to the compiler. Note that the contents of
- :variable:`CMAKE_OBJC_FLAGS <CMAKE_<LANG>_FLAGS>` and its associated
- configuration-specific variable are automatically added to the compiler
- command before the contents of ``CMAKE_REQUIRED_FLAGS``.
-
- ``CMAKE_REQUIRED_DEFINITIONS``
- A :ref:`;-list <CMake Language Lists>` of compiler definitions of the form
- ``-DFOO`` or ``-DFOO=bar``. A definition for the name specified by
- ``<resultVar>`` will also be added automatically.
-
- ``CMAKE_REQUIRED_INCLUDES``
- A :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler. These will be the only header search paths used by
- ``try_compile()``, i.e. the contents of the :prop_dir:`INCLUDE_DIRECTORIES`
- directory property will be ignored.
-
- ``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).
-
- ``CMAKE_REQUIRED_LIBRARIES``
- A :ref:`;-list <CMake Language Lists>` of libraries to add to the link
- command. These can be the name of system libraries or they can be
- :ref:`Imported Targets <Imported Targets>` (see :command:`try_compile` for
- further details).
-
- ``CMAKE_REQUIRED_QUIET``
- If this variable evaluates to a boolean true value, all status messages
- associated with the check will be suppressed.
-
- The check is only performed once, with the result cached in the variable
- named by ``<resultVar>``. Every subsequent CMake run will re-use this cached
- value rather than performing the check again, even if the ``<code>`` changes.
- In order to force the check to be re-evaluated, the variable named by
+ The check is only performed once, with the result cached in the variable named
+ by ``<resultVar>``. Every subsequent CMake run will re-use this cached value
+ rather than performing the check again, even if the ``<code>`` changes. In
+ order to force the check to be re-evaluated, the variable named by
``<resultVar>`` must be manually removed from the cache.
+ The compile and link commands can be influenced by setting any of the
+ following variables prior to calling ``check_objc_source_compiles()``
+
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckOBJCSourceRuns.cmake b/Modules/CheckOBJCSourceRuns.cmake
index dd03309..a23a0c7 100644
--- a/Modules/CheckOBJCSourceRuns.cmake
+++ b/Modules/CheckOBJCSourceRuns.cmake
@@ -23,47 +23,27 @@ subsequently be run.
be set to 1, otherwise it will be set to an value that evaluates to boolean
false (e.g. an empty string or an error message).
- The underlying check is performed by the :command:`try_run` command. The
- compile and link commands can be influenced by setting any of the following
- variables prior to calling ``check_objc_source_runs()``:
-
- ``CMAKE_REQUIRED_FLAGS``
- Additional flags to pass to the compiler. Note that the contents of
- :variable:`CMAKE_OBJC_FLAGS <CMAKE_<LANG>_FLAGS>` and its associated
- configuration-specific variable are automatically added to the compiler
- command before the contents of ``CMAKE_REQUIRED_FLAGS``.
-
- ``CMAKE_REQUIRED_DEFINITIONS``
- A :ref:`;-list <CMake Language Lists>` of compiler definitions of the form
- ``-DFOO`` or ``-DFOO=bar``. A definition for the name specified by
- ``<resultVar>`` will also be added automatically.
-
- ``CMAKE_REQUIRED_INCLUDES``
- A :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler. These will be the only header search paths used by
- ``try_run()``, i.e. the contents of the :prop_dir:`INCLUDE_DIRECTORIES`
- directory property will be ignored.
-
- ``CMAKE_REQUIRED_LINK_OPTIONS``
- A :ref:`;-list <CMake Language Lists>` of options to add to the link
- command (see :command:`try_run` for further details).
-
- ``CMAKE_REQUIRED_LIBRARIES``
- A :ref:`;-list <CMake Language Lists>` of libraries to add to the link
- command. These can be the name of system libraries or they can be
- :ref:`Imported Targets <Imported Targets>` (see :command:`try_run` for
- further details).
-
- ``CMAKE_REQUIRED_QUIET``
- If this variable evaluates to a boolean true value, all status messages
- associated with the check will be suppressed.
-
- The check is only performed once, with the result cached in the variable
- named by ``<resultVar>``. Every subsequent CMake run will re-use this cached
- value rather than performing the check again, even if the ``<code>`` changes.
- In order to force the check to be re-evaluated, the variable named by
+ The check is only performed once, with the result cached in the variable named
+ by ``<resultVar>``. Every subsequent CMake run will re-use this cached value
+ rather than performing the check again, even if the ``<code>`` changes. In
+ order to force the check to be re-evaluated, the variable named by
``<resultVar>`` must be manually removed from the cache.
+ The compile and link commands can be influenced by setting any of the
+ following variables prior to calling ``check_objc_source_runs()``
+
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckOBJCXXCompilerFlag.cmake b/Modules/CheckOBJCXXCompilerFlag.cmake
index e4f0c6c..47dacc2 100644
--- a/Modules/CheckOBJCXXCompilerFlag.cmake
+++ b/Modules/CheckOBJCXXCompilerFlag.cmake
@@ -13,25 +13,37 @@ Check whether the Objective-C++ compiler supports a given flag.
.. code-block:: cmake
- check_objcxx_compiler_flag(<flag> <var>)
+ check_objcxx_compiler_flag(<flag> <resultVar>)
Check that the ``<flag>`` is accepted by the compiler without
a diagnostic. Stores the result in an internal cache entry
- named ``<var>``.
-
-This command temporarily sets the ``CMAKE_REQUIRED_DEFINITIONS`` variable
-and calls the ``check_objcxx_source_compiles`` macro from the
-:module:`CheckOBJCXXSourceCompiles` module. See documentation of that
-module for a listing of variables that can otherwise modify the build.
+ named ``<resultVar>``.
A positive result from this check indicates only that the compiler did not
issue a diagnostic message when given the flag. Whether the flag has any
effect or even a specific one is beyond the scope of this module.
-.. note::
- Since the :command:`try_compile` command forwards flags from variables
- like :variable:`CMAKE_OBJCXX_FLAGS <CMAKE_<LANG>_FLAGS>`, unknown flags
- in such variables may cause a false negative for this check.
+The check is only performed once, with the result cached in the variable named
+by ``<resultVar>``. Every subsequent CMake run will re-use this cached value
+rather than performing the check again, even if the ``<code>`` changes. In
+order to force the check to be re-evaluated, the variable named by
+``<resultVar>`` must be manually removed from the cache.
+
+The compile and link commands can be influenced by setting any of the
+following variables prior to calling ``check_objcxx_compiler_flag()``
+
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckOBJCXXSourceCompiles.cmake b/Modules/CheckOBJCXXSourceCompiles.cmake
index 1186934..cfbda3a 100644
--- a/Modules/CheckOBJCXXSourceCompiles.cmake
+++ b/Modules/CheckOBJCXXSourceCompiles.cmake
@@ -24,47 +24,27 @@ Check if given Objective-C++ source compiles and links into an executable.
checking if anything in the output matches any of the specified regular
expressions.
- The underlying check is performed by the :command:`try_compile` command. The
- compile and link commands can be influenced by setting any of the following
- variables prior to calling ``check_objcxx_source_compiles()``:
-
- ``CMAKE_REQUIRED_FLAGS``
- Additional flags to pass to the compiler. Note that the contents of
- :variable:`CMAKE_OBJCXX_FLAGS <CMAKE_<LANG>_FLAGS>` and its associated
- configuration-specific variable are automatically added to the compiler
- command before the contents of ``CMAKE_REQUIRED_FLAGS``.
-
- ``CMAKE_REQUIRED_DEFINITIONS``
- A :ref:`;-list <CMake Language Lists>` of compiler definitions of the form
- ``-DFOO`` or ``-DFOO=bar``. A definition for the name specified by
- ``<resultVar>`` will also be added automatically.
-
- ``CMAKE_REQUIRED_INCLUDES``
- A :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler. These will be the only header search paths used by
- ``try_compile()``, i.e. the contents of the :prop_dir:`INCLUDE_DIRECTORIES`
- directory property will be ignored.
-
- ``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).
-
- ``CMAKE_REQUIRED_LIBRARIES``
- A :ref:`;-list <CMake Language Lists>` of libraries to add to the link
- command. These can be the name of system libraries or they can be
- :ref:`Imported Targets <Imported Targets>` (see :command:`try_compile` for
- further details).
-
- ``CMAKE_REQUIRED_QUIET``
- If this variable evaluates to a boolean true value, all status messages
- associated with the check will be suppressed.
-
- The check is only performed once, with the result cached in the variable
- named by ``<resultVar>``. Every subsequent CMake run will re-use this cached
- value rather than performing the check again, even if the ``<code>`` changes.
- In order to force the check to be re-evaluated, the variable named by
+ The check is only performed once, with the result cached in the variable named
+ by ``<resultVar>``. Every subsequent CMake run will re-use this cached value
+ rather than performing the check again, even if the ``<code>`` changes. In
+ order to force the check to be re-evaluated, the variable named by
``<resultVar>`` must be manually removed from the cache.
+ The compile and link commands can be influenced by setting any of the
+ following variables prior to calling ``check_objcxx_source_compiles()``
+
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckOBJCXXSourceRuns.cmake b/Modules/CheckOBJCXXSourceRuns.cmake
index 05a5e4c..b2831b6 100644
--- a/Modules/CheckOBJCXXSourceRuns.cmake
+++ b/Modules/CheckOBJCXXSourceRuns.cmake
@@ -23,47 +23,27 @@ subsequently be run.
be set to 1, otherwise it will be set to an value that evaluates to boolean
false (e.g. an empty string or an error message).
- The underlying check is performed by the :command:`try_run` command. The
- compile and link commands can be influenced by setting any of the following
- variables prior to calling ``check_objcxx_source_runs()``:
-
- ``CMAKE_REQUIRED_FLAGS``
- Additional flags to pass to the compiler. Note that the contents of
- :variable:`CMAKE_OBJCXX_FLAGS <CMAKE_<LANG>_FLAGS>` and its associated
- configuration-specific variable are automatically added to the compiler
- command before the contents of ``CMAKE_REQUIRED_FLAGS``.
-
- ``CMAKE_REQUIRED_DEFINITIONS``
- A :ref:`;-list <CMake Language Lists>` of compiler definitions of the form
- ``-DFOO`` or ``-DFOO=bar``. A definition for the name specified by
- ``<resultVar>`` will also be added automatically.
-
- ``CMAKE_REQUIRED_INCLUDES``
- A :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler. These will be the only header search paths used by
- ``try_run()``, i.e. the contents of the :prop_dir:`INCLUDE_DIRECTORIES`
- directory property will be ignored.
-
- ``CMAKE_REQUIRED_LINK_OPTIONS``
- A :ref:`;-list <CMake Language Lists>` of options to add to the link
- command (see :command:`try_run` for further details).
-
- ``CMAKE_REQUIRED_LIBRARIES``
- A :ref:`;-list <CMake Language Lists>` of libraries to add to the link
- command. These can be the name of system libraries or they can be
- :ref:`Imported Targets <Imported Targets>` (see :command:`try_run` for
- further details).
-
- ``CMAKE_REQUIRED_QUIET``
- If this variable evaluates to a boolean true value, all status messages
- associated with the check will be suppressed.
-
- The check is only performed once, with the result cached in the variable
- named by ``<resultVar>``. Every subsequent CMake run will re-use this cached
- value rather than performing the check again, even if the ``<code>`` changes.
- In order to force the check to be re-evaluated, the variable named by
+ The check is only performed once, with the result cached in the variable named
+ by ``<resultVar>``. Every subsequent CMake run will re-use this cached value
+ rather than performing the check again, even if the ``<code>`` changes. In
+ order to force the check to be re-evaluated, the variable named by
``<resultVar>`` must be manually removed from the cache.
+ The compile and link commands can be influenced by setting any of the
+ following variables prior to calling ``check_objcxx_source_runs()``
+
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckPrototypeDefinition.cmake b/Modules/CheckPrototypeDefinition.cmake
index 3d53b93..c1a7a1c 100644
--- a/Modules/CheckPrototypeDefinition.cmake
+++ b/Modules/CheckPrototypeDefinition.cmake
@@ -35,20 +35,18 @@ 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``
- .. 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:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
#
diff --git a/Modules/CheckSourceCompiles.cmake b/Modules/CheckSourceCompiles.cmake
index 9788798..041b59c 100644
--- a/Modules/CheckSourceCompiles.cmake
+++ b/Modules/CheckSourceCompiles.cmake
@@ -47,47 +47,27 @@ Check if given source compiles and links into an executable.
end program"
HAVE_ERROR_STOP)
- The underlying check is performed by the :command:`try_compile` command. The
- compile and link commands can be influenced by setting any of the following
- variables prior to calling ``check_source_compiles()``:
-
- ``CMAKE_REQUIRED_FLAGS``
- Additional flags to pass to the compiler. Note that the contents of
- :variable:`CMAKE_<LANG>_FLAGS <CMAKE_<LANG>_FLAGS>` and its associated
- configuration-specific variable are automatically added to the compiler
- command before the contents of ``CMAKE_REQUIRED_FLAGS``.
-
- ``CMAKE_REQUIRED_DEFINITIONS``
- A :ref:`;-list <CMake Language Lists>` of compiler definitions of the form
- ``-DFOO`` or ``-DFOO=bar``. A definition for the name specified by
- ``<resultVar>`` will also be added automatically.
-
- ``CMAKE_REQUIRED_INCLUDES``
- A :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler. These will be the only header search paths used by
- ``try_compile()``, i.e. the contents of the :prop_dir:`INCLUDE_DIRECTORIES`
- directory property will be ignored.
-
- ``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).
-
- ``CMAKE_REQUIRED_LIBRARIES``
- A :ref:`;-list <CMake Language Lists>` of libraries to add to the link
- command. These can be the name of system libraries or they can be
- :ref:`Imported Targets <Imported Targets>` (see :command:`try_compile` for
- further details).
-
- ``CMAKE_REQUIRED_QUIET``
- If this variable evaluates to a boolean true value, all status messages
- associated with the check will be suppressed.
-
The check is only performed once, with the result cached in the variable
named by ``<resultVar>``. Every subsequent CMake run will re-use this cached
value rather than performing the check again, even if the ``<code>`` changes.
In order to force the check to be re-evaluated, the variable named by
``<resultVar>`` must be manually removed from the cache.
+ The compile and link commands can be influenced by setting any of the
+ following variables prior to calling ``check_source_compiles()``:
+
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckSourceRuns.cmake b/Modules/CheckSourceRuns.cmake
index e2fa579..822ee07 100644
--- a/Modules/CheckSourceRuns.cmake
+++ b/Modules/CheckSourceRuns.cmake
@@ -47,47 +47,27 @@ subsequently be run.
end program"
HAVE_COARRAY)
- The underlying check is performed by the :command:`try_run` command. The
- compile and link commands can be influenced by setting any of the following
- variables prior to calling ``check_source_runs()``:
-
- ``CMAKE_REQUIRED_FLAGS``
- Additional flags to pass to the compiler. Note that the contents of
- :variable:`CMAKE_<LANG>_FLAGS <CMAKE_<LANG>_FLAGS>` and its associated
- configuration-specific variable are automatically added to the compiler
- command before the contents of ``CMAKE_REQUIRED_FLAGS``.
-
- ``CMAKE_REQUIRED_DEFINITIONS``
- A :ref:`;-list <CMake Language Lists>` of compiler definitions of the form
- ``-DFOO`` or ``-DFOO=bar``. A definition for the name specified by
- ``<resultVar>`` will also be added automatically.
-
- ``CMAKE_REQUIRED_INCLUDES``
- A :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler. These will be the only header search paths used by
- ``try_run()``, i.e. the contents of the :prop_dir:`INCLUDE_DIRECTORIES`
- directory property will be ignored.
-
- ``CMAKE_REQUIRED_LINK_OPTIONS``
- A :ref:`;-list <CMake Language Lists>` of options to add to the link
- command (see :command:`try_run` for further details).
-
- ``CMAKE_REQUIRED_LIBRARIES``
- A :ref:`;-list <CMake Language Lists>` of libraries to add to the link
- command. These can be the name of system libraries or they can be
- :ref:`Imported Targets <Imported Targets>` (see :command:`try_run` for
- further details).
-
- ``CMAKE_REQUIRED_QUIET``
- If this variable evaluates to a boolean true value, all status messages
- associated with the check will be suppressed.
-
- The check is only performed once, with the result cached in the variable
- named by ``<resultVar>``. Every subsequent CMake run will re-use this cached
- value rather than performing the check again, even if the ``<code>`` changes.
- In order to force the check to be re-evaluated, the variable named by
+ The check is only performed once, with the result cached in the variable named
+ by ``<resultVar>``. Every subsequent CMake run will re-use this cached value
+ rather than performing the check again, even if the ``<code>`` changes. In
+ order to force the check to be re-evaluated, the variable named by
``<resultVar>`` must be manually removed from the cache.
+ The compile and link commands can be influenced by setting any of the
+ following variables prior to calling ``check_source_runs()``
+
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)
diff --git a/Modules/CheckStructHasMember.cmake b/Modules/CheckStructHasMember.cmake
index 33409e9..81ea9fd 100644
--- a/Modules/CheckStructHasMember.cmake
+++ b/Modules/CheckStructHasMember.cmake
@@ -26,20 +26,17 @@ Check if the given struct or class has the specified member variable
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``
- .. 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:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
Example:
diff --git a/Modules/CheckSymbolExists.cmake b/Modules/CheckSymbolExists.cmake
index 21d2ff5..931ed4a 100644
--- a/Modules/CheckSymbolExists.cmake
+++ b/Modules/CheckSymbolExists.cmake
@@ -31,22 +31,17 @@ If the check needs to be done in C++, consider using
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``
- a :ref:`;-list <CMake Language Lists>` of macros to define (-DFOO=bar).
-``CMAKE_REQUIRED_INCLUDES``
- a :ref:`;-list <CMake Language Lists>` of header search paths to pass to
- the compiler.
-``CMAKE_REQUIRED_LINK_OPTIONS``
- .. 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``
- .. versionadded:: 3.1
- execute quietly without messages.
+.. include:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
For example:
diff --git a/Modules/CheckTypeSize.cmake b/Modules/CheckTypeSize.cmake
index a2a5b72..01ce1d2 100644
--- a/Modules/CheckTypeSize.cmake
+++ b/Modules/CheckTypeSize.cmake
@@ -67,20 +67,18 @@ member you can do something like this:
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``
- .. 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:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_INCLUDES.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
``CMAKE_EXTRA_INCLUDE_FILES``
list of extra headers to include.
#]=======================================================================]
diff --git a/Modules/CheckVariableExists.cmake b/Modules/CheckVariableExists.cmake
index 3a7a431..9e5d710 100644
--- a/Modules/CheckVariableExists.cmake
+++ b/Modules/CheckVariableExists.cmake
@@ -26,18 +26,16 @@ 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``
- .. 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:: /module/CMAKE_REQUIRED_FLAGS.txt
+
+.. include:: /module/CMAKE_REQUIRED_DEFINITIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LINK_OPTIONS.txt
+
+.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
+
+.. include:: /module/CMAKE_REQUIRED_QUIET.txt
+
#]=======================================================================]
include_guard(GLOBAL)