From 01ef48759b123cd8ccd4a85814413f9f5d7970ec Mon Sep 17 00:00:00 2001 From: Bertrand Jacquin Date: Sat, 21 Jan 2023 15:54:54 +0000 Subject: net-p2p/dogecoin: add compatibility with boost 1.81.0 --- net-p2p/dogecoin/dogecoin-1.14.6.ebuild | 5 ++ .../dogecoin/files/1.14.6-Remove-Q_FOREACH.patch | 57 ++++++++++++++++++++++ .../dogecoin/files/1.14.6-test-include-deque.patch | 42 ++++++++++++++++ 3 files changed, 104 insertions(+) create mode 100644 net-p2p/dogecoin/files/1.14.6-Remove-Q_FOREACH.patch create mode 100644 net-p2p/dogecoin/files/1.14.6-test-include-deque.patch (limited to 'net-p2p/dogecoin') diff --git a/net-p2p/dogecoin/dogecoin-1.14.6.ebuild b/net-p2p/dogecoin/dogecoin-1.14.6.ebuild index 468bec09..95fa4031 100644 --- a/net-p2p/dogecoin/dogecoin-1.14.6.ebuild +++ b/net-p2p/dogecoin/dogecoin-1.14.6.ebuild @@ -35,6 +35,11 @@ RDEPEND=" DEPEND="${RDEPEND} qt5? ( dev-qt/linguist-tools:5 )" +PATCHES=( + "${FILESDIR}/${PV}-test-include-deque.patch" + "${FILESDIR}/${PV}-Remove-Q_FOREACH.patch" +) + src_prepare () { default diff --git a/net-p2p/dogecoin/files/1.14.6-Remove-Q_FOREACH.patch b/net-p2p/dogecoin/files/1.14.6-Remove-Q_FOREACH.patch new file mode 100644 index 00000000..e585b2df --- /dev/null +++ b/net-p2p/dogecoin/files/1.14.6-Remove-Q_FOREACH.patch @@ -0,0 +1,57 @@ +From 728369efbf1072ae1673b9bfdeb9a602654201c1 Mon Sep 17 00:00:00 2001 +From: Bertrand Jacquin +Date: Sat, 21 Jan 2023 02:16:48 +0000 +Subject: [PATCH] Remove Q_FOREACH + +dogecoin fails to build with qt 5.15.8: + + x86_64-pc-linux-gnu-g++ -std=c++11 -DHAVE_CONFIG_H -I. -I../src/config -I. -I./obj -I/usr/include/db5.3/ -pthread -I/usr/include -I./leveldb/include -I./leveldb/helpers/memenv -I./secp256k1/include -I./qt -I./qt -I./qt/forms -I./qt/forms -DQT_NO_KEYWORDS -I/usr/include/qt5/QtCore -I/usr/include/qt5 -I/usr/include/qt5/QtGui -DQT_NETWORK_LIB -I/usr/include/qt5/QtNetwork -I/usr/include/qt5/QtWidgets -DQT_PRINTSUPPORT_LIB -I/usr/include/qt5/QtPrintSupport -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_DBUS_LIB -I/usr/include/qt5/QtDBus -I/usr/include/qt5 -DQT_CORE_LIB -I/usr/include/qt5/QtCore -I/usr/include/db5.3 -DHAVE_BUILD_INFO -D__STDC_FORMAT_MACROS -fPIC -march=native -O2 -pipe -fomit-frame-pointer -c -o qt/libdogecoinqt_a-paymentserver.o `test -f 'qt/paymentserver.cpp' || echo './'`qt/paymentserver.cpp + qt/paymentserver.cpp:556:70: error: macro "Q_FOREACH_IMPL" passed 4 arguments, but takes just 3 + 556 | Q_FOREACH(const PAIRTYPE(CScript, CAmount)& sendingTo, sendingTos) { + | ^ + In file included from /usr/include/qt5/QtCore/qatomic.h:41, + from /usr/include/qt5/QtCore/qrefcount.h:43, + from /usr/include/qt5/QtCore/qbytearray.h:44, + from /usr/include/qt5/QtCore/QByteArray:1, + from qt/paymentrequestplus.h:17, + from qt/paymentserver.h:35, + from qt/paymentserver.cpp:6: +--- + src/qt/paymentserver.cpp | 2 +- + src/qt/transactiondesc.cpp | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/qt/paymentserver.cpp b/src/qt/paymentserver.cpp +index d894745ac5f3..2278c695a51a 100644 +--- a/src/qt/paymentserver.cpp ++++ b/src/qt/paymentserver.cpp +@@ -553,7 +553,7 @@ bool PaymentServer::processPaymentRequest(const PaymentRequestPlus& request, Sen + QList > sendingTos = request.getPayTo(); + QStringList addresses; + +- Q_FOREACH(const PAIRTYPE(CScript, CAmount)& sendingTo, sendingTos) { ++ for (const PAIRTYPE(CScript, CAmount)& sendingTo : sendingTos) { + // Extract and check destination addresses + CTxDestination dest; + if (ExtractDestination(sendingTo.first, dest)) { +diff --git a/src/qt/transactiondesc.cpp b/src/qt/transactiondesc.cpp +index 00b83e872194..f76525f16403 100644 +--- a/src/qt/transactiondesc.cpp ++++ b/src/qt/transactiondesc.cpp +@@ -237,14 +237,14 @@ QString TransactionDesc::toHTML(CWallet *wallet, CWalletTx &wtx, TransactionReco + strHTML += "" + tr("Output index") + ": " + QString::number(rec->getOutputIndex()) + "
"; + + // Message from normal bitcoin:URI (bitcoin:123...?message=example) +- Q_FOREACH (const PAIRTYPE(std::string, std::string)& r, wtx.vOrderForm) ++ for (const PAIRTYPE(std::string, std::string)& r : wtx.vOrderForm) + if (r.first == "Message") + strHTML += "
" + tr("Message") + ":
" + GUIUtil::HtmlEscape(r.second, true) + "
"; + + // + // PaymentRequest info: + // +- Q_FOREACH (const PAIRTYPE(std::string, std::string)& r, wtx.vOrderForm) ++ for (const PAIRTYPE(std::string, std::string)& r : wtx.vOrderForm) + { + if (r.first == "PaymentRequest") + { diff --git a/net-p2p/dogecoin/files/1.14.6-test-include-deque.patch b/net-p2p/dogecoin/files/1.14.6-test-include-deque.patch new file mode 100644 index 00000000..1cb66f83 --- /dev/null +++ b/net-p2p/dogecoin/files/1.14.6-test-include-deque.patch @@ -0,0 +1,42 @@ +From 567cbb9f1bd7ae8d37a3fd7adc2d903eb23f1506 Mon Sep 17 00:00:00 2001 +From: Bertrand Jacquin +Date: Sat, 21 Jan 2023 01:20:54 +0000 +Subject: [PATCH] test: include deque +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +boost 1.81.0 requires deque to be included directly: + + x86_64-pc-linux-gnu-g++ -std=c++11 -DHAVE_CONFIG_H -I. -I../src/config -I. -I./obj -I/usr/include/db5.3/ -pthread -I/usr/include -I./leveldb/include -I./leveldb/helpers/memenv -I./secp256k1/include -I./test/ -DBOOST_TEST_DYN_LINK -I/usr/include/db5.3 -DHAVE_BUILD_INFO -D__STDC_FORMAT_MACROS -march=native -O2 -pipe -fomit-frame-pointer -c -o test/test_dogecoin-cuckoocache_tests.o `test -f 'test/cuckoocache_tests.cpp' || echo './'`test/cuckoocache_tests.cpp +test/cuckoocache_tests.cpp: In function ‘void cuckoocache_tests::test_cache_generations()’: +test/cuckoocache_tests.cpp:359:10: error: ‘deque’ is not a member of ‘std’ + 359 | std::deque last_few; + | ^~~~~ + test/cuckoocache_tests.cpp:9:1: note: ‘std::deque’ is defined in header ‘’; did you forget to ‘#include ’? + 8 | #include + +++ |+#include + 9 | #include + test/cuckoocache_tests.cpp:359:30: error: expected primary-expression before ‘>’ token + 359 | std::deque last_few; + | ^ + test/cuckoocache_tests.cpp:359:32: error: ‘last_few’ was not declared in this scope + 359 | std::deque last_few; + | ^~~~~~~~ + make[2]: *** [Makefile:9046: test/test_dogecoin-cuckoocache_tests.o] Error 1 +--- + src/test/cuckoocache_tests.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/test/cuckoocache_tests.cpp b/src/test/cuckoocache_tests.cpp +index 00446aa11e13..e7c305341fae 100644 +--- a/src/test/cuckoocache_tests.cpp ++++ b/src/test/cuckoocache_tests.cpp +@@ -6,6 +6,7 @@ + #include "test/test_bitcoin.h" + #include "random.h" + #include ++#include + #include + + -- cgit v1.2.3