public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/botan/, dev-libs/botan/files/
@ 2016-10-22 19:58 Alon Bar-Lev
  0 siblings, 0 replies; 14+ messages in thread
From: Alon Bar-Lev @ 2016-10-22 19:58 UTC (permalink / raw
  To: gentoo-commits

commit:     adcad61d879eb78cdff223356eee90d11f22d3f3
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 22 19:23:58 2016 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Sat Oct 22 19:58:07 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=adcad61d

dev-libs/botan: version bump

Package-Manager: portage-2.3.0

 dev-libs/botan/Manifest                          |   2 +
 dev-libs/botan/botan-1.10.13.ebuild              | 150 +++++++++++++++++++++++
 dev-libs/botan/botan-1.11.32.ebuild              | 141 +++++++++++++++++++++
 dev-libs/botan/files/botan-1.11.32-urandom.patch |  26 ++++
 4 files changed, 319 insertions(+)

diff --git a/dev-libs/botan/Manifest b/dev-libs/botan/Manifest
index 8331908..6a0114f 100644
--- a/dev-libs/botan/Manifest
+++ b/dev-libs/botan/Manifest
@@ -1,2 +1,4 @@
 DIST Botan-1.10.12.tgz 2707397 SHA256 affc3a79919577943f896e64d3e4a4dcc4970c5bf80cc98c7f3a3144745eac27 SHA512 074ed9c89d715ada53a3366139da3f0f2fd7ee01941d301b0a9c1a897927ed88c0ade32f66768091664e6b652b7921b3b4c513106ee6ce1942dece3a25216bf5 WHIRLPOOL bfe7029e5ebf660434b14cd49e0c9f4612e9ee88ad50803edfa589754bede01dc39d71542b62eaaa0f7e85dbf623b4b11a90528bcb903c2333103685ce91401f
+DIST Botan-1.10.13.tgz 2710181 SHA256 23ec973d4b4a4fe04f490d409e08ac5638afe3aa09acd7f520daaff38ba19b90 SHA512 a09d2cb5dda21bf384b81675025f249abdfe232c95dc3383f0baebc2bf1603b2ed1e2aec9a81aae95df592ec2eeae8906c63474a6da42ad3701669a5d8f14656 WHIRLPOOL 4161d689205f02ed8b97bb371be47829d11dee744a024e24bb834264cfa6143c8a9fb7df969410975e4bf2b708063e3c05b6106c4dbe7f5566e3331ee5e901a9
 DIST Botan-1.11.29.tgz 3137027 SHA256 e604eca7f0a733f6ef23ddd9209d82589728a4befd48dff3532740130ebaeb94 SHA512 c6ad6cf3d68c3524b9532e9f52e74d89cc2abfd093f1a46a44efa94a87b0fa50278f11dc5953225160d090cf8ae1c372f54c23b5dffd1f3dae79e210195cfd72 WHIRLPOOL f97f0a013c5ed3c7ec7403b8ae584b7396b91a8fcf9181d7e53f17cbd172301c1c228378e58d851fd591f2be9584b18e3eba05e5c5709750a3cf6cc6538f1bc7
+DIST Botan-1.11.32.tgz 4036606 SHA256 b6b579a08adc4005f7d026120152460e8d4c8656293f7760d38c29b33d7e9c2c SHA512 c9ceff4d4d73c8de2198ac94cd5d585280bc17349f97a9007ba878e8682e7650a598962d68a61ed2e87174c0880b6d162e47744ff6df3e4e110b625672f93f1e WHIRLPOOL c932be4335dfa298ca7379bc00899ea4fc61b5fc2265712e0057b544c9ed4eb5e3f81f9f29e229a2929f292af4568f563579dd270b9764555654d45d57a3b713

diff --git a/dev-libs/botan/botan-1.10.13.ebuild b/dev-libs/botan/botan-1.10.13.ebuild
new file mode 100644
index 00000000..b618b9b
--- /dev/null
+++ b/dev-libs/botan/botan-1.10.13.ebuild
@@ -0,0 +1,150 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="6"
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+
+inherit eutils multilib python-r1 toolchain-funcs
+
+MY_PN="Botan"
+MY_P="${MY_PN}-${PV}"
+DESCRIPTION="A C++ crypto library"
+HOMEPAGE="http://botan.randombit.net/"
+SRC_URI="http://botan.randombit.net/releases/${MY_P}.tgz"
+
+KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~ppc-macos"
+SLOT="0"
+LICENSE="BSD"
+IUSE="bindist doc python bzip2 gmp ssl static-libs threads zlib"
+
+S="${WORKDIR}/${MY_P}"
+
+RDEPEND="bzip2? ( >=app-arch/bzip2-1.0.5 )
+	zlib? ( >=sys-libs/zlib-1.2.3 )
+	python? ( ${PYTHON_DEPS} >=dev-libs/boost-1.48[python,${PYTHON_USEDEP}] )
+	gmp? ( >=dev-libs/gmp-4.2.2:* )
+	ssl? ( >=dev-libs/openssl-0.9.8g:*[bindist=] )"
+DEPEND="${RDEPEND}
+	doc? ( dev-python/sphinx )"
+
+src_prepare() {
+	default
+
+	sed -e "s/-Wl,-soname,\$@ //" -i src/build-data/makefile/python.in || die "sed failed"
+	sed \
+		-e "/DOCDIR/d" \
+		-e "/^install:/s/ docs//" \
+		-i src/build-data/makefile/unix_shr.in || die "sed failed"
+
+	# Fix ImportError with Python 3.
+	sed -e "s/_botan/.&/" -i src/wrap/python/__init__.py || die "sed failed"
+
+	use python && python_copy_sources
+}
+
+src_configure() {
+	local disable_modules="proc_walk,unix_procs"
+	use threads || disable_modules+=",pthreads"
+	use bindist && disable_modules+=",ecdsa"
+	elog "Disabling modules: ${disable_modules}"
+
+	# Enable v9 instructions for sparc64
+	if [[ "${PROFILE_ARCH}" = "sparc64" ]]; then
+		CHOSTARCH="sparc32-v9"
+	else
+		CHOSTARCH="${CHOST%%-*}"
+	fi
+
+	local myos=
+	case ${CHOST} in
+		*-darwin*)   myos=darwin ;;
+		*)           myos=linux  ;;
+	esac
+
+	# foobared buildsystem, --prefix translates into DESTDIR, see also make
+	# install in src_install, we need the correct live-system prefix here on
+	# Darwin for a shared lib with correct install_name
+	./configure.py \
+		--prefix="${EPREFIX}/usr" \
+		--libdir=$(get_libdir) \
+		--docdir=share/doc \
+		--cc=gcc \
+		--os=${myos} \
+		--cpu=${CHOSTARCH} \
+		--with-endian="$(tc-endian)" \
+		--without-sphinx \
+		--with-tr1=system \
+		$(use_with bzip2) \
+		$(use_with gmp gnump) \
+		$(use_with python boost-python) \
+		$(use_with ssl openssl) \
+		$(use_with zlib) \
+		--disable-modules=${disable_modules} \
+		|| die "configure.py failed"
+}
+
+src_compile() {
+	emake CXX="$(tc-getCXX)" AR="$(tc-getAR) crs" LIB_OPT="${CXXFLAGS}" MACH_OPT=""
+
+	if use python; then
+		building() {
+			rm -fr build/python
+			ln -s "${BUILD_DIR}" build/python
+			cp Makefile.python build/python
+			sed -i \
+				-e "s/-lboost_python/-lboost_python-$(echo ${EPYTHON} | sed 's/python//')/" \
+				build/python/Makefile.python
+			emake -f build/python/Makefile.python \
+				CXX="$(tc-getCXX)" \
+				CFLAGS="${CXXFLAGS}" \
+				LDFLAGS="${LDFLAGS}" \
+				PYTHON_ROOT="/usr/$(get_libdir)" \
+				PYTHON_INC="-I$(python_get_includedir)"
+		}
+		python_foreach_impl building
+	fi
+
+	if use doc; then
+		einfo "Generation of documentation"
+		sphinx-build doc doc_output
+	fi
+}
+
+src_test() {
+	chmod -R ugo+rX "${S}"
+	emake CXX="$(tc-getCXX)" CHECK_OPT="${CXXFLAGS}" check
+	LD_LIBRARY_PATH="${S}" ./check --validate || die "Validation tests failed"
+}
+
+src_install() {
+	emake DESTDIR="${ED}usr" install
+
+	if ! use static-libs; then
+		rm "${ED}usr/$(get_libdir)/libbotan"*.a || die 'remove of static libs failed'
+	fi
+
+	# Add compatibility symlinks.
+	[[ -e "${ED}usr/bin/botan-config" ]] && die "Compatibility code no longer needed"
+	[[ -e "${ED}usr/$(get_libdir)/pkgconfig/botan.pc" ]] && die "Compatibility code no longer needed"
+	dosym botan-config-1.10 /usr/bin/botan-config
+	dosym botan-1.10.pc /usr/$(get_libdir)/pkgconfig/botan.pc
+
+	if use python; then
+		installation() {
+			rm -fr build/python
+			ln -s "${BUILD_DIR}" build/python
+			emake -f Makefile.python \
+				PYTHON_SITE_PACKAGE_DIR="${ED}$(python_get_sitedir)" \
+				install
+		}
+		python_foreach_impl installation
+	fi
+
+	if use doc; then
+		pushd doc_output > /dev/null
+		insinto /usr/share/doc/${PF}/html
+		doins -r [a-z]* _static
+		popd > /dev/null
+	fi
+}

diff --git a/dev-libs/botan/botan-1.11.32.ebuild b/dev-libs/botan/botan-1.11.32.ebuild
new file mode 100644
index 00000000..4e0c2eb
--- /dev/null
+++ b/dev-libs/botan/botan-1.11.32.ebuild
@@ -0,0 +1,141 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="6"
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+
+inherit eutils multilib python-r1 toolchain-funcs
+
+MY_PN="Botan"
+MY_P="${MY_PN}-${PV}"
+DESCRIPTION="A C++ crypto library"
+HOMEPAGE="http://botan.randombit.net/"
+SRC_URI="http://botan.randombit.net/releases/${MY_P}.tgz"
+
+KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~ppc-macos"
+SLOT="0"
+LICENSE="BSD"
+IUSE="bindist doc boost python bzip2 libressl lzma sqlite ssl static-libs zlib test"
+
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="python? ( boost )"
+
+RDEPEND="bzip2? ( >=app-arch/bzip2-1.0.5 )
+	zlib? ( >=sys-libs/zlib-1.2.3 )
+	boost? ( ${PYTHON_DEPS} >=dev-libs/boost-1.48[python?,${PYTHON_USEDEP}] )
+	lzma? ( app-arch/xz-utils )
+	sqlite? ( dev-db/sqlite:3 )
+	ssl? (
+		!libressl? ( >=dev-libs/openssl-0.9.8g:0[bindist=] )
+		libressl? ( dev-libs/libressl )
+	)"
+DEPEND="${RDEPEND}
+	test? ( app-misc/datefudge )
+	doc? ( dev-python/sphinx )"
+
+PATCHES=(
+	"${FILESDIR}/${P}-urandom.patch"
+)
+
+pkg_pretend() {
+	# Botan 1.11 requires -std=c++11
+	if [[ ${MERGE_TYPE} != binary ]]; then
+		[[ $(gcc-major-version) -lt 4 ]] || \
+		( [[ $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 7 ]] ) \
+		&& die "Sorry, but gcc 4.7 or higher is required."
+	fi
+}
+
+src_prepare() {
+	default
+	sed \
+		-e "/^install:/s/ docs//" \
+		-i src/build-data/makefile/gmake.in || die "sed failed"
+	use python && python_copy_sources
+}
+
+src_configure() {
+	local disable_modules=( proc_walk unix_procs )
+	use boost || disable_modules+=( "boost" )
+	use bindist && disable_modules+=( "ecdsa" )
+	use python || disable_modules+=( "ffi" )
+	elog "Disabling modules: ${disable_modules[@]}"
+
+	# Enable v9 instructions for sparc64
+	if [[ "${PROFILE_ARCH}" = "sparc64" ]]; then
+		CHOSTARCH="sparc32-v9"
+	else
+		CHOSTARCH="${CHOST%%-*}"
+	fi
+
+	local myos=
+	case ${CHOST} in
+		*-darwin*)   myos=darwin ;;
+		*)           myos=linux  ;;
+	esac
+
+	local pythonvers=()
+	if use python; then
+		append() {
+			pythonvers+=( ${EPYTHON/python/} )
+		}
+		python_foreach_impl append
+	fi
+
+	./configure.py \
+		--prefix="${EPREFIX}/usr" \
+		--destdir="${D}/${EPREFIX}/usr" \
+		--libdir=$(get_libdir) \
+		--docdir=share/doc \
+		--cc=gcc \
+		--os=${myos} \
+		--cpu=${CHOSTARCH} \
+		--with-endian="$(tc-endian)" \
+		--without-sphinx \
+		$(use_with bzip2) \
+		$(use_with lzma) \
+		$(use_with sqlite sqlite3) \
+		$(use_with ssl openssl) \
+		$(use_with zlib) \
+		$(use_with boost) \
+		--with-python-version=$(IFS=","; echo "${pythonvers[*]}" ) \
+		--disable-modules=$(IFS=","; echo "${disable_modules[*]}" ) \
+		|| die "configure.py failed"
+}
+
+src_compile() {
+	emake CXX="$(tc-getCXX) -pthread" AR="$(tc-getAR) crs" LIB_OPT="-c ${CXXFLAGS}"
+	if use doc; then
+		einfo "Generation of documentation"
+		sphinx-build doc doc_output
+	fi
+}
+
+src_test() {
+	LD_LIBRARY_PATH="${S}" datefudge "2016-10-01 00:00" ./botan-test || die "Validation tests failed"
+}
+
+src_install() {
+	emake install
+
+	if ! use static-libs; then
+		rm "${ED}usr/$(get_libdir)/libbotan"*.a || die 'remove of static libs failed'
+	fi
+
+	# Add compatibility symlinks.
+	[[ -e "${ED}usr/bin/botan-config" ]] && die "Compatibility code no longer needed"
+	[[ -e "${ED}usr/$(get_libdir)/pkgconfig/botan.pc" ]] && die "Compatibility code no longer needed"
+	dosym botan-config-1.11 /usr/bin/botan-config
+	dosym botan-1.11.pc /usr/$(get_libdir)/pkgconfig/botan.pc
+
+	use python && python_foreach_impl python_optimize
+
+	if use doc; then
+		pushd doc_output > /dev/null
+		insinto /usr/share/doc/${PF}/html
+		doins -r [a-z]* _static
+		popd > /dev/null
+	fi
+}

diff --git a/dev-libs/botan/files/botan-1.11.32-urandom.patch b/dev-libs/botan/files/botan-1.11.32-urandom.patch
new file mode 100644
index 00000000..6a4c53f
--- /dev/null
+++ b/dev-libs/botan/files/botan-1.11.32-urandom.patch
@@ -0,0 +1,26 @@
+diff --git a/src/lib/rng/system_rng/system_rng.cpp b/src/lib/rng/system_rng/system_rng.cpp
+index 135f4fa..3b44d5a 100644
+--- a/src/lib/rng/system_rng/system_rng.cpp
++++ b/src/lib/rng/system_rng/system_rng.cpp
+@@ -74,7 +74,7 @@ System_RNG_Impl::System_RNG_Impl()
+   #define O_NOCTTY 0
+ #endif
+ 
+-   m_fd = ::open(BOTAN_SYSTEM_RNG_DEVICE, O_RDWR | O_NOCTTY);
++   m_fd = ::open(BOTAN_SYSTEM_RNG_DEVICE, O_RDONLY | O_NOCTTY);
+    if(m_fd < 0)
+       throw Exception("System_RNG failed to open RNG device");
+ #endif
+diff --git a/src/tests/test_ffi.cpp b/src/tests/test_ffi.cpp
+index d481116..5b9f5fd 100644
+--- a/src/tests/test_ffi.cpp
++++ b/src/tests/test_ffi.cpp
+@@ -74,7 +74,7 @@ class FFI_Unit_Tests : public Test
+          if(TEST_FFI_OK(botan_rng_init, (&rng, "system")))
+             {
+             TEST_FFI_OK(botan_rng_get, (rng, outbuf.data(), outbuf.size()));
+-            TEST_FFI_OK(botan_rng_reseed, (rng, 256));
++            //TEST_FFI_OK(botan_rng_reseed, (rng, 256));
+             TEST_FFI_OK(botan_rng_destroy, (rng));
+             }
+ 


