Skip to content

Commit 789a7ec

Browse files
committed
cmake: convert x86* variants to x86 and x86_64
This should reduce the number of checks for other variants like AMD64, amd64, etc. Signed-off-by: Christopher Degawa <ccom@randomderp.com>
1 parent 48a5942 commit 789a7ec

File tree

1 file changed

+10
-8
lines changed

1 file changed

+10
-8
lines changed

CMakeLists.txt

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -65,10 +65,12 @@ ELSE()
6565
SET(IS_APPLE_OS FALSE)
6666
ENDIF()
6767

68-
# -- [ Determine target processor
68+
# -- [ Determine target processor, canonicalize for x86 variants.
6969
SET(CPUINFO_TARGET_PROCESSOR "${CMAKE_SYSTEM_PROCESSOR}")
70-
IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD" AND CPUINFO_TARGET_PROCESSOR STREQUAL "amd64")
71-
SET(CPUINFO_TARGET_PROCESSOR "AMD64")
70+
IF(CPUINFO_TARGET_PROCESSOR MATCHES "^i[3-6]86$")
71+
SET(CPUINFO_TARGET_PROCESSOR "x86")
72+
ELSEIF(CPUINFO_TARGET_PROCESSOR MATCHES "^(AMD|amd)64$")
73+
SET(CPUINFO_TARGET_PROCESSOR "x86_64")
7274
ENDIF()
7375
IF(IS_APPLE_OS AND CMAKE_OSX_ARCHITECTURES MATCHES "^(x86_64|arm64.*)$")
7476
SET(CPUINFO_TARGET_PROCESSOR "${CMAKE_OSX_ARCHITECTURES}")
@@ -95,7 +97,7 @@ IF(NOT CMAKE_SYSTEM_PROCESSOR)
9597
"cpuinfo will compile, but cpuinfo_initialize() will always fail.")
9698
SET(CPUINFO_SUPPORTED_PLATFORM FALSE)
9799
ENDIF()
98-
ELSEIF(NOT CPUINFO_TARGET_PROCESSOR MATCHES "^(i[3-6]86|AMD64|x86(_64)?|armv[5-8].*|aarch64|arm64.*|ARM64.*|riscv(32|64))$")
100+
ELSEIF(NOT CPUINFO_TARGET_PROCESSOR MATCHES "^(x86(_64)?|armv[5-8].*|aarch64|arm64.*|ARM64.*|riscv(32|64))$")
99101
MESSAGE(WARNING
100102
"Target processor architecture \"${CPUINFO_TARGET_PROCESSOR}\" is not supported in cpuinfo. "
101103
"cpuinfo will compile, but cpuinfo_initialize() will always fail.")
@@ -161,7 +163,7 @@ ENDIF()
161163
SET(CPUINFO_SRCS src/api.c src/cache.c src/maininit.c src/log.c)
162164

163165
IF(CPUINFO_SUPPORTED_PLATFORM)
164-
IF(NOT CMAKE_SYSTEM_NAME STREQUAL "Emscripten" AND (CPUINFO_TARGET_PROCESSOR MATCHES "^(i[3-6]86|AMD64|x86(_64)?)$" OR IOS_ARCH MATCHES "^(i386|x86_64)$"))
166+
IF(NOT CMAKE_SYSTEM_NAME STREQUAL "Emscripten" AND (CPUINFO_TARGET_PROCESSOR MATCHES "^x86(_64)?$" OR IOS_ARCH MATCHES "^(i386|x86_64)$"))
165167
LIST(APPEND CPUINFO_SRCS
166168
src/x86/x86init.c
167169
src/x86/info.c
@@ -374,7 +376,7 @@ ENDIF()
374376
# ---[ cpuinfo mock library and mock tests
375377
IF(CPUINFO_SUPPORTED_PLATFORM AND CPUINFO_BUILD_MOCK_TESTS)
376378
SET(CPUINFO_MOCK_SRCS "${CPUINFO_SRCS}")
377-
IF(CPUINFO_TARGET_PROCESSOR MATCHES "^(i[3-6]86|AMD64|x86(_64)?)$")
379+
IF(CPUINFO_TARGET_PROCESSOR MATCHES "^x86(_64)?$")
378380
LIST(APPEND CPUINFO_MOCK_SRCS src/x86/mockcpuid.c)
379381
ENDIF()
380382
IF(CMAKE_SYSTEM_NAME STREQUAL "Linux" OR CMAKE_SYSTEM_NAME STREQUAL "Android")
@@ -823,7 +825,7 @@ IF(CPUINFO_SUPPORTED_PLATFORM AND CPUINFO_BUILD_UNIT_TESTS)
823825
ADD_TEST(NAME get-current-test COMMAND get-current-test)
824826
ENDIF()
825827

826-
IF(CPUINFO_TARGET_PROCESSOR MATCHES "^(i[3-6]86|AMD64|x86(_64)?)$")
828+
IF(CPUINFO_TARGET_PROCESSOR MATCHES "^x86(_64)?$")
827829
ADD_EXECUTABLE(brand-string-test test/name/brand-string.cc)
828830
CPUINFO_TARGET_ENABLE_CXX11(brand-string-test)
829831
CPUINFO_TARGET_RUNTIME_LIBRARY(brand-string-test)
@@ -890,7 +892,7 @@ IF(CPUINFO_SUPPORTED_PLATFORM AND CPUINFO_BUILD_TOOLS)
890892
CPUINFO_TARGET_RUNTIME_LIBRARY(cpuinfo-dump)
891893
ENDIF()
892894

893-
IF(CPUINFO_TARGET_PROCESSOR MATCHES "^(i[3-6]86|AMD64|x86(_64)?)$")
895+
IF(CPUINFO_TARGET_PROCESSOR MATCHES "^x86(_64)?$")
894896
ADD_EXECUTABLE(cpuid-dump tools/cpuid-dump.c)
895897
CPUINFO_TARGET_ENABLE_C99(cpuid-dump)
896898
CPUINFO_TARGET_RUNTIME_LIBRARY(cpuid-dump)

0 commit comments

Comments
 (0)