diff options
author | He Zhe <zhe.he@windriver.com> | 2022-07-12 15:47:57 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-07-12 23:56:06 +0100 |
commit | 13d2bf6a34f4182c5c8bdd280d1ffd4caac3844a (patch) | |
tree | 6cb3facdb16ab850d6fd0462a58cf24ddf223155 | |
parent | e169cce3615acf5adccedaa47411453775853d28 (diff) | |
download | openembedded-core-contrib-13d2bf6a34f4182c5c8bdd280d1ffd4caac3844a.tar.gz |
curl: Fix build failure for qemuriscv64
Backport a patch from upstream to fix the following build failure.
tmp-glibc/work/riscv64-wrs-linux/curl/7.84.0-r0/recipe-sysroot-native/
usr/bin/riscv64-wrs-linux/../../libexec/riscv64-wrs-linux/gcc/
riscv64-wrs-linux/12.1.0/ld: ../lib/.libs/libcurl.so:
undefined reference to `__atomic_exchange_1'
collect2: error: ld returned 1 exit status
Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/recipes-support/curl/curl_7.84.0.bb | 1 | ||||
-rw-r--r-- | meta/recipes-support/curl/files/0001-easy_lock-switch-to-using-atomic_int-instead-of-bool.patch | 37 |
2 files changed, 38 insertions, 0 deletions
diff --git a/meta/recipes-support/curl/curl_7.84.0.bb b/meta/recipes-support/curl/curl_7.84.0.bb index 0d829cdf23..28b09ef017 100644 --- a/meta/recipes-support/curl/curl_7.84.0.bb +++ b/meta/recipes-support/curl/curl_7.84.0.bb @@ -12,6 +12,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=190c514872597083303371684954f238" SRC_URI = " \ https://curl.se/download/${BP}.tar.xz \ file://0001-easy_lock.h-include-sched.h-if-available-to-fix-buil.patch \ + file://0001-easy_lock-switch-to-using-atomic_int-instead-of-bool.patch \ file://run-ptest \ file://disable-tests \ " diff --git a/meta/recipes-support/curl/files/0001-easy_lock-switch-to-using-atomic_int-instead-of-bool.patch b/meta/recipes-support/curl/files/0001-easy_lock-switch-to-using-atomic_int-instead-of-bool.patch new file mode 100644 index 0000000000..878839a5e3 --- /dev/null +++ b/meta/recipes-support/curl/files/0001-easy_lock-switch-to-using-atomic_int-instead-of-bool.patch @@ -0,0 +1,37 @@ +From 50efb0822aa0e0ab165158dd0a26e65a2290e6d2 Mon Sep 17 00:00:00 2001 +From: Daniel Stenberg <daniel@haxx.se> +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 + +Upstream-Status: Backport [50efb0822aa0e0ab165158dd0a26e65a2290e6d2] + +Signed-off-by: He Zhe <zhe.he@windriver.com> +--- + 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 07c85c5ff..9c11bc50c 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) + { +-- +2.25.1 + |