commit:     6c61b3da860312a8fa6ca55a7e96218fb0375135
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 31 23:35:25 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Mar 31 23:35:25 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6c61b3da

dev-libs/botan: drop 3.1.1, 3.2.0-r1, 3.2.0-r2, 3.6.1

Bug: https://bugs.gentoo.org/925147
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-libs/botan/Manifest                            |   6 -
 dev-libs/botan/botan-3.1.1.ebuild                  | 218 --------------
 dev-libs/botan/botan-3.2.0-r1.ebuild               | 229 ---------------
 dev-libs/botan/botan-3.2.0-r2.ebuild               | 229 ---------------
 dev-libs/botan/botan-3.6.1.ebuild                  | 229 ---------------
 dev-libs/botan/files/botan-3.2.0-ninja.patch       |  20 --
 dev-libs/botan/files/botan-3.6.1-boost-1.87.patch  | 322 ---------------------
 dev-libs/botan/files/botan-3.6.1-no-avx2.patch     |  29 --
 .../botan-3.6.1-tests-glibcxx_assertions.patch     |  40 ---
 9 files changed, 1322 deletions(-)

diff --git a/dev-libs/botan/Manifest b/dev-libs/botan/Manifest
index 3adbf0a5af95..eb22a4dff1c9 100644
--- a/dev-libs/botan/Manifest
+++ b/dev-libs/botan/Manifest
@@ -1,10 +1,4 @@
 DIST Botan-2.19.5.tar.xz 6140148 BLAKE2B 
ab3a133a84c1beb2efd32fcb1746c13ec58cf24cf28cea43c93e9dd4b45c65a47225ff92139e34e1470cf150f839794e3bbd316df5e72a060f11d03141002b79
 SHA512 
323930fbabd833a6affd71f90835e4ca31a9632e346dee9c5f396aca898697d0f2993b860f739d02cdf49fa7fbb3a2d306c4790e5d5f39620b2dea284983669c
 DIST Botan-2.19.5.tar.xz.asc 488 BLAKE2B 
7d52f66f7495ccc249a58ec30206234a9ea4420bcc6e6412593a975bec1173afe55bbcd2c0cbe3859a3fdf547464d3d2949bc03dcb9dbd25c4d5c97589f48202
 SHA512 
3ba185cf077c109d183fff14270fa60c7be01fd87077e233e6473365111ba83d41448db6d5b5849fe1194c47e84cc2da91a0f75c30ea43538772f13138e472fa
-DIST Botan-3.1.1.tar.xz 8800368 BLAKE2B 
c31365e6bd4106f96a033e5f092c528c0185577f41d9a698d2630ece0f660f87f03e0775ebeb5c4d812819bbc6eb556b5ff15c16f243288ae73c8bf1fbb991ce
 SHA512 
ed6bdadb910b0775245648140212953ed364aa26107f851e39ac5cb664d7f476c519a22cdad41f0e520796c4ebe453c56ca68a2178e39f815d445e9979333795
-DIST Botan-3.1.1.tar.xz.asc 488 BLAKE2B 
9ac94473d90a26932e507cdb3f46d8381565deecff38a5a2f7fe043b33405071adf0baee4235dd94bb6d35fa3ffedca6192fb5f5d76030874a90a399d88f9744
 SHA512 
f52e8602a57f590150f6f49829e788910006e5113ab6e85c6efe73009b8db752b5f28b869c6265ef6dd3c2727c64c0182d125f02f92485485768416c618acdb9
-DIST Botan-3.2.0.tar.xz 8998204 BLAKE2B 
f21e7574af93ab3331607f4a4ecf1b2cbbc0db4b510ea8ad19a5286d46d3a8e37e13746d2d4751eb16a70fdc8371b4435b030ef0a17f1ab6dcd76bd81bb3a4fa
 SHA512 
526cf71144584fef6e73f14f6aa1e2a7b03a92a3e51436287764bb61e742a94e02926bcc2aab038f08ef2169cb511152c8ecd71d51e06deb4875dc676875c2d9
-DIST Botan-3.2.0.tar.xz.asc 488 BLAKE2B 
f7bc716dd18eedf35928933e22c75de3d2731330dfdaf8a5048e8ad86e1f3896ea55294a64b7f82593af16dd2e4097a9ba68f25baa024e175b7334478bcf84a6
 SHA512 
3ee42ac73e1bd6cea0a2e9f468b88d67c02a4a69786c41ddf9fc7f94b6847be00e0f3f0f38f934ab599b8d6dd29006414294df8b371f5cf2422292f3dd176756
-DIST Botan-3.6.1.tar.xz 7581864 BLAKE2B 
744eed158e021d26b9414b3a098e017e6e2c2160fc7fb6a0f24f6cbbb4b08501157108dedd7a71fc3645e27c86608a9ba5d18a11087adfd1c9b174ca3ce85b30
 SHA512 
06327c55bee5e0d2e142f81b997dd8a1ef98f61ef920b57f6eb4e80ebf6b3de1c62373b889d4a32e62509495792e0b46d5dcc82a6446266974b4d4ead8d9f287
-DIST Botan-3.6.1.tar.xz.asc 488 BLAKE2B 
3538c941f707a182f86226dfdbb8222570671e0bce3ca61137a5d978c2b1f5e658ffc1168d7e73a1861210adfac8aa661124c9cbc4950973f7b1e2c3360aab90
 SHA512 
871c6d91368d8a080e704afb53b1339c6d06aa57aaa45f260bccf1cb1ed31c635587ba930f954ab55668a7ca13b89b2f2acba3c0f1723e3f7190c6ebe9dc2e0b
 DIST Botan-3.7.1.tar.xz 8659408 BLAKE2B 
3cd934bc738c0665c4a5b3ea4391402058ade2159a185ee257aa2746ef8aa29e59873fd0a95dbdf978ce950bab6c25a72975d73b5d17da898cb16bc04ae7b8ba
 SHA512 
f9b5d793642e9f9e9f444de3a0851840b4ed1f5f82804ad60bb5ede62c5a90ea05cb41e8aefcf556caa15da1aaa78ba1fcb040df3365705e3fd9c6a12788b72e
 DIST Botan-3.7.1.tar.xz.asc 488 BLAKE2B 
6f00bf01f0f02e8cefd926e4b5f70feb8e689ef9286684e45c5d1139a686af649bf44950e7bfc6a9c881d1d233c1ab5d10ee0815e8119e0ffdc89ec62ec5089c
 SHA512 
a3fc9958e606b0bc073287dc45cb4e2143ff3399a8891a4d51a0c25052d9eb395d97bd31eb97b13344a27186e32906a6411927211345f3ae06464acb73eaa3b6

diff --git a/dev-libs/botan/botan-3.1.1.ebuild 
b/dev-libs/botan/botan-3.1.1.ebuild
deleted file mode 100644
index 0c48886d9385..000000000000
--- a/dev-libs/botan/botan-3.1.1.ebuild
+++ /dev/null
@@ -1,218 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..12} )
-VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/botan.asc
-inherit edo flag-o-matic multiprocessing python-r1 toolchain-funcs verify-sig
-
-MY_P="Botan-${PV}"
-DESCRIPTION="C++ crypto library"
-HOMEPAGE="https://botan.randombit.net/";
-SRC_URI="https://botan.randombit.net/releases/${MY_P}.tar.xz";
-SRC_URI+=" verify-sig? ( 
https://botan.randombit.net/releases/${MY_P}.tar.xz.asc )"
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="BSD-2"
-# New major versions are parallel-installable
-SLOT="$(ver_cut 1)/$(ver_cut 1-2)" # soname version
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86 
~ppc-macos"
-IUSE="doc boost bzip2 lzma python static-libs sqlite test tools zlib"
-RESTRICT="!test? ( test )"
-
-CPU_USE=(
-       cpu_flags_arm_{aes,neon}
-       cpu_flags_ppc_altivec
-       cpu_flags_x86_{aes,avx2,popcnt,rdrand,sha,sse2,ssse3,sse4_1,sse4_2}
-)
-
-IUSE+=" ${CPU_USE[@]}"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-# NOTE: Boost is needed at runtime too for the CLI tool.
-DEPEND="
-       boost? ( dev-libs/boost:= )
-       bzip2? ( >=app-arch/bzip2-1.0.5:= )
-       lzma? ( app-arch/xz-utils:= )
-       python? ( ${PYTHON_DEPS} )
-       sqlite? ( dev-db/sqlite:3= )
-       zlib? ( >=sys-libs/zlib-1.2.3:= )
-"
-RDEPEND="
-       ${DEPEND}
-       !<dev-libs/botan-2.19.3-r1:2[tools]
-"
-BDEPEND="
-       ${PYTHON_DEPS}
-       $(python_gen_any_dep '
-               doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
-       ')
-       || ( >=sys-devel/gcc-11:* >=llvm-core/clang-14:* )
-       verify-sig? ( sec-keys/openpgp-keys-botan )
-"
-
-# NOTE: Considering patching Botan?
-# Please see upstream's guidance:
-# 
https://botan.randombit.net/handbook/packaging.html#minimize-distribution-patches
-
-python_check_deps() {
-       use doc || return 0
-       python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]"
-}
-
-pkg_pretend() {
-       [[ ${MERGE_TYPE} == binary ]] && return
-
-       # bug #908958
-       if tc-is-gcc && ver_test $(gcc-version) -lt 11 ; then
-               eerror "Botan needs >=gcc-11 or >=clang-14 to compile."
-               eerror "Please upgrade GCC: emerge -v1 sys-devel/gcc"
-               die "GCC version is too old to compile Botan!"
-       elif tc-is-clang && ver_test $(clang-version) -lt 14 ; then
-               eerror "Botan needs >=gcc-11 or >=clang-14 to compile."
-               eerror "Please upgrade Clang: emerge -v1 llvm-core/clang"
-               die "Clang version is too old to compile Botan!"
-       fi
-}
-
-src_configure() {
-       tc-export AR CC CXX
-       python_setup
-
-       local disable_modules=(
-               $(usev !boost 'boost')
-       )
-
-       if [[ -z "${DISABLE_MODULES}" ]] ; then
-               elog "Disabling module(s): ${disable_modules[@]}"
-       fi
-
-       local chostarch="${CHOST%%-*}"
-
-       # Arch specific wrangling
-       local myos=
-       case ${CHOST} in
-               *-darwin*)
-                       myos=darwin
-                       ;;
-               *)
-                       myos=linux
-
-                       if [[ ${CHOST} == *hppa* ]] ; then
-                               chostarch=parisc
-                       elif [[ ${ABI} == sparc64 ]] ; then
-                               chostarch="sparc64"
-                       elif [[ ${ABI} == sparc32 ]] ; then
-                               chostarch="sparc32"
-                       fi
-                       ;;
-       esac
-
-       local pythonvers=()
-       if use python ; then
-               _append() {
-                       pythonvers+=( ${EPYTHON/python/} )
-               }
-
-               python_foreach_impl _append
-       fi
-
-       local myargs=(
-               # Intrinsics
-               # TODO: x86 RDSEED (new CPU_FLAGS_X86?)
-               # TODO: POWER Crypto (new CPU_FLAGS_PPC?)
-               $(usev !cpu_flags_arm_aes '--disable-armv8crypto')
-               $(usev !cpu_flags_arm_neon '--disable-neon')
-               $(usev !cpu_flags_ppc_altivec '--disable-altivec')
-               $(usev !cpu_flags_x86_aes '--disable-aes-ni')
-               $(usev !cpu_flags_x86_avx2 '--disable-avx2')
-               $(usev !cpu_flags_x86_popcnt '--disable-bmi2')
-               $(usev !cpu_flags_x86_rdrand '--disable-rdrand')
-               $(usev !cpu_flags_x86_sha '--disable-sha-ni')
-               $(usev !cpu_flags_x86_sse2 '--disable-sse2')
-               $(usev !cpu_flags_x86_ssse3 '--disable-ssse3')
-               $(usev !cpu_flags_x86_sse4_1 '--disable-sse4.1')
-               $(usev !cpu_flags_x86_sse4_2 '--disable-sse4.2')
-
-               # HPPA's GCC doesn't support SSP
-               $(usev hppa '--without-stack-protector')
-
-               $(use_with boost)
-               $(use_with bzip2)
-               $(use_with doc documentation)
-               $(use_with doc sphinx)
-               $(use_with lzma)
-               $(use_enable static-libs static-library)
-               $(use_with sqlite sqlite3)
-               $(use_with zlib)
-
-               --cpu=${chostarch}
-               --docdir=share/doc
-               --disable-modules=$(IFS=","; echo "${disable_modules[*]}")
-               --distribution-info="Gentoo ${PVR}"
-               --libdir="$(get_libdir)"
-               # Avoid collisions between slots for tools (bug #905700)
-               --program-suffix=$(ver_cut 1)
-
-               # Don't install Python bindings automatically
-               # (do it manually later in the right place)
-               # bug #723096
-               --no-install-python-module
-
-               --os=${myos}
-               --prefix="${EPREFIX}"/usr
-               --with-endian="$(tc-endian)"
-               --with-python-version=$(IFS=","; echo "${pythonvers[*]}")
-       )
-
-       local build_targets=(
-               shared
-               $(usev static-libs static)
-               $(usev tools cli)
-               $(usev test tests)
-       )
-
-       myargs+=(
-               --build-targets=$(IFS=","; echo "${build_targets[*]}")
-       )
-
-       if use elibc_glibc && use kernel_linux ; then
-               myargs+=(
-                       --with-os-features=getrandom,getentropy
-               )
-       fi
-
-       local sanitizers=()
-       if is-flagq -fsanitize=address ; then
-               sanitizers+=( address )
-       fi
-       if is-flagq -fsanitize=undefined ; then
-               sanitizers+=( undefined )
-       fi
-       filter-flags '-fsanitize=*'
-       myargs+=(
-               --enable-sanitizers=$(IFS=","; echo "${sanitizers[*]}")
-       )
-
-       edo ${EPYTHON} configure.py --verbose "${myargs[@]}"
-}
-
-src_test() {
-       LD_LIBRARY_PATH="${S}" edo ./botan-test$(ver_cut 1) 
--test-threads="$(makeopts_jobs)"
-}
-
-src_install() {
-       default
-
-       if [[ -d "${ED}"/usr/share/doc/${P} && ${P} != ${PF} ]] ; then
-               # --docdir in configure controls the parent directory 
unfortunately
-               mv "${ED}"/usr/share/doc/${P} "${ED}"/usr/share/doc/${PF} || die
-       fi
-
-       # Manually install the Python bindings (bug #723096)
-       if use python ; then
-               python_foreach_impl python_domodule src/python/botan$(ver_cut 
1).py
-       fi
-}

