From 4c6c7f4d45e2e2ce6fee1ed91de577f984f68f1f Mon Sep 17 00:00:00 2001 From: Brad King Date: Fri, 30 May 2025 17:50:56 -0400 Subject: [PATCH] MSVC: Move link -subsystem flag handling near and -machine flag handling --- Modules/Platform/Windows-MSVC.cmake | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/Modules/Platform/Windows-MSVC.cmake b/Modules/Platform/Windows-MSVC.cmake index b31de86479..48133f7fd6 100644 --- a/Modules/Platform/Windows-MSVC.cmake +++ b/Modules/Platform/Windows-MSVC.cmake @@ -26,14 +26,6 @@ else() set(CMAKE_CL_NOLOGO "/nologo") endif() -if(CMAKE_SYSTEM_NAME STREQUAL "WindowsCE") - set(_PLATFORM_LINK_FLAGS " /subsystem:windowsce") -elseif(CMAKE_SYSTEM_NAME STREQUAL "WindowsKernelModeDriver") - set(_PLATFORM_LINK_FLAGS " -subsystem:native -kernel -MANIFEST:NO") -else() - set(_PLATFORM_LINK_FLAGS "") -endif() - set(CMAKE_SUPPORT_WINDOWS_EXPORT_ALL_SYMBOLS 1) if(NOT CMAKE_NO_BUILD_TYPE AND CMAKE_GENERATOR MATCHES "Visual Studio") set (CMAKE_NO_BUILD_TYPE 1) @@ -340,6 +332,13 @@ foreach(t EXE SHARED MODULE) string(APPEND CMAKE_${t}_LINKER_FLAGS_RELEASE_INIT " ${_Wl}/INCREMENTAL:NO") endforeach() +set(_PLATFORM_LINK_FLAGS "") +if(CMAKE_SYSTEM_NAME STREQUAL "WindowsCE") + string(APPEND _PLATFORM_LINK_FLAGS " /subsystem:windowsce") +elseif(CMAKE_SYSTEM_NAME STREQUAL "WindowsKernelModeDriver") + string(APPEND _PLATFORM_LINK_FLAGS " -subsystem:native -kernel -MANIFEST:NO") +endif() + if((_MSVC_C_ARCHITECTURE_FAMILY STREQUAL "ARM64EC") OR (_MSVC_CXX_ARCHITECTURE_FAMILY STREQUAL "ARM64EC")) string(APPEND CMAKE_STATIC_LINKER_FLAGS_INIT " ${_Wl}/machine:ARM64X") else()