1095cae36SLuca Boccassi# SPDX-License-Identifier: BSD-3-Clause 2095cae36SLuca Boccassi# Copyright 2018 Luca Boccassi <bluca@debian.org> 3095cae36SLuca Boccassi 4adf93ca5SBruce Richardsonif not is_linux 5b077118aSAgalya Babu RadhaKrishnan build = false 6135155a8SThomas Monjalon reason = 'only supported on Linux' 7b077118aSAgalya Babu RadhaKrishnanendif 82bb2f755SStephen Hemminger 9095cae36SLuca Boccassisources = files( 10095cae36SLuca Boccassi 'rte_eth_tap.c', 11095cae36SLuca Boccassi 'tap_intr.c', 12095cae36SLuca Boccassi 'tap_netlink.c', 137c391c6bSStephen Hemminger) 147c391c6bSStephen Hemminger 152bb2f755SStephen Hemmingerdeps = ['bus_vdev', 'gso', 'hash'] 162bb2f755SStephen Hemminger 17*6a2e47a3SStephen Hemmingermax_queues = '-DTAP_MAX_QUEUES=64' 182bb2f755SStephen Hemmingercflags += max_queues 192bb2f755SStephen Hemminger 202bb2f755SStephen Hemmingerrequire_iova_in_mbuf = false 212bb2f755SStephen Hemminger 227c391c6bSStephen Hemmingerif cc.has_header_symbol('linux/pkt_cls.h', 'TCA_FLOWER_ACT') 237c391c6bSStephen Hemminger cflags += '-DHAVE_TCA_FLOWER' 247c391c6bSStephen Hemminger sources += files( 257c391c6bSStephen Hemminger 'tap_flow.c', 26095cae36SLuca Boccassi 'tap_tcmsgs.c', 27095cae36SLuca Boccassi ) 282bb2f755SStephen Hemminger 292bb2f755SStephen Hemminger enable_tap_rss = false 302bb2f755SStephen Hemminger 312bb2f755SStephen Hemminger subdir('bpf') 322bb2f755SStephen Hemminger if enable_tap_rss 332bb2f755SStephen Hemminger cflags += '-DHAVE_BPF_RSS' 342bb2f755SStephen Hemminger ext_deps += libbpf 352bb2f755SStephen Hemminger sources += tap_rss_skel_h 367c391c6bSStephen Hemminger endif 372bb2f755SStephen Hemmingerendif 38