1# SPDX-License-Identifier: BSD-3-Clause 2# Copyright(c) 2018 Corigine, Inc. 3 4if not is_linux or not dpdk_conf.get('RTE_ARCH_64') 5 build = false 6 reason = 'only supported on 64-bit Linux' 7 subdir_done() 8endif 9 10sources = files( 11 'flower/nfp_conntrack.c', 12 'flower/nfp_flower.c', 13 'flower/nfp_flower_cmsg.c', 14 'flower/nfp_flower_ctrl.c', 15 'flower/nfp_flower_flow.c', 16 'flower/nfp_flower_representor.c', 17 'flower/nfp_flower_service.c', 18 'nfd3/nfp_nfd3_dp.c', 19 'nfdk/nfp_nfdk_dp.c', 20 'nfdk/nfp_nfdk_vec_stub.c', 21 'nfpcore/nfp_cppcore.c', 22 'nfpcore/nfp_crc.c', 23 'nfpcore/nfp_elf.c', 24 'nfpcore/nfp_hwinfo.c', 25 'nfpcore/nfp_mip.c', 26 'nfpcore/nfp_mutex.c', 27 'nfpcore/nfp_nffw.c', 28 'nfpcore/nfp_nsp.c', 29 'nfpcore/nfp_nsp_cmds.c', 30 'nfpcore/nfp_nsp_eth.c', 31 'nfpcore/nfp_resource.c', 32 'nfpcore/nfp_rtsym.c', 33 'nfpcore/nfp_sync.c', 34 'nfpcore/nfp_target.c', 35 'nfpcore/nfp6000_pcie.c', 36 'nfp_cpp_bridge.c', 37 'nfp_ethdev.c', 38 'nfp_ethdev_vf.c', 39 'nfp_ipsec.c', 40 'nfp_logs.c', 41 'nfp_mtr.c', 42 'nfp_net_cmsg.c', 43 'nfp_net_common.c', 44 'nfp_net_ctrl.c', 45 'nfp_net_flow.c', 46 'nfp_net_meta.c', 47 'nfp_rxtx.c', 48 'nfp_rxtx_vec_stub.c', 49 'nfp_service.c', 50) 51 52if arch_subdir == 'x86' 53 includes += include_directories('../../common/nfp') 54 55 avx2_sources = files( 56 'nfdk/nfp_nfdk_vec_avx2_dp.c', 57 'nfp_rxtx_vec_avx2.c', 58 ) 59 60 nfp_avx2_lib = static_library('nfp_avx2_lib', 61 avx2_sources, 62 dependencies: [static_rte_ethdev, static_rte_bus_pci], 63 include_directories: includes, 64 c_args: [cflags, '-mavx2'] 65 ) 66 67 objs += nfp_avx2_lib.extract_all_objects(recursive: true) 68endif 69 70deps += ['hash', 'security', 'common_nfp'] 71