^ permalink raw reply related	[flat|nested] 14+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/botan/, dev-libs/botan/files/
@ 2016-10-28  8:26 Alon Bar-Lev
  0 siblings, 0 replies; 14+ messages in thread
From: Alon Bar-Lev @ 2016-10-28  8:26 UTC (permalink / raw
  To: gentoo-commits

commit:     3bc9bf8c1078e8427596f4a4022d769513094135
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 28 08:25:18 2016 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Fri Oct 28 08:26:03 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3bc9bf8c

dev-libs/botan: version bump

Package-Manager: portage-2.3.0

 dev-libs/botan/Manifest                            |  2 +-
 .../{botan-1.11.32.ebuild => botan-1.11.33.ebuild} |  9 ++------
 dev-libs/botan/files/botan-1.11.32-urandom.patch   | 26 ----------------------
 3 files changed, 3 insertions(+), 34 deletions(-)

diff --git a/dev-libs/botan/Manifest b/dev-libs/botan/Manifest
index 6a0114f..b12002e 100644
--- a/dev-libs/botan/Manifest
+++ b/dev-libs/botan/Manifest
@@ -1,4 +1,4 @@
 DIST Botan-1.10.12.tgz 2707397 SHA256 affc3a79919577943f896e64d3e4a4dcc4970c5bf80cc98c7f3a3144745eac27 SHA512 074ed9c89d715ada53a3366139da3f0f2fd7ee01941d301b0a9c1a897927ed88c0ade32f66768091664e6b652b7921b3b4c513106ee6ce1942dece3a25216bf5 WHIRLPOOL bfe7029e5ebf660434b14cd49e0c9f4612e9ee88ad50803edfa589754bede01dc39d71542b62eaaa0f7e85dbf623b4b11a90528bcb903c2333103685ce91401f
 DIST Botan-1.10.13.tgz 2710181 SHA256 23ec973d4b4a4fe04f490d409e08ac5638afe3aa09acd7f520daaff38ba19b90 SHA512 a09d2cb5dda21bf384b81675025f249abdfe232c95dc3383f0baebc2bf1603b2ed1e2aec9a81aae95df592ec2eeae8906c63474a6da42ad3701669a5d8f14656 WHIRLPOOL 4161d689205f02ed8b97bb371be47829d11dee744a024e24bb834264cfa6143c8a9fb7df969410975e4bf2b708063e3c05b6106c4dbe7f5566e3331ee5e901a9
 DIST Botan-1.11.29.tgz 3137027 SHA256 e604eca7f0a733f6ef23ddd9209d82589728a4befd48dff3532740130ebaeb94 SHA512 c6ad6cf3d68c3524b9532e9f52e74d89cc2abfd093f1a46a44efa94a87b0fa50278f11dc5953225160d090cf8ae1c372f54c23b5dffd1f3dae79e210195cfd72 WHIRLPOOL f97f0a013c5ed3c7ec7403b8ae584b7396b91a8fcf9181d7e53f17cbd172301c1c228378e58d851fd591f2be9584b18e3eba05e5c5709750a3cf6cc6538f1bc7
-DIST Botan-1.11.32.tgz 4036606 SHA256 b6b579a08adc4005f7d026120152460e8d4c8656293f7760d38c29b33d7e9c2c SHA512 c9ceff4d4d73c8de2198ac94cd5d585280bc17349f97a9007ba878e8682e7650a598962d68a61ed2e87174c0880b6d162e47744ff6df3e4e110b625672f93f1e WHIRLPOOL c932be4335dfa298ca7379bc00899ea4fc61b5fc2265712e0057b544c9ed4eb5e3f81f9f29e229a2929f292af4568f563579dd270b9764555654d45d57a3b713
+DIST Botan-1.11.33.tgz 4329671 SHA256 d65f95399dc5710aea90d682d65e554fed4571115f1382416e9142370a47e949 SHA512 49bb4485663897dd07bb7982771befacc50bfabef5806dc802cbd4d39f5d641b08a264824b5b1b96421e810811353deea15e728c5d08ce2932cf0e4602ae099d WHIRLPOOL 86154158915e29eef7753797df037d560078bda4ecfaafffba1064a238618b1ec10e0712b85cd64537ca3dfbac5ce38bf1323456d30b2bd5a51c0dae7f81d339

diff --git a/dev-libs/botan/botan-1.11.32.ebuild b/dev-libs/botan/botan-1.11.33.ebuild
similarity index 94%
rename from dev-libs/botan/botan-1.11.32.ebuild
rename to dev-libs/botan/botan-1.11.33.ebuild
index 4e0c2eb..0b97491 100644
--- a/dev-libs/botan/botan-1.11.32.ebuild
+++ b/dev-libs/botan/botan-1.11.33.ebuild
@@ -16,7 +16,7 @@ SRC_URI="http://botan.randombit.net/releases/${MY_P}.tgz"
 KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~ppc-macos"
 SLOT="0"
 LICENSE="BSD"
-IUSE="bindist doc boost python bzip2 libressl lzma sqlite ssl static-libs zlib test"
+IUSE="bindist doc boost python bzip2 libressl lzma sqlite ssl static-libs zlib"
 
 S="${WORKDIR}/${MY_P}"
 
@@ -32,13 +32,8 @@ RDEPEND="bzip2? ( >=app-arch/bzip2-1.0.5 )
 		libressl? ( dev-libs/libressl )
 	)"
 DEPEND="${RDEPEND}
-	test? ( app-misc/datefudge )
 	doc? ( dev-python/sphinx )"
 
