Quellcode durchsuchen

cmake: detect ARM64EC and enable SDL_LIBC by default

Anonymous Maarten vor 9 Monaten
Ursprung
Commit
ab4370c247
2 geänderte Dateien mit 5 neuen und 2 gelöschten Zeilen
  1. 2 1
      CMakeLists.txt
  2. 3 1
      cmake/CheckCPUArchitecture.cmake

+ 2 - 1
CMakeLists.txt

@@ -141,6 +141,7 @@ check_cpu_architecture(x86 SDL_CPU_X86)
 check_cpu_architecture(x64 SDL_CPU_X64)
 check_cpu_architecture(arm32 SDL_CPU_ARM32)
 check_cpu_architecture(arm64 SDL_CPU_ARM64)
+check_cpu_architecture(arm64ec SDL_CPU_ARM64EC)
 check_cpu_architecture(loongarch64 SDL_CPU_LOONGARCH64)
 
 # Check for 64 or 32 bit
@@ -239,7 +240,7 @@ if(USE_GCC OR USE_CLANG OR USE_INTELCC OR USE_QCC)
 endif()
 
 # Default option knobs
-if(UNIX OR MINGW OR MSYS OR (USE_CLANG AND NOT WINDOWS) OR VITA OR PSP OR PS2 OR N3DS)
+if(UNIX OR MINGW OR MSYS OR (USE_CLANG AND NOT WINDOWS) OR VITA OR PSP OR PS2 OR N3DS OR SDL_CPU_ARM64EC)
   set(OPT_DEF_LIBC ON)
 endif()
 if(WINDOWS OR DARWIN OR MACOSX OR IOS OR TVOS)

+ 3 - 1
cmake/CheckCPUArchitecture.cmake

@@ -27,11 +27,13 @@ function(check_cpu_architecture ARCH VARIABLE)
   if(ARCH STREQUAL "x86")
     _internal_check_cpu_architecture("defined(__i386__) || defined(__i486__) || defined(__i586__) || defined(__i686__) ||defined( __i386) || defined(_M_IX86)" x86 ${VARIABLE})
   elseif(ARCH STREQUAL "x64")
-    _internal_check_cpu_architecture("defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__x86_64) || defined(_M_X64) || defined(_M_AMD64)" x64 ${VARIABLE})
+    _internal_check_cpu_architecture("(defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__x86_64) || defined(_M_X64) || defined(_M_AMD64)) && !defined(_M_ARM64EC)" x64 ${VARIABLE})
   elseif(ARCH STREQUAL "arm32")
     _internal_check_cpu_architecture("defined(__arm__) || defined(_M_ARM)" arm32 ${VARIABLE})
   elseif(ARCH STREQUAL "arm64")
     _internal_check_cpu_architecture("defined(__aarch64__) || defined(_M_ARM64)" arm64 ${VARIABLE})
+  elseif(ARCH STREQUAL "arm64ec")
+    _internal_check_cpu_architecture("defined(_M_ARM64EC)" arm64ec ${VARIABLE})
   elseif(ARCH STREQUAL "loongarch64")
     _internal_check_cpu_architecture("defined(__loongarch64)" loongarch64 ${VARIABLE})
   else()