[2/2] crypto/aesni_mb: cleanup of version check code

Message ID 20190419100113.31284-2-bruce.richardson@intel.com
State Superseded, archived
Delegated to: akhil goyal
Headers show
Series
  • [1/2] crypto/aesni_gcm: add dependency version check
Related show

Checks

Context Check Description
ci/Intel-compilation success Compilation OK
ci/checkpatch success coding style OK

Commit Message

Bruce Richardson April 19, 2019, 10:01 a.m.
The version check for the IPSec_MB library present in the aesni_gcm
library's meson.build file is a little cleaner than that given here,
so update this one so that both work identically.

While one could use the checks done in the other right now, potentially in
future they may have different version dependencies, or may be compiled in
different orders, so keep the code duplicated for safety, since it's only a
few lines.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
 drivers/crypto/aesni_mb/meson.build | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

Comments

De Lara Guarch, Pablo April 23, 2019, 2:40 p.m. | #1
> -----Original Message-----
> From: Richardson, Bruce
> Sent: Friday, April 19, 2019 11:01 AM
> To: dev@dpdk.org
> Cc: De Lara Guarch, Pablo <pablo.de.lara.guarch@intel.com>; Doherty,
> Declan <declan.doherty@intel.com>; Richardson, Bruce
> <bruce.richardson@intel.com>
> Subject: [PATCH 2/2] crypto/aesni_mb: cleanup of version check code
> 
> The version check for the IPSec_MB library present in the aesni_gcm library's
> meson.build file is a little cleaner than that given here, so update this one so
> that both work identically.
> 
> While one could use the checks done in the other right now, potentially in
> future they may have different version dependencies, or may be compiled in
> different orders, so keep the code duplicated for safety, since it's only a few
> lines.
> 
> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>

Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>

Patch

diff --git a/drivers/crypto/aesni_mb/meson.build b/drivers/crypto/aesni_mb/meson.build
index fbc4878af..7c1eb3f86 100644
--- a/drivers/crypto/aesni_mb/meson.build
+++ b/drivers/crypto/aesni_mb/meson.build
@@ -1,25 +1,25 @@ 
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2018 Intel Corporation
-IPSec_MB_ver_0_52 = '0.52.0'
+
+IMB_required_ver = '0.52.0'
 lib = cc.find_library('IPSec_MB', required: false)
 if not lib.found()
 	build = false
 else
 	ext_deps += lib
 
-	imb_arr = cc.get_define('IMB_VERSION_STR',
-		prefix : '#include<intel-ipsec-mb.h>').split('"')
-
-	imb_ver = ''.join(imb_arr)
+	# 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('<' + IPSec_MB_ver_0_52))
-		message('IPSec_MB version >= 0.52 is required')
+	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
-	else
-		sources = files('rte_aesni_mb_pmd.c', 'rte_aesni_mb_pmd_ops.c')
 	endif
 
 endif
 
+sources = files('rte_aesni_mb_pmd.c', 'rte_aesni_mb_pmd_ops.c')
 allow_experimental_apis = true
 deps += ['bus_vdev']