-PATCHES=(
-	"${FILESDIR}/${P}-urandom.patch"
-)
-
 pkg_pretend() {
 	# Botan 1.11 requires -std=c++11
 	if [[ ${MERGE_TYPE} != binary ]]; then
@@ -114,7 +109,7 @@ src_compile() {
 }
 
 src_test() {
-	LD_LIBRARY_PATH="${S}" datefudge "2016-10-01 00:00" ./botan-test || die "Validation tests failed"
+	LD_LIBRARY_PATH="${S}" ./botan-test || die "Validation tests failed"
 }
 
 src_install() {

diff --git a/dev-libs/botan/files/botan-1.11.32-urandom.patch b/dev-libs/botan/files/botan-1.11.32-urandom.patch
deleted file mode 100644
index 6a4c53f..00000000
--- a/dev-libs/botan/files/botan-1.11.32-urandom.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/src/lib/rng/system_rng/system_rng.cpp b/src/lib/rng/system_rng/system_rng.cpp
-index 135f4fa..3b44d5a 100644
---- a/src/lib/rng/system_rng/system_rng.cpp
-+++ b/src/lib/rng/system_rng/system_rng.cpp
-@@ -74,7 +74,7 @@ System_RNG_Impl::System_RNG_Impl()
-   #define O_NOCTTY 0
- #endif
- 
--   m_fd = ::open(BOTAN_SYSTEM_RNG_DEVICE, O_RDWR | O_NOCTTY);
-+   m_fd = ::open(BOTAN_SYSTEM_RNG_DEVICE, O_RDONLY | O_NOCTTY);
-    if(m_fd < 0)
-       throw Exception("System_RNG failed to open RNG device");
- #endif
-diff --git a/src/tests/test_ffi.cpp b/src/tests/test_ffi.cpp
-index d481116..5b9f5fd 100644
---- a/src/tests/test_ffi.cpp
-+++ b/src/tests/test_ffi.cpp
-@@ -74,7 +74,7 @@ class FFI_Unit_Tests : public Test
-          if(TEST_FFI_OK(botan_rng_init, (&rng, "system")))
-             {
-             TEST_FFI_OK(botan_rng_get, (rng, outbuf.data(), outbuf.size()));
--            TEST_FFI_OK(botan_rng_reseed, (rng, 256));
-+            //TEST_FFI_OK(botan_rng_reseed, (rng, 256));
-             TEST_FFI_OK(botan_rng_destroy, (rng));
-             }
- 


^ permalink raw reply related	[flat|nested] 14+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/botan/, dev-libs/botan/files/
@ 2016-12-01 19:09 Alon Bar-Lev
  0 siblings, 0 replies; 14+ messages in thread
From: Alon Bar-Lev @ 2016-12-01 19:09 UTC (permalink / raw
  To: gentoo-commits

commit:     14ab24951ea392b9e8c62aa3441ac050d6ecdf58
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Thu Dec  1 19:07:58 2016 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Thu Dec  1 19:09:18 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=14ab2495

dev-libs/botan: version bump

Bug: 601344

Package-Manager: portage-2.3.0

 dev-libs/botan/Manifest                        |   1 +
 dev-libs/botan/botan-1.10.14.ebuild            | 154 +++++++++++++++++++++++++
 dev-libs/botan/files/botan-1.10.14-build.patch |  26 +++++
 3 files changed, 181 insertions(+)

diff --git a/dev-libs/botan/Manifest b/dev-libs/botan/Manifest
index de8009a..d5f8885 100644
--- a/dev-libs/botan/Manifest
+++ b/dev-libs/botan/Manifest
@@ -1,3 +1,4 @@
 DIST Botan-1.10.12.tgz 2707397 SHA256 affc3a79919577943f896e64d3e4a4dcc4970c5bf80cc98c7f3a3144745eac27 SHA512 074ed9c89d715ada53a3366139da3f0f2fd7ee01941d301b0a9c1a897927ed88c0ade32f66768091664e6b652b7921b3b4c513106ee6ce1942dece3a25216bf5 WHIRLPOOL bfe7029e5ebf660434b14cd49e0c9f4612e9ee88ad50803edfa589754bede01dc39d71542b62eaaa0f7e85dbf623b4b11a90528bcb903c2333103685ce91401f
 DIST Botan-1.10.13.tgz 2710181 SHA256 23ec973d4b4a4fe04f490d409e08ac5638afe3aa09acd7f520daaff38ba19b90 SHA512 a09d2cb5dda21bf384b81675025f249abdfe232c95dc3383f0baebc2bf1603b2ed1e2aec9a81aae95df592ec2eeae8906c63474a6da42ad3701669a5d8f14656 WHIRLPOOL 4161d689205f02ed8b97bb371be47829d11dee744a024e24bb834264cfa6143c8a9fb7df969410975e4bf2b708063e3c05b6106c4dbe7f5566e3331ee5e901a9
+DIST Botan-1.10.14.tgz 2710757 SHA256 10ed0b394db165733ac9557d8656356b7e9744d38c61c2b9c44cba6d84ff4c1c SHA512 ae524653a99b02d6d8d7bb2b88a446c066fe1044d8fd2708ea2a4cd5aafbe2b0d165d2ce1730669a4df18013cf5b6540bb5944bafea512b4957e3417de512e95 WHIRLPOOL 51aa1d68757ad515f65c255c585be8050efed085800340d43fa068b48647ef8c50fc9e284ac16d0cef3d874f5fa44f143210dcc004561807e1d1b307d89cff9d
 DIST Botan-1.11.33.tgz 4329671 SHA256 d65f95399dc5710aea90d682d65e554fed4571115f1382416e9142370a47e949 SHA512 49bb4485663897dd07bb7982771befacc50bfabef5806dc802cbd4d39f5d641b08a264824b5b1b96421e810811353deea15e728c5d08ce2932cf0e4602ae099d WHIRLPOOL 86154158915e29eef7753797df037d560078bda4ecfaafffba1064a238618b1ec10e0712b85cd64537ca3dfbac5ce38bf1323456d30b2bd5a51c0dae7f81d339

diff --git a/dev-libs/botan/botan-1.10.14.ebuild b/dev-libs/botan/botan-1.10.14.ebuild
new file mode 100644
index 00000000..1150e0d
--- /dev/null
+++ b/dev-libs/botan/botan-1.10.14.ebuild
@@ -0,0 +1,154 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="6"
+PYTHON_COMPAT=( python{2_7,3_4} )
+
+inherit eutils multilib python-r1 toolchain-funcs
+
+MY_PN="Botan"
+MY_P="${MY_PN}-${PV}"
+DESCRIPTION="A C++ crypto library"
+HOMEPAGE="http://botan.randombit.net/"
+SRC_URI="http://botan.randombit.net/releases/${MY_P}.tgz"
+
+KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~ppc-macos"
+SLOT="0"
+LICENSE="BSD"
+IUSE="bindist doc python bzip2 gmp ssl static-libs threads zlib"
+
+S="${WORKDIR}/${MY_P}"
+
+RDEPEND="bzip2? ( >=app-arch/bzip2-1.0.5 )
+	zlib? ( >=sys-libs/zlib-1.2.3 )
+	python? ( ${PYTHON_DEPS} >=dev-libs/boost-1.48[python,${PYTHON_USEDEP}] )
+	gmp? ( >=dev-libs/gmp-4.2.2:* )
+	ssl? ( >=dev-libs/openssl-0.9.8g:*[bindist=] )"
+DEPEND="${RDEPEND}
+	doc? ( dev-python/sphinx )"
+
+PATCHES=(
+	"${FILESDIR}/${P}-build.patch"
+)
+
+src_prepare() {
+	default
+
+	sed -e "s/-Wl,-soname,\$@ //" -i src/build-data/makefile/python.in || die "sed failed"
+	sed \
+		-e "/DOCDIR/d" \
+		-e "/^install:/s/ docs//" \
+		-i src/build-data/makefile/unix_shr.in || die "sed failed"
+
+	# Fix ImportError with Python 3.
+	sed -e "s/_botan/.&/" -i src/wrap/python/__init__.py || die "sed failed"
+
+	use python && python_copy_sources
+}
+
+src_configure() {
+	local disable_modules="proc_walk,unix_procs"
+	use threads || disable_modules+=",pthreads"
+	use bindist && disable_modules+=",ecdsa"
+	elog "Disabling modules: ${disable_modules}"
+
+	# Enable v9 instructions for sparc64
+	if [[ "${PROFILE_ARCH}" = "sparc64" ]]; then
+		CHOSTARCH="sparc32-v9"
+	else
+		CHOSTARCH="${CHOST%%-*}"
+	fi
+
+	local myos=
+	case ${CHOST} in
+		*-darwin*)   myos=darwin ;;
+		*)           myos=linux  ;;
+	esac
+
+	# foobared buildsystem, --prefix translates into DESTDIR, see also make
+	# install in src_install, we need the correct live-system prefix here on
+	# Darwin for a shared lib with correct install_name
+	./configure.py \
+		--prefix="${EPREFIX}/usr" \
+		--libdir=$(get_libdir) \
+		--docdir=share/doc \
+		--cc=gcc \
+		--os=${myos} \
+		--cpu=${CHOSTARCH} \
+		--with-endian="$(tc-endian)" \
+		--without-sphinx \
+		--with-tr1=system \
+		$(use_with bzip2) \
+		$(use_with gmp gnump) \
+		$(use_with python boost-python) \
+		$(use_with ssl openssl) \
+		$(use_with zlib) \
+		--disable-modules=${disable_modules} \
+		|| die "configure.py failed"
+}
+
+src_compile() {
+	emake CXX="$(tc-getCXX)" AR="$(tc-getAR) crs" LIB_OPT="${CXXFLAGS}" MACH_OPT=""
+
+	if use python; then
+		building() {
+			rm -fr build/python
+			ln -s "${BUILD_DIR}" build/python
+			cp Makefile.python build/python
+			sed -i \
+				-e "s/-lboost_python/-lboost_python-$(echo ${EPYTHON} | sed 's/python//')/" \
+				build/python/Makefile.python
+			emake -f build/python/Makefile.python \
+				CXX="$(tc-getCXX)" \
+				CFLAGS="${CXXFLAGS}" \
+				LDFLAGS="${LDFLAGS}" \
+				PYTHON_ROOT="/usr/$(get_libdir)" \
+				PYTHON_INC="-I$(python_get_includedir)"
+		}
+		python_foreach_impl building
+	fi
+
+	if use doc; then
+		einfo "Generation of documentation"
+		sphinx-build doc doc_output
+	fi
+}
+
+src_test() {
+	chmod -R ugo+rX "${S}"
+	emake CXX="$(tc-getCXX)" CHECK_OPT="${CXXFLAGS}" check
+	LD_LIBRARY_PATH="${S}" ./check --validate || die "Validation tests failed"
+}
+
+src_install() {
+	emake DESTDIR="${ED}usr" install
+
+	if ! use static-libs; then
+		rm "${ED}usr/$(get_libdir)/libbotan"*.a || die 'remove of static libs failed'
+	fi
+
+	# Add compatibility symlinks.
+	[[ -e "${ED}usr/bin/botan-config" ]] && die "Compatibility code no longer needed"
+	[[ -e "${ED}usr/$(get_libdir)/pkgconfig/botan.pc" ]] && die "Compatibility code no longer needed"
+	dosym botan-config-1.10 /usr/bin/botan-config
+	dosym botan-1.10.pc /usr/$(get_libdir)/pkgconfig/botan.pc
+
+	if use python; then
+		installation() {
+			rm -fr build/python
+			ln -s "${BUILD_DIR}" build/python
+			emake -f Makefile.python \
+				PYTHON_SITE_PACKAGE_DIR="${ED}$(python_get_sitedir)" \
+				install
+		}
+		python_foreach_impl installation
+	fi
+
+	if use doc; then
+		pushd doc_output > /dev/null
+		insinto /usr/share/doc/${PF}/html
+		doins -r [a-z]* _static
+		popd > /dev/null
+	fi
+}

diff --git a/dev-libs/botan/files/botan-1.10.14-build.patch b/dev-libs/botan/files/botan-1.10.14-build.patch
new file mode 100644
index 00000000..73ee70b
--- /dev/null
+++ b/dev-libs/botan/files/botan-1.10.14-build.patch
@@ -0,0 +1,26 @@
+From d8cb9d52a7e7e7e20cd371349583794e17fd0778 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Thu, 1 Dec 2016 20:50:35 +0200
+Subject: [PATCH] utils: safeint.h: use botan's to_string
+
+Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
+---
+ src/utils/safeint.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/utils/safeint.h b/src/utils/safeint.h
+index e0bd662..0a03e4e 100644
+--- a/src/utils/safeint.h
++++ b/src/utils/safeint.h
+@@ -17,7 +17,7 @@ class Integer_Overflow_Detected : public Exception
+    {
+    public:
+       Integer_Overflow_Detected(const std::string& file, int line) :
+-         Exception("Integer overflow detected at " + file + ":" + std::to_string(line))
++         Exception("Integer overflow detected at " + file + ":" + to_string(line))
+          {}
+    };
+ 
+-- 
+2.7.3
+


^ permalink raw reply related	[flat|nested] 14+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/botan/, dev-libs/botan/files/
@ 2016-12-01 20:13 Alon Bar-Lev
  0 siblings, 0 replies; 14+ messages in thread
From: Alon Bar-Lev @ 2016-12-01 20:13 UTC (permalink / raw
  To: gentoo-commits

commit:     c31efdd2b1cd740923f9d3d2c14870309df3cf20
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Thu Dec  1 20:11:29 2016 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Thu Dec  1 20:13:12 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c31efdd2

dev-libs/botan: version bump

Package-Manager: portage-2.3.0

 dev-libs/botan/Manifest                      |   1 +
 dev-libs/botan/botan-1.11.34.ebuild          | 140 +++++++++++++++++++++++++++
 dev-libs/botan/files/botan-1.11.34-rng.patch |  30 ++++++
 3 files changed, 171 insertions(+)

diff --git a/dev-libs/botan/Manifest b/dev-libs/botan/Manifest
index d5f8885..b9053b3 100644
--- a/dev-libs/botan/Manifest
+++ b/dev-libs/botan/Manifest
@@ -2,3 +2,4 @@ DIST Botan-1.10.12.tgz 2707397 SHA256 affc3a79919577943f896e64d3e4a4dcc4970c5bf8
 DIST Botan-1.10.13.tgz 2710181 SHA256 23ec973d4b4a4fe04f490d409e08ac5638afe3aa09acd7f520daaff38ba19b90 SHA512 a09d2cb5dda21bf384b81675025f249abdfe232c95dc3383f0baebc2bf1603b2ed1e2aec9a81aae95df592ec2eeae8906c63474a6da42ad3701669a5d8f14656 WHIRLPOOL 4161d689205f02ed8b97bb371be47829d11dee744a024e24bb834264cfa6143c8a9fb7df969410975e4bf2b708063e3c05b6106c4dbe7f5566e3331ee5e901a9
 DIST Botan-1.10.14.tgz 2710757 SHA256 10ed0b394db165733ac9557d8656356b7e9744d38c61c2b9c44cba6d84ff4c1c SHA512 ae524653a99b02d6d8d7bb2b88a446c066fe1044d8fd2708ea2a4cd5aafbe2b0d165d2ce1730669a4df18013cf5b6540bb5944bafea512b4957e3417de512e95 WHIRLPOOL 51aa1d68757ad515f65c255c585be8050efed085800340d43fa068b48647ef8c50fc9e284ac16d0cef3d874f5fa44f143210dcc004561807e1d1b307d89cff9d
 DIST Botan-1.11.33.tgz 4329671 SHA256 d65f95399dc5710aea90d682d65e554fed4571115f1382416e9142370a47e949 SHA512 49bb4485663897dd07bb7982771befacc50bfabef5806dc802cbd4d39f5d641b08a264824b5b1b96421e810811353deea15e728c5d08ce2932cf0e4602ae099d WHIRLPOOL 86154158915e29eef7753797df037d560078bda4ecfaafffba1064a238618b1ec10e0712b85cd64537ca3dfbac5ce38bf1323456d30b2bd5a51c0dae7f81d339
+DIST Botan-1.11.34.tgz 4908624 SHA256 59ad548f8ddb967737f102b252bab30ca0b49f039f204502394cf506ae731f16 SHA512 c3dad24872f726c62fd302cf05e4a67985e8d6e00b6bdfc9852abe2204329f794b656e9ee89470b76ea16426371ef5b1729626c36d9a2b89e1939172382f192c WHIRLPOOL ba1db76068ae8e55169cba19597be159de1999555ff64ba95a7b80a38ed25d6170be9c2586ca680323340774784fad96b9ca83ff0b17a5b162ba11014e2641a4

diff --git a/dev-libs/botan/botan-1.11.34.ebuild b/dev-libs/botan/botan-1.11.34.ebuild
new file mode 100644
index 00000000..87dc9d5
--- /dev/null
+++ b/dev-libs/botan/botan-1.11.34.ebuild
@@ -0,0 +1,140 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="6"
+PYTHON_COMPAT=( python{2_7,3_4,3_5} )
+
+inherit eutils multilib python-r1 toolchain-funcs
+
+MY_PN="Botan"
+MY_P="${MY_PN}-${PV}"
+DESCRIPTION="A C++ crypto library"
+HOMEPAGE="http://botan.randombit.net/"
+SRC_URI="http://botan.randombit.net/releases/${MY_P}.tgz"
+
+KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~ppc-macos"
+SLOT="0"
+LICENSE="BSD"
+IUSE="bindist doc boost python bzip2 libressl lzma sqlite ssl static-libs zlib"
+
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="python? ( boost )"
+
+RDEPEND="bzip2? ( >=app-arch/bzip2-1.0.5 )
+	zlib? ( >=sys-libs/zlib-1.2.3 )
+	boost? ( ${PYTHON_DEPS} >=dev-libs/boost-1.48[python?,${PYTHON_USEDEP}] )
+	lzma? ( app-arch/xz-utils )
+	sqlite? ( dev-db/sqlite:3 )
+	ssl? (
+		!libressl? ( >=dev-libs/openssl-0.9.8g:0[bindist=] )
+		libressl? ( dev-libs/libressl )
+	)"
+DEPEND="${RDEPEND}
+	doc? ( dev-python/sphinx )"
+
+PATCHES=(
+	"${FILESDIR}/${P}-rng.patch"
+)
+
+pkg_pretend() {
+	# Botan 1.11 requires -std=c++11
+	if [[ ${MERGE_TYPE} != binary ]]; then
+		[[ $(gcc-major-version) -lt 4 ]] || \
+		( [[ $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 7 ]] ) \
+		&& die "Sorry, but gcc 4.7 or higher is required."
+	fi
+}
+
+src_prepare() {
+	default
+	sed \
+		-e "/^install:/s/ docs//" \
+		-i src/build-data/makefile/gmake.in || die "sed failed"
+	use python && python_copy_sources
+}
+
+src_configure() {
+	local disable_modules=( proc_walk unix_procs )
+	use boost || disable_modules+=( "boost" )
+	use bindist && disable_modules+=( "ecdsa" )
+	use python || disable_modules+=( "ffi" )
+	elog "Disabling modules: ${disable_modules[@]}"
+
+	# Enable v9 instructions for sparc64
+	if [[ "${PROFILE_ARCH}" = "sparc64" ]]; then
+		CHOSTARCH="sparc32-v9"
+	else
+		CHOSTARCH="${CHOST%%-*}"
+	fi
+
+	local myos=
+	case ${CHOST} in
+		*-darwin*)   myos=darwin ;;
+		*)           myos=linux  ;;
+	esac
+
+	local pythonvers=()
+	if use python; then
+		append() {
+			pythonvers+=( ${EPYTHON/python/} )
+		}
+		python_foreach_impl append
+	fi
+
+	./configure.py \
+		--prefix="${EPREFIX}/usr" \
+		--destdir="${D}/${EPREFIX}/usr" \
+		--libdir=$(get_libdir) \
+		--docdir=share/doc \
+		--cc=gcc \
+		--os=${myos} \
+		--cpu=${CHOSTARCH} \
+		--with-endian="$(tc-endian)" \
+		--without-sphinx \
+		$(use_with bzip2) \
+		$(use_with lzma) \
+		$(use_with sqlite sqlite3) \
+		$(use_with ssl openssl) \
+		$(use_with zlib) \
+		$(use_with boost) \
+		--with-python-version=$(IFS=","; echo "${pythonvers[*]}" ) \
+		--disable-modules=$(IFS=","; echo "${disable_modules[*]}" ) \
+		|| die "configure.py failed"
+}
+
+src_compile() {
+	emake CXX="$(tc-getCXX) -pthread" AR="$(tc-getAR) crs" LIB_OPT="-c ${CXXFLAGS}"
+	if use doc; then
+		einfo "Generation of documentation"
+		sphinx-build doc doc_output
+	fi
+}
+
+src_test() {
+	LD_LIBRARY_PATH="${S}" ./botan-test || die "Validation tests failed"
+}
+
+src_install() {
+	emake install
+
+	if ! use static-libs; then
+		rm "${ED}usr/$(get_libdir)/libbotan"*.a || die 'remove of static libs failed'
+	fi
+
+	# Add compatibility symlinks.
+	[[ -e "${ED}usr/bin/botan-config" ]] && die "Compatibility code no longer needed"
+	[[ -e "${ED}usr/$(get_libdir)/pkgconfig/botan.pc" ]] && die "Compatibility code no longer needed"
+	dosym botan-config-1.11 /usr/bin/botan-config
+	dosym botan-1.11.pc /usr/$(get_libdir)/pkgconfig/botan.pc
+
+	use python && python_foreach_impl python_optimize
+
+	if use doc; then
+		pushd doc_output > /dev/null
+		insinto /usr/share/doc/${PF}/html
+		doins -r [a-z]* _static
+		popd > /dev/null
+	fi
+}

diff --git a/dev-libs/botan/files/botan-1.11.34-rng.patch b/dev-libs/botan/files/botan-1.11.34-rng.patch
new file mode 100644
index 00000000..da814f1
--- /dev/null
+++ b/dev-libs/botan/files/botan-1.11.34-rng.patch
@@ -0,0 +1,30 @@
+From 2b72637f06ad35bd5458372a964bf30a0b4f7cf9 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Thu, 1 Dec 2016 21:55:17 +0200
+Subject: [PATCH] system_rng: workaround read only urandom
+
+Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
+---
+ src/lib/rng/system_rng/system_rng.cpp | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/src/lib/rng/system_rng/system_rng.cpp b/src/lib/rng/system_rng/system_rng.cpp
+index eaba382..12b0876 100644
+--- a/src/lib/rng/system_rng/system_rng.cpp
++++ b/src/lib/rng/system_rng/system_rng.cpp
+@@ -135,8 +135,11 @@ void System_RNG_Impl::add_entropy(const uint8_t input[], size_t len)
+          * by the OS or sysadmin that additional entropy is not wanted
+          * in the system pool, so we accept that and return here,
+          * since there is no corrective action possible.
++	 *
++	 * In Linux EBADF or EPERM is returned if m_fd is not opened for
++	 * writing.
+          */
+-         if(errno == EPERM)
++         if(errno == EPERM || errno == EBADF)
+             return;
+ 
+          // maybe just ignore any failure here and return?
+-- 
+2.7.3
+


^ permalink raw reply related	[flat|nested] 14+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/botan/, dev-libs/botan/files/
@ 2017-01-18 14:52 Alon Bar-Lev
  0 siblings, 0 replies; 14+ messages in thread
