diff options
author | David Cole <david.cole@kitware.com> | 2012-02-01 19:49:10 (GMT) |
---|---|---|
committer | CMake Topic Stage <kwrobot@kitware.com> | 2012-02-01 19:49:10 (GMT) |
commit | 3e0eeb9fc832cde370ea70b1b3c8e7ebb42c860a (patch) | |
tree | e2577e3854711cdb0b5c29619462b01df6b9fb79 /Source/cmGlobalGenerator.cxx | |
parent | 94af99d38813236bc381d2a8df2901fab09ea595 (diff) | |
parent | f9c1c6225c4366918465b86e4c6976ecc266245f (diff) | |
download | CMake-3e0eeb9fc832cde370ea70b1b3c8e7ebb42c860a.zip CMake-3e0eeb9fc832cde370ea70b1b3c8e7ebb42c860a.tar.gz CMake-3e0eeb9fc832cde370ea70b1b3c8e7ebb42c860a.tar.bz2 |
Merge topic 'imported-target-visibility'
f9c1c62 Add test covering imported target scope rules
ca39c5c Optionally allow IMPORTED targets to be globally visible
Diffstat (limited to 'Source/cmGlobalGenerator.cxx')
-rw-r--r-- | Source/cmGlobalGenerator.cxx | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/Source/cmGlobalGenerator.cxx b/Source/cmGlobalGenerator.cxx index 124519a..8dce053 100644 --- a/Source/cmGlobalGenerator.cxx +++ b/Source/cmGlobalGenerator.cxx @@ -1666,6 +1666,11 @@ cmGlobalGenerator::FindTarget(const char* project, const char* name) { return i->second; } + i = this->ImportedTargets.find(name); + if ( i != this->ImportedTargets.end() ) + { + return i->second; + } } return 0; } @@ -2046,10 +2051,16 @@ cmGlobalGenerator::GetTargetDirectDepends(cmTarget & target) return this->TargetDependencies[&target]; } -void cmGlobalGenerator::AddTarget(cmTargets::value_type &v) +void cmGlobalGenerator::AddTarget(cmTarget* t) { - assert(!v.second.IsImported()); - this->TotalTargets[v.first] = &v.second; + if(t->IsImported()) + { + this->ImportedTargets[t->GetName()] = t; + } + else + { + this->TotalTargets[t->GetName()] = t; + } } void cmGlobalGenerator::SetExternalMakefileProjectGenerator( |