CMakeLists.txt raw
1 # Copyright (c) 2023-present The Limenka developers
2 # Distributed under the MIT software license, see the accompanying
3 # file COPYING or https://opensource.org/license/mit/.
4
5 add_executable(bench_limenka
6 bench_limenka.cpp
7 bench.cpp
8 nanobench.cpp
9 # Benchmarks:
10 addrman.cpp
11 base58.cpp
12 bech32.cpp
13 bip324_ecdh.cpp
14 block_assemble.cpp
15 ccoins_caching.cpp
16 chacha20.cpp
17 checkblock.cpp
18 checkblockindex.cpp
19 checkqueue.cpp
20 cluster_linearize.cpp
21 crypto_hash.cpp
22 descriptors.cpp
23 disconnected_transactions.cpp
24 duplicate_inputs.cpp
25 ellswift.cpp
26 examples.cpp
27 gcs_filter.cpp
28 hashpadding.cpp
29 index_blockfilter.cpp
30 load_external.cpp
31 lockedpool.cpp
32 logging.cpp
33 mempool_ephemeral_spends.cpp
34 mempool_eviction.cpp
35 mempool_stress.cpp
36 merkle_root.cpp
37 parse_hex.cpp
38 peer_eviction.cpp
39 poly1305.cpp
40 pool.cpp
41 prevector.cpp
42 random.cpp
43 readwriteblock.cpp
44 rollingbloom.cpp
45 rpc_blockchain.cpp
46 rpc_mempool.cpp
47 sign_transaction.cpp
48 streams_findbyte.cpp
49 strencodings.cpp
50 util_time.cpp
51 verify_script.cpp
52 xor.cpp
53 )
54
55 include(TargetDataSources)
56 target_raw_data_sources(bench_limenka NAMESPACE benchmark::data
57 data/block413567.raw
58 )
59
60 target_link_libraries(bench_limenka
61 core_interface
62 test_util
63 $<TARGET_NAME_IF_EXISTS:limenkaconsensus>
64 limenka_node
65 Boost::headers
66 )
67
68 if(ENABLE_WALLET)
69 target_sources(bench_limenka
70 PRIVATE
71 coin_selection.cpp
72 wallet_balance.cpp
73 wallet_create.cpp
74 wallet_create_tx.cpp
75 wallet_loading.cpp
76 wallet_ismine.cpp
77 wallet_migration.cpp
78 )
79 target_link_libraries(bench_limenka limenka_wallet)
80 endif()
81
82 add_test(NAME bench_sanity_check_high_priority
83 COMMAND bench_limenka -sanity-check -priority-level=high
84 )
85
86 make_liblimenkaconsensus_dll_available(bench_limenka)
87 install_binary_component(bench_limenka)
88