commit: ad4a8aa185ee5c83bb775f398b93da9faf4431c6
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 3 02:34:00 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Jul 3 02:36:00 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ad4a8aa1
net-misc/curl: Add build fix for e.g. gcc-12/riscv
Patch comes from upstream master
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
net-misc/curl/curl-7.84.0.ebuild | 1 +
net-misc/curl/files/curl-7.84.0-easylock.patch | 30 ++++++++++++++++++++++++++
2 files changed, 31 insertions(+)
diff --git a/net-misc/curl/curl-7.84.0.ebuild b/net-misc/curl/curl-7.84.0.ebuild
index c55c9520aa81..645a223aed8f 100644
--- a/net-misc/curl/curl-7.84.0.ebuild
+++ b/net-misc/curl/curl-7.84.0.ebuild
@@ -95,6 +95,7 @@ MULTILIB_CHOST_TOOLS=(
PATCHES=(
"${FILESDIR}"/${PN}-7.30.0-prefix.patch
+ "${FILESDIR}"/${PN}-7.84.0-easylock.patch
"${FILESDIR}"/${PN}-respect-cflags-3.patch
"${FILESDIR}"/${PN}-7.84.0-include-sched.patch
)
diff --git a/net-misc/curl/files/curl-7.84.0-easylock.patch
b/net-misc/curl/files/curl-7.84.0-easylock.patch
new file mode 100644
index 000000000000..77ee610fc117
--- /dev/null
+++ b/net-misc/curl/files/curl-7.84.0-easylock.patch
@@ -0,0 +1,30 @@
+From 50efb0822aa0e0ab165158dd0a26e65a2290e6d2 Mon Sep 17 00:00:00 2001
+From: Daniel Stenberg <[email protected]>
+Date: Tue, 28 Jun 2022 09:00:25 +0200
+Subject: [PATCH] easy_lock: switch to using atomic_int instead of bool
+
+To work with more compilers without requiring separate libs to
+link. Like with gcc-12 for RISC-V on Linux.
+
+Reported-by: Adam Sampson
+Fixes #9055
+Closes #9061
+---
+ lib/easy_lock.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/lib/easy_lock.h b/lib/easy_lock.h
+index 07c85c5ffdd19..9c11bc50c5f20 100644
+--- a/lib/easy_lock.h
++++ b/lib/easy_lock.h
+@@ -40,8 +40,8 @@
+ #include <sched.h>
+ #endif
+
+-#define curl_simple_lock atomic_bool
+-#define CURL_SIMPLE_LOCK_INIT false
++#define curl_simple_lock atomic_int
++#define CURL_SIMPLE_LOCK_INIT 0
+
+ static inline void curl_simple_lock_lock(curl_simple_lock *lock)
+ {