diff --git a/net-p2p/qtum/Makefile b/net-p2p/qtum/Makefile index e31f3c0f2235..9608cb44b120 100644 --- a/net-p2p/qtum/Makefile +++ b/net-p2p/qtum/Makefile @@ -2,9 +2,8 @@ # $FreeBSD$ PORTNAME= qtum -PORTVERSION= 0.18.0 +PORTVERSION= 0.18.1 DISTVERSIONPREFIX= mainnet-ignition-v -PORTREVISION= 1 CATEGORIES= net-p2p finance MAINTAINER= vd@FreeBSD.org @@ -18,6 +17,7 @@ BUILD_DEPENDS= libzmq4>0:net/libzmq4 RUN_DEPENDS= libzmq4>0:net/libzmq4 LIB_DEPENDS= libboost_date_time.so:devel/boost-libs \ libevent.so:devel/libevent \ + libgmp.so:math/gmp \ libminiupnpc.so:net/miniupnpc \ libprotobuf.so:devel/protobuf \ libqrencode.so:graphics/libqrencode @@ -25,8 +25,10 @@ LIB_DEPENDS= libboost_date_time.so:devel/boost-libs \ USES= autoreconf bdb:5+ compiler:c++14-lang gmake libtool pkgconfig qt:5 ssl GNU_CONFIGURE= yes -CONFIGURE_ENV= BDB_CFLAGS="-I${BDB_INCLUDE_DIR}" \ - BDB_LIBS="-L${BDB_LIB_DIR} -l${BDB_LIB_CXX_NAME}" +CONFIGURE_ENV+= BDB_CFLAGS="-I${BDB_INCLUDE_DIR}" \ + BDB_LIBS="-L${BDB_LIB_DIR} -l${BDB_LIB_CXX_NAME}" \ + CPPFLAGS="-I${LOCALBASE}/include" \ + LDFLAGS="-L${LOCALBASE}/lib" # * Man pages have not been adjusted after cloning the Bitcoin code base. # They are the old Bitcoin man pages, so do not install them. # * --with-incompatible-bdb is required in order to use bdb-5. @@ -42,7 +44,9 @@ CONFIGURE_ARGS= --disable-man \ USE_QT= buildtools core dbus gui linguisttools network testlib widgets USE_GITHUB= yes GH_TUPLE= qtumproject:qtum:${DISTVERSIONPREFIX}${PORTVERSION} \ - qtumproject:cpp-eth-qtum:d6081ecc98e3c5f4701363:cppeth/src/cpp-ethereum + qtumproject:cpp-eth-qtum:ac506e6120fc05d3d823d4:cppeth1/src/cpp-ethereum \ + chfast:ethash:67a3216a5494834f7c221df93b079dac4:cppeth2/src/cpp-ethereum/ethash \ + ethereum:evmc:bf7064dca5cbbda4def8c2548d0d7a040:cppeth3/src/cpp-ethereum/evmc .include diff --git a/net-p2p/qtum/distinfo b/net-p2p/qtum/distinfo index 5191b75c8acf..18fdf81fe0f2 100644 --- a/net-p2p/qtum/distinfo +++ b/net-p2p/qtum/distinfo @@ -1,5 +1,9 @@ -TIMESTAMP = 1566058704 -SHA256 (qtumproject-qtum-mainnet-ignition-v0.18.0_GH0.tar.gz) = 59c5746c55ef39cfe975ae9aaf6a51effa79ab5e3d6e702e14a57f75e33ccd95 -SIZE (qtumproject-qtum-mainnet-ignition-v0.18.0_GH0.tar.gz) = 12519993 -SHA256 (qtumproject-cpp-eth-qtum-d6081ecc98e3c5f4701363_GH0.tar.gz) = 62c858543510aaf656ce0a247e26fbce4a9b11d1fa424f40e9ff0fdc822b4b34 -SIZE (qtumproject-cpp-eth-qtum-d6081ecc98e3c5f4701363_GH0.tar.gz) = 1114149 +TIMESTAMP = 1569429507 +SHA256 (qtumproject-qtum-mainnet-ignition-v0.18.1_GH0.tar.gz) = bad156843b9dc7ae61ffba527067893b7192bb873841381f26547a318d3be638 +SIZE (qtumproject-qtum-mainnet-ignition-v0.18.1_GH0.tar.gz) = 12677556 +SHA256 (qtumproject-cpp-eth-qtum-ac506e6120fc05d3d823d4_GH0.tar.gz) = b632653140f334f775430cd3d09a2b04a526a5a89c9771d3754baa545ffa264e +SIZE (qtumproject-cpp-eth-qtum-ac506e6120fc05d3d823d4_GH0.tar.gz) = 1036840 +SHA256 (chfast-ethash-67a3216a5494834f7c221df93b079dac4_GH0.tar.gz) = 6c3f996b488844d70f1d4a0234cee5f93e715a3debcb626bdb3778c241bc1860 +SIZE (chfast-ethash-67a3216a5494834f7c221df93b079dac4_GH0.tar.gz) = 95929 +SHA256 (ethereum-evmc-bf7064dca5cbbda4def8c2548d0d7a040_GH0.tar.gz) = 881c99b3093978f3b03811d318373eea04ce91092e1f8585eaa4bb82c41b81b3 +SIZE (ethereum-evmc-bf7064dca5cbbda4def8c2548d0d7a040_GH0.tar.gz) = 68126 diff --git a/net-p2p/qtum/files/patch-src_Makefile.am b/net-p2p/qtum/files/patch-src_Makefile.am new file mode 100644 index 000000000000..dfd446a4666a --- /dev/null +++ b/net-p2p/qtum/files/patch-src_Makefile.am @@ -0,0 +1,14 @@ +--- src/Makefile.am.orig 2019-09-18 14:02:05 UTC ++++ src/Makefile.am +@@ -19,9 +19,8 @@ else + LIBUNIVALUE = $(UNIVALUE_LIBS) + endif + +-BITCOIN_INCLUDES=-I$(builddir) $(BDB_CPPFLAGS) $(BOOST_CPPFLAGS) $(LEVELDB_CPPFLAGS) $(CRYPTO_CFLAGS) $(SSL_CFLAGS) -I$(srcdir)/cpp-ethereum/utils +- +-BITCOIN_INCLUDES += -I$(srcdir)/secp256k1/include ++BITCOIN_INCLUDES= -I$(srcdir)/secp256k1/include ++BITCOIN_INCLUDES += -I$(builddir) $(BDB_CPPFLAGS) $(BOOST_CPPFLAGS) $(LEVELDB_CPPFLAGS) $(CRYPTO_CFLAGS) $(SSL_CFLAGS) -I$(srcdir)/cpp-ethereum/utils + BITCOIN_INCLUDES += -I$(srcdir)/libff/libff + BITCOIN_INCLUDES += -I$(srcdir)/libff + BITCOIN_INCLUDES += $(UNIVALUE_CFLAGS) diff --git a/net-p2p/qtum/files/patch-src__cpp-ethereum__libethash__endian.h b/net-p2p/qtum/files/patch-src__cpp-ethereum__libethash__endian.h deleted file mode 100644 index b88bce891089..000000000000 --- a/net-p2p/qtum/files/patch-src__cpp-ethereum__libethash__endian.h +++ /dev/null @@ -1,36 +0,0 @@ ---- src/cpp-ethereum/libethash/endian.h.orig 2018-07-06 00:22:11.000000000 +0200 -+++ src/cpp-ethereum/libethash/endian.h 2019-02-07 09:09:17.097747000 +0100 -@@ -55,20 +55,20 @@ - - #define fix_endian32(dst_, src_) dst_ = ethash_swap_u32(src_) - #define fix_endian32_same(val_) val_ = ethash_swap_u32(val_) --#define fix_endian64(dst_, src_) dst_ = ethash_swap_u64(src_ -+#define fix_endian64(dst_, src_) dst_ = ethash_swap_u64(src_) - #define fix_endian64_same(val_) val_ = ethash_swap_u64(val_) --#define fix_endian_arr32(arr_, size_) \ -- do { \ -- for (unsigned i_ = 0; i_ < (size_), ++i_) { \ -- arr_[i_] = ethash_swap_u32(arr_[i_]); \ -- } \ -- while (0) --#define fix_endian_arr64(arr_, size_) \ -- do { \ -- for (unsigned i_ = 0; i_ < (size_), ++i_) { \ -- arr_[i_] = ethash_swap_u64(arr_[i_]); \ -- } \ -- while (0) \ -+#define fix_endian_arr32(arr_, size_) \ -+ do { \ -+ for (unsigned i_ = 0; i_ < (size_); ++i_) { \ -+ (arr_)[i_] = ethash_swap_u32((arr_)[i_]); \ -+ } \ -+ } while (0) -+#define fix_endian_arr64(arr_, size_) \ -+ do { \ -+ for (unsigned i_ = 0; i_ < (size_); ++i_) { \ -+ (arr_)[i_] = ethash_swap_u64((arr_)[i_]); \ -+ } \ -+ } while (0) - - #else - # error "endian not supported" diff --git a/net-p2p/qtum/files/patch-src__cpp-ethereum__libethash__internal.c b/net-p2p/qtum/files/patch-src__cpp-ethereum__libethash__internal.c deleted file mode 100644 index a551eb3bf4d5..000000000000 --- a/net-p2p/qtum/files/patch-src__cpp-ethereum__libethash__internal.c +++ /dev/null @@ -1,11 +0,0 @@ ---- src/cpp-ethereum/libethash/internal.c.orig 2019-02-07 09:02:35.787808000 +0100 -+++ src/cpp-ethereum/libethash/internal.c 2019-02-07 09:06:32.651306000 +0100 -@@ -328,7 +328,7 @@ - void ethash_quick_hash( - ethash_h256_t* return_hash, - ethash_h256_t const* header_hash, -- uint64_t const nonce, -+ uint64_t nonce, - ethash_h256_t const* mix_hash - ) - { diff --git a/net-p2p/qtum/files/patch-src_cpp-ethereum_ethash_lib_ethash_endianness.hpp b/net-p2p/qtum/files/patch-src_cpp-ethereum_ethash_lib_ethash_endianness.hpp new file mode 100644 index 000000000000..ce1153dfd6bc --- /dev/null +++ b/net-p2p/qtum/files/patch-src_cpp-ethereum_ethash_lib_ethash_endianness.hpp @@ -0,0 +1,11 @@ +--- src/cpp-ethereum/ethash/lib/ethash/endianness.hpp.orig 2018-12-14 16:19:59 UTC ++++ src/cpp-ethereum/ethash/lib/ethash/endianness.hpp +@@ -24,7 +24,7 @@ + #define __BIG_ENDIAN 4321 + #define __BYTE_ORDER __LITTLE_ENDIAN + +-#elif __APPLE__ ++#elif __APPLE__ || __FreeBSD__ + + #include + diff --git a/net-p2p/qtum/files/patch-src_cpp-ethereum_ethash_lib_ethash_keccak.c b/net-p2p/qtum/files/patch-src_cpp-ethereum_ethash_lib_ethash_keccak.c new file mode 100644 index 000000000000..997395bec572 --- /dev/null +++ b/net-p2p/qtum/files/patch-src_cpp-ethereum_ethash_lib_ethash_keccak.c @@ -0,0 +1,11 @@ +--- src/cpp-ethereum/ethash/lib/ethash/keccak.c.orig 2018-12-14 16:19:59 UTC ++++ src/cpp-ethereum/ethash/lib/ethash/keccak.c +@@ -13,7 +13,7 @@ + #define __LITTLE_ENDIAN 1234 + #define __BIG_ENDIAN 4321 + #define __BYTE_ORDER __LITTLE_ENDIAN +-#elif __APPLE__ ++#elif __APPLE__ || __FreeBSD__ + #include + #else + #include diff --git a/net-p2p/qtum/files/patch-src_cpp-ethereum_libaleth-interpreter_VM.cpp b/net-p2p/qtum/files/patch-src_cpp-ethereum_libaleth-interpreter_VM.cpp new file mode 100644 index 000000000000..a54d411af77e --- /dev/null +++ b/net-p2p/qtum/files/patch-src_cpp-ethereum_libaleth-interpreter_VM.cpp @@ -0,0 +1,13 @@ +--- src/cpp-ethereum/libaleth-interpreter/VM.cpp.orig 2019-09-18 13:47:22 UTC ++++ src/cpp-ethereum/libaleth-interpreter/VM.cpp +@@ -20,6 +20,10 @@ + + #include + ++#ifdef MSIZE ++#undef MSIZE ++#endif /* MSIZE */ ++ + namespace + { + void destroy(evmc_instance* _instance) diff --git a/net-p2p/qtum/files/patch-src_cpp-ethereum_libdevcore_Common.cpp b/net-p2p/qtum/files/patch-src_cpp-ethereum_libdevcore_Common.cpp new file mode 100644 index 000000000000..d0f85d2e0b52 --- /dev/null +++ b/net-p2p/qtum/files/patch-src_cpp-ethereum_libdevcore_Common.cpp @@ -0,0 +1,10 @@ +--- src/cpp-ethereum/libdevcore/Common.cpp.orig 2019-09-18 13:47:22 UTC ++++ src/cpp-ethereum/libdevcore/Common.cpp +@@ -24,6 +24,7 @@ + #endif + + #include ++#include /* std::setlocale */ + + using namespace std; + diff --git a/net-p2p/qtum/files/patch-src_cpp-ethereum_libevm_LegacyVM.cpp b/net-p2p/qtum/files/patch-src_cpp-ethereum_libevm_LegacyVM.cpp new file mode 100644 index 000000000000..f1610c00c179 --- /dev/null +++ b/net-p2p/qtum/files/patch-src_cpp-ethereum_libevm_LegacyVM.cpp @@ -0,0 +1,13 @@ +--- src/cpp-ethereum/libevm/LegacyVM.cpp.orig 2019-09-18 13:47:22 UTC ++++ src/cpp-ethereum/libevm/LegacyVM.cpp +@@ -17,6 +17,10 @@ + + #include "LegacyVM.h" + ++#ifdef MSIZE ++#undef MSIZE ++#endif /* MSIZE */ ++ + using namespace std; + using namespace dev; + using namespace dev::eth;