diff options
author | Stephen Kelly <steveire@gmail.com> | 2013-11-20 12:44:04 +0100 |
---|---|---|
committer | Stephen Kelly <steveire@gmail.com> | 2013-11-25 16:17:50 +0100 |
commit | 0bfcb450e6cab8d9c2c079e10bf0acea62ffadbe (patch) | |
tree | eb8e1b76aae32f91fc6f5f47e81bd709b87215ed /Source/cmMakefileLibraryTargetGenerator.cxx | |
parent | 9f095b74162b972d07c695ad23964056f310ade2 (diff) | |
download | cmake-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/cmMakefileLibraryTargetGenerator.cxx')
-rw-r--r-- | Source/cmMakefileLibraryTargetGenerator.cxx | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/Source/cmMakefileLibraryTargetGenerator.cxx b/Source/cmMakefileLibraryTargetGenerator.cxx index 7b8a53150c..35818ee13b 100644 --- a/Source/cmMakefileLibraryTargetGenerator.cxx +++ b/Source/cmMakefileLibraryTargetGenerator.cxx @@ -25,9 +25,12 @@ cmMakefileLibraryTargetGenerator cmMakefileTargetGenerator(target->Target) { this->CustomCommandDriver = OnDepends; - this->Target->GetLibraryNames( - this->TargetNameOut, this->TargetNameSO, this->TargetNameReal, - this->TargetNameImport, this->TargetNamePDB, this->ConfigName); + if (this->Target->GetType() != cmTarget::INTERFACE_LIBRARY) + { + this->Target->GetLibraryNames( + this->TargetNameOut, this->TargetNameSO, this->TargetNameReal, + this->TargetNameImport, this->TargetNamePDB, this->ConfigName); + } this->OSXBundleGenerator = new cmOSXBundleGenerator(target, this->ConfigName); |