From 876420f04e4d29ed16c2e43774fab6e000526dfa Mon Sep 17 00:00:00 2001 From: Yuriy Taraday Date: Mon, 12 Mar 2018 04:06:06 +0400 Subject: [PATCH] bitcoin-unlimited: fix build with boost 1.66 Use part of fix for mainline bitcoin: https://github.com/bitcoin/bitcoin/commit/1ec0c0a01c316146434642ab2f14a7367306dbec Also enable parallel builds for speed. --- .../bitcoin-unlimited-const-comparators.patch | 38 +++++++++++++++++++ .../altcoins/bitcoin-unlimited.nix | 5 +++ 2 files changed, 43 insertions(+) create mode 100644 pkgs/applications/altcoins/bitcoin-unlimited-const-comparators.patch diff --git a/pkgs/applications/altcoins/bitcoin-unlimited-const-comparators.patch b/pkgs/applications/altcoins/bitcoin-unlimited-const-comparators.patch new file mode 100644 index 00000000000..1b74a48a84a --- /dev/null +++ b/pkgs/applications/altcoins/bitcoin-unlimited-const-comparators.patch @@ -0,0 +1,38 @@ +--- a/src/txmempool.h ++++ b/src/txmempool.h +@@ -204,7 +204,7 @@ + class CompareTxMemPoolEntryByDescendantScore + { + public: +- bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b) ++ bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b) const + { + bool fUseADescendants = UseDescendantScore(a); + bool fUseBDescendants = UseDescendantScore(b); +@@ -226,7 +226,7 @@ + } + + // Calculate which score to use for an entry (avoiding division). +- bool UseDescendantScore(const CTxMemPoolEntry &a) ++ bool UseDescendantScore(const CTxMemPoolEntry &a) const + { + double f1 = (double)a.GetModifiedFee() * a.GetSizeWithDescendants(); + double f2 = (double)a.GetModFeesWithDescendants() * a.GetTxSize(); +@@ -241,7 +241,7 @@ + class CompareTxMemPoolEntryByScore + { + public: +- bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b) ++ bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b) const + { + double f1 = (double)a.GetModifiedFee() * b.GetTxSize(); + double f2 = (double)b.GetModifiedFee() * a.GetTxSize(); +@@ -255,7 +255,7 @@ + class CompareTxMemPoolEntryByEntryTime + { + public: +- bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b) ++ bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b) const + { + return a.GetTime() < b.GetTime(); + } diff --git a/pkgs/applications/altcoins/bitcoin-unlimited.nix b/pkgs/applications/altcoins/bitcoin-unlimited.nix index 9eb1e54b909..23d9e63459a 100644 --- a/pkgs/applications/altcoins/bitcoin-unlimited.nix +++ b/pkgs/applications/altcoins/bitcoin-unlimited.nix @@ -21,8 +21,13 @@ stdenv.mkDerivation rec { miniupnpc utillinux protobuf libevent ] ++ optionals withGui [ qt4 qrencode ]; + patches = [ + ./bitcoin-unlimited-const-comparators.patch + ]; + configureFlags = [ "--with-boost-libdir=${boost.out}/lib" ] ++ optionals withGui [ "--with-gui=qt4" ]; + enableParallelBuilding = true; meta = { description = "Peer-to-peer electronic cash system (Unlimited client)";