Browse Source

MSVC: update arm64ec default flags and lib

Update the support added by commit 4ea3a88625 (MSVC: Add support for
targeting ARM64EC, 2020-12-30, v3.20.0-rc1~121^2).

Add `softintrin.lib` to `CMAKE_C_STANDARD_LIBRARIES_INIT`.

Remove `/D_ARM64EC_WORKAROUND` from the flags as it was only ever needed
in preview versions of VS.

Issue: #21724
moyo1997 3 years ago
parent
commit
26f52508f2
1 changed files with 5 additions and 1 deletions
  1. 5 1
      Modules/Platform/Windows-MSVC.cmake

+ 5 - 1
Modules/Platform/Windows-MSVC.cmake

@@ -226,7 +226,7 @@ elseif(WINDOWS_PHONE OR WINDOWS_STORE)
 else()
   set(_PLATFORM_DEFINES "/DWIN32")
   if((_MSVC_C_ARCHITECTURE_FAMILY STREQUAL "ARM64EC") OR (_MSVC_CXX_ARCHITECTURE_FAMILY STREQUAL "ARM64EC"))
-    set(_PLATFORM_DEFINES "${_PLATFORM_DEFINES} /D_AMD64_ /DAMD64 /D_ARM64EC_ /DARM64EC /D_ARM64EC_WORKAROUND_")
+    set(_PLATFORM_DEFINES "${_PLATFORM_DEFINES} /D_AMD64_ /DAMD64 /D_ARM64EC_ /DARM64EC")
   endif()
   if(_MSVC_C_ARCHITECTURE_FAMILY STREQUAL "ARM" OR _MSVC_CXX_ARCHITECTURE_FAMILY STREQUAL "ARM")
     set(CMAKE_C_STANDARD_LIBRARIES_INIT "kernel32.lib user32.lib")
@@ -246,6 +246,10 @@ else()
     set(CMAKE_C_STANDARD_LIBRARIES_INIT "kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib")
   endif()
 
+  if((_MSVC_C_ARCHITECTURE_FAMILY STREQUAL "ARM64EC") OR (_MSVC_CXX_ARCHITECTURE_FAMILY STREQUAL "ARM64EC"))
+    string(APPEND CMAKE_C_STANDARD_LIBRARIES_INIT " softintrin.lib")
+  endif()
+
   if(MSVC_VERSION LESS 1310)
     set(_FLAGS_C   " /Zm1000${_FLAGS_C}")
     set(_FLAGS_CXX " /Zm1000${_FLAGS_CXX}")