mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-01 19:30:13 -06:00
VS: Simplify logic to require SDK for Windows Store
Revise logic added by commit d7e863c1c1 (VS: Do not fail on Windows 10
with VS 2015 if no SDK is available, 2016-01-21, v3.4.3~1^2) to make the
requirement decision locally and simplify signatures.
This commit is contained in:
@@ -140,7 +140,7 @@ bool cmGlobalVisualStudio14Generator::MatchesGeneratorName(
|
||||
bool cmGlobalVisualStudio14Generator::InitializeWindows(cmMakefile* mf)
|
||||
{
|
||||
if (cmHasLiteralPrefix(this->SystemVersion, "10.0")) {
|
||||
return this->SelectWindows10SDK(mf, false);
|
||||
return this->SelectWindows10SDK(mf);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
@@ -163,7 +163,7 @@ bool cmGlobalVisualStudio14Generator::InitializeWindowsStore(cmMakefile* mf)
|
||||
return false;
|
||||
}
|
||||
if (cmHasLiteralPrefix(this->SystemVersion, "10.0")) {
|
||||
return this->SelectWindows10SDK(mf, true);
|
||||
return this->SelectWindows10SDK(mf);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
@@ -173,19 +173,21 @@ bool cmGlobalVisualStudio14Generator::InitializeAndroid(cmMakefile*)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool cmGlobalVisualStudio14Generator::SelectWindows10SDK(cmMakefile* mf,
|
||||
bool required)
|
||||
bool cmGlobalVisualStudio14Generator::SelectWindows10SDK(cmMakefile* mf)
|
||||
{
|
||||
// Find the default version of the Windows 10 SDK.
|
||||
std::string const version = this->GetWindows10SDKVersion(mf);
|
||||
|
||||
if (required && version.empty()) {
|
||||
std::ostringstream e;
|
||||
e << "Could not find an appropriate version of the Windows 10 SDK"
|
||||
<< " installed on this machine";
|
||||
mf->IssueMessage(MessageType::FATAL_ERROR, e.str());
|
||||
return false;
|
||||
if (version.empty()) {
|
||||
if (this->SystemName == "WindowsStore") {
|
||||
mf->IssueMessage(
|
||||
MessageType::FATAL_ERROR,
|
||||
"Could not find an appropriate version of the Windows 10 SDK"
|
||||
" installed on this machine");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
this->SetWindowsTargetPlatformVersion(version, mf);
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@ protected:
|
||||
// version of the toolset.
|
||||
virtual std::string GetWindows10SDKMaxVersionDefault(cmMakefile* mf) const;
|
||||
|
||||
virtual bool SelectWindows10SDK(cmMakefile* mf, bool required);
|
||||
virtual bool SelectWindows10SDK(cmMakefile* mf);
|
||||
|
||||
void SetWindowsTargetPlatformVersion(std::string const& version,
|
||||
cmMakefile* mf);
|
||||
|
||||
@@ -900,7 +900,7 @@ bool cmGlobalVisualStudioVersionedGenerator::InitializeWindows(cmMakefile* mf)
|
||||
}
|
||||
// Otherwise we must choose a Win 10 SDK even if we are not targeting
|
||||
// Windows 10.
|
||||
return this->SelectWindows10SDK(mf, false);
|
||||
return this->SelectWindows10SDK(mf);
|
||||
}
|
||||
|
||||
bool cmGlobalVisualStudioVersionedGenerator::SelectWindowsStoreToolset(
|
||||
|
||||
Reference in New Issue
Block a user