The aesni_mb driver and the aesni_gcm driver both require the same version
of the IPSec_MB library, but only the former has a check of the library
found to see if it's the correct version. Add a similar check to the
aesni_gcm library's meson.build file, so that the auto-detection of
dependencies works correctly.

Signed-off-by: Bruce Richardson <bruce.richard...@intel.com>
---
 drivers/crypto/aesni_gcm/meson.build | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/drivers/crypto/aesni_gcm/meson.build 
b/drivers/crypto/aesni_gcm/meson.build
index 70f57ad73..7183cfcba 100644
--- a/drivers/crypto/aesni_gcm/meson.build
+++ b/drivers/crypto/aesni_gcm/meson.build
@@ -1,11 +1,22 @@
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2018 Intel Corporation
 
+IMB_required_ver = '0.52.0'
 lib = cc.find_library('IPSec_MB', required: false)
 if not lib.found()
        build = false
 else
        ext_deps += lib
+
+       # version comes with quotes, so we split based on " and take the middle
+       imb_ver = cc.get_define('IMB_VERSION_STR',
+               prefix : '#include<intel-ipsec-mb.h>').split('"')[1]
+
+       if (imb_ver == '') or (imb_ver.version_compare('<' + IMB_required_ver))
+               message('IPSec_MB version >= @0@ is required, found version 
@1@'.format(
+                               IMB_required_ver, imb_ver))
+               build = false
+       endif
 endif
 
 allow_experimental_apis = true
-- 
2.20.1

Reply via email to