diff options
author | Sam James <sam@gentoo.org> | 2023-09-01 15:00:13 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2023-09-01 15:04:53 +0100 |
commit | a3a11cfe962d506e6e6e5c96cdab2376c8167110 (patch) | |
tree | 27c65dad9a84f61a5e45ba48025ac9597d12f1c1 /sys-apps/coreutils | |
parent | www-client/opera: remove old (diff) | |
download | gentoo-a3a11cfe962d506e6e6e5c96cdab2376c8167110.tar.gz gentoo-a3a11cfe962d506e6e6e5c96cdab2376c8167110.tar.bz2 gentoo-a3a11cfe962d506e6e6e5c96cdab2376c8167110.zip |
sys-apps/coreutils: fix build w/ <openssl-3
Closes: https://bugs.gentoo.org/913368
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sys-apps/coreutils')
-rw-r--r-- | sys-apps/coreutils/coreutils-9.4.ebuild | 1 | ||||
-rw-r--r-- | sys-apps/coreutils/files/coreutils-9.4-gnulib-openssl-1.1.patch | 165 |
2 files changed, 166 insertions, 0 deletions
diff --git a/sys-apps/coreutils/coreutils-9.4.ebuild b/sys-apps/coreutils/coreutils-9.4.ebuild index 1eeb24a0282e..65deec47eb27 100644 --- a/sys-apps/coreutils/coreutils-9.4.ebuild +++ b/sys-apps/coreutils/coreutils-9.4.ebuild @@ -111,6 +111,7 @@ src_prepare() { # TODO: past 2025, we may need to add our own hack for bug #907474. local PATCHES=( # Upstream patches + "${FILESDIR}"/${P}-gnulib-openssl-1.1.patch ) if ! use vanilla && [[ -d "${WORKDIR}"/${MY_PATCH} ]] ; then diff --git a/sys-apps/coreutils/files/coreutils-9.4-gnulib-openssl-1.1.patch b/sys-apps/coreutils/files/coreutils-9.4-gnulib-openssl-1.1.patch new file mode 100644 index 000000000000..3576c7d0d1eb --- /dev/null +++ b/sys-apps/coreutils/files/coreutils-9.4-gnulib-openssl-1.1.patch @@ -0,0 +1,165 @@ +https://bugs.gentoo.org/913368 +https://debbugs.gnu.org/65674 +https://git.savannah.gnu.org/cgit/gnulib.git/commit/?id=ce20e238f0b4448a098bd7c076c131edbc759764 + +From ce20e238f0b4448a098bd7c076c131edbc759764 Mon Sep 17 00:00:00 2001 +From: Bruno Haible <bruno@clisp.org> +Date: Fri, 1 Sep 2023 12:55:30 +0200 +Subject: crypto/{sha*,md5,sm3}-buffer: Fix --with-openssl (regr. 2023-08-26). + +Reported by Agostino Sarubbo via Sam James <sam@gentoo.org> in +<https://lists.gnu.org/archive/html/bug-gnulib/2023-09/msg00000.html>. + +* lib/sha1.h: Test the OpenSSL major version before attempting to +include <openssl/configuration.h>. +* lib/sha256.h: Likewise. +* lib/sha512.h: Likewise. +* lib/md5.h: Likewise. +* lib/sm3.h: Likewise. +--- a/lib/md5.h ++++ b/lib/md5.h +@@ -33,14 +33,18 @@ + # define OPENSSL_API_COMPAT 0x10101000L /* FIXME: Use OpenSSL 1.1+ API. */ + # endif + /* If <openssl/macros.h> would give a compile-time error, don't use OpenSSL. */ +-# include <openssl/configuration.h> +-# if (OPENSSL_CONFIGURED_API \ +- < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \ +- ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \ +- + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \ +- + ((OPENSSL_API_COMPAT >> 12) & 0xFF))) +-# undef HAVE_OPENSSL_MD5 +-# else ++# include <openssl/opensslv.h> ++# if OPENSSL_VERSION_MAJOR >= 3 ++# include <openssl/configuration.h> ++# if (OPENSSL_CONFIGURED_API \ ++ < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \ ++ ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \ ++ + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \ ++ + ((OPENSSL_API_COMPAT >> 12) & 0xFF))) ++# undef HAVE_OPENSSL_MD5 ++# endif ++# endif ++# if HAVE_OPENSSL_MD5 + # include <openssl/md5.h> + # endif + # endif +--- a/lib/sha1.h ++++ b/lib/sha1.h +@@ -32,14 +32,18 @@ + # define OPENSSL_API_COMPAT 0x10101000L /* FIXME: Use OpenSSL 1.1+ API. */ + # endif + /* If <openssl/macros.h> would give a compile-time error, don't use OpenSSL. */ +-# include <openssl/configuration.h> +-# if (OPENSSL_CONFIGURED_API \ +- < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \ +- ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \ +- + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \ +- + ((OPENSSL_API_COMPAT >> 12) & 0xFF))) +-# undef HAVE_OPENSSL_SHA1 +-# else ++# include <openssl/opensslv.h> ++# if OPENSSL_VERSION_MAJOR >= 3 ++# include <openssl/configuration.h> ++# if (OPENSSL_CONFIGURED_API \ ++ < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \ ++ ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \ ++ + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \ ++ + ((OPENSSL_API_COMPAT >> 12) & 0xFF))) ++# undef HAVE_OPENSSL_SHA1 ++# endif ++# endif ++# if HAVE_OPENSSL_SHA1 + # include <openssl/sha.h> + # endif + # endif +--- a/lib/sha256.h ++++ b/lib/sha256.h +@@ -31,14 +31,18 @@ + # define OPENSSL_API_COMPAT 0x10101000L /* FIXME: Use OpenSSL 1.1+ API. */ + # endif + /* If <openssl/macros.h> would give a compile-time error, don't use OpenSSL. */ +-# include <openssl/configuration.h> +-# if (OPENSSL_CONFIGURED_API \ +- < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \ +- ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \ +- + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \ +- + ((OPENSSL_API_COMPAT >> 12) & 0xFF))) +-# undef HAVE_OPENSSL_SHA256 +-# else ++# include <openssl/opensslv.h> ++# if OPENSSL_VERSION_MAJOR >= 3 ++# include <openssl/configuration.h> ++# if (OPENSSL_CONFIGURED_API \ ++ < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \ ++ ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \ ++ + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \ ++ + ((OPENSSL_API_COMPAT >> 12) & 0xFF))) ++# undef HAVE_OPENSSL_SHA256 ++# endif ++# endif ++# if HAVE_OPENSSL_SHA256 + # include <openssl/sha.h> + # endif + # endif +--- a/lib/sha512.h ++++ b/lib/sha512.h +@@ -31,14 +31,18 @@ + # define OPENSSL_API_COMPAT 0x10101000L /* FIXME: Use OpenSSL 1.1+ API. */ + # endif + /* If <openssl/macros.h> would give a compile-time error, don't use OpenSSL. */ +-# include <openssl/configuration.h> +-# if (OPENSSL_CONFIGURED_API \ +- < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \ +- ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \ +- + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \ +- + ((OPENSSL_API_COMPAT >> 12) & 0xFF))) +-# undef HAVE_OPENSSL_SHA512 +-# else ++# include <openssl/opensslv.h> ++# if OPENSSL_VERSION_MAJOR >= 3 ++# include <openssl/configuration.h> ++# if (OPENSSL_CONFIGURED_API \ ++ < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \ ++ ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \ ++ + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \ ++ + ((OPENSSL_API_COMPAT >> 12) & 0xFF))) ++# undef HAVE_OPENSSL_SHA512 ++# endif ++# endif ++# if HAVE_OPENSSL_SHA512 + # include <openssl/sha.h> + # endif + # endif +--- a/lib/sm3.h ++++ b/lib/sm3.h +@@ -40,14 +40,18 @@ + # define OPENSSL_API_COMPAT 0x10101000L /* FIXME: Use OpenSSL 1.1+ API. */ + # endif + /* If <openssl/macros.h> would give a compile-time error, don't use OpenSSL. */ +-# include <openssl/configuration.h> +-# if (OPENSSL_CONFIGURED_API \ +- < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \ +- ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \ +- + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \ +- + ((OPENSSL_API_COMPAT >> 12) & 0xFF))) +-# undef HAVE_OPENSSL_SM3 +-# else ++# include <openssl/opensslv.h> ++# if OPENSSL_VERSION_MAJOR >= 3 ++# include <openssl/configuration.h> ++# if (OPENSSL_CONFIGURED_API \ ++ < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \ ++ ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \ ++ + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \ ++ + ((OPENSSL_API_COMPAT >> 12) & 0xFF))) ++# undef HAVE_OPENSSL_SM3 ++# endif ++# endif ++# if HAVE_OPENSSL_SM3 + # include <openssl/sm3.h> + # endif + # endif +-- +cgit v1.1 |