summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2023-06-22 15:18:49 (GMT)
committerBrad King <brad.king@kitware.com>2023-06-22 15:22:08 (GMT)
commita4d532e9987747b08ba46656257863885ee5fd94 (patch)
tree089a1cbacd5b27eca2decbdcec9dee4cb8778efa /Source
parent0cd5300665fdbb68c32e318e5ca423854716c7a7 (diff)
downloadCMake-a4d532e9987747b08ba46656257863885ee5fd94.zip
CMake-a4d532e9987747b08ba46656257863885ee5fd94.tar.gz
CMake-a4d532e9987747b08ba46656257863885ee5fd94.tar.bz2
VS: Restore Windows SDK selection with platform in generator name
Refactoring in commit e259063b0a (VS: Defer Windows SDK selection until CMAKE_GENERATOR_PLATFORM is known, 2023-03-31, v3.27.0-rc1~206^2~5) accidentally dropped the Windows SDK selection code path for VS generators named with the old-style platform suffix. Fixes: #25007
Diffstat (limited to 'Source')
-rw-r--r--Source/cmGlobalVisualStudio8Generator.cxx9
-rw-r--r--Source/cmGlobalVisualStudio8Generator.h2
-rw-r--r--Source/cmGlobalVisualStudioGenerator.cxx8
-rw-r--r--Source/cmGlobalVisualStudioGenerator.h2
4 files changed, 10 insertions, 11 deletions
diff --git a/Source/cmGlobalVisualStudio8Generator.cxx b/Source/cmGlobalVisualStudio8Generator.cxx
index aefb67a..acb20d1 100644
--- a/Source/cmGlobalVisualStudio8Generator.cxx
+++ b/Source/cmGlobalVisualStudio8Generator.cxx
@@ -117,10 +117,6 @@ bool cmGlobalVisualStudio8Generator::SetGeneratorPlatform(std::string const& p,
*targetFrameworkTargetsVersion);
}
- if (!this->InitializePlatform(mf)) {
- return false;
- }
-
// The generator name does not contain the platform name, and so supports
// explicit platform specification. We handled that above, so pass an
// empty platform name to our base class implementation so it does not error.
@@ -206,11 +202,6 @@ bool cmGlobalVisualStudio8Generator::ProcessGeneratorPlatformField(
return false;
}
-bool cmGlobalVisualStudio8Generator::InitializePlatform(cmMakefile*)
-{
- return true;
-}
-
cm::optional<std::string> const&
cmGlobalVisualStudio8Generator::GetTargetFrameworkVersion() const
{
diff --git a/Source/cmGlobalVisualStudio8Generator.h b/Source/cmGlobalVisualStudio8Generator.h
index 5555e9b..cb0ea76 100644
--- a/Source/cmGlobalVisualStudio8Generator.h
+++ b/Source/cmGlobalVisualStudio8Generator.h
@@ -60,8 +60,6 @@ protected:
cmGlobalVisualStudio8Generator(cmake* cm, const std::string& name,
std::string const& platformInGeneratorName);
- virtual bool InitializePlatform(cmMakefile* mf);
-
virtual bool ProcessGeneratorPlatformField(std::string const& key,
std::string const& value);
diff --git a/Source/cmGlobalVisualStudioGenerator.cxx b/Source/cmGlobalVisualStudioGenerator.cxx
index 702199d..6b024db 100644
--- a/Source/cmGlobalVisualStudioGenerator.cxx
+++ b/Source/cmGlobalVisualStudioGenerator.cxx
@@ -75,6 +75,9 @@ void cmGlobalVisualStudioGenerator::EnableLanguage(
bool cmGlobalVisualStudioGenerator::SetGeneratorPlatform(std::string const& p,
cmMakefile* mf)
{
+ if (!this->InitializePlatform(mf)) {
+ return false;
+ }
if (this->GetPlatformName() == "x64") {
mf->AddDefinition("CMAKE_FORCE_WIN64", "TRUE");
} else if (this->GetPlatformName() == "Itanium") {
@@ -84,6 +87,11 @@ bool cmGlobalVisualStudioGenerator::SetGeneratorPlatform(std::string const& p,
return this->cmGlobalGenerator::SetGeneratorPlatform(p, mf);
}
+bool cmGlobalVisualStudioGenerator::InitializePlatform(cmMakefile*)
+{
+ return true;
+}
+
std::string const& cmGlobalVisualStudioGenerator::GetPlatformName() const
{
if (!this->GeneratorPlatform.empty()) {
diff --git a/Source/cmGlobalVisualStudioGenerator.h b/Source/cmGlobalVisualStudioGenerator.h
index 3e20ada..52db98d 100644
--- a/Source/cmGlobalVisualStudioGenerator.h
+++ b/Source/cmGlobalVisualStudioGenerator.h
@@ -164,6 +164,8 @@ protected:
cmGlobalVisualStudioGenerator(cmake* cm,
std::string const& platformInGeneratorName);
+ virtual bool InitializePlatform(cmMakefile* mf);
+
void AddExtraIDETargets() override;
// Does this VS version link targets to each other if there are