minifi-cpp: upgrade libsodium 1.0.19 -> 1.0.20

Upgrade libsodium from 1.0.19 to 1.0.20 for minifi-cpp third party
dependency.

Updated below patch for upgrading:
0003-Fix-libsodium-build.patch

Removed below patch because it is in the new version:
0007-libsodium-aarch64-set-compiler-attributes-after-including-arm_.patcha

Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
This commit is contained in:
Li Zhou 2026-06-16 10:58:16 +08:00 committed by Khem Raj
parent 514fcc6c3c
commit 94db047dfc
No known key found for this signature in database
GPG Key ID: BB053355919D3314
3 changed files with 13 additions and 155 deletions

View File

@ -1,4 +1,4 @@
From d48ababf341708885ecf687ebc46bb1d84ca868d Mon Sep 17 00:00:00 2001
From a4e49b4b5b11e7246d0e06da583ba8fdb9ed40d8 Mon Sep 17 00:00:00 2001
From: Yi Zhao <yi.zhao@windriver.com>
Date: Tue, 19 Mar 2024 20:56:05 +0800
Subject: [PATCH] Fix libsodium build
@ -9,18 +9,18 @@ Subject: [PATCH] Fix libsodium build
Upstream-Status: Inappropriate [embedded specific]
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
[lz: Adapted the patch for context changes when upgrading
from 0.99.1 to 0.99.2.]
Signed-off-by: Li Zhou <li.zhou@windriver.com>
[Adapted the patch when upgrading minifi-cpp from 0.99.1 to 0.99.2
and libsodium from 1.0.19 to 1.0.20.]
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
---
cmake/BundledLibSodium.cmake | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
cmake/BundledLibSodium.cmake | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/cmake/BundledLibSodium.cmake b/cmake/BundledLibSodium.cmake
index 001a90dad..87a3244fd 100644
index 001a90dad..73b712512 100644
--- a/cmake/BundledLibSodium.cmake
+++ b/cmake/BundledLibSodium.cmake
@@ -60,14 +60,12 @@ function(use_bundled_libsodium SOURCE_DIR BINARY_DIR)
@@ -60,14 +60,14 @@ function(use_bundled_libsodium SOURCE_DIR BINARY_DIR)
TLS_VERIFY TRUE
)
else()
@ -29,8 +29,8 @@ index 001a90dad..87a3244fd 100644
ExternalProject_Add(
libsodium-external
- URL "${LIBSODIUM_OFFICIAL_MIRROR_URL}" "${LIBSODIUM_GITHUB_MIRROR_URL}" "${LIBSODIUM_GENTOO_MIRROR_URL}"
- URL_HASH ${LIBSODIUM_URL_HASH}
URL "${LIBSODIUM_OFFICIAL_MIRROR_URL}" "${LIBSODIUM_GITHUB_MIRROR_URL}" "${LIBSODIUM_GENTOO_MIRROR_URL}"
URL_HASH ${LIBSODIUM_URL_HASH}
BUILD_IN_SOURCE true
- SOURCE_DIR "${BINARY_DIR}/thirdparty/libsodium-src"
+ SOURCE_DIR "${SOURCE_DIR}/thirdparty/libsodium-stable"

View File

@ -1,141 +0,0 @@
From 3a59f8e5331bb6be5d298bc5c136a79102196c1d Mon Sep 17 00:00:00 2001
From: Frank Denis <github@pureftpd.org>
Date: Fri, 20 Oct 2023 13:47:57 +0200
Subject: [PATCH] aarch64: set compiler attributes *after* including
<arm_neon.h>
Fixes #1321
Upstream-Status: Backport
[https://github.com/jedisct1/libsodium/commit/8f453f41f8834e0fe47610f2a3e03e696ddb3450]
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
---
thirdparty/libsodium-stable/configure.ac | 11 ++++++-----
.../crypto_aead/aegis128l/aegis128l_armcrypto.c | 12 ++++++------
.../crypto_aead/aegis256/aegis256_armcrypto.c | 12 ++++++------
.../aes256gcm/armcrypto/aead_aes256gcm_armcrypto.c | 12 ++++++------
4 files changed, 24 insertions(+), 23 deletions(-)
diff --git a/thirdparty/libsodium-stable/configure.ac b/thirdparty/libsodium-stable/configure.ac
index df83ef512..be67d3417 100644
--- a/thirdparty/libsodium-stable/configure.ac
+++ b/thirdparty/libsodium-stable/configure.ac
@@ -398,11 +398,6 @@ AS_IF([test "x$EMSCRIPTEN" = "x"], [
have_armcrypto=no
AC_MSG_CHECKING(for ARM crypto instructions set)
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
- #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
@@ -411,6 +406,12 @@ AS_IF([test "x$EMSCRIPTEN" = "x"], [
#endif
#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
]], [[
vaeseq_u8(vmovq_n_u8(0), vmovq_n_u8(0));
diff --git a/thirdparty/libsodium-stable/src/libsodium/crypto_aead/aegis128l/aegis128l_armcrypto.c b/thirdparty/libsodium-stable/src/libsodium/crypto_aead/aegis128l/aegis128l_armcrypto.c
index 825de8a1c..a01f60cbe 100644
--- a/thirdparty/libsodium-stable/src/libsodium/crypto_aead/aegis128l/aegis128l_armcrypto.c
+++ b/thirdparty/libsodium-stable/src/libsodium/crypto_aead/aegis128l/aegis128l_armcrypto.c
@@ -17,12 +17,6 @@
#include "aegis128l_armcrypto.h"
-#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
@@ -32,6 +26,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 AES_BLOCK_LENGTH 16
typedef uint8x16_t aes_block_t;
diff --git a/thirdparty/libsodium-stable/src/libsodium/crypto_aead/aegis256/aegis256_armcrypto.c b/thirdparty/libsodium-stable/src/libsodium/crypto_aead/aegis256/aegis256_armcrypto.c
index e1ebd577a..058e2072b 100644
--- a/thirdparty/libsodium-stable/src/libsodium/crypto_aead/aegis256/aegis256_armcrypto.c
+++ b/thirdparty/libsodium-stable/src/libsodium/crypto_aead/aegis256/aegis256_armcrypto.c
@@ -17,12 +17,6 @@
#include "aegis256_armcrypto.h"
-#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
@@ -32,6 +26,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 AES_BLOCK_LENGTH 16
typedef uint8x16_t aes_block_t;
diff --git a/thirdparty/libsodium-stable/src/libsodium/crypto_aead/aes256gcm/armcrypto/aead_aes256gcm_armcrypto.c b/thirdparty/libsodium-stable/src/libsodium/crypto_aead/aes256gcm/armcrypto/aead_aes256gcm_armcrypto.c
index 0a5a12811..aa76f5cd1 100644
--- a/thirdparty/libsodium-stable/src/libsodium/crypto_aead/aes256gcm/armcrypto/aead_aes256gcm_armcrypto.c
+++ b/thirdparty/libsodium-stable/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.34.1

View File

@ -19,14 +19,13 @@ SRC_URI = "git://github.com/apache/nifi-minifi-cpp.git;protocol=https;branch=mai
git://github.com/gabime/spdlog.git;protocol=https;branch=v1.x;tag=v1.15.3;name=spdlog;destsuffix=${S}/thirdparty/spdlog-src \
git://github.com/danielaparker/jsoncons.git;protocol=https;branch=master;name=jsoncons;destsuffix=${S}/thirdparty/jsoncons-src \
${DEBIAN_MIRROR}/main/o/ossp-uuid/ossp-uuid_1.6.2.orig.tar.gz;name=ossp-uuid;subdir=${S}/thirdparty \
https://download.libsodium.org/libsodium/releases/libsodium-1.0.19.tar.gz;name=libsodium;subdir=${S}/thirdparty \
https://download.libsodium.org/libsodium/releases/libsodium-1.0.20.tar.gz;name=libsodium;subdir=${S}/thirdparty \
file://0001-Do-not-use-bundled-packages.patch \
file://0002-Fix-osspuuid-build.patch \
file://0003-Fix-libsodium-build.patch \
file://0004-Pass-noline-flag-to-flex.patch \
file://0005-generateVersion.sh-set-correct-buildrev.patch \
file://0006-CMakeLists.txt-do-not-use-ccache.patch \
file://0007-libsodium-aarch64-set-compiler-attributes-after-including-arm_.patch \
file://0001-Add-missing-include-for-malloc-free.patch;patchdir=thirdparty/fmt-src \
file://0001-generateVersion.sh-set-BUILD_DATE-to-SOURCE_DATE_EPO.patch \
file://0001-Fix-build-with-gcc-16.patch \
@ -61,8 +60,8 @@ SRCREV_FORMAT .= "_expected-lite_range-v3_magic-enum_argparse_gsl-lite_date_asio
# ossp-uuid: 1.6.2
SRC_URI[ossp-uuid.sha256sum] = "11a615225baa5f8bb686824423f50e4427acd3f70d394765bdff32801f0fd5b0"
# libsodium: 1.0.19
SRC_URI[libsodium.sha256sum] = "018d79fe0a045cca07331d37bd0cb57b2e838c51bc48fd837a1472e50068bbea"
# libsodium: 1.0.20
SRC_URI[libsodium.sha256sum] = "ebb65ef6ca439333c2bb41a0c1990587288da07f6c7fd07cb3a18cc18d30ce19"
inherit pkgconfig cmake systemd