summaryrefslogtreecommitdiffstats
path: root/Source/cmTargetLinkLibrariesCommand.h
Commit message (Collapse)AuthorAgeFilesLines
* Drop builtin command documentationBrad King2013-10-161-146/+0
| | | | | Drop all GetTerseDocumentation and GetFullDocumentation methods from commands. The command documentation is now in Help/command/*.rst files.
* target_link_libraries: Add PUBLIC/PRIVATE/INTERFACE keyword signatureStephen Kelly2013-07-241-6/+22
| | | | | | | Add a new signature to help populate INTERFACE_LINK_LIBRARIES and LINK_LIBRARIES cleanly in a single call. Add policy CMP0023 to control whether the keyword signatures can be mixed with uses of the plain signatures on the same target.
* Use linked frameworks as a source of include directories.Stephen Kelly2013-07-241-0/+5
|
* TLL: Don't populate old link interface if CMP0022 is NEW.Stephen Kelly2013-07-081-8/+15
| | | | | | | | | | | | | Always populate the INTERFACE_LINK_LIBRARIES for interface entries. Don't populate the old interface properties matching (IMPORTED_)?LINK_INTERFACE_LIBRARIES(_<CONFIG>)? if CMP0022 is NEW. Because the INTERFACE_LINK_LIBRARIES property is now populated by the target_link_libraries when operating on a static library, make an equivalent change which populates the property with the same value when the old link_libraries() command is used. This silences the policy warning in that case.
* target_link_libraries: Update usage requirements documentationBrad King2013-04-301-8/+11
| | | | | | 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.
* Add includes and compile definitions with target_link_libraries.Stephen Kelly2013-01-311-0/+9
| | | | | | | | This establishes that linking is used to propagate usage-requirements between targets in CMake code. The use of the target_link_libraries command as the API for this is chosen because introducing a new command would introduce confusion due to multiple commands which differ only in a subtle way.
* target_link_libraries: Document that new sigs privatize old (#13876)Brad King2013-01-241-1/+3
| | | | | | | | | | | | | | Explain in the documentation for the legacy signature target_link_libraries(foo bar) that the other signatures like target_link_libraries(foo LINK_INTERFACE_LIBRARIES ...) target_link_libraries(foo LINK_PRIVATE ...) will set the LINK_INTERFACE_LIBRARIES target property and therefore make libraries specified only by the legacy signature private.
* Don't include generator expressions in old-style link handling.Stephen Kelly2013-01-131-0/+7
| | | | | | | | | | Don't add generator expressions to variables which are used for CMP0003, CMP0004, and the old-style _LIB_DEPENDS content. They will not be evaluated when read anyway and would probably confuse the code reading them. This makes it legitimate to use target_link_libraries with generator expressions as arguments.
* Documentation: Correct typos and grammarAndreas Mohr2012-11-071-2/+2
|
* Document behavior of multiple target_link_libraries calls (#13113)Brad King2012-04-091-1/+2
| | | | State explicitly that multiple calls append (rather than replace).
* Add 'const' qualifier to some cmCommand membersYury G. Kudryashov2012-02-291-3/+3
| | | | | Use const_cast for the special case in cmFindBase where GetFullDocumentation calls GenerateDocumentation.
* target_link_libraries: Add missing space in documentationBrad King2011-11-221-2/+2
| | | | Change "thelink" to "the link".
* target_link_libraries: Add LINK_(PUBLIC|PRIVATE) optionsStephen Kelly2011-11-221-1/+20
| | | | | Makes it possible to specify the link dependencies and link interfaces in one command without repetition.
* target_link_libraries: Trim trailing whitespaceStephen Kelly2011-11-221-6/+6
|
* Document target_link_libraries target scope (#11058)Brad King2010-12-151-0/+4
| | | | | | | The target_link_libraries command requires its first argument to be a target in the current directory. Document this and update the error message to be more specific. While at it, format the error message with a call stack.
* Convert CMake to OSI-approved BSD LicenseBrad King2009-09-281-14/+9
| | | | | | | This converts the CMake license to a pure 3-clause OSI-approved BSD License. We drop the previous license clause requiring modified versions to be plainly marked. We also update the CMake copyright to cover the full development time range.
* ENH: Mention cycles in target_link_libraries docsBrad King2009-06-241-0/+22
| | | | | This documents CMake's support for cycles in the dependency graph of STATIC libraries.
* ENH: Clarify target_link_libraries docsBrad King2009-02-021-5/+7
| | | | | The target_link_libraries command supports flags as well as libraries. This makes the support explicit in the documentation.
* ENH: Allow a custom list of debug configurationsBrad King2008-09-041-4/+8
| | | | | | Create a DEBUG_CONFIGURATIONS global property as a way for projects to specify which configuration names are considered to be 'debug' configurations.
* ENH: Make link interface mode more distinctBrad King2008-08-181-2/+4
| | | | | | | | | Rename the recently added INTERFACE mode of the target_link_libraries() command to LINK_INTERFACE_LIBRARIES. This makes it much more distinct from a normal call to the command, and clearly states its connection to the property of the same name. Also require the option to appear immediately after the target name to make it a mode rather than an option.
* ENH: Simple specification of link interfacesBrad King2008-08-111-8/+38
| | | | | | | | Create an INTERFACE option to the target_link_libraries command to help set the LINK_INTERFACE_LIBRARIES and LINK_INTERFACE_LIBRARIES_DEBUG properties. This will help users specify link interfaces using variables from Find*.cmake modules that include the 'debug' and 'optimized' keywords.
* ENH: Tolerate repeated link library typesBrad King2008-08-071-0/+2
| | | | | | | | The "debug", "optimized", and "general" link library type specifier arguments to the target_link_library commands are sometimes repeated in user code due to variable expansion and other complications. Instead of silently accepting the duplicates and trying to link to a bogus library like "optimized.lib", warn and ignore the earlier specifiers.
* STYLE: Improve documentation of target_link_libraries command to make ↵Brad King2008-02-061-1/+4
| | | | target-level dependency explicit. See bug #6043.
* ENH: add return and break support to cmake, also change basic command ↵Ken Martin2008-01-231-1/+2
| | | | invocation signature to be able to return extra informaiton via the cmExecutionStatus class
* ENH: make commands lower case by defaultKen Martin2007-10-101-2/+2
|
* ENH: updated handling of debug and optimized target link librariesKen Martin2006-11-291-2/+3
|
* STYLE: some m_ to this-> cleanupKen Martin2006-03-151-1/+0
|
* BUG: Sweeping changes to cleanup computation of target names. This shouldBrad King2006-01-131-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | fix many bugs related to target names being computed inconsistently. - Centralized computation of a target's file name to a method in cmTarget. Now that global knowledge is always available the *_CMAKE_PATH cache variables are no longer needed. - Centralized computation of link library command lines and link directory search order. - Moved computation of link directories needed to link CMake targets to be after evaluation of linking dependencies. This also removed alot of duplicate code in which each version had its own bugs. This commit is surrounded by the tags CMake-TargetNameCentralization1-pre and CMake-TargetNameCentralization1-post so make the large set of changes easy to identify.
* ENH: Clarified documentation for LINK_LIBRARIES and TARGET_LINK_LIBRARIES.Brad King2004-03-251-1/+1
|
* removed redundent includesKen Martin2003-08-101-1/+0
|
* ENH: Report an error when ADD_LIBRARY and TARGET_LINK_LIBRARIES are in the ↵Andy Cedilnik2003-08-071-0/+8
| | | | wrong order and fix CMakeLists files to actually work
* ENH: Cleaned up documentation and formatted it for use by cmDocumentation.Brad King2003-02-141-6/+7
|
* ENH: Added reference to Copyright.txt. Removed old reference to ITK ↵Brad King2002-10-231-3/+3
| | | | copyright. Changed program name to CMake instead of Insight in source file header. Also removed tabs.
* ENH:Updated copyrightWill Schroeder2002-01-211-29/+5
|
* ENH: change InitialPass to take a const reference to the argument string, to ↵Bill Hoffman2001-09-201-1/+1
| | | | avoid changes to the file cache
* ENH: rename Invoke to InitialPassBill Hoffman2001-06-061-1/+1
|
* added TARGET_LINK_LIBRARY command and support for debug and release ↵Ken Martin2001-04-301-0/+104
libraries to link against