aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorfanquake <fanquake@gmail.com>2022-05-27 14:41:59 +0100
committerfanquake <fanquake@gmail.com>2022-05-27 14:43:34 +0100
commit345457b542b6a980ccfbc868af0970a6f91d1b82 (patch)
tree90b258b70373f0e9a24caa858b84bea3b2bfc635 /src
parent3ba6dd6f4bb42bfab48194ce5f44850b0109451a (diff)
parent44904aa632cbe0722a52f1907ae015f1c6338ddf (diff)
downloadbitcoin-345457b542b6a980ccfbc868af0970a6f91d1b82.tar.xz
Merge bitcoin/bitcoin#25214: multiprocess build fix: ipc/capnp/init.capnp.h: No such file or directory
44904aa632cbe0722a52f1907ae015f1c6338ddf multiprocess build cleanup: comment on manual dependencies (Ryan Ofsky) 6e1c16c1442ab30694a3668b45af5bfd532f1e12 multiprocess build fix: ipc/capnp/init.capnp.h: No such file or directory (Ryan Ofsky) Pull request description: Error was reported by SatoriHoshiAiko in https://github.com/bitcoin/bitcoin/issues/25207 and happens unpredictably because make doesn't always build dependencies in the same order. The source file `src/ipc/capnp/protocol.cpp` includes some generated headers so needs to have an explicit dependency specified in the makefile so the headers will be generated before the file is compiled. #19160 added the explicit dependency, but it was incorrect because it referred to an old file path from before the source file was renamed (`ipc.cpp` -> `protocol.cpp`) ACKs for top commit: hebasto: re-ACK 44904aa632cbe0722a52f1907ae015f1c6338ddf Tree-SHA512: 578ef4ef35a97e9d8d4e6d4edf39e57a32674234bf145e8159268324cb6ba15b420517afc07f6f42bb11a562954ea74af686c3fb92ce178c1fc378421b352531
Diffstat (limited to 'src')
-rw-r--r--src/Makefile.am5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
index 7f82d188f0..96934bde7a 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -330,7 +330,6 @@ obj/build.h: FORCE
"$(abs_top_srcdir)"
libbitcoin_util_a-clientversion.$(OBJEXT): obj/build.h
-ipc/capnp/libbitcoin_ipc_a-ipc.$(OBJEXT): $(libbitcoin_ipc_mpgen_input:=.h)
# server: shared between bitcoind and bitcoin-qt
# Contains code accessing mempool and chain state that is meant to be separated
@@ -1012,6 +1011,10 @@ libbitcoin_ipc_mpgen_input = \
EXTRA_DIST += $(libbitcoin_ipc_mpgen_input)
%.capnp:
+# Explicitly list dependencies on generated headers as described in
+# https://www.gnu.org/software/automake/manual/html_node/Built-Sources-Example.html#Recording-Dependencies-manually
+ipc/capnp/libbitcoin_ipc_a-protocol.$(OBJEXT): $(libbitcoin_ipc_mpgen_input:=.h)
+
if BUILD_MULTIPROCESS
LIBBITCOIN_IPC=libbitcoin_ipc.a
libbitcoin_ipc_a_SOURCES = \