diff --git a/src/common/CMakeLists.txt b/src/common/CMakeLists.txt index ddf715f2f..d5500a432 100644 --- a/src/common/CMakeLists.txt +++ b/src/common/CMakeLists.txt @@ -176,6 +176,9 @@ endif() if (CITRA_USE_PRECOMPILED_HEADERS) target_precompile_headers(citra_common PRIVATE precompiled_headers.h) endif() -if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux" AND CMAKE_CXX_COMPILER_ID STREQUAL GNU) - target_link_libraries(citra_common PRIVATE backtrace dl) + +find_library(BACKTRACE_LIBRARY backtrace) +if (BACKTRACE_LIBRARY AND ${CMAKE_SYSTEM_NAME} STREQUAL "Linux" AND CMAKE_CXX_COMPILER_ID STREQUAL GNU) + target_link_libraries(citra_common PRIVATE ${BACKTRACE_LIBRARY} dl) + target_compile_definitions(citra_common PRIVATE CITRA_LINUX_GCC_BACKTRACE) endif() diff --git a/src/common/logging/backend.cpp b/src/common/logging/backend.cpp index 5c80cdff0..f39c79dea 100644 --- a/src/common/logging/backend.cpp +++ b/src/common/logging/backend.cpp @@ -13,12 +13,11 @@ #define _SH_DENYWR 0 #endif -#if defined(__linux__) && defined(__GNUG__) && !defined(__clang__) +#ifdef CITRA_LINUX_GCC_BACKTRACE #define BOOST_STACKTRACE_USE_BACKTRACE #include #undef BOOST_STACKTRACE_USE_BACKTRACE #include -#define CITRA_LINUX_GCC_BACKTRACE #endif #include "common/bounded_threadsafe_queue.h"