target_link_libraries: Update usage requirements documentation

Re-word the documentation to make clear that CMake integrates usage
requirements during generation and not synchronously during
configuration or execution of target_link_libraries.
This commit is contained in:
Brad King 2013-04-30 09:09:23 -04:00
parent 78185f598c
commit 2618e0257e
1 changed files with 11 additions and 8 deletions

View File

@ -97,14 +97,17 @@ public:
"Calls to other signatures of this command may set the property "
"making any libraries linked exclusively by this signature private."
"\n"
"Target usage requirements are also consumed by this command. If the "
"<target> is linked to another target which has "
"a populated INTERFACE_INCLUDE_DIRECTORIES, the content of it is "
"appended to the INCLUDE_DIRECTORIES of <target>. Similarly, the "
"INTERFACE_COMPILE_DEFINITONS of a dependee are added to the "
"COMPILE_DEFINITONS of <target>, and the "
"INTERFACE_POSITION_INDEPENDENT_CODE property is used to determine the "
"POSITION_INDEPENDENT_CODE property of <target>."
"CMake will also propagate \"usage requirements\" from linked library "
"targets. "
"Usage requirements affect compilation of sources in the <target>. "
"They are specified by properties defined on linked targets. "
"During generation of the build system, CMake integrates "
"usage requirement property values with the corresponding "
"build properties for <target>:\n"
" INTERFACE_COMPILE_DEFINITONS: Appends to COMPILE_DEFINITONS\n"
" INTERFACE_INCLUDE_DIRECTORIES: Appends to INCLUDE_DIRECTORIES\n"
" INTERFACE_POSITION_INDEPENDENT_CODE: Sets POSITION_INDEPENDENT_CODE\n"
" or checked for consistency with existing value\n"
"\n"
" target_link_libraries(<target> LINK_INTERFACE_LIBRARIES\n"
" [[debug|optimized|general] <lib>] ...)\n"