- 30 May, 2013 3 commits
-
-
Stephen Kelly authored
This property should come from the content of the property itself, plus the INTERFACE_INCLUDE_DIRECTORIES of the link *implementation*. In contrast, when the INTERFACE_INCLUDE_DIRECTORIES is evaluated for a target, the INTERFACE_INCLUDE_DIRECTORIES of the link *interface* is used. Similar logic applies for the COMPILE_DEFINITIONS target properties. If the propertyName is already an INTERFACE_ variant of the property, ie, the expression is similar to $<TARGET_PROPERTY:foo,INTERFACE_INCLUDE_DIRECTORIES> then the INTERFACE_INCLUDE_DIRECTORIES of the link *interface* of foo is used. However, if the propertyName is not an INTERFACE_ variant, and the interfacePropertyName is, ie, the expression is similar to: $<TARGET_PROPERTY:foo,INCLUDE_DIRECTORIES> then the INTERFACE_INCLUDE_DIRECTORIES of the link *implementation* of foo is used.
-
Stephen Kelly authored
This will be used to process transitive components of properties which depend on linked targets. Currently only the link interface of the target can be used as the source of the linked targets, but in the next commit it will be possible to use the link implementation as the source of link targets. This commit does not change the semantics of the code.
-
Stephen Kelly authored
-
- 15 May, 2013 1 commit
-
-
Kitware Robot authored
-
- 14 May, 2013 1 commit
-
-
Kitware Robot authored
-
- 13 May, 2013 1 commit
-
-
Kitware Robot authored
-
- 12 May, 2013 1 commit
-
-
Kitware Robot authored
-
- 11 May, 2013 1 commit
-
-
Kitware Robot authored
-
- 10 May, 2013 1 commit
-
-
Kitware Robot authored
-
- 09 May, 2013 1 commit
-
-
Kitware Robot authored
-
- 08 May, 2013 1 commit
-
-
Kitware Robot authored
-
- 07 May, 2013 1 commit
-
-
Kitware Robot authored
-
- 06 May, 2013 6 commits
-
-
2618e025 target_link_libraries: Update usage requirements documentation
-
Commit 42ebb188 (Memoize includes and defines from interface libraries., 2013-02-22) introduced caching of the includes. Fix the memoization to be configuration-specific so that we do not accumulate entries across multiple evaluations in a multi-config generator.
-
Generator expressions, including configuration-specific expressions may be used as link libraries of targets. The old-style keywords of target_link_libraries are handled in terms of new generator expressions. However, the generator expressions expect target names to be valid against a regular expression, whereas target_link_libraries does not require validation. In generator expression constructed without any action from the user we need to ensure that only valid expressions are generated. Ensure that strings which are not valid target names are not used in generator expressions which validate the argument. Code like target_link_libraries(B debug A) generates usage requirement references such as "$<$<CONFIG:DEBUG>:A>". When cmTarget::GetIncludeDirectories uses such references it generates expressions like: $<TARGET_PROPERTY:$<$<CONFIG:DEBUG>:A>,INTERFACE_INCLUDE_DIRECTORIES> When the conditions are false such references evaluate as an empty string and the expression fails with an error such as: $<TARGET_PROPERTY:tgt,prop> expression requires a non-empty target name. Fix this by teaching cmTarget::GetIncludeDirectories to wrap the above expression inside a conditional: $<$<BOOL:$<$<CONFIG:DEBUG>:A>>:...> so that $<TARGET_PROPERTY:...> will not be evaluated with an empty target.
-
Maintain a target's internal list of usage requirement include directories whenever the LINK_LIBRARIES property is set by either target_link_libraries or set_property.
-
Kitware Robot authored
-
- 05 May, 2013 1 commit
-
-
Kitware Robot authored
-
- 04 May, 2013 1 commit
-
-
Kitware Robot authored
-
- 03 May, 2013 1 commit
-
-
Kitware Robot authored
-
- 02 May, 2013 1 commit
-
-
Kitware Robot authored
-
- 01 May, 2013 1 commit
-
-
Kitware Robot authored
-
- 30 Apr, 2013 2 commits
-
-
Brad King authored
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.
-
Kitware Robot authored
-
- 29 Apr, 2013 1 commit
-
-
Kitware Robot authored
-
- 28 Apr, 2013 1 commit
-
-
Kitware Robot authored
-
- 27 Apr, 2013 1 commit
-
-
Kitware Robot authored
-
- 26 Apr, 2013 1 commit
-
-
Kitware Robot authored
-
- 25 Apr, 2013 1 commit
-
-
Kitware Robot authored
-
- 24 Apr, 2013 1 commit
-
-
Kitware Robot authored
-
- 23 Apr, 2013 1 commit
-
-
Kitware Robot authored
-
- 22 Apr, 2013 1 commit
-
-
Kitware Robot authored
-
- 21 Apr, 2013 1 commit
-
-
Kitware Robot authored
-
- 20 Apr, 2013 1 commit
-
-
Kitware Robot authored
-
- 19 Apr, 2013 1 commit
-
-
Kitware Robot authored
-
- 18 Apr, 2013 1 commit
-
-
Kitware Robot authored
-
- 17 Apr, 2013 3 commits