1
0
mirror of synced 2024-09-24 03:28:24 +02:00

build: Added option to disable stack traces

This commit is contained in:
WerWolv 2023-02-17 17:52:10 +01:00
parent 9e3fe9beb1
commit 09b7794d71
2 changed files with 22 additions and 19 deletions

View File

@ -9,6 +9,7 @@ option(IMHEX_IGNORE_BAD_CLONE "Disable the bad clone prevention checks" OFF)
option(IMHEX_PATTERNS_PULL_MASTER "Download latest files from master branch of the ImHex-Patterns repo" OFF) option(IMHEX_PATTERNS_PULL_MASTER "Download latest files from master branch of the ImHex-Patterns repo" OFF)
option(IMHEX_IGNORE_BAD_COMPILER "Allow compiling with an unsupported compiler" OFF) option(IMHEX_IGNORE_BAD_COMPILER "Allow compiling with an unsupported compiler" OFF)
option(IMHEX_USE_GTK_FILE_PICKER "Use GTK file picker instead of xdg-desktop-portals" OFF) option(IMHEX_USE_GTK_FILE_PICKER "Use GTK file picker instead of xdg-desktop-portals" OFF)
option(IMHEX_DISABLE_STACKTRACE "Disables support for printing stack traces" OFF)
# Basic compiler and cmake configurations # Basic compiler and cmake configurations
set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD 23)

View File

@ -515,25 +515,27 @@ macro(addBundledLibraries)
set(MAGIC_INCLUDE_DIRS ${MAGIC_INCLUDEDIR}) set(MAGIC_INCLUDE_DIRS ${MAGIC_INCLUDEDIR})
endif() endif()
if (WIN32) if (NOT IMHEX_DISABLE_STACKTRACE)
message(STATUS "StackWalk enabled!") if (WIN32)
set(LIBBACKTRACE_LIBRARIES DbgHelp.lib) message(STATUS "StackWalk enabled!")
else () set(LIBBACKTRACE_LIBRARIES DbgHelp.lib)
find_package(Backtrace) else ()
if (${Backtrace_FOUND}) find_package(Backtrace)
message(STATUS "Backtrace enabled! Header: ${Backtrace_HEADER}") if (${Backtrace_FOUND})
message(STATUS "Backtrace enabled! Header: ${Backtrace_HEADER}")
if (Backtrace_HEADER STREQUAL "execinfo.h") if (Backtrace_HEADER STREQUAL "execinfo.h")
set(LIBBACKTRACE_LIBRARIES) set(LIBBACKTRACE_LIBRARIES)
set(LIBBACKTRACE_INCLUDE_DIRS ${Backtrace_INCLUDE_DIR}) set(LIBBACKTRACE_INCLUDE_DIRS ${Backtrace_INCLUDE_DIR})
add_compile_definitions(BACKTRACE_HEADER=\"${Backtrace_HEADER}\") add_compile_definitions(BACKTRACE_HEADER=\"${Backtrace_HEADER}\")
add_compile_definitions(HEX_HAS_EXECINFO) add_compile_definitions(HEX_HAS_EXECINFO)
elseif (Backtrace_HEADER STREQUAL "backtrace.h") elseif (Backtrace_HEADER STREQUAL "backtrace.h")
set(LIBBACKTRACE_LIBRARIES backtrace) set(LIBBACKTRACE_LIBRARIES backtrace)
set(LIBBACKTRACE_INCLUDE_DIRS ${Backtrace_INCLUDE_DIR}) set(LIBBACKTRACE_INCLUDE_DIRS ${Backtrace_INCLUDE_DIR})
add_compile_definitions(BACKTRACE_HEADER=\"${Backtrace_HEADER}\") add_compile_definitions(BACKTRACE_HEADER=\"${Backtrace_HEADER}\")
add_compile_definitions(HEX_HAS_BACKTRACE) add_compile_definitions(HEX_HAS_BACKTRACE)
endif () endif ()
endif() endif()
endif ()
endif () endif ()
endmacro() endmacro()