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_age.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) 33 34if is_linux 35 sources += files( 36 'mlx5_flow_verbs.c', 37 ) 38 if (dpdk_conf.has('RTE_ARCH_X86_64') 39 or dpdk_conf.has('RTE_ARCH_ARM64') 40 or dpdk_conf.has('RTE_ARCH_PPC_64')) 41 sources += files('mlx5_rxtx_vec.c') 42 endif 43endif 44 45cflags_options = [ 46 '-std=c11', 47 '-Wno-strict-prototypes', 48 '-D_BSD_SOURCE', 49 '-D_DEFAULT_SOURCE', 50 '-D_XOPEN_SOURCE=600' 51] 52foreach option:cflags_options 53 if cc.has_argument(option) 54 cflags += option 55 endif 56endforeach 57if get_option('buildtype').contains('debug') 58 cflags += [ '-pedantic', '-DPEDANTIC' ] 59else 60 cflags += [ '-UPEDANTIC' ] 61endif 62subdir(exec_env) 63