summaryrefslogtreecommitdiff
path: root/net-p2p/bitcoin-cli
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-10-24 14:40:32 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-10-24 14:40:32 +0100
commit27f59f8e16510831cc751de1406f71afbf464653 (patch)
tree71463a2ac26fc948615ad34e8101c808c930f76f /net-p2p/bitcoin-cli
parent9c572b23bc56215e9d24d375ddd293982c07dc08 (diff)
gentoo auto-resync : 24:10:2023 - 14:40:32
Diffstat (limited to 'net-p2p/bitcoin-cli')
-rw-r--r--net-p2p/bitcoin-cli/Manifest14
-rw-r--r--net-p2p/bitcoin-cli/bitcoin-cli-0.21.0.ebuild102
-rw-r--r--net-p2p/bitcoin-cli/bitcoin-cli-22.0.ebuild109
-rw-r--r--net-p2p/bitcoin-cli/bitcoin-cli-24.0.1-r1.ebuild81
-rw-r--r--net-p2p/bitcoin-cli/bitcoin-cli-25.1.ebuild2
-rw-r--r--net-p2p/bitcoin-cli/files/24.0.1-gcc13.patch39
-rw-r--r--net-p2p/bitcoin-cli/files/24.0.1-syslibs.patch281
-rw-r--r--net-p2p/bitcoin-cli/metadata.xml3
8 files changed, 3 insertions, 628 deletions
diff --git a/net-p2p/bitcoin-cli/Manifest b/net-p2p/bitcoin-cli/Manifest
index 1c805f2a7ab5..5b2a10bdbe2d 100644
--- a/net-p2p/bitcoin-cli/Manifest
+++ b/net-p2p/bitcoin-cli/Manifest
@@ -1,12 +1,2 @@
-AUX 24.0.1-gcc13.patch 989 BLAKE2B f1af15f550a0d43fb0a80f585bcc507a505e2351062c347cd334276d87b4cae48235ca643291b6473e89aaabdac920927f2d654589ca029141a833882e041bfc SHA512 07cfc8cea84f716d0844010b8f09a3dc700e8b89c9ea98da133a34a8820841cec20c426f53a3dacde4d406a2f34409018bce879b34c0def30770025834b60929
-AUX 24.0.1-syslibs.patch 9037 BLAKE2B fa634a8f18d1f1c32d1c3cb18bdfcafc89838a7f5b3a075a40ad3354d1253f1d637351d2661475eb86110db470a7b29c9cfb6266a7f61623c0865939c9e74453 SHA512 fcf8114174e69c5385058b190fa2c0b0ef105869d5d6a40a3cc6bb8e8ef1518cb8bc1fb7cc3a7ec28f361d91f66e4253420c2b50a0004a2dc0978910254cae3d
-DIST bitcoin-0.21.0.knots20210130.patches.tar.xz 505040 BLAKE2B c8999de4158b8781bba6ad014ae14859f1e0bab3080c59a18910cf7447eb56da4b17a0e1843fdd3669d22636df9e4ddcc4526e4293bfd86dc884983a29a5f76c SHA512 7ee27da3d26be0e93ecddff7bb21ef1746bcdb07f9a2b0ea48065367b4c44391e974e04a21e511c05fca8f55971ab8e3c3ac01a3775cc52a537d9e10966d9871
-DIST bitcoin-22.0.knots20211108.patches.tar.xz 1318256 BLAKE2B d6e56bc0ca1d706e99e7f42d8f335f016335b6bf3637c733d993696872f0a4c655cc58fc0394dfdf9916e13f0d7fbdcebf25fbdc9a165227e3c59133033644c0 SHA512 daab5860b7c7e137b6bf350cdc153e6e19172e49935640d1f6fe1f1be1e4df805b1db7fd30b0f95a560106956adab70cc6282fe933ae9de153cb971dd280f83d
-DIST bitcoin-24.0.1.tar.gz 11412628 BLAKE2B 2a8c83aecd12d8d40305d78ede1f389884ee62cfe4af39a9b416b8887a595f3393d599ebe9ddeb576bba5896923feb7ee45ba32d7d4cb0ce9e6d0ef39ecf83c7 SHA512 de1ddb543429f70b0b55a46500e0bc4807cca1b1655a28f8ab186d6f6e620f8cf82420bbdf412976ffed9bc6d742926b19933429c734edaf7430a4f8c37e1685
-DIST bitcoin-v0.21.0.tar.gz 7533957 BLAKE2B 01247cbb9fca2381a8c08ab1c88c479c640963caef22e4207aab46b05813dbf2a5286ac9e98132fb34db0e9ac6c18c79e45a89de166f5c6d480d8ac6e14ecca2 SHA512 c58187996932b0151432a65885b7e8a7b216fb1ab0576fb7d4b5e9620d957594b05e181153e2e0e50bcd5ce764861ec11019ffbb1095d3e704f441e61ac6a04f
-DIST bitcoin-v22.0.tar.gz 7977783 BLAKE2B ba212037bc8efcfbbbf6340c48ed886c4a5aa93e4a34097eafea39734a6f4e25fa6b174f894655f63c504380d8761657771795bfcc641018bf1f1661deef9321 SHA512 1b4b17360e97f390ae678adb7a239c359d3a1288799710683e26f09fc53341b6fca3211465fa3e4fdee37324d85ec1a31ffd1a3714e969df13441f755fa4b7ad
-EBUILD bitcoin-cli-0.21.0.ebuild 2392 BLAKE2B 814a5a4e662a5d6f4f382535b57137404361a460f8d88130677d574c7ce54926b147a5d3cba2775393f10a41a826b77b3ea612ff599dace61bc1c2eb07511ce7 SHA512 078f07ea656c7db87b4266d188c5394cf45266c40a5ee63fb070b7a3abfd83366df5ca18549ca3b2af5261cdce1cb208a8fc8a232277c7b8e394fc1b6889f95f
-EBUILD bitcoin-cli-22.0.ebuild 2596 BLAKE2B 05c1d22d1b33fdabb77b289591fb8b8fa85f520a8361dbcc648193f476cbd29d3e976d2245b075bb1c62be362d394cfa5bd3ad7e0ac3afae7cefc0787e86a57b SHA512 9522cf5e9543902e609b8022ae657b489014c3d98f6065a0348f0c38aeb0389d12908ff38482cb469c62a8a549419aa687844d28cb2a221ebea03786bb25c761
-EBUILD bitcoin-cli-24.0.1-r1.ebuild 1595 BLAKE2B 3142a527754a203d0b2017a1f3ab2c331a3e662cd17178cdc45291c783b5ba7f3fb1ca4aab05cc1a7fad9d06fb0395c568a431c6db51aede1d28686c036fd5d7 SHA512 bba4a719f3b34542bbda066226eecf3497033f49d61d947e47090dacce1f9d0d5e52628efc42f3776f767b86dd2bc589689714e6a2f8b8ede3a76c4b9c78c20a
-EBUILD bitcoin-cli-25.1.ebuild 375 BLAKE2B 932ed60d6c5f306897c65a51408346077409936410cb84d7f80658bf813d872298d4ac779e64cb98fbf324116d203d20265a0410d95265d23a4f84cf2e0c7513 SHA512 7bb9eb3fcf3eab3fe16edd6819412f9764dbb185af95b8494f4228141fc46f9632b9a16e0f9d191187950e178a903914219c56cd77c25f45e735ed443040d80f
-MISC metadata.xml 794 BLAKE2B d7258cb6e38b7f95f72212b3d67f2a6c4f69b8a94a55d46189b970bca6c56ba23ec44b1c36a6b4bce19ba65be0b8879fd8240a48324c296d72d0d87e52e41568 SHA512 ef417ee4a492db03efa50d88b16b35a1b1768b7b04aaecd8676539572f25b96a427caab6dae9f5568241e5f1eda06159bd9a52b12a9002c0611b349ad2656470
+EBUILD bitcoin-cli-25.1.ebuild 373 BLAKE2B 5da7609dd849bdb9cac2f39886b35653505ecfcc652860fe4a92f2f1391592b8d73a705b9e0a2eda0bd2d50c49d1e5acb9eacb5017298ec2076ef6ab0fb2b5e8 SHA512 274ae5e9e6d8617d367e00943636993dfe07c9b8b8b940ba8a589dd15e957afc4e33cddd68ee7c4b0cd15c00ec0bc7ee2eb99718253c30880c9f78da9807d0be
+MISC metadata.xml 688 BLAKE2B cb000a96069fc03cfdbf6c724a51dcb378b6d1f05bb4b06da065d52af2e71f1293b5cad7ee805871e3d377df6a93f44650059deb1f398e5f54c076713b119e94 SHA512 886f87c7bfc2049959e16f7233f1208649f66d9597e713296c8510081c4db02562df4eae9376e37c4978c7d06f17fdbacbcf6c14d594f40aec6a6b2751a9cc84
diff --git a/net-p2p/bitcoin-cli/bitcoin-cli-0.21.0.ebuild b/net-p2p/bitcoin-cli/bitcoin-cli-0.21.0.ebuild
deleted file mode 100644
index 74c885b4f4dc..000000000000
--- a/net-p2p/bitcoin-cli/bitcoin-cli-0.21.0.ebuild
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools bash-completion-r1
-
-BITCOINCORE_COMMITHASH="95ea54ba089610019a74c1176a2c7c0dba144b1c"
-KNOTS_PV="${PV}.knots20210130"
-KNOTS_P="bitcoin-${KNOTS_PV}"
-
-DESCRIPTION="Command-line JSON-RPC client specifically for interfacing with bitcoind"
-HOMEPAGE="https://bitcoincore.org/ https://bitcoinknots.org/"
-SRC_URI="
- https://github.com/bitcoin/bitcoin/archive/${BITCOINCORE_COMMITHASH}.tar.gz -> bitcoin-v${PV}.tar.gz
- https://bitcoinknots.org/files/$(ver_cut 1-2).x/${KNOTS_PV}/${KNOTS_P}.patches.txz -> ${KNOTS_P}.patches.tar.xz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux"
-IUSE="knots"
-
-DEPEND="
- dev-libs/boost:=
- dev-libs/libevent:=
- >=dev-libs/univalue-1.0.4:=
-"
-RDEPEND="${DEPEND}"
-BDEPEND="
- >=sys-devel/autoconf-2.69
- >=sys-devel/automake-1.13
-"
-
-DOCS=(
- doc/release-notes.md
-)
-
-S="${WORKDIR}/bitcoin-${BITCOINCORE_COMMITHASH}"
-
-pkg_pretend() {
- if use knots; then
- elog "You are building ${PN} from Bitcoin Knots."
- elog "For more information, see:"
- elog "https://bitcoinknots.org/files/0.21.x/${KNOTS_PV}/${KNOTS_P}.desc.html"
- else
- elog "You are building ${PN} from Bitcoin Core."
- elog "For more information, see:"
- elog "https://bitcoincore.org/en/2021/01/14/release-${PV}/"
- fi
-}
-
-src_prepare() {
- local knots_patchdir="${WORKDIR}/${KNOTS_P}.patches/"
-
- eapply "${knots_patchdir}/${KNOTS_P}.syslibs.patch"
-
- if use knots; then
- eapply "${knots_patchdir}/${KNOTS_P}.f.patch"
- eapply "${knots_patchdir}/${KNOTS_P}.branding.patch"
- eapply "${knots_patchdir}/${KNOTS_P}.ts.patch"
- fi
-
- eapply_user
-
- echo '#!/bin/true' >share/genbuild.sh || die
- mkdir -p src/obj || die
- echo "#define BUILD_SUFFIX gentoo${PVR#${PV}}" >src/obj/build.h || die
-
- eautoreconf
- rm -r src/leveldb src/secp256k1 || die
-}
-
-src_configure() {
- local my_econf=(
- --disable-asm
- --without-qtdbus
- --without-qrencode
- --without-miniupnpc
- --disable-tests
- --disable-wallet
- --disable-zmq
- --enable-util-cli
- --disable-util-tx
- --disable-util-wallet
- --disable-bench
- --without-libs
- --without-daemon
- --without-gui
- --disable-fuzz
- --disable-ccache
- --disable-static
- --with-system-univalue
- )
- econf "${my_econf[@]}"
-}
-
-src_install() {
- default
-
- newbashcomp contrib/bitcoin-cli.bash-completion ${PN}
-}
diff --git a/net-p2p/bitcoin-cli/bitcoin-cli-22.0.ebuild b/net-p2p/bitcoin-cli/bitcoin-cli-22.0.ebuild
deleted file mode 100644
index e3f03d6a8843..000000000000
--- a/net-p2p/bitcoin-cli/bitcoin-cli-22.0.ebuild
+++ /dev/null
@@ -1,109 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools bash-completion-r1 flag-o-matic
-
-BITCOINCORE_COMMITHASH="a0988140b71485ad12c3c3a4a9573f7c21b1eff8"
-KNOTS_PV="${PV}.knots20211108"
-KNOTS_P="bitcoin-${KNOTS_PV}"
-
-DESCRIPTION="Command-line JSON-RPC client specifically for interfacing with bitcoind"
-HOMEPAGE="https://bitcoincore.org/ https://bitcoinknots.org/"
-SRC_URI="
- https://github.com/bitcoin/bitcoin/archive/${BITCOINCORE_COMMITHASH}.tar.gz -> bitcoin-v${PV}.tar.gz
- https://bitcoinknots.org/files/$(ver_cut 1).x/${KNOTS_PV}/${KNOTS_P}.patches.txz -> ${KNOTS_P}.patches.tar.xz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux"
-IUSE="knots"
-
-RDEPEND="
- dev-libs/boost:=
- dev-libs/libevent:=
- >=dev-libs/univalue-1.0.4:=
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- >=sys-devel/automake-1.13
- || ( >=sys-devel/gcc-7[cxx] >=sys-devel/clang-5 )
-"
-
-DOCS=(
- doc/release-notes.md
-)
-
-S="${WORKDIR}/bitcoin-${BITCOINCORE_COMMITHASH}"
-
-pkg_pretend() {
- if use knots; then
- elog "You are building ${PN} from Bitcoin Knots."
- elog "For more information, see:"
- elog "https://bitcoinknots.org/files/22.x/${KNOTS_PV}/${KNOTS_P}.desc.html"
- else
- elog "You are building ${PN} from Bitcoin Core."
- elog "For more information, see:"
- elog "https://bitcoincore.org/en/2021/09/13/release-${PV}/"
- fi
-
- if [[ ${MERGE_TYPE} != "binary" ]] ; then
- if ! test-flag-CXX -std=c++17 ; then
- die "Building ${CATEGORY}/${P} requires at least GCC 7 or Clang 5"
- fi
- fi
-}
-
-src_prepare() {
- local knots_patchdir="${WORKDIR}/${KNOTS_P}.patches/"
-
- eapply "${knots_patchdir}/${KNOTS_P}_p1-syslibs.patch"
-
- if use knots; then
- eapply "${knots_patchdir}/${KNOTS_P}_p2-fixes.patch"
- eapply "${knots_patchdir}/${KNOTS_P}_p3-features.patch"
- eapply "${knots_patchdir}/${KNOTS_P}_p4-branding.patch"
- eapply "${knots_patchdir}/${KNOTS_P}_p5-ts.patch"
- fi
-
- default
-
- eautoreconf
- rm -r src/leveldb src/secp256k1 || die
-}
-
-src_configure() {
- local my_econf=(
- --disable-asm
- --without-qtdbus
- --disable-ebpf
- --without-natpmp
- --without-qrencode
- --without-miniupnpc
- --disable-tests
- --disable-wallet
- --disable-zmq
- --enable-util-cli
- --disable-util-tx
- --disable-util-util
- --disable-util-wallet
- --disable-bench
- --without-libs
- --without-daemon
- --without-gui
- --disable-fuzz
- --disable-fuzz-binary
- --disable-ccache
- --disable-static
- --with-system-univalue
- )
- econf "${my_econf[@]}"
-}
-
-src_install() {
- default
-
- newbashcomp contrib/bitcoin-cli.bash-completion ${PN}
-}
diff --git a/net-p2p/bitcoin-cli/bitcoin-cli-24.0.1-r1.ebuild b/net-p2p/bitcoin-cli/bitcoin-cli-24.0.1-r1.ebuild
deleted file mode 100644
index c93ec569cf67..000000000000
--- a/net-p2p/bitcoin-cli/bitcoin-cli-24.0.1-r1.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit autotools bash-completion-r1
-
-DESCRIPTION="Command-line JSON-RPC client specifically for interfacing with bitcoind"
-HOMEPAGE="https://bitcoincore.org/"
-SRC_URI="
- https://bitcoincore.org/bin/bitcoin-core-${PV}/${P/-cli}.tar.gz
-"
-S="${WORKDIR}"/${P/-cli}
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
-
-# TODO: Can we drop virtual/bitcoin-leveldb from some bitcoin-*?
-# (only bitcoin-qt, bitcoind should need it?)
-RDEPEND="
- dev-libs/boost:=
- dev-libs/libevent:=
- virtual/bitcoin-leveldb
-"
-DEPEND="${RDEPEND}"
-
-DOCS=( doc/release-notes.md )
-
-PATCHES=(
- "${FILESDIR}"/24.0.1-syslibs.patch
- "${FILESDIR}"/24.0.1-gcc13.patch
-)
-
-pkg_pretend() {
- elog "You are building ${PN} from Bitcoin Core."
- elog "For more information, see:"
- elog "https://bitcoincore.org/en/releases/${PV}/"
-}
-
-src_prepare() {
- default
-
- eautoreconf
-
- rm -r src/leveldb src/secp256k1 || die
-}
-
-src_configure() {
- local myeconfargs=(
- --disable-asm
- --without-qtdbus
- --disable-ebpf
- --without-natpmp
- --without-qrencode
- --without-miniupnpc
- --disable-tests
- --disable-wallet
- --disable-zmq
- --enable-util-cli
- --disable-util-tx
- --disable-util-util
- --disable-util-wallet
- --disable-bench
- --without-libs
- --without-daemon
- --without-gui
- --disable-fuzz
- --disable-fuzz-binary
- --disable-ccache
- --disable-static
- )
-
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
-
- newbashcomp contrib/bitcoin-cli.bash-completion ${PN}
-}
diff --git a/net-p2p/bitcoin-cli/bitcoin-cli-25.1.ebuild b/net-p2p/bitcoin-cli/bitcoin-cli-25.1.ebuild
index 04157a27bd07..81c2ad58ef7c 100644
--- a/net-p2p/bitcoin-cli/bitcoin-cli-25.1.ebuild
+++ b/net-p2p/bitcoin-cli/bitcoin-cli-25.1.ebuild
@@ -8,6 +8,6 @@ HOMEPAGE="https://bitcoincore.org/"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux"
RDEPEND="~net-p2p/bitcoin-core-${PV}[bitcoin-cli]"
diff --git a/net-p2p/bitcoin-cli/files/24.0.1-gcc13.patch b/net-p2p/bitcoin-cli/files/24.0.1-gcc13.patch
deleted file mode 100644
index 39cf81b14953..000000000000
--- a/net-p2p/bitcoin-cli/files/24.0.1-gcc13.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-https://bugs.gentoo.org/903781
-https://bugs.gentoo.org/900246
-https://bugs.gentoo.org/895814
-https://bugs.gentoo.org/894734
-https://github.com/bitcoin/bitcoin/commit/fadeb6b103cb441e0e91ef506ef29febabb10715
-
-From fadeb6b103cb441e0e91ef506ef29febabb10715 Mon Sep 17 00:00:00 2001
-From: MarcoFalke <*~=`'#}+{/-|&$^_@721217.xyz>
-Date: Thu, 19 Jan 2023 19:35:43 +0100
-Subject: [PATCH] Add missing includes to fix gcc-13 compile error
-
---- a/src/support/lockedpool.cpp
-+++ b/src/support/lockedpool.cpp
-@@ -19,6 +19,9 @@
- #endif
-
- #include <algorithm>
-+#include <limits>
-+#include <stdexcept>
-+#include <utility>
- #ifdef ARENA_DEBUG
- #include <iomanip>
- #include <iostream>
---- a/src/support/lockedpool.h
-+++ b/src/support/lockedpool.h
-@@ -5,11 +5,11 @@
- #ifndef BITCOIN_SUPPORT_LOCKEDPOOL_H
- #define BITCOIN_SUPPORT_LOCKEDPOOL_H
-
--#include <stdint.h>
-+#include <cstddef>
- #include <list>
- #include <map>
--#include <mutex>
- #include <memory>
-+#include <mutex>
- #include <unordered_map>
-
- /**
diff --git a/net-p2p/bitcoin-cli/files/24.0.1-syslibs.patch b/net-p2p/bitcoin-cli/files/24.0.1-syslibs.patch
deleted file mode 100644
index 00404a2ff021..000000000000
--- a/net-p2p/bitcoin-cli/files/24.0.1-syslibs.patch
+++ /dev/null
@@ -1,281 +0,0 @@
-Originally based on 22.0-fix_build_without_leveldb.patch.
-
-- Allow system libsecp256k1
-- Allow system leveldb
-- Abort if runtime leveldb != compiled-against leveldb
-- Handle berkdb support being disabled better
---- a/configure.ac
-+++ b/configure.ac
-@@ -1362,6 +1362,23 @@ if test "$enable_fuzz_binary" = "yes"; then
- CHECK_RUNTIME_LIB
- fi
-
-+dnl Check for libsecp256k1, only if explicitly requested
-+AC_ARG_WITH([system-libsecp256k1],
-+ [AS_HELP_STRING([--with-system-libsecp256k1],
-+ [Build with system libsecp256k1 (default is no; DANGEROUS; NOT SUPPORTED)])],
-+ [system_libsecp256k1=$withval],
-+ [system_libsecp256k1=no]
-+)
-+if test x$system_libsecp256k1 != xno; then
-+ PKG_CHECK_MODULES([libsecp256k1],[libsecp256k1],,[true])
-+else
-+ libsecp256k1_CFLAGS='-I$(srcdir)/secp256k1/include'
-+ libsecp256k1_LIBS='secp256k1/libsecp256k1.la'
-+fi
-+AM_CONDITIONAL([EMBEDDED_LIBSECP256K1],[test x$system_libsecp256k1 = xno])
-+AC_SUBST(libsecp256k1_CFLAGS)
-+AC_SUBST(libsecp256k1_LIBS)
-+
- if test "$enable_wallet" != "no"; then
- dnl Check for libdb_cxx only if wallet enabled
- if test "$use_bdb" != "no"; then
-@@ -1413,11 +1430,76 @@ if test "$use_usdt" != "no"; then
- fi
- AM_CONDITIONAL([ENABLE_USDT_TRACEPOINTS], [test "$use_usdt" = "yes"])
-
-+build_leveldb=yes
- if test "$build_bitcoin_cli$build_bitcoin_tx$build_bitcoin_util$build_bitcoind$bitcoin_enable_qt$use_bench$use_tests" = "nonononononono"; then
- use_upnp=no
- use_natpmp=no
- use_zmq=no
-+ build_leveldb=no
-+fi
-+
-+if test x$build_leveldb = xno; then
-+ system_leveldb=no
-+fi
-+dnl Check for leveldb, only if explicitly requested
-+if test x$system_leveldb != xno; then
-+ build_leveldb=no
-+ LEVELDB_CPPFLAGS=
-+ AC_CHECK_LIB([leveldb],[main],[
-+ LIBLEVELDB=-lleveldb
-+ ],[
-+ AC_MSG_ERROR([leveldb library not found; using --with-system-leveldb is not supported anyway])
-+ ])
-+ AC_CHECK_HEADER([leveldb/filter_policy.h],[],[
-+ AC_MSG_ERROR([LevelDB headers not found; using --with-system-leveldb is not supported anyway])
-+ ])
-+ AC_CHECK_HEADER([leveldb/helpers/memenv.h],[
-+ AC_MSG_CHECKING([for memenv.h path])
-+ BITCOIN_SUBDIR_TO_INCLUDE([LEVELDB_CPPFLAGS],[leveldb/helpers/],[memenv])
-+ ],[
-+ AC_CHECK_HEADER([memenv.h],[],[
-+ AC_MSG_ERROR([LevelDB headers not found; using --with-system-leveldb is not supported anyway])
-+ ])
-+ ])
-+
-+ AC_MSG_CHECKING([library containing leveldb::NewMemEnv])
-+ TEMP_LIBS="$LIBS"
-+ TEMP_CPPFLAGS="$CPPFLAGS"
-+ CPPFLAGS="$CPPFLAGS $LEVELDB_CPPFLAGS"
-+ for searchlib in "" "-lmemenv" ERR; do
-+ if test "x$searchlib" = "xERR"; then
-+ AC_MSG_RESULT([no])
-+ AC_MSG_ERROR([LevelDB's memenv helper not found; using --with-system-leveldb is not supported anyway])
-+ fi
-+ searchlib="$searchlib $LIBLEVELDB"
-+ LIBS="$searchlib $TEMP_LIBS"
-+ AC_LINK_IFELSE([AC_LANG_SOURCE([
-+ #include <leveldb/env.h>
-+ #include <leveldb/helpers/memenv.h>
-+
-+ int main() {
-+ leveldb::Env *myenv = leveldb::NewMemEnv(leveldb::Env::Default());
-+ delete myenv;
-+ }
-+ ])],[
-+ AC_MSG_RESULT([$searchlib])
-+ LIBMEMENV="$searchlib"
-+ break
-+ ])
-+ done
-+ LIBS="$TEMP_LIBS"
-+ CPPFLAGS="$TEMP_CPPFLAGS"
- fi
-+AM_CONDITIONAL([EMBEDDED_LEVELDB],[test x$build_leveldb = xyes])
-+AC_SUBST(LEVELDB_CPPFLAGS)
-+AC_SUBST(LIBLEVELDB)
-+AC_SUBST(LIBMEMENV)
-+AC_ARG_WITH([system-leveldb],
-+ [AS_HELP_STRING([--with-system-leveldb],
-+ [Build with system LevelDB (default is no; DANGEROUS; NOT SUPPORTED)])],
-+ [system_leveldb=$withval],
-+ [system_leveldb=no]
-+)
-
- dnl Check for libminiupnpc (optional)
- if test "$use_upnp" != "no"; then
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -23,7 +23,7 @@ noinst_PROGRAMS =
- TESTS =
- BENCHMARKS =
-
--BITCOIN_INCLUDES=-I$(builddir) -I$(srcdir)/$(MINISKETCH_INCLUDE_DIR_INT) -I$(srcdir)/secp256k1/include -I$(srcdir)/$(UNIVALUE_INCLUDE_DIR_INT) $(LEVELDB_CPPFLAGS)
-+BITCOIN_INCLUDES=-I$(builddir) -I$(srcdir)/$(MINISKETCH_INCLUDE_DIR_INT) $(libsecp256k1_CFLAGS) -I$(srcdir)/$(UNIVALUE_INCLUDE_DIR_INT) $(BOOST_CPPFLAGS) $(LEVELDB_CPPFLAGS)
-
- LIBBITCOIN_NODE=libbitcoin_node.a
- LIBBITCOIN_COMMON=libbitcoin_common.a
-@@ -32,7 +32,11 @@ LIBBITCOIN_CLI=libbitcoin_cli.a
- LIBBITCOIN_UTIL=libbitcoin_util.a
- LIBBITCOIN_CRYPTO_BASE=crypto/libbitcoin_crypto_base.la
- LIBBITCOINQT=qt/libbitcoinqt.a
-+if EMBEDDED_LIBSECP256K1
- LIBSECP256K1=secp256k1/libsecp256k1.la
-+else
-+LIBSECP256K1=$(libsecp256k1_LIBS)
-+endif
-
- if ENABLE_ZMQ
- LIBBITCOIN_ZMQ=libbitcoin_zmq.a
-@@ -67,8 +71,10 @@ LIBBITCOIN_CRYPTO += $(LIBBITCOIN_CRYPTO_ARM_SHANI)
- endif
- noinst_LTLIBRARIES += $(LIBBITCOIN_CRYPTO)
-
-+if EMBEDDED_LIBSECP256K1
- $(LIBSECP256K1): $(wildcard secp256k1/src/*.h) $(wildcard secp256k1/src/*.c) $(wildcard secp256k1/include/*)
- $(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C $(@D) $(@F)
-+endif
-
- # Make is not made aware of per-object dependencies to avoid limiting building parallelization
- # But to build the less dependent modules first, we manually select their order here:
-@@ -1080,7 +1086,9 @@ endif
- include Makefile.minisketch.include
-
- include Makefile.crc32c.include
-+if EMBEDDED_LEVELDB
- include Makefile.leveldb.include
-+endif
-
- include Makefile.test_util.include
- include Makefile.test_fuzz.include
---- a/src/Makefile.test.include
-+++ b/src/Makefile.test.include
-@@ -377,8 +377,9 @@ if ENABLE_BENCH
- $(BENCH_BINARY) --sanity-check > /dev/null
- endif
- endif
-+if EMBEDDED_LIBSECP256K1
- $(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C secp256k1 check
--
-+endif
- if ENABLE_TESTS
- UNIVALUE_TESTS = univalue/test/object univalue/test/unitester
- noinst_PROGRAMS += $(UNIVALUE_TESTS)
---- a/src/dbwrapper.cpp
-+++ b/src/dbwrapper.cpp
-@@ -7,26 +7,45 @@
- #include <fs.h>
- #include <logging.h>
- #include <random.h>
-+#include <node/interface_ui.h>
- #include <tinyformat.h>
- #include <util/strencodings.h>
- #include <util/system.h>
-+#include <util/translation.h>
-
- #include <algorithm>
- #include <cassert>
- #include <cstdarg>
- #include <cstdint>
- #include <cstdio>
-+#include <leveldb/c.h>
- #include <leveldb/cache.h>
- #include <leveldb/db.h>
- #include <leveldb/env.h>
- #include <leveldb/filter_policy.h>
--#include <leveldb/helpers/memenv/memenv.h>
-+#include <leveldb/helpers/memenv.h>
- #include <leveldb/iterator.h>
- #include <leveldb/options.h>
- #include <leveldb/status.h>
- #include <memory>
- #include <optional>
-
-+bool dbwrapper_SanityCheck()
-+{
-+ unsigned long header_version = (leveldb::kMajorVersion << 16) | leveldb::kMinorVersion;
-+ unsigned long library_version = (leveldb_major_version() << 16) | leveldb_minor_version();
-+
-+ if (header_version != library_version) {
-+ InitError(Untranslated(strprintf("Compiled with LevelDB %d.%d, but linked with LevelDB %d.%d (incompatible).",
-+ leveldb::kMajorVersion, leveldb::kMinorVersion,
-+ leveldb_major_version(), leveldb_minor_version()
-+ )));
-+ return false;
-+ }
-+
-+ return true;
-+}
-+
- class CBitcoinLevelDBLogger : public leveldb::Logger {
- public:
- // This code is adapted from posix_logger.h, which is why it is using vsprintf.
---- a/src/dbwrapper.h
-+++ b/src/dbwrapper.h
-@@ -31,6 +31,8 @@ class Env;
- static const size_t DBWRAPPER_PREALLOC_KEY_SIZE = 64;
- static const size_t DBWRAPPER_PREALLOC_VALUE_SIZE = 1024;
-
-+bool dbwrapper_SanityCheck();
-+
- class dbwrapper_error : public std::runtime_error
- {
- public:
---- a/src/kernel/checks.cpp
-+++ b/src/kernel/checks.cpp
-@@ -3,9 +3,10 @@
- // file COPYING or http://www.opensource.org/licenses/mit-license.php.
-
- #include <kernel/checks.h>
--
-+#include <dbwrapper.h>
- #include <key.h>
- #include <random.h>
-+#include <node/interface_ui.h>
- #include <util/time.h>
- #include <util/translation.h>
-
-@@ -15,6 +16,10 @@ namespace kernel {
-
- std::optional<bilingual_str> SanityChecks(const Context&)
- {
-+ if (!dbwrapper_SanityCheck()) {
-+ return Untranslated("Database sanity check failure. Aborting.");
-+ }
-+
- if (!ECC_InitSanityCheck()) {
- return Untranslated("Elliptic curve cryptography sanity check failure. Aborting.");
- }
---- a/src/qt/createwalletdialog.cpp
-+++ b/src/qt/createwalletdialog.cpp
-@@ -12,6 +12,7 @@
-
- #include <qt/guiutil.h>
-
-+#include <QMessageBox>
- #include <QPushButton>
-
- CreateWalletDialog::CreateWalletDialog(QWidget* parent) :
-@@ -94,9 +95,16 @@ CreateWalletDialog::CreateWalletDialog(QWidget* parent) :
- ui->external_signer_checkbox->setChecked(false);
- #endif
-
--#ifndef USE_BDB
-- ui->descriptor_checkbox->setEnabled(false);
-- ui->descriptor_checkbox->setChecked(true);
-+#ifdef USE_BDB
-+ connect(ui->buttonBox, &QDialogButtonBox::accepted, this, &QDialog::accept);
-+#else
-+ connect(ui->buttonBox, &QDialogButtonBox::accepted, [this]() {
-+ if (!this->isDescriptorWalletChecked()) {
-+ QMessageBox::critical(this, tr("Cannot create wallet"), tr("This build was compiled without BDB support, so only experimental descriptor wallets are supported."));
-+ return;
-+ }
-+ this->accept();
-+ });
- #endif
-
- #ifndef ENABLE_EXTERNAL_SIGNER
diff --git a/net-p2p/bitcoin-cli/metadata.xml b/net-p2p/bitcoin-cli/metadata.xml
index d17b04d7bb4e..67439c190ea2 100644
--- a/net-p2p/bitcoin-cli/metadata.xml
+++ b/net-p2p/bitcoin-cli/metadata.xml
@@ -9,9 +9,6 @@
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
- <use>
- <flag name="knots">Build enhanced Bitcoin Knots version, rather than Bitcoin Core</flag>
- </use>
<upstream>
<remote-id type="github">bitcoin/bitcoin</remote-id>
<remote-id type="github">bitcoinknots/bitcoin</remote-id>