diff options
author | Brad King <brad.king@kitware.com> | 2022-11-10 15:11:11 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2022-11-10 15:11:22 (GMT) |
commit | e159b5b2ae0c42ac493c71a9ef1fbc7cc385db55 (patch) | |
tree | 5407b9bb1ac764bdf111c4f7197f2f9fa3fa24d7 /Help/command | |
parent | 566064ea5e2daeb0f85bb5f08edad980c921d95d (diff) | |
parent | d4d1f8529752f25c64d3d0ab54768b7b93785a3f (diff) | |
download | CMake-e159b5b2ae0c42ac493c71a9ef1fbc7cc385db55.zip CMake-e159b5b2ae0c42ac493c71a9ef1fbc7cc385db55.tar.gz CMake-e159b5b2ae0c42ac493c71a9ef1fbc7cc385db55.tar.bz2 |
Merge topic 'doc-improvements'
d4d1f85297 Help: Move a note about arguments and genexes into include file
968224484f Help: Drop unused `PROPERTY_GENEX` replace from `prop_tgt/INTERFACE_*` files
65457e4fae Help: Add _See Also_ sections to related CMake commands
c86ec79d07 Help: Use direct refs to genexes instead of ``$<GENEX-NAME>``
8c6274326d Help: Use CMake highlighting for command synopsis
c356a94512 Help: Use monospaced font for a genex name in a section title
f98c8707f4 Help: Use `code-block:: cmake` instead of `::` for sub-commands descriptions
2ba351ca4f Help: ``CMake`` → CMake
...
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7873
Diffstat (limited to 'Help/command')
83 files changed, 440 insertions, 188 deletions
diff --git a/Help/command/DEVICE_LINK_OPTIONS.txt b/Help/command/DEVICE_LINK_OPTIONS.txt index 3d50208..878754d 100644 --- a/Help/command/DEVICE_LINK_OPTIONS.txt +++ b/Help/command/DEVICE_LINK_OPTIONS.txt @@ -7,8 +7,6 @@ Host And Device Specific Link Options :prop_tgt:`CUDA_RESOLVE_DEVICE_SYMBOLS` properties and policy :policy:`CMP0105`, the raw options will be delivered to the host and device link steps (wrapped in ``-Xcompiler`` or equivalent for device link). Options wrapped with - ``$<DEVICE_LINK:...>`` - :manual:`generator expression <cmake-generator-expressions(7)>` will be used - only for the device link step. Options wrapped with ``$<HOST_LINK:...>`` - :manual:`generator expression <cmake-generator-expressions(7)>` will be used - only for the host link step. + :genex:`$<DEVICE_LINK:...>` generator expression will be used + only for the device link step. Options wrapped with :genex:`$<HOST_LINK:...>` + generator expression will be used only for the host link step. diff --git a/Help/command/GENEX_NOTE.txt b/Help/command/GENEX_NOTE.txt new file mode 100644 index 0000000..4a7906c --- /dev/null +++ b/Help/command/GENEX_NOTE.txt @@ -0,0 +1,6 @@ +.. |more_see_also| replace:: See the :manual:`cmake-buildsystem(7)` manual + for more on defining buildsystem properties. + +Arguments to |command_name| may use generator expressions +with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` +manual for available expressions. |more_see_also| diff --git a/Help/command/add_compile_definitions.rst b/Help/command/add_compile_definitions.rst index 48e33be..ad1fc43 100644 --- a/Help/command/add_compile_definitions.rst +++ b/Help/command/add_compile_definitions.rst @@ -21,7 +21,10 @@ Function-style definitions are not supported. CMake will automatically escape the value correctly for the native build system (note that CMake language syntax may require escapes to specify some values). -Arguments to ``add_compile_definitions`` may use "generator expressions" with -the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` -manual for available expressions. See the :manual:`cmake-buildsystem(7)` -manual for more on defining buildsystem properties. +.. |command_name| replace:: ``add_compile_definitions`` +.. include:: GENEX_NOTE.txt + +See Also +^^^^^^^^ + +* The command :command:`target_compile_definitions` adds target-specific definitions. diff --git a/Help/command/add_compile_options.rst b/Help/command/add_compile_options.rst index 36f403c..ad65357 100644 --- a/Help/command/add_compile_options.rst +++ b/Help/command/add_compile_options.rst @@ -14,10 +14,8 @@ directory and below. Arguments ^^^^^^^^^ -Arguments to ``add_compile_options`` may use "generator expressions" with -the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` -manual for available expressions. See the :manual:`cmake-buildsystem(7)` -manual for more on defining buildsystem properties. +.. |command_name| replace:: ``add_compile_options`` +.. include:: GENEX_NOTE.txt .. include:: OPTIONS_SHELL.txt @@ -40,12 +38,12 @@ this command is in a compiler-specific conditional clause: See Also ^^^^^^^^ -This command can be used to add any options. However, for -adding preprocessor definitions and include directories it is recommended -to use the more specific commands :command:`add_compile_definitions` -and :command:`include_directories`. +* This command can be used to add any options. However, for + adding preprocessor definitions and include directories it is recommended + to use the more specific commands :command:`add_compile_definitions` + and :command:`include_directories`. -The command :command:`target_compile_options` adds target-specific options. +* The command :command:`target_compile_options` adds target-specific options. -The source file property :prop_sf:`COMPILE_OPTIONS` adds options to one -source file. +* The source file property :prop_sf:`COMPILE_OPTIONS` adds options to one + source file. diff --git a/Help/command/add_custom_command.rst b/Help/command/add_custom_command.rst index 99adc85..a999c2d 100644 --- a/Help/command/add_custom_command.rst +++ b/Help/command/add_custom_command.rst @@ -490,3 +490,8 @@ Ninja Multi-Config ``add_custom_command`` supports the :generator:`Ninja Multi-Config` generator's cross-config capabilities. See the generator documentation for more information. + +See Also +^^^^^^^^ + +* :command:`add_custom_target` diff --git a/Help/command/add_custom_target.rst b/Help/command/add_custom_target.rst index d8882ca..ec02ee2 100644 --- a/Help/command/add_custom_target.rst +++ b/Help/command/add_custom_target.rst @@ -181,3 +181,8 @@ Ninja Multi-Config ``add_custom_target`` supports the :generator:`Ninja Multi-Config` generator's cross-config capabilities. See the generator documentation for more information. + +See Also +^^^^^^^^ + +* :command:`add_custom_command` diff --git a/Help/command/add_definitions.rst b/Help/command/add_definitions.rst index fe69188..5c1f7b4 100644 --- a/Help/command/add_definitions.rst +++ b/Help/command/add_definitions.rst @@ -1,7 +1,7 @@ add_definitions --------------- -Add -D define flags to the compilation of source files. +Add ``-D`` define flags to the compilation of source files. .. code-block:: cmake @@ -31,5 +31,8 @@ backwards compatibility. See documentation of the properties for details on adding preprocessor definitions to specific scopes and configurations. -See the :manual:`cmake-buildsystem(7)` manual for more on defining -buildsystem properties. +See Also +^^^^^^^^ + +* The :manual:`cmake-buildsystem(7)` manual for more on defining + buildsystem properties. diff --git a/Help/command/add_dependencies.rst b/Help/command/add_dependencies.rst index 14c0183..23cb405 100644 --- a/Help/command/add_dependencies.rst +++ b/Help/command/add_dependencies.rst @@ -20,7 +20,12 @@ transitively in its place since the target itself does not build. .. versionadded:: 3.3 Allow adding dependencies to interface libraries. -See the ``DEPENDS`` option of :command:`add_custom_target` and -:command:`add_custom_command` commands for adding file-level -dependencies in custom rules. See the :prop_sf:`OBJECT_DEPENDS` -source file property to add file-level dependencies to object files. +See Also +^^^^^^^^ + +* The ``DEPENDS`` option of :command:`add_custom_target` and + :command:`add_custom_command` commands for adding file-level + dependencies in custom rules. + +* The :prop_sf:`OBJECT_DEPENDS` source file property to add + file-level dependencies to object files. diff --git a/Help/command/add_executable.rst b/Help/command/add_executable.rst index dde9429..d9ea0da 100644 --- a/Help/command/add_executable.rst +++ b/Help/command/add_executable.rst @@ -107,3 +107,8 @@ The ``<name>`` may not be used to modify properties of ``<target>``, that is, it may not be used as the operand of :command:`set_property`, :command:`set_target_properties`, :command:`target_link_libraries` etc. An ``ALIAS`` target may not be installed or exported. + +See Also +^^^^^^^^ + +* :command:`add_library` diff --git a/Help/command/add_library.rst b/Help/command/add_library.rst index 7dc4365..43cefca 100644 --- a/Help/command/add_library.rst +++ b/Help/command/add_library.rst @@ -85,8 +85,8 @@ Creates an :ref:`Object Library <Object Libraries>`. An object library compiles source files but does not archive or link their object files into a library. Instead other targets created by :command:`add_library` or :command:`add_executable` may reference the objects using an expression of the -form ``$<TARGET_OBJECTS:objlib>`` as a source, where ``objlib`` is the -object library name. For example: +form :genex:`$\<TARGET_OBJECTS:objlib\> <TARGET_OBJECTS>` as a source, where +``objlib`` is the object library name. For example: .. code-block:: cmake @@ -101,7 +101,7 @@ They may contain custom commands generating such sources, but not ``PRE_BUILD``, ``PRE_LINK``, or ``POST_BUILD`` commands. Some native build systems (such as Xcode) may not like targets that have only object files, so consider adding at least one real source file to any target that references -``$<TARGET_OBJECTS:objlib>``. +:genex:`$\<TARGET_OBJECTS:objlib\> <TARGET_OBJECTS>`. .. versionadded:: 3.12 Object libraries can be linked to with :command:`target_link_libraries`. @@ -261,3 +261,8 @@ to modify properties of ``<target>``, that is, it may not be used as the operand of :command:`set_property`, :command:`set_target_properties`, :command:`target_link_libraries` etc. An ``ALIAS`` target may not be installed or exported. + +See Also +^^^^^^^^ + +* :command:`add_executable` diff --git a/Help/command/add_link_options.rst b/Help/command/add_link_options.rst index f03e7c0..c09e106 100644 --- a/Help/command/add_link_options.rst +++ b/Help/command/add_link_options.rst @@ -23,13 +23,18 @@ exist to add libraries (:command:`target_link_libraries` or since they do not use a linker. To add archiver or MSVC librarian flags, see the :prop_tgt:`STATIC_LIBRARY_OPTIONS` target property. -Arguments to ``add_link_options`` may use "generator expressions" with -the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` -manual for available expressions. See the :manual:`cmake-buildsystem(7)` -manual for more on defining buildsystem properties. +.. |command_name| replace:: ``add_link_options`` +.. include:: GENEX_NOTE.txt .. include:: DEVICE_LINK_OPTIONS.txt .. include:: OPTIONS_SHELL.txt .. include:: LINK_OPTIONS_LINKER.txt + +See Also +^^^^^^^^ + +* :command:`link_libraries` +* :command:`target_link_libraries` +* :command:`target_link_options` diff --git a/Help/command/block.rst b/Help/command/block.rst index dfd60d4..a352e83 100644 --- a/Help/command/block.rst +++ b/Help/command/block.rst @@ -71,6 +71,6 @@ inside the block. See Also ^^^^^^^^ - * :command:`endblock` - * :command:`return` - * :command:`cmake_policy` +* :command:`endblock` +* :command:`return` +* :command:`cmake_policy` diff --git a/Help/command/build_name.rst b/Help/command/build_name.rst index 2a1fbae..5acf858 100644 --- a/Help/command/build_name.rst +++ b/Help/command/build_name.rst @@ -5,7 +5,7 @@ Disallowed since version 3.0. See CMake Policy :policy:`CMP0036`. Use ``${CMAKE_SYSTEM}`` and ``${CMAKE_CXX_COMPILER}`` instead. -:: +.. code-block:: cmake build_name(variable) diff --git a/Help/command/cmake_host_system_information.rst b/Help/command/cmake_host_system_information.rst index c84c5b5..76824ef 100644 --- a/Help/command/cmake_host_system_information.rst +++ b/Help/command/cmake_host_system_information.rst @@ -17,7 +17,7 @@ Synopsis Query host system specific information ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -:: +.. code-block:: cmake cmake_host_system_information(RESULT <variable> QUERY <key> ...) diff --git a/Help/command/cmake_minimum_required.rst b/Help/command/cmake_minimum_required.rst index d159770..031bd56 100644 --- a/Help/command/cmake_minimum_required.rst +++ b/Help/command/cmake_minimum_required.rst @@ -79,3 +79,8 @@ invokes cmake_policy(VERSION 2.4[...<max>]) which enables compatibility features for CMake 2.4 and lower. + +See Also +^^^^^^^^ + +* :command:`cmake_policy` diff --git a/Help/command/cmake_parse_arguments.rst b/Help/command/cmake_parse_arguments.rst index 7c85da6..0bb1d91 100644 --- a/Help/command/cmake_parse_arguments.rst +++ b/Help/command/cmake_parse_arguments.rst @@ -113,3 +113,9 @@ interpreted as the beginning of the new option. E.g. is a keyword itself ``MY_INSTALL_DESTINATION`` will be empty (but added to ``MY_INSTALL_KEYWORDS_MISSING_VALUES``) and ``MY_INSTALL_OPTIONAL`` will therefore be set to ``TRUE``. + +See Also +^^^^^^^^ + +* :command:`function` +* :command:`macro` diff --git a/Help/command/cmake_path.rst b/Help/command/cmake_path.rst index eb7da07..4e6bedb 100644 --- a/Help/command/cmake_path.rst +++ b/Help/command/cmake_path.rst @@ -237,7 +237,7 @@ The following forms of the ``GET`` subcommand each retrieve a different component or group of components from a path. See `Path Structure And Terminology`_ for the meaning of each path component. -:: +.. code-block:: cmake cmake_path(GET <path-var> ROOT_NAME <out-var>) cmake_path(GET <path-var> ROOT_DIRECTORY <out-var>) @@ -408,7 +408,7 @@ meaning of each path component. .. _HAS_RELATIVE_PART: .. _HAS_PARENT_PATH: -:: +.. code-block:: cmake cmake_path(HAS_ROOT_NAME <path-var> <out-var>) cmake_path(HAS_ROOT_DIRECTORY <path-var> <out-var>) @@ -432,7 +432,7 @@ Note the following special cases: .. _IS_ABSOLUTE: -:: +.. code-block:: cmake cmake_path(IS_ABSOLUTE <path-var> <out-var>) @@ -446,7 +446,7 @@ false while ``HAS_ROOT_DIRECTORY`` can be true. .. _IS_RELATIVE: -:: +.. code-block:: cmake cmake_path(IS_RELATIVE <path-var> <out-var>) @@ -454,7 +454,7 @@ This will store the opposite of ``IS_ABSOLUTE`` in ``<out-var>``. .. _IS_PREFIX: -:: +.. code-block:: cmake cmake_path(IS_PREFIX <path-var> <input> [NORMALIZE] <out-var>) @@ -476,7 +476,7 @@ are :ref:`normalized <Normalization>` before the check. .. _Path COMPARE: .. _COMPARE: -:: +.. code-block:: cmake cmake_path(COMPARE <input1> EQUAL <input2> <out-var>) cmake_path(COMPARE <input1> NOT_EQUAL <input2> <out-var>) @@ -510,7 +510,7 @@ Modification .. _cmake_path-SET: -:: +.. code-block:: cmake cmake_path(SET <path-var> [NORMALIZE] <input>) @@ -539,7 +539,7 @@ Output:: .. _APPEND: -:: +.. code-block:: cmake cmake_path(APPEND <path-var> [<input>...] [OUTPUT_VARIABLE <out-var>]) @@ -570,7 +570,7 @@ the following algorithm (pseudo-code) applies: .. _APPEND_STRING: -:: +.. code-block:: cmake cmake_path(APPEND_STRING <path-var> [<input>...] [OUTPUT_VARIABLE <out-var>]) @@ -579,7 +579,7 @@ Append all the ``<input>`` arguments to the ``<path-var>`` without adding any .. _REMOVE_FILENAME: -:: +.. code-block:: cmake cmake_path(REMOVE_FILENAME <path-var> [OUTPUT_VARIABLE <out-var>]) @@ -609,7 +609,7 @@ Output:: .. _REPLACE_FILENAME: -:: +.. code-block:: cmake cmake_path(REPLACE_FILENAME <path-var> <input> [OUTPUT_VARIABLE <out-var>]) @@ -628,7 +628,7 @@ equivalent to the following: .. _REMOVE_EXTENSION: -:: +.. code-block:: cmake cmake_path(REMOVE_EXTENSION <path-var> [LAST_ONLY] [OUTPUT_VARIABLE <out-var>]) @@ -637,7 +637,7 @@ Removes the :ref:`extension <EXTENSION_DEF>`, if any, from ``<path-var>``. .. _REPLACE_EXTENSION: -:: +.. code-block:: cmake cmake_path(REPLACE_EXTENSION <path-var> [LAST_ONLY] <input> [OUTPUT_VARIABLE <out-var>]) @@ -661,7 +661,7 @@ Generation .. _NORMAL_PATH: -:: +.. code-block:: cmake cmake_path(NORMAL_PATH <path-var> [OUTPUT_VARIABLE <out-var>]) @@ -670,7 +670,7 @@ Normalize ``<path-var>`` according the steps described in :ref:`Normalization`. .. _cmake_path-RELATIVE_PATH: .. _RELATIVE_PATH: -:: +.. code-block:: cmake cmake_path(RELATIVE_PATH <path-var> [BASE_DIRECTORY <input>] [OUTPUT_VARIABLE <out-var>]) @@ -686,7 +686,7 @@ as that used by C++ .. _ABSOLUTE_PATH: -:: +.. code-block:: cmake cmake_path(ABSOLUTE_PATH <path-var> [BASE_DIRECTORY <input>] [NORMALIZE] [OUTPUT_VARIABLE <out-var>]) @@ -713,7 +713,7 @@ target platform when cross-compiling. .. _cmake_path-NATIVE_PATH: .. _NATIVE_PATH: -:: +.. code-block:: cmake cmake_path(NATIVE_PATH <path-var> [NORMALIZE] <out-var>) @@ -727,7 +727,7 @@ When the ``NORMALIZE`` option is specified, the path is :ref:`normalized .. _cmake_path-TO_CMAKE_PATH_LIST: .. _TO_CMAKE_PATH_LIST: -:: +.. code-block:: cmake cmake_path(CONVERT <input> TO_CMAKE_PATH_LIST <out-var> [NORMALIZE]) @@ -749,7 +749,7 @@ When the ``NORMALIZE`` option is specified, the path is :ref:`normalized .. _cmake_path-TO_NATIVE_PATH_LIST: .. _TO_NATIVE_PATH_LIST: -:: +.. code-block:: cmake cmake_path(CONVERT <input> TO_NATIVE_PATH_LIST <out-var> [NORMALIZE]) @@ -788,7 +788,7 @@ Hashing .. _HASH: -:: +.. code-block:: cmake cmake_path(HASH <path-var> <out-var>) diff --git a/Help/command/cmake_policy.rst b/Help/command/cmake_policy.rst index 54fc548..cde74a7 100644 --- a/Help/command/cmake_policy.rst +++ b/Help/command/cmake_policy.rst @@ -150,3 +150,8 @@ use the pre-record policies when they are invoked. If the function or macro implementation sets policies, the changes automatically propagate up through callers until they reach the closest nested policy stack entry. + +See Also +^^^^^^^^ + +* :command:`cmake_minimum_required` diff --git a/Help/command/configure_file.rst b/Help/command/configure_file.rst index 1d81423..7fa2941 100644 --- a/Help/command/configure_file.rst +++ b/Help/command/configure_file.rst @@ -182,3 +182,8 @@ specify the output directory as an include directory: include_directories(${CMAKE_CURRENT_BINARY_DIR}) so that sources may include the header as ``#include <foo.h>``. + +See Also +^^^^^^^^ + +* :command:`file(GENERATE)` diff --git a/Help/command/ctest_build.rst b/Help/command/ctest_build.rst index 8c81f2d..bce1739 100644 --- a/Help/command/ctest_build.rst +++ b/Help/command/ctest_build.rst @@ -3,7 +3,7 @@ ctest_build Perform the :ref:`CTest Build Step` as a :ref:`Dashboard Client`. -:: +.. code-block:: cmake ctest_build([BUILD <build-dir>] [APPEND] [CONFIGURATION <config>] diff --git a/Help/command/ctest_configure.rst b/Help/command/ctest_configure.rst index 95712aa..f23dd22 100644 --- a/Help/command/ctest_configure.rst +++ b/Help/command/ctest_configure.rst @@ -3,7 +3,7 @@ ctest_configure Perform the :ref:`CTest Configure Step` as a :ref:`Dashboard Client`. -:: +.. code-block:: cmake ctest_configure([BUILD <build-dir>] [SOURCE <source-dir>] [APPEND] [OPTIONS <options>] [RETURN_VALUE <result-var>] [QUIET] diff --git a/Help/command/ctest_coverage.rst b/Help/command/ctest_coverage.rst index a6c643b..319c978 100644 --- a/Help/command/ctest_coverage.rst +++ b/Help/command/ctest_coverage.rst @@ -3,7 +3,7 @@ ctest_coverage Perform the :ref:`CTest Coverage Step` as a :ref:`Dashboard Client`. -:: +.. code-block:: cmake ctest_coverage([BUILD <build-dir>] [APPEND] [LABELS <label>...] diff --git a/Help/command/ctest_empty_binary_directory.rst b/Help/command/ctest_empty_binary_directory.rst index 7753667..5d26de1 100644 --- a/Help/command/ctest_empty_binary_directory.rst +++ b/Help/command/ctest_empty_binary_directory.rst @@ -3,9 +3,9 @@ ctest_empty_binary_directory empties the binary directory -:: +.. code-block:: cmake - ctest_empty_binary_directory( directory ) + ctest_empty_binary_directory(<directory>) Removes a binary directory. This command will perform some checks prior to deleting the directory in an attempt to avoid malicious or diff --git a/Help/command/ctest_memcheck.rst b/Help/command/ctest_memcheck.rst index 8b79077..4ca7364 100644 --- a/Help/command/ctest_memcheck.rst +++ b/Help/command/ctest_memcheck.rst @@ -3,7 +3,7 @@ ctest_memcheck Perform the :ref:`CTest MemCheck Step` as a :ref:`Dashboard Client`. -:: +.. code-block:: cmake ctest_memcheck([BUILD <build-dir>] [APPEND] [START <start-number>] diff --git a/Help/command/ctest_read_custom_files.rst b/Help/command/ctest_read_custom_files.rst index cf8e17a..53c093e 100644 --- a/Help/command/ctest_read_custom_files.rst +++ b/Help/command/ctest_read_custom_files.rst @@ -3,9 +3,9 @@ ctest_read_custom_files read CTestCustom files. -:: +.. code-block:: cmake - ctest_read_custom_files( directory ... ) + ctest_read_custom_files(<directory>...) Read all the CTestCustom.ctest or CTestCustom.cmake files from the given directory. diff --git a/Help/command/ctest_run_script.rst b/Help/command/ctest_run_script.rst index a2b348f..145bd90 100644 --- a/Help/command/ctest_run_script.rst +++ b/Help/command/ctest_run_script.rst @@ -3,7 +3,7 @@ ctest_run_script runs a :option:`ctest -S` script -:: +.. code-block:: cmake ctest_run_script([NEW_PROCESS] script_file_name script_file_name1 script_file_name2 ... [RETURN_VALUE var]) diff --git a/Help/command/ctest_sleep.rst b/Help/command/ctest_sleep.rst index 16a914c..42b9768 100644 --- a/Help/command/ctest_sleep.rst +++ b/Help/command/ctest_sleep.rst @@ -3,13 +3,13 @@ ctest_sleep sleeps for some amount of time -:: +.. code-block:: cmake ctest_sleep(<seconds>) Sleep for given number of seconds. -:: +.. code-block:: cmake ctest_sleep(<time1> <duration> <time2>) diff --git a/Help/command/ctest_start.rst b/Help/command/ctest_start.rst index 921279a..2d68a37 100644 --- a/Help/command/ctest_start.rst +++ b/Help/command/ctest_start.rst @@ -3,7 +3,7 @@ ctest_start Starts the testing for a given model -:: +.. code-block:: cmake ctest_start(<model> [<source> [<binary>]] [GROUP <group>] [QUIET]) diff --git a/Help/command/ctest_submit.rst b/Help/command/ctest_submit.rst index d661825..3b6bf3a 100644 --- a/Help/command/ctest_submit.rst +++ b/Help/command/ctest_submit.rst @@ -3,7 +3,7 @@ ctest_submit Perform the :ref:`CTest Submit Step` as a :ref:`Dashboard Client`. -:: +.. code-block:: cmake ctest_submit([PARTS <part>...] [FILES <file>...] [SUBMIT_URL <url>] @@ -96,7 +96,7 @@ Submit to CDash Upload API .. versionadded:: 3.2 -:: +.. code-block:: cmake ctest_submit(CDASH_UPLOAD <file> [CDASH_UPLOAD_TYPE <type>] [SUBMIT_URL <url>] diff --git a/Help/command/ctest_test.rst b/Help/command/ctest_test.rst index 4f9f891..cf20ade 100644 --- a/Help/command/ctest_test.rst +++ b/Help/command/ctest_test.rst @@ -3,7 +3,7 @@ ctest_test Perform the :ref:`CTest Test Step` as a :ref:`Dashboard Client`. -:: +.. code-block:: cmake ctest_test([BUILD <build-dir>] [APPEND] [START <start-number>] @@ -30,7 +30,7 @@ Perform the :ref:`CTest Test Step` as a :ref:`Dashboard Client`. ) .. - _note: If updating the argument list here, please also update the argument + NOTE If updating the argument list here, please also update the argument list documentation for :command:`ctest_memcheck` as well. Run tests in the project build tree and store results in diff --git a/Help/command/ctest_update.rst b/Help/command/ctest_update.rst index 63f991b..836cdf1 100644 --- a/Help/command/ctest_update.rst +++ b/Help/command/ctest_update.rst @@ -3,7 +3,7 @@ ctest_update Perform the :ref:`CTest Update Step` as a :ref:`Dashboard Client`. -:: +.. code-block:: cmake ctest_update([SOURCE <source-dir>] [RETURN_VALUE <result-var>] diff --git a/Help/command/ctest_upload.rst b/Help/command/ctest_upload.rst index ffddd0a..344979a 100644 --- a/Help/command/ctest_upload.rst +++ b/Help/command/ctest_upload.rst @@ -3,7 +3,7 @@ ctest_upload Upload files to a dashboard server as a :ref:`Dashboard Client`. -:: +.. code-block:: cmake ctest_upload(FILES <file>... [QUIET] [CAPTURE_CMAKE_ERROR <result-var>]) diff --git a/Help/command/define_property.rst b/Help/command/define_property.rst index 76b060b..5278e30 100644 --- a/Help/command/define_property.rst +++ b/Help/command/define_property.rst @@ -73,3 +73,9 @@ project via corresponding options to the :command:`get_property` command. with ``CMAKE_`` or ``_CMAKE_``. The property name must contain at least one underscore. It is recommended that the property name have a prefix specific to the project. + +See Also +^^^^^^^^ + +* :command:`get_property` +* :command:`set_property` diff --git a/Help/command/exec_program.rst b/Help/command/exec_program.rst index bc9b069..983a6df 100644 --- a/Help/command/exec_program.rst +++ b/Help/command/exec_program.rst @@ -8,7 +8,7 @@ exec_program Run an executable program during the processing of the CMakeList.txt file. -:: +.. code-block:: cmake exec_program(Executable [directory in which to run] [ARGS <arguments to executable>] diff --git a/Help/command/export_library_dependencies.rst b/Help/command/export_library_dependencies.rst index 9753abf..6cb4643 100644 --- a/Help/command/export_library_dependencies.rst +++ b/Help/command/export_library_dependencies.rst @@ -15,7 +15,7 @@ The old-style library dependencies file does not take into account per-configuration names of libraries or the :prop_tgt:`LINK_INTERFACE_LIBRARIES` target property. -:: +.. code-block:: cmake export_library_dependencies(<file> [APPEND]) diff --git a/Help/command/file.rst b/Help/command/file.rst index fbe2a81..673125d 100644 --- a/Help/command/file.rst +++ b/Help/command/file.rst @@ -526,10 +526,10 @@ from the input content to produce the output content. The options are: ``OUTPUT <output-file>`` Specify the output file name to generate. Use generator expressions - such as ``$<CONFIG>`` to specify a configuration-specific output file - name. Multiple configurations may generate the same output file only - if the generated content is identical. Otherwise, the ``<output-file>`` - must evaluate to an unique name for each configuration. + such as :genex:`$<CONFIG>` to specify a configuration-specific + output file name. Multiple configurations may generate the same output + file only if the generated content is identical. Otherwise, the + ``<output-file>`` must evaluate to an unique name for each configuration. .. versionchanged:: 3.10 A relative path (after evaluating generator expressions) is treated @@ -540,8 +540,9 @@ from the input content to produce the output content. The options are: .. versionadded:: 3.19 Specify which target to use when evaluating generator expressions that - require a target for evaluation (e.g. ``$<COMPILE_FEATURES:...>``, - ``$<TARGET_PROPERTY:prop>``). + require a target for evaluation (e.g. + :genex:`$<COMPILE_FEATURES:...>`, + :genex:`$<TARGET_PROPERTY:prop>`). ``NO_SOURCE_PERMISSIONS`` .. versionadded:: 3.20 diff --git a/Help/command/foreach.rst b/Help/command/foreach.rst index ddf8dfa..c3fdbf7 100644 --- a/Help/command/foreach.rst +++ b/Help/command/foreach.rst @@ -74,8 +74,7 @@ processed: message(STATUS "X=${X}") endforeach() -yields -:: +yields:: -- X=0 -- X=1 @@ -119,8 +118,7 @@ iteration variables as follows: message(STATUS "en=${en}, ba=${ba}") endforeach() -yields -:: +yields:: -- num_0=one, num_1=satu -- num_0=two, num_1=dua diff --git a/Help/command/function.rst b/Help/command/function.rst index fc55c03..069f9fa 100644 --- a/Help/command/function.rst +++ b/Help/command/function.rst @@ -77,5 +77,6 @@ extra argument. See Also ^^^^^^^^ +* :command:`cmake_parse_arguments` * :command:`endfunction` * :command:`return` diff --git a/Help/command/get_cmake_property.rst b/Help/command/get_cmake_property.rst index 96764a3..b1d18a0 100644 --- a/Help/command/get_cmake_property.rst +++ b/Help/command/get_cmake_property.rst @@ -12,9 +12,12 @@ the ``<property>`` is stored in the variable ``<var>``. If the property is not found, ``<var>`` will be set to ``NOTFOUND``. See the :manual:`cmake-properties(7)` manual for available properties. -See also the :command:`get_property` command ``GLOBAL`` option. - In addition to global properties, this command (for historical reasons) also supports the :prop_dir:`VARIABLES` and :prop_dir:`MACROS` directory properties. It also supports a special ``COMPONENTS`` global property that lists the components given to the :command:`install` command. + +See Also +^^^^^^^^ + +* the :command:`get_property` command ``GLOBAL`` option diff --git a/Help/command/get_directory_property.rst b/Help/command/get_directory_property.rst index 0ccbfb0..209d2f8 100644 --- a/Help/command/get_directory_property.rst +++ b/Help/command/get_directory_property.rst @@ -33,4 +33,9 @@ the search will chain to a parent scope as described for the Get a variable definition from a directory. This form is useful to get a variable definition from another directory. -See also the more general :command:`get_property` command. + +See Also +^^^^^^^^ + +* :command:`define_property` +* the more general :command:`get_property` command diff --git a/Help/command/get_filename_component.rst b/Help/command/get_filename_component.rst index 4bfe087..899ede6 100644 --- a/Help/command/get_filename_component.rst +++ b/Help/command/get_filename_component.rst @@ -69,3 +69,8 @@ left as a full path. If ``PROGRAM_ARGS`` is present with ``PROGRAM``, then any command-line arguments present in the ``<FileName>`` string are split from the program name and stored in ``<arg_var>``. This is used to separate a program name from its arguments in a command line string. + +See Also +^^^^^^^^ + +* :command:`cmake_path` diff --git a/Help/command/get_property.rst b/Help/command/get_property.rst index 46da285..6b9931e 100644 --- a/Help/command/get_property.rst +++ b/Help/command/get_property.rst @@ -99,3 +99,9 @@ documentation is requested for a property that has not been defined The :prop_sf:`GENERATED` source file property may be globally visible. See its documentation for details. + +See Also +^^^^^^^^ + +* :command:`define_property` +* :command:`set_property` diff --git a/Help/command/get_source_file_property.rst b/Help/command/get_source_file_property.rst index ae41565..e83e9c2 100644 --- a/Help/command/get_source_file_property.rst +++ b/Help/command/get_source_file_property.rst @@ -39,9 +39,14 @@ Use :command:`set_source_files_properties` to set property values. Source file properties usually control how the file is built. One property that is always there is :prop_sf:`LOCATION`. -See also the more general :command:`get_property` command. - .. note:: The :prop_sf:`GENERATED` source file property may be globally visible. See its documentation for details. + +See Also +^^^^^^^^ + +* :command:`define_property` +* the more general :command:`get_property` command +* :command:`set_source_files_properties` diff --git a/Help/command/get_target_property.rst b/Help/command/get_target_property.rst index 985b1ff..8c6dcb1 100644 --- a/Help/command/get_target_property.rst +++ b/Help/command/get_target_property.rst @@ -22,6 +22,10 @@ query the target instead. This command can get properties for any target so far created. The targets do not need to be in the current ``CMakeLists.txt`` file. -See also the more general :command:`get_property` command. +See Also +^^^^^^^^ -See :ref:`Target Properties` for the list of properties known to CMake. +* :command:`define_property` +* the more general :command:`get_property` command +* :command:`set_target_properties` +* :ref:`Target Properties` for the list of properties known to CMake diff --git a/Help/command/get_test_property.rst b/Help/command/get_test_property.rst index 6bcc1ef..2b6f354 100644 --- a/Help/command/get_test_property.rst +++ b/Help/command/get_test_property.rst @@ -19,4 +19,8 @@ an empty string. For a list of standard properties you can type :option:`cmake --help-property-list`. -See also the more general :command:`get_property` command. +See Also +^^^^^^^^ + +* :command:`define_property` +* the more general :command:`get_property` command diff --git a/Help/command/if.rst b/Help/command/if.rst index b72769f..a57630b 100644 --- a/Help/command/if.rst +++ b/Help/command/if.rst @@ -428,6 +428,6 @@ condition syntax accepts ``<variable|string>``. See also ^^^^^^^^ - * :command:`else` - * :command:`elseif` - * :command:`endif` +* :command:`else` +* :command:`elseif` +* :command:`endif` diff --git a/Help/command/include_directories.rst b/Help/command/include_directories.rst index fe281c3..d2948ed 100644 --- a/Help/command/include_directories.rst +++ b/Help/command/include_directories.rst @@ -29,13 +29,16 @@ Signalling this setting might achieve effects such as the compiler skipping warnings, or these fixed-install system files not being considered in dependency calculations - see compiler docs. -Arguments to ``include_directories`` may use "generator expressions" with -the syntax "$<...>". See the :manual:`cmake-generator-expressions(7)` -manual for available expressions. See the :manual:`cmake-buildsystem(7)` -manual for more on defining buildsystem properties. +.. |command_name| replace:: ``include_directories`` +.. include:: GENEX_NOTE.txt .. note:: Prefer the :command:`target_include_directories` command to add include directories to individual targets and optionally propagate/export them to dependents. + +See Also +^^^^^^^^ + +* :command:`target_include_directories` diff --git a/Help/command/install.rst b/Help/command/install.rst index feff436..d036a20 100644 --- a/Help/command/install.rst +++ b/Help/command/install.rst @@ -379,7 +379,7 @@ top level: :prop_tgt:`INTERFACE_INCLUDE_DIRECTORIES` target property of the ``<targets>`` when exported by the `install(EXPORT)`_ command. If a relative path is specified, it is treated as relative to the - ``$<INSTALL_PREFIX>``. + :genex:`$<INSTALL_PREFIX>`. ``RUNTIME_DEPENDENCY_SET`` .. versionadded:: 3.21 diff --git a/Help/command/install_files.rst b/Help/command/install_files.rst index 494f3d0..9b19124 100644 --- a/Help/command/install_files.rst +++ b/Help/command/install_files.rst @@ -11,7 +11,7 @@ directly replaced by the ``FILES`` form of the :command:`install` command. The regexp form can be expressed more clearly using the ``GLOB`` form of the :command:`file` command. -:: +.. code-block:: cmake install_files(<dir> extension file file ...) @@ -23,14 +23,14 @@ removed first. This is useful for providing lists of source files such as foo.cxx when you want the corresponding foo.h to be installed. A typical extension is ``.h``. -:: +.. code-block:: cmake install_files(<dir> regexp) Any files in the current source directory that match the regular expression will be installed. -:: +.. code-block:: cmake install_files(<dir> FILES file file ...) diff --git a/Help/command/install_programs.rst b/Help/command/install_programs.rst index eafae89..5b42904 100644 --- a/Help/command/install_programs.rst +++ b/Help/command/install_programs.rst @@ -11,7 +11,7 @@ directly replaced by the ``PROGRAMS`` form of the :command:`install` command. The regexp form can be expressed more clearly using the ``GLOB`` form of the :command:`file` command. -:: +.. code-block:: cmake install_programs(<dir> file1 file2 [file3 ...]) install_programs(<dir> FILES file1 [file2 ...]) @@ -20,7 +20,7 @@ Create rules to install the listed programs into the given directory. Use the ``FILES`` argument to guarantee that the file list version of the command will be used even when there is only one argument. -:: +.. code-block:: cmake install_programs(<dir> regexp) diff --git a/Help/command/install_targets.rst b/Help/command/install_targets.rst index 9355f8d..7653776 100644 --- a/Help/command/install_targets.rst +++ b/Help/command/install_targets.rst @@ -8,7 +8,7 @@ install_targets This command has been superseded by the :command:`install` command. It is provided for compatibility with older CMake code. -:: +.. code-block:: cmake install_targets(<dir> [RUNTIME_DIRECTORY dir] target target) diff --git a/Help/command/link_directories.rst b/Help/command/link_directories.rst index 6732402..5e7fc39 100644 --- a/Help/command/link_directories.rst +++ b/Help/command/link_directories.rst @@ -53,3 +53,9 @@ The command will apply only to targets created after it is called. where possible by using the :command:`target_link_directories` command rather than ``link_directories()``. The target-specific command can also control how the search directories propagate to other dependent targets. + +See Also +^^^^^^^^ + +* :command:`target_link_directories` +* :command:`target_link_libraries` diff --git a/Help/command/load_command.rst b/Help/command/load_command.rst index dc23599..4b3888f 100644 --- a/Help/command/load_command.rst +++ b/Help/command/load_command.rst @@ -5,7 +5,7 @@ Disallowed since version 3.0. See CMake Policy :policy:`CMP0031`. Load a command into a running CMake. -:: +.. code-block:: cmake load_command(COMMAND_NAME <loc1> [loc2 ...]) @@ -15,7 +15,7 @@ added to the set of available CMake commands. Usually, :command:`try_compile` is used before this command to compile the module. If the command is successfully loaded a variable named -:: +.. code-block:: cmake CMAKE_LOADED_COMMAND_<COMMAND_NAME> diff --git a/Help/command/macro.rst b/Help/command/macro.rst index 5fe4c00..2858622 100644 --- a/Help/command/macro.rst +++ b/Help/command/macro.rst @@ -149,3 +149,9 @@ existing variable instead of the arguments. For example: Will loop over ``a;b;c`` and not over ``x;y;z`` as one might have expected. If you want true CMake variables and/or better CMake scope control you should look at the function command. + +See Also +^^^^^^^^ + +* :command:`cmake_parse_arguments` +* :command:`endmacro` diff --git a/Help/command/make_directory.rst b/Help/command/make_directory.rst index 8469b0a..959749d 100644 --- a/Help/command/make_directory.rst +++ b/Help/command/make_directory.rst @@ -5,7 +5,7 @@ make_directory Use the :command:`file(MAKE_DIRECTORY)` command instead. -:: +.. code-block:: cmake make_directory(directory) diff --git a/Help/command/message.rst b/Help/command/message.rst index 77d21c8..9ac4277 100644 --- a/Help/command/message.rst +++ b/Help/command/message.rst @@ -193,3 +193,8 @@ Output from the above would appear something like the following:: -- Finding partB -- Finding partB - not found -- Finding my things - missing components: B + +See Also +^^^^^^^^ + +* :command:`cmake_language(GET_MESSAGE_LOG_LEVEL)` diff --git a/Help/command/output_required_files.rst b/Help/command/output_required_files.rst index b3a6e86..fbe5dbd 100644 --- a/Help/command/output_required_files.rst +++ b/Help/command/output_required_files.rst @@ -9,7 +9,7 @@ This command exists only because ancient CMake versions provided it. CMake handles preprocessor dependency scanning automatically using a more advanced scanner. -:: +.. code-block:: cmake output_required_files(srcfile outputfile) diff --git a/Help/command/remove.rst b/Help/command/remove.rst index 543d016..e12a937 100644 --- a/Help/command/remove.rst +++ b/Help/command/remove.rst @@ -5,7 +5,7 @@ remove Use the :command:`list(REMOVE_ITEM)` command instead. -:: +.. code-block:: cmake remove(VAR VALUE VALUE ...) diff --git a/Help/command/return.rst b/Help/command/return.rst index 3013b52..795dbeb 100644 --- a/Help/command/return.rst +++ b/Help/command/return.rst @@ -88,4 +88,5 @@ command. All arguments are ignored unless that policy is set to ``NEW``. See Also ^^^^^^^^ - * :command:`block` +* :command:`block` +* :command:`function` diff --git a/Help/command/set.rst b/Help/command/set.rst index 90b57d2..c724844 100644 --- a/Help/command/set.rst +++ b/Help/command/set.rst @@ -111,3 +111,8 @@ environment variable. Arguments after ``<value>`` are ignored. If extra arguments are found, then an author warning is issued. + +See Also +^^^^^^^^ + +* :command:`unset` diff --git a/Help/command/set_directory_properties.rst b/Help/command/set_directory_properties.rst index f02a8e6..93ad39b 100644 --- a/Help/command/set_directory_properties.rst +++ b/Help/command/set_directory_properties.rst @@ -13,3 +13,10 @@ See also the :command:`set_property(DIRECTORY)` command. See :ref:`Directory Properties` for the list of properties known to CMake and their individual documentation for the behavior of each property. + +See Also +^^^^^^^^ + +* :command:`define_property` +* :command:`get_directory_property` +* the more general :command:`set_property` command diff --git a/Help/command/set_property.rst b/Help/command/set_property.rst index b9b12c4..d446a2d 100644 --- a/Help/command/set_property.rst +++ b/Help/command/set_property.rst @@ -107,10 +107,15 @@ finding the initial value to append to. If the property is not already directly set in the nominated scope, the command will behave as though ``APPEND`` or ``APPEND_STRING`` had not been given. -See the :manual:`cmake-properties(7)` manual for a list of properties -in each scope. - .. note:: The :prop_sf:`GENERATED` source file property may be globally visible. See its documentation for details. + +See Also +^^^^^^^^ + +* :command:`define_property` +* :command:`get_property` +* The :manual:`cmake-properties(7)` manual for a list of properties + in each scope. diff --git a/Help/command/set_source_files_properties.rst b/Help/command/set_source_files_properties.rst index 61c69a2..d937b33 100644 --- a/Help/command/set_source_files_properties.rst +++ b/Help/command/set_source_files_properties.rst @@ -34,10 +34,15 @@ list. Use :command:`get_source_file_property` to get property values. See also the :command:`set_property(SOURCE)` command. -See :ref:`Source File Properties` for the list of properties known -to CMake. - .. note:: The :prop_sf:`GENERATED` source file property may be globally visible. See its documentation for details. + +See Also +^^^^^^^^ + +* :command:`define_property` +* :command:`get_source_file_property` +* :ref:`Source File Properties` for the list of properties known + to CMake diff --git a/Help/command/set_target_properties.rst b/Help/command/set_target_properties.rst index 597be23..856b92c 100644 --- a/Help/command/set_target_properties.rst +++ b/Help/command/set_target_properties.rst @@ -15,6 +15,10 @@ set next. You can use any prop value pair you want and extract it later with the :command:`get_property` or :command:`get_target_property` command. -See also the :command:`set_property(TARGET)` command. +See Also +^^^^^^^^ -See :ref:`Target Properties` for the list of properties known to CMake. +* :command:`define_property` +* :command:`get_target_property` +* the more general :command:`set_property` command +* :ref:`Target Properties` for the list of properties known to CMake diff --git a/Help/command/set_tests_properties.rst b/Help/command/set_tests_properties.rst index eadde33..125e460 100644 --- a/Help/command/set_tests_properties.rst +++ b/Help/command/set_tests_properties.rst @@ -14,6 +14,10 @@ Test property values may be specified using :manual:`generator expressions <cmake-generator-expressions(7)>` for tests created by the :command:`add_test(NAME)` signature. -See also the :command:`set_property(TEST)` command. +See Also +^^^^^^^^ -See :ref:`Test Properties` for the list of properties known to CMake. +* :command:`add_test` +* :command:`define_property` +* the more general :command:`set_property` command +* :ref:`Target Properties` for the list of properties known to CMake diff --git a/Help/command/subdir_depends.rst b/Help/command/subdir_depends.rst index 0c1b3c1..2115b33 100644 --- a/Help/command/subdir_depends.rst +++ b/Help/command/subdir_depends.rst @@ -5,7 +5,7 @@ Disallowed since version 3.0. See CMake Policy :policy:`CMP0029`. Does nothing. -:: +.. code-block:: cmake subdir_depends(subdir dep1 dep2 ...) diff --git a/Help/command/subdirs.rst b/Help/command/subdirs.rst index 530951b..ecc6d1f 100644 --- a/Help/command/subdirs.rst +++ b/Help/command/subdirs.rst @@ -7,7 +7,7 @@ subdirs Add a list of subdirectories to the build. -:: +.. code-block:: cmake subdirs(dir1 dir2 ...[EXCLUDE_FROM_ALL exclude_dir1 exclude_dir2 ...] [PREORDER] ) diff --git a/Help/command/target_compile_definitions.rst b/Help/command/target_compile_definitions.rst index 2d292af..2290efb 100644 --- a/Help/command/target_compile_definitions.rst +++ b/Help/command/target_compile_definitions.rst @@ -25,10 +25,8 @@ same ``<target>`` append items in the order called. .. versionadded:: 3.11 Allow setting ``INTERFACE`` items on :ref:`IMPORTED targets <Imported Targets>`. -Arguments to ``target_compile_definitions`` may use "generator expressions" -with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` -manual for available expressions. See the :manual:`cmake-buildsystem(7)` -manual for more on defining buildsystem properties. +.. |command_name| replace:: ``target_compile_definitions`` +.. include:: GENEX_NOTE.txt Any leading ``-D`` on an item will be removed. Empty items are ignored. For example, the following are all equivalent: @@ -48,3 +46,16 @@ Definitions may optionally have values: Note that many compilers treat ``-DFOO`` as equivalent to ``-DFOO=1``, but other tools may not recognize this in all circumstances (e.g. IntelliSense). + +See Also +^^^^^^^^ + +* :command:`add_compile_definitions` +* :command:`target_compile_features` +* :command:`target_compile_options` +* :command:`target_include_directories` +* :command:`target_link_libraries` +* :command:`target_link_directories` +* :command:`target_link_options` +* :command:`target_precompile_headers` +* :command:`target_sources` diff --git a/Help/command/target_compile_features.rst b/Help/command/target_compile_features.rst index 58502bf..531af81 100644 --- a/Help/command/target_compile_features.rst +++ b/Help/command/target_compile_features.rst @@ -30,8 +30,20 @@ The named ``<target>`` must have been created by a command such as :command:`add_executable` or :command:`add_library` and must not be an :ref:`ALIAS target <Alias Targets>`. -Arguments to ``target_compile_features`` may use "generator expressions" -with the syntax ``$<...>``. -See the :manual:`cmake-generator-expressions(7)` manual for available -expressions. See the :manual:`cmake-compile-features(7)` manual for -information on compile features and a list of supported compilers. +.. |command_name| replace:: ``target_compile_features`` +.. |more_see_also| replace:: See the :manual:`cmake-compile-features(7)` + manual for information on compile features and a list of supported compilers. +.. include:: GENEX_NOTE.txt + :start-line: 1 + +See Also +^^^^^^^^ + +* :command:`target_compile_definitions` +* :command:`target_compile_options` +* :command:`target_include_directories` +* :command:`target_link_libraries` +* :command:`target_link_directories` +* :command:`target_link_options` +* :command:`target_precompile_headers` +* :command:`target_sources` diff --git a/Help/command/target_compile_options.rst b/Help/command/target_compile_options.rst index 0d86c91..8f13f45 100644 --- a/Help/command/target_compile_options.rst +++ b/Help/command/target_compile_options.rst @@ -32,21 +32,26 @@ The following arguments specify compile options. Repeated calls for the same .. versionadded:: 3.11 Allow setting ``INTERFACE`` items on :ref:`IMPORTED targets <Imported Targets>`. -Arguments to ``target_compile_options`` may use "generator expressions" -with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` -manual for available expressions. See the :manual:`cmake-buildsystem(7)` -manual for more on defining buildsystem properties. +.. |command_name| replace:: ``target_compile_options`` +.. include:: GENEX_NOTE.txt .. include:: OPTIONS_SHELL.txt See Also ^^^^^^^^ -This command can be used to add any options. However, for adding -preprocessor definitions and include directories it is recommended -to use the more specific commands :command:`target_compile_definitions` -and :command:`target_include_directories`. +* This command can be used to add any options. However, for adding + preprocessor definitions and include directories it is recommended + to use the more specific commands :command:`target_compile_definitions` + and :command:`target_include_directories`. -For directory-wide settings, there is the command :command:`add_compile_options`. +* For directory-wide settings, there is the command :command:`add_compile_options`. -For file-specific settings, there is the source file property :prop_sf:`COMPILE_OPTIONS`. +* For file-specific settings, there is the source file property :prop_sf:`COMPILE_OPTIONS`. + +* :command:`target_compile_features` +* :command:`target_link_libraries` +* :command:`target_link_directories` +* :command:`target_link_options` +* :command:`target_precompile_headers` +* :command:`target_sources` diff --git a/Help/command/target_include_directories.rst b/Help/command/target_include_directories.rst index f13ff29..2a410ec 100644 --- a/Help/command/target_include_directories.rst +++ b/Help/command/target_include_directories.rst @@ -40,10 +40,8 @@ If ``SYSTEM`` is used together with ``PUBLIC`` or ``INTERFACE``, the :prop_tgt:`INTERFACE_SYSTEM_INCLUDE_DIRECTORIES` target property will be populated with the specified directories. -Arguments to ``target_include_directories`` may use "generator expressions" -with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` -manual for available expressions. See the :manual:`cmake-buildsystem(7)` -manual for more on defining buildsystem properties. +.. |command_name| replace:: ``target_include_directories`` +.. include:: GENEX_NOTE.txt Specified include directories may be absolute paths or relative paths. A relative path will be interpreted as relative to the current source @@ -74,3 +72,16 @@ Creating Relocatable Packages .. |INTERFACE_PROPERTY_LINK| replace:: :prop_tgt:`INTERFACE_INCLUDE_DIRECTORIES` .. include:: /include/INTERFACE_INCLUDE_DIRECTORIES_WARNING.txt + +See Also +^^^^^^^^ + +* :command:`include_directories` +* :command:`target_compile_definitions` +* :command:`target_compile_features` +* :command:`target_compile_options` +* :command:`target_link_libraries` +* :command:`target_link_directories` +* :command:`target_link_options` +* :command:`target_precompile_headers` +* :command:`target_sources` diff --git a/Help/command/target_link_directories.rst b/Help/command/target_link_directories.rst index b72f746..2854c96 100644 --- a/Help/command/target_link_directories.rst +++ b/Help/command/target_link_directories.rst @@ -34,10 +34,8 @@ calls for the same ``<target>`` append items in the order called. If ``BEFORE`` is specified, the content will be prepended to the relevant property instead of being appended. -Arguments to ``target_link_directories`` may use "generator expressions" -with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` -manual for available expressions. See the :manual:`cmake-buildsystem(7)` -manual for more on defining buildsystem properties. +.. |command_name| replace:: ``target_link_directories`` +.. include:: GENEX_NOTE.txt .. note:: @@ -56,3 +54,16 @@ manual for more on defining buildsystem properties. that expect to be found via ``RPATH`` mechanisms, but some linkers are not able to fully decode those paths (e.g. due to the presence of things like ``$ORIGIN``). + +See Also +^^^^^^^^ + +* :command:`link_directories` +* :command:`target_compile_definitions` +* :command:`target_compile_features` +* :command:`target_compile_options` +* :command:`target_include_directories` +* :command:`target_link_libraries` +* :command:`target_link_options` +* :command:`target_precompile_headers` +* :command:`target_sources` diff --git a/Help/command/target_link_libraries.rst b/Help/command/target_link_libraries.rst index bb7b5cc..1d27660 100644 --- a/Help/command/target_link_libraries.rst +++ b/Help/command/target_link_libraries.rst @@ -293,8 +293,8 @@ will be included in the link too. .. _`Linking Object Libraries via $<TARGET_OBJECTS>`: -Linking Object Libraries via $<TARGET_OBJECTS> -"""""""""""""""""""""""""""""""""""""""""""""" +Linking Object Libraries via ``$<TARGET_OBJECTS>`` +"""""""""""""""""""""""""""""""""""""""""""""""""" .. versionadded:: 3.21 @@ -407,3 +407,15 @@ Creating Relocatable Packages .. |INTERFACE_PROPERTY_LINK| replace:: :prop_tgt:`INTERFACE_LINK_LIBRARIES` .. include:: /include/INTERFACE_LINK_LIBRARIES_WARNING.txt + +See Also +^^^^^^^^ + +* :command:`target_compile_definitions` +* :command:`target_compile_features` +* :command:`target_compile_options` +* :command:`target_include_directories` +* :command:`target_link_directories` +* :command:`target_link_options` +* :command:`target_precompile_headers` +* :command:`target_sources` diff --git a/Help/command/target_link_options.rst b/Help/command/target_link_options.rst index 3cd0e64..0d026f2 100644 --- a/Help/command/target_link_options.rst +++ b/Help/command/target_link_options.rst @@ -42,13 +42,23 @@ The following arguments specify link options. Repeated calls for the same .. note:: :ref:`IMPORTED targets <Imported Targets>` only support ``INTERFACE`` items. -Arguments to ``target_link_options`` may use "generator expressions" -with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` -manual for available expressions. See the :manual:`cmake-buildsystem(7)` -manual for more on defining buildsystem properties. +.. |command_name| replace:: ``target_link_options`` +.. include:: GENEX_NOTE.txt .. include:: DEVICE_LINK_OPTIONS.txt .. include:: OPTIONS_SHELL.txt .. include:: LINK_OPTIONS_LINKER.txt + +See Also +^^^^^^^^ + +* :command:`target_compile_definitions` +* :command:`target_compile_features` +* :command:`target_compile_options` +* :command:`target_include_directories` +* :command:`target_link_libraries` +* :command:`target_link_directories` +* :command:`target_precompile_headers` +* :command:`target_sources` diff --git a/Help/command/target_precompile_headers.rst b/Help/command/target_precompile_headers.rst index 84f5d12..8e5c0e9 100644 --- a/Help/command/target_precompile_headers.rst +++ b/Help/command/target_precompile_headers.rst @@ -70,17 +70,16 @@ included by absolute path. For example: <unordered_map> ) -Arguments to ``target_precompile_headers()`` may use "generator expressions" -with the syntax ``$<...>``. -See the :manual:`cmake-generator-expressions(7)` manual for available -expressions. -The :genex:`$<COMPILE_LANGUAGE:...>` generator expression is particularly -useful for specifying a language-specific header to precompile for -only one language (e.g. ``CXX`` and not ``C``). In this case, header -file names that are not explicitly in double quotes or angle brackets -must be specified by absolute path. Also, when specifying angle brackets -inside a generator expression, be sure to encode the closing ``>`` as -``$<ANGLE-R>``. For example: +.. |command_name| replace:: ``target_compile_features`` +.. |more_see_also| replace:: The :genex:`$<COMPILE_LANGUAGE:...>` generator + expression is particularly useful for specifying a language-specific header + to precompile for only one language (e.g. ``CXX`` and not ``C``). In this + case, header file names that are not explicitly in double quotes or angle + brackets must be specified by absolute path. Also, when specifying angle + brackets inside a generator expression, be sure to encode the closing + ``>`` as :genex:`$<ANGLE-R>`. For example: +.. include:: GENEX_NOTE.txt + :start-line: 1 .. code-block:: cmake @@ -118,8 +117,17 @@ the ``REUSE_FROM`` form is used. See Also ^^^^^^^^ -To disable precompile headers for specific targets, see the -:prop_tgt:`DISABLE_PRECOMPILE_HEADERS` target property. +* To disable precompile headers for specific targets, see the + :prop_tgt:`DISABLE_PRECOMPILE_HEADERS` target property. -To prevent precompile headers from being used when compiling a specific -source file, see the :prop_sf:`SKIP_PRECOMPILE_HEADERS` source file property. +* To prevent precompile headers from being used when compiling a specific + source file, see the :prop_sf:`SKIP_PRECOMPILE_HEADERS` source file property. + +* :command:`target_compile_definitions` +* :command:`target_compile_features` +* :command:`target_compile_options` +* :command:`target_include_directories` +* :command:`target_link_libraries` +* :command:`target_link_directories` +* :command:`target_link_options` +* :command:`target_sources` diff --git a/Help/command/target_sources.rst b/Help/command/target_sources.rst index 461175a..5d07f54 100644 --- a/Help/command/target_sources.rst +++ b/Help/command/target_sources.rst @@ -202,3 +202,17 @@ Target properties related to include directories are also modified by of the file set is ``INTERFACE`` or ``PUBLIC``, all of the ``BASE_DIRS`` of the file set are wrapped in :genex:`$<BUILD_INTERFACE>` and appended to this property. + +See Also +^^^^^^^^ + +* :command:`add_executable` +* :command:`add_library` +* :command:`target_compile_definitions` +* :command:`target_compile_features` +* :command:`target_compile_options` +* :command:`target_include_directories` +* :command:`target_link_libraries` +* :command:`target_link_directories` +* :command:`target_link_options` +* :command:`target_precompile_headers` diff --git a/Help/command/try_compile.rst b/Help/command/try_compile.rst index 9e9f39f..6ae245f 100644 --- a/Help/command/try_compile.rst +++ b/Help/command/try_compile.rst @@ -105,9 +105,9 @@ contain something like the following: CMake automatically generates, for each ``try_compile`` operation, a unique directory under ``${CMAKE_BINARY_DIR}/CMakeFiles/CMakeScratch`` with an unspecified name. These directories are cleaned automatically unless -:option:`--debug-trycompile <cmake --debug-trycompile>` is passed to ``cmake``. +:option:`--debug-trycompile <cmake --debug-trycompile>` is passed to :program:`cmake`. Such directories from previous runs are also unconditionally cleaned at the -beginning of any ``cmake`` execution. +beginning of any :program:`cmake` execution. This command also supports an alternate signature which was present in older versions of CMake: @@ -130,7 +130,7 @@ which was present in older versions of CMake: In this version, ``try_compile`` will use ``<bindir>/CMakeFiles/CMakeTmp`` for its operation, and all such files will be cleaned automatically. For debugging, :option:`--debug-trycompile <cmake --debug-trycompile>` can be -passed to ``cmake`` to avoid this clean. However, multiple sequential +passed to :program:`cmake` to avoid this clean. However, multiple sequential ``try_compile`` operations, if given the same ``<bindir>``, will reuse this single output directory, such that you can only debug one such ``try_compile`` call at a time. Use of the newer signature is recommended to simplify @@ -327,3 +327,8 @@ a build configuration. If :policy:`CMP0141` is set to ``NEW``, one can use :variable:`CMAKE_MSVC_DEBUG_INFORMATION_FORMAT` to specify the MSVC debug information format. + +See Also +^^^^^^^^ + +* :command:`try_run` diff --git a/Help/command/unset.rst b/Help/command/unset.rst index 7521052..1cd1398 100644 --- a/Help/command/unset.rst +++ b/Help/command/unset.rst @@ -39,3 +39,8 @@ Subsequent calls of ``$ENV{<variable>}`` will return the empty string. This command affects only the current CMake process, not the process from which CMake was called, nor the system environment at large, nor the environment of subsequent build or test processes. + +See Also +^^^^^^^^ + +* :command:`set` diff --git a/Help/command/use_mangled_mesa.rst b/Help/command/use_mangled_mesa.rst index 5b0e2ee..bc84bb3 100644 --- a/Help/command/use_mangled_mesa.rst +++ b/Help/command/use_mangled_mesa.rst @@ -5,7 +5,7 @@ Disallowed since version 3.0. See CMake Policy :policy:`CMP0030`. Copy mesa headers for use in combination with system GL. -:: +.. code-block:: cmake use_mangled_mesa(PATH_TO_MESA OUTPUT_DIRECTORY) diff --git a/Help/command/utility_source.rst b/Help/command/utility_source.rst index 94d6a4e..3c2bf39 100644 --- a/Help/command/utility_source.rst +++ b/Help/command/utility_source.rst @@ -5,7 +5,7 @@ Disallowed since version 3.0. See CMake Policy :policy:`CMP0034`. Specify the source tree of a third-party utility. -:: +.. code-block:: cmake utility_source(cache_entry executable_name path_to_source [file1 file2 ...]) diff --git a/Help/command/variable_requires.rst b/Help/command/variable_requires.rst index 322b154..1dbb02d 100644 --- a/Help/command/variable_requires.rst +++ b/Help/command/variable_requires.rst @@ -7,7 +7,7 @@ Use the :command:`if` command instead. Assert satisfaction of an option's required variables. -:: +.. code-block:: cmake variable_requires(TEST_VARIABLE RESULT_VARIABLE REQUIRED_VARIABLE1 diff --git a/Help/command/while.rst b/Help/command/while.rst index 0bafae5..cb0fa2d 100644 --- a/Help/command/while.rst +++ b/Help/command/while.rst @@ -27,7 +27,7 @@ If used, it must be a verbatim repeat of the argument of the opening See Also ^^^^^^^^ - * :command:`break` - * :command:`continue` - * :command:`foreach` - * :command:`endwhile` +* :command:`break` +* :command:`continue` +* :command:`foreach` +* :command:`endwhile` diff --git a/Help/command/write_file.rst b/Help/command/write_file.rst index 4d476bd..4d0bc63 100644 --- a/Help/command/write_file.rst +++ b/Help/command/write_file.rst @@ -5,7 +5,7 @@ write_file Use the :command:`file(WRITE)` command instead. -:: +.. code-block:: cmake write_file(filename "message to write"... [APPEND]) |