summaryrefslogtreecommitdiffstats
path: root/meta/recipes-connectivity
diff options
context:
space:
mode:
authorAlexey Brodkin <abrodkin@synopsys.com>2021-12-07 08:02:41 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-12-08 20:22:07 +0000
commitf48227a192022c604f8c2ea4fe973c6664861101 (patch)
tree66b0460833544155d37b856b8dbecf131aa8f13d /meta/recipes-connectivity
parent6add96e4af46eaabb6c70e3ce3a27a4b198d7cb6 (diff)
downloadopenembedded-core-contrib-f48227a192022c604f8c2ea4fe973c6664861101.tar.gz
openssl: Use linux-latomic target for ARC
Some atomic ops for 32-bit ARC processors are implemented in GCC's libatomic. For example those dealing with 64-bit data (e.g. __atomic_load_8()) as well as some others. That said it's required to add "-latomic" for successful linkage. Otherwise error messages like this happen on OpenSSL building for ARC: ------------------------------->8------------------------------ | ...ld: libcrypto.a(libcrypto-lib-threads_pthread.o): in function `CRYPTO_atomic_or': | .../openssl-3.0.0/crypto/threads_pthread.c:219: undefined reference to `__atomic_is_lock_free' | ...ld: .../openssl-3.0.0/crypto/threads_pthread.c:219: undefined reference to `__atomic_is_lock_free' | ...ld: .../openssl-3.0.0/crypto/threads_pthread.c:220: undefined reference to `__atomic_fetch_or_8' ------------------------------->8------------------------------ Fix that by using a special target, which does exactly what's needed. See [1] and [2] for more details on the matter. [1] https://github.com/openssl/openssl/commit/cdf2986a70d92668d882eb29737225f1aaafd0f1 [2] https://github.com/openssl/openssl/pull/15640 Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-connectivity')
-rw-r--r--meta/recipes-connectivity/openssl/openssl_3.0.0.bb3
1 files changed, 3 insertions, 0 deletions
diff --git a/meta/recipes-connectivity/openssl/openssl_3.0.0.bb b/meta/recipes-connectivity/openssl/openssl_3.0.0.bb
index 4b1ae71a85..da73ed6bc3 100644
--- a/meta/recipes-connectivity/openssl/openssl_3.0.0.bb
+++ b/meta/recipes-connectivity/openssl/openssl_3.0.0.bb
@@ -70,6 +70,9 @@ do_configure () {
esac
target="$os-${HOST_ARCH}"
case $target in
+ linux-arc)
+ target=linux-latomic
+ ;;
linux-arm*)
target=linux-armv4
;;