208406038c
e9d5e97561
Poly1305: tolerate the intentional unsigned wraparound in poly1305.cpp (Jonas Schnelli)b34bf302f2
Add Poly1305 bench (Jonas Schnelli)03be7f48fa
Add Poly1305 implementation (Jonas Schnelli) Pull request description: This adds a currently unused Poly1305 implementation including test vectors from RFC7539. Required for BIP151 (and related to #15512). Tree-SHA512: f8c1ad2f686b980a7498ca50c517e2348ac7b1fe550565156f6c2b20faf764978e4fa6b5b1c3777a16e7a12e2eca3fb57a59be9c788b00d4358ee80f2959edb1
89 lines
2.5 KiB
Text
89 lines
2.5 KiB
Text
# Copyright (c) 2015-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.
|
|
|
|
bin_PROGRAMS += bench/bench_bitcoin
|
|
BENCH_SRCDIR = bench
|
|
BENCH_BINARY = bench/bench_bitcoin$(EXEEXT)
|
|
|
|
RAW_BENCH_FILES = \
|
|
bench/data/block413567.raw
|
|
GENERATED_BENCH_FILES = $(RAW_BENCH_FILES:.raw=.raw.h)
|
|
|
|
bench_bench_bitcoin_SOURCES = \
|
|
$(RAW_BENCH_FILES) \
|
|
bench/bench_bitcoin.cpp \
|
|
bench/bench.cpp \
|
|
bench/bench.h \
|
|
bench/block_assemble.cpp \
|
|
bench/checkblock.cpp \
|
|
bench/checkqueue.cpp \
|
|
bench/duplicate_inputs.cpp \
|
|
bench/examples.cpp \
|
|
bench/rollingbloom.cpp \
|
|
bench/crypto_hash.cpp \
|
|
bench/ccoins_caching.cpp \
|
|
bench/gcs_filter.cpp \
|
|
bench/merkle_root.cpp \
|
|
bench/mempool_eviction.cpp \
|
|
bench/rpc_mempool.cpp \
|
|
bench/verify_script.cpp \
|
|
bench/base58.cpp \
|
|
bench/bech32.cpp \
|
|
bench/lockedpool.cpp \
|
|
bench/poly1305.cpp \
|
|
bench/prevector.cpp
|
|
|
|
nodist_bench_bench_bitcoin_SOURCES = $(GENERATED_BENCH_FILES)
|
|
|
|
bench_bench_bitcoin_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) $(EVENT_CLFAGS) $(EVENT_PTHREADS_CFLAGS) -I$(builddir)/bench/
|
|
bench_bench_bitcoin_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)
|
|
bench_bench_bitcoin_LDADD = \
|
|
$(LIBBITCOIN_SERVER) \
|
|
$(LIBBITCOIN_WALLET) \
|
|
$(LIBBITCOIN_SERVER) \
|
|
$(LIBBITCOIN_COMMON) \
|
|
$(LIBBITCOIN_UTIL) \
|
|
$(LIBBITCOIN_CONSENSUS) \
|
|
$(LIBBITCOIN_CRYPTO) \
|
|
$(LIBLEVELDB) \
|
|
$(LIBLEVELDB_SSE42) \
|
|
$(LIBMEMENV) \
|
|
$(LIBSECP256K1) \
|
|
$(LIBUNIVALUE) \
|
|
$(EVENT_PTHREADS_LIBS) \
|
|
$(EVENT_LIBS)
|
|
|
|
if ENABLE_ZMQ
|
|
bench_bench_bitcoin_LDADD += $(LIBBITCOIN_ZMQ) $(ZMQ_LIBS)
|
|
endif
|
|
|
|
if ENABLE_WALLET
|
|
bench_bench_bitcoin_SOURCES += bench/coin_selection.cpp
|
|
endif
|
|
|
|
bench_bench_bitcoin_LDADD += $(BOOST_LIBS) $(BDB_LIBS) $(CRYPTO_LIBS) $(EVENT_PTHREADS_LIBS) $(EVENT_LIBS) $(MINIUPNPC_LIBS)
|
|
bench_bench_bitcoin_LDFLAGS = $(RELDFLAGS) $(AM_LDFLAGS) $(LIBTOOL_APP_LDFLAGS)
|
|
|
|
CLEAN_BITCOIN_BENCH = bench/*.gcda bench/*.gcno $(GENERATED_BENCH_FILES)
|
|
|
|
CLEANFILES += $(CLEAN_BITCOIN_BENCH)
|
|
|
|
bench/checkblock.cpp: bench/data/block413567.raw.h
|
|
|
|
bitcoin_bench: $(BENCH_BINARY)
|
|
|
|
bench: $(BENCH_BINARY) FORCE
|
|
$(BENCH_BINARY)
|
|
|
|
bitcoin_bench_clean : FORCE
|
|
rm -f $(CLEAN_BITCOIN_BENCH) $(bench_bench_bitcoin_OBJECTS) $(BENCH_BINARY)
|
|
|
|
%.raw.h: %.raw
|
|
@$(MKDIR_P) $(@D)
|
|
@{ \
|
|
echo "static unsigned const char $(*F)[] = {" && \
|
|
$(HEXDUMP) -v -e '8/1 "0x%02x, "' -e '"\n"' $< | $(SED) -e 's/0x ,//g' && \
|
|
echo "};"; \
|
|
} > "$@.new" && mv -f "$@.new" "$@"
|
|
@echo "Generated $@"
|