]>
Commit | Line | Data |
---|---|---|
11fdf7f2 TL |
1 | # SPDX-License-Identifier: BSD-3-Clause |
2 | # | |
f67539c2 TL |
3 | # Copyright(c) 2019-2020 Xilinx, Inc. |
4 | # Copyright(c) 2016-2019 Solarflare Communications Inc. | |
11fdf7f2 TL |
5 | # |
6 | # This software was jointly developed between OKTET Labs (under contract | |
7 | # for Solarflare) and Solarflare Communications, Inc. | |
8 | ||
9f95a23c | 9 | if arch_subdir != 'x86' or not dpdk_conf.get('RTE_ARCH_64') |
11fdf7f2 | 10 | build = false |
f67539c2 | 11 | reason = 'only supported on x86_64' |
11fdf7f2 TL |
12 | endif |
13 | ||
11fdf7f2 TL |
14 | extra_flags = [] |
15 | ||
16 | # Strict-aliasing rules are violated by rte_eth_link to uint64_t casts | |
17 | extra_flags += '-Wno-strict-aliasing' | |
18 | ||
19 | # Enable more warnings | |
20 | extra_flags += [ | |
11fdf7f2 TL |
21 | '-Wdisabled-optimization' |
22 | ] | |
23 | ||
24 | # Compiler and version dependent flags | |
25 | extra_flags += [ | |
26 | '-Waggregate-return', | |
11fdf7f2 TL |
27 | '-Wbad-function-cast' |
28 | ] | |
29 | ||
30 | foreach flag: extra_flags | |
31 | if cc.has_argument(flag) | |
32 | cflags += flag | |
33 | endif | |
34 | endforeach | |
35 | ||
36 | subdir('base') | |
37 | objs = [base_objs] | |
38 | ||
39 | sources = files( | |
40 | 'sfc_ethdev.c', | |
41 | 'sfc_kvargs.c', | |
42 | 'sfc.c', | |
43 | 'sfc_mcdi.c', | |
44 | 'sfc_intr.c', | |
45 | 'sfc_ev.c', | |
46 | 'sfc_port.c', | |
47 | 'sfc_rx.c', | |
48 | 'sfc_tx.c', | |
49 | 'sfc_tso.c', | |
50 | 'sfc_filter.c', | |
51 | 'sfc_flow.c', | |
52 | 'sfc_dp.c', | |
53 | 'sfc_ef10_rx.c', | |
54 | 'sfc_ef10_essb_rx.c', | |
55 | 'sfc_ef10_tx.c' | |
56 | ) | |
57 | ||
58 | includes += include_directories('base') |