mirror of
https://github.com/Kitware/CMake.git
synced 2025-12-30 18:29:37 -06:00
VS: Import default C++ props file before toolset-specific props file
This avoids overwriting toolset-specific settings like `VCRedistDir` with default settings. Fixes: #22420
This commit is contained in:
@@ -401,6 +401,9 @@ Id flags: ${testflags} ${CMAKE_${lang}_COMPILER_ID_FLAGS_ALWAYS}
|
||||
endif()
|
||||
endif()
|
||||
set(id_toolset_version_props "<Import Project=\"${CMAKE_GENERATOR_INSTANCE}\\VC\\Auxiliary\\Build${id_sep}${CMAKE_VS_PLATFORM_TOOLSET_VERSION}\\Microsoft.VCToolsVersion.${CMAKE_VS_PLATFORM_TOOLSET_VERSION}.props\" />")
|
||||
if(lang STREQUAL CXX OR lang STREQUAL C)
|
||||
set(id_toolset_version_props "<Import Project=\"$(VCTargetsPath)\\Microsoft.Cpp.Default.props\" />${id_toolset_version_props}")
|
||||
endif()
|
||||
unset(id_sep)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@@ -693,12 +693,12 @@ void cmVisualStudio10TargetGenerator::WriteClassicMsBuildProjectFile(
|
||||
|
||||
switch (this->ProjectType) {
|
||||
case VsProjectType::vcxproj: {
|
||||
Elem(e0, "Import").Attribute("Project", VS10_CXX_DEFAULT_PROPS);
|
||||
std::string const& props =
|
||||
this->GlobalGenerator->GetPlatformToolsetVersionProps();
|
||||
if (!props.empty()) {
|
||||
Elem(e0, "Import").Attribute("Project", props);
|
||||
}
|
||||
Elem(e0, "Import").Attribute("Project", VS10_CXX_DEFAULT_PROPS);
|
||||
} break;
|
||||
case VsProjectType::csproj:
|
||||
Elem(e0, "Import")
|
||||
|
||||
Reference in New Issue
Block a user