From 5616e0880d71b336b04f1890b8338951ed6dccdf Mon Sep 17 00:00:00 2001 From: Jim Harris Date: Fri, 18 Nov 2016 10:49:28 -0700 Subject: [PATCH] build: create a common mk file for nvme library tests and examples Signed-off-by: Jim Harris Change-Id: Ief0f99b7f014cf905d08e2c0cd9dc99653bd0bb8 --- examples/nvme/arbitration/Makefile | 24 +----------- examples/nvme/fio_plugin/Makefile | 27 +------------- examples/nvme/hello_world/Makefile | 24 +----------- examples/nvme/identify/Makefile | 24 +----------- examples/nvme/nvme_manage/Makefile | 24 +----------- examples/nvme/perf/Makefile | 24 +----------- examples/nvme/reserve/Makefile | 24 +----------- mk/nvme.libtest.mk | 60 ++++++++++++++++++++++++++++++ test/lib/nvme/aer/Makefile | 24 +----------- test/lib/nvme/e2edp/Makefile | 24 +----------- test/lib/nvme/overhead/Makefile | 24 +----------- test/lib/nvme/reset/Makefile | 24 +----------- test/lib/nvme/sgl/Makefile | 24 +----------- 13 files changed, 73 insertions(+), 278 deletions(-) create mode 100644 mk/nvme.libtest.mk diff --git a/examples/nvme/arbitration/Makefile b/examples/nvme/arbitration/Makefile index 5e16241df..3affeb800 100644 --- a/examples/nvme/arbitration/Makefile +++ b/examples/nvme/arbitration/Makefile @@ -36,26 +36,4 @@ include $(SPDK_ROOT_DIR)/mk/spdk.common.mk APP = arbitration -C_SRCS := arbitration.c - -CFLAGS += -I. $(ENV_CFLAGS) - -SPDK_LIBS += $(SPDK_ROOT_DIR)/build/lib/libspdk_nvme.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_util.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_log.a \ - -ifeq ($(CONFIG_RDMA), y) -LIBS += -libverbs -lrdmacm -endif - -LIBS += $(SPDK_LIBS) $(ENV_LINKER_ARGS) - -all : $(APP) - -$(APP) : $(OBJS) $(SPDK_LIBS) $(ENV_LIBS) - $(LINK_C) - -clean : - $(CLEAN_C) $(APP) - -include $(SPDK_ROOT_DIR)/mk/spdk.deps.mk +include $(SPDK_ROOT_DIR)/mk/nvme.libtest.mk diff --git a/examples/nvme/fio_plugin/Makefile b/examples/nvme/fio_plugin/Makefile index 44d0999bf..9e40b27ac 100644 --- a/examples/nvme/fio_plugin/Makefile +++ b/examples/nvme/fio_plugin/Makefile @@ -38,30 +38,7 @@ include $(SPDK_ROOT_DIR)/mk/spdk.common.mk APP := fio_plugin -C_SRCS := fio_plugin.c - -CFLAGS += -I. $(ENV_CFLAGS) -I$(FIO_SOURCE_DIR) - +CFLAGS += -I$(FIO_SOURCE_DIR) LDFLAGS += -shared -rdynamic -SPDK_LIBS += $(SPDK_ROOT_DIR)/build/lib/libspdk_nvme.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_util.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_log.a \ - -ifeq ($(CONFIG_RDMA), y) -LIBS += -libverbs -lrdmacm -endif - -LIBS += $(SPDK_LIBS) $(ENV_LINKER_ARGS) - -all : $(APP) - -$(APP) : $(OBJS) $(SPDK_LIBS) $(ENV_LIBS) - $(LINK_C) - -clean : - $(CLEAN_C) $(APP) - -.PHONY: all clean - -include $(SPDK_ROOT_DIR)/mk/spdk.deps.mk +include $(SPDK_ROOT_DIR)/mk/nvme.libtest.mk diff --git a/examples/nvme/hello_world/Makefile b/examples/nvme/hello_world/Makefile index 9799fc23f..890d761a6 100644 --- a/examples/nvme/hello_world/Makefile +++ b/examples/nvme/hello_world/Makefile @@ -36,26 +36,4 @@ include $(SPDK_ROOT_DIR)/mk/spdk.common.mk APP = hello_world -C_SRCS := hello_world.c - -CFLAGS += -I. $(ENV_CFLAGS) - -SPDK_LIBS += $(SPDK_ROOT_DIR)/build/lib/libspdk_nvme.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_util.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_log.a \ - -ifeq ($(CONFIG_RDMA), y) -LIBS += -libverbs -lrdmacm -endif - -LIBS += $(SPDK_LIBS) $(ENV_LINKER_ARGS) - -all : $(APP) - -$(APP) : $(OBJS) $(SPDK_LIBS) $(ENV_LIBS) - $(LINK_C) - -clean : - $(CLEAN_C) $(APP) - -include $(SPDK_ROOT_DIR)/mk/spdk.deps.mk +include $(SPDK_ROOT_DIR)/mk/nvme.libtest.mk diff --git a/examples/nvme/identify/Makefile b/examples/nvme/identify/Makefile index d9e675a66..0aa5e52b8 100644 --- a/examples/nvme/identify/Makefile +++ b/examples/nvme/identify/Makefile @@ -36,26 +36,4 @@ include $(SPDK_ROOT_DIR)/mk/spdk.common.mk APP = identify -C_SRCS := identify.c - -CFLAGS += -I. $(ENV_CFLAGS) - -SPDK_LIBS += $(SPDK_ROOT_DIR)/build/lib/libspdk_nvme.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_util.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_log.a \ - -ifeq ($(CONFIG_RDMA), y) -LIBS += -libverbs -lrdmacm -endif - -LIBS += $(SPDK_LIBS) $(ENV_LINKER_ARGS) - -all : $(APP) - -$(APP) : $(OBJS) $(SPDK_LIBS) $(ENV_LIBS) - $(LINK_C) - -clean : - $(CLEAN_C) $(APP) - -include $(SPDK_ROOT_DIR)/mk/spdk.deps.mk +include $(SPDK_ROOT_DIR)/mk/nvme.libtest.mk diff --git a/examples/nvme/nvme_manage/Makefile b/examples/nvme/nvme_manage/Makefile index 5749662ef..4f49872e7 100644 --- a/examples/nvme/nvme_manage/Makefile +++ b/examples/nvme/nvme_manage/Makefile @@ -36,26 +36,4 @@ include $(SPDK_ROOT_DIR)/mk/spdk.common.mk APP = nvme_manage -C_SRCS := nvme_manage.c - -CFLAGS += -I. $(ENV_CFLAGS) - -SPDK_LIBS += $(SPDK_ROOT_DIR)/build/lib/libspdk_nvme.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_util.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_log.a \ - -ifeq ($(CONFIG_RDMA), y) -LIBS += -libverbs -lrdmacm -endif - -LIBS += $(SPDK_LIBS) $(ENV_LINKER_ARGS) - -all : $(APP) - -$(APP) : $(OBJS) $(SPDK_LIBS) $(ENV_LIBS) - $(LINK_C) - -clean : - $(CLEAN_C) $(APP) - -include $(SPDK_ROOT_DIR)/mk/spdk.deps.mk +include $(SPDK_ROOT_DIR)/mk/nvme.libtest.mk diff --git a/examples/nvme/perf/Makefile b/examples/nvme/perf/Makefile index 028767673..21d5c8f04 100644 --- a/examples/nvme/perf/Makefile +++ b/examples/nvme/perf/Makefile @@ -36,31 +36,9 @@ include $(SPDK_ROOT_DIR)/mk/spdk.common.mk APP = perf -C_SRCS := perf.c - -CFLAGS += -I. $(ENV_CFLAGS) - -SPDK_LIBS += $(SPDK_ROOT_DIR)/build/lib/libspdk_nvme.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_util.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_log.a \ - -ifeq ($(CONFIG_RDMA), y) -LIBS += -libverbs -lrdmacm -endif - -LIBS += $(SPDK_LIBS) $(ENV_LINKER_ARGS) - ifeq ($(OS),Linux) LIBS += -laio CFLAGS += -DHAVE_LIBAIO endif -all : $(APP) - -$(APP) : $(OBJS) $(SPDK_LIBS) $(ENV_LIBS) - $(LINK_C) - -clean : - $(CLEAN_C) $(APP) - -include $(SPDK_ROOT_DIR)/mk/spdk.deps.mk +include $(SPDK_ROOT_DIR)/mk/nvme.libtest.mk diff --git a/examples/nvme/reserve/Makefile b/examples/nvme/reserve/Makefile index 74bfbad7e..315faef08 100644 --- a/examples/nvme/reserve/Makefile +++ b/examples/nvme/reserve/Makefile @@ -36,26 +36,4 @@ include $(SPDK_ROOT_DIR)/mk/spdk.common.mk APP = reserve -C_SRCS := reserve.c - -CFLAGS += -I. $(ENV_CFLAGS) - -SPDK_LIBS += $(SPDK_ROOT_DIR)/build/lib/libspdk_nvme.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_util.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_log.a \ - -ifeq ($(CONFIG_RDMA), y) -LIBS += -libverbs -lrdmacm -endif - -LIBS += $(SPDK_LIBS) $(ENV_LINKER_ARGS) - -all : $(APP) - -$(APP) : $(OBJS) $(SPDK_LIBS) $(ENV_LIBS) - $(LINK_C) - -clean : - $(CLEAN_C) $(APP) - -include $(SPDK_ROOT_DIR)/mk/spdk.deps.mk +include $(SPDK_ROOT_DIR)/mk/nvme.libtest.mk diff --git a/mk/nvme.libtest.mk b/mk/nvme.libtest.mk new file mode 100644 index 000000000..ce61c29bd --- /dev/null +++ b/mk/nvme.libtest.mk @@ -0,0 +1,60 @@ +# +# 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. +# + +NVME_DIR := $(SPDK_ROOT_DIR)/lib/nvme + +include $(SPDK_ROOT_DIR)/mk/spdk.common.mk + +C_SRCS = $(APP:%=%.c) + +CFLAGS += -I. $(ENV_CFLAGS) + +SPDK_LIBS += $(SPDK_ROOT_DIR)/build/lib/libspdk_nvme.a \ + $(SPDK_ROOT_DIR)/build/lib/libspdk_util.a \ + $(SPDK_ROOT_DIR)/build/lib/libspdk_log.a + +ifeq ($(CONFIG_RDMA),y) +LIBS += -libverbs -lrdmacm +endif + +LIBS += $(SPDK_LIBS) $(ENV_LINKER_ARGS) + +all: $(APP) + +$(APP) : $(OBJS) $(SPDK_LIBS) $(ENV_LIBS) + $(LINK_C) + +clean: + $(CLEAN_C) $(APP) + +include $(SPDK_ROOT_DIR)/mk/spdk.deps.mk diff --git a/test/lib/nvme/aer/Makefile b/test/lib/nvme/aer/Makefile index 2838d5aa0..7624693c9 100644 --- a/test/lib/nvme/aer/Makefile +++ b/test/lib/nvme/aer/Makefile @@ -36,26 +36,4 @@ include $(SPDK_ROOT_DIR)/mk/spdk.common.mk APP = aer -C_SRCS := aer.c - -CFLAGS += -I. $(ENV_CFLAGS) - -SPDK_LIBS += $(SPDK_ROOT_DIR)/build/lib/libspdk_nvme.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_util.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_log.a \ - -ifeq ($(CONFIG_RDMA), y) -LIBS += -libverbs -lrdmacm -endif - -LIBS += $(SPDK_LIBS) $(ENV_LINKER_ARGS) - -all : $(APP) - -$(APP) : $(OBJS) $(SPDK_LIBS) $(ENV_LIBS) - $(LINK_C) - -clean : - $(CLEAN_C) $(APP) - -include $(SPDK_ROOT_DIR)/mk/spdk.deps.mk +include $(SPDK_ROOT_DIR)/mk/nvme.libtest.mk diff --git a/test/lib/nvme/e2edp/Makefile b/test/lib/nvme/e2edp/Makefile index 9bc26d06d..a4986e540 100644 --- a/test/lib/nvme/e2edp/Makefile +++ b/test/lib/nvme/e2edp/Makefile @@ -36,26 +36,4 @@ include $(SPDK_ROOT_DIR)/mk/spdk.common.mk APP = nvme_dp -C_SRCS := nvme_dp.c - -CFLAGS += -I. $(ENV_CFLAGS) - -SPDK_LIBS += $(SPDK_ROOT_DIR)/build/lib/libspdk_nvme.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_util.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_log.a \ - -ifeq ($(CONFIG_RDMA), y) -LIBS += -libverbs -lrdmacm -endif - -LIBS += $(SPDK_LIBS) $(ENV_LINKER_ARGS) - -all : $(APP) - -$(APP) : $(OBJS) $(SPDK_LIBS) $(ENV_LIBS) - $(LINK_C) - -clean : - $(CLEAN_C) $(APP) - -include $(SPDK_ROOT_DIR)/mk/spdk.deps.mk +include $(SPDK_ROOT_DIR)/mk/nvme.libtest.mk diff --git a/test/lib/nvme/overhead/Makefile b/test/lib/nvme/overhead/Makefile index 1ffb03e22..8d0c1e00e 100644 --- a/test/lib/nvme/overhead/Makefile +++ b/test/lib/nvme/overhead/Makefile @@ -36,31 +36,9 @@ include $(SPDK_ROOT_DIR)/mk/spdk.common.mk APP = overhead -C_SRCS := overhead.c - -CFLAGS += -I. $(ENV_CFLAGS) - -SPDK_LIBS += $(SPDK_ROOT_DIR)/build/lib/libspdk_nvme.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_util.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_log.a \ - -ifeq ($(CONFIG_RDMA), y) -LIBS += -libverbs -lrdmacm -endif - -LIBS += $(SPDK_LIBS) $(ENV_LINKER_ARGS) - ifeq ($(OS),Linux) LIBS += -laio CFLAGS += -DHAVE_LIBAIO endif -all : $(APP) - -$(APP) : $(OBJS) $(SPDK_LIBS) $(ENV_LIBS) - $(LINK_C) - -clean : - $(CLEAN_C) $(APP) - -include $(SPDK_ROOT_DIR)/mk/spdk.deps.mk +include $(SPDK_ROOT_DIR)/mk/nvme.libtest.mk diff --git a/test/lib/nvme/reset/Makefile b/test/lib/nvme/reset/Makefile index 77ae5baf9..ebe318f8d 100644 --- a/test/lib/nvme/reset/Makefile +++ b/test/lib/nvme/reset/Makefile @@ -36,26 +36,4 @@ include $(SPDK_ROOT_DIR)/mk/spdk.common.mk APP = reset -C_SRCS := reset.c - -CFLAGS += -I. $(ENV_CFLAGS) - -SPDK_LIBS += $(SPDK_ROOT_DIR)/build/lib/libspdk_nvme.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_util.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_log.a \ - -ifeq ($(CONFIG_RDMA), y) -LIBS += -libverbs -lrdmacm -endif - -LIBS += $(SPDK_LIBS) $(ENV_LINKER_ARGS) - -all : $(APP) - -$(APP) : $(OBJS) $(SPDK_LIBS) $(ENV_LIBS) - $(LINK_C) - -clean : - $(CLEAN_C) $(APP) - -include $(SPDK_ROOT_DIR)/mk/spdk.deps.mk +include $(SPDK_ROOT_DIR)/mk/nvme.libtest.mk diff --git a/test/lib/nvme/sgl/Makefile b/test/lib/nvme/sgl/Makefile index 7a7e8ffe1..223df2d49 100644 --- a/test/lib/nvme/sgl/Makefile +++ b/test/lib/nvme/sgl/Makefile @@ -36,26 +36,4 @@ include $(SPDK_ROOT_DIR)/mk/spdk.common.mk APP = sgl -C_SRCS := sgl.c - -CFLAGS += -I. $(ENV_CFLAGS) - -SPDK_LIBS += $(SPDK_ROOT_DIR)/build/lib/libspdk_nvme.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_util.a \ - $(SPDK_ROOT_DIR)/build/lib/libspdk_log.a \ - -ifeq ($(CONFIG_RDMA), y) -LIBS += -libverbs -lrdmacm -endif - -LIBS += $(SPDK_LIBS) $(ENV_LINKER_ARGS) - -all : $(APP) - -$(APP) : $(OBJS) $(SPDK_LIBS) $(ENV_LIBS) - $(LINK_C) - -clean : - $(CLEAN_C) $(APP) - -include $(SPDK_ROOT_DIR)/mk/spdk.deps.mk +include $(SPDK_ROOT_DIR)/mk/nvme.libtest.mk