# 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)
# 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")
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.
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
common/trace_profiler.cpp
common/trace_option.cpp
common/${os}
- common/trace_backtrace.cpp
+ common/os_backtrace.cpp
)
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