aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRanjan Raj <ranjanx.raj@intel.com>2023-11-20 07:04:24 +0000
committerFan Zhang <fanzhang.oss@gmail.com>2024-01-11 13:19:57 +0000
commitba39d86eeccba78c92ef275fd48ab4c6d653a997 (patch)
treece58790bb7066707b2fbef130e7c2940c6753d31
parent3336eefaa800f13a531bb1cca5ded99bbe36aca8 (diff)
crypto: align host and VPP IPsec-mb lib
Ensure alignment between the Intel IPsec-mb library on the host and VPP targets.If the version of Intel ipsec-mb on the host is misaligned with the targets,terminate the compilation process to prevent potential library linkage issues. Type: fix Change-Id: I38864115d59ae09fb5556ad4a29e884ebace8155 Signed-off-by: Ranjan Raj <ranjanx.raj@intel.com>
-rw-r--r--build/external/packages/ipsec-mb.mk18
1 files changed, 18 insertions, 0 deletions
diff --git a/build/external/packages/ipsec-mb.mk b/build/external/packages/ipsec-mb.mk
index 3e8ef211082..d38f2e306ea 100644
--- a/build/external/packages/ipsec-mb.mk
+++ b/build/external/packages/ipsec-mb.mk
@@ -12,6 +12,8 @@
# limitations under the License.
ipsec-mb_version := 1.5
+ipsec-mb_patch_version := 0
+ipsec-mb_version_str := $(ipsec-mb_version).$(ipsec-mb_patch_version)
ipsec-mb_tarball := v$(ipsec-mb_version).tar.gz
ipsec-mb_tarball_md5sum_1.0 := 906e701937751e761671dc83a41cff65
ipsec-mb_tarball_md5sum_1.1 := 3916471d3713d27e42473cb6af9c65e5
@@ -23,6 +25,7 @@ ipsec-mb_tarball_md5sum_1.5 := f18680f8dd43208a15a19a494423bdb9
ipsec-mb_tarball_md5sum := $(ipsec-mb_tarball_md5sum_$(ipsec-mb_version))
ipsec-mb_tarball_strip_dirs := 1
ipsec-mb_url := http://github.com/intel/intel-ipsec-mb/archive/$(ipsec-mb_tarball)
+ipsec-mb_system_header := $(wildcard /usr/include/intel-ipsec-mb.h)
define ipsec-mb_config_cmds
@true
@@ -38,7 +41,22 @@ define ipsec-mb_build_cmds
EXTRA_CFLAGS="-g -msse4.2" > $(ipsec-mb_build_log)
endef
+ifneq ($(ipsec-mb_system_header), )
+ ipsec-mb_system_ver_str := $(shell awk '/^#define\s+IMB_VERSION_STR/ { print $$3 }' \
+ $(ipsec-mb_system_header))
+endif
+
define ipsec-mb_install_cmds
+ if [[ -n "$(ipsec-mb_system_header)" ]]; then \
+ if [[ "$(ipsec-mb_system_ver_str)" != "$(ipsec-mb_version_str)" ]]; then \
+ echo "Intel-ipsec-mb build Error: System installed Intel IPsec-mb lib \
+ version mismatch with target version, \
+ expecting $(ipsec-mb_version_str), \
+ but system has $(ipsec-mb_system_ver_str) \
+ please align/remove system installed $(ipsec-mb_system_header) before building."; \
+ exit 1; \
+ fi \
+ fi
@mkdir -p $(ipsec-mb_install_dir)/include
@mkdir -p $(ipsec-mb_install_dir)/lib
@cp $(ipsec-mb_src_dir)/lib/intel-ipsec-mb.h $(ipsec-mb_install_dir)/include