@@ -82,13 +82,8 @@ function(ggml_add_cpu_backend_variant_impl tag_name)
82
82
target_link_libraries (${GGML_CPU_NAME} PUBLIC memkind )
83
83
endif ()
84
84
85
- if (CMAKE_OSX_ARCHITECTURES STREQUAL "arm64" OR
86
- CMAKE_GENERATOR_PLATFORM_LWR STREQUAL "arm64" OR
87
- (NOT CMAKE_OSX_ARCHITECTURES AND NOT CMAKE_GENERATOR_PLATFORM_LWR AND
88
- CMAKE_SYSTEM_PROCESSOR MATCHES "^(aarch64|arm.*|ARM64)$" ))
89
-
85
+ if (GGML_SYSTEM_ARCH STREQUAL "ARM" )
90
86
message (STATUS "ARM detected" )
91
-
92
87
if (MSVC AND NOT CMAKE_C_COMPILER_ID STREQUAL "Clang" )
93
88
message (FATAL_ERROR "MSVC is not supported for ARM, use clang" )
94
89
else ()
@@ -170,12 +165,8 @@ function(ggml_add_cpu_backend_variant_impl tag_name)
170
165
endforeach ()
171
166
endif ()
172
167
endif ()
173
- elseif (CMAKE_OSX_ARCHITECTURES STREQUAL "x86_64" OR CMAKE_GENERATOR_PLATFORM_LWR MATCHES "^(x86_64|i686|amd64|x64|win32)$" OR
174
- (NOT CMAKE_OSX_ARCHITECTURES AND NOT CMAKE_GENERATOR_PLATFORM_LWR AND
175
- CMAKE_SYSTEM_PROCESSOR MATCHES "^(x86_64|i686|AMD64|amd64)$" ))
176
-
168
+ elseif (GGML_SYSTEM_ARCH STREQUAL "x86" )
177
169
message (STATUS "x86 detected" )
178
-
179
170
if (MSVC )
180
171
# instruction set detection for MSVC only
181
172
if (GGML_NATIVE )
@@ -318,7 +309,7 @@ function(ggml_add_cpu_backend_variant_impl tag_name)
318
309
set_target_properties (${GGML_CPU_FEATS_NAME} PROPERTIES POSITION_INDEPENDENT_CODE ON )
319
310
target_link_libraries (${GGML_CPU_NAME} PRIVATE ${GGML_CPU_FEATS_NAME} )
320
311
endif ()
321
- elseif (" ${CMAKE_SYSTEM_PROCESSOR} " STREQUAL "ppc64le " OR " ${CMAKE_SYSTEM_PROCESSOR} " STREQUAL "powerpc " )
312
+ elseif (GGML_SYSTEM_ARCH STREQUAL "PowerPC " )
322
313
message (STATUS "PowerPC detected" )
323
314
if (GGML_NATIVE )
324
315
if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "ppc64" )
@@ -344,18 +335,17 @@ function(ggml_add_cpu_backend_variant_impl tag_name)
344
335
list (APPEND ARCH_FLAGS -mcpu=${GGML_CPU_POWERPC_CPUTYPE} )
345
336
endif ()
346
337
endif ()
347
- elseif (${CMAKE_SYSTEM_PROCESSOR} MATCHES "loongarch64" )
338
+ elseif (GGML_SYSTEM_ARCH STREQUAL "loongarch64" )
348
339
message (STATUS "loongarch64 detected" )
349
-
350
340
list (APPEND ARCH_FLAGS -march=loongarch64 )
351
341
if (GGML_LASX )
352
342
list (APPEND ARCH_FLAGS -mlasx )
353
343
endif ()
354
344
if (GGML_LSX )
355
345
list (APPEND ARCH_FLAGS -mlsx )
356
346
endif ()
357
- elseif (${CMAKE_SYSTEM_PROCESSOR} MATCHES "riscv64" )
358
- message (STATUS "RISC-V detected" )
347
+ elseif (GGML_SYSTEM_ARCH STREQUAL "riscv64" )
348
+ message (STATUS "riscv64 detected" )
359
349
if (GGML_RVV )
360
350
if (GGML_XTHEADVECTOR )
361
351
list (APPEND ARCH_FLAGS -march=rv64gc_xtheadvector -mabi=lp64d )
@@ -365,7 +355,7 @@ function(ggml_add_cpu_backend_variant_impl tag_name)
365
355
list (APPEND ARCH_FLAGS -march=rv64gcv -mabi=lp64d )
366
356
endif ()
367
357
endif ()
368
- elseif (${CMAKE_SYSTEM_PROCESSOR} MATCHES "s390x" )
358
+ elseif (GGML_SYSTEM_ARCH STREQUAL "s390x" )
369
359
message (STATUS "s390x detected" )
370
360
file (READ "/proc/cpuinfo" CPUINFO_CONTENTS )
371
361
string (REGEX REPLACE "machine[ \t\r\n ]*=[ \t\r\n ]*([0-9]+)" "\\ 1" S390X_M ${CPUINFO_CONTENTS} )
0 commit comments