mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-01-18 22:35:39 +01:00
This change enables building and installing only `libbitcoinkernel`, without the need to disable other targets during the project build system generation.
113 lines
2.7 KiB
CMake
113 lines
2.7 KiB
CMake
# Copyright (c) 2024-present The Bitcoin Core developers
|
|
# Distributed under the MIT software license, see the accompanying
|
|
# file COPYING or https://opensource.org/license/mit/.
|
|
|
|
# TODO: libbitcoinkernel is a work in progress consensus engine
|
|
# library, as more and more modules are decoupled from the
|
|
# consensus engine, this list will shrink to only those
|
|
# which are absolutely necessary.
|
|
add_library(bitcoinkernel
|
|
bitcoinkernel.cpp
|
|
chain.cpp
|
|
checks.cpp
|
|
chainparams.cpp
|
|
coinstats.cpp
|
|
context.cpp
|
|
cs_main.cpp
|
|
disconnected_transactions.cpp
|
|
mempool_removal_reason.cpp
|
|
../arith_uint256.cpp
|
|
../chain.cpp
|
|
../coins.cpp
|
|
../compressor.cpp
|
|
../consensus/merkle.cpp
|
|
../consensus/tx_check.cpp
|
|
../consensus/tx_verify.cpp
|
|
../core_read.cpp
|
|
../dbwrapper.cpp
|
|
../deploymentinfo.cpp
|
|
../deploymentstatus.cpp
|
|
../flatfile.cpp
|
|
../hash.cpp
|
|
../logging.cpp
|
|
../node/blockstorage.cpp
|
|
../node/chainstate.cpp
|
|
../node/utxo_snapshot.cpp
|
|
../policy/feerate.cpp
|
|
../policy/packages.cpp
|
|
../policy/policy.cpp
|
|
../policy/rbf.cpp
|
|
../policy/settings.cpp
|
|
../policy/truc_policy.cpp
|
|
../pow.cpp
|
|
../primitives/block.cpp
|
|
../primitives/transaction.cpp
|
|
../pubkey.cpp
|
|
../random.cpp
|
|
../randomenv.cpp
|
|
../script/interpreter.cpp
|
|
../script/script.cpp
|
|
../script/script_error.cpp
|
|
../script/sigcache.cpp
|
|
../script/solver.cpp
|
|
../signet.cpp
|
|
../streams.cpp
|
|
../support/lockedpool.cpp
|
|
../sync.cpp
|
|
../txdb.cpp
|
|
../txmempool.cpp
|
|
../uint256.cpp
|
|
../util/chaintype.cpp
|
|
../util/check.cpp
|
|
../util/feefrac.cpp
|
|
../util/fs.cpp
|
|
../util/fs_helpers.cpp
|
|
../util/hasher.cpp
|
|
../util/moneystr.cpp
|
|
../util/rbf.cpp
|
|
../util/serfloat.cpp
|
|
../util/signalinterrupt.cpp
|
|
../util/strencodings.cpp
|
|
../util/string.cpp
|
|
../util/syserror.cpp
|
|
../util/threadnames.cpp
|
|
../util/time.cpp
|
|
../util/tokenpipe.cpp
|
|
../validation.cpp
|
|
../validationinterface.cpp
|
|
../versionbits.cpp
|
|
)
|
|
target_link_libraries(bitcoinkernel
|
|
PRIVATE
|
|
core_interface
|
|
bitcoin_clientversion
|
|
bitcoin_crypto
|
|
leveldb
|
|
secp256k1
|
|
PUBLIC
|
|
Boost::headers
|
|
)
|
|
|
|
# libbitcoinkernel requires default symbol visibility, explicitly
|
|
# specify that here so that things still work even when user
|
|
# configures with -DREDUCE_EXPORTS=ON
|
|
#
|
|
# Note this is a quick hack that will be removed as we
|
|
# incrementally define what to export from the library.
|
|
set_target_properties(bitcoinkernel PROPERTIES
|
|
CXX_VISIBILITY_PRESET default
|
|
)
|
|
|
|
include(GNUInstallDirs)
|
|
install(TARGETS bitcoinkernel
|
|
RUNTIME
|
|
DESTINATION ${CMAKE_INSTALL_BINDIR}
|
|
COMPONENT Kernel
|
|
LIBRARY
|
|
DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
COMPONENT Kernel
|
|
ARCHIVE
|
|
DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
COMPONENT Kernel
|
|
)
|