diff options
author | Khem Raj <raj.khem@gmail.com> | 2023-11-05 21:14:47 -0800 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2023-11-06 08:49:52 -0800 |
commit | fe8ee3c8d608ecd6973b8f624836ebf49c1a9d80 (patch) | |
tree | ea461d68d756014738c000a0dec7eaf078d6b1fd /meta-oe | |
parent | 294b2e9ae951e22ffe8ac5d7c8b5e2114db17b03 (diff) | |
download | meta-openembedded-fe8ee3c8d608ecd6973b8f624836ebf49c1a9d80.tar.gz |
libsodium: Fix build with clang on aarch64
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe')
-rw-r--r-- | meta-oe/recipes-crypto/libsodium/libsodium/0001-fix-aarch64-Move-target-pragma-after-arm_neon.h-incl.patch | 49 | ||||
-rw-r--r-- | meta-oe/recipes-crypto/libsodium/libsodium_1.0.19.bb | 3 |
2 files changed, 51 insertions, 1 deletions
diff --git a/meta-oe/recipes-crypto/libsodium/libsodium/0001-fix-aarch64-Move-target-pragma-after-arm_neon.h-incl.patch b/meta-oe/recipes-crypto/libsodium/libsodium/0001-fix-aarch64-Move-target-pragma-after-arm_neon.h-incl.patch new file mode 100644 index 0000000000..7a6fae7997 --- /dev/null +++ b/meta-oe/recipes-crypto/libsodium/libsodium/0001-fix-aarch64-Move-target-pragma-after-arm_neon.h-incl.patch | |||
@@ -0,0 +1,49 @@ | |||
1 | From d3253310f7c0fc0f1aad6864e3b57958ea1bb9c5 Mon Sep 17 00:00:00 2001 | ||
2 | From: tux3 <barrdetwix@gmail.com> | ||
3 | Date: Mon, 16 Oct 2023 16:42:04 +0200 | ||
4 | Subject: [PATCH] fix(aarch64): Move target #pragma after arm_neon.h include | ||
5 | |||
6 | Fix per https://github.com/android/ndk/issues/1945 | ||
7 | |||
8 | If the pragma is done before the header include, | ||
9 | in NDK 26 the attribute may apply to the functions in arm_neon.h | ||
10 | |||
11 | Upstream-Status: Backport [https://github.com/jedisct1/libsodium/pull/1321] | ||
12 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
13 | --- | ||
14 | .../aes256gcm/armcrypto/aead_aes256gcm_armcrypto.c | 12 ++++++------ | ||
15 | 1 file changed, 6 insertions(+), 6 deletions(-) | ||
16 | |||
17 | diff --git a/src/libsodium/crypto_aead/aes256gcm/armcrypto/aead_aes256gcm_armcrypto.c b/src/libsodium/crypto_aead/aes256gcm/armcrypto/aead_aes256gcm_armcrypto.c | ||
18 | index 0a5a128..aa76f5c 100644 | ||
19 | --- a/src/libsodium/crypto_aead/aes256gcm/armcrypto/aead_aes256gcm_armcrypto.c | ||
20 | +++ b/src/libsodium/crypto_aead/aes256gcm/armcrypto/aead_aes256gcm_armcrypto.c | ||
21 | @@ -19,12 +19,6 @@ | ||
22 | #define __vectorcall | ||
23 | #endif | ||
24 | |||
25 | -#ifdef __clang__ | ||
26 | -#pragma clang attribute push(__attribute__((target("neon,crypto,aes"))), apply_to = function) | ||
27 | -#elif defined(__GNUC__) | ||
28 | -#pragma GCC target("+simd+crypto") | ||
29 | -#endif | ||
30 | - | ||
31 | #ifndef __ARM_FEATURE_CRYPTO | ||
32 | #define __ARM_FEATURE_CRYPTO 1 | ||
33 | #endif | ||
34 | @@ -34,6 +28,12 @@ | ||
35 | |||
36 | #include <arm_neon.h> | ||
37 | |||
38 | +#ifdef __clang__ | ||
39 | +#pragma clang attribute push(__attribute__((target("neon,crypto,aes"))), apply_to = function) | ||
40 | +#elif defined(__GNUC__) | ||
41 | +#pragma GCC target("+simd+crypto") | ||
42 | +#endif | ||
43 | + | ||
44 | #define ABYTES crypto_aead_aes256gcm_ABYTES | ||
45 | #define NPUBBYTES crypto_aead_aes256gcm_NPUBBYTES | ||
46 | #define KEYBYTES crypto_aead_aes256gcm_KEYBYTES | ||
47 | -- | ||
48 | 2.42.1 | ||
49 | |||
diff --git a/meta-oe/recipes-crypto/libsodium/libsodium_1.0.19.bb b/meta-oe/recipes-crypto/libsodium/libsodium_1.0.19.bb index 824ac45c87..2e678f3f0f 100644 --- a/meta-oe/recipes-crypto/libsodium/libsodium_1.0.19.bb +++ b/meta-oe/recipes-crypto/libsodium/libsodium_1.0.19.bb | |||
@@ -4,7 +4,8 @@ BUGTRACKER = "https://github.com/jedisct1/libsodium/issues" | |||
4 | LICENSE = "ISC" | 4 | LICENSE = "ISC" |
5 | LIC_FILES_CHKSUM = "file://LICENSE;md5=49ce3b426e6a002e23a1387248e6dbe9" | 5 | LIC_FILES_CHKSUM = "file://LICENSE;md5=49ce3b426e6a002e23a1387248e6dbe9" |
6 | 6 | ||
7 | SRC_URI = "https://download.libsodium.org/libsodium/releases/${BPN}-${PV}.tar.gz" | 7 | SRC_URI = "https://download.libsodium.org/libsodium/releases/${BPN}-${PV}.tar.gz \ |
8 | file://0001-fix-aarch64-Move-target-pragma-after-arm_neon.h-incl.patch" | ||
8 | SRC_URI[sha256sum] = "018d79fe0a045cca07331d37bd0cb57b2e838c51bc48fd837a1472e50068bbea" | 9 | SRC_URI[sha256sum] = "018d79fe0a045cca07331d37bd0cb57b2e838c51bc48fd837a1472e50068bbea" |
9 | 10 | ||
10 | inherit autotools | 11 | inherit autotools |