xref: /dpdk/drivers/crypto/ipsec_mb/meson.build (revision 5731efea)
1# SPDX-License-Identifier: BSD-3-Clause
2# Copyright(c) 2021 Intel Corporation
3
4if is_windows
5    build = false
6    reason = 'not supported on Windows'
7    subdir_done()
8endif
9
10IMB_required_ver = '1.0.0'
11lib = cc.find_library('IPSec_MB', required: false)
12if not lib.found()
13    build = false
14    reason = 'missing dependency, "libIPSec_MB"'
15else
16    ext_deps += lib
17
18    # version comes with quotes, so we split based on " and take the middle
19    imb_ver = cc.get_define('IMB_VERSION_STR',
20        prefix : '#include<intel-ipsec-mb.h>').split('"')[1]
21
22    if (imb_ver == '') or (imb_ver.version_compare('<' + IMB_required_ver))
23        reason = 'IPSec_MB version >= @0@ is required, found version @1@'.format(
24            IMB_required_ver, imb_ver)
25        build = false
26    endif
27endif
28
29sources = files(
30        'ipsec_mb_private.c',
31        'ipsec_mb_ops.c',
32        'pmd_aesni_mb.c',
33        'pmd_aesni_gcm.c',
34        'pmd_chacha_poly.c',
35        'pmd_kasumi.c',
36        'pmd_snow3g.c',
37        'pmd_zuc.c',
38)
39deps += ['bus_vdev', 'net', 'security']
40