summaryrefslogtreecommitdiff
path: root/Source/cmGlobalVisualStudio8Generator.cxx
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2013-11-20 12:44:04 +0100
committerStephen Kelly <steveire@gmail.com>2013-11-25 16:17:50 +0100
commit0bfcb450e6cab8d9c2c079e10bf0acea62ffadbe (patch)
treeeb8e1b76aae32f91fc6f5f47e81bd709b87215ed /Source/cmGlobalVisualStudio8Generator.cxx
parent9f095b74162b972d07c695ad23964056f310ade2 (diff)
downloadcmake-0bfcb450e6cab8d9c2c079e10bf0acea62ffadbe.tar.gz
INTERFACE_LIBRARY: Avoid codepaths which set unneeded properties.
As an INTERFACE_LIBRARY has no direct link dependencies, we can short-circuit in cmGeneratorExpressionEvaluator and in cmGlobalGenerator::CheckLocalGenerators. As they do not generate any output directly, any generate- or install- related code acn also be short-circuited. Many of the local generators already do this. Because only INTERFACE related properties make sense on INTERFACE_LIBRARY targets, avoid setting other properties, for example via defaults.
Diffstat (limited to 'Source/cmGlobalVisualStudio8Generator.cxx')
-rw-r--r--Source/cmGlobalVisualStudio8Generator.cxx3
1 files changed, 2 insertions, 1 deletions
diff --git a/Source/cmGlobalVisualStudio8Generator.cxx b/Source/cmGlobalVisualStudio8Generator.cxx
index 69b0a7af72..e4ce13fb02 100644
--- a/Source/cmGlobalVisualStudio8Generator.cxx
+++ b/Source/cmGlobalVisualStudio8Generator.cxx
@@ -442,7 +442,8 @@ bool cmGlobalVisualStudio8Generator::NeedLinkLibraryDependencies(
{
if(cmTarget* depTarget = this->FindTarget(0, ui->c_str()))
{
- if(depTarget->GetProperty("EXTERNAL_MSPROJECT"))
+ if(depTarget->GetType() != cmTarget::INTERFACE_LIBRARY
+ && depTarget->GetProperty("EXTERNAL_MSPROJECT"))
{
// This utility dependency names an external .vcproj target.
// We use LinkLibraryDependencies="true" to link to it without