summaryrefslogtreecommitdiffstats
path: root/Source/cmComputeLinkDepends.h
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2013-01-04 12:31:01 (GMT)
committerBrad King <brad.king@kitware.com>2013-01-08 13:53:25 (GMT)
commit40cf3fb95bc391519c0db4be1dc03c49e040579f (patch)
tree5fde04aaf1737fcf0f60e709d5b01e2002608fa3 /Source/cmComputeLinkDepends.h
parent894f52f32d96ae92df0ba3dac2a70fe9c87e818d (diff)
downloadCMake-40cf3fb95bc391519c0db4be1dc03c49e040579f.zip
CMake-40cf3fb95bc391519c0db4be1dc03c49e040579f.tar.gz
CMake-40cf3fb95bc391519c0db4be1dc03c49e040579f.tar.bz2
Make linking APIs aware of 'head' target
The 'head' is the dependent target to be linked with the current target. It will be used to evaluate generator expressions with proper handling of mapped configurations and is used as the source target of properties. This requires that memoization is done with a key of a pair of target and config, instead of just config, because now the result also depends on the target. Removing the memoization entirely is not an option because it slows cmake down considerably.
Diffstat (limited to 'Source/cmComputeLinkDepends.h')
-rw-r--r--Source/cmComputeLinkDepends.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/Source/cmComputeLinkDepends.h b/Source/cmComputeLinkDepends.h
index 80a0454..1d5d1b9 100644
--- a/Source/cmComputeLinkDepends.h
+++ b/Source/cmComputeLinkDepends.h
@@ -32,7 +32,7 @@ class cmake;
class cmComputeLinkDepends
{
public:
- cmComputeLinkDepends(cmTarget* target, const char* config);
+ cmComputeLinkDepends(cmTarget* target, const char* config, cmTarget *head);
~cmComputeLinkDepends();
// Basic information about each link item.
@@ -59,6 +59,7 @@ private:
// Context information.
cmTarget* Target;
+ cmTarget* HeadTarget;
cmMakefile* Makefile;
cmLocalGenerator* LocalGenerator;
cmGlobalGenerator* GlobalGenerator;