diff --git a/cpp/cmake_modules/SetupCxxFlags.cmake b/cpp/cmake_modules/SetupCxxFlags.cmake index 56dc636b15401..baa168214e4dc 100644 --- a/cpp/cmake_modules/SetupCxxFlags.cmake +++ b/cpp/cmake_modules/SetupCxxFlags.cmake @@ -24,7 +24,9 @@ include(CheckCXXSourceCompiles) message(STATUS "System processor: ${CMAKE_SYSTEM_PROCESSOR}") if(NOT DEFINED ARROW_CPU_FLAG) - if(CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64|ARM64|arm64") + if(CMAKE_SYSTEM_PROCESSOR MATCHES "AMD64|X86|x86|i[3456]86") + set(ARROW_CPU_FLAG "x86") + elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64|ARM64|arm64") set(ARROW_CPU_FLAG "armv8") elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "armv7") set(ARROW_CPU_FLAG "armv7") @@ -33,9 +35,9 @@ if(NOT DEFINED ARROW_CPU_FLAG) elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "s390x") set(ARROW_CPU_FLAG "s390x") elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "riscv64") - set(ARROW_CPU_FLAG "riscv") + set(ARROW_CPU_FLAG "riscv64") else() - set(ARROW_CPU_FLAG "x86") + message(FATAL_ERROR "Unknown system processor") endif() endif()