commit:     37a7231a3886135c7e3a98de16fb578e694348e0
Author:     Florian Schmaus <flow <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 24 10:25:25 2023 +0000
Commit:     Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Tue Oct 24 10:37:09 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=37a7231a

dev-util/bitcoin-tx: drop 0.21.0-r2, 22.0-r2, 24.0.1-r1

Closes: https://bugs.gentoo.org/911921
Closes: https://bugs.gentoo.org/911886
Closes: https://bugs.gentoo.org/889802
Closes: https://bugs.gentoo.org/766827
Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>

 dev-util/bitcoin-tx/Manifest                       |   5 -
 dev-util/bitcoin-tx/bitcoin-tx-0.21.0-r2.ebuild    | 105 --------
 dev-util/bitcoin-tx/bitcoin-tx-22.0-r2.ebuild      | 113 ---------
 dev-util/bitcoin-tx/bitcoin-tx-24.0.1-r1.ebuild    |  83 ------
 .../files/22.0-fix_build_without_leveldb.patch     |  23 --
 dev-util/bitcoin-tx/files/24.0.1-gcc13.patch       |  39 ---
 dev-util/bitcoin-tx/files/24.0.1-syslibs.patch     | 281 ---------------------
 dev-util/bitcoin-tx/metadata.xml                   |   3 -
 profiles/base/package.use.mask                     |   1 -
 9 files changed, 653 deletions(-)

diff --git a/dev-util/bitcoin-tx/Manifest b/dev-util/bitcoin-tx/Manifest
deleted file mode 100644
index c33fa9abf302..000000000000
--- a/dev-util/bitcoin-tx/Manifest
+++ /dev/null
@@ -1,5 +0,0 @@
-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

diff --git a/dev-util/bitcoin-tx/bitcoin-tx-0.21.0-r2.ebuild 
b/dev-util/bitcoin-tx/bitcoin-tx-0.21.0-r2.ebuild
deleted file mode 100644
index 865fc9b4f6ab..000000000000
--- a/dev-util/bitcoin-tx/bitcoin-tx-0.21.0-r2.ebuild
+++ /dev/null
@@ -1,105 +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
-
-BITCOINCORE_COMMITHASH="95ea54ba089610019a74c1176a2c7c0dba144b1c"
-KNOTS_PV="${PV}.knots20210130"
-KNOTS_P="bitcoin-${KNOTS_PV}"
-
-DESCRIPTION="Command-line Bitcoin transaction tool"
-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/libsecp256k1-0.1_pre20200911:0/0[recovery,schnorr]
-       !>=dev-libs/libsecp256k1-0.1_pre20210628
-       >=dev-libs/univalue-1.0.4:=
-"
-RDEPEND="${DEPEND}"
-BDEPEND="
-       >=sys-devel/autoconf-2.69
-       >=sys-devel/automake-1.13
-"
-
-DOCS=(
-       doc/bips.md
-       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-tx
-               --disable-util-cli
-               --disable-util-wallet
-               --disable-bench
-               --without-libs
-               --without-daemon
-               --without-gui
-               --disable-fuzz
-               --disable-ccache
-               --disable-static
-               --with-system-libsecp256k1
-               --with-system-univalue
-       )
-       econf "${my_econf[@]}"
-}
-
-src_install() {
-       default
-
-       newbashcomp contrib/${PN}.bash-completion ${PN}
-}

diff --git a/dev-util/bitcoin-tx/bitcoin-tx-22.0-r2.ebuild 
b/dev-util/bitcoin-tx/bitcoin-tx-22.0-r2.ebuild
deleted file mode 100644
index cbf1068adebf..000000000000
--- a/dev-util/bitcoin-tx/bitcoin-tx-22.0-r2.ebuild
+++ /dev/null
@@ -1,113 +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 Bitcoin transaction tool"
-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/libsecp256k1-0.1_pre20200911:0/0[recovery,schnorr]
-       !>=dev-libs/libsecp256k1-0.1_pre20210628
-       >=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/bips.md
-       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"
-       eapply "${FILESDIR}/${PV}-fix_build_without_leveldb.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-tx
-               --disable-util-util
-               --disable-util-cli
-               --disable-util-wallet
-               --disable-bench
-               --without-libs
-               --without-daemon
-               --without-gui
-               --disable-fuzz
-               --disable-fuzz-binary
-               --disable-ccache
-               --disable-static
-               --with-system-libsecp256k1
-               --with-system-univalue
-       )
-       econf "${my_econf[@]}"
-}
-
-src_install() {
-       default
-
-       newbashcomp contrib/${PN}.bash-completion ${PN}
-}

