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