diff options
-rw-r--r-- | Source/cmGeneratorTarget.cxx | 11 | ||||
-rw-r--r-- | Source/cmGlobalGenerator.cxx | 3 | ||||
-rw-r--r-- | Source/cmTarget.cxx | 1 |
3 files changed, 10 insertions, 5 deletions
diff --git a/Source/cmGeneratorTarget.cxx b/Source/cmGeneratorTarget.cxx index 2573c85..175bb0e 100644 --- a/Source/cmGeneratorTarget.cxx +++ b/Source/cmGeneratorTarget.cxx @@ -498,11 +498,14 @@ cmTargetTraceDependencies // Queue all the source files already specified for the target. std::vector<cmSourceFile*> sources; - this->Target->GetSourceFiles(sources); - for(std::vector<cmSourceFile*>::const_iterator si = sources.begin(); - si != sources.end(); ++si) + if (this->Target->GetType() != cmTarget::INTERFACE_LIBRARY) { - this->QueueSource(*si); + this->Target->GetSourceFiles(sources); + for(std::vector<cmSourceFile*>::const_iterator si = sources.begin(); + si != sources.end(); ++si) + { + this->QueueSource(*si); + } } // Queue pre-build, pre-link, and post-build rule dependencies. diff --git a/Source/cmGlobalGenerator.cxx b/Source/cmGlobalGenerator.cxx index a61cab1..0c44681 100644 --- a/Source/cmGlobalGenerator.cxx +++ b/Source/cmGlobalGenerator.cxx @@ -1468,7 +1468,8 @@ void cmGlobalGenerator::ComputeGeneratorTargetObjects() for(cmGeneratorTargetsType::iterator ti = targets.begin(); ti != targets.end(); ++ti) { - if (ti->second->Target->IsImported()) + if (ti->second->Target->IsImported() + || ti->second->Target->GetType() == cmTarget::INTERFACE_LIBRARY) { continue; } diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index 3e96b69..db34bd8 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -551,6 +551,7 @@ bool cmTarget::FindSourceFiles() //---------------------------------------------------------------------------- void cmTarget::GetSourceFiles(std::vector<cmSourceFile*> &files) const { + assert(this->GetType() != INTERFACE_LIBRARY); files = this->SourceFiles; } |