Skip to content

Commit adfd2e1

Browse files
laanwjcodablock
authored andcommitted
Merge bitcoin#13408: crypto: cleanup sha256 build
f68049d crypto: cleanup sha256 build (Cory Fields) Pull request description: Requested by @sipa in bitcoin#13386. Rather than appending all possible cpu variants to all targets, create a convenience variable that encompasses all. Tree-SHA512: 8e9ab2185515672b79bb7925afa4f3fbfe921bfcbe61456833d15457de4feba95290de17514344ce42ee81cc38b252476cd0c29432ac48c737c2225ed515a4bd
1 parent 5a23934 commit adfd2e1

File tree

5 files changed

+20
-26
lines changed

5 files changed

+20
-26
lines changed

src/Makefile.am

Lines changed: 17 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,7 @@ LIBBITCOIN_COMMON=libdash_common.a
5050
LIBBITCOIN_CONSENSUS=libdash_consensus.a
5151
LIBBITCOIN_CLI=libdash_cli.a
5252
LIBBITCOIN_UTIL=libdash_util.a
53-
LIBBITCOIN_CRYPTO=crypto/libdash_crypto.a
54-
LIBBITCOIN_CRYPTO_SSE41=crypto/libbitcoin_crypto_sse41.a
55-
LIBBITCOIN_CRYPTO_AVX2=crypto/libbitcoin_crypto_avx2.a
53+
LIBBITCOIN_CRYPTO_BASE=crypto/libdash_crypto_base.a
5654
LIBBITCOINQT=qt/libdashqt.a
5755
LIBSECP256K1=secp256k1/libsecp256k1.la
5856

@@ -66,15 +64,23 @@ if ENABLE_WALLET
6664
LIBBITCOIN_WALLET=libdash_wallet.a
6765
endif
6866

67+
LIBBITCOIN_CRYPTO= $(LIBBITCOIN_CRYPTO_BASE)
68+
if ENABLE_SSE41
69+
LIBBITCOIN_CRYPTO_SSE41 = crypto/libbitcoin_crypto_sse41.a
70+
LIBBITCOIN_CRYPTO += $(LIBBITCOIN_CRYPTO_SSE41)
71+
endif
72+
if ENABLE_AVX2
73+
LIBBITCOIN_CRYPTO_AVX2 = crypto/libbitcoin_crypto_avx2.a
74+
LIBBITCOIN_CRYPTO += $(LIBBITCOIN_CRYPTO_AVX2)
75+
endif
76+
6977
$(LIBSECP256K1): $(wildcard secp256k1/src/*) $(wildcard secp256k1/include/*)
7078
$(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C $(@D) $(@F)
7179

7280
# Make is not made aware of per-object dependencies to avoid limiting building parallelization
7381
# But to build the less dependent modules first, we manually select their order here:
7482
EXTRA_LIBRARIES += \
7583
$(LIBBITCOIN_CRYPTO) \
76-
$(LIBBITCOIN_CRYPTO_SSE41) \
77-
$(LIBBITCOIN_CRYPTO_AVX2) \
7884
$(LIBBITCOIN_UTIL) \
7985
$(LIBBITCOIN_COMMON) \
8086
$(LIBBITCOIN_CONSENSUS) \
@@ -369,9 +375,9 @@ libdash_wallet_a_SOURCES = \
369375
$(BITCOIN_CORE_H)
370376

371377
# crypto primitives library
372-
crypto_libdash_crypto_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_CONFIG_INCLUDES) $(PIC_FLAGS)
373-
crypto_libdash_crypto_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) $(PIC_FLAGS)
374-
crypto_libdash_crypto_a_SOURCES = \
378+
crypto_libdash_crypto_base_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_CONFIG_INCLUDES) $(PIC_FLAGS)
379+
crypto_libdash_crypto_base_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) $(PIC_FLAGS)
380+
crypto_libdash_crypto_base_a_SOURCES = \
375381
crypto/aes.cpp \
376382
crypto/aes.h \
377383
crypto/chacha_poly_aead.h \
@@ -396,23 +402,19 @@ crypto_libdash_crypto_a_SOURCES = \
396402
crypto/sha512.h
397403

398404
if USE_ASM
399-
crypto_libdash_crypto_a_SOURCES += crypto/sha256_sse4.cpp
405+
crypto_libdash_crypto_base_a_SOURCES += crypto/sha256_sse4.cpp
400406
endif
401407

402408
crypto_libbitcoin_crypto_sse41_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)
403409
crypto_libbitcoin_crypto_sse41_a_CPPFLAGS = $(AM_CPPFLAGS)
404-
if ENABLE_SSE41
405410
crypto_libbitcoin_crypto_sse41_a_CXXFLAGS += $(SSE41_CXXFLAGS)
406411
crypto_libbitcoin_crypto_sse41_a_CPPFLAGS += -DENABLE_SSE41
407-
endif
408412
crypto_libbitcoin_crypto_sse41_a_SOURCES = crypto/sha256_sse41.cpp
409413

410414
crypto_libbitcoin_crypto_avx2_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)
411415
crypto_libbitcoin_crypto_avx2_a_CPPFLAGS = $(AM_CPPFLAGS)
412-
if ENABLE_AVX2
413416
crypto_libbitcoin_crypto_avx2_a_CXXFLAGS += $(AVX2_CXXFLAGS)
414417
crypto_libbitcoin_crypto_avx2_a_CPPFLAGS += -DENABLE_AVX2
415-
endif
416418
crypto_libbitcoin_crypto_avx2_a_SOURCES = crypto/sha256_avx2.cpp
417419

418420
# x11
@@ -568,8 +570,6 @@ dashd_LDADD = \
568570
$(LIBBITCOIN_ZMQ) \
569571
$(LIBBITCOIN_CONSENSUS) \
570572
$(LIBBITCOIN_CRYPTO) \
571-
$(LIBBITCOIN_CRYPTO_SSE41) \
572-
$(LIBBITCOIN_CRYPTO_AVX2) \
573573
$(LIBLEVELDB) \
574574
$(LIBLEVELDB_SSE42) \
575575
$(LIBMEMENV) \
@@ -591,9 +591,7 @@ dash_cli_LDADD = \
591591
$(LIBBITCOIN_CLI) \
592592
$(LIBUNIVALUE) \
593593
$(LIBBITCOIN_UTIL) \
594-
$(LIBBITCOIN_CRYPTO) \
595-
$(LIBBITCOIN_CRYPTO_SSE41) \
596-
$(LIBBITCOIN_CRYPTO_AVX2)
594+
$(LIBBITCOIN_CRYPTO)
597595
dash_cli_LDADD += $(BACKTRACE_LIB) $(BOOST_LIBS) $(SSL_LIBS) $(CRYPTO_LIBS) $(EVENT_LIBS) $(BLS_LIBS)
598596
#
599597

@@ -613,8 +611,6 @@ dash_tx_LDADD = \
613611
$(LIBBITCOIN_UTIL) \
614612
$(LIBBITCOIN_CONSENSUS) \
615613
$(LIBBITCOIN_CRYPTO) \
616-
$(LIBBITCOIN_CRYPTO_SSE41) \
617-
$(LIBBITCOIN_CRYPTO_AVX2) \
618614
$(LIBSECP256K1)
619615

620616
dash_tx_LDADD += $(BACKTRACE_LIB) $(BOOST_LIBS) $(CRYPTO_LIBS) $(BLS_LIBS)
@@ -623,7 +619,7 @@ dash_tx_LDADD += $(BACKTRACE_LIB) $(BOOST_LIBS) $(CRYPTO_LIBS) $(BLS_LIBS)
623619
# dashconsensus library #
624620
if BUILD_BITCOIN_LIBS
625621
include_HEADERS = script/dashconsensus.h
626-
libdashconsensus_la_SOURCES = support/cleanse.cpp $(crypto_libdash_crypto_a_SOURCES) $(libdash_consensus_a_SOURCES)
622+
libdashconsensus_la_SOURCES = support/cleanse.cpp $(crypto_libdash_crypto_base_a_SOURCES) $(libdash_consensus_a_SOURCES)
627623

628624
if GLIBC_BACK_COMPAT
629625
libdashconsensus_la_SOURCES += compat/glibc_compat.cpp

src/Makefile.bench.include

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,6 @@ bench_bench_dash_LDADD = \
4646
$(LIBBITCOIN_UTIL) \
4747
$(LIBBITCOIN_CONSENSUS) \
4848
$(LIBBITCOIN_CRYPTO) \
49-
$(LIBBITCOIN_CRYPTO_SSE41) \
50-
$(LIBBITCOIN_CRYPTO_AVX2) \
5149
$(LIBLEVELDB) \
5250
$(LIBLEVELDB_SSE42) \
5351
$(LIBMEMENV) \

src/Makefile.qt.include

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -647,7 +647,7 @@ endif
647647
if ENABLE_ZMQ
648648
qt_dash_qt_LDADD += $(LIBBITCOIN_ZMQ) $(ZMQ_LIBS)
649649
endif
650-
qt_dash_qt_LDADD += $(LIBBITCOIN_CLI) $(LIBBITCOIN_COMMON) $(LIBBITCOIN_UTIL) $(LIBBITCOIN_CONSENSUS) $(LIBBITCOIN_CRYPTO) $(LIBBITCOIN_CRYPTO_SSE41) $(LIBBITCOIN_CRYPTO_AVX2) $(LIBUNIVALUE) $(LIBLEVELDB) $(LIBLEVELDB_SSE42) $(LIBMEMENV) \
650+
qt_dash_qt_LDADD += $(LIBBITCOIN_CLI) $(LIBBITCOIN_COMMON) $(LIBBITCOIN_UTIL) $(LIBBITCOIN_CONSENSUS) $(LIBBITCOIN_CRYPTO) $(LIBUNIVALUE) $(LIBLEVELDB) $(LIBLEVELDB_SSE42) $(LIBMEMENV) \
651651
$(BACKTRACE_LIB) $(BOOST_LIBS) $(QT_LIBS) $(QT_DBUS_LIBS) $(QR_LIBS) $(PROTOBUF_LIBS) $(BDB_LIBS) $(SSL_LIBS) $(CRYPTO_LIBS) $(MINIUPNPC_LIBS) $(LIBSECP256K1) \
652652
$(EVENT_PTHREADS_LIBS) $(EVENT_LIBS) $(BLS_LIBS)
653653
qt_dash_qt_LDFLAGS = $(LDFLAGS_WRAP_EXCEPTIONS) $(RELDFLAGS) $(AM_LDFLAGS) $(QT_LDFLAGS) $(LIBTOOL_APP_LDFLAGS)

src/Makefile.qttest.include

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ endif
6060
if ENABLE_ZMQ
6161
qt_test_test_dash_qt_LDADD += $(LIBBITCOIN_ZMQ) $(ZMQ_LIBS)
6262
endif
63-
qt_test_test_dash_qt_LDADD += $(LIBBITCOIN_CLI) $(LIBBITCOIN_COMMON) $(LIBBITCOIN_UTIL) $(LIBBITCOIN_CONSENSUS) $(LIBBITCOIN_CRYPTO) $(LIBBITCOIN_CRYPTO_SSE41) $(LIBBITCOIN_CRYPTO_AVX2) $(LIBUNIVALUE) $(LIBLEVELDB) \
63+
qt_test_test_dash_qt_LDADD += $(LIBBITCOIN_CLI) $(LIBBITCOIN_COMMON) $(LIBBITCOIN_UTIL) $(LIBBITCOIN_CONSENSUS) $(LIBBITCOIN_CRYPTO) $(LIBUNIVALUE) $(LIBLEVELDB) \
6464
$(LIBLEVELDB_SSE42) $(LIBMEMENV) $(BACKTRACE_LIB) $(BOOST_LIBS) $(QT_DBUS_LIBS) $(QT_TEST_LIBS) $(QT_LIBS) \
6565
$(QR_LIBS) $(PROTOBUF_LIBS) $(BDB_LIBS) $(SSL_LIBS) $(CRYPTO_LIBS) $(MINIUPNPC_LIBS) $(LIBSECP256K1) \
6666
$(EVENT_PTHREADS_LIBS) $(EVENT_LIBS) $(BLS_LIBS)

src/Makefile.test.include

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ test_test_dash_LDADD =
114114
if ENABLE_WALLET
115115
test_test_dash_LDADD += $(LIBBITCOIN_WALLET)
116116
endif
117-
test_test_dash_LDADD += $(LIBBITCOIN_SERVER) $(LIBBITCOIN_CLI) $(LIBBITCOIN_COMMON) $(LIBBITCOIN_UTIL) $(LIBBITCOIN_CONSENSUS) $(LIBBITCOIN_CRYPTO) $(LIBBITCOIN_CRYPTO_SSE41) $(LIBBITCOIN_CRYPTO_AVX2) $(LIBUNIVALUE) \
117+
test_test_dash_LDADD += $(LIBBITCOIN_SERVER) $(LIBBITCOIN_CLI) $(LIBBITCOIN_COMMON) $(LIBBITCOIN_UTIL) $(LIBBITCOIN_CONSENSUS) $(LIBBITCOIN_CRYPTO) $(LIBUNIVALUE) \
118118
$(LIBLEVELDB) $(LIBLEVELDB_SSE42) $(LIBMEMENV) $(BACKTRACE_LIB) $(BOOST_LIBS) $(BOOST_UNIT_TEST_FRAMEWORK_LIB) $(LIBSECP256K1) $(EVENT_LIBS) $(EVENT_PTHREADS_LIBS)
119119
test_test_dash_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)
120120

0 commit comments

Comments
 (0)