aboutsummaryrefslogtreecommitdiff
path: root/dep/boost
diff options
context:
space:
mode:
authorGiacomo Pozzoni <giacomopoz@gmail.com>2021-02-21 22:16:13 +0100
committerShauren <shauren.trinity@gmail.com>2022-03-06 22:24:18 +0100
commite0ad19dc96ddcd0a4ce64f8018b4931b78c023e0 (patch)
treee1e070b9b5511e99e6bf09a3d94c91f1c43dbf59 /dep/boost
parent9bcff210f90d57689557b7b8cc20cd336b8ab035 (diff)
CMake: Add WITH_BOOST_STACKTRACE option to use libbacktrace (#26119)
* CMake: Add WITH_BOOST_STACKTRACE option to use libbacktrace * Allow to specify where backtrace.h header is with cmake option -DBOOST_STACKTRACE_BACKTRACE_INCLUDE_FILE="/usr/lib/gcc/x86_64-linux-gnu/10/include/backtrace.h" Co-authored-by: Trond B. Krokli <38162891+illfated@users.noreply.github.com> (cherry picked from commit dc78b5a6a7410092df7ac426fbb2f2551072c889)
Diffstat (limited to 'dep/boost')
-rw-r--r--dep/boost/CMakeLists.txt22
1 files changed, 22 insertions, 0 deletions
diff --git a/dep/boost/CMakeLists.txt b/dep/boost/CMakeLists.txt
index 81ff5c04761..e8c0d687e8c 100644
--- a/dep/boost/CMakeLists.txt
+++ b/dep/boost/CMakeLists.txt
@@ -80,3 +80,25 @@ endif()
target_compile_definitions(boost
INTERFACE
-DTC_HAS_BROKEN_WSTRING_REGEX)
+
+if (WITH_BOOST_STACKTRACE AND NOT WIN32)
+ message("*** libbacktrace will be linked")
+
+ if (BOOST_STACKTRACE_BACKTRACE_INCLUDE_FILE)
+ CHECK_INCLUDE_FILE(${BOOST_STACKTRACE_BACKTRACE_INCLUDE_FILE} HAS_BACKTRACE)
+ else()
+ CHECK_INCLUDE_FILE("backtrace.h" HAS_BACKTRACE)
+ endif()
+
+ if (NOT HAS_BACKTRACE)
+ message(FATAL_ERROR "Required header 'backtrace.h' not found. If building with a compiler other than GCC, please specify the full path in the CMake option BOOST_STACKTRACE_BACKTRACE_INCLUDE_FILE.")
+ endif()
+
+ target_compile_definitions(boost
+ INTERFACE
+ -DBOOST_STACKTRACE_USE_BACKTRACE)
+
+ target_link_libraries(boost
+ INTERFACE
+ backtrace)
+endif()