From 2c010b9c56f069efad2b2c10bffaef4ed059736e Mon Sep 17 00:00:00 2001 From: fanquake Date: Fri, 15 Jan 2021 10:40:29 +0800 Subject: [PATCH 1/2] add std::atomic include to bitcoin-util.cpp --- src/bitcoin-util.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/bitcoin-util.cpp b/src/bitcoin-util.cpp index b702a68bdf..71b2f02041 100644 --- a/src/bitcoin-util.cpp +++ b/src/bitcoin-util.cpp @@ -25,6 +25,7 @@ #include #include +#include #include #include #include From 54ce4fac80689621dcbcc76169b2b00b179ee743 Mon Sep 17 00:00:00 2001 From: fanquake Date: Fri, 15 Jan 2021 10:54:07 +0800 Subject: [PATCH 2/2] build: improve macro for testing -latomic requirement riscv builds are currently failing because -latomic isn't being linked against, when it is needed: ```bash /home/ubuntu/build/bitcoin/distsrc-riscv64-linux-gnu/src/bitcoin-util.cpp:98: undefined reference to `__atomic_exchange_1' ``` This exteneds our macro to ensure that -latomic is linked against when required. --- build-aux/m4/l_atomic.m4 | 3 +++ 1 file changed, 3 insertions(+) diff --git a/build-aux/m4/l_atomic.m4 b/build-aux/m4/l_atomic.m4 index 75c43f9a92..5201a8cc7c 100644 --- a/build-aux/m4/l_atomic.m4 +++ b/build-aux/m4/l_atomic.m4 @@ -14,6 +14,9 @@ m4_define([_CHECK_ATOMIC_testbody], [[ #include int main() { + std::atomic lock{true}; + std::atomic_exchange(&lock, false); + std::atomic a{}; int64_t v = 5;