git / moonbite-core / src/Makefile.am · raw
# Copyright (c) 2013-2016 The Bitcoin Core developers# Distributed under the MIT software license, see the accompanying# file COPYING or http://www.opensource.org/licenses/mit-license.php.DIST_SUBDIRS = secp256k1-zkp univalueAM_LDFLAGS = $(LIBTOOL_LDFLAGS) $(HARDENED_LDFLAGS) $(GPROF_LDFLAGS) $(SANITIZER_LDFLAGS)AM_CXXFLAGS = $(DEBUG_CXXFLAGS) $(HARDENED_CXXFLAGS) $(WARN_CXXFLAGS) $(NOWARN_CXXFLAGS) $(ERROR_CXXFLAGS) $(GPROF_CXXFLAGS) $(SANITIZER_CXXFLAGS)AM_CPPFLAGS = $(DEBUG_CPPFLAGS) $(HARDENED_CPPFLAGS)AM_LIBTOOLFLAGS = --preserve-dup-depsPTHREAD_FLAGS = $(PTHREAD_CFLAGS) $(PTHREAD_LIBS)EXTRA_LIBRARIES =if EMBEDDED_UNIVALUELIBUNIVALUE = univalue/libunivalue.la$(LIBUNIVALUE): $(wildcard univalue/lib/*) $(wildcard univalue/include/*) $(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C $(@D) $(@F)elseLIBUNIVALUE = $(UNIVALUE_LIBS)endifBITCOIN_INCLUDES=-I$(builddir) -I$(srcdir)/secp256k1-zkp/include $(BDB_CPPFLAGS) $(BOOST_CPPFLAGS) $(LEVELDB_CPPFLAGS) $(CRYPTO_CFLAGS)BITCOIN_INCLUDES += -I$(srcdir)/libmw/includeBITCOIN_INCLUDES += -I$(srcdir)/libmw/deps/caches/includeBITCOIN_INCLUDES += -I$(srcdir)/libmw/deps/ghc/includeBITCOIN_INCLUDES += -I$(srcdir)/libmw/deps/mio/includeBITCOIN_INCLUDES += $(UNIVALUE_CFLAGS)LIBBITCOIN_SERVER=libbitcoin_server.aLIBBITCOIN_COMMON=libbitcoin_common.aLIBBITCOIN_CONSENSUS=libbitcoin_consensus.aLIBBITCOIN_CLI=libbitcoin_cli.aLIBBITCOIN_UTIL=libbitcoin_util.aLIBBITCOIN_CRYPTO_BASE=crypto/libbitcoin_crypto_base.aLIBBITCOINQT=qt/libbitcoinqt.aLIBSECP256K1=secp256k1-zkp/libsecp256k1.laLIBMW=libmw.aif ENABLE_ZMQLIBBITCOIN_ZMQ=libbitcoin_zmq.aendifif BUILD_BITCOIN_LIBSLIBBITCOINCONSENSUS=libbitcoinconsensus.laendifif ENABLE_WALLETLIBBITCOIN_WALLET=libbitcoin_wallet.aLIBBITCOIN_WALLET_TOOL=libbitcoin_wallet_tool.aendifLIBBITCOIN_CRYPTO= $(LIBBITCOIN_CRYPTO_BASE)if ENABLE_SSE41LIBBITCOIN_CRYPTO_SSE41 = crypto/libbitcoin_crypto_sse41.aLIBBITCOIN_CRYPTO += $(LIBBITCOIN_CRYPTO_SSE41)endifif ENABLE_AVX2LIBBITCOIN_CRYPTO_AVX2 = crypto/libbitcoin_crypto_avx2.aLIBBITCOIN_CRYPTO += $(LIBBITCOIN_CRYPTO_AVX2)endifif ENABLE_SHANILIBBITCOIN_CRYPTO_SHANI = crypto/libbitcoin_crypto_shani.aLIBBITCOIN_CRYPTO += $(LIBBITCOIN_CRYPTO_SHANI)endif# MoonBite (ADR-001): RandomX PoW backend, appended last so it resolves the# randomx_* symbols pulled in by crypto/randomx_hasher.LIBBITCOIN_CRYPTO += crypto/randomx/librandomx.a# The archive is prebuilt and vendored into the tree; give make an explicit# (empty) rule so it does not fall back to its implicit .c -> .o -> .a rule and# try to rebuild it from a nonexistent source.crypto/randomx/librandomx.a: ;$(LIBSECP256K1): $(wildcard secp256k1-zkp/src/*.h) $(wildcard secp256k1-zkp/src/*.c) $(wildcard secp256k1-zkp/include/*) $(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C $(@D) $(@F)# Make is not made aware of per-object dependencies to avoid limiting building parallelization# But to build the less dependent modules first, we manually select their order here:EXTRA_LIBRARIES += \ $(LIBBITCOIN_CRYPTO) \ $(LIBBITCOIN_UTIL) \ $(LIBBITCOIN_COMMON) \ $(LIBBITCOIN_CONSENSUS) \ $(LIBBITCOIN_SERVER) \ $(LIBBITCOIN_CLI) \ $(LIBBITCOIN_WALLET) \ $(LIBBITCOIN_WALLET_TOOL) \ $(LIBBITCOIN_ZMQ) \ $(LIBMW)lib_LTLIBRARIES = $(LIBBITCOINCONSENSUS)bin_PROGRAMS =noinst_PROGRAMS =TESTS =BENCHMARKS =if BUILD_BITCOIND bin_PROGRAMS += litecoindendifif BUILD_BITCOIN_NODE bin_PROGRAMS += litecoin-nodeendifif BUILD_BITCOIN_CLI bin_PROGRAMS += litecoin-cliendifif BUILD_BITCOIN_TX bin_PROGRAMS += litecoin-txendifif ENABLE_WALLETif BUILD_BITCOIN_WALLET bin_PROGRAMS += litecoin-walletendifendifLIBMW_CPPFLAGS = -I$(srcdir) -I$(srcdir)/libmw/include -I$(srcdir)/libmw/deps/crypto/includelibmw_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) $(LIBMW_CPPFLAGS)libmw_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)libmw_a_SOURCES = \ libmw/src/common/Logger.cpp \ libmw/src/crypto/Bulletproofs.cpp \ libmw/src/crypto/ConversionUtil.cpp \ libmw/src/crypto/MuSig.cpp \ libmw/src/crypto/Pedersen.cpp \ libmw/src/crypto/PublicKeys.cpp \ libmw/src/crypto/Schnorr.cpp \ libmw/src/crypto/SecretKeys.cpp \ libmw/src/db/CoinDB.cpp \ libmw/src/db/LeafDB.cpp \ libmw/src/db/MMRInfoDB.cpp \ libmw/src/file/File.cpp \ libmw/src/mmr/ILeafSet.cpp \ libmw/src/mmr/IMMR.cpp \ libmw/src/mmr/Index.cpp \ libmw/src/mmr/LeafSet.cpp \ libmw/src/mmr/LeafSetCache.cpp \ libmw/src/mmr/MemMMR.cpp \ libmw/src/mmr/MMRUtil.cpp \ libmw/src/mmr/PMMRCache.cpp \ libmw/src/mmr/PMMR.cpp \ libmw/src/mmr/PruneList.cpp \ libmw/src/mmr/Segment.cpp \ libmw/src/models/block/Block.cpp \ libmw/src/models/crypto/Commitment.cpp \ libmw/src/models/crypto/PublicKey.cpp \ libmw/src/models/tx/Input.cpp \ libmw/src/models/tx/Kernel.cpp \ libmw/src/models/tx/Output.cpp \ libmw/src/models/tx/Transaction.cpp \ libmw/src/models/tx/TxBody.cpp \ libmw/src/node/BlockValidator.cpp \ libmw/src/node/BlockBuilder.cpp \ libmw/src/node/CoinsViewCache.cpp \ libmw/src/node/CoinsViewDB.cpp \ libmw/src/wallet/Keychain.cpp \ libmw/src/wallet/TxBuilder.cpp.PHONY: FORCE check-symbols check-security# bitcoin core #BITCOIN_CORE_H = \ addrdb.h \ addrman.h \ attributes.h \ banman.h \ base58.h \ bech32.h \ blockencodings.h \ blockfilter.h \ bloom.h \ chain.h \ chainparams.h \ chainparamsbase.h \ chainparamsseeds.h \ checkqueue.h \ clientversion.h \ coins.h \ compat.h \ compat/assumptions.h \ compat/byteswap.h \ compat/cpuid.h \ compat/endian.h \ compat/sanity.h \ compressor.h \ consensus/consensus.h \ consensus/tx_check.h \ consensus/tx_verify.h \ core_io.h \ core_memusage.h \ cuckoocache.h \ dbwrapper.h \ flatfile.h \ fs.h \ httprpc.h \ httpserver.h \ index/base.h \ index/blockfilterindex.h \ index/disktxpos.h \ index/txindex.h \ indirectmap.h \ init.h \ interfaces/chain.h \ interfaces/handler.h \ interfaces/node.h \ interfaces/wallet.h \ key.h \ key_io.h \ logging.h \ logging/timer.h \ memusage.h \ merkleblock.h \ miner.h \ mweb/mweb_db.h \ mweb/mweb_miner.h \ mweb/mweb_models.h \ mweb/mweb_node.h \ mweb/mweb_policy.h \ mweb/mweb_transact.h \ mweb/mweb_wallet.h \ net.h \ net_permissions.h \ net_processing.h \ net_types.h \ netaddress.h \ netbase.h \ netmessagemaker.h \ node/coin.h \ node/coinstats.h \ node/context.h \ node/psbt.h \ node/transaction.h \ node/ui_interface.h \ node/utxo_snapshot.h \ noui.h \ optional.h \ outputtype.h \ policy/feerate.h \ policy/fees.h \ policy/policy.h \ policy/rbf.h \ policy/settings.h \ pow.h \ protocol.h \ psbt.h \ random.h \ randomenv.h \ reverse_iterator.h \ rpc/blockchain.h \ rpc/client.h \ rpc/mining.h \ rpc/protocol.h \ rpc/rawtransaction_util.h \ rpc/register.h \ rpc/request.h \ rpc/server.h \ rpc/util.h \ scheduler.h \ script/address.h \ script/descriptor.h \ script/keyorigin.h \ script/sigcache.h \ script/sign.h \ script/signingprovider.h \ script/standard.h \ shutdown.h \ signet.h \ streams.h \ support/allocators/secure.h \ support/allocators/zeroafterfree.h \ support/cleanse.h \ support/events.h \ support/lockedpool.h \ sync.h \ threadinterrupt.h \ threadsafety.h \ timedata.h \ torcontrol.h \ txdb.h \ txrequest.h \ txmempool.h \ undo.h \ util/asmap.h \ util/bip32.h \ util/bytevectorhash.h \ util/check.h \ util/error.h \ util/fees.h \ util/golombrice.h \ util/macros.h \ util/memory.h \ util/message.h \ util/moneystr.h \ util/rbf.h \ util/ref.h \ util/settings.h \ util/spanparsing.h \ util/string.h \ util/system.h \ util/threadnames.h \ util/time.h \ util/translation.h \ util/ui_change_type.h \ util/url.h \ util/vector.h \ validation.h \ validationinterface.h \ versionbits.h \ versionbitsinfo.h \ wallet/bdb.h \ wallet/coincontrol.h \ wallet/coinselection.h \ wallet/context.h \ wallet/crypter.h \ wallet/db.h \ wallet/feebumper.h \ wallet/fees.h \ wallet/ismine.h \ wallet/load.h \ wallet/reserve.h \ wallet/rpcwallet.h \ wallet/salvage.h \ wallet/scriptpubkeyman.h \ wallet/sqlite.h \ wallet/txassembler.h \ wallet/wallet.h \ wallet/walletdb.h \ wallet/wallettool.h \ wallet/walletutil.h \ walletinitinterface.h \ warnings.h \ zmq/zmqabstractnotifier.h \ zmq/zmqnotificationinterface.h \ zmq/zmqpublishnotifier.h \ zmq/zmqrpc.h \ zmq/zmqutil.hobj/build.h: FORCE @$(MKDIR_P) $(builddir)/obj @$(top_srcdir)/share/genbuild.sh "$(abs_top_builddir)/src/obj/build.h" \ "$(abs_top_srcdir)"libbitcoin_util_a-clientversion.$(OBJEXT): obj/build.h# server: shared between bitcoind and bitcoin-qt# Contains code accessing mempool and chain state that is meant to be separated# from wallet and gui code (see node/README.md). Shared code should go in# libbitcoin_common or libbitcoin_util libraries, instead.libbitcoin_server_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) $(MINIUPNPC_CPPFLAGS) $(EVENT_CFLAGS) $(EVENT_PTHREADS_CFLAGS) $(LIBMW_CPPFLAGS)libbitcoin_server_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)libbitcoin_server_a_SOURCES = \ addrdb.cpp \ addrman.cpp \ banman.cpp \ blockencodings.cpp \ blockfilter.cpp \ chain.cpp \ consensus/tx_verify.cpp \ dbwrapper.cpp \ flatfile.cpp \ httprpc.cpp \ httpserver.cpp \ index/base.cpp \ index/blockfilterindex.cpp \ index/txindex.cpp \ init.cpp \ interfaces/chain.cpp \ interfaces/node.cpp \ miner.cpp \ mweb/mweb_miner.cpp \ mweb/mweb_node.cpp \ net.cpp \ net_processing.cpp \ node/coin.cpp \ node/coinstats.cpp \ node/context.cpp \ node/psbt.cpp \ node/transaction.cpp \ node/ui_interface.cpp \ noui.cpp \ policy/fees.cpp \ policy/rbf.cpp \ policy/settings.cpp \ pow.cpp \ rest.cpp \ rpc/blockchain.cpp \ rpc/mining.cpp \ rpc/misc.cpp \ rpc/net.cpp \ rpc/rawtransaction.cpp \ rpc/server.cpp \ script/sigcache.cpp \ shutdown.cpp \ signet.cpp \ timedata.cpp \ torcontrol.cpp \ txdb.cpp \ txrequest.cpp \ txmempool.cpp \ validation.cpp \ validationinterface.cpp \ versionbits.cpp \ $(BITCOIN_CORE_H)if ENABLE_WALLETlibbitcoin_server_a_SOURCES += wallet/init.cppendifif !ENABLE_WALLETlibbitcoin_server_a_SOURCES += dummywallet.cppendifif ENABLE_ZMQlibbitcoin_zmq_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) $(ZMQ_CFLAGS)libbitcoin_zmq_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)libbitcoin_zmq_a_SOURCES = \ zmq/zmqabstractnotifier.cpp \ zmq/zmqnotificationinterface.cpp \ zmq/zmqpublishnotifier.cpp \ zmq/zmqrpc.cpp \ zmq/zmqutil.cppendif# wallet: shared between bitcoind and bitcoin-qt, but only linked# when wallet enabledlibbitcoin_wallet_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) $(SQLITE_CFLAGS)libbitcoin_wallet_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)libbitcoin_wallet_a_SOURCES = \ mweb/mweb_transact.cpp \ mweb/mweb_wallet.cpp \ interfaces/wallet.cpp \ wallet/bdb.cpp \ wallet/coincontrol.cpp \ wallet/context.cpp \ wallet/crypter.cpp \ wallet/db.cpp \ wallet/feebumper.cpp \ wallet/fees.cpp \ wallet/load.cpp \ wallet/reserve.cpp \ wallet/rpcdump.cpp \ wallet/rpcwallet.cpp \ wallet/salvage.cpp \ wallet/scriptpubkeyman.cpp \ wallet/txassembler.cpp \ wallet/txlist.cpp \ wallet/txrecord.cpp \ wallet/wallet.cpp \ wallet/walletdb.cpp \ wallet/walletutil.cpp \ wallet/coinselection.cpp \ $(BITCOIN_CORE_H)if USE_SQLITElibbitcoin_wallet_a_SOURCES += wallet/sqlite.cppendiflibbitcoin_wallet_tool_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES)libbitcoin_wallet_tool_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)libbitcoin_wallet_tool_a_SOURCES = \ wallet/wallettool.cpp \ $(BITCOIN_CORE_H)# crypto primitives librarycrypto_libbitcoin_crypto_base_a_CPPFLAGS = $(AM_CPPFLAGS) $(SSL_CFLAGS) $(BITCOIN_INCLUDES)crypto_libbitcoin_crypto_base_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)crypto_libbitcoin_crypto_base_a_SOURCES = \ crypto/aes.cpp \ crypto/aes.h \ crypto/chacha_poly_aead.h \ crypto/chacha_poly_aead.cpp \ crypto/chacha20.h \ crypto/chacha20.cpp \ crypto/common.h \ crypto/hkdf_sha256_32.cpp \ crypto/hkdf_sha256_32.h \ crypto/hmac_sha256.cpp \ crypto/hmac_sha256.h \ crypto/hmac_sha512.cpp \ crypto/hmac_sha512.h \ crypto/poly1305.h \ crypto/poly1305.cpp \ crypto/randomx_hasher.cpp \ crypto/randomx_hasher.h \ crypto/randomx_miner.cpp \ crypto/randomx_miner.h \ crypto/ripemd160.cpp \ crypto/ripemd160.h \ crypto/sha1.cpp \ crypto/sha1.h \ crypto/sha256.cpp \ crypto/sha256.h \ crypto/sha3.cpp \ crypto/sha3.h \ crypto/sha512.cpp \ crypto/sha512.h \ crypto/siphash.cpp \ crypto/siphash.h \ libmw/src/crypto/Hasher.cppif USE_ASMcrypto_libbitcoin_crypto_base_a_SOURCES += crypto/sha256_sse4.cppendifcrypto_libbitcoin_crypto_sse41_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)crypto_libbitcoin_crypto_sse41_a_CPPFLAGS = $(AM_CPPFLAGS)crypto_libbitcoin_crypto_sse41_a_CXXFLAGS += $(SSE41_CXXFLAGS)crypto_libbitcoin_crypto_sse41_a_CPPFLAGS += -DENABLE_SSE41crypto_libbitcoin_crypto_sse41_a_SOURCES = crypto/sha256_sse41.cppcrypto_libbitcoin_crypto_avx2_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)crypto_libbitcoin_crypto_avx2_a_CPPFLAGS = $(AM_CPPFLAGS)crypto_libbitcoin_crypto_avx2_a_CXXFLAGS += $(AVX2_CXXFLAGS)crypto_libbitcoin_crypto_avx2_a_CPPFLAGS += -DENABLE_AVX2crypto_libbitcoin_crypto_avx2_a_SOURCES = crypto/sha256_avx2.cppcrypto_libbitcoin_crypto_shani_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)crypto_libbitcoin_crypto_shani_a_CPPFLAGS = $(AM_CPPFLAGS)crypto_libbitcoin_crypto_shani_a_CXXFLAGS += $(SHANI_CXXFLAGS)crypto_libbitcoin_crypto_shani_a_CPPFLAGS += -DENABLE_SHANIcrypto_libbitcoin_crypto_shani_a_SOURCES = crypto/sha256_shani.cpp# consensus: shared between all executables that validate any consensus rules.libbitcoin_consensus_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES)libbitcoin_consensus_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)libbitcoin_consensus_a_SOURCES = \ amount.h \ arith_uint256.cpp \ arith_uint256.h \ consensus/merkle.cpp \ consensus/merkle.h \ consensus/params.h \ consensus/tx_check.cpp \ consensus/validation.h \ hash.cpp \ hash.h \ prevector.h \ primitives/block.cpp \ primitives/block.h \ primitives/transaction.cpp \ primitives/transaction.h \ pubkey.cpp \ pubkey.h \ script/bitcoinconsensus.cpp \ script/interpreter.cpp \ script/interpreter.h \ script/script.cpp \ script/script.h \ script/script_error.cpp \ script/script_error.h \ serialize.h \ span.h \ tinyformat.h \ uint256.cpp \ uint256.h \ util/strencodings.cpp \ util/strencodings.h \ version.h# common: shared between bitcoind, and bitcoin-qt and non-server toolslibbitcoin_common_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES)libbitcoin_common_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)libbitcoin_common_a_SOURCES = \ base58.cpp \ bech32.cpp \ bloom.cpp \ chainparams.cpp \ coins.cpp \ compressor.cpp \ core_read.cpp \ core_write.cpp \ key.cpp \ key_io.cpp \ merkleblock.cpp \ mweb/mweb_policy.cpp \ netaddress.cpp \ netbase.cpp \ net_permissions.cpp \ outputtype.cpp \ policy/feerate.cpp \ policy/policy.cpp \ protocol.cpp \ psbt.cpp \ rpc/rawtransaction_util.cpp \ rpc/util.cpp \ scheduler.cpp \ script/address.cpp \ script/descriptor.cpp \ script/sign.cpp \ script/signingprovider.cpp \ script/standard.cpp \ versionbitsinfo.cpp \ warnings.cpp \ $(BITCOIN_CORE_H)# util: shared between all executables.# This library *must* be included to make sure that the glibc# backward-compatibility objects and their sanity checks are linked.libbitcoin_util_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES)libbitcoin_util_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)libbitcoin_util_a_SOURCES = \ support/lockedpool.cpp \ chainparamsbase.cpp \ clientversion.cpp \ compat/glibc_sanity.cpp \ compat/glibcxx_sanity.cpp \ compat/strnlen.cpp \ fs.cpp \ interfaces/handler.cpp \ logging.cpp \ random.cpp \ randomenv.cpp \ rpc/request.cpp \ support/cleanse.cpp \ sync.cpp \ threadinterrupt.cpp \ util/asmap.cpp \ util/bip32.cpp \ util/bytevectorhash.cpp \ util/error.cpp \ util/fees.cpp \ util/system.cpp \ util/message.cpp \ util/moneystr.cpp \ util/rbf.cpp \ util/settings.cpp \ util/threadnames.cpp \ util/spanparsing.cpp \ util/strencodings.cpp \ util/string.cpp \ util/time.cpp \ $(BITCOIN_CORE_H)if USE_LIBEVENTlibbitcoin_util_a_SOURCES += util/url.cppendifif GLIBC_BACK_COMPATlibbitcoin_util_a_SOURCES += compat/glibc_compat.cppAM_LDFLAGS += $(COMPAT_LDFLAGS)endif# cli: shared between bitcoin-cli and bitcoin-qtlibbitcoin_cli_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES)libbitcoin_cli_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)libbitcoin_cli_a_SOURCES = \ compat/stdin.h \ compat/stdin.cpp \ rpc/client.cpp \ $(BITCOIN_CORE_H)nodist_libbitcoin_util_a_SOURCES = $(srcdir)/obj/build.h## bitcoind & bitcoin-node binaries #litecoin_daemon_sources = bitcoind.cpplitecoin_bin_cppflags = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES)litecoin_bin_cxxflags = $(AM_CXXFLAGS) $(PIE_FLAGS)litecoin_bin_ldflags = $(RELDFLAGS) $(AM_LDFLAGS) $(LIBTOOL_APP_LDFLAGS) $(PTHREAD_FLAGS)if TARGET_WINDOWSlitecoin_daemon_sources += bitcoind-res.rcendiflitecoin_bin_ldadd = \ $(LIBBITCOIN_WALLET) \ $(LIBBITCOIN_COMMON) \ $(LIBBITCOIN_UTIL) \ $(LIBUNIVALUE) \ $(LIBBITCOIN_ZMQ) \ $(LIBBITCOIN_CONSENSUS) \ $(LIBBITCOIN_CRYPTO) \ $(LIBLEVELDB) \ $(LIBLEVELDB_SSE42) \ $(LIBMEMENV) \ $(LIBSECP256K1) \ $(LIBMW)litecoin_bin_ldadd += $(BOOST_LIBS) $(BDB_LIBS) $(CRYPTO_LIBS) $(MINIUPNPC_LIBS) $(EVENT_PTHREADS_LIBS) $(EVENT_LIBS) $(ZMQ_LIBS) $(SQLITE_LIBS) $(MWEB_LIBS)litecoind_SOURCES = $(litecoin_daemon_sources)litecoind_CPPFLAGS = $(litecoin_bin_cppflags)litecoind_CXXFLAGS = $(litecoin_bin_cxxflags)litecoind_LDFLAGS = $(litecoin_bin_ldflags)litecoind_LDADD = $(LIBBITCOIN_SERVER) $(litecoin_bin_ldadd)litecoin_node_SOURCES = $(litecoin_daemon_sources)litecoin_node_CPPFLAGS = $(litecoin_bin_cppflags)litecoin_node_CXXFLAGS = $(litecoin_bin_cxxflags)litecoin_node_LDFLAGS = $(litecoin_bin_ldflags)litecoin_node_LDADD = $(LIBBITCOIN_SERVER) $(litecoin_bin_ldadd)# bitcoin-cli binary #litecoin_cli_SOURCES = bitcoin-cli.cpplitecoin_cli_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) $(EVENT_CFLAGS)litecoin_cli_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)litecoin_cli_LDFLAGS = $(RELDFLAGS) $(AM_LDFLAGS) $(LIBTOOL_APP_LDFLAGS) $(PTHREAD_FLAGS)if TARGET_WINDOWSlitecoin_cli_SOURCES += bitcoin-cli-res.rcendiflitecoin_cli_LDADD = \ $(LIBBITCOIN_CLI) \ $(LIBUNIVALUE) \ $(LIBBITCOIN_UTIL) \ $(LIBBITCOIN_CRYPTO)litecoin_cli_LDADD += $(BOOST_LIBS) $(CRYPTO_LIBS) $(EVENT_LIBS) $(MWEB_LIBS)## bitcoin-tx binary #litecoin_tx_SOURCES = bitcoin-tx.cpplitecoin_tx_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES)litecoin_tx_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)litecoin_tx_LDFLAGS = $(RELDFLAGS) $(AM_LDFLAGS) $(LIBTOOL_APP_LDFLAGS) $(PTHREAD_FLAGS)if TARGET_WINDOWSlitecoin_tx_SOURCES += bitcoin-tx-res.rcendiflitecoin_tx_LDADD = \ $(LIBUNIVALUE) \ $(LIBBITCOIN_COMMON) \ $(LIBBITCOIN_UTIL) \ $(LIBBITCOIN_CONSENSUS) \ $(LIBBITCOIN_CRYPTO) \ $(LIBSECP256K1) \ $(LIBMW)litecoin_tx_LDADD += $(BOOST_LIBS) $(CRYPTO_LIBS) $(MWEB_LIBS)# bitcoin-wallet binary #litecoin_wallet_SOURCES = bitcoin-wallet.cpplitecoin_wallet_CPPFLAGS = $(litecoin_bin_cppflags)litecoin_wallet_CXXFLAGS = $(litecoin_bin_cxxflags)litecoin_wallet_LDFLAGS = $(litecoin_bin_ldflags)litecoin_wallet_LDADD = $(LIBBITCOIN_WALLET_TOOL) $(litecoin_bin_ldadd)if TARGET_WINDOWSlitecoin_wallet_SOURCES += bitcoin-wallet-res.rcendif## bitcoinconsensus library #if BUILD_BITCOIN_LIBSinclude_HEADERS = script/bitcoinconsensus.hlibbitcoinconsensus_la_SOURCES = support/cleanse.cpp $(crypto_libbitcoin_crypto_base_a_SOURCES) $(libbitcoin_consensus_a_SOURCES)if GLIBC_BACK_COMPAT libbitcoinconsensus_la_SOURCES += compat/glibc_compat.cppendiflibbitcoinconsensus_la_LDFLAGS = $(AM_LDFLAGS) -no-undefined $(RELDFLAGS)libbitcoinconsensus_la_LIBADD = $(LIBSECP256K1) $(CRYPTO_LIBS) $(MWEB_LIBS)libbitcoinconsensus_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(builddir)/obj -I$(srcdir)/secp256k1-zkp/include -DBUILD_BITCOIN_INTERNAL $(SSL_CFLAGS) $(LIBMW_CPPFLAGS)libbitcoinconsensus_la_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)endif#CTAES_DIST = crypto/ctaes/bench.cCTAES_DIST += crypto/ctaes/ctaes.cCTAES_DIST += crypto/ctaes/ctaes.hCTAES_DIST += crypto/ctaes/README.mdCTAES_DIST += crypto/ctaes/test.cCLEANFILES = $(EXTRA_LIBRARIES)CLEANFILES += *.gcda *.gcnoCLEANFILES += compat/*.gcda compat/*.gcnoCLEANFILES += consensus/*.gcda consensus/*.gcnoCLEANFILES += crc32c/src/*.gcda crc32c/src/*.gcnoCLEANFILES += crypto/*.gcda crypto/*.gcnoCLEANFILES += index/*.gcda index/*.gcnoCLEANFILES += interfaces/*.gcda interfaces/*.gcnoCLEANFILES += node/*.gcda node/*.gcnoCLEANFILES += policy/*.gcda policy/*.gcnoCLEANFILES += primitives/*.gcda primitives/*.gcnoCLEANFILES += rpc/*.gcda rpc/*.gcnoCLEANFILES += script/*.gcda script/*.gcnoCLEANFILES += support/*.gcda support/*.gcnoCLEANFILES += univalue/*.gcda univalue/*.gcnoCLEANFILES += util/*.gcda util/*.gcnoCLEANFILES += wallet/*.gcda wallet/*.gcnoCLEANFILES += wallet/test/*.gcda wallet/test/*.gcnoCLEANFILES += zmq/*.gcda zmq/*.gcnoCLEANFILES += obj/build.hEXTRA_DIST = $(CTAES_DIST)config/bitcoin-config.h: config/stamp-h1 @$(MAKE) -C $(top_builddir) $(subdir)/$(@)config/stamp-h1: $(top_srcdir)/$(subdir)/config/bitcoin-config.h.in $(top_builddir)/config.status $(AM_V_at)$(MAKE) -C $(top_builddir) $(subdir)/$(@)$(top_srcdir)/$(subdir)/config/bitcoin-config.h.in: $(am__configure_deps) $(AM_V_at)$(MAKE) -C $(top_srcdir) $(subdir)/config/bitcoin-config.h.inclean-local: -$(MAKE) -C secp256k1-zkp clean -$(MAKE) -C univalue clean -rm -f leveldb/*/*.gcda leveldb/*/*.gcno leveldb/helpers/memenv/*.gcda leveldb/helpers/memenv/*.gcno -rm -f config.h -rm -rf test/__pycache__.rc.o: @test -f $(WINDRES) ## FIXME: How to get the appropriate modulename_CPPFLAGS in here? $(AM_V_GEN) $(WINDRES) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(CPPFLAGS) -DWINDRES_PREPROC -i $< -o $@check-symbols: $(bin_PROGRAMS)if TARGET_DARWIN @echo "Checking macOS dynamic libraries..." $(AM_V_at) OTOOL=$(OTOOL) $(PYTHON) $(top_srcdir)/contrib/devtools/symbol-check.py $(bin_PROGRAMS)endifif TARGET_WINDOWS @echo "Checking Windows dynamic libraries..." $(AM_V_at) OBJDUMP=$(OBJDUMP) $(PYTHON) $(top_srcdir)/contrib/devtools/symbol-check.py $(bin_PROGRAMS)endifif GLIBC_BACK_COMPAT @echo "Checking glibc back compat..." $(AM_V_at) READELF=$(READELF) CPPFILT=$(CPPFILT) $(PYTHON) $(top_srcdir)/contrib/devtools/symbol-check.py $(bin_PROGRAMS)endifcheck-security: $(bin_PROGRAMS)if HARDEN @echo "Checking binary security..." $(AM_V_at) READELF=$(READELF) OBJDUMP=$(OBJDUMP) OTOOL=$(OTOOL) $(PYTHON) $(top_srcdir)/contrib/devtools/security-check.py $(bin_PROGRAMS)endifif EMBEDDED_LEVELDBinclude Makefile.crc32c.includeinclude Makefile.leveldb.includeendifinclude Makefile.test_util.includeinclude Makefile.test_fuzz.includeif ENABLE_TESTSinclude Makefile.test.includeendifif ENABLE_BENCHinclude Makefile.bench.includeendifif ENABLE_QTinclude Makefile.qt.includeendifif ENABLE_QT_TESTSinclude Makefile.qttest.includeendif