From: Alon Bar-Lev @ 2017-01-18 14:52 UTC (permalink / raw
  To: gentoo-commits

commit:     3fbe009eaa171fac368b1ea0327e28386599e7fe
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 18 14:44:53 2017 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Wed Jan 18 14:52:16 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3fbe009e

dev-libs/botan: cleanup

Bug: 605202

Package-Manager: portage-2.3.0

 dev-libs/botan/Manifest                      |   1 -
 dev-libs/botan/botan-1.10.13.ebuild          | 150 ---------------------------
 dev-libs/botan/files/botan-1.11.34-rng.patch |  30 ------
 3 files changed, 181 deletions(-)

diff --git a/dev-libs/botan/Manifest b/dev-libs/botan/Manifest
index 107b438..7a022aa 100644
--- a/dev-libs/botan/Manifest
+++ b/dev-libs/botan/Manifest
@@ -1,3 +1,2 @@
-DIST Botan-1.10.13.tgz 2710181 SHA256 23ec973d4b4a4fe04f490d409e08ac5638afe3aa09acd7f520daaff38ba19b90 SHA512 a09d2cb5dda21bf384b81675025f249abdfe232c95dc3383f0baebc2bf1603b2ed1e2aec9a81aae95df592ec2eeae8906c63474a6da42ad3701669a5d8f14656 WHIRLPOOL 4161d689205f02ed8b97bb371be47829d11dee744a024e24bb834264cfa6143c8a9fb7df969410975e4bf2b708063e3c05b6106c4dbe7f5566e3331ee5e901a9
 DIST Botan-1.10.14.tgz 2710757 SHA256 10ed0b394db165733ac9557d8656356b7e9744d38c61c2b9c44cba6d84ff4c1c SHA512 ae524653a99b02d6d8d7bb2b88a446c066fe1044d8fd2708ea2a4cd5aafbe2b0d165d2ce1730669a4df18013cf5b6540bb5944bafea512b4957e3417de512e95 WHIRLPOOL 51aa1d68757ad515f65c255c585be8050efed085800340d43fa068b48647ef8c50fc9e284ac16d0cef3d874f5fa44f143210dcc004561807e1d1b307d89cff9d
 DIST Botan-2.0.0.tgz 4989901 SHA256 031659cca0f80869e9d97a20917edbe2164cedbc079e8c53e0e7bd9bea15371a SHA512 4cb6992b5998ead175c10a9f193b0cde208b81a99bf30412a3b8386e7c91de2ff5d8191fd49893f02643519721bcf16c58db3cbee3eccbeb566f4456d310cf8f WHIRLPOOL ba180e5be87c9212fdf2e9252eb6d477bf608f976476b75e31e393ec19d94dada876b5dda9881f4cbe6dd7fec642a8a2b2a728bc90e07c44661237a067ae09ce

diff --git a/dev-libs/botan/botan-1.10.13.ebuild b/dev-libs/botan/botan-1.10.13.ebuild
deleted file mode 100644
index 43ef01e..00000000
--- a/dev-libs/botan/botan-1.10.13.ebuild
+++ /dev/null
@@ -1,150 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="6"
-PYTHON_COMPAT=( python{2_7,3_4} )
-
-inherit eutils multilib python-r1 toolchain-funcs
-
-MY_PN="Botan"
-MY_P="${MY_PN}-${PV}"
-DESCRIPTION="A C++ crypto library"
-HOMEPAGE="http://botan.randombit.net/"
-SRC_URI="http://botan.randombit.net/releases/${MY_P}.tgz"
-
-KEYWORDS="amd64 ~arm hppa ~ia64 ppc ppc64 sparc x86 ~ppc-macos"
-SLOT="0"
-LICENSE="BSD"
-IUSE="bindist doc python bzip2 gmp ssl static-libs threads zlib"
-
-S="${WORKDIR}/${MY_P}"
-
-RDEPEND="bzip2? ( >=app-arch/bzip2-1.0.5 )
-	zlib? ( >=sys-libs/zlib-1.2.3 )
-	python? ( ${PYTHON_DEPS} >=dev-libs/boost-1.48[python,${PYTHON_USEDEP}] )
-	gmp? ( >=dev-libs/gmp-4.2.2:* )
-	ssl? ( >=dev-libs/openssl-0.9.8g:*[bindist=] )"
-DEPEND="${RDEPEND}
-	doc? ( dev-python/sphinx )"
-
-src_prepare() {
-	default
-
-	sed -e "s/-Wl,-soname,\$@ //" -i src/build-data/makefile/python.in || die "sed failed"
-	sed \
-		-e "/DOCDIR/d" \
-		-e "/^install:/s/ docs//" \
-		-i src/build-data/makefile/unix_shr.in || die "sed failed"
-
-	# Fix ImportError with Python 3.
-	sed -e "s/_botan/.&/" -i src/wrap/python/__init__.py || die "sed failed"
-
-	use python && python_copy_sources
-}
-
-src_configure() {
-	local disable_modules="proc_walk,unix_procs"
-	use threads || disable_modules+=",pthreads"
-	use bindist && disable_modules+=",ecdsa"
-	elog "Disabling modules: ${disable_modules}"
-
-	# Enable v9 instructions for sparc64
-	if [[ "${PROFILE_ARCH}" = "sparc64" ]]; then
-		CHOSTARCH="sparc32-v9"
-	else
-		CHOSTARCH="${CHOST%%-*}"
-	fi
-
-	local myos=
-	case ${CHOST} in
-		*-darwin*)   myos=darwin ;;
-		*)           myos=linux  ;;
-	esac
-
-	# foobared buildsystem, --prefix translates into DESTDIR, see also make
-	# install in src_install, we need the correct live-system prefix here on
-	# Darwin for a shared lib with correct install_name
-	./configure.py \
-		--prefix="${EPREFIX}/usr" \
-		--libdir=$(get_libdir) \
-		--docdir=share/doc \
-		--cc=gcc \
-		--os=${myos} \
-		--cpu=${CHOSTARCH} \
-		--with-endian="$(tc-endian)" \
-		--without-sphinx \
-		--with-tr1=system \
-		$(use_with bzip2) \
-		$(use_with gmp gnump) \
-		$(use_with python boost-python) \
-		$(use_with ssl openssl) \
-		$(use_with zlib) \
-		--disable-modules=${disable_modules} \
-		|| die "configure.py failed"
-}
-
-src_compile() {
-	emake CXX="$(tc-getCXX)" AR="$(tc-getAR) crs" LIB_OPT="${CXXFLAGS}" MACH_OPT=""
-
-	if use python; then
-		building() {
-			rm -fr build/python
-			ln -s "${BUILD_DIR}" build/python
-			cp Makefile.python build/python
-			sed -i \
-				-e "s/-lboost_python/-lboost_python-$(echo ${EPYTHON} | sed 's/python//')/" \
-				build/python/Makefile.python
-			emake -f build/python/Makefile.python \
-				CXX="$(tc-getCXX)" \
-				CFLAGS="${CXXFLAGS}" \
-				LDFLAGS="${LDFLAGS}" \
-				PYTHON_ROOT="/usr/$(get_libdir)" \
-				PYTHON_INC="-I$(python_get_includedir)"
-		}
-		python_foreach_impl building
-	fi
-
-	if use doc; then
-		einfo "Generation of documentation"
-		sphinx-build doc doc_output
-	fi
-}
-
-src_test() {
-	chmod -R ugo+rX "${S}"
-	emake CXX="$(tc-getCXX)" CHECK_OPT="${CXXFLAGS}" check
-	LD_LIBRARY_PATH="${S}" ./check --validate || die "Validation tests failed"
-}
-
-src_install() {
-	emake DESTDIR="${ED}usr" install
-
-	if ! use static-libs; then
-		rm "${ED}usr/$(get_libdir)/libbotan"*.a || die 'remove of static libs failed'
-	fi
-
-	# Add compatibility symlinks.
-	[[ -e "${ED}usr/bin/botan-config" ]] && die "Compatibility code no longer needed"
-	[[ -e "${ED}usr/$(get_libdir)/pkgconfig/botan.pc" ]] && die "Compatibility code no longer needed"
-	dosym botan-config-1.10 /usr/bin/botan-config
-	dosym botan-1.10.pc /usr/$(get_libdir)/pkgconfig/botan.pc
-
-	if use python; then
-		installation() {
-			rm -fr build/python
-			ln -s "${BUILD_DIR}" build/python
-			emake -f Makefile.python \
-				PYTHON_SITE_PACKAGE_DIR="${ED}$(python_get_sitedir)" \
-				install
-		}
-		python_foreach_impl installation
-	fi
-
-	if use doc; then
-		pushd doc_output > /dev/null
-		insinto /usr/share/doc/${PF}/html
-		doins -r [a-z]* _static
-		popd > /dev/null
-	fi
-}

diff --git a/dev-libs/botan/files/botan-1.11.34-rng.patch b/dev-libs/botan/files/botan-1.11.34-rng.patch
deleted file mode 100644
index da814f1..00000000
--- a/dev-libs/botan/files/botan-1.11.34-rng.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 2b72637f06ad35bd5458372a964bf30a0b4f7cf9 Mon Sep 17 00:00:00 2001
-From: Alon Bar-Lev <alon.barlev@gmail.com>
-Date: Thu, 1 Dec 2016 21:55:17 +0200
-Subject: [PATCH] system_rng: workaround read only urandom
-
-Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
----
- src/lib/rng/system_rng/system_rng.cpp | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/src/lib/rng/system_rng/system_rng.cpp b/src/lib/rng/system_rng/system_rng.cpp
-index eaba382..12b0876 100644
---- a/src/lib/rng/system_rng/system_rng.cpp
-+++ b/src/lib/rng/system_rng/system_rng.cpp
-@@ -135,8 +135,11 @@ void System_RNG_Impl::add_entropy(const uint8_t input[], size_t len)
-          * by the OS or sysadmin that additional entropy is not wanted
-          * in the system pool, so we accept that and return here,
-          * since there is no corrective action possible.
-+	 *
-+	 * In Linux EBADF or EPERM is returned if m_fd is not opened for
-+	 * writing.
-          */
--         if(errno == EPERM)
-+         if(errno == EPERM || errno == EBADF)
-             return;
- 
-          // maybe just ignore any failure here and return?
--- 
-2.7.3
-


^ permalink raw reply related	[flat|nested] 14+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/botan/, dev-libs/botan/files/
@ 2017-01-22 20:45 Alon Bar-Lev
  0 siblings, 0 replies; 14+ messages in thread
From: Alon Bar-Lev @ 2017-01-22 20:45 UTC (permalink / raw
  To: gentoo-commits

commit:     fa1de8635f750da81d4a4cacc08fffb1e44afb53
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 22 20:45:17 2017 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Sun Jan 22 20:45:32 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fa1de863

dev-libs/botan: version bump

Package-Manager: portage-2.3.0

 dev-libs/botan/Manifest                            |   3 +-
 dev-libs/botan/botan-1.10.15.ebuild                | 150 +++++++++++++++++++++
 .../{botan-2.0.0.ebuild => botan-2.0.1.ebuild}     |  11 +-
 dev-libs/botan/files/botan-2.0.0-build.patch       |  26 ----
 dev-libs/botan/metadata.xml                        |   3 +
 5 files changed, 157 insertions(+), 36 deletions(-)

diff --git a/dev-libs/botan/Manifest b/dev-libs/botan/Manifest
index 7a022aa..1b0cc50 100644
--- a/dev-libs/botan/Manifest
+++ b/dev-libs/botan/Manifest
@@ -1,2 +1,3 @@
 DIST Botan-1.10.14.tgz 2710757 SHA256 10ed0b394db165733ac9557d8656356b7e9744d38c61c2b9c44cba6d84ff4c1c SHA512 ae524653a99b02d6d8d7bb2b88a446c066fe1044d8fd2708ea2a4cd5aafbe2b0d165d2ce1730669a4df18013cf5b6540bb5944bafea512b4957e3417de512e95 WHIRLPOOL 51aa1d68757ad515f65c255c585be8050efed085800340d43fa068b48647ef8c50fc9e284ac16d0cef3d874f5fa44f143210dcc004561807e1d1b307d89cff9d
-DIST Botan-2.0.0.tgz 4989901 SHA256 031659cca0f80869e9d97a20917edbe2164cedbc079e8c53e0e7bd9bea15371a SHA512 4cb6992b5998ead175c10a9f193b0cde208b81a99bf30412a3b8386e7c91de2ff5d8191fd49893f02643519721bcf16c58db3cbee3eccbeb566f4456d310cf8f WHIRLPOOL ba180e5be87c9212fdf2e9252eb6d477bf608f976476b75e31e393ec19d94dada876b5dda9881f4cbe6dd7fec642a8a2b2a728bc90e07c44661237a067ae09ce
+DIST Botan-1.10.15.tgz 2711022 SHA256 c0cc8ffd470fda4b257c3ef9faf5cf93751f4c283dfba878148acafedfab70fe SHA512 c3b93f44ad0de9758af11557833ee570aa0724c8b57c9a576b56ab439a7819e0f71a10857ad367b486716164dd4ff551cab2036ecbbbedd75db4b8dc93416bc8 WHIRLPOOL 834cad8b38787581d8d967b2fa6ffb6164e2bf8a124d993733a7d55202439ec543c18cb6cb03721c0e8eb67cbe2a486b8199b3b8784645e0033be298f36640b9
+DIST Botan-2.0.1.tgz 4995413 SHA256 a138ed316d11450a8405451b9c9664b8e640a9b7ad84d3f3ad34e8071f364e0b SHA512 c5062ce92a6e6e333b4e6af095ed54d0c4ffacefc6ac87ec651dd1e0937793c9956b7c9c0d3acf49f059505526584168364e01c55ab72c953ad255e8396aed35 WHIRLPOOL 36cec762b05b761d77fc0421379e7c78172c67d1d8c9da4349df34f68d7d1a4fd5cca394ba4bd7c2e1a13a218a6a349b2216bfd7868e93549e37e5cf7ddc7dc1

diff --git a/dev-libs/botan/botan-1.10.15.ebuild b/dev-libs/botan/botan-1.10.15.ebuild
new file mode 100644
index 00000000..e7cfffd
--- /dev/null
+++ b/dev-libs/botan/botan-1.10.15.ebuild
@@ -0,0 +1,150 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="6"
+PYTHON_COMPAT=( python{2_7,3_4} )
+
+inherit eutils multilib python-r1 toolchain-funcs
+
+MY_PN="Botan"
+MY_P="${MY_PN}-${PV}"
+DESCRIPTION="A C++ crypto library"
+HOMEPAGE="http://botan.randombit.net/"
+SRC_URI="http://botan.randombit.net/releases/${MY_P}.tgz"
+
+KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~ppc-macos"
+SLOT="0"
+LICENSE="BSD"
+IUSE="bindist doc python bzip2 gmp ssl static-libs threads zlib"
+
+S="${WORKDIR}/${MY_P}"
+
+RDEPEND="bzip2? ( >=app-arch/bzip2-1.0.5 )
+	zlib? ( >=sys-libs/zlib-1.2.3 )
+	python? ( ${PYTHON_DEPS} >=dev-libs/boost-1.48[python,${PYTHON_USEDEP}] )
+	gmp? ( >=dev-libs/gmp-4.2.2:* )
+	ssl? ( >=dev-libs/openssl-0.9.8g:*[bindist=] )"
+DEPEND="${RDEPEND}
+	doc? ( dev-python/sphinx )"
+
+src_prepare() {
+	default
+
+	sed -e "s/-Wl,-soname,\$@ //" -i src/build-data/makefile/python.in || die "sed failed"
+	sed \
+		-e "/DOCDIR/d" \
+		-e "/^install:/s/ docs//" \
+		-i src/build-data/makefile/unix_shr.in || die "sed failed"
+
+	# Fix ImportError with Python 3.
+	sed -e "s/_botan/.&/" -i src/wrap/python/__init__.py || die "sed failed"
+
+	use python && python_copy_sources
+}
+
+src_configure() {
+	local disable_modules="proc_walk,unix_procs"
+	use threads || disable_modules+=",pthreads"
+	use bindist && disable_modules+=",ecdsa"
+	elog "Disabling modules: ${disable_modules}"
+
+	# Enable v9 instructions for sparc64
+	if [[ "${PROFILE_ARCH}" = "sparc64" ]]; then
+		CHOSTARCH="sparc32-v9"
+	else
+		CHOSTARCH="${CHOST%%-*}"
+	fi
+
+	local myos=
+	case ${CHOST} in
+		*-darwin*)   myos=darwin ;;
+		*)           myos=linux  ;;
+	esac
+
+	# foobared buildsystem, --prefix translates into DESTDIR, see also make
+	# install in src_install, we need the correct live-system prefix here on
+	# Darwin for a shared lib with correct install_name
+	./configure.py \
+		--prefix="${EPREFIX}/usr" \
+		--libdir=$(get_libdir) \
+		--docdir=share/doc \
+		--cc=gcc \
+		--os=${myos} \
+		--cpu=${CHOSTARCH} \
+		--with-endian="$(tc-endian)" \
+		--without-sphinx \
+		--with-tr1=system \
+		$(use_with bzip2) \
+		$(use_with gmp gnump) \
+		$(use_with python boost-python) \
+		$(use_with ssl openssl) \
+		$(use_with zlib) \
+		--disable-modules=${disable_modules} \
+		|| die "configure.py failed"
+}
+
+src_compile() {
+	emake CXX="$(tc-getCXX)" AR="$(tc-getAR) crs" LIB_OPT="${CXXFLAGS}" MACH_OPT=""
+
+	if use python; then
+		building() {
+			rm -fr build/python
+			ln -s "${BUILD_DIR}" build/python
+			cp Makefile.python build/python
+			sed -i \
+				-e "s/-lboost_python/-lboost_python-$(echo ${EPYTHON} | sed 's/python//')/" \
+				build/python/Makefile.python
+			emake -f build/python/Makefile.python \
+				CXX="$(tc-getCXX)" \
+				CFLAGS="${CXXFLAGS}" \
+				LDFLAGS="${LDFLAGS}" \
+				PYTHON_ROOT="/usr/$(get_libdir)" \
+				PYTHON_INC="-I$(python_get_includedir)"
+		}
+		python_foreach_impl building
+	fi
+
+	if use doc; then
+		einfo "Generation of documentation"
+		sphinx-build doc doc_output
+	fi
+}
+
+src_test() {
+	chmod -R ugo+rX "${S}"
+	emake CXX="$(tc-getCXX)" CHECK_OPT="${CXXFLAGS}" check
+	LD_LIBRARY_PATH="${S}" ./check --validate || die "Validation tests failed"
+}
+
+src_install() {
+	emake DESTDIR="${ED}usr" install
+
+	if ! use static-libs; then
+		rm "${ED}usr/$(get_libdir)/libbotan"*.a || die 'remove of static libs failed'
+	fi
+
+	# Add compatibility symlinks.
+	[[ -e "${ED}usr/bin/botan-config" ]] && die "Compatibility code no longer needed"
+	[[ -e "${ED}usr/$(get_libdir)/pkgconfig/botan.pc" ]] && die "Compatibility code no longer needed"
+	dosym botan-config-1.10 /usr/bin/botan-config
+	dosym botan-1.10.pc /usr/$(get_libdir)/pkgconfig/botan.pc
+
+	if use python; then
+		installation() {
+			rm -fr build/python
+			ln -s "${BUILD_DIR}" build/python
+			emake -f Makefile.python \
+				PYTHON_SITE_PACKAGE_DIR="${ED}$(python_get_sitedir)" \
+				install
+		}
+		python_foreach_impl installation
+	fi
+
+	if use doc; then
+		pushd doc_output > /dev/null
+		insinto /usr/share/doc/${PF}/html
+		doins -r [a-z]* _static
+		popd > /dev/null
+	fi
+}

