diff options
author | Brad King <brad.king@kitware.com> | 2018-10-19 13:47:46 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2018-10-19 13:47:53 (GMT) |
commit | b142956829bf52bce5d65fbc82aa82d617eac7f7 (patch) | |
tree | 9bd4fb549aae3c4821a8b3a2289ff89040d51c07 /Help/command | |
parent | 7053dd301c694bbc5e13b7e32febd34596b22d4e (diff) | |
parent | 18cff26e3aeea532959f080ec1178d611ead3615 (diff) | |
download | CMake-b142956829bf52bce5d65fbc82aa82d617eac7f7.zip CMake-b142956829bf52bce5d65fbc82aa82d617eac7f7.tar.gz CMake-b142956829bf52bce5d65fbc82aa82d617eac7f7.tar.bz2 |
Merge topic 'doc-target_link_libraries-item-quoting'
18cff26e3a Help: Clarify command-line encoding of target_link_libraries items
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2503
Diffstat (limited to 'Help/command')
-rw-r--r-- | Help/command/target_link_libraries.rst | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/Help/command/target_link_libraries.rst b/Help/command/target_link_libraries.rst index 229d10c..58f312e 100644 --- a/Help/command/target_link_libraries.rst +++ b/Help/command/target_link_libraries.rst @@ -43,6 +43,9 @@ Each ``<item>`` may be: the library instead of using the full path (e.g. ``/usr/lib/libfoo.so`` becomes ``-lfoo``). + The full path to the target's artifact will be quoted/escaped for + the shell automatically. + * **A full path to a library file**: The generated link line will normally preserve the full path to the file. The buildsystem will have a dependency to re-link ``<target>`` if the library file changes. @@ -62,9 +65,15 @@ Each ``<item>`` may be: imported into generated project files. This is not supported by other generators. + The full path to the library file will be quoted/escaped for + the shell automatically. + * **A plain library name**: The generated link line will ask the linker to search for the library (e.g. ``foo`` becomes ``-lfoo`` or ``foo.lib``). + The library name/flag is treated as a command-line string fragment and + will be used with no extra quoting or escaping. + * **A link flag**: Item names starting with ``-``, but not ``-l`` or ``-framework``, are treated as linker flags. Note that such flags will be treated like any other library link item for purposes of transitive @@ -78,6 +87,9 @@ Each ``<item>`` may be: flags explicitly. The flags will then be placed at the toolchain-defined flag position in the link command. + The link flag is treated as a command-line string fragment and + will be used with no extra quoting or escaping. + * **A generator expression**: A ``$<...>`` :manual:`generator expression <cmake-generator-expressions(7)>` may evaluate to any of the above items or to a :ref:`;-list <CMake Language Lists>` of them. |