Inline with moving to descriptor (sqlite) wallets by default for 0.23,
this adapts the build system so that a default ./configure
invocation
no-longer fails if BDB isn’t present. Currently, if configure is run
with no options, and no BDB is present, we’ll fail with:
0checking for Berkeley DB C++ headers... no
1configure: error: libdb_cxx headers missing, Bitcoin Core requires this library for BDB wallet support (--without-bdb to disable BDB wallet support)
If descriptor wallets are to be the default, this behaviour no longer
makes sense, as a builder should be able to configure and build, to use
a wallet, without BDB installed, and without passing additional
arguments, i.e --without-bdb
or --with-incompatible-bdb
, to
configure.
With this change, running configure will no-longer fail, but will instead print:
0checking for Berkeley DB C++ headers... no
1configure: WARNING: libdb_cxx headers missing
2configure: WARNING: Bitcoin Core requires this library for BDB (legacy) wallet support
3configure: WARNING: Passing --without-bdb will suppress this warning
4checking for sqlite3 >= 3.7.17... yes
5checking whether to build wallet with support for sqlite... yes