From 41c5dd13dc2b45007db8d6d781a2655cd4ab7cba Mon Sep 17 00:00:00 2001 From: Brad King Date: Tue, 19 Aug 2008 10:29:35 -0400 Subject: ENH: Clarify link interface documentation The LINK_INTERFACE_LIBRARIES property does not apply for STATIC libraries. The IMPORTED_LINK_INTERFACE_LIBRARIES property does apply for STATIC libraries. State both explicitly in the documentation. Also, clarify that the per-configuration version of these properties completely overrids the generic version. --- Source/cmTarget.cxx | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index 296e93d..062ac0b 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -246,7 +246,9 @@ void cmTarget::DefineProperties(cmake *cm) "This property is used when loading settings for the " "configuration of an imported target. " "Configuration names correspond to those provided by the project " - "from which the target is imported."); + "from which the target is imported. " + "If set, this property completely overrides the generic property " + "for the named configuration."); cm->DefineProperty ("IMPORTED_LINK_INTERFACE_LIBRARIES", cmProperty::TARGET, @@ -254,7 +256,9 @@ void cmTarget::DefineProperties(cmake *cm) "Lists libraries whose interface is included when an IMPORTED library " "target is linked to another target. " "The libraries will be included on the link line for the target. " - "Ignored for non-imported targets."); + "Unlike the LINK_INTERFACE_LIBRARIES property, this property applies " + "to all imported target types, including STATIC libraries. " + "This property is ignored for non-imported targets."); cm->DefineProperty ("IMPORTED_LINK_INTERFACE_LIBRARIES_", cmProperty::TARGET, @@ -262,7 +266,9 @@ void cmTarget::DefineProperties(cmake *cm) "This property is used when loading settings for the " "configuration of an imported target. " "Configuration names correspond to those provided by the project " - "from which the target is imported."); + "from which the target is imported. " + "If set, this property completely overrides the generic property " + "for the named configuration."); cm->DefineProperty ("IMPORTED_LOCATION", cmProperty::TARGET, @@ -400,13 +406,16 @@ void cmTarget::DefineProperties(cmake *cm) "provided to the other target also. " "If the list is empty then no transitive link dependencies will be " "incorporated when this target is linked into another target even if " - "the default set is non-empty."); + "the default set is non-empty. " + "This property is ignored for STATIC libraries."); cm->DefineProperty ("LINK_INTERFACE_LIBRARIES_", cmProperty::TARGET, "Per-configuration list of public interface libraries for a target.", "This is the configuration-specific version of " - "LINK_INTERFACE_LIBRARIES."); + "LINK_INTERFACE_LIBRARIES. " + "If set, this property completely overrides the generic property " + "for the named configuration."); cm->DefineProperty ("MAP_IMPORTED_CONFIG_", cmProperty::TARGET, -- cgit v0.12