| 126 | }; |
| 127 | |
| 128 | cmGeneratorTarget::LinkClosure const* cmGeneratorTarget::GetLinkClosure( |
| 129 | std::string const& config) const |
| 130 | { |
| 131 | // There is no link implementation for targets that cannot compile sources. |
| 132 | if (!this->CanCompileSources()) { |
| 133 | static LinkClosure const empty = { {}, {} }; |
| 134 | return ∅ |
| 135 | } |
| 136 | |
| 137 | std::string key(cmSystemTools::UpperCase(config)); |
| 138 | auto i = this->LinkClosureMap.find(key); |
| 139 | if (i == this->LinkClosureMap.end()) { |
| 140 | LinkClosure lc; |
| 141 | this->ComputeLinkClosure(config, lc); |
| 142 | LinkClosureMapType::value_type entry(key, lc); |
| 143 | i = this->LinkClosureMap.insert(entry).first; |
| 144 | } |
| 145 | return &i->second; |
| 146 | } |
| 147 | |
| 148 | class cmTargetSelectLinker |
| 149 | { |
no test coverage detected