diff --git a/dev-libs/botan/botan-2.0.0.ebuild b/dev-libs/botan/botan-2.0.1.ebuild
similarity index 92%
rename from dev-libs/botan/botan-2.0.0.ebuild
rename to dev-libs/botan/botan-2.0.1.ebuild
index a12093d..763f654 100644
--- a/dev-libs/botan/botan-2.0.0.ebuild
+++ b/dev-libs/botan/botan-2.0.1.ebuild
@@ -14,7 +14,7 @@ HOMEPAGE="http://botan.randombit.net/"
 SRC_URI="http://botan.randombit.net/releases/${MY_P}.tgz"
 
 KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~ppc-macos"
-SLOT="0/2"
+SLOT="2/0"
 LICENSE="BSD"
 IUSE="bindist doc boost python bzip2 libressl lzma sqlite ssl static-libs zlib"
 
@@ -32,12 +32,9 @@ RDEPEND="bzip2? ( >=app-arch/bzip2-1.0.5 )
 		libressl? ( dev-libs/libressl )
 	)"
 DEPEND="${RDEPEND}
+	dev-lang/python:*
 	doc? ( dev-python/sphinx )"
 
-PATCHES=(
-	"${FILESDIR}/${P}-build.patch"
-)
-
 pkg_pretend() {
 	# Botan 1.11 requires -std=c++11
 	if [[ ${MERGE_TYPE} != binary ]]; then
@@ -120,9 +117,5 @@ src_install() {
 		rm "${ED}usr/$(get_libdir)/libbotan"*.a || die 'remove of static libs failed'
 	fi
 
-	# Add compatibility symlinks.
-	[[ -e "${ED}usr/$(get_libdir)/pkgconfig/botan.pc" ]] && die "Compatibility code no longer needed"
-	dosym botan-2.pc /usr/$(get_libdir)/pkgconfig/botan.pc
-
 	use python && python_foreach_impl python_optimize
 }

diff --git a/dev-libs/botan/files/botan-2.0.0-build.patch b/dev-libs/botan/files/botan-2.0.0-build.patch
deleted file mode 100644
index 534be31..00000000
--- a/dev-libs/botan/files/botan-2.0.0-build.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 0d8cbe137261b4f841a05eec5dd5659c8f510de0 Mon Sep 17 00:00:00 2001
-From: Alon Bar-Lev <alon.barlev@gmail.com>
-Date: Mon, 9 Jan 2017 20:59:28 +0200
-Subject: [PATCH] build: pkg-config: fix include directory
-
-Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
----
- src/build-data/botan.pc.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/build-data/botan.pc.in b/src/build-data/botan.pc.in
-index 85943ab..753b8cd 100644
---- a/src/build-data/botan.pc.in
-+++ b/src/build-data/botan.pc.in
-@@ -1,7 +1,7 @@
- prefix=%{prefix}
- exec_prefix=${prefix}
- libdir=${prefix}/%{libdir}
--includedir=${prefix}/include/botan-%{version_major}
-+includedir=${prefix}/include/botan-%{version_major}.%{version_minor}
- 
- Name: Botan
- Description: Crypto and TLS for C++11
--- 
-2.10.2
-

diff --git a/dev-libs/botan/metadata.xml b/dev-libs/botan/metadata.xml
index 79e55bd..2ca5534 100644
--- a/dev-libs/botan/metadata.xml
+++ b/dev-libs/botan/metadata.xml
@@ -17,4 +17,7 @@
 	<use>
 		<flag name="boost">use <pkg>dev-libs/boost</pkg></flag>
 	</use>
+	<slots>
+		<subslots>botan soname version</subslots>
+	</slots>
 </pkgmetadata>


^ permalink raw reply related	[flat|nested] 14+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/botan/, dev-libs/botan/files/
@ 2017-03-21 10:01 Alon Bar-Lev
  0 siblings, 0 replies; 14+ messages in thread
From: Alon Bar-Lev @ 2017-03-21 10:01 UTC (permalink / raw
  To: gentoo-commits

commit:     3900cc924001db0c7b6e9618fa8c5792b3d1bb72
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Tue Mar 21 10:00:46 2017 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Tue Mar 21 10:01:21 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3900cc92

dev-libs/botan: fix c++11 build issue

Bug: 597712

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 dev-libs/botan/botan-1.10.15-r1.ebuild         |  4 +++
 dev-libs/botan/files/botan-1.10.15-c++11.patch | 36 ++++++++++++++++++++++++++
 2 files changed, 40 insertions(+)

diff --git a/dev-libs/botan/botan-1.10.15-r1.ebuild b/dev-libs/botan/botan-1.10.15-r1.ebuild
index 00add8ce318..0fe8c0507d5 100644
--- a/dev-libs/botan/botan-1.10.15-r1.ebuild
+++ b/dev-libs/botan/botan-1.10.15-r1.ebuild
@@ -30,6 +30,10 @@ RDEPEND="bzip2? ( >=app-arch/bzip2-1.0.5 )
 DEPEND="${RDEPEND}
 	doc? ( dev-python/sphinx )"
 
+PATCHES=(
+	"${FILESDIR}/${P}-c++11.patch"
+)
+
 src_prepare() {
 	default
 

diff --git a/dev-libs/botan/files/botan-1.10.15-c++11.patch b/dev-libs/botan/files/botan-1.10.15-c++11.patch
new file mode 100644
index 00000000000..e47b56600fe
--- /dev/null
+++ b/dev-libs/botan/files/botan-1.10.15-c++11.patch
@@ -0,0 +1,36 @@
+From dc2834f708a6d857b1a7f9587d5a28af271103e5 Mon Sep 17 00:00:00 2001
+From: Peter-Levine <plevine457@gmail.com>
+Date: Mon, 20 Mar 2017 22:13:21 -0400
+Subject: [PATCH] Allow destructor to throw when building with >=C++11
+
+After C++11, destructors default to `noexcept(true)`.  Thus, any throw statements in destructors become calls to `std::terminate()`.  To enable the intended throw statement, the destructor must be explicitly marked `noexcept(false)`.
+---
+ src/alloc/alloc_mmap/mmap_mem.cpp | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/src/alloc/alloc_mmap/mmap_mem.cpp b/src/alloc/alloc_mmap/mmap_mem.cpp
+index 17c189e..2637533 100644
+--- a/src/alloc/alloc_mmap/mmap_mem.cpp
++++ b/src/alloc/alloc_mmap/mmap_mem.cpp
+@@ -21,6 +21,12 @@
+    #define MAP_FAILED -1
+ #endif
+ 
++#if __cplusplus >= 201103L
++#define NOEXCEPT noexcept(false)
++#else
++#define NOEXCEPT
++#endif
++
+ namespace Botan {
+ 
+ namespace {
+@@ -66,7 +72,7 @@ void* MemoryMapping_Allocator::alloc_block(size_t n)
+                throw MemoryMapping_Failed("Could not unlink temporary file");
+             }
+ 
+-         ~TemporaryFile()
++         ~TemporaryFile() NOEXCEPT
+             {
+             /*
+             * We can safely close here, because post-mmap the file


^ permalink raw reply related	[flat|nested] 14+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/botan/, dev-libs/botan/files/
@ 2017-10-04 18:57 Alon Bar-Lev
  0 siblings, 0 replies; 14+ messages in thread
From: Alon Bar-Lev @ 2017-10-04 18:57 UTC (permalink / raw
  To: gentoo-commits

commit:     71ac541cf20d25f77345883ac31669b6505fd1b0
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Wed Oct  4 18:56:45 2017 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Wed Oct  4 18:57:28 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=71ac541c

dev-libs/botan: add missing limits.h

Gentoo-Bug: 633468
Thanks: toralf

Package-Manager: Portage-2.3.8, Repoman-2.3.1

 dev-libs/botan/botan-2.3.0.ebuild            |  4 ++++
 dev-libs/botan/files/botan-2.3.0-build.patch | 22 ++++++++++++++++++++++
 2 files changed, 26 insertions(+)

diff --git a/dev-libs/botan/botan-2.3.0.ebuild b/dev-libs/botan/botan-2.3.0.ebuild
index c2cd637870d..0891fa18daf 100644
--- a/dev-libs/botan/botan-2.3.0.ebuild
+++ b/dev-libs/botan/botan-2.3.0.ebuild
@@ -33,6 +33,10 @@ DEPEND="${RDEPEND}
 	dev-lang/python:*
 	doc? ( dev-python/sphinx )"
 
+PATCHES=(
+	"${FILESDIR}/${P}-build.patch"
+)
+
 src_prepare() {
 	default
 	use doc || sed \

diff --git a/dev-libs/botan/files/botan-2.3.0-build.patch b/dev-libs/botan/files/botan-2.3.0-build.patch
new file mode 100644
index 00000000000..b4d4ca6e694
--- /dev/null
+++ b/dev-libs/botan/files/botan-2.3.0-build.patch
@@ -0,0 +1,22 @@
+From 9e28eac720176ecb9b784510d352aa0ac38d0b56 Mon Sep 17 00:00:00 2001
+From: Jack Lloyd <jack@randombit.net>
+Date: Wed, 4 Oct 2017 13:59:21 -0400
+Subject: [PATCH] Add limits.h header for INT_MAX
+
+Gentoo bug https://bugs.gentoo.org/633468
+---
+ src/lib/prov/openssl/openssl_mode.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/lib/prov/openssl/openssl_mode.cpp b/src/lib/prov/openssl/openssl_mode.cpp
+index 9580bc9c5..fabaccb18 100644
+--- a/src/lib/prov/openssl/openssl_mode.cpp
++++ b/src/lib/prov/openssl/openssl_mode.cpp
+@@ -10,6 +10,7 @@
+ #include <botan/internal/rounding.h>
+ #include <botan/internal/openssl.h>
+ #include <openssl/evp.h>
++#include <limits.h>
+ 
+ namespace Botan {
+ 


^ permalink raw reply related	[flat|nested] 14+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/botan/, dev-libs/botan/files/
@ 2018-04-08 19:21 Alon Bar-Lev
  0 siblings, 0 replies; 14+ messages in thread
From: Alon Bar-Lev @ 2018-04-08 19:21 UTC (permalink / raw
  To: gentoo-commits

commit:     4b2fee6ac6d3e5d35cb0baa7d2c31c32029eaa4c
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Sun Apr  8 11:10:37 2018 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Sun Apr  8 19:21:08 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4b2fee6a

dev-libs/botan: cleanup

Bug: https://bugs.gentoo.org/show_bug.cgi?id=652254
Package-Manager: Portage-2.3.24, Repoman-2.3.6

 dev-libs/botan/Manifest                      |   1 -
 dev-libs/botan/botan-2.3.0.ebuild            | 113 ---------------------------
 dev-libs/botan/files/botan-2.3.0-build.patch |  48 ------------
 3 files changed, 162 deletions(-)

diff --git a/dev-libs/botan/Manifest b/dev-libs/botan/Manifest
index 05d44f20dad..e76f2a76d47 100644
--- a/dev-libs/botan/Manifest
+++ b/dev-libs/botan/Manifest
@@ -1,3 +1,2 @@
 DIST Botan-1.10.17.tgz 2706678 BLAKE2B bce65493c702381aaa747c2b935c545f85704b93bb6be4bf225048cc14812999291bbbe86786c2b00865489ec47d63128b12ef1020be8651be57fa1c84006a7c SHA512 a47cab3af113652247c8efc8b0f043eb62175eaa8554833d5fc3016ea94dbdd8aa722ab9b5226cc5f133afbcc088d54362111630eaa4594812c39925cc3c8649
-DIST Botan-2.3.0.tgz 5947072 BLAKE2B b8eaf4228c01200f839031b423901f93c1b6863d10424ad52afeac85131e95bc1bad024478c8e4c8e4c12210e85aa62d30fb83b3ece8facdb57763f95c45687c SHA512 a8575bdb2eaa01fb45d8565bea0b54ddf47a21d2fb761fc0a286373b09d51e5a00e84d5cefc51040c5720db66f5625c6bc73ab09cffa9cd42472545610f9892a
 DIST Botan-2.5.0.tgz 6596225 BLAKE2B ffb5647e5734a8bef14b6c52ad12a211844e9c73f843427cb2972813523091cef99a21cea3d6a8bf69367f0d937ea0a422d2ed8aaf839ee1c7a2d95a1bd702a8 SHA512 51d91bcf6ba41247fbb649697e33e3a0c8ba9f35ba7865be9120c0f0efb7fa8c51fb3d922f0d5576ae1ef637188821ff4352ed45de52e0798910ee354787cdda

diff --git a/dev-libs/botan/botan-2.3.0.ebuild b/dev-libs/botan/botan-2.3.0.ebuild
deleted file mode 100644
index d715da51c97..00000000000
--- a/dev-libs/botan/botan-2.3.0.ebuild
+++ /dev/null
@@ -1,113 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
-
-inherit multilib python-r1 toolchain-funcs
-
-MY_PN="Botan"
-MY_P="${MY_PN}-${PV}"
-DESCRIPTION="A C++ crypto library"
-HOMEPAGE="http://botan.randombit.net/"
-SRC_URI="http://botan.randombit.net/releases/${MY_P}.tgz"
-
-KEYWORDS="amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc x86 ~ppc-macos"
-SLOT="2/3" # soname version
-LICENSE="BSD"
-IUSE="bindist doc boost python bzip2 libressl lzma sqlite ssl static-libs zlib"
-REQUIRED_USE="python? ( boost ) boost? ( ${PYTHON_REQUIRED_USE} )"
-
-S="${WORKDIR}/${MY_P}"
-
-RDEPEND="bzip2? ( >=app-arch/bzip2-1.0.5 )
-	zlib? ( >=sys-libs/zlib-1.2.3 )
-	boost? ( ${PYTHON_DEPS} >=dev-libs/boost-1.48[python?,${PYTHON_USEDEP}] )
-	lzma? ( app-arch/xz-utils )
-	sqlite? ( dev-db/sqlite:3 )
-	ssl? (
-		!libressl? ( dev-libs/openssl:0=[bindist=] )
-		libressl? ( dev-libs/libressl:0= )
-	)"
-DEPEND="${RDEPEND}
-	dev-lang/python:*
-	doc? ( dev-python/sphinx )"
-
-PATCHES=(
-	"${FILESDIR}/${P}-build.patch"
-)
-
-src_prepare() {
-	default
-	use doc || sed \
-		-e "/^install:/s/ docs//" \
-		-i src/build-data/makefile/gmake.in
-	use python && python_copy_sources
-}
-
-src_configure() {
-	local disable_modules=( proc_walk unix_procs )
-	use boost || disable_modules+=( "boost" )
-	use bindist && disable_modules+=( "ecdsa" )
-	use python || disable_modules+=( "ffi" )
-	elog "Disabling modules: ${disable_modules[@]}"
-
-	# Enable v9 instructions for sparc64
-	if [[ "${PROFILE_ARCH}" = "sparc64" ]]; then
-		CHOSTARCH="sparc32-v9"
-	else
-		CHOSTARCH="${CHOST%%-*}"
-	fi
-
-	local myos=
-	case ${CHOST} in
-		*-darwin*)   myos=darwin ;;
-		*)           myos=linux  ;;
-	esac
-
-	local pythonvers=()
-	if use python; then
-		append() {
-			pythonvers+=( ${EPYTHON/python/} )
-		}
-		python_foreach_impl append
-	fi
-
-	./configure.py \
-		--prefix="${EPREFIX}/usr" \
-		--libdir=$(get_libdir) \
-		--docdir=share/doc \
-		--cc=gcc \
-		--os=${myos} \
-		--cpu=${CHOSTARCH} \
-		--with-endian="$(tc-endian)" \
-		--without-doxygen \
-		$(use_with doc sphinx) \
-		$(use_with bzip2) \
-		$(use_with lzma) \
-		$(use_with sqlite sqlite3) \
-		$(use_with ssl openssl) \
-		$(use_with zlib) \
-		$(use_with boost) \
-		--with-python-version=$(IFS=","; echo "${pythonvers[*]}" ) \
-		--disable-modules=$(IFS=","; echo "${disable_modules[*]}" ) \
-		|| die "configure.py failed"
-}
-
-src_compile() {
-	emake CXX="$(tc-getCXX) -pthread" AR="$(tc-getAR) crs" CXXFLAGS="-std=c++11 -D_REENTRANT ${CXXFLAGS}"
-}
-
-src_test() {
-	LD_LIBRARY_PATH="${S}" ./botan-test || die "Validation tests failed"
-}
-
-src_install() {
-	default
-
-	if ! use static-libs; then
-		rm "${ED}usr/$(get_libdir)/libbotan"*.a || die 'remove of static libs failed'
-	fi
-
-	use python && python_foreach_impl python_optimize
-}

diff --git a/dev-libs/botan/files/botan-2.3.0-build.patch b/dev-libs/botan/files/botan-2.3.0-build.patch
deleted file mode 100644
index 06d44cd0c49..00000000000
--- a/dev-libs/botan/files/botan-2.3.0-build.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From 9e28eac720176ecb9b784510d352aa0ac38d0b56 Mon Sep 17 00:00:00 2001
-From: Jack Lloyd <jack@randombit.net>
-Date: Wed, 4 Oct 2017 13:59:21 -0400
-Subject: [PATCH] Add limits.h header for INT_MAX
-
-Gentoo bug https://bugs.gentoo.org/633468
----
- src/lib/prov/openssl/openssl_mode.cpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/lib/prov/openssl/openssl_mode.cpp b/src/lib/prov/openssl/openssl_mode.cpp
-index 9580bc9c5..fabaccb18 100644
---- a/src/lib/prov/openssl/openssl_mode.cpp
-+++ b/src/lib/prov/openssl/openssl_mode.cpp
-@@ -10,6 +10,7 @@
- #include <botan/internal/rounding.h>
- #include <botan/internal/openssl.h>
- #include <openssl/evp.h>
-+#include <limits.h>
- 
- namespace Botan {
- 
-From 8526077c273c752661786e0ef5d9f7b945c83931 Mon Sep 17 00:00:00 2001
-From: Alon Bar-Lev <alon.barlev@gmail.com>
-Date: Fri, 13 Oct 2017 19:34:25 +0300
-Subject: [PATCH] Add limits.h header for INT_MAX
-
-Gentoo-Bug: https://bugs.gentoo.org/633468
-Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
----
- src/lib/prov/openssl/openssl_rsa.cpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/lib/prov/openssl/openssl_rsa.cpp b/src/lib/prov/openssl/openssl_rsa.cpp
-index fae869b..ab5ac64 100644
---- a/src/lib/prov/openssl/openssl_rsa.cpp
-+++ b/src/lib/prov/openssl/openssl_rsa.cpp
-@@ -22,6 +22,7 @@
- #include <openssl/x509.h>
- #include <openssl/err.h>
- #include <openssl/rand.h>
-+#include <limits.h>
- 
- namespace Botan {
- 
--- 
-2.13.6
-


^ permalink raw reply related	[flat|nested] 14+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/botan/, dev-libs/botan/files/
@ 2019-05-08  9:35 Alon Bar-Lev
  0 siblings, 0 replies; 14+ messages in thread
From: Alon Bar-Lev @ 2019-05-08  9:35 UTC (permalink / raw
  To: gentoo-commits

commit:     6c16b775799acf5408158d39326d24d5b2af097e
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Wed May  8 05:51:31 2019 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Wed May  8 09:34:53 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6c16b775

dev-libs/botan: cleanup old

Signed-off-by: Alon Bar-Lev <alonbl <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11

 dev-libs/botan/Manifest                      |   2 -
 dev-libs/botan/botan-2.7.0.ebuild            |  99 -------------------------
 dev-libs/botan/botan-2.8.0.ebuild            | 103 ---------------------------
 dev-libs/botan/files/botan-2.8.0-build.patch |  22 ------
 4 files changed, 226 deletions(-)

diff --git a/dev-libs/botan/Manifest b/dev-libs/botan/Manifest
index 77af7e1b3c7..c2dc54f8d96 100644
--- a/dev-libs/botan/Manifest
+++ b/dev-libs/botan/Manifest
@@ -1,4 +1,2 @@
 DIST Botan-1.10.17.tgz 2706678 BLAKE2B bce65493c702381aaa747c2b935c545f85704b93bb6be4bf225048cc14812999291bbbe86786c2b00865489ec47d63128b12ef1020be8651be57fa1c84006a7c SHA512 a47cab3af113652247c8efc8b0f043eb62175eaa8554833d5fc3016ea94dbdd8aa722ab9b5226cc5f133afbcc088d54362111630eaa4594812c39925cc3c8649
-DIST Botan-2.7.0.tgz 7021654 BLAKE2B 3f18b7ba660a72a409beeaba8bd1b1bd021f645c135bed56d75b6ba906b7c28d1e14eac9550862500dda9c4b3ac3135cfc9c340e073c573deb66b236e09f8054 SHA512 992138d83e18aedf80337d825f80c34dd3d2177eb30967573c57cf9fb7e7f9a9965ae3d75f23635f4c93b4efb7bb5adbb3423702663c78a5eb905dd567561858
-DIST Botan-2.8.0.tgz 7152674 BLAKE2B 7838423fc7cc3521b3feb95ab3958f8cd4df86534f1ef30d717b47e54a9a7ae0d2ed6618370b9adfd0a178b509750e5aacda8457caa89f408292837fe3426de0 SHA512 12f734eea3e60a956f75a5b58e9bd83fac7b0dbcd71fb9577b025d171702d87a9a11e2e73162320bdefb2d25f3900757d89dd7fe13089321c88d948efc2ba214
 DIST Botan-2.9.0.tgz 7216373 BLAKE2B 5ad2e15db871ccc3a32b29b7f54a02d69f251f0aca2ce656b557dbbb3814a793053a54905371b3414ad72952a64bece43e2383da91f205f68b0fe31be2f9439c SHA512 b88f3894a4a5b7b2fbff9be6eb0b774bf679a014bd2364811b7e63d4f323e22ca9ef916491afbc2cdf9db68727c1449fbeb6fd417e591560add0955517db3f65

diff --git a/dev-libs/botan/botan-2.7.0.ebuild b/dev-libs/botan/botan-2.7.0.ebuild
deleted file mode 100644
index dbd4d804dc0..00000000000
--- a/dev-libs/botan/botan-2.7.0.ebuild
+++ /dev/null
@@ -1,99 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python{2_7,3_5,3_6} )
-
-inherit multilib python-r1 toolchain-funcs
-
-MY_PN="Botan"
-MY_P="${MY_PN}-${PV}"
-DESCRIPTION="A C++ crypto library"
-HOMEPAGE="https://botan.randombit.net/"
-SRC_URI="https://botan.randombit.net/releases/${MY_P}.tgz"
-
-KEYWORDS="amd64 ~arm hppa ~ia64 ppc ppc64 ~sparc x86 ~ppc-macos"
-SLOT="2/$(ver_cut 1-2)" # soname version
-LICENSE="BSD"
-IUSE="bindist doc boost python bzip2 libressl lzma sqlite ssl static-libs zlib"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S="${WORKDIR}/${MY_P}"
-
-DEPEND="python? ( ${PYTHON_DEPS} )"
-RDEPEND="${DEPEND}
-	bzip2? ( >=app-arch/bzip2-1.0.5 )
-	zlib? ( >=sys-libs/zlib-1.2.3 )
-	boost? ( >=dev-libs/boost-1.48 )
-	lzma? ( app-arch/xz-utils )
-	sqlite? ( dev-db/sqlite:3 )
-	ssl? (
-		!libressl? ( dev-libs/openssl:0=[bindist=] )
-		libressl? ( dev-libs/libressl:0= )
-	)"
-BDEPEND="dev-lang/python:*
-	doc? ( dev-python/sphinx )"
-
-src_configure() {
-	local disable_modules=()
-	use boost || disable_modules+=( "boost" )
-	use bindist && disable_modules+=( "ecdsa" )
-	elog "Disabling modules: ${disable_modules[@]}"
-
-	# Enable v9 instructions for sparc64
-	if [[ "${PROFILE_ARCH}" = "sparc64" ]]; then
-		CHOSTARCH="sparc32-v9"
-	else
-		CHOSTARCH="${CHOST%%-*}"
-	fi
-
-	local myos=
-	case ${CHOST} in
-		*-darwin*)	myos=darwin ;;
-		*)			myos=linux  ;;
-	esac
-
-	case ${CHOST} in
-		hppa*)		CHOSTARCH=parisc ;;
-	esac
-
-	local pythonvers=()
-	if use python; then
-		append() {
-			pythonvers+=( ${EPYTHON/python/} )
-		}
-		python_foreach_impl append
-	fi
-
-	CXX="$(tc-getCXX)" AR="$(tc-getAR)" ./configure.py \
-		$(use_enable static-libs static-library) \
-		$(use_with boost) \
-		$(use_with bzip2) \
-		$(use_with doc documentation) \
-		$(use_with doc sphinx) \
-		$(use_with lzma) \
-		$(use_with sqlite sqlite3) \
-		$(use_with ssl openssl) \
-		$(use_with zlib) \
-		$(usex hppa --without-stack-protector '') \
-		--cc=gcc \
-		--cpu=${CHOSTARCH} \
-		--disable-modules=$(IFS=","; echo "${disable_modules[*]}" ) \
-		--docdir=share/doc \
-		--libdir=$(get_libdir) \
-		--os=${myos} \
-		--prefix="${EPREFIX}/usr" \
-		--with-endian="$(tc-endian)" \
-		--with-python-version=$(IFS=","; echo "${pythonvers[*]}" ) \
-		--without-doxygen \
-		|| die "configure.py failed"
-}
-
-src_test() {
-	LD_LIBRARY_PATH="${S}" ./botan-test || die "Validation tests failed"
-}
-
-src_install() {
-	default
-	use python && python_foreach_impl python_optimize
-}

diff --git a/dev-libs/botan/botan-2.8.0.ebuild b/dev-libs/botan/botan-2.8.0.ebuild
deleted file mode 100644
index e46dbb8f1ef..00000000000
--- a/dev-libs/botan/botan-2.8.0.ebuild
+++ /dev/null
@@ -1,103 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python{2_7,3_5,3_6} )
-
-inherit multilib python-r1 toolchain-funcs
-
-MY_PN="Botan"
-MY_P="${MY_PN}-${PV}"
-DESCRIPTION="A C++ crypto library"
-HOMEPAGE="https://botan.randombit.net/"
-SRC_URI="https://botan.randombit.net/releases/${MY_P}.tgz"
-
-KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~ppc-macos"
-SLOT="2/$(ver_cut 1-2)" # soname version
-LICENSE="BSD"
-IUSE="bindist doc boost python bzip2 libressl lzma sqlite ssl static-libs zlib"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S="${WORKDIR}/${MY_P}"
-
-DEPEND="python? ( ${PYTHON_DEPS} )"
-RDEPEND="${DEPEND}
-	bzip2? ( >=app-arch/bzip2-1.0.5:= )
-	zlib? ( >=sys-libs/zlib-1.2.3:= )
-	boost? ( >=dev-libs/boost-1.48:= )
-	lzma? ( app-arch/xz-utils:= )
-	sqlite? ( dev-db/sqlite:3= )
-	ssl? (
-		!libressl? ( dev-libs/openssl:0=[bindist=] )
-		libressl? ( dev-libs/libressl:0= )
-	)"
-BDEPEND="dev-lang/python:*
-	doc? ( dev-python/sphinx )"
-
-PATCHES=(
-	"${FILESDIR}/${P}-build.patch"
-)
-
-src_configure() {
-	local disable_modules=()
-	use boost || disable_modules+=( "boost" )
-	use bindist && disable_modules+=( "ecdsa" )
-	elog "Disabling modules: ${disable_modules[@]}"
-
-	# Enable v9 instructions for sparc64
-	if [[ "${PROFILE_ARCH}" = "sparc64" ]]; then
-		CHOSTARCH="sparc32-v9"
-	else
-		CHOSTARCH="${CHOST%%-*}"
-	fi
-
-	local myos=
-	case ${CHOST} in
-		*-darwin*)	myos=darwin ;;
-		*)			myos=linux  ;;
-	esac
-
-	case ${CHOST} in
-		hppa*)		CHOSTARCH=parisc ;;
-	esac
-
-	local pythonvers=()
-	if use python; then
-		append() {
-			pythonvers+=( ${EPYTHON/python/} )
-		}
-		python_foreach_impl append
-	fi
-
-	CXX="$(tc-getCXX)" AR="$(tc-getAR)" ./configure.py \
-		$(use_enable static-libs static-library) \
-		$(use_with boost) \
-		$(use_with bzip2) \
-		$(use_with doc documentation) \
-		$(use_with doc sphinx) \
-		$(use_with lzma) \
-		$(use_with sqlite sqlite3) \
-		$(use_with ssl openssl) \
-		$(use_with zlib) \
-		$(usex hppa --without-stack-protector '') \
-		--cc=gcc \
-		--cpu=${CHOSTARCH} \
-		--disable-modules=$(IFS=","; echo "${disable_modules[*]}" ) \
-		--docdir=share/doc \
-		--libdir=$(get_libdir) \
-		--os=${myos} \
-		--prefix="${EPREFIX}/usr" \
-		--with-endian="$(tc-endian)" \
-		--with-python-version=$(IFS=","; echo "${pythonvers[*]}" ) \
-		--without-doxygen \
-		|| die "configure.py failed"
-}
-
-src_test() {
-	LD_LIBRARY_PATH="${S}" ./botan-test || die "Validation tests failed"
-}
-
-src_install() {
-	default
-	use python && python_foreach_impl python_optimize
-}

diff --git a/dev-libs/botan/files/botan-2.8.0-build.patch b/dev-libs/botan/files/botan-2.8.0-build.patch
deleted file mode 100644
index 04755a0381a..00000000000
--- a/dev-libs/botan/files/botan-2.8.0-build.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-From 813b7230735960f3e5225f1f74ca680c9ea84101 Mon Sep 17 00:00:00 2001
-From: Shawn Anastasio <shawn@anastas.io>
-Date: Sun, 30 Dec 2018 14:49:43 -0600
-Subject: [PATCH] Add powerpc64le as an alias for ppc64
-
-Add powerpc64le as an alias for the ppc64 build target.
----
- src/build-data/arch/ppc64.txt | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/build-data/arch/ppc64.txt b/src/build-data/arch/ppc64.txt
-index 9ab7cccded..23d3bb2a10 100644
---- a/src/build-data/arch/ppc64.txt
-+++ b/src/build-data/arch/ppc64.txt
-@@ -5,6 +5,7 @@ wordsize 64
- 
- <aliases>
- powerpc64
-+powerpc64le
- ppc64le
- ppc64el
- </aliases>


^ permalink raw reply related	[flat|nested] 14+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/botan/, dev-libs/botan/files/
@ 2023-07-06  2:11 Sam James
  0 siblings, 0 replies; 14+ messages in thread
From: Sam James @ 2023-07-06  2:11 UTC (permalink / raw
  To: gentoo-commits

commit:     3eb7e3258d4fd7584fae543d779d9fdea666e721
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Jul  6 02:07:48 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Jul  6 02:10:40 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3eb7e325

dev-libs/botan: fix musl build

Couldn't reproduce it but seems straightforward wrt the issue.

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

 dev-libs/botan/botan-3.0.0-r2.ebuild               |  3 +
 .../files/botan-3.0.0-getentropy-includes.patch    | 68 ++++++++++++++++++++++
 2 files changed, 71 insertions(+)

diff --git a/dev-libs/botan/botan-3.0.0-r2.ebuild b/dev-libs/botan/botan-3.0.0-r2.ebuild
index 866ca3ab1f23..fb1e9384a2cc 100644
--- a/dev-libs/botan/botan-3.0.0-r2.ebuild
+++ b/dev-libs/botan/botan-3.0.0-r2.ebuild
@@ -55,6 +55,9 @@ BDEPEND="
 # NOTE: Considering patching Botan?
 # Please see upstream's guidance:
 # https://botan.randombit.net/handbook/packaging.html#minimize-distribution-patches
+PATCHES=(
+	"${FILESDIR}"/${P}-getentropy-includes.patch
+)
 
 python_check_deps() {
 	use doc || return 0

diff --git a/dev-libs/botan/files/botan-3.0.0-getentropy-includes.patch b/dev-libs/botan/files/botan-3.0.0-getentropy-includes.patch
new file mode 100644
index 000000000000..d8b99ba0f4c5
--- /dev/null
+++ b/dev-libs/botan/files/botan-3.0.0-getentropy-includes.patch
@@ -0,0 +1,68 @@
+https://bugs.gentoo.org/909422
+https://github.com/randombit/botan/commit/3f87e1eef7dbfe231d833ffbf06f7a85b070b600 (cherry-picked getentropy.cpp bit)
+https://github.com/randombit/botan/commit/562ea8da8ab34985b4b3dfefc1bea57829213ace
+
+--- a/src/lib/entropy/getentropy/getentropy.cpp
++++ b/src/lib/entropy/getentropy/getentropy.cpp
+@@ -10,8 +10,8 @@
+ #if defined(BOTAN_TARGET_OS_IS_OPENBSD) || defined(BOTAN_TARGET_OS_IS_FREEBSD) || defined(BOTAN_TARGET_OS_IS_SOLARIS)
+    #include <unistd.h>
+ #else
+-   #include <sys/types.h> // older macOS needs this before sys/random.h
+    #include <sys/random.h>
++   #include <sys/types.h>  // older macOS needs this before sys/random.h
+ #endif
+ 
+ namespace Botan {
+@@ -21,16 +21,14 @@ namespace Botan {
+ * buffer size is limited to 256 bytes.  On OpenBSD this does neither
+ * block nor fail.
+ */
+-size_t Getentropy::poll(RandomNumberGenerator& rng)
+-   {
++size_t Getentropy::poll(RandomNumberGenerator& rng) {
+    secure_vector<uint8_t> buf(256);
+ 
+-   if(::getentropy(buf.data(), buf.size()) == 0)
+-      {
++   if(::getentropy(buf.data(), buf.size()) == 0) {
+       rng.add_entropy(buf.data(), buf.size());
+       return buf.size() * 8;
+-      }
++   }
+ 
+    return 0;
+-   }
+ }
++}  // namespace Botan
+
+From 562ea8da8ab34985b4b3dfefc1bea57829213ace Mon Sep 17 00:00:00 2001
+From: Jack Lloyd <jack@randombit.net>
+Date: Mon, 29 May 2023 10:10:54 -0400
+Subject: [PATCH] Clean up getentropy includes
+
+--- a/src/lib/entropy/getentropy/getentropy.cpp
++++ b/src/lib/entropy/getentropy/getentropy.cpp
+@@ -6,12 +6,11 @@
+ */
+ 
+ #include <botan/internal/getentropy.h>
++#include <unistd.h>
+ 
+-#if defined(BOTAN_TARGET_OS_IS_OPENBSD) || defined(BOTAN_TARGET_OS_IS_FREEBSD) || defined(BOTAN_TARGET_OS_IS_SOLARIS)
+-   #include <unistd.h>
+-#else
++// macOS and Android include it in sys/random.h instead
++#if __has_include(<sys/random.h>)
+    #include <sys/random.h>
+-   #include <sys/types.h>  // older macOS needs this before sys/random.h
+ #endif
+ 
+ namespace Botan {
+@@ -31,4 +30,5 @@ size_t Getentropy::poll(RandomNumberGenerator& rng) {
+ 
+    return 0;
+ }
++
+ }  // namespace Botan
+


^ permalink raw reply related	[flat|nested] 14+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/botan/, dev-libs/botan/files/
@ 2023-10-12  8:12 Sam James
  0 siblings, 0 replies; 14+ messages in thread
From: Sam James @ 2023-10-12  8:12 UTC (permalink / raw
  To: gentoo-commits

commit:     f84e0bd3e7f13888c343883bbc5e0b26b0694bf3
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 12 07:56:00 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Oct 12 08:12:10 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f84e0bd3

dev-libs/botan: backport upstream fix for ninja & switch back to it.

This reverts commit 5fb454ae567ba6c7c71616b602ce641b5ab7f216. Go back to ninja
with the patch, but let's revbump Just In Case as it's possible that a different
binary got installed given the nature of the patch.

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

 .../{botan-3.2.0.ebuild => botan-3.2.0-r1.ebuild}    | 15 +++++++++++----
 dev-libs/botan/files/botan-3.2.0-ninja.patch         | 20 ++++++++++++++++++++
 2 files changed, 31 insertions(+), 4 deletions(-)

diff --git a/dev-libs/botan/botan-3.2.0.ebuild b/dev-libs/botan/botan-3.2.0-r1.ebuild
similarity index 96%
rename from dev-libs/botan/botan-3.2.0.ebuild
rename to dev-libs/botan/botan-3.2.0-r1.ebuild
index bb651261749f..bd7375f6945b 100644
--- a/dev-libs/botan/botan-3.2.0.ebuild
+++ b/dev-libs/botan/botan-3.2.0-r1.ebuild
@@ -5,7 +5,7 @@ EAPI=8
 
 PYTHON_COMPAT=( python3_{10..12} )
 VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/botan.asc
-inherit edo flag-o-matic multiprocessing python-r1 toolchain-funcs verify-sig
+inherit edo flag-o-matic multiprocessing ninja-utils python-r1 toolchain-funcs verify-sig
 
 MY_P="Botan-${PV}"
 DESCRIPTION="C++ crypto library"
@@ -46,6 +46,7 @@ RDEPEND="
 "
 BDEPEND="
 	${PYTHON_DEPS}
+	${NINJA_DEPEND}
 	$(python_gen_any_dep '
 		doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
 	')
@@ -56,6 +57,9 @@ BDEPEND="
 # 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
@@ -150,8 +154,7 @@ src_configure() {
 		$(use_with sqlite sqlite3)
 		$(use_with zlib)
 
-		# Broken in 3.2.0, bug #915544
-		#--build-tool=ninja
+		--build-tool=ninja
 		--cpu=${chostarch}
 		--docdir=share/doc
 		--disable-modules=$(IFS=","; echo "${disable_modules[*]}")
@@ -203,12 +206,16 @@ src_configure() {
 	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() {
-	default
+	DESTDIR="${D}" eninja install
 
 	if [[ -d "${ED}"/usr/share/doc/${P} && ${P} != ${PF} ]] ; then
 		# --docdir in configure controls the parent directory unfortunately

diff --git a/dev-libs/botan/files/botan-3.2.0-ninja.patch b/dev-libs/botan/files/botan-3.2.0-ninja.patch
new file mode 100644
index 000000000000..826fc496fb31
--- /dev/null
+++ b/dev-libs/botan/files/botan-3.2.0-ninja.patch
@@ -0,0 +1,20 @@
+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}
+


^ permalink raw reply related	[flat|nested] 14+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/botan/, dev-libs/botan/files/
@ 2024-12-22  0:22 Sam James
  0 siblings, 0 replies; 14+ messages in thread
From: Sam James @ 2024-12-22  0:22 UTC (permalink / raw
  To: gentoo-commits

commit:     ae150680ea3f3c6d0b7800f8fdc0885068031951
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 22 00:22:08 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Dec 22 00:22:08 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ae150680

dev-libs/botan: add 2.19.5

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

 dev-libs/botan/Manifest                            |   2 +
 dev-libs/botan/botan-2.19.5.ebuild                 | 206 ++++++++++++
 dev-libs/botan/files/botan-2.19.5-boost-1.87.patch | 361 +++++++++++++++++++++
 dev-libs/botan/files/botan-2.19.5-cloudflare.patch |  52 +++
 .../botan/files/botan-2.19.5-no-distutils.patch    |  86 +++++
 5 files changed, 707 insertions(+)

diff --git a/dev-libs/botan/Manifest b/dev-libs/botan/Manifest
index 54dbb0c1c7ae..5fb27c05f14b 100644
--- a/dev-libs/botan/Manifest
+++ b/dev-libs/botan/Manifest
@@ -2,6 +2,8 @@ DIST Botan-2.19.3.tar.xz 6105896 BLAKE2B 6d7778d9e9a101c76f35c65b0fb0201641cd919
 DIST Botan-2.19.3.tar.xz.asc 488 BLAKE2B cd86bf77306aad2956cced6ac4fb96081279af88743e87d8fe5437e72e9fa8db8aaf40d0b5cb9c5b3a85204cb7d63c3baa3054126ab4c9a2db527e6835a069d7 SHA512 9142f932c958138b4bac32f503a550e6c73b61612690a280dcb98efe8c367aa6bd3cd88b4ed4decec376bb87596a780a21bdcb01d4a3573a1c44fbeb0aa49d23
 DIST Botan-2.19.4.tar.xz 6099528 BLAKE2B c35dfec5aad13c76fe09b33f97a72d15f84bfd6c434cae89be13c3fd3e6f7deaa9ea21474890bb6a1f4fa7d23369c32b9fc747862233eac33c8c88dbc912d31f SHA512 2fab4347367703dce8302b7710698ed228c6cc6dd609c39829ba17ad580407ed40d822862d467aa7aea4bfd633c1f1d1c0d437e86376f453845cc609596335d8
 DIST Botan-2.19.4.tar.xz.asc 488 BLAKE2B b8b7db32d61859778c0866e782ed94ef89ba48a0f0f2289d9452fe7f540ae37ad495cb7eede68199d9bed8e23f695e1860c0d379cd4c35c92de8c45db167b68a SHA512 e00c4e2944655919507300650d81fbee03dd22d1a84cb8135848ea9ee061ca4d4dfada618643193143c0123e56f22e4a6d3a26c73923d872754d80dc2a4779c5
+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

diff --git a/dev-libs/botan/botan-2.19.5.ebuild b/dev-libs/botan/botan-2.19.5.ebuild
new file mode 100644
index 000000000000..bece06dd2ab4
--- /dev/null
+++ b/dev-libs/botan/botan-2.19.5.ebuild
@@ -0,0 +1,206 @@
+# 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 ~sparc ~x86 ~ppc-macos"
+IUSE="doc boost bzip2 lzma python static-libs sqlite test tools zlib"
+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[@]}"
+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-3.0.0-r1:3[tools]
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	$(python_gen_any_dep '
+		doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
+	')
+	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}-no-distutils.patch
+	"${FILESDIR}"/${P}-boost-1.87.patch
+	"${FILESDIR}"/${P}-cloudflare.patch
+)
+
+python_check_deps() {
+	use doc || return 0
+	python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]"
+}
+
+src_configure() {
+	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
+
+	tc-export AR CC CXX
+
+	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} ]] ; 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-2.19.5-boost-1.87.patch b/dev-libs/botan/files/botan-2.19.5-boost-1.87.patch
new file mode 100644
index 000000000000..a52fbaea130d
--- /dev/null
+++ b/dev-libs/botan/files/botan-2.19.5-boost-1.87.patch
@@ -0,0 +1,361 @@
+https://bugs.gentoo.org/946389
+https://github.com/randombit/botan/commit/37fec38ff97604f964122cd2d33f5d503f319b10
+
+From 37fec38ff97604f964122cd2d33f5d503f319b10 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Ren=C3=A9=20Meusel?= <rene.meusel@rohde-schwarz.com>
+Date: Thu, 19 Dec 2024 10:28:40 +0100
+Subject: [PATCH] Backport: Remove usage of deprecated asio API
+
+These were all finally dropped with boost 1.87, so this fixes
+build with boost 1.87.
+
+Co-Authored-By: Jack Lloyd <jack@randombit.net>
+Co-Authored-By: q66 <q66@chimera-linux.org>
+---
+ src/cli/tls_http_server.cpp         | 16 +++++-----
+ src/cli/tls_proxy.cpp               | 46 ++++++++++++++++-------------
+ src/lib/utils/socket/socket.cpp     | 18 +++++------
+ src/lib/utils/socket/socket_udp.cpp | 18 +++++------
+ 4 files changed, 50 insertions(+), 48 deletions(-)
+
+diff --git a/src/cli/tls_http_server.cpp b/src/cli/tls_http_server.cpp
+index fc0b5bbb77e..67ab126b145 100644
+--- a/src/cli/tls_http_server.cpp
++++ b/src/cli/tls_http_server.cpp
+@@ -176,7 +176,7 @@ class TLS_Asio_HTTP_Session final : public std::enable_shared_from_this<TLS_Asio
+       typedef std::shared_ptr<TLS_Asio_HTTP_Session> pointer;
+ 
+       static pointer create(
+-         boost::asio::io_service& io,
++         boost::asio::io_context& io,
+          Botan::TLS::Session_Manager& session_manager,
+          Botan::Credentials_Manager& credentials,
+          Botan::TLS::Policy& policy)
+@@ -201,7 +201,7 @@ class TLS_Asio_HTTP_Session final : public std::enable_shared_from_this<TLS_Asio
+          }
+ 
+    private:
+-      TLS_Asio_HTTP_Session(boost::asio::io_service& io,
++      TLS_Asio_HTTP_Session(boost::asio::io_context& io,
+                             Botan::TLS::Session_Manager& session_manager,
+                             Botan::Credentials_Manager& credentials,
+                             Botan::TLS::Policy& policy)
+@@ -230,7 +230,8 @@ class TLS_Asio_HTTP_Session final : public std::enable_shared_from_this<TLS_Asio
+ 
+          m_client_socket.async_read_some(
+             boost::asio::buffer(&m_c2s[0], m_c2s.size()),
+-            m_strand.wrap(
++            boost::asio::bind_executor(
++               m_strand,
+                boost::bind(
+                   &TLS_Asio_HTTP_Session::client_read, shared_from_this(),
+                   boost::asio::placeholders::error,
+@@ -332,7 +333,8 @@ class TLS_Asio_HTTP_Session final : public std::enable_shared_from_this<TLS_Asio
+             boost::asio::async_write(
+                m_client_socket,
+                boost::asio::buffer(&m_s2c[0], m_s2c.size()),
+-               m_strand.wrap(
++               boost::asio::bind_executor(
++                  m_strand,
+                   boost::bind(
+                      &TLS_Asio_HTTP_Session::handle_client_write_completion,
+                      shared_from_this(),
+@@ -406,7 +408,7 @@ class TLS_Asio_HTTP_Session final : public std::enable_shared_from_this<TLS_Asio
+             }
+          }
+ 
+-      boost::asio::io_service::strand m_strand;
++      boost::asio::io_context::strand m_strand;
+ 
+       tcp::socket m_client_socket;
+ 
+@@ -427,7 +429,7 @@ class TLS_Asio_HTTP_Server final
+       typedef TLS_Asio_HTTP_Session session;
+ 
+       TLS_Asio_HTTP_Server(
+-         boost::asio::io_service& io, unsigned short port,
++         boost::asio::io_context& io, unsigned short port,
+          Botan::Credentials_Manager& creds,
+          Botan::TLS::Policy& policy,
+          Botan::TLS::Session_Manager& session_mgr,
+@@ -551,7 +553,7 @@ class TLS_HTTP_Server final : public Command
+             session_mgr.reset(new Botan::TLS::Session_Manager_In_Memory(rng()));
+             }
+ 
+-         boost::asio::io_service io;
++         boost::asio::io_context io;
+ 
+          TLS_Asio_HTTP_Server server(io, listen_port, creds, *policy, *session_mgr, max_clients);
+ 
+diff --git a/src/cli/tls_proxy.cpp b/src/cli/tls_proxy.cpp
+index bd96530c202..853be08161c 100644
+--- a/src/cli/tls_proxy.cpp
++++ b/src/cli/tls_proxy.cpp
+@@ -98,11 +98,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,
++         boost::asio::io_context& io,
+          Botan::TLS::Session_Manager& session_manager,
+          Botan::Credentials_Manager& credentials,
+          Botan::TLS::Policy& policy,
+-         tcp::resolver::iterator endpoints)
++         tcp::resolver::results_type endpoints)
+          {
+          return pointer(
+                    new tls_proxy_session(
+@@ -141,11 +141,11 @@ class tls_proxy_session final : public std::enable_shared_from_this<tls_proxy_se
+ 
+    private:
+       tls_proxy_session(
+-         boost::asio::io_service& io,
++         boost::asio::io_context& io,
+          Botan::TLS::Session_Manager& session_manager,
+          Botan::Credentials_Manager& credentials,
+          Botan::TLS::Policy& policy,
+-         tcp::resolver::iterator endpoints)
++         tcp::resolver::results_type endpoints)
+          : m_strand(io)
+          , m_server_endpoints(endpoints)
+          , m_client_socket(io)
+@@ -184,7 +184,8 @@ class tls_proxy_session final : public std::enable_shared_from_this<tls_proxy_se
+ 
+          m_client_socket.async_read_some(
+             boost::asio::buffer(&m_c2p[0], m_c2p.size()),
+-            m_strand.wrap(
++            boost::asio::bind_executor(
++               m_strand,
+                boost::bind(
+                   &tls_proxy_session::client_read, shared_from_this(),
+                   boost::asio::placeholders::error,
+@@ -245,7 +246,8 @@ class tls_proxy_session final : public std::enable_shared_from_this<tls_proxy_se
+             boost::asio::async_write(
+                m_client_socket,
+                boost::asio::buffer(&m_p2c[0], m_p2c.size()),
+-               m_strand.wrap(
++               boost::asio::bind_executor(
++                  m_strand,
+                   boost::bind(
+                      &tls_proxy_session::handle_client_write_completion,
+                      shared_from_this(),
+@@ -270,11 +272,11 @@ class tls_proxy_session final : public std::enable_shared_from_this<tls_proxy_se
+             boost::asio::async_write(
+                m_server_socket,
+                boost::asio::buffer(&m_p2s[0], m_p2s.size()),
+-               m_strand.wrap(
+-                  boost::bind(
+-                     &tls_proxy_session::handle_server_write_completion,
+-                     shared_from_this(),
+-                     boost::asio::placeholders::error)));
++               boost::asio::bind_executor(m_strand,
++                                          boost::bind(
++                                             &tls_proxy_session::handle_server_write_completion,
++                                             shared_from_this(),
++                                             boost::asio::placeholders::error)));
+             }
+          }
+ 
+@@ -308,7 +310,8 @@ class tls_proxy_session final : public std::enable_shared_from_this<tls_proxy_se
+ 
+          m_server_socket.async_read_some(
+             boost::asio::buffer(&m_s2p[0], m_s2p.size()),
+-            m_strand.wrap(
++            boost::asio::bind_executor(
++               m_strand,
+                boost::bind(&tls_proxy_session::server_read, shared_from_this(),
+                            boost::asio::placeholders::error,
+                            boost::asio::placeholders::bytes_transferred)));
+@@ -318,7 +321,8 @@ class tls_proxy_session final : public std::enable_shared_from_this<tls_proxy_se
+          {
+          m_hostname = session.server_info().hostname();
+ 
+-         auto onConnect = [this](boost::system::error_code ec, tcp::resolver::iterator /*endpoint*/)
++         auto onConnect = [this](boost::system::error_code ec,
++                                 const boost::asio::ip::tcp::resolver::results_type::iterator& /*endpoint*/)
+             {
+             if(ec)
+                {
+@@ -328,7 +332,7 @@ class tls_proxy_session final : public std::enable_shared_from_this<tls_proxy_se
+             server_read(boost::system::error_code(), 0); // start read loop
+             proxy_write_to_server(nullptr, 0);
+             };
+-         async_connect(m_server_socket, m_server_endpoints, onConnect);
++         async_connect(m_server_socket, m_server_endpoints.begin(), m_server_endpoints.end(), onConnect);
+          return true;
+          }
+ 
+@@ -341,9 +345,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;
+@@ -369,8 +373,8 @@ class tls_proxy_server final
+       typedef tls_proxy_session session;
+ 
+       tls_proxy_server(
+-         boost::asio::io_service& io, unsigned short port,
+-         tcp::resolver::iterator endpoints,
++         boost::asio::io_context& io, unsigned short port,
++         tcp::resolver::results_type endpoints,
+          Botan::Credentials_Manager& creds,
+          Botan::TLS::Policy& policy,
+          Botan::TLS::Session_Manager& session_mgr,
+@@ -428,7 +432,7 @@ class tls_proxy_server final
+          }
+ 
+       tcp::acceptor m_acceptor;
+-      tcp::resolver::iterator m_server_endpoints;
++      tcp::resolver::results_type m_server_endpoints;
+ 
+       Botan::Credentials_Manager& m_creds;
+       Botan::TLS::Policy& m_policy;
+@@ -479,10 +483,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::unique_ptr<Botan::TLS::Session_Manager> session_mgr;
+ 
+diff --git a/src/lib/utils/socket/socket.cpp b/src/lib/utils/socket/socket.cpp
+index bc632259a64..0ce4e85830f 100644
+--- a/src/lib/utils/socket/socket.cpp
++++ b/src/lib/utils/socket/socket.cpp
+@@ -48,19 +48,17 @@ class Asio_Socket final : public OS::Socket
+                   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(hostname, service);
+-         boost::asio::ip::tcp::resolver::iterator dns_iter = resolver.resolve(query);
++         boost::asio::ip::tcp::resolver::results_type endpoints = resolver.resolve(hostname, 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::iterator) { ec = e; };
+-
+-         boost::asio::async_connect(m_tcp, dns_iter, connect_cb);
++                                 const boost::asio::ip::tcp::resolver::results_type::iterator&) { ec = e; };
++         boost::asio::async_connect(m_tcp, endpoints.begin(), endpoints.end(), connect_cb);
+ 
+          while(ec == boost::asio::error::would_block)
+             {
+@@ -75,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;
+ 
+@@ -92,7 +90,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;
+@@ -115,7 +113,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;
+             m_tcp.close(err);
+@@ -125,7 +123,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;
+    };
+diff --git a/src/lib/utils/socket/socket_udp.cpp b/src/lib/utils/socket/socket_udp.cpp
+index fbbdd9abbcc..82a25b49cda 100644
+--- a/src/lib/utils/socket/socket_udp.cpp
++++ b/src/lib/utils/socket/socket_udp.cpp
+@@ -48,19 +48,17 @@ class Asio_SocketUDP final : public OS::SocketUDP
+                      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(hostname, service);
+-         boost::asio::ip::udp::resolver::iterator dns_iter = resolver.resolve(query);
++         boost::asio::ip::udp::resolver::results_type endpoints = resolver.resolve(hostname, 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::iterator) { ec = e; };
+-
+-         boost::asio::async_connect(m_udp, dns_iter, connect_cb);
++                                 const boost::asio::ip::udp::resolver::results_type::iterator&) { ec = e; };
++         boost::asio::async_connect(m_udp, endpoints.begin(), endpoints.end(), connect_cb);
+ 
+          while(ec == boost::asio::error::would_block)
+             {
+@@ -75,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;
+ 
+@@ -95,7 +93,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;
+@@ -121,7 +119,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;
+             m_udp.close(err);
+@@ -131,7 +129,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;
+    };
+

diff --git a/dev-libs/botan/files/botan-2.19.5-cloudflare.patch b/dev-libs/botan/files/botan-2.19.5-cloudflare.patch
new file mode 100644
index 000000000000..0824fd9a1089
--- /dev/null
+++ b/dev-libs/botan/files/botan-2.19.5-cloudflare.patch
@@ -0,0 +1,52 @@
+https://github.com/randombit/botan/commit/698c383b050591ae1a239c9e6d4ebe05532d2eee
+
+From 698c383b050591ae1a239c9e6d4ebe05532d2eee Mon Sep 17 00:00:00 2001
+From: Luke Valenta <lvalenta@cloudflare.com>
+Date: Thu, 11 Apr 2024 14:24:36 -0400
+Subject: [PATCH] Backport: Update roughtime.cloudflare.com public key and port
+
+See also #4002.
+
+Fixes #3937. Note that the old Cloudflare public key is still present in
+test vectors in the codebase.
+---
+ src/cli/roughtime.cpp        | 2 +-
+ src/tests/test_roughtime.cpp | 4 ++--
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/cli/roughtime.cpp b/src/cli/roughtime.cpp
+index ff38fe1c43c..6c1561efacd 100644
+--- a/src/cli/roughtime.cpp
++++ b/src/cli/roughtime.cpp
+@@ -72,7 +72,7 @@ class Roughtime final : public Command
+       <name> <key type> <base 64 encoded public key> <protocol> <host:port>
+ 
+    Example servers:
+-      Cloudflare-Roughtime ed25519 gD63hSj3ScS+wuOeGrubXlq35N1c5Lby/S+T7MNTjxo= udp roughtime.cloudflare.com:2002
++      Cloudflare-Roughtime ed25519 0GD7c3yP8xEc4Zl2zeuN2SlLvDVVocjsPSL8/Rl/7zg= udp roughtime.cloudflare.com:2003
+       Google-Sandbox-Roughtime ed25519 etPaaIxcBMY1oUeGpwvPMCJMwlRVNxv51KK/tktoJTQ= udp roughtime.sandbox.google.com:2002
+ 
+ --chain-file=<filename>
+diff --git a/src/tests/test_roughtime.cpp b/src/tests/test_roughtime.cpp
+index 48ac545876b..4b29837e9b6 100644
+--- a/src/tests/test_roughtime.cpp
++++ b/src/tests/test_roughtime.cpp
+@@ -191,7 +191,7 @@ class Roughtime final : public Test
+ 
+          const auto servers = Botan::Roughtime::servers_from_str(
+                                  "Chainpoint-Roughtime ed25519 bbT+RPS7zKX6w71ssPibzmwWqU9ffRV5oj2OresSmhE= udp roughtime.chainpoint.org:2002\n"
+-                                 "Cloudflare-Roughtime ed25519 gD63hSj3ScS+wuOeGrubXlq35N1c5Lby/S+T7MNTjxo= udp roughtime.cloudflare.com:2002\n"
++                                 "Cloudflare-Roughtime ed25519 0GD7c3yP8xEc4Zl2zeuN2SlLvDVVocjsPSL8/Rl/7zg= udp roughtime.cloudflare.com:2003\n"
+                                  "Google-Sandbox-Roughtime ed25519 etPaaIxcBMY1oUeGpwvPMCJMwlRVNxv51KK/tktoJTQ= udp roughtime.sandbox.google.com:2002\n"
+                                  "int08h-Roughtime ed25519 AW5uAoTSTDfG5NfY1bTh08GUnOqlRb+HVhbJ3ODJvsE= udp roughtime.int08h.com:2002\n"
+                                  "ticktock ed25519 cj8GsiNlRkqiDElAeNMSBBMwrAl15hYPgX50+GWX/lA= udp ticktock.mixmin.net:5333\n"
+@@ -224,7 +224,7 @@ class Roughtime final : public Test
+          Botan::Roughtime::Nonce nonce(Test::rng());
+          try
+             {
+-            const auto response_raw = Botan::Roughtime::online_request("roughtime.cloudflare.com:2002", nonce,
++            const auto response_raw = Botan::Roughtime::online_request("roughtime.cloudflare.com:2003", nonce,
+                                       std::chrono::seconds(5));
+             const auto now = std::chrono::system_clock::now();
+             const auto response = Botan::Roughtime::Response::from_bits(response_raw, nonce);
+

diff --git a/dev-libs/botan/files/botan-2.19.5-no-distutils.patch b/dev-libs/botan/files/botan-2.19.5-no-distutils.patch
new file mode 100644
index 000000000000..bc6631fb7cc6
--- /dev/null
+++ b/dev-libs/botan/files/botan-2.19.5-no-distutils.patch
@@ -0,0 +1,86 @@
+https://github.com/randombit/botan/commit/0fed26215b52a3d30122deb528f6b4deb824eae7
+
+From 0fed26215b52a3d30122deb528f6b4deb824eae7 Mon Sep 17 00:00:00 2001
+From: Jack Lloyd <jack@randombit.net>
+Date: Fri, 6 Sep 2024 11:56:01 -0400
+Subject: [PATCH] Remove code relying on Python distutils
+
+This was just used to check if Sphinx supports concurrency, but
+Sphinx is also barely faster with 1 core vs 32, so it hardly matters.
+
+Debian bug 1080557
+---
+ src/scripts/build_docs.py | 45 ---------------------------------------
+ 1 file changed, 45 deletions(-)
+
+diff --git a/src/scripts/build_docs.py b/src/scripts/build_docs.py
+index 6eb9b656c98..5bd04acb13b 100755
+--- a/src/scripts/build_docs.py
++++ b/src/scripts/build_docs.py
+@@ -18,18 +18,6 @@
+ import os
+ import stat
+ 
+-def get_concurrency():
+-    """
+-    Get default concurrency level of build
+-    """
+-    def_concurrency = 2
+-
+-    try:
+-        import multiprocessing
+-        return max(def_concurrency, multiprocessing.cpu_count())
+-    except ImportError:
+-        return def_concurrency
+-
+ def have_prog(prog):
+     """
+     Check if some named program exists in the path
+@@ -124,37 +112,6 @@ def log_level():
+ 
+     return options
+ 
+-def sphinx_supports_concurrency():
+-    import re
+-    from distutils.version import StrictVersion
+-
+-    proc = subprocess.Popen(['sphinx-build', '--version'],
+-                            stdout=subprocess.PIPE,
+-                            stderr=subprocess.STDOUT)
+-    output, _ = proc.communicate()
+-    if isinstance(output, bytes):
+-        output = output.decode('ascii')
+-    output = output.strip()
+-
+-    # Sphinx v1.1.3
+-    # sphinx-build 1.7.4
+-    match = re.match(r'^(?:[a-zA-Z_-]+) v?(([0-9]+)\.([0-9]+))', output)
+-
+-    if match is None:
+-        # If regex doesn't match, disable by default
+-        logging.warning("Did not recognize sphinx version from '%s'", output)
+-        return False
+-
+-    version = StrictVersion(match.group(1))
+-
+-    if version < StrictVersion('1.4'):
+-        # not supported
+-        return False
+-    if version == StrictVersion('3.0'):
+-        # Bug in Sphinx 3.0 https://github.com/sphinx-doc/sphinx/issues/7438
+-        return False
+-    return True
+-
+ def read_config(config):
+     try:
+         f = open(config)
+@@ -203,8 +160,6 @@ def main(args=None):
+ 
+     if with_sphinx:
+         sphinx_build = ['sphinx-build', '-q', '-c', cfg['sphinx_config_dir']]
+-        if sphinx_supports_concurrency():
+-            sphinx_build += ['-j', str(get_concurrency())]
+ 
+         cmds.append(sphinx_build + ['-b', 'html', handbook_src, handbook_output])
+ 
+


^ permalink raw reply related	[flat|nested] 14+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/botan/, dev-libs/botan/files/
@ 2024-12-23  2:48 Sam James
  0 siblings, 0 replies; 14+ messages in thread
From: Sam James @ 2024-12-23  2:48 UTC (permalink / raw
  To: gentoo-commits

commit:     06541a13d6e2afd33d978ca1e9841de63ad41072
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Dec 23 02:47:31 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Dec 23 02:47:31 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=06541a13

dev-libs/botan: fix tests w/ -D_GLIBCXX_ASSERTIONS

Test-only fix.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-libs/botan/botan-3.6.1.ebuild                  |  3 +-
 .../botan-3.6.1-tests-glibcxx_assertions.patch     | 40 ++++++++++++++++++++++
 2 files changed, 42 insertions(+), 1 deletion(-)

diff --git a/dev-libs/botan/botan-3.6.1.ebuild b/dev-libs/botan/botan-3.6.1.ebuild
index a74ebb175427..e47afaa7b00d 100644
--- a/dev-libs/botan/botan-3.6.1.ebuild
+++ b/dev-libs/botan/botan-3.6.1.ebuild
@@ -56,7 +56,8 @@ BDEPEND="
 # https://botan.randombit.net/handbook/packaging.html#minimize-distribution-patches
 
 PATCHES=(
-	"${FILESDIR}"/${PN}-3.6.1-boost-1.87.patch
+	"${FILESDIR}"/${P}-boost-1.87.patch
+	"${FILESDIR}"/${P}-tests-glibcxx_assertions.patch
 )
 
 python_check_deps() {

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
new file mode 100644
index 000000000000..204adbc15825
--- /dev/null
+++ b/dev-libs/botan/files/botan-3.6.1-tests-glibcxx_assertions.patch
@@ -0,0 +1,40 @@
+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);
+ 
+


^ permalink raw reply related	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2024-12-23  2:48 UTC | newest]

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox