xref: /spdk/lib/nvmf/Makefile (revision 2172c432cfdaecc5a279d64e37c6b51e794683c1)
1#
2#  BSD LICENSE
3#
4#  Copyright (c) Intel Corporation.
5#  All rights reserved.
6#
7#  Redistribution and use in source and binary forms, with or without
8#  modification, are permitted provided that the following conditions
9#  are met:
10#
11#    * Redistributions of source code must retain the above copyright
12#      notice, this list of conditions and the following disclaimer.
13#    * Redistributions in binary form must reproduce the above copyright
14#      notice, this list of conditions and the following disclaimer in
15#      the documentation and/or other materials provided with the
16#      distribution.
17#    * Neither the name of Intel Corporation nor the names of its
18#      contributors may be used to endorse or promote products derived
19#      from this software without specific prior written permission.
20#
21#  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22#  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23#  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24#  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25#  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26#  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27#  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28#  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29#  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30#  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31#  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32#
33
34SPDK_ROOT_DIR := $(abspath $(CURDIR)/../..)
35include $(SPDK_ROOT_DIR)/mk/spdk.common.mk
36
37SO_VER := 6
38SO_MINOR := 0
39
40C_SRCS = ctrlr.c ctrlr_discovery.c ctrlr_bdev.c \
41	 subsystem.c nvmf.c nvmf_rpc.c transport.c tcp.c
42
43C_SRCS-$(CONFIG_RDMA) += rdma.c
44LIBNAME = nvmf
45LOCAL_SYS_LIBS =
46ifeq ($(CONFIG_RDMA),y)
47LOCAL_SYS_LIBS += -libverbs -lrdmacm
48#Attach only if FreeBSD and RDMA is specified with configure
49ifeq ($(OS),FreeBSD)
50# Mellanox - MLX4 HBA Userspace Library
51ifneq ("$(wildcard /usr/lib/libmlx4.*)","")
52LOCAL_SYS_LIBS += -lmlx4
53endif
54# Mellanox - MLX5 HBA Userspace Library
55ifneq ("$(wildcard /usr/lib/libmlx5.*)","")
56LOCAL_SYS_LIBS += -lmlx5
57endif
58# Chelsio HBA Userspace Library
59ifneq ("$(wildcard /usr/lib/libcxgb4.*)","")
60LOCAL_SYS_LIBS += -lcxgb4
61endif
62endif
63endif
64
65ifeq ($(CONFIG_FC),y)
66C_SRCS += fc.c fc_ls.c
67CFLAGS += -I$(CURDIR)
68ifneq ($(strip $(CONFIG_FC_PATH)),)
69CFLAGS += -I$(CONFIG_FC_PATH)
70endif
71endif
72
73SPDK_MAP_FILE = $(abspath $(CURDIR)/spdk_nvmf.map)
74
75include $(SPDK_ROOT_DIR)/mk/spdk.lib.mk
76