summaryrefslogtreecommitdiffstats
path: root/drivers/net/sfc/meson.build
blob: 2d34e869d86ea308ae49a5700d797e3d1bc5ed0b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# SPDX-License-Identifier: BSD-3-Clause
#
# Copyright (c) 2016-2018 Solarflare Communications Inc.
# All rights reserved.
#
# This software was jointly developed between OKTET Labs (under contract
# for Solarflare) and Solarflare Communications, Inc.

if arch_subdir != 'x86' or cc.sizeof('void *') == 4
	build = false
endif

allow_experimental_apis = true

extra_flags = []

# Strict-aliasing rules are violated by rte_eth_link to uint64_t casts
extra_flags += '-Wno-strict-aliasing'

# Enable more warnings
extra_flags += [
	'-Wextra',
	'-Wdisabled-optimization'
]

# Compiler and version dependent flags
extra_flags += [
	'-Waggregate-return',
	'-Wnested-externs',
	'-Wbad-function-cast'
]

foreach flag: extra_flags
	if cc.has_argument(flag)
		cflags += flag
	endif
endforeach

subdir('base')
objs = [base_objs]

sources = files(
	'sfc_ethdev.c',
	'sfc_kvargs.c',
	'sfc.c',
	'sfc_mcdi.c',
	'sfc_intr.c',
	'sfc_ev.c',
	'sfc_port.c',
	'sfc_rx.c',
	'sfc_tx.c',
	'sfc_tso.c',
	'sfc_filter.c',
	'sfc_flow.c',
	'sfc_dp.c',
	'sfc_ef10_rx.c',
	'sfc_ef10_essb_rx.c',
	'sfc_ef10_tx.c'
)

includes += include_directories('base')