diff --git a/dev-libs/botan/botan-3.2.0-r1.ebuild 
b/dev-libs/botan/botan-3.2.0-r1.ebuild
deleted file mode 100644
index 612b0486a98a..000000000000
--- a/dev-libs/botan/botan-3.2.0-r1.ebuild
+++ /dev/null
@@ -1,229 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..12} )
-VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/botan.asc
-inherit edo flag-o-matic multiprocessing ninja-utils python-r1 toolchain-funcs 
verify-sig
-
-MY_P="Botan-${PV}"
-DESCRIPTION="C++ crypto library"
-HOMEPAGE="https://botan.randombit.net/";
-SRC_URI="https://botan.randombit.net/releases/${MY_P}.tar.xz";
-SRC_URI+=" verify-sig? ( 
https://botan.randombit.net/releases/${MY_P}.tar.xz.asc )"
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="BSD-2"
-# New major versions are parallel-installable
-SLOT="$(ver_cut 1)/$(ver_cut 1-2)" # soname version
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc ~x86 
~ppc-macos"
-IUSE="doc boost bzip2 lzma python static-libs sqlite test tools zlib"
-RESTRICT="!test? ( test )"
-
-CPU_USE=(
-       cpu_flags_arm_{aes,neon,sha1,sha2}
-       cpu_flags_ppc_altivec
-       cpu_flags_x86_{aes,avx2,popcnt,rdrand,sha,sse2,ssse3,sse4_1,sse4_2}
-)
-
-IUSE+=" ${CPU_USE[@]}"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-# NOTE: Boost is needed at runtime too for the CLI tool.
-DEPEND="
-       boost? ( dev-libs/boost:= )
-       bzip2? ( >=app-arch/bzip2-1.0.5:= )
-       lzma? ( app-arch/xz-utils:= )
-       python? ( ${PYTHON_DEPS} )
-       sqlite? ( dev-db/sqlite:3= )
-       zlib? ( >=sys-libs/zlib-1.2.3:= )
-"
-RDEPEND="
-       ${DEPEND}
-       !<dev-libs/botan-2.19.3-r1:2[tools]
-"
-BDEPEND="
-       ${PYTHON_DEPS}
-       ${NINJA_DEPEND}
-       $(python_gen_any_dep '
-               doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
-       ')
-       || ( >=sys-devel/gcc-11:* >=llvm-core/clang-14:* )
-       verify-sig? ( sec-keys/openpgp-keys-botan )
-"
-
-# NOTE: Considering patching Botan?
-# Please see upstream's guidance:
-# 
https://botan.randombit.net/handbook/packaging.html#minimize-distribution-patches
-PATCHES=(
-       "${FILESDIR}"/${P}-ninja.patch
-)
-
-python_check_deps() {
-       use doc || return 0
-       python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]"
-}
-
-pkg_pretend() {
-       [[ ${MERGE_TYPE} == binary ]] && return
-
-       # bug #908958
-       if tc-is-gcc && ver_test $(gcc-version) -lt 11 ; then
-               eerror "Botan needs >=gcc-11 or >=clang-14 to compile."
-               eerror "Please upgrade GCC: emerge -v1 sys-devel/gcc"
-               die "GCC version is too old to compile Botan!"
-       elif tc-is-clang && ver_test $(clang-version) -lt 14 ; then
-               eerror "Botan needs >=gcc-11 or >=clang-14 to compile."
-               eerror "Please upgrade Clang: emerge -v1 llvm-core/clang"
-               die "Clang version is too old to compile Botan!"
-       fi
-}
-
-src_configure() {
-       tc-export AR CC CXX
-       python_setup
-
-       local disable_modules=(
-               $(usev !boost 'boost')
-       )
-
-       if [[ -z "${DISABLE_MODULES}" ]] ; then
-               elog "Disabling module(s): ${disable_modules[@]}"
-       fi
-
-       local chostarch="${CHOST%%-*}"
-
-       # Arch specific wrangling
-       local myos=
-       case ${CHOST} in
-               *-darwin*)
-                       myos=darwin
-                       ;;
-               *)
-                       myos=linux
-
-                       if [[ ${CHOST} == *hppa* ]] ; then
-                               chostarch=parisc
-                       elif [[ ${ABI} == sparc64 ]] ; then
-                               chostarch="sparc64"
-                       elif [[ ${ABI} == sparc32 ]] ; then
-                               chostarch="sparc32"
-                       fi
-                       ;;
-       esac
-
-       local pythonvers=()
-       if use python ; then
-               _append() {
-                       pythonvers+=( ${EPYTHON/python/} )
-               }
-
-               python_foreach_impl _append
-       fi
-
-       local myargs=(
-               # Intrinsics
-               # TODO: x86 RDSEED (new CPU_FLAGS_X86?)
-               # TODO: POWER Crypto (new CPU_FLAGS_PPC?)
-               $(usev !cpu_flags_arm_aes '--disable-armv8crypto')
-               $(usev !cpu_flags_arm_neon '--disable-neon')
-               $(usev !cpu_flags_arm_sha1 '--disable-armv8crypto')
-               $(usev !cpu_flags_arm_sha2 '--disable-armv8crypto')
-               $(usev !cpu_flags_ppc_altivec '--disable-altivec')
-               $(usev !cpu_flags_x86_aes '--disable-aes-ni')
-               $(usev !cpu_flags_x86_avx2 '--disable-avx2')
-               $(usev !cpu_flags_x86_popcnt '--disable-bmi2')
-               $(usev !cpu_flags_x86_rdrand '--disable-rdrand')
-               $(usev !cpu_flags_x86_sha '--disable-sha-ni')
-               $(usev !cpu_flags_x86_sse2 '--disable-sse2')
-               $(usev !cpu_flags_x86_ssse3 '--disable-ssse3')
-               $(usev !cpu_flags_x86_sse4_1 '--disable-sse4.1')
-               $(usev !cpu_flags_x86_sse4_2 '--disable-sse4.2')
-
-               # HPPA's GCC doesn't support SSP
-               $(usev hppa '--without-stack-protector')
-
-               $(use_with boost)
-               $(use_with bzip2)
-               $(use_with doc documentation)
-               $(use_with doc sphinx)
-               $(use_with lzma)
-               $(use_enable static-libs static-library)
-               $(use_with sqlite sqlite3)
-               $(use_with zlib)
-
-               --build-tool=ninja
-               --cpu=${chostarch}
-               --docdir=share/doc
-               --disable-modules=$(IFS=","; echo "${disable_modules[*]}")
-               --distribution-info="Gentoo ${PVR}"
-               --libdir="$(get_libdir)"
-               # Avoid collisions between slots for tools (bug #905700)
-               --program-suffix=$(ver_cut 1)
-
-               # Don't install Python bindings automatically
-               # (do it manually later in the right place)
-               # bug #723096
-               --no-install-python-module
-
-               --os=${myos}
-               --prefix="${EPREFIX}"/usr
-               --with-endian="$(tc-endian)"
-               --with-python-version=$(IFS=","; echo "${pythonvers[*]}")
-       )
-
-       local build_targets=(
-               shared
-               $(usev static-libs static)
-               $(usev tools cli)
-               $(usev test tests)
-       )
-
-       myargs+=(
-               --build-targets=$(IFS=","; echo "${build_targets[*]}")
-       )
-
-       if use elibc_glibc && use kernel_linux ; then
-               myargs+=(
-                       --with-os-features=getrandom,getentropy
-               )
-       fi
-
-       local sanitizers=()
-       if is-flagq -fsanitize=address ; then
-               sanitizers+=( address )
-       fi
-       if is-flagq -fsanitize=undefined ; then
-               sanitizers+=( undefined )
-       fi
-       filter-flags '-fsanitize=*'
-       myargs+=(
-               --enable-sanitizers=$(IFS=","; echo "${sanitizers[*]}")
-       )
-
-       edo ${EPYTHON} configure.py --verbose "${myargs[@]}"
-}
-
-src_compile() {
-       eninja
-}
-
-src_test() {
-       LD_LIBRARY_PATH="${S}" edo ./botan-test$(ver_cut 1) 
--test-threads="$(makeopts_jobs)"
-}
-
-src_install() {
-       DESTDIR="${D}" eninja install
-
-       if [[ -d "${ED}"/usr/share/doc/${P} && ${P} != ${PF} ]] ; then
-               # --docdir in configure controls the parent directory 
unfortunately
-               mv "${ED}"/usr/share/doc/${P} "${ED}"/usr/share/doc/${PF} || die
-       fi
-
-       # Manually install the Python bindings (bug #723096)
-       if use python ; then
-               python_foreach_impl python_domodule src/python/botan$(ver_cut 
1).py
-       fi
-}

