vdpa/mlx5: prepare memory regions
[dpdk.git] / drivers / vdpa / mlx5 / Makefile
1 #   SPDX-License-Identifier: BSD-3-Clause
2 #   Copyright 2019 Mellanox Technologies, Ltd
3
4 include $(RTE_SDK)/mk/rte.vars.mk
5
6 # Library name.
7 LIB = librte_pmd_mlx5_vdpa.a
8
9 # Sources.
10 SRCS-$(CONFIG_RTE_LIBRTE_MLX5_VDPA_PMD) += mlx5_vdpa.c
11 SRCS-$(CONFIG_RTE_LIBRTE_MLX5_VDPA_PMD) += mlx5_vdpa_mem.c
12
13 # Basic CFLAGS.
14 CFLAGS += -O3
15 CFLAGS += -std=c11 -Wall -Wextra
16 CFLAGS += -g
17 CFLAGS += -I$(RTE_SDK)/drivers/common/mlx5
18 CFLAGS += -I$(RTE_SDK)/drivers/net/mlx5_vdpa
19 CFLAGS += -I$(RTE_SDK)/lib/librte_sched
20 CFLAGS += -I$(BUILDDIR)/drivers/common/mlx5
21 CFLAGS += -D_BSD_SOURCE
22 CFLAGS += -D_DEFAULT_SOURCE
23 CFLAGS += -D_XOPEN_SOURCE=600
24 CFLAGS += $(WERROR_FLAGS)
25 CFLAGS += -Wno-strict-prototypes
26 LDLIBS += -lrte_common_mlx5
27 LDLIBS += -lrte_eal -lrte_vhost -lrte_kvargs -lrte_bus_pci -lrte_sched
28
29 # A few warnings cannot be avoided in external headers.
30 CFLAGS += -Wno-error=cast-qual
31
32 EXPORT_MAP := rte_pmd_mlx5_vdpa_version.map
33 # memseg walk is not part of stable API
34 CFLAGS += -DALLOW_EXPERIMENTAL_API
35
36 # DEBUG which is usually provided on the command-line may enable
37 # CONFIG_RTE_LIBRTE_MLX5_DEBUG.
38 ifeq ($(DEBUG),1)
39 CONFIG_RTE_LIBRTE_MLX5_DEBUG := y
40 endif
41
42 # User-defined CFLAGS.
43 ifeq ($(CONFIG_RTE_LIBRTE_MLX5_DEBUG),y)
44 CFLAGS += -pedantic
45 ifneq ($(CONFIG_RTE_TOOLCHAIN_ICC),y)
46 CFLAGS += -DPEDANTIC
47 endif
48 AUTO_CONFIG_CFLAGS += -Wno-pedantic
49 else
50 CFLAGS += -UPEDANTIC
51 endif
52
53 include $(RTE_SDK)/mk/rte.lib.mk