Work #23 - Fix linux stack traces by using addr2line instead of libbacktrace
All checks were successful
buildbot/mdml-cgi-linux-podman-builder Build done.
buildbot/mdml-cgi-darwin-macos-builder Build done.
buildbot/mdml-cgi-freebsd-jail-builder Build done.

This commit is contained in:
S David 2023-11-24 12:47:14 -05:00
parent 7c0d6eae76
commit 79e0206fc1
2 changed files with 10 additions and 8 deletions

View File

@ -203,15 +203,9 @@ if(USE_BOOST_STACKTRACE)
endif()
if (Boost_FOUND)
add_definitions(-DBOOST_STACKTRACE_USE_BACKTRACE=1)
find_library(LIB_BOOST_BACKTRACE
NAMES boost_stacktrace_backtrace
HINTS /usr/lib /usr/local/lib # Optional hint for the library location
)
add_definitions(-DBOOST_STACKTRACE_USE_ADDR2LINE=1)
include_directories(${Boost_INCLUDE_DIRS})
set(STACKTRACE_DEP_LIBS ${Boost_LIBRARIES} ${LIB_BOOST_BACKTRACE})
endif()

View File

@ -32,7 +32,7 @@ target_compile_definitions(mdml_test PRIVATE -DTESTING)
if (NOT CMARK_STATIC_LINKAGE)
target_link_libraries(mdml PRIVATE cmark)
target_link_libraries(mdml PRIVATE cmark)
target_link_libraries(mdml_static PRIVATE cmark)
target_link_libraries(mdml_test PRIVATE cmark)
else()
target_link_libraries(mdml PRIVATE cmark_static)
@ -40,6 +40,14 @@ else()
target_link_libraries(mdml_test PRIVATE cmark_static)
endif()
# Check if the system is Linux
if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
# Add the -rdynamic linker option
target_link_options(mdml PUBLIC -rdynamic)
target_link_options(mdml_static PUBLIC -rdynamic)
target_link_options(mdml_test PUBLIC -rdynamic)
endif()
target_link_libraries(mdml PRIVATE ${LIBMDML_LINK_LIBS})
target_link_libraries(mdml_static PRIVATE ${LIBMDML_LINK_LIBS})
target_link_libraries(mdml_test PRIVATE ${LIBMDML_LINK_LIBS})