xref: /dpdk/drivers/common/qat/meson.build (revision 68a03efeed657e6e05f281479b33b51102797e15)
1# SPDX-License-Identifier: BSD-3-Clause
2# Copyright(c) 2017-2018 Intel Corporation
3
4qat_crypto = true
5qat_crypto_path = 'crypto/qat'
6qat_crypto_relpath = '../../' + qat_crypto_path
7qat_compress = true
8qat_compress_path = 'compress/qat'
9qat_compress_relpath = '../../' + qat_compress_path
10
11if disabled_drivers.contains(qat_crypto_path)
12	qat_crypto = false
13	dpdk_drvs_disabled += qat_crypto_path
14	set_variable(qat_crypto_path.underscorify() + '_disable_reason',
15			'Explicitly disabled via build config')
16endif
17if disabled_drivers.contains(qat_compress_path)
18	qat_compress = false
19	dpdk_drvs_disabled += qat_compress_path
20	set_variable(qat_compress_path.underscorify() + '_disable_reason',
21			'Explicitly disabled via build config')
22endif
23
24libcrypto = dependency('libcrypto', required: false, method: 'pkg-config')
25if qat_crypto and not libcrypto.found()
26	qat_crypto = false
27	dpdk_drvs_disabled += qat_crypto_path
28	set_variable(qat_crypto_path.underscorify() + '_disable_reason',
29			'missing dependency, libcrypto')
30endif
31
32# The driver should not build if both compression and crypto are disabled
33#FIXME common code depends on compression files so check only compress!
34if not qat_compress # and not qat_crypto
35	build = false
36	reason = '' # rely on reason for compress/crypto above
37	subdir_done()
38endif
39
40deps += ['bus_pci', 'cryptodev', 'net', 'compressdev']
41sources += files('qat_common.c',
42		'qat_qp.c',
43		'qat_device.c',
44		'qat_logs.c')
45includes += include_directories('qat_adf',
46		qat_crypto_relpath,
47		qat_compress_relpath)
48
49if qat_compress
50	foreach f: ['qat_comp_pmd.c', 'qat_comp.c']
51		sources += files(join_paths(qat_compress_relpath, f))
52	endforeach
53endif
54
55if qat_crypto
56	foreach f: ['qat_sym_pmd.c', 'qat_sym.c', 'qat_sym_session.c',
57			'qat_sym_hw_dp.c', 'qat_asym_pmd.c', 'qat_asym.c']
58		sources += files(join_paths(qat_crypto_relpath, f))
59	endforeach
60	deps += ['security']
61	ext_deps += libcrypto
62	cflags += ['-DBUILD_QAT_SYM', '-DBUILD_QAT_ASYM']
63endif
64