diff --git a/dev-util/bitcoin-tx/bitcoin-tx-24.0.1-r1.ebuild 
b/dev-util/bitcoin-tx/bitcoin-tx-24.0.1-r1.ebuild
deleted file mode 100644
index fd1d577bd081..000000000000
--- a/dev-util/bitcoin-tx/bitcoin-tx-24.0.1-r1.ebuild
+++ /dev/null
@@ -1,83 +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 Bitcoin transaction tool"
-HOMEPAGE="https://bitcoincore.org/";
-SRC_URI="
-       https://bitcoincore.org/bin/bitcoin-core-${PV}/${P/-tx}.tar.gz
-"
-S="${WORKDIR}"/${P/-tx}
-
-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-1.64.0:=
-       >=dev-libs/libsecp256k1-0.2:=[recovery,schnorr]
-       virtual/bitcoin-leveldb
-"
-DEPEND="${RDEPEND}"
-
-DOCS=(
-       doc/bips.md
-       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-tx
-               --disable-util-util
-               --disable-util-cli
-               --disable-util-wallet
-               --disable-bench
-               --without-libs
-               --without-daemon
-               --without-gui
-               --disable-fuzz
-               --disable-fuzz-binary
-               --disable-ccache
-               --with-system-libsecp256k1
-               --with-system-univalue
-       )
-       econf "${myeconfargs[@]}"
-}
-
-src_install() {
-       default
-
-       newbashcomp contrib/${PN}.bash-completion ${PN}
-}

diff --git a/dev-util/bitcoin-tx/files/22.0-fix_build_without_leveldb.patch 
b/dev-util/bitcoin-tx/files/22.0-fix_build_without_leveldb.patch
deleted file mode 100644
index e9dec14b9d43..000000000000
--- a/dev-util/bitcoin-tx/files/22.0-fix_build_without_leveldb.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-diff --git a/src/init/common.cpp b/src/init/common.cpp
-index b5b74cda78b..d01e0e73b4a 100644
---- a/src/init/common.cpp
-+++ b/src/init/common.cpp
-@@ -9,7 +9,6 @@
- #include <clientversion.h>
- #include <compat/sanity.h>
- #include <crypto/sha256.h>
--#include <dbwrapper.h>
- #include <key.h>
- #include <logging.h>
- #include <node/ui_interface.h>
-@@ -41,10 +40,6 @@ void UnsetGlobals()
- 
- bool SanityChecks()
- {
--    if (!dbwrapper_SanityCheck()) {
--        return InitError(Untranslated("Database sanity check failure. 
Aborting."));
--    }
--
-     if (!ECC_InitSanityCheck()) {
-         return InitError(Untranslated("Elliptic curve cryptography sanity 
check failure. Aborting."));
-     }

diff --git a/dev-util/bitcoin-tx/files/24.0.1-gcc13.patch 
b/dev-util/bitcoin-tx/files/24.0.1-gcc13.patch
deleted file mode 100644
index 39cf81b14953..000000000000
--- a/dev-util/bitcoin-tx/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/dev-util/bitcoin-tx/files/24.0.1-syslibs.patch 
b/dev-util/bitcoin-tx/files/24.0.1-syslibs.patch
deleted file mode 100644
index 00404a2ff021..000000000000
--- a/dev-util/bitcoin-tx/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/dev-util/bitcoin-tx/metadata.xml b/dev-util/bitcoin-tx/metadata.xml
index 90d16ca8cd0d..9eab793a582a 100644
--- a/dev-util/bitcoin-tx/metadata.xml
+++ b/dev-util/bitcoin-tx/metadata.xml
@@ -9,9 +9,6 @@
                <email>proxy-ma...@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>

diff --git a/profiles/base/package.use.mask b/profiles/base/package.use.mask
index 65b8760fd856..bc55aa1c9e86 100644
--- a/profiles/base/package.use.mask
+++ b/profiles/base/package.use.mask
@@ -224,7 +224,6 @@ dev-libs/libffi exec-static-trampoline
 # versions of knots too. The upstream maintainer was recently compromised
 # and there is no explanation as to how, so continuing to provide these patches
 # would be irresponsible. Bug #889326
-dev-util/bitcoin-tx knots
 net-libs/libbitcoinconsensus knots
 net-p2p/bitcoin-cli knots
 net-p2p/bitcoin-qt knots

Reply via email to