]>
Commit | Line | Data |
---|---|---|
9f95a23c TL |
1 | # SPDX-License-Identifier: BSD-3-Clause |
2 | # Copyright(c) 2010-2016 Intel Corporation | |
7c673cae FG |
3 | |
4 | include $(RTE_SDK)/mk/rte.vars.mk | |
5 | ||
6 | # | |
7 | # library name | |
8 | # | |
9 | LIB = librte_pmd_ixgbe.a | |
10 | ||
9f95a23c | 11 | CFLAGS += -DALLOW_EXPERIMENTAL_API |
7c673cae FG |
12 | CFLAGS += -O3 |
13 | CFLAGS += $(WERROR_FLAGS) | |
14 | ||
15 | EXPORT_MAP := rte_pmd_ixgbe_version.map | |
16 | ||
9f95a23c | 17 | LIBABIVER := 2 |
7c673cae FG |
18 | |
19 | ifeq ($(CONFIG_RTE_TOOLCHAIN_ICC),y) | |
20 | # | |
21 | # CFLAGS for icc | |
22 | # | |
9f95a23c TL |
23 | CFLAGS_BASE_DRIVER = -diag-disable 174 -diag-disable 593 -diag-disable 869 |
24 | CFLAGS_BASE_DRIVER += -diag-disable 981 -diag-disable 2259 | |
7c673cae | 25 | |
9f95a23c | 26 | CFLAGS_ixgbe_rxtx.o += -diag-disable 3656 |
7c673cae FG |
27 | |
28 | else ifeq ($(CONFIG_RTE_TOOLCHAIN_CLANG),y) | |
29 | # | |
30 | # CFLAGS for clang | |
31 | # | |
32 | CFLAGS_BASE_DRIVER = -Wno-unused-parameter -Wno-unused-value | |
33 | CFLAGS_BASE_DRIVER += -Wno-strict-aliasing -Wno-format-extra-args | |
34 | ||
35 | else | |
36 | # | |
37 | # CFLAGS for gcc | |
38 | # | |
39 | ifeq ($(shell test $(GCC_VERSION) -ge 44 && echo 1), 1) | |
40 | CFLAGS += -Wno-deprecated | |
41 | CFLAGS_ixgbe_common.o += -Wno-unused-but-set-variable | |
42 | CFLAGS_ixgbe_x550.o += -Wno-unused-but-set-variable | |
43 | endif | |
44 | CFLAGS_BASE_DRIVER = -Wno-unused-parameter -Wno-unused-value | |
45 | CFLAGS_BASE_DRIVER += -Wno-strict-aliasing -Wno-format-extra-args | |
46 | ||
47 | ifeq ($(shell test $(GCC_VERSION) -ge 46 && echo 1), 1) | |
48 | CFLAGS_ixgbe_x550.o += -Wno-maybe-uninitialized | |
49 | endif | |
50 | ||
51 | ifeq ($(shell test $(GCC_VERSION) -ge 50 && echo 1), 1) | |
52 | CFLAGS_ixgbe_common.o += -Wno-logical-not-parentheses | |
11fdf7f2 TL |
53 | ifeq ($(shell test $(GCC_VERSION) -ge 70 && echo 1), 1) |
54 | CFLAGS_BASE_DRIVER += -Wno-implicit-fallthrough | |
55 | endif | |
7c673cae FG |
56 | endif |
57 | ||
58 | endif | |
9f95a23c TL |
59 | LDLIBS += -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring |
60 | LDLIBS += -lrte_ethdev -lrte_net -lrte_kvargs -lrte_hash | |
61 | LDLIBS += -lrte_bus_pci | |
7c673cae FG |
62 | |
63 | # | |
64 | # Add extra flags for base driver files (also known as shared code) | |
65 | # to disable warnings in them | |
66 | # | |
9f95a23c | 67 | BASE_DRIVER_OBJS=$(sort $(patsubst %.c,%.o,$(notdir $(wildcard $(SRCDIR)/base/*.c)))) |
7c673cae FG |
68 | $(foreach obj, $(BASE_DRIVER_OBJS), $(eval CFLAGS_$(obj)+=$(CFLAGS_BASE_DRIVER))) |
69 | ||
70 | VPATH += $(SRCDIR)/base | |
71 | ||
72 | # | |
73 | # all source are stored in SRCS-y | |
74 | # | |
75 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_common.c | |
76 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_82598.c | |
77 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_82599.c | |
78 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_x540.c | |
79 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_x550.c | |
80 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_phy.c | |
81 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_api.c | |
82 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_vf.c | |
11fdf7f2 | 83 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_hv_vf.c |
7c673cae FG |
84 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_dcb.c |
85 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_dcb_82599.c | |
86 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_dcb_82598.c | |
87 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_mbx.c | |
88 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_rxtx.c | |
89 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_ethdev.c | |
90 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_fdir.c | |
91 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_pf.c | |
11fdf7f2 | 92 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_flow.c |
7c673cae FG |
93 | ifeq ($(CONFIG_RTE_ARCH_ARM64),y) |
94 | SRCS-$(CONFIG_RTE_IXGBE_INC_VECTOR) += ixgbe_rxtx_vec_neon.c | |
95 | else | |
96 | SRCS-$(CONFIG_RTE_IXGBE_INC_VECTOR) += ixgbe_rxtx_vec_sse.c | |
97 | endif | |
9f95a23c | 98 | ifeq ($(CONFIG_RTE_LIBRTE_IXGBE_BYPASS),y) |
7c673cae FG |
99 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_bypass.c |
100 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_82599_bypass.c | |
101 | endif | |
9f95a23c TL |
102 | ifeq ($(CONFIG_RTE_LIBRTE_SECURITY),y) |
103 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_ipsec.c | |
104 | endif | |
11fdf7f2 | 105 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += rte_pmd_ixgbe.c |
9f95a23c TL |
106 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_tm.c |
107 | SRCS-$(CONFIG_RTE_LIBRTE_IXGBE_PMD) += ixgbe_vf_representor.c | |
7c673cae FG |
108 | |
109 | # install this header file | |
110 | SYMLINK-$(CONFIG_RTE_LIBRTE_IXGBE_PMD)-include := rte_pmd_ixgbe.h | |
111 | ||
7c673cae | 112 | include $(RTE_SDK)/mk/rte.lib.mk |