summaryrefslogtreecommitdiffstats
path: root/Help/command
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2013-11-04 12:54:20 (GMT)
committerCMake Topic Stage <kwrobot@kitware.com>2013-11-04 12:54:20 (GMT)
commitb4a1f442bbaaaa5c1260e87ae7e8e488c8ccef16 (patch)
tree85727bbc74ab92f59ab7854d9544e5d2cbbe660c /Help/command
parenteb3761ae68ea643ee7a2a290f03017e67c888a6b (diff)
parentb51696f003a945e7f9de0b551afd707416cc09fa (diff)
downloadCMake-b4a1f442bbaaaa5c1260e87ae7e8e488c8ccef16.zip
CMake-b4a1f442bbaaaa5c1260e87ae7e8e488c8ccef16.tar.gz
CMake-b4a1f442bbaaaa5c1260e87ae7e8e488c8ccef16.tar.bz2
Merge topic 'policy-CMP0022-fixes-for-master'
b51696f CMP0022: Update target_link_libraries plain signature documentation 25b7f87 Merge branch 'policy-CMP0022-fixes' into policy-CMP0022-fixes-for-master 0a561a0 CMP0022: Warn about a given target at most once 23d21b7 Do not export INTERFACE_LINK_LIBRARIES from non-linkable targets ef10b87 CMP0022: Plain target_link_libraries must populate link interface 0e06788 CMP0022: Add test for target_link_libraries plain signature c0f4a61 CMP0022: Add unit test for null pointer check and message. 4b0cfa7 Merge branch 'output-CMP0022-entries' into policy-CMP0022-fixes
Diffstat (limited to 'Help/command')
-rw-r--r--Help/command/target_link_libraries.rst17
1 files changed, 10 insertions, 7 deletions
diff --git a/Help/command/target_link_libraries.rst b/Help/command/target_link_libraries.rst
index 41265fd..c2d2dc6 100644
--- a/Help/command/target_link_libraries.rst
+++ b/Help/command/target_link_libraries.rst
@@ -32,13 +32,16 @@ per-configuration rules by creating and linking to IMPORTED library
targets. See the IMPORTED mode of the add_library command for more
information.
-Library dependencies are transitive by default. When this target is
-linked into another target then the libraries linked to this target
-will appear on the link line for the other target too. See the
-INTERFACE_LINK_LIBRARIES target property to override the set of
-transitive link dependencies for a target. Calls to other signatures
-of this command may set the property making any libraries linked
-exclusively by this signature private.
+Library dependencies are transitive by default with this signature.
+When this target is linked into another target then the libraries
+linked to this target will appear on the link line for the other
+target too. This transitive "link interface" is stored in the
+INTERFACE_LINK_LIBRARIES target property when policy CMP0022 is set to
+NEW and may be overridden by setting the property directly.
+(When CMP0022 is not set to NEW, transitive linking is builtin but may
+be overridden by the LINK_INTERFACE_LIBRARIES property. Calls to other
+signatures of this command may set the property making any libraries
+linked exclusively by this signature private.)
CMake will also propagate "usage requirements" from linked library
targets. Usage requirements affect compilation of sources in the