diff options
Diffstat (limited to 'meta-oe/recipes-crypto/libsodium')
3 files changed, 63 insertions, 13 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 @@ +From d3253310f7c0fc0f1aad6864e3b57958ea1bb9c5 Mon Sep 17 00:00:00 2001 +From: tux3 <barrdetwix@gmail.com> +Date: Mon, 16 Oct 2023 16:42:04 +0200 +Subject: [PATCH] fix(aarch64): Move target #pragma after arm_neon.h include + +Fix per https://github.com/android/ndk/issues/1945 + +If the pragma is done before the header include, +in NDK 26 the attribute may apply to the functions in arm_neon.h + +Upstream-Status: Backport [https://github.com/jedisct1/libsodium/pull/1321] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + .../aes256gcm/armcrypto/aead_aes256gcm_armcrypto.c | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/src/libsodium/crypto_aead/aes256gcm/armcrypto/aead_aes256gcm_armcrypto.c b/src/libsodium/crypto_aead/aes256gcm/armcrypto/aead_aes256gcm_armcrypto.c +index 0a5a128..aa76f5c 100644 +--- a/src/libsodium/crypto_aead/aes256gcm/armcrypto/aead_aes256gcm_armcrypto.c ++++ b/src/libsodium/crypto_aead/aes256gcm/armcrypto/aead_aes256gcm_armcrypto.c +@@ -19,12 +19,6 @@ + #define __vectorcall + #endif + +-#ifdef __clang__ +-#pragma clang attribute push(__attribute__((target("neon,crypto,aes"))), apply_to = function) +-#elif defined(__GNUC__) +-#pragma GCC target("+simd+crypto") +-#endif +- + #ifndef __ARM_FEATURE_CRYPTO + #define __ARM_FEATURE_CRYPTO 1 + #endif +@@ -34,6 +28,12 @@ + + #include <arm_neon.h> + ++#ifdef __clang__ ++#pragma clang attribute push(__attribute__((target("neon,crypto,aes"))), apply_to = function) ++#elif defined(__GNUC__) ++#pragma GCC target("+simd+crypto") ++#endif ++ + #define ABYTES crypto_aead_aes256gcm_ABYTES + #define NPUBBYTES crypto_aead_aes256gcm_NPUBBYTES + #define KEYBYTES crypto_aead_aes256gcm_KEYBYTES +-- +2.42.1 + diff --git a/meta-oe/recipes-crypto/libsodium/libsodium_1.0.18.bb b/meta-oe/recipes-crypto/libsodium/libsodium_1.0.18.bb deleted file mode 100644 index 53b3ddc26f..0000000000 --- a/meta-oe/recipes-crypto/libsodium/libsodium_1.0.18.bb +++ /dev/null @@ -1,13 +0,0 @@ -SUMMARY = "The Sodium crypto library" -HOMEPAGE = "http://libsodium.org/" -BUGTRACKER = "https://github.com/jedisct1/libsodium/issues" -LICENSE = "ISC" -LIC_FILES_CHKSUM = "file://LICENSE;md5=47203c753972e855179dfffe15188bee" - -SRC_URI = "https://download.libsodium.org/libsodium/releases/${BPN}-${PV}.tar.gz" -SRC_URI[md5sum] = "3ca9ebc13b6b4735acae0a6a4c4f9a95" -SRC_URI[sha256sum] = "6f504490b342a4f8a4c4a02fc9b866cbef8622d5df4e5452b46be121e46636c1" - -inherit autotools - -BBCLASSEXTEND = "native nativesdk" diff --git a/meta-oe/recipes-crypto/libsodium/libsodium_1.0.19.bb b/meta-oe/recipes-crypto/libsodium/libsodium_1.0.19.bb new file mode 100644 index 0000000000..2e678f3f0f --- /dev/null +++ b/meta-oe/recipes-crypto/libsodium/libsodium_1.0.19.bb @@ -0,0 +1,14 @@ +SUMMARY = "The Sodium crypto library" +HOMEPAGE = "http://libsodium.org/" +BUGTRACKER = "https://github.com/jedisct1/libsodium/issues" +LICENSE = "ISC" +LIC_FILES_CHKSUM = "file://LICENSE;md5=49ce3b426e6a002e23a1387248e6dbe9" + +SRC_URI = "https://download.libsodium.org/libsodium/releases/${BPN}-${PV}.tar.gz \ + file://0001-fix-aarch64-Move-target-pragma-after-arm_neon.h-incl.patch" +SRC_URI[sha256sum] = "018d79fe0a045cca07331d37bd0cb57b2e838c51bc48fd837a1472e50068bbea" + +inherit autotools + +S = "${WORKDIR}/libsodium-stable" +BBCLASSEXTEND = "native nativesdk" |