diff --git a/dev-libs/botan/botan-3.2.0-r2.ebuild 
b/dev-libs/botan/botan-3.2.0-r2.ebuild
deleted file mode 100644
index a9b992551551..000000000000
--- a/dev-libs/botan/botan-3.2.0-r2.ebuild
+++ /dev/null
@@ -1,229 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..13} )
-VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/botan.asc
-inherit edo flag-o-matic multiprocessing ninja-utils python-r1 toolchain-funcs 
verify-sig
-
-MY_P="Botan-${PV}"
-DESCRIPTION="C++ crypto library"
-HOMEPAGE="https://botan.randombit.net/";
-SRC_URI="https://botan.randombit.net/releases/${MY_P}.tar.xz";
-SRC_URI+=" verify-sig? ( 
https://botan.randombit.net/releases/${MY_P}.tar.xz.asc )"
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="BSD-2"
-# New major versions are parallel-installable
-SLOT="$(ver_cut 1)/$(ver_cut 1-2)" # soname version
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 
~ppc-macos"
-IUSE="doc boost bzip2 lzma python static-libs sqlite test tools zlib"
-RESTRICT="!test? ( test )"
-
-CPU_USE=(
-       cpu_flags_arm_{aes,neon,sha1,sha2}
-       cpu_flags_ppc_altivec
-       cpu_flags_x86_{aes,avx2,popcnt,rdrand,sha,sse2,ssse3,sse4_1,sse4_2}
-)
-
-IUSE+=" ${CPU_USE[@]}"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-# NOTE: Boost is needed at runtime too for the CLI tool.
-DEPEND="
-       boost? ( dev-libs/boost:= )
-       bzip2? ( >=app-arch/bzip2-1.0.5:= )
-       lzma? ( app-arch/xz-utils:= )
-       python? ( ${PYTHON_DEPS} )
-       sqlite? ( dev-db/sqlite:3= )
-       zlib? ( >=sys-libs/zlib-1.2.3:= )
-"
-RDEPEND="
-       ${DEPEND}
-       !<dev-libs/botan-2.19.3-r1:2[tools]
-"
-BDEPEND="
-       ${PYTHON_DEPS}
-       ${NINJA_DEPEND}
-       $(python_gen_any_dep '
-               doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
-       ')
-       || ( >=sys-devel/gcc-11:* >=llvm-core/clang-14:* )
-       verify-sig? ( sec-keys/openpgp-keys-botan )
-"
-
-# NOTE: Considering patching Botan?
-# Please see upstream's guidance:
-# 
https://botan.randombit.net/handbook/packaging.html#minimize-distribution-patches
-PATCHES=(
-       "${FILESDIR}"/${P}-ninja.patch
-)
-
-python_check_deps() {
-       use doc || return 0
-       python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]"
-}
-
-pkg_pretend() {
-       [[ ${MERGE_TYPE} == binary ]] && return
-
-       # bug #908958
-       if tc-is-gcc && ver_test $(gcc-version) -lt 11 ; then
-               eerror "Botan needs >=gcc-11 or >=clang-14 to compile."
-               eerror "Please upgrade GCC: emerge -v1 sys-devel/gcc"
-               die "GCC version is too old to compile Botan!"
-       elif tc-is-clang && ver_test $(clang-version) -lt 14 ; then
-               eerror "Botan needs >=gcc-11 or >=clang-14 to compile."
-               eerror "Please upgrade Clang: emerge -v1 llvm-core/clang"
-               die "Clang version is too old to compile Botan!"
-       fi
-}
-
-src_configure() {
-       tc-export AR CC CXX
-       python_setup
-
-       local disable_modules=(
-               $(usev !boost 'boost')
-       )
-
-       if [[ -z "${DISABLE_MODULES}" ]] ; then
-               elog "Disabling module(s): ${disable_modules[@]}"
-       fi
-
-       local chostarch="${CHOST%%-*}"
-
-       # Arch specific wrangling
-       local myos=
-       case ${CHOST} in
-               *-darwin*)
-                       myos=darwin
-                       ;;
-               *)
-                       myos=linux
-
-                       if [[ ${CHOST} == *hppa* ]] ; then
-                               chostarch=parisc
-                       elif [[ ${ABI} == sparc64 ]] ; then
-                               chostarch="sparc64"
-                       elif [[ ${ABI} == sparc32 ]] ; then
-                               chostarch="sparc32"
-                       fi
-                       ;;
-       esac
-
-       local pythonvers=()
-       if use python ; then
-               _append() {
-                       pythonvers+=( ${EPYTHON/python/} )
-               }
-
-               python_foreach_impl _append
-       fi
-
-       local myargs=(
-               # Intrinsics
-               # TODO: x86 RDSEED (new CPU_FLAGS_X86?)
-               # TODO: POWER Crypto (new CPU_FLAGS_PPC?)
-               $(usev !cpu_flags_arm_aes '--disable-armv8crypto')
-               $(usev !cpu_flags_arm_neon '--disable-neon')
-               $(usev !cpu_flags_arm_sha1 '--disable-armv8crypto')
-               $(usev !cpu_flags_arm_sha2 '--disable-armv8crypto')
-               $(usev !cpu_flags_ppc_altivec '--disable-altivec')
-               $(usev !cpu_flags_x86_aes '--disable-aes-ni')
-               $(usev !cpu_flags_x86_avx2 '--disable-avx2')
-               $(usev !cpu_flags_x86_popcnt '--disable-bmi2')
-               $(usev !cpu_flags_x86_rdrand '--disable-rdrand')
-               $(usev !cpu_flags_x86_sha '--disable-sha-ni')
-               $(usev !cpu_flags_x86_sse2 '--disable-sse2')
-               $(usev !cpu_flags_x86_ssse3 '--disable-ssse3')
-               $(usev !cpu_flags_x86_sse4_1 '--disable-sse4.1')
-               $(usev !cpu_flags_x86_sse4_2 '--disable-sse4.2')
-
-               # HPPA's GCC doesn't support SSP
-               $(usev hppa '--without-stack-protector')
-
-               $(use_with boost)
-               $(use_with bzip2)
-               $(use_with doc documentation)
-               $(use_with doc sphinx)
-               $(use_with lzma)
-               $(use_enable static-libs static-library)
-               $(use_with sqlite sqlite3)
-               $(use_with zlib)
-
-               --build-tool=ninja
-               --cpu=${chostarch}
-               --docdir=share/doc
-               --disable-modules=$(IFS=","; echo "${disable_modules[*]}")
-               --distribution-info="Gentoo ${PVR}"
-               --libdir="$(get_libdir)"
-               # Avoid collisions between slots for tools (bug #905700)
-               --program-suffix=$(ver_cut 1)
-
-               # Don't install Python bindings automatically
-               # (do it manually later in the right place)
-               # bug #723096
-               --no-install-python-module
-
-               --os=${myos}
-               --prefix="${EPREFIX}"/usr
-               --with-endian="$(tc-endian)"
-               --with-python-version=$(IFS=","; echo "${pythonvers[*]}")
-       )
-
-       local build_targets=(
-               shared
-               $(usev static-libs static)
-               $(usev tools cli)
-               $(usev test tests)
-       )
-
-       myargs+=(
-               --build-targets=$(IFS=","; echo "${build_targets[*]}")
-       )
-
-       if ( use elibc_glibc || use elibc_musl ) && use kernel_linux ; then
-               myargs+=(
-                       --with-os-features=getrandom,getentropy
-               )
-       fi
-
-       local sanitizers=()
-       if is-flagq -fsanitize=address ; then
-               sanitizers+=( address )
-       fi
-       if is-flagq -fsanitize=undefined ; then
-               sanitizers+=( undefined )
-       fi
-       filter-flags '-fsanitize=*'
-       myargs+=(
-               --enable-sanitizers=$(IFS=","; echo "${sanitizers[*]}")
-       )
-
-       edo ${EPYTHON} configure.py --verbose "${myargs[@]}"
-}
-
-src_compile() {
-       eninja
-}
-
-src_test() {
-       LD_LIBRARY_PATH="${S}" edo ./botan-test$(ver_cut 1) 
--test-threads="$(makeopts_jobs)"
-}
-
-src_install() {
-       DESTDIR="${D}" eninja install
-
-       if [[ -d "${ED}"/usr/share/doc/${P} && ${P} != ${PF} ]] ; then
-               # --docdir in configure controls the parent directory 
unfortunately
-               mv "${ED}"/usr/share/doc/${P} "${ED}"/usr/share/doc/${PF} || die
-       fi
-
-       # Manually install the Python bindings (bug #723096)
-       if use python ; then
-               python_foreach_impl python_domodule src/python/botan$(ver_cut 
1).py
-       fi
-}

