summaryrefslogtreecommitdiffstats
path: root/Source/cmTarget.cxx
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2013-06-04 14:21:33 (GMT)
committerStephen Kelly <steveire@gmail.com>2013-07-08 20:39:58 (GMT)
commit3e30d9ed67f963af15b8d57d24a5fa377299e43a (patch)
tree236bab91fe19846f4eedba92f93c09a1b920909c /Source/cmTarget.cxx
parent574fec97fd011ea2899abdd05d97ea66f0faa063 (diff)
downloadCMake-3e30d9ed67f963af15b8d57d24a5fa377299e43a.zip
CMake-3e30d9ed67f963af15b8d57d24a5fa377299e43a.tar.gz
CMake-3e30d9ed67f963af15b8d57d24a5fa377299e43a.tar.bz2
TLL: Don't populate old link interface if CMP0022 is NEW.
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.
Diffstat (limited to 'Source/cmTarget.cxx')
-rw-r--r--Source/cmTarget.cxx8
1 files changed, 8 insertions, 0 deletions
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index f08399f..1dbf665 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -2321,6 +2321,14 @@ void cmTarget::MergeLinkLibraries( cmMakefile& mf,
{
// We call this so that the dependencies get written to the cache
this->AddLinkLibrary( mf, selfname, i->first.c_str(), i->second );
+
+ if (this->GetType() == cmTarget::STATIC_LIBRARY)
+ {
+ this->AppendProperty("INTERFACE_LINK_LIBRARIES",
+ ("$<LINK_ONLY:" +
+ this->GetDebugGeneratorExpressions(i->first.c_str(), i->second) +
+ ">").c_str());
+ }
}
this->PrevLinkedLibraries = libs;
}