mirror of
git://git.yoctoproject.org/meta-intel.git
synced 2025-07-19 12:59:03 +02:00
intel-crypto-mb: upgrade 2021.3 -> 2021.5
Intel IPP Cryptography uses multiple implementations of each function, optimized for various CPUs, and the library version targeted for any CPU contains all of these implementations. With the dispatcher, the library detects an available CPU in a runtime and chooses the best for the current hardware version of a function, hence ignore Yocto march, mtune values and let the project pass those values along with the right optimization flags. https://github.com/intel/ipp-crypto/blob/ippcp_2021.5/OVERVIEW.md#dispatcher Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com> Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
This commit is contained in:
parent
39027f7038
commit
f8ce4df052
|
@ -1,19 +1,22 @@
|
|||
From 7b575fc23d246373425c3682e83634203aadc4a6 Mon Sep 17 00:00:00 2001
|
||||
From efedbf9080c19241c2aa9ee7ba901245d38c8fa2 Mon Sep 17 00:00:00 2001
|
||||
From: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
Date: Thu, 17 Jun 2021 12:35:36 +0800
|
||||
Subject: [PATCH 3/4] CMakeLists.txt: exclude host system headers
|
||||
Date: Mon, 7 Mar 2022 16:44:24 +0800
|
||||
Subject: [PATCH 1/2] CMakeLists.txt: exclude host system headers
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
|
||||
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
---
|
||||
sources/ippcp/crypto_mb/CMakeLists.txt | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/sources/ippcp/crypto_mb/CMakeLists.txt b/sources/ippcp/crypto_mb/CMakeLists.txt
|
||||
index d1f3994..db9635b 100644
|
||||
index c4cc82a..4094f34 100644
|
||||
--- a/sources/ippcp/crypto_mb/CMakeLists.txt
|
||||
+++ b/sources/ippcp/crypto_mb/CMakeLists.txt
|
||||
@@ -75,7 +75,6 @@ endif()
|
||||
include_directories(
|
||||
${MB_INCLUDE_DIRS}
|
||||
@@ -82,7 +82,6 @@ include_directories(
|
||||
${CRYPTO_MB_INCLUDE_DIR}
|
||||
${OPENSSL_INCLUDE_DIR}
|
||||
$<$<C_COMPILER_ID:Intel>:$ENV{ROOT}/compiler/include $ENV{ROOT}/compiler/include/icc>
|
||||
- $<$<NOT:$<C_COMPILER_ID:Intel>>:${CMAKE_SYSTEM_INCLUDE_PATH}>
|
||||
$<$<OR:$<C_COMPILER_ID:Intel>,$<BOOL:${MSVC_IDE}>>:$ENV{INCLUDE}>
|
|
@ -1,29 +0,0 @@
|
|||
From c440800cae91f857949255cc63993426bdaefb26 Mon Sep 17 00:00:00 2001
|
||||
From: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
Date: Wed, 16 Jun 2021 20:54:33 +0800
|
||||
Subject: [PATCH 1/4] GNU.cmake: allow to pass compiler and linker flags
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
|
||||
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
---
|
||||
sources/ippcp/crypto_mb/src/cmake/linux/GNU.cmake | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/sources/ippcp/crypto_mb/src/cmake/linux/GNU.cmake b/sources/ippcp/crypto_mb/src/cmake/linux/GNU.cmake
|
||||
index 5d148a1..4cb2289 100644
|
||||
--- a/sources/ippcp/crypto_mb/src/cmake/linux/GNU.cmake
|
||||
+++ b/sources/ippcp/crypto_mb/src/cmake/linux/GNU.cmake
|
||||
@@ -56,7 +56,8 @@ set(LINK_FLAGS_DYNAMIC "${LINK_FLAGS_DYNAMIC} ${CRYPTO_MB_SOURCES_DIR}/cmake/dll
|
||||
# Compiler flags
|
||||
|
||||
# Tells the compiler to align functions and loops
|
||||
-set(CMAKE_C_FLAGS " -falign-functions=32 -falign-loops=32")
|
||||
+set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -falign-functions=32 -falign-loops=32")
|
||||
+
|
||||
# Ensures that compilation takes place in a freestanding environment
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ffreestanding")
|
||||
|
||||
--
|
||||
2.17.1
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
From b4549bb765d279b5ba042c6340e1dd69d0890b64 Mon Sep 17 00:00:00 2001
|
||||
From: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
Date: Thu, 10 Mar 2022 14:30:01 +0800
|
||||
Subject: [PATCH 2/2] cmake: exclude Yocto build flags
|
||||
|
||||
Ipp-crypto has its own set of flags and -march values,
|
||||
which causes conflict with default -march=nehalem in gcc
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
|
||||
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
---
|
||||
sources/ippcp/crypto_mb/src/CMakeLists.txt | 2 +-
|
||||
sources/ippcp/crypto_mb/src/cmake/linux/GNU.cmake | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/sources/ippcp/crypto_mb/src/CMakeLists.txt b/sources/ippcp/crypto_mb/src/CMakeLists.txt
|
||||
index 1ca1a8c..5284d62 100644
|
||||
--- a/sources/ippcp/crypto_mb/src/CMakeLists.txt
|
||||
+++ b/sources/ippcp/crypto_mb/src/CMakeLists.txt
|
||||
@@ -81,7 +81,7 @@ endif()
|
||||
set(MB_LIB_TARGET ${MB_DYN_LIB_TARGET})
|
||||
|
||||
set_source_files_properties(${CRYPTO_MB_SOURCES} PROPERTIES COMPILE_DEFINITIONS "${AVX512_LIBRARY_DEFINES}"
|
||||
- COMPILE_FLAGS "${AVX512_CFLAGS} ${CMAKE_ASM_FLAGS} ${CMAKE_C_FLAGS_SECURITY}")
|
||||
+ COMPILE_FLAGS "${AVX512_CFLAGS} ${CMAKE_C_FLAGS_SECURITY}")
|
||||
|
||||
# Don't specify architectural flags for the assembler for this sources, because of the bug in Intel® C Compiler under MacOS: error: invalid instruction mnemonic 'vkmovb'
|
||||
# The bug has been fixed since version 2021.3. This is a workaround to support older versions of Intel® C Compiler.
|
||||
diff --git a/sources/ippcp/crypto_mb/src/cmake/linux/GNU.cmake b/sources/ippcp/crypto_mb/src/cmake/linux/GNU.cmake
|
||||
index a2abeeb..aadd6e2 100644
|
||||
--- a/sources/ippcp/crypto_mb/src/cmake/linux/GNU.cmake
|
||||
+++ b/sources/ippcp/crypto_mb/src/cmake/linux/GNU.cmake
|
||||
@@ -58,7 +58,7 @@ set(LINK_FLAGS_DYNAMIC "${LINK_FLAGS_DYNAMIC} ${CRYPTO_MB_SOURCES_DIR}/cmake/dll
|
||||
# Compiler flags
|
||||
|
||||
# Tells the compiler to align functions and loops
|
||||
-set(CMAKE_C_FLAGS " -falign-functions=32 -falign-loops=32")
|
||||
+set(CMAKE_C_FLAGS " -falign-functions=32 -falign-loops=32 ${TOOLCHAIN_OPTIONS}")
|
||||
# Ensures that compilation takes place in a freestanding environment
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ffreestanding")
|
||||
|
||||
--
|
||||
2.17.1
|
||||
|
|
@ -9,12 +9,11 @@ LICENSE = "Apache-2.0"
|
|||
LIC_FILES_CHKSUM = "file://../../../LICENSE;md5=e787af283468feca985d6b865d27d95b"
|
||||
|
||||
SRC_URI = " \
|
||||
git://github.com/intel/ipp-crypto;protocol=https;branch=ipp-crypto_2021_3 \
|
||||
file://0001-GNU.cmake-allow-to-pass-compiler-and-linker-flags.patch;striplevel=4 \
|
||||
file://0003-CMakeLists.txt-exclude-host-system-headers.patch;striplevel=4 \
|
||||
git://github.com/intel/ipp-crypto;protocol=https;branch=ipp-crypto_2021_5 \
|
||||
file://0001-CMakeLists.txt-exclude-host-system-headers.patch;striplevel=4 \
|
||||
file://0002-cmake-exclude-Yocto-build-flags.patch;striplevel=4 \
|
||||
"
|
||||
|
||||
SRCREV = "d9d13aaaf8889753fb58a13c2652c39b67c2076b"
|
||||
SRCREV = "2b8c5c82c87e3fe37f132f632557367d9bc8a69b"
|
||||
|
||||
S = "${WORKDIR}/git/sources/ippcp/crypto_mb"
|
||||
|
||||
|
@ -23,7 +22,5 @@ DEPENDS = "openssl"
|
|||
inherit cmake pkgconfig
|
||||
COMPATIBLE_HOST = '(x86_64).*-linux'
|
||||
|
||||
# error: 'SHA512_Init' is deprecated: Since OpenSSL 3.0 [-Werror=deprecated-declarations]
|
||||
CFLAGS:append = " -Wno-error=deprecated-declarations"
|
||||
|
||||
EXTRA_OECMAKE += " -DARCH=intel64"
|
||||
EXTRA_OECMAKE += " -DTOOLCHAIN_OPTIONS='${TOOLCHAIN_OPTIONS}'"
|
Loading…
Reference in New Issue
Block a user