1
0
mirror of https://github.com/Kitware/CMake.git synced 2025-10-18 08:51:52 +08:00

cmGlobalVisualStudioVersionedGenerator: Allow repeating SetGeneratorInstance

This commit is contained in:
Brad King
2021-10-20 11:58:39 -04:00
parent 6511654164
commit 8917b8512f
2 changed files with 9 additions and 0 deletions

View File

@@ -436,6 +436,9 @@ bool cmGlobalVisualStudioVersionedGenerator::MatchesGeneratorName(
bool cmGlobalVisualStudioVersionedGenerator::SetGeneratorInstance(
std::string const& i, cmMakefile* mf)
{
if (this->GeneratorInstance && i == *(this->GeneratorInstance)) {
return true;
}
if (!i.empty()) {
if (!this->vsSetupAPIHelper.SetVSInstance(i)) {
std::ostringstream e;
@@ -472,6 +475,9 @@ bool cmGlobalVisualStudioVersionedGenerator::SetGeneratorInstance(
cmStateEnums::INTERNAL);
}
// The selected instance may have a different MSBuild than previously found.
this->MSBuildCommandInitialized = false;
return true;
}

View File

@@ -8,6 +8,8 @@
#include <memory>
#include <string>
#include <cm/optional>
#include "cmGlobalVisualStudio14Generator.h"
#include "cmVSSetupHelper.h"
@@ -72,4 +74,5 @@ private:
class Factory17;
friend class Factory17;
mutable cmVSSetupAPIHelper vsSetupAPIHelper;
cm::optional<std::string> GeneratorInstance;
};