@@ -77,26 +77,26 @@ block()
7777 set (compileDefinitions "" )
7878
7979 # Determine files based on the architecture and platform.
80- if (CMAKE_SYSTEM_PROCESSOR MATCHES "^( x86_64|amd64)$ " )
80+ if (CMAKE_C_COMPILER_ARCHITECTURE_ID MATCHES "x86_64" )
8181 set (prefix "x86_64_sysv" )
82- elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "^(x86.*|amd.*|i.?86.*|pentium)$ " )
82+ elseif (CMAKE_C_COMPILER_ARCHITECTURE_ID MATCHES "i[3456]86 " )
8383 set (cpu "i386" )
8484 set (prefix "i386_sysv" )
85- elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "^ (aarch64.* |arm64.* )" )
85+ elseif (CMAKE_C_COMPILER_ARCHITECTURE_ID MATCHES "(aarch64|arm64)" )
8686 set (prefix "arm64_aapcs" )
87- elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "arm.* " )
87+ elseif (CMAKE_C_COMPILER_ARCHITECTURE_ID MATCHES "arm" )
8888 set (prefix "arm_aapcs" )
89- elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "ppc64.*|powerpc64.* " )
89+ elseif (CMAKE_C_COMPILER_ARCHITECTURE_ID MATCHES "( ppc64|PPC64) " )
9090 set (prefix "ppc64_sysv" )
91- elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "ppc.*|powerpc.* " )
91+ elseif (CMAKE_C_COMPILER_ARCHITECTURE_ID MATCHES "( ppc|PPC) " )
9292 set (prefix "ppc32_sysv" )
93- elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "^ riscv64.* " )
93+ elseif (CMAKE_C_COMPILER_ARCHITECTURE_ID MATCHES "( riscv64|RISCV) " )
9494 set (prefix "riscv64_sysv" )
95- elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "s390x.* " )
95+ elseif (CMAKE_C_COMPILER_ARCHITECTURE_ID MATCHES "s390x" )
9696 set (prefix "s390x_sysv" )
97- elseif (CMAKE_SYSTEM_PROCESSOR STREQUAL "mips64" )
97+ elseif (CMAKE_C_COMPILER_ARCHITECTURE_ID MATCHES "mips64" )
9898 set (prefix "mips64_n64" )
99- elseif (CMAKE_SYSTEM_PROCESSOR STREQUAL "mips" )
99+ elseif (CMAKE_C_COMPILER_ARCHITECTURE_ID MATCHES "mips" )
100100 set (prefix "mips32_o32" )
101101 endif ()
102102
@@ -111,16 +111,16 @@ block()
111111 set (asmFile "${prefix} _elf_gas.S" )
112112 endif ()
113113 elseif (CMAKE_SYSTEM_NAME STREQUAL "Windows" )
114- if (CMAKE_SYSTEM_PROCESSOR MATCHES "^ (x86_64|amd64|AMD64)$ " )
114+ if (CMAKE_C_COMPILER_ARCHITECTURE_ID MATCHES "(x86_64|x64) " )
115115 set (asmFile "x86_64_ms_pe_masm.asm" )
116- elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "^(x86|i.?86.*|pentium)$ " )
116+ elseif (CMAKE_C_COMPILER_ARCHITECTURE_ID MATCHES "(X86|i[3456]86) " )
117117 set (asmFile "i386_ms_pe_masm.asm" )
118- elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "^(arm64| ARM64)$ " )
118+ elseif (CMAKE_C_COMPILER_ARCHITECTURE_ID MATCHES "( ARM64|aarch64) " )
119119 set (asmFile "arm64_aapcs_pe_armasm.asm" )
120120 set (compileOptions /nologo -machine ARM64)
121121 endif ()
122122
123- if (asmFile AND NOT CMAKE_SYSTEM_PROCESSOR MATCHES "^(arm64| ARM64)$ " )
123+ if (asmFile AND NOT CMAKE_C_COMPILER_ARCHITECTURE_ID MATCHES "( ARM64|aarch64) " )
124124 set (compileOptions /nologo)
125125
126126 set (compileDefinitions "BOOST_CONTEXT_EXPORT=EXPORT" )
0 commit comments