commit: 8bacde9ab38c268737a14ffa2c5c239c406d23d8
Author: Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 4 15:55:40 2022 +0000
Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Tue Nov 8 17:04:39 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8bacde9a
dev-libs/libgcrypt: add kernel version check for getentropy
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>
dev-libs/libgcrypt/libgcrypt-1.10.1-r2.ebuild | 23 ++++++++++++++++++++++-
1 file changed, 22 insertions(+), 1 deletion(-)
diff --git a/dev-libs/libgcrypt/libgcrypt-1.10.1-r2.ebuild
b/dev-libs/libgcrypt/libgcrypt-1.10.1-r2.ebuild
index 844c21219fb8..5614f817ecb3 100644
--- a/dev-libs/libgcrypt/libgcrypt-1.10.1-r2.ebuild
+++ b/dev-libs/libgcrypt/libgcrypt-1.10.1-r2.ebuild
@@ -4,7 +4,7 @@
EAPI=7
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/gnupg.asc
-inherit autotools flag-o-matic multilib-minimal toolchain-funcs verify-sig
+inherit autotools flag-o-matic linux-info multilib-minimal toolchain-funcs
verify-sig
DESCRIPTION="General purpose crypto library based on the code used in GnuPG"
HOMEPAGE="https://www.gnupg.org/"
@@ -52,6 +52,27 @@ MULTILIB_CHOST_TOOLS=(
/usr/bin/libgcrypt-config
)
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} == buildonly ]]; then
+ return
+ fi
+ if use kernel_linux && use getentropy; then
+ unset KV_FULL
+ get_running_version
+ if [[ -n ${KV_FULL} ]] && kernel_is -lt 3 17; then
+ eerror "The getentropy function requires the getrandom
syscall."
+ eerror "This was introduced in Linux 3.17."
+ eerror "Your system is currently running Linux
${KV_FULL}."
+ eerror "Disable the 'getentropy' USE flag or upgrade
your kernel."
+ die "Kernel is too old for getentropy"
+ fi
+ fi
+}
+
+pkg_setup() {
+ :
+}
+
src_prepare() {
default
eautoreconf