public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/botan/, dev-libs/botan/files/
Date: Mon, 31 Mar 2025 23:39:51 +0000 (UTC)	[thread overview]
Message-ID: <1743464125.6c61b3da860312a8fa6ca55a7e96218fb0375135.sam@gentoo> (raw)

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 <jack@randombit.net>
-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 <q66@chimera-linux.org>
-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 <jack@randombit.net>
-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?= <rene.meusel@rohde-schwarz.com>
-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 <jack@randombit.net>
-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	other threads:[~2025-03-31 23:39 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-31 23:39 Sam James [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-12-23  2:48 [gentoo-commits] repo/gentoo:master commit in: dev-libs/botan/, dev-libs/botan/files/ Sam James
2024-12-22  0:22 Sam James
2023-10-12  8:12 Sam James
2023-07-06  2:11 Sam James
2019-05-08  9:35 Alon Bar-Lev
2018-04-08 19:21 Alon Bar-Lev
2017-10-04 18:57 Alon Bar-Lev
2017-03-21 10:01 Alon Bar-Lev
2017-01-22 20:45 Alon Bar-Lev
2017-01-18 14:52 Alon Bar-Lev
2016-12-01 20:13 Alon Bar-Lev
2016-12-01 19:09 Alon Bar-Lev
2016-10-28  8:26 Alon Bar-Lev
2016-10-22 19:58 Alon Bar-Lev

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1743464125.6c61b3da860312a8fa6ca55a7e96218fb0375135.sam@gentoo \
    --to=sam@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox