diff options
author | Sam James <sam@gentoo.org> | 2023-07-06 03:07:48 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2023-07-06 03:10:40 +0100 |
commit | 3eb7e3258d4fd7584fae543d779d9fdea666e721 (patch) | |
tree | 2604917ec1cbe74a74f0e7d4a99cd548ad5506b5 /dev-libs/botan | |
parent | dev-util/global: add 6.6.10 (diff) | |
download | gentoo-3eb7e3258d4fd7584fae543d779d9fdea666e721.tar.gz gentoo-3eb7e3258d4fd7584fae543d779d9fdea666e721.tar.bz2 gentoo-3eb7e3258d4fd7584fae543d779d9fdea666e721.zip |
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@gentoo.org>
Diffstat (limited to 'dev-libs/botan')
-rw-r--r-- | dev-libs/botan/botan-3.0.0-r2.ebuild | 3 | ||||
-rw-r--r-- | dev-libs/botan/files/botan-3.0.0-getentropy-includes.patch | 68 |
2 files changed, 71 insertions, 0 deletions
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 + |