MCPcopy Create free account
hub / github.com/Kitware/CMake / WriteSubProjects

Method WriteSubProjects

Source/cmGlobalGhsMultiGenerator.cxx:322–347  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

320}
321
322void cmGlobalGhsMultiGenerator::WriteSubProjects(std::ostream& fout,
323 bool filterPredefined)
324{
325 std::set<std::string> predefinedTargets;
326 predefinedTargets.insert(this->GetInstallTargetName());
327 predefinedTargets.insert(this->GetAllTargetName());
328 predefinedTargets.insert(std::string(CHECK_BUILD_SYSTEM_TARGET));
329
330 // All known targets
331 for (cmGeneratorTarget const* target : this->ProjectTargets) {
332 if (target->GetType() == cmStateEnums::INTERFACE_LIBRARY ||
333 target->GetType() == cmStateEnums::MODULE_LIBRARY ||
334 target->GetType() == cmStateEnums::SHARED_LIBRARY ||
335 (target->GetType() == cmStateEnums::GLOBAL_TARGET &&
336 target->GetName() != this->GetInstallTargetName())) {
337 continue;
338 }
339 /* Check if the current target is a predefined CMake target */
340 bool predefinedTarget =
341 predefinedTargets.find(target->GetName()) != predefinedTargets.end();
342 if ((filterPredefined && predefinedTarget) ||
343 (!filterPredefined && !predefinedTarget)) {
344 fout << target->GetName() + ".tgt" + FILE_EXTENSION << " [Project]\n";
345 }
346 }
347}
348
349void cmGlobalGhsMultiGenerator::WriteProjectLine(
350 std::ostream& fout, cmGeneratorTarget const* target,

Callers 1

OutputTopLevelProjectMethod · 0.95

Calls 7

insertMethod · 0.45
GetInstallTargetNameMethod · 0.45
GetAllTargetNameMethod · 0.45
GetTypeMethod · 0.45
GetNameMethod · 0.45
findMethod · 0.45
endMethod · 0.45

Tested by

no test coverage detected