From cd52a225d298dc1a4924b82ebac0ac74fccf3356 Mon Sep 17 00:00:00 2001 From: Tobias Hunger Date: Thu, 21 Jul 2016 13:24:11 +0200 Subject: Report more information about extra generators in generator factories --- Source/cmake.cxx | 7 +++++++ Source/cmake.h | 2 ++ 2 files changed, 9 insertions(+) diff --git a/Source/cmake.cxx b/Source/cmake.cxx index fb77043..b11f4f6 100644 --- a/Source/cmake.cxx +++ b/Source/cmake.cxx @@ -824,6 +824,7 @@ void cmake::GetRegisteredGenerators(std::vector& generators) info.supportsToolset = (*i)->SupportsToolset(); info.supportsPlatform = (*i)->SupportsPlatform(); info.name = names[j]; + info.baseName = names[j]; info.isAlias = false; generators.push_back(info); } @@ -840,6 +841,8 @@ void cmake::GetRegisteredGenerators(std::vector& generators) GeneratorInfo info; info.name = cmExternalMakefileProjectGenerator::CreateFullGeneratorName( (*i)->GetName(), *gen); + info.baseName = *gen; + info.extraName = (*i)->GetName(); info.supportsPlatform = false; info.supportsToolset = false; info.isAlias = false; @@ -849,6 +852,10 @@ void cmake::GetRegisteredGenerators(std::vector& generators) a != (*i)->Aliases.end(); ++a) { GeneratorInfo info; info.name = *a; + if (!genList.empty()) { + info.baseName = genList.at(0); + } + info.extraName = (*i)->GetName(); info.supportsPlatform = false; info.supportsToolset = false; info.isAlias = true; diff --git a/Source/cmake.h b/Source/cmake.h index 0fd2d31..304a15d 100644 --- a/Source/cmake.h +++ b/Source/cmake.h @@ -103,6 +103,8 @@ public: struct GeneratorInfo { std::string name; + std::string baseName; + std::string extraName; bool supportsToolset; bool supportsPlatform; bool isAlias; -- cgit v0.12