1# SPDX-License-Identifier: BSD-3-Clause 2# Copyright 2018 6WIND S.A. 3# Copyright 2018 Mellanox Technologies, Ltd 4 5if not (is_linux or is_windows) 6 build = false 7 reason = 'only supported on Linux and Windows' 8 subdir_done() 9endif 10 11deps += ['hash', 'common_mlx5'] 12sources = files( 13 'mlx5.c', 14 'mlx5_ethdev.c', 15 'mlx5_flow.c', 16 'mlx5_flow_meter.c', 17 'mlx5_flow_dv.c', 18 'mlx5_flow_verbs.c', 19 'mlx5_mac.c', 20 'mlx5_mr.c', 21 'mlx5_rss.c', 22 'mlx5_rxmode.c', 23 'mlx5_rxq.c', 24 'mlx5_rxtx.c', 25 'mlx5_stats.c', 26 'mlx5_trigger.c', 27 'mlx5_txq.c', 28 'mlx5_txpp.c', 29 'mlx5_vlan.c', 30 'mlx5_utils.c', 31 'mlx5_devx.c', 32) 33if (dpdk_conf.has('RTE_ARCH_X86_64') 34 or dpdk_conf.has('RTE_ARCH_ARM64') 35 or dpdk_conf.has('RTE_ARCH_PPC_64')) 36 sources += files('mlx5_rxtx_vec.c') 37endif 38cflags_options = [ 39 '-std=c11', 40 '-Wno-strict-prototypes', 41 '-D_BSD_SOURCE', 42 '-D_DEFAULT_SOURCE', 43 '-D_XOPEN_SOURCE=600' 44] 45foreach option:cflags_options 46 if cc.has_argument(option) 47 cflags += option 48 endif 49endforeach 50if get_option('buildtype').contains('debug') 51 cflags += [ '-pedantic', '-DPEDANTIC' ] 52else 53 cflags += [ '-UPEDANTIC' ] 54endif 55subdir(exec_env) 56