diff --git a/dev-libs/botan/botan-3.6.1.ebuild 
b/dev-libs/botan/botan-3.6.1.ebuild
deleted file mode 100644
index 052faed7a59a..000000000000
--- a/dev-libs/botan/botan-3.6.1.ebuild
+++ /dev/null
@@ -1,229 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..13} )
-VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/botan.asc
-inherit edo flag-o-matic multiprocessing ninja-utils python-r1 toolchain-funcs 
verify-sig
-
-MY_P="Botan-${PV}"
-DESCRIPTION="C++ crypto library"
-HOMEPAGE="https://botan.randombit.net/";
-SRC_URI="https://botan.randombit.net/releases/${MY_P}.tar.xz";
-SRC_URI+=" verify-sig? ( 
https://botan.randombit.net/releases/${MY_P}.tar.xz.asc )"
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="BSD-2"
-# New major versions are parallel-installable
-SLOT="$(ver_cut 1)/$(ver_cut 1-2)" # soname version
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86 
~ppc-macos"
-IUSE="doc boost bzip2 lzma python static-libs sqlite test tools zlib"
-CPU_USE=(
-       cpu_flags_arm_{aes,neon,sha1,sha2}
-       cpu_flags_ppc_altivec
-       cpu_flags_x86_{aes,avx2,popcnt,rdrand,sha,sse2,ssse3,sse4_1,sse4_2}
-)
-IUSE+=" ${CPU_USE[@]}"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-# NOTE: Boost is needed at runtime too for the CLI tool.
-DEPEND="
-       boost? ( dev-libs/boost:= )
-       bzip2? ( >=app-arch/bzip2-1.0.5:= )
-       lzma? ( app-arch/xz-utils:= )
-       python? ( ${PYTHON_DEPS} )
-       sqlite? ( dev-db/sqlite:3= )
-       zlib? ( >=sys-libs/zlib-1.2.3:= )
-"
-RDEPEND="
-       ${DEPEND}
-       !<dev-libs/botan-2.19.3-r1:2[tools]
-"
-BDEPEND="
-       ${PYTHON_DEPS}
-       ${NINJA_DEPEND}
-       $(python_gen_any_dep '
-               doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
-       ')
-       || ( >=sys-devel/gcc-11:* >=llvm-core/clang-14:* )
-       verify-sig? ( sec-keys/openpgp-keys-botan )
-"
-
-# NOTE: Considering patching Botan?
-# Please see upstream's guidance:
-# 
https://botan.randombit.net/handbook/packaging.html#minimize-distribution-patches
-
-PATCHES=(
-       "${FILESDIR}"/${P}-boost-1.87.patch
-       "${FILESDIR}"/${P}-tests-glibcxx_assertions.patch
-       "${FILESDIR}"/${PN}-3.6.1-no-avx2.patch
-)
-
-python_check_deps() {
-       use doc || return 0
-       python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]"
-}
-
-pkg_pretend() {
-       [[ ${MERGE_TYPE} == binary ]] && return
-
-       # bug #908958
-       if tc-is-gcc && ver_test $(gcc-version) -lt 11 ; then
-               eerror "Botan needs >=gcc-11 or >=clang-14 to compile."
-               eerror "Please upgrade GCC: emerge -v1 sys-devel/gcc"
-               die "GCC version is too old to compile Botan!"
-       elif tc-is-clang && ver_test $(clang-version) -lt 14 ; then
-               eerror "Botan needs >=gcc-11 or >=clang-14 to compile."
-               eerror "Please upgrade Clang: emerge -v1 llvm-core/clang"
-               die "Clang version is too old to compile Botan!"
-       fi
-}
-
-src_configure() {
-       tc-export AR CC CXX
-       python_setup
-
-       local disable_modules=(
-               $(usev !boost 'boost')
-       )
-
-       if [[ -z "${DISABLE_MODULES}" ]] ; then
-               elog "Disabling module(s): ${disable_modules[@]}"
-       fi
-
-       local chostarch="${CHOST%%-*}"
-
-       # Arch specific wrangling
-       local myos=
-       case ${CHOST} in
-               *-darwin*)
-                       myos=darwin
-                       ;;
-               *)
-                       myos=linux
-
-                       if [[ ${CHOST} == *hppa* ]] ; then
-                               chostarch=parisc
-                       elif [[ ${ABI} == sparc64 ]] ; then
-                               chostarch="sparc64"
-                       elif [[ ${ABI} == sparc32 ]] ; then
-                               chostarch="sparc32"
-                       fi
-                       ;;
-       esac
-
-       local pythonvers=()
-       if use python ; then
-               _append() {
-                       pythonvers+=( ${EPYTHON/python/} )
-               }
-
-               python_foreach_impl _append
-       fi
-
-       local myargs=(
-               # Intrinsics
-               # TODO: x86 RDSEED (new CPU_FLAGS_X86?)
-               # TODO: POWER Crypto (new CPU_FLAGS_PPC?)
-               $(usev !cpu_flags_arm_aes '--disable-armv8crypto')
-               $(usev !cpu_flags_arm_neon '--disable-neon')
-               $(usev !cpu_flags_arm_sha1 '--disable-armv8crypto')
-               $(usev !cpu_flags_arm_sha2 '--disable-armv8crypto')
-               $(usev !cpu_flags_ppc_altivec '--disable-altivec')
-               $(usev !cpu_flags_x86_aes '--disable-aes-ni')
-               $(usev !cpu_flags_x86_avx2 '--disable-avx2')
-               $(usev !cpu_flags_x86_popcnt '--disable-bmi2')
-               $(usev !cpu_flags_x86_rdrand '--disable-rdrand')
-               $(usev !cpu_flags_x86_sha '--disable-sha-ni')
-               $(usev !cpu_flags_x86_sse2 '--disable-sse2')
-               $(usev !cpu_flags_x86_ssse3 '--disable-ssse3')
-               $(usev !cpu_flags_x86_sse4_1 '--disable-sse4.1')
-               $(usev !cpu_flags_x86_sse4_2 '--disable-sse4.2')
-
-               # HPPA's GCC doesn't support SSP
-               $(usev hppa '--without-stack-protector')
-
-               $(use_with boost)
-               $(use_with bzip2)
-               $(use_with doc documentation)
-               $(use_with doc sphinx)
-               $(use_with lzma)
-               $(use_enable static-libs static-library)
-               $(use_with sqlite sqlite3)
-               $(use_with zlib)
-
-               --build-tool=ninja
-               --cpu=${chostarch}
-               --docdir=share/doc
-               --disable-modules=$(IFS=","; echo "${disable_modules[*]}")
-               --distribution-info="Gentoo ${PVR}"
-               --libdir="$(get_libdir)"
-               # Avoid collisions between slots for tools (bug #905700)
-               --program-suffix=$(ver_cut 1)
-
-               # Don't install Python bindings automatically
-               # (do it manually later in the right place)
-               # bug #723096
-               --no-install-python-module
-
-               --os=${myos}
-               --prefix="${EPREFIX}"/usr
-               --with-endian="$(tc-endian)"
-               --with-python-version=$(IFS=","; echo "${pythonvers[*]}")
-       )
-
-       local build_targets=(
-               shared
-               $(usev static-libs static)
-               $(usev tools cli)
-               $(usev test tests)
-       )
-
-       myargs+=(
-               --build-targets=$(IFS=","; echo "${build_targets[*]}")
-       )
-
-       if ( use elibc_glibc || use elibc_musl ) && use kernel_linux ; then
-               myargs+=(
-                       --with-os-features=getrandom,getentropy
-               )
-       fi
-
-       local sanitizers=()
-       if is-flagq -fsanitize=address ; then
-               sanitizers+=( address )
-       fi
-       if is-flagq -fsanitize=undefined ; then
-               sanitizers+=( undefined )
-       fi
-       filter-flags '-fsanitize=*'
-       myargs+=(
-               --enable-sanitizers=$(IFS=","; echo "${sanitizers[*]}")
-       )
-
-       edo ${EPYTHON} configure.py --verbose "${myargs[@]}"
-}
-
-src_compile() {
-       eninja
-}
-
-src_test() {
-       LD_LIBRARY_PATH="${S}" edo ./botan-test$(ver_cut 1) 
--test-threads="$(makeopts_jobs)"
-}
-
-src_install() {
-       DESTDIR="${D}" eninja install
-
-       if [[ -d "${ED}"/usr/share/doc/${P} && ${P} != ${PF} ]] ; then
-               # --docdir in configure controls the parent directory 
unfortunately
-               mv "${ED}"/usr/share/doc/${P} "${ED}"/usr/share/doc/${PF} || die
-       fi
-
-       # Manually install the Python bindings (bug #723096)
-       if use python ; then
-               python_foreach_impl python_domodule src/python/botan$(ver_cut 
1).py
-       fi
-}

