blob: 7a079c9aa8ec3b153abe13d434dc0d981deaa6e4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
list(APPEND CMAKE_MODULE_PATH "${frozen_SOURCE_DIR}/cmake")
include(sed)
find_package(benchmark REQUIRED)
add_executable(frozen.benchmark "")
target_link_libraries(frozen.benchmark PUBLIC
frozen::frozen
benchmark::benchmark)
option(frozen.benchmark.str_search
"Build Benchmark Boyer-Moore string search (requires C++17 compiler)" OFF)
target_compile_options(frozen.benchmark PUBLIC
$<$<BOOL:${frozen.benchmark.str_search}>:cxx_std_17>)
sed(${CMAKE_CURRENT_LIST_DIR}/bench_int_set.cpp
${frozen_BINARY_DIR}/benchmarks/bench_int_unordered_set.cpp
"set" "unordered_set" "Set" "UnorderedSet")
sed(${CMAKE_CURRENT_LIST_DIR}/bench_str_set.cpp
${frozen_BINARY_DIR}/benchmarks/bench_str_unordered_set.cpp
"set" "unordered_set" "Set" "UnorderedSet")
target_sources(frozen.benchmark PRIVATE
${CMAKE_CURRENT_LIST_DIR}/bench_main.cpp
${CMAKE_CURRENT_LIST_DIR}/bench_int_set.cpp
${CMAKE_CURRENT_LIST_DIR}/bench_str_set.cpp
${CMAKE_CURRENT_LIST_DIR}/bench_str_map.cpp
${frozen_BINARY_DIR}/benchmarks/bench_int_unordered_set.cpp
${frozen_BINARY_DIR}/benchmarks/bench_str_unordered_set.cpp
$<$<BOOL:${frozen.benchmark.str_search}>:
${CMAKE_CURRENT_LIST_DIR}/bench_str_search.cpp>)
add_custom_target(benchmark frozen.benchmark)
|