From 75acdf1b8b6cc6c308914a6e57f80ed2e260b415 Mon Sep 17 00:00:00 2001 From: FlUxIuS Date: Wed, 4 Mar 2026 11:43:43 +0100 Subject: [PATCH] replace the x86_64-only arch lib lookup with a multi-arch one --- CMakeLists.txt | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 51a68dd8b..c742ff7a0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -60,7 +60,11 @@ if(ENABLE_LIBUNWIND AND UNIX AND NOT ANDROID) if(LIBUNWIND_LIB) set(LIBUNWIND_LIBRARIES ${LIBUNWIND_LIB}) if(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64|amd64|AMD64") + if(CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64|arm64") + find_library(LIBUNWIND_ARCH_LIB unwind-aarch64) + else() find_library(LIBUNWIND_ARCH_LIB unwind-x86_64) + endif() if(LIBUNWIND_ARCH_LIB) list(APPEND LIBUNWIND_LIBRARIES ${LIBUNWIND_ARCH_LIB}) endif() @@ -75,8 +79,12 @@ if(ENABLE_LIBUNWIND AND UNIX AND NOT ANDROID) endif() if(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64|amd64|AMD64") list(JOIN LIBUNWIND_LIBRARIES ";" _libunwind_libs_joined) - if(NOT _libunwind_libs_joined MATCHES "unwind-x86_64") + if(NOT _libunwind_libs_joined MATCHES "unwind-x86_64" AND NOT _libunwind_libs_joined MATCHES "unwind-aarch64") + if(CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64|arm64") + find_library(LIBUNWIND_ARCH_LIB unwind-aarch64) + else() find_library(LIBUNWIND_ARCH_LIB unwind-x86_64) + endif() if(LIBUNWIND_ARCH_LIB) list(APPEND LIBUNWIND_LIBRARIES ${LIBUNWIND_ARCH_LIB}) else()