diff --git a/dev-libs/botan/files/botan-3.2.0-ninja.patch 
b/dev-libs/botan/files/botan-3.2.0-ninja.patch
deleted file mode 100644
index 826fc496fb31..000000000000
--- a/dev-libs/botan/files/botan-3.2.0-ninja.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-https://bugs.gentoo.org/915544
-https://github.com/randombit/botan/commit/a1a32558669a6751e39420b26930d477790509ce
-
-From a1a32558669a6751e39420b26930d477790509ce Mon Sep 17 00:00:00 2001
-From: Jack Lloyd <[email protected]>
-Date: Wed, 11 Oct 2023 07:36:31 -0400
-Subject: [PATCH] Fix Ninja build to pass instruction set flags to the compiler
-
-Fixes #3750
---- a/src/build-data/ninja.in
-+++ b/src/build-data/ninja.in
-@@ -161,6 +161,7 @@ build tidy: tidy
- 
- %{for lib_build_info}
- build %{obj}: compile_lib %{src}
-+  isa_flags = %{isa_flags}
- %{endfor}
- 
- %{for cli_build_info}
-

diff --git a/dev-libs/botan/files/botan-3.6.1-boost-1.87.patch 
b/dev-libs/botan/files/botan-3.6.1-boost-1.87.patch
deleted file mode 100644
index eb42cad0567d..000000000000
--- a/dev-libs/botan/files/botan-3.6.1-boost-1.87.patch
+++ /dev/null
@@ -1,322 +0,0 @@
-https://bugs.gentoo.org/946389
-https://github.com/randombit/botan/pull/4484
-
-From 2a406beab449a2cb310fa543451a7087ca7b4b1a Mon Sep 17 00:00:00 2001
-From: q66 <[email protected]>
-Date: Sun, 15 Dec 2024 02:42:02 +0100
-Subject: [PATCH 1/2] Remove usage of deprecated asio API
-
-These were all finally dropped with boost 1.87, so this fixes
-build with boost 1.87.
---- a/src/cli/tls_proxy.cpp
-+++ b/src/cli/tls_proxy.cpp
-@@ -106,11 +106,11 @@ class tls_proxy_session final : public 
std::enable_shared_from_this<tls_proxy_se
- 
-       typedef std::shared_ptr<tls_proxy_session> pointer;
- 
--      static pointer create(boost::asio::io_service& io,
-+      static pointer create(boost::asio::io_context& io,
-                             const 
std::shared_ptr<Botan::TLS::Session_Manager>& session_manager,
-                             const 
std::shared_ptr<Botan::Credentials_Manager>& credentials,
-                             const std::shared_ptr<Botan::TLS::Policy>& policy,
--                            const tcp::resolver::iterator& endpoints) {
-+                            const tcp::resolver::results_type& endpoints) {
-          auto session = std::make_shared<tls_proxy_session>(io, endpoints);
- 
-          // Defer the setup of the TLS server to make use of
-@@ -144,7 +144,7 @@ class tls_proxy_session final : public 
std::enable_shared_from_this<tls_proxy_se
-          }
-       }
- 
--      tls_proxy_session(boost::asio::io_service& io, tcp::resolver::iterator 
endpoints) :
-+      tls_proxy_session(boost::asio::io_context& io, 
tcp::resolver::results_type endpoints) :
-             m_strand(io),
-             m_server_endpoints(std::move(endpoints)),
-             m_client_socket(io),
-@@ -287,7 +287,7 @@ class tls_proxy_session final : public 
std::enable_shared_from_this<tls_proxy_se
- 
-       void tls_session_activated() override {
-          auto onConnect = [self = weak_from_this()](boost::system::error_code 
ec,
--                                                    const 
tcp::resolver::iterator& /*endpoint*/) {
-+                                                    
tcp::resolver::results_type::iterator /*endpoint*/) {
-             if(ec) {
-                log_error("Server connection", ec);
-                return;
-@@ -301,7 +301,7 @@ class tls_proxy_session final : public 
std::enable_shared_from_this<tls_proxy_se
-                return;
-             }
-          };
--         async_connect(m_server_socket, m_server_endpoints, onConnect);
-+         async_connect(m_server_socket, m_server_endpoints.begin(), 
m_server_endpoints.end(), onConnect);
-       }
- 
-       void tls_session_established(const Botan::TLS::Session_Summary& 
session) override {
-@@ -315,9 +315,9 @@ class tls_proxy_session final : public 
std::enable_shared_from_this<tls_proxy_se
-          }
-       }
- 
--      boost::asio::io_service::strand m_strand;
-+      boost::asio::io_context::strand m_strand;
- 
--      tcp::resolver::iterator m_server_endpoints;
-+      tcp::resolver::results_type m_server_endpoints;
- 
-       tcp::socket m_client_socket;
-       tcp::socket m_server_socket;
-@@ -341,9 +341,9 @@ class tls_proxy_server final {
-    public:
-       typedef tls_proxy_session session;
- 
--      tls_proxy_server(boost::asio::io_service& io,
-+      tls_proxy_server(boost::asio::io_context& io,
-                        unsigned short port,
--                       tcp::resolver::iterator endpoints,
-+                       tcp::resolver::results_type endpoints,
-                        std::shared_ptr<Botan::Credentials_Manager> creds,
-                        std::shared_ptr<Botan::TLS::Policy> policy,
-                        std::shared_ptr<Botan::TLS::Session_Manager> 
session_mgr,
-@@ -383,7 +383,7 @@ class tls_proxy_server final {
-       }
- 
-       tcp::acceptor m_acceptor;
--      tcp::resolver::iterator m_server_endpoints;
-+      tcp::resolver::results_type m_server_endpoints;
- 
-       std::shared_ptr<Botan::Credentials_Manager> m_creds;
-       std::shared_ptr<Botan::TLS::Policy> m_policy;
-@@ -429,10 +429,10 @@ class TLS_Proxy final : public Command {
- 
-          auto policy = load_tls_policy(get_arg("policy"));
- 
--         boost::asio::io_service io;
-+         boost::asio::io_context io;
- 
-          tcp::resolver resolver(io);
--         auto server_endpoint_iterator = resolver.resolve({target, 
target_port});
-+         auto server_endpoint_iterator = resolver.resolve(target, 
target_port);
- 
-          std::shared_ptr<Botan::TLS::Session_Manager> session_mgr;
- 
---- a/src/lib/utils/socket/socket.cpp
-+++ b/src/lib/utils/socket/socket.cpp
-@@ -46,20 +46,19 @@ class Asio_Socket final : public OS::Socket {
-    public:
-       Asio_Socket(std::string_view hostname, std::string_view service, 
std::chrono::milliseconds timeout) :
-             m_timeout(timeout), m_timer(m_io), m_tcp(m_io) {
--         m_timer.expires_from_now(m_timeout);
-+         m_timer.expires_after(m_timeout);
-          check_timeout();
- 
-          boost::asio::ip::tcp::resolver resolver(m_io);
--         boost::asio::ip::tcp::resolver::query query(std::string{hostname}, 
std::string{service});
--         boost::asio::ip::tcp::resolver::iterator dns_iter = 
resolver.resolve(query);
-+         boost::asio::ip::tcp::resolver::results_type dns_iter = 
resolver.resolve(std::string{hostname}, std::string{service});
- 
-          boost::system::error_code ec = boost::asio::error::would_block;
- 
--         auto connect_cb = [&ec](const boost::system::error_code& e, const 
boost::asio::ip::tcp::resolver::iterator&) {
-+         auto connect_cb = [&ec](const boost::system::error_code& e, 
boost::asio::ip::tcp::resolver::results_type::iterator) {
-             ec = e;
-          };
- 
--         boost::asio::async_connect(m_tcp, dns_iter, connect_cb);
-+         boost::asio::async_connect(m_tcp, dns_iter.begin(), dns_iter.end(), 
connect_cb);
- 
-          while(ec == boost::asio::error::would_block) {
-             m_io.run_one();
-@@ -74,7 +73,7 @@ class Asio_Socket final : public OS::Socket {
-       }
- 
-       void write(const uint8_t buf[], size_t len) override {
--         m_timer.expires_from_now(m_timeout);
-+         m_timer.expires_after(m_timeout);
- 
-          boost::system::error_code ec = boost::asio::error::would_block;
- 
-@@ -90,7 +89,7 @@ class Asio_Socket final : public OS::Socket {
-       }
- 
-       size_t read(uint8_t buf[], size_t len) override {
--         m_timer.expires_from_now(m_timeout);
-+         m_timer.expires_after(m_timeout);
- 
-          boost::system::error_code ec = boost::asio::error::would_block;
-          size_t got = 0;
-@@ -116,7 +115,7 @@ class Asio_Socket final : public OS::Socket {
- 
-    private:
-       void check_timeout() {
--         if(m_tcp.is_open() && m_timer.expires_at() < 
std::chrono::system_clock::now()) {
-+         if(m_tcp.is_open() && m_timer.expiry() < 
std::chrono::system_clock::now()) {
-             boost::system::error_code err;
- 
-             // NOLINTNEXTLINE(bugprone-unused-return-value,cert-err33-c)
-@@ -127,7 +126,7 @@ class Asio_Socket final : public OS::Socket {
-       }
- 
-       const std::chrono::milliseconds m_timeout;
--      boost::asio::io_service m_io;
-+      boost::asio::io_context m_io;
-       boost::asio::system_timer m_timer;
-       boost::asio::ip::tcp::socket m_tcp;
- };
---- a/src/lib/utils/socket/socket_udp.cpp
-+++ b/src/lib/utils/socket/socket_udp.cpp
-@@ -46,20 +46,19 @@ class Asio_SocketUDP final : public OS::SocketUDP {
-    public:
-       Asio_SocketUDP(std::string_view hostname, std::string_view service, 
std::chrono::microseconds timeout) :
-             m_timeout(timeout), m_timer(m_io), m_udp(m_io) {
--         m_timer.expires_from_now(m_timeout);
-+         m_timer.expires_after(m_timeout);
-          check_timeout();
- 
-          boost::asio::ip::udp::resolver resolver(m_io);
--         boost::asio::ip::udp::resolver::query query(std::string{hostname}, 
std::string{service});
--         boost::asio::ip::udp::resolver::iterator dns_iter = 
resolver.resolve(query);
-+         boost::asio::ip::udp::resolver::results_type dns_iter = 
resolver.resolve(std::string{hostname}, std::string{service});
- 
-          boost::system::error_code ec = boost::asio::error::would_block;
- 
--         auto connect_cb = [&ec](const boost::system::error_code& e, const 
boost::asio::ip::udp::resolver::iterator&) {
-+         auto connect_cb = [&ec](const boost::system::error_code& e, 
boost::asio::ip::udp::resolver::results_type::iterator) {
-             ec = e;
-          };
- 
--         boost::asio::async_connect(m_udp, dns_iter, connect_cb);
-+         boost::asio::async_connect(m_udp, dns_iter.begin(), dns_iter.end(), 
connect_cb);
- 
-          while(ec == boost::asio::error::would_block) {
-             m_io.run_one();
-@@ -74,7 +73,7 @@ class Asio_SocketUDP final : public OS::SocketUDP {
-       }
- 
-       void write(const uint8_t buf[], size_t len) override {
--         m_timer.expires_from_now(m_timeout);
-+         m_timer.expires_after(m_timeout);
- 
-          boost::system::error_code ec = boost::asio::error::would_block;
- 
-@@ -90,7 +89,7 @@ class Asio_SocketUDP final : public OS::SocketUDP {
-       }
- 
-       size_t read(uint8_t buf[], size_t len) override {
--         m_timer.expires_from_now(m_timeout);
-+         m_timer.expires_after(m_timeout);
- 
-          boost::system::error_code ec = boost::asio::error::would_block;
-          size_t got = 0;
-@@ -116,7 +115,7 @@ class Asio_SocketUDP final : public OS::SocketUDP {
- 
-    private:
-       void check_timeout() {
--         if(m_udp.is_open() && m_timer.expires_at() < 
std::chrono::system_clock::now()) {
-+         if(m_udp.is_open() && m_timer.expiry() < 
std::chrono::system_clock::now()) {
-             boost::system::error_code err;
- 
-             // NOLINTNEXTLINE(bugprone-unused-return-value,cert-err33-c)
-@@ -127,7 +126,7 @@ class Asio_SocketUDP final : public OS::SocketUDP {
-       }
- 
-       const std::chrono::microseconds m_timeout;
--      boost::asio::io_service m_io;
-+      boost::asio::io_context m_io;
-       boost::asio::system_timer m_timer;
-       boost::asio::ip::udp::socket m_udp;
- };
-
-From 3820f357017eacef1fcb5119582bc9789b88f6c2 Mon Sep 17 00:00:00 2001
-From: Jack Lloyd <[email protected]>
-Date: Wed, 18 Dec 2024 17:10:34 -0500
-Subject: [PATCH 2/2] Address review comments
-
---- a/src/cli/tls_proxy.cpp
-+++ b/src/cli/tls_proxy.cpp
-@@ -287,7 +287,7 @@ class tls_proxy_session final : public 
std::enable_shared_from_this<tls_proxy_se
- 
-       void tls_session_activated() override {
-          auto onConnect = [self = weak_from_this()](boost::system::error_code 
ec,
--                                                    
tcp::resolver::results_type::iterator /*endpoint*/) {
-+                                                    const 
tcp::resolver::results_type::iterator& /*endpoint*/) {
-             if(ec) {
-                log_error("Server connection", ec);
-                return;
---- a/src/examples/tls_stream_client.cpp
-+++ b/src/examples/tls_stream_client.cpp
-@@ -35,7 +35,7 @@ class Credentials_Manager : public 
Botan::Credentials_Manager {
- class client {
-    public:
-       client(boost::asio::io_context& io_context,
--             boost::asio::ip::tcp::resolver::iterator endpoint_iterator,
-+             const boost::asio::ip::tcp::resolver::results_type& endpoints,
-              std::string_view host,
-              const http::request<http::string_body>& req) :
-             m_request(req),
-@@ -46,7 +46,8 @@ class client {
-                                                         host)),
-             m_stream(io_context, m_ctx) {
-          boost::asio::async_connect(m_stream.lowest_layer(),
--                                    std::move(endpoint_iterator),
-+                                    endpoints.begin(),
-+                                    endpoints.end(),
-                                     boost::bind(&client::handle_connect, 
this, ap::error));
-       }
- 
-@@ -111,8 +112,7 @@ int main(int argc, char* argv[]) {
-       boost::asio::io_context io_context;
- 
-       boost::asio::ip::tcp::resolver resolver(io_context);
--      boost::asio::ip::tcp::resolver::query query(host, port);
--      boost::asio::ip::tcp::resolver::iterator iterator = 
resolver.resolve(query);
-+      boost::asio::ip::tcp::resolver::results_type endpoints = 
resolver.resolve(host, port);
- 
-       http::request<http::string_body> req;
-       req.version(11);
-@@ -121,7 +121,7 @@ int main(int argc, char* argv[]) {
-       req.set(http::field::host, host);
-       req.set(http::field::user_agent, Botan::version_string());
- 
--      client c(io_context, iterator, host, req);
-+      client c(io_context, endpoints, host, req);
- 
-       io_context.run();
-    } catch(std::exception& e) {
---- a/src/lib/utils/socket/socket.cpp
-+++ b/src/lib/utils/socket/socket.cpp
-@@ -50,13 +50,12 @@ class Asio_Socket final : public OS::Socket {
-          check_timeout();
- 
-          boost::asio::ip::tcp::resolver resolver(m_io);
--         boost::asio::ip::tcp::resolver::results_type dns_iter = 
resolver.resolve(std::string{hostname}, std::string{service});
-+         boost::asio::ip::tcp::resolver::results_type dns_iter =
-+            resolver.resolve(std::string{hostname}, std::string{service});
- 
-          boost::system::error_code ec = boost::asio::error::would_block;
- 
--         auto connect_cb = [&ec](const boost::system::error_code& e, 
boost::asio::ip::tcp::resolver::results_type::iterator) {
--            ec = e;
--         };
-+         auto connect_cb = [&ec](const boost::system::error_code& e, const 
auto&) { ec = e; };
- 
-          boost::asio::async_connect(m_tcp, dns_iter.begin(), dns_iter.end(), 
connect_cb);
- 
---- a/src/lib/utils/socket/socket_udp.cpp
-+++ b/src/lib/utils/socket/socket_udp.cpp
-@@ -50,13 +50,13 @@ class Asio_SocketUDP final : public OS::SocketUDP {
-          check_timeout();
- 
-          boost::asio::ip::udp::resolver resolver(m_io);
--         boost::asio::ip::udp::resolver::results_type dns_iter = 
resolver.resolve(std::string{hostname}, std::string{service});
-+         boost::asio::ip::udp::resolver::results_type dns_iter =
-+            resolver.resolve(std::string{hostname}, std::string{service});
- 
-          boost::system::error_code ec = boost::asio::error::would_block;
- 
--         auto connect_cb = [&ec](const boost::system::error_code& e, 
boost::asio::ip::udp::resolver::results_type::iterator) {
--            ec = e;
--         };
-+         auto connect_cb = [&ec](const boost::system::error_code& e,
-+                                 const 
boost::asio::ip::udp::resolver::results_type::iterator&) { ec = e; };
- 
-          boost::asio::async_connect(m_udp, dns_iter.begin(), dns_iter.end(), 
connect_cb);
- 
-

diff --git a/dev-libs/botan/files/botan-3.6.1-no-avx2.patch 
b/dev-libs/botan/files/botan-3.6.1-no-avx2.patch
deleted file mode 100644
index b72e23c5d6d9..000000000000
--- a/dev-libs/botan/files/botan-3.6.1-no-avx2.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-https://bugs.gentoo.org/946821
-https://github.com/randombit/botan/issues/4493
-https://github.com/randombit/botan/pull/4494
-
-From 07d0556e03c4a2f96c0e26073523b944b86cdfc5 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Ren=C3=A9=20Meusel?= <[email protected]>
-Date: Mon, 23 Dec 2024 09:29:07 +0100
-Subject: [PATCH] FIX: SM4 GFNI needs AVX2
-
-closes #4493
----
- src/lib/block/sm4/sm4_gfni/info.txt | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/src/lib/block/sm4/sm4_gfni/info.txt 
b/src/lib/block/sm4/sm4_gfni/info.txt
-index 4c5867f9b72..1ec736e7cd4 100644
---- a/src/lib/block/sm4/sm4_gfni/info.txt
-+++ b/src/lib/block/sm4/sm4_gfni/info.txt
-@@ -7,6 +7,10 @@ name -> "SM4 GFNI"
- brief -> "SM4 using Intel GFNI"
- </module_info>
- 
-+<requires>
-+simd_avx2
-+</requires>
-+
- <isa>
- gfni
- </isa>

diff --git a/dev-libs/botan/files/botan-3.6.1-tests-glibcxx_assertions.patch 
b/dev-libs/botan/files/botan-3.6.1-tests-glibcxx_assertions.patch
deleted file mode 100644
index 204adbc15825..000000000000
--- a/dev-libs/botan/files/botan-3.6.1-tests-glibcxx_assertions.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-https://github.com/randombit/botan/issues/4491
-https://github.com/randombit/botan/commit/3e0cb45cc94764e3ff221ceb141421a83eb27aef
-
-From 3e0cb45cc94764e3ff221ceb141421a83eb27aef Mon Sep 17 00:00:00 2001
-From: Jack Lloyd <[email protected]>
-Date: Mon, 28 Oct 2024 18:13:52 -0400
-Subject: [PATCH] Workaround apparent libstdc++ bug in Ubuntu 24.04
-
-The iterator checks failed when we attempted to use first to extract
-ideal_granularity bytes out of dummy_buffer, but on testing it failed
-exactly when ideal_granularity was 256 bytes, the same size as
-dummy_buffer itself.
-
-Increase the size and add an assert that the buffer is large enough.
----
- src/tests/test_ffi.cpp | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/tests/test_ffi.cpp b/src/tests/test_ffi.cpp
-index 647e6ad10b..592435b142 100644
---- a/src/tests/test_ffi.cpp
-+++ b/src/tests/test_ffi.cpp
-@@ -1381,7 +1381,7 @@ class FFI_AEAD_Test final : public FFI_Test {
-             std::vector<uint8_t> ciphertext(ideal_granularity * pt_multiplier 
+ taglen);
-             TEST_FFI_OK(botan_rng_get, (rng, plaintext.data(), 
plaintext.size()));
- 
--            std::vector<uint8_t> dummy_buffer(256);
-+            std::vector<uint8_t> dummy_buffer(1024);
-             TEST_FFI_OK(botan_rng_get, (rng, dummy_buffer.data(), 
dummy_buffer.size()));
-             std::vector<uint8_t> dummy_buffer_reference = dummy_buffer;
- 
-@@ -1405,6 +1405,7 @@ class FFI_AEAD_Test final : public FFI_Test {
-                // input if there is no space in the output buffer. Even when
-                // the cipher is a mode that won't produce any output until the
-                // entire message is processed. Hence, give it some dummy 
buffer.
-+               BOTAN_ASSERT_NOMSG(dummy_buffer.size() > ideal_granularity);
-                auto ct_chunk = (requires_entire_message) ? 
std::span(dummy_buffer).first(ideal_granularity)
-                                                          : 
ct_stuffer.first(ideal_granularity);
- 
-

Reply via email to