dogecoind-1.14.2-r2.ebuild for boost >= 1.74
[portage-squeep] / net-p2p / dogecoind / files / 0002-httpserver-include-deque.patch
diff --git a/net-p2p/dogecoind/files/0002-httpserver-include-deque.patch b/net-p2p/dogecoind/files/0002-httpserver-include-deque.patch
new file mode 100644 (file)
index 0000000..f6e726b
--- /dev/null
@@ -0,0 +1,60 @@
+From 075cc97d089d38df6f2b4767db5290e9d7e995a9 Mon Sep 17 00:00:00 2001
+From: Bertrand Jacquin <bertrand@jacquin.bzh>
+Date: Fri, 24 Jan 2020 20:16:27 +0000
+Subject: [PATCH 2/2] httpserver: include deque
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+It seems gcc 9.2.0 requires deque to be included:
+
+  x86_64-pc-linux-gnu-g++ -std=c++11 -DHAVE_CONFIG_H -I. -I../src/config   -I. -I./obj -I/usr/include/db5.1/ -pthread -I/usr/include -I./leveldb/include -I./leveldb/helpers/memenv   -I./secp256k1/include    -pthread -I/usr/include/db5.1 -DHAVE_BUILD_INFO -D__STDC_FORMAT_MACROS    -march=native -O2 -pipe -fomit-frame-pointer -c -o libdogecoin_server_a-httpserver.o `test -f 'httpserver.cpp' || echo './'`httpserver.cpp
+  httpserver.cpp:71:10: error: ‘deque’ in namespace ‘std’ does not name a template type
+     71 |     std::deque<std::unique_ptr<WorkItem>> queue;
+        |          ^~~~~
+  httpserver.cpp:30:1: note: ‘std::deque’ is defined in header ‘<deque>’; did you forget to ‘#include <deque>’?
+     29 | #include <event2/keyvalq_struct.h>
+    +++ |+#include <deque>
+     30 |
+  httpserver.cpp: In member function ‘bool WorkQueue<WorkItem>::Enqueue(WorkItem*)’:
+  httpserver.cpp:110:13: error: ‘queue’ was not declared in this scope; did you mean ‘Enqueue’?
+    110 |         if (queue.size() >= maxDepth) {
+        |             ^~~~~
+        |             Enqueue
+  httpserver.cpp:113:9: error: ‘queue’ was not declared in this scope; did you mean ‘Enqueue’?
+    113 |         queue.emplace_back(std::unique_ptr<WorkItem>(item));
+        |         ^~~~~
+        |         Enqueue
+  httpserver.cpp: In member function ‘void WorkQueue<WorkItem>::Run()’:
+  httpserver.cpp:125:35: error: ‘queue’ was not declared in this scope; did you mean ‘Enqueue’?
+    125 |                 while (running && queue.empty())
+        |                                   ^~~~~
+        |                                   Enqueue
+  httpserver.cpp:129:31: error: ‘queue’ was not declared in this scope; did you mean ‘Enqueue’?
+    129 |                 i = std::move(queue.front());
+        |                               ^~~~~
+        |                               Enqueue
+  httpserver.cpp: In member function ‘size_t WorkQueue<WorkItem>::Depth()’:
+  httpserver.cpp:154:16: error: ‘queue’ was not declared in this scope; did you mean ‘Enqueue’?
+    154 |         return queue.size();
+        |                ^~~~~
+        |                Enqueue
+---
+ src/httpserver.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/httpserver.cpp b/src/httpserver.cpp
+index dba952730..5c08e676d 100644
+--- a/src/httpserver.cpp
++++ b/src/httpserver.cpp
+@@ -19,6 +19,7 @@
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <signal.h>
++#include <deque>
+ #include <future>
+ #include <event2/event.h>
+-- 
+2.26.2
+