Explorar el Código

fix ARM64 linkage with Visual Studio >= 17.14 when SDL_LIBC is disabled

Reference issue:  https://github.com/libsdl-org/SDL/issues/13254

(cherry picked from commit 2fb6abb9ad27cd0948a47fd53ced0ab138d7d12a)
Ozkan Sezer hace 8 meses
padre
commit
fb0e03f262
Se han modificado 1 ficheros con 5 adiciones y 0 borrados
  1. 5 0
      CMakeLists.txt

+ 5 - 0
CMakeLists.txt

@@ -654,6 +654,11 @@ if(MSVC)
     # Mark SDL3.dll as compatible with Control-flow Enforcement Technology (CET)
     # Mark SDL3.dll as compatible with Control-flow Enforcement Technology (CET)
     sdl_shared_link_options("-CETCOMPAT")
     sdl_shared_link_options("-CETCOMPAT")
   endif()
   endif()
+
+  # for VS >= 17.14 targeting ARM64: inline the Interlocked funcs
+  if(MSVC_VERSION GREATER 1943 AND SDL_CPU_ARM64 AND NOT SDL_LIBC)
+    sdl_compile_options(PRIVATE "/forceInterlockedFunctions-")
+  endif()
 endif()
 endif()
 
 
 if(CMAKE_C_COMPILER_ID STREQUAL "MSVC")
 if(CMAKE_C_COMPILER_ID STREQUAL "MSVC")