g3log/test_performance/Performance.cmake
Benjamin Beichler e8a07f25b5 Fix several CMake Issues (#294)
* Restructure Build.cmake to use "modern" Cmake

Since it is deprecated to modify the global compiler flags and similar options, the Build.cmake is converted to use only per target operations.

Additionally, the checks for backtrace and Pthread lib is converted to use the in cmake included functions. Also the check for the cxa_demangle function should be more robust now.

* fixed option for performance test

* use CMAKE_CURRENT_SOURCE_DIR in git cmd-lines to get current version, for better integration as cmake subdirectory

* bump required cmake version to 3.2 and use target_compile_feature to fix OSX compiler recognition and c++14 compiler flags
2019-02-18 12:43:04 -07:00

54 lines
2.0 KiB
CMake

# g3log is a KjellKod Logger
# 2015 @author Kjell Hedström, hedstrom@kjellkod.cc
# ==================================================================
# 2015 by KjellKod.cc. This is PUBLIC DOMAIN to use at your own
# risk and comes with no warranties.
#
# This code is yours to share, use and modify with no strings attached
# and no restrictions or obligations.
# ===================================================================
# . performance test (average + worst case) for KjellKod's g3log
# Do 'cmake -DADD_G3LOG_BENCH_PERFORMANCE=ON' to enable this
option (ADD_G3LOG_BENCH_PERFORMANCE "g3log performance test" OFF)
# create the g3log's performance tests
# =========================
IF (ADD_G3LOG_BENCH_PERFORMANCE)
set(DIR_PERFORMANCE ${g3log_SOURCE_DIR}/test_performance)
message( STATUS "-DADD_G3LOG_BENCH_PERFORMANCE=ON" )
include_directories (${DIR_PERFORMANCE})
# MEAN PERFORMANCE TEST
add_executable(g3log-performance-threaded_mean
${DIR_PERFORMANCE}/main_threaded_mean.cpp
${DIR_PERFORMANCE}/performance.h)
# Turn on G3LOG performance flag
set_target_properties(g3log-performance-threaded_mean PROPERTIES
COMPILE_DEFINITIONS "G3LOG_PERFORMANCE=1")
target_link_libraries(g3log-performance-threaded_mean
${G3LOG_LIBRARY} ${PLATFORM_LINK_LIBRIES})
# WORST CASE PERFORMANCE TEST
add_executable(g3log-performance-threaded_worst
${DIR_PERFORMANCE}/main_threaded_worst.cpp ${DIR_PERFORMANCE}/performance.h)
# Turn on G3LOG performance flag
set_target_properties(g3log-performance-threaded_worst PROPERTIES
COMPILE_DEFINITIONS "G3LOG_PERFORMANCE=1")
target_link_libraries(g3log-performance-threaded_worst
${G3LOG_LIBRARY} ${PLATFORM_LINK_LIBRIES})
ELSE()
message( STATUS "-DADD_G3LOG_BENCH_PERFORMANCE=OFF" )
ENDIF(ADD_G3LOG_BENCH_PERFORMANCE)