crypto/aesni_mb: support DOCSIS protocol
[dpdk.git] / drivers / crypto / aesni_mb / meson.build
index 6313c4b..419b474 100644 (file)
@@ -1,28 +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
+       reason = 'missing dependency, "libIPSec_MB"'
 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.version_compare('>=' + IPSec_MB_ver_0_52)
-               message('Build for a new version of library IPSec_MB[' + imb_ver + ']')
-               sources = files('rte_aesni_mb_pmd.c',
-                       'rte_aesni_mb_pmd_ops.c')
-       else
-               sources = files('rte_aesni_mb_pmd_compat.c',
-                       'rte_aesni_mb_pmd_ops_compat.c')
-               message('Build for older version of library IPSec_MB[' + imb_ver + ']')
+       if (imb_ver == '') or (imb_ver.version_compare('<' + IMB_required_ver))
+               reason = 'IPSec_MB version >= @0@ is required, found version @1@'.format(
+                               IMB_required_ver, imb_ver)
+               build = false
        endif
 
 endif
 
-allow_experimental_apis = true
-deps += ['bus_vdev']
+sources = files('rte_aesni_mb_pmd.c', 'rte_aesni_mb_pmd_ops.c')
+deps += ['bus_vdev', 'net', 'security']