X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=CMakeLists.txt;h=81e5cdcd8f8ada8c8145aa0a18ab48539ba86f54;hb=607717cc7398889ac409b233fc6abbb5ebde3672;hp=db030314f956b704496c21a0b4018ac17b664407;hpb=6f46db0c981e68a3331188314c1bfc2875eb6eee;p=apitrace diff --git a/CMakeLists.txt b/CMakeLists.txt index db03031..81e5cdc 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -108,6 +108,9 @@ if (MSVC) # C99 includes for MSVC include_directories (${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/msinttypes) + # No RTTI required + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /GR-") + # Enable math constants defines add_definitions (-D_USE_MATH_DEFINES) @@ -144,6 +147,9 @@ else () # XXX: it's safer to use ssize_t everywhere instead of disabling warning add_definitions (-Wno-sign-compare) # comparison between signed and unsigned integer expressions + # No RTTI required + #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti") + # Use GDB extensions if available if (CMAKE_COMPILER_IS_GNUC) set (CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -ggdb -O0") @@ -262,7 +268,8 @@ endif () if (CMAKE_EXECUTABLE_FORMAT STREQUAL "ELF") add_subdirectory (thirdparty/libbacktrace) include_directories (${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/libbacktrace) - set (LIBBACKTRACE_LIBRARIES backtrace) + set (LIBBACKTRACE_LIBRARIES dl backtrace) + add_definitions (-DHAVE_BACKTRACE=1) endif () # Always use bundled QJSon. @@ -309,6 +316,7 @@ endif () add_library (common STATIC common/trace_callset.cpp common/trace_dump.cpp + common/trace_fast_callset.cpp common/trace_file.cpp common/trace_file_read.cpp common/trace_file_write.cpp @@ -324,7 +332,7 @@ add_library (common STATIC common/trace_profiler.cpp common/trace_option.cpp common/${os} - common/trace_backtrace.cpp + common/os_backtrace.cpp ) set_target_properties (common PROPERTIES @@ -332,6 +340,9 @@ set_target_properties (common PROPERTIES COMPILE_FLAGS "${CMAKE_SHARED_LIBRARY_CXX_FLAGS}" ) +target_link_libraries (common + ${LIBBACKTRACE_LIBRARIES} +) if (ANDROID) target_link_libraries (common log