mirror of
https://github.com/Kitware/CMake.git
synced 2025-10-17 07:11:52 +08:00
VS: Tell VS 2019 to use Windows SDK 8.1 explicitly when needed
VS 2019 does not default to the 8.1 SDK as VS 2017 and VS 2015 did. When `CMAKE_SYSTEM_VERSION` is 8.1 or lower, select the 8.1 SDK explicitly. Fixes: #18927
This commit is contained in:
@@ -401,6 +401,12 @@ bool cmGlobalVisualStudioVersionedGenerator::InitializeWindows(cmMakefile* mf)
|
||||
// If the Win 8.1 SDK is installed then we can select a SDK matching
|
||||
// the target Windows version.
|
||||
if (this->IsWin81SDKInstalled()) {
|
||||
// VS 2019 does not default to 8.1 so specify it explicitly when needed.
|
||||
if (this->Version >= cmGlobalVisualStudioGenerator::VS16 &&
|
||||
!cmSystemTools::VersionCompareGreater(this->SystemVersion, "8.1")) {
|
||||
this->SetWindowsTargetPlatformVersion("8.1", mf);
|
||||
return true;
|
||||
}
|
||||
return cmGlobalVisualStudio14Generator::InitializeWindows(mf);
|
||||
}
|
||||
// Otherwise we must choose a Win 10 SDK even if we are not targeting
|
||||
|
Reference in New Issue
Block a user