From 3eb7e3258d4fd7584fae543d779d9fdea666e721 Mon Sep 17 00:00:00 2001 From: Sam James Date: Thu, 6 Jul 2023 03:07:48 +0100 Subject: 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 --- dev-libs/botan/botan-3.0.0-r2.ebuild | 3 + .../files/botan-3.0.0-getentropy-includes.patch | 68 ++++++++++++++++++++++ 2 files changed, 71 insertions(+) create mode 100644 dev-libs/botan/files/botan-3.0.0-getentropy-includes.patch (limited to 'dev-libs/botan') 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 + #else +- #include // older macOS needs this before sys/random.h + #include ++ #include // 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 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 +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 ++#include + +-#if defined(BOTAN_TARGET_OS_IS_OPENBSD) || defined(BOTAN_TARGET_OS_IS_FREEBSD) || defined(BOTAN_TARGET_OS_IS_SOLARIS) +- #include +-#else ++// macOS and Android include it in sys/random.h instead ++#if __has_include() + #include +- #include // 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 + -- cgit v1.2.3-65-gdbad