diff mbox series

openssl: Inherit riscv32 config from latomic config on linux

Message ID 20231023202424.647618-1-raj.khem@gmail.com
State Accepted, archived
Commit 2e923a5a67e51463dcf938079c4a199873ccba85
Headers show
Series openssl: Inherit riscv32 config from latomic config on linux | expand

Commit Message

Khem Raj Oct. 23, 2023, 8:24 p.m. UTC
We still need this option for riscv32, the patch is also submitted
upstream

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../0001-Link-libatomic-on-riscv32.patch      | 35 +++++++++++++++++++
 .../openssl/openssl_3.1.3.bb                  |  1 +
 2 files changed, 36 insertions(+)
 create mode 100644 meta/recipes-connectivity/openssl/openssl/0001-Link-libatomic-on-riscv32.patch
diff mbox series

Patch

diff --git a/meta/recipes-connectivity/openssl/openssl/0001-Link-libatomic-on-riscv32.patch b/meta/recipes-connectivity/openssl/openssl/0001-Link-libatomic-on-riscv32.patch
new file mode 100644
index 00000000000..2c54d8f685a
--- /dev/null
+++ b/meta/recipes-connectivity/openssl/openssl/0001-Link-libatomic-on-riscv32.patch
@@ -0,0 +1,35 @@ 
+From 73266b8573c71e6720453c4c5a9e6e8fa4daec65 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 21 Oct 2023 13:03:52 -0700
+Subject: [PATCH] Link libatomic on riscv32
+
+GCC toolchains on linux are not able to build libcrypto without linking
+to libatomic as it does not have all needed atomics implemented as
+intrinsics
+
+Fixes errors like
+
+| ld: ./libcrypto.so: undefined reference to `__atomic_is_lock_free'
+
+Upstream-Status: Submitted [https://github.com/openssl/openssl/pull/22460]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Configurations/10-main.conf | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Configurations/10-main.conf b/Configurations/10-main.conf
+index 46094f59c2..d1a15a1152 100644
+--- a/Configurations/10-main.conf
++++ b/Configurations/10-main.conf
+@@ -816,7 +816,7 @@ my %targets = (
+     },
+ 
+     "linux32-riscv32" => {
+-        inherit_from     => [ "linux-generic32"],
++        inherit_from     => [ "linux-latomic" ],
+         perlasm_scheme   => "linux32",
+         asm_arch         => 'riscv32',
+     },
+-- 
+2.42.0
+
diff --git a/meta/recipes-connectivity/openssl/openssl_3.1.3.bb b/meta/recipes-connectivity/openssl/openssl_3.1.3.bb
index 5432d9dd8c2..e1cbfc2c5b3 100644
--- a/meta/recipes-connectivity/openssl/openssl_3.1.3.bb
+++ b/meta/recipes-connectivity/openssl/openssl_3.1.3.bb
@@ -12,6 +12,7 @@  SRC_URI = "http://www.openssl.org/source/openssl-${PV}.tar.gz \
            file://0001-buildinfo-strip-sysroot-and-debug-prefix-map-from-co.patch \
            file://0001-Configure-do-not-tweak-mips-cflags.patch \
            file://fix_random_labels.patch \
+           file://0001-Link-libatomic-on-riscv32.patch \
            "
 
 SRC_URI:append:class-nativesdk = " \