Build and link libzerocash.

This commit is contained in:
Sean Bowe
2016-02-15 15:27:15 -07:00
parent a897db652f
commit e463edc122
3 changed files with 60 additions and 24 deletions

View File

@@ -31,6 +31,7 @@ LIBBITCOIN_CRYPTO=crypto/libbitcoin_crypto.a
LIBBITCOIN_UNIVALUE=univalue/libbitcoin_univalue.a
LIBBITCOINQT=qt/libbitcoinqt.a
LIBSECP256K1=secp256k1/libsecp256k1.la
LIBZEROCASH=libzerocash.a
$(LIBSECP256K1): $(wildcard secp256k1/src/*) $(wildcard secp256k1/include/*)
$(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C $(@D) $(@F)
@@ -43,7 +44,8 @@ EXTRA_LIBRARIES = \
libbitcoin_common.a \
univalue/libbitcoin_univalue.a \
libbitcoin_server.a \
libbitcoin_cli.a
libbitcoin_cli.a \
libzerocash.a
if ENABLE_WALLET
BITCOIN_INCLUDES += $(BDB_CPPFLAGS)
EXTRA_LIBRARIES += libbitcoin_wallet.a
@@ -67,6 +69,27 @@ if BUILD_BITCOIN_UTILS
bin_PROGRAMS += zcash-cli bitcoin-tx
endif
LIBZEROCASH_H = \
zerocash/Address.h \
zerocash/CoinCommitment.h \
zerocash/Coin.h \
zerocash/IncrementalMerkleTree.h \
zerocash/MintTransaction.h \
zerocash/PourInput.h \
zerocash/PourOutput.h \
zerocash/PourProver.h \
zerocash/PourTransaction.h \
zerocash/Zerocash.h \
zerocash/ZerocashParams.h \
zerocash/zerocash_pour_params.hpp \
zerocash/utils/sha256.h \
zerocash/utils/util.h
# zerocash/zerocash_pour_gadget.hpp
# zerocash/zerocash_pour_gadget.tcc
# zerocash/zerocash_pour_ppzksnark.hpp
# zerocash/zerocash_pour_ppzksnark.tcc
.PHONY: FORCE
# bitcoin core #
BITCOIN_CORE_H = \
@@ -202,7 +225,8 @@ libbitcoin_server_a_SOURCES = \
txmempool.cpp \
validationinterface.cpp \
$(JSON_H) \
$(BITCOIN_CORE_H)
$(BITCOIN_CORE_H) \
$(LIBZEROCASH_H)
# wallet: shared between bitcoind and bitcoin-qt, but only linked
# when wallet enabled
@@ -215,7 +239,8 @@ libbitcoin_wallet_a_SOURCES = \
wallet/wallet.cpp \
wallet/wallet_ismine.cpp \
wallet/walletdb.cpp \
$(BITCOIN_CORE_H)
$(BITCOIN_CORE_H) \
$(LIBZEROCASH_H)
# crypto primitives library
crypto_libbitcoin_crypto_a_CPPFLAGS = $(BITCOIN_CONFIG_INCLUDES)
@@ -269,7 +294,8 @@ libbitcoin_common_a_SOURCES = \
script/script_error.cpp \
script/sign.cpp \
script/standard.cpp \
$(BITCOIN_CORE_H)
$(BITCOIN_CORE_H) \
$(LIBZEROCASH_H)
# util: shared between all executables.
# This library *must* be included to make sure that the glibc
@@ -291,7 +317,8 @@ libbitcoin_util_a_SOURCES = \
utilmoneystr.cpp \
utilstrencodings.cpp \
utiltime.cpp \
$(BITCOIN_CORE_H)
$(BITCOIN_CORE_H) \
$(LIBZEROCASH_H)
if GLIBC_BACK_COMPAT
libbitcoin_util_a_SOURCES += compat/glibc_compat.cpp
@@ -301,7 +328,8 @@ endif
libbitcoin_cli_a_CPPFLAGS = $(BITCOIN_INCLUDES)
libbitcoin_cli_a_SOURCES = \
rpcclient.cpp \
$(BITCOIN_CORE_H)
$(BITCOIN_CORE_H) \
$(LIBZEROCASH_H)
nodist_libbitcoin_util_a_SOURCES = $(srcdir)/obj/build.h
#
@@ -321,6 +349,7 @@ zcashd_LDADD = \
$(LIBBITCOIN_UNIVALUE) \
$(LIBBITCOIN_UTIL) \
$(LIBBITCOIN_CRYPTO) \
$(LIBZEROCASH) \
$(LIBLEVELDB) \
$(LIBMEMENV) \
$(LIBSECP256K1)
@@ -335,6 +364,7 @@ zcashd_LDADD += \
$(SSL_LIBS) \
$(CRYPTO_LIBS) \
$(MINIUPNPC_LIBS) \
$(LIBZEROCASH) \
$(LIBZEROCASH_LIBS)
#
@@ -353,6 +383,7 @@ zcash_cli_LDADD = \
$(BOOST_LIBS) \
$(SSL_LIBS) \
$(CRYPTO_LIBS) \
$(LIBZEROCASH) \
$(LIBZEROCASH_LIBS)
#
@@ -372,11 +403,31 @@ bitcoin_tx_LDADD = \
$(LIBBITCOIN_UTIL) \
$(LIBBITCOIN_CRYPTO) \
$(LIBSECP256K1) \
$(LIBZEROCASH) \
$(LIBZEROCASH_LIBS)
bitcoin_tx_LDADD += $(BOOST_LIBS) $(CRYPTO_LIBS)
#
# zerocash protocol primitives #
libzerocash_a_SOURCES = \
zerocash/Address.cpp \
zerocash/CoinCommitment.cpp \
zerocash/Coin.cpp \
zerocash/IncrementalMerkleTree.cpp \
zerocash/MintTransaction.cpp \
zerocash/PourInput.cpp \
zerocash/PourOutput.cpp \
zerocash/PourProver.cpp \
zerocash/PourTransaction.cpp \
zerocash/ZerocashParams.cpp \
zerocash/utils/sha256.cpp \
zerocash/utils/util.cpp
#libzerocash_a_LIBADD = $(LIBZEROCASH_LIBS)
libzerocash_a_CPPFLAGS = -fPIC -DCURVE_ALT_BN128 -DBOOST_SPIRIT_THREADSAFE -DHAVE_BUILD_INFO -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -std=c++11 -pipe -O2 -O0 -g -Wstack-protector -fstack-protector-all -fPIE -fvisibility=hidden -DSTATIC $(BITCOIN_INCLUDES)
#libzerocash_a_CPPFLAGS = -std=c++11 -fPIC -I$(builddir)/obj -DCURVE_ALT_BN128 -DSTATIC $(BITCOIN_INCLUDES)
# bitcoinconsensus library #
if BUILD_BITCOIN_LIBS
include_HEADERS = script/bitcoinconsensus.h

View File

@@ -88,7 +88,7 @@ endif
test_test_bitcoin_SOURCES = $(BITCOIN_TESTS) $(JSON_TEST_FILES) $(RAW_TEST_FILES)
test_test_bitcoin_CPPFLAGS = $(BITCOIN_INCLUDES) -I$(builddir)/test/ $(TESTDEFS)
test_test_bitcoin_LDADD = $(LIBBITCOIN_SERVER) $(LIBBITCOIN_CLI) $(LIBBITCOIN_COMMON) $(LIBBITCOIN_UTIL) $(LIBBITCOIN_CRYPTO) $(LIBBITCOIN_UNIVALUE) $(LIBLEVELDB) $(LIBMEMENV) \
$(BOOST_LIBS) $(BOOST_UNIT_TEST_FRAMEWORK_LIB) $(LIBSECP256K1) $(LIBZEROCASH_LIBS)
$(BOOST_LIBS) $(BOOST_UNIT_TEST_FRAMEWORK_LIB) $(LIBSECP256K1) $(LIBZEROCASH) $(LIBZEROCASH_LIBS)
if ENABLE_WALLET
test_test_bitcoin_LDADD += $(LIBBITCOIN_WALLET)
endif