This PR is part of the process separation project.
This PR consists of build changes only. It adds an --enable-multiprocess
autoconf option (off by default and marked experimental), that builds new bitcoin-node
and bitcoin-gui
binaries. These currently function the same as existing bitcoind
and bitcoin-qt
binaries, but are extended in #10102 with IPC features to execute node, wallet, and gui functions in separate processes.
In addition to adding the --enable-multiprocess
config flag, it also adds a depends package and autoconf rules to build with the libmultiprocess library, and it adds new travis configuration to exercise the build code and run functional tests with the new binaries.
The changes in this PR were originally part of #10102 but were moved into #16367 to be able to develop and review the multiprocess build changes independently of the code changes. #16367 was briefly merged and then reverted in #18588. Only change since #16367 has been dropping the native_boost.mk
depends package which was pointed out to be no longer necessary in #16367 (comment) and #18588#pullrequestreview-391765649