2020-05-02 11:38:14 +03:00
|
|
|
# Copyright(c) 2019 spdlog authors Distributed under the MIT License (http://opensource.org/licenses/MIT)
|
2018-08-13 01:22:35 +03:00
|
|
|
|
2023-08-30 22:20:37 +02:00
|
|
|
cmake_minimum_required(VERSION 3.11)
|
2019-05-29 00:04:36 +03:00
|
|
|
project(spdlog_bench CXX)
|
2018-08-13 01:22:35 +03:00
|
|
|
|
|
|
|
|
if(NOT TARGET spdlog)
|
2020-05-02 11:42:08 +03:00
|
|
|
# Stand-alone build
|
|
|
|
|
find_package(spdlog CONFIG REQUIRED)
|
2018-08-13 01:22:35 +03:00
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
find_package(Threads REQUIRED)
|
2020-10-17 20:59:04 +08:00
|
|
|
find_package(benchmark CONFIG)
|
2021-07-19 00:50:51 +03:00
|
|
|
if(NOT benchmark_FOUND)
|
2020-10-17 20:59:04 +08:00
|
|
|
message(STATUS "Using CMake Version ${CMAKE_VERSION}")
|
2023-08-30 22:20:37 +02:00
|
|
|
# User can fetch googlebenchmark
|
|
|
|
|
message(STATUS "Downloading GoogleBenchmark")
|
|
|
|
|
include(FetchContent)
|
|
|
|
|
|
|
|
|
|
# disable tests
|
|
|
|
|
set(BENCHMARK_ENABLE_TESTING OFF CACHE INTERNAL "")
|
|
|
|
|
# Do not build and run googlebenchmark tests
|
|
|
|
|
FetchContent_Declare(googlebenchmark GIT_REPOSITORY https://github.com/google/benchmark.git GIT_TAG v1.6.0)
|
|
|
|
|
FetchContent_MakeAvailable(googlebenchmark)
|
2020-10-17 20:59:04 +08:00
|
|
|
endif()
|
2018-08-13 01:22:35 +03:00
|
|
|
|
|
|
|
|
add_executable(bench bench.cpp)
|
2019-06-10 18:09:36 +03:00
|
|
|
spdlog_enable_warnings(bench)
|
2019-05-17 23:23:51 -05:00
|
|
|
target_link_libraries(bench PRIVATE spdlog::spdlog)
|
2018-08-13 01:22:35 +03:00
|
|
|
|
|
|
|
|
add_executable(async_bench async_bench.cpp)
|
2019-05-17 23:23:51 -05:00
|
|
|
target_link_libraries(async_bench PRIVATE spdlog::spdlog)
|
2018-08-13 01:22:35 +03:00
|
|
|
|
|
|
|
|
add_executable(latency latency.cpp)
|
2019-05-17 23:23:51 -05:00
|
|
|
target_link_libraries(latency PRIVATE benchmark::benchmark spdlog::spdlog)
|
2018-08-13 01:22:35 +03:00
|
|
|
|
2018-11-12 16:13:52 +02:00
|
|
|
add_executable(formatter-bench formatter-bench.cpp)
|
2019-05-17 23:23:51 -05:00
|
|
|
target_link_libraries(formatter-bench PRIVATE benchmark::benchmark spdlog::spdlog)
|