xref: /f-stack/dpdk/drivers/net/sfc/meson.build (revision 819aafb6)
1# SPDX-License-Identifier: BSD-3-Clause
2#
3# Copyright (c) 2016-2018 Solarflare Communications Inc.
4# All rights reserved.
5#
6# This software was jointly developed between OKTET Labs (under contract
7# for Solarflare) and Solarflare Communications, Inc.
8
9if arch_subdir != 'x86' or not dpdk_conf.get('RTE_ARCH_64')
10	build = false
11endif
12
13allow_experimental_apis = true
14
15extra_flags = []
16
17# Strict-aliasing rules are violated by rte_eth_link to uint64_t casts
18extra_flags += '-Wno-strict-aliasing'
19
20# Enable more warnings
21extra_flags += [
22	'-Wextra',
23	'-Wdisabled-optimization'
24]
25
26# Compiler and version dependent flags
27extra_flags += [
28	'-Waggregate-return',
29	'-Wnested-externs',
30	'-Wbad-function-cast'
31]
32
33foreach flag: extra_flags
34	if cc.has_argument(flag)
35		cflags += flag
36	endif
37endforeach
38
39subdir('base')
40objs = [base_objs]
41
42sources = files(
43	'sfc_ethdev.c',
44	'sfc_kvargs.c',
45	'sfc.c',
46	'sfc_mcdi.c',
47	'sfc_intr.c',
48	'sfc_ev.c',
49	'sfc_port.c',
50	'sfc_rx.c',
51	'sfc_tx.c',
52	'sfc_tso.c',
53	'sfc_filter.c',
54	'sfc_flow.c',
55	'sfc_dp.c',
56	'sfc_ef10_rx.c',
57	'sfc_ef10_essb_rx.c',
58	'sfc_ef10_tx.c'
59)
60
61includes += include_directories('base')
62