# # BSD LICENSE # # Copyright (c) Intel Corporation. # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in # the documentation and/or other materials provided with the # distribution. # * Neither the name of Intel Corporation nor the names of its # contributors may be used to endorse or promote products derived # from this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # SPDK_ROOT_DIR := $(abspath $(CURDIR)/../..) include $(SPDK_ROOT_DIR)/mk/spdk.common.mk include $(SPDK_ROOT_DIR)/mk/spdk.modules.mk APP = nvmf_tgt CFLAGS += $(DPDK_INC) # Add NVMf library directory to include path # TODO: remove this once NVMf has a public API header CFLAGS += -I$(SPDK_ROOT_DIR)/lib C_SRCS := conf.c nvmf_tgt.c SPDK_LIBS = \ $(SPDK_ROOT_DIR)/lib/nvmf/libspdk_nvmf.a \ $(SPDK_ROOT_DIR)/lib/nvme/libspdk_nvme.a \ $(SPDK_ROOT_DIR)/lib/event/libspdk_event.a \ $(SPDK_ROOT_DIR)/lib/log/libspdk_log.a \ $(SPDK_ROOT_DIR)/lib/trace/libspdk_trace.a \ $(SPDK_ROOT_DIR)/lib/conf/libspdk_conf.a \ $(SPDK_ROOT_DIR)/lib/util/libspdk_util.a \ $(SPDK_ROOT_DIR)/lib/memory/libspdk_memory.a \ $(SPDK_ROOT_DIR)/lib/bdev/libspdk_bdev.a \ $(SPDK_ROOT_DIR)/lib/copy/libspdk_copy.a \ $(SPDK_ROOT_DIR)/lib/rpc/libspdk_rpc.a \ $(SPDK_ROOT_DIR)/lib/jsonrpc/libspdk_jsonrpc.a \ $(SPDK_ROOT_DIR)/lib/json/libspdk_json.a \ $(SPDK_ROOT_DIR)/lib/event/rpc/libspdk_app_rpc.a \ $(SPDK_ROOT_DIR)/lib/log/rpc/libspdk_log_rpc.a \ LIBS += $(BLOCKDEV_MODULES_LINKER_ARGS) \ $(COPY_MODULES_LINKER_ARGS) LIBS += $(SPDK_LIBS) $(PCIACCESS_LIB) ifeq ($(CONFIG_RDMA),y) LIBS += -libverbs -lrdmacm endif LIBS += $(DPDK_LIB) all : $(APP) $(APP) : $(OBJS) $(SPDK_LIBS) $(BLOCKDEV_MODULES) $(LINKER_MODULES) $(LINK_C) clean : $(CLEAN_C) $(APP) include $(SPDK_ROOT_DIR)/mk/spdk.deps.mk