1# SPDX-License-Identifier: BSD-3-Clause 2# Copyright(c) 2017 Intel Corporation 3 4version = 2 5 6cflags += ['-DPF_DRIVER', 7 '-DVF_DRIVER', 8 '-DINTEGRATED_VF', 9 '-DX722_A0_SUPPORT', 10 '-DALLOW_EXPERIMENTAL_API'] 11 12subdir('base') 13objs = [base_objs] 14 15sources = files( 16 'i40e_ethdev.c', 17 'i40e_rxtx.c', 18 'i40e_ethdev_vf.c', 19 'i40e_pf.c', 20 'i40e_fdir.c', 21 'i40e_flow.c', 22 'i40e_tm.c', 23 'i40e_vf_representor.c', 24 'rte_pmd_i40e.c' 25 ) 26 27deps += ['hash'] 28includes += include_directories('base') 29 30if arch_subdir == 'x86' 31 dpdk_conf.set('RTE_LIBRTE_I40E_INC_VECTOR', 1) 32 sources += files('i40e_rxtx_vec_sse.c') 33 34 # compile AVX2 version if either: 35 # a. we have AVX supported in minimum instruction set baseline 36 # b. it's not minimum instruction set, but supported by compiler 37 if dpdk_conf.has('RTE_MACHINE_CPUFLAG_AVX2') 38 sources += files('i40e_rxtx_vec_avx2.c') 39 elif cc.has_argument('-mavx2') 40 i40e_avx2_lib = static_library('i40e_avx2_lib', 41 'i40e_rxtx_vec_avx2.c', 42 dependencies: [static_rte_ethdev, 43 static_rte_kvargs, static_rte_hash], 44 include_directories: includes, 45 c_args: [cflags, '-mavx2']) 46 objs += i40e_avx2_lib.extract_objects('i40e_rxtx_vec_avx2.c') 47 endif 48endif 49 50install_headers('rte_pmd_i40e.h') 51