From e9424c7e1ca6f7f74820a47d9506121ab4f015cd Mon Sep 17 00:00:00 2001 From: Lance Hartmann Date: Fri, 10 Aug 2018 14:47:37 -0400 Subject: [PATCH] build: add build of individual shared libraries Change-Id: Ief6ba77352a0248bbc608d98a0b338f2e03ee0dc Signed-off-by: Lance Hartmann Reviewed-on: https://review.gerrithub.io/422306 Tested-by: SPDK CI Jenkins Reviewed-by: Ben Walker Reviewed-by: Jim Harris Chandler-Test-Pool: SPDK Automated Test System --- shared_lib/Makefile | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/shared_lib/Makefile b/shared_lib/Makefile index 7dd8e059e..992a1b467 100644 --- a/shared_lib/Makefile +++ b/shared_lib/Makefile @@ -84,6 +84,9 @@ LIBS += $(SOCK_MODULES_LINKER_ARGS) LIBS += $(SPDK_LIB_LINKER_ARGS) LIBS += $(ENV_LINKER_ARGS) +SEP_LINKERNAME_LIBS := $(patsubst %.a,%.so,$(SPDK_LIB_FILES) $(BLOCKDEV_MODULES_FILES) $(COPY_MODULES_FILES) $(SOCK_MODULES_FILES)) +SEP_REALNAME_LIBS := $(patsubst %.so,%.so.$(SO_SUFFIX_ALL),$(SEP_LINKERNAME_LIBS)) + comma := , $(COMBINED_SHARED_LIB): $(SPDK_LIB_FILES) $(SPDK_WHOLE_LIBS) $(BLOCKDEV_MODULES_FILES) $(COPY_MODULES_FILES) $(SOCK_MODULES_FILES) $(LINKER_MODULES) $(ENV_LIBS) $(MAKEFILE_LIST) spdk.map @@ -94,14 +97,20 @@ $(COMBINED_SHARED_LIB): $(SPDK_LIB_FILES) $(SPDK_WHOLE_LIBS) $(BLOCKDEV_MODULES_ $(COMBINED_LINKERNAME_LIB) : %.so : %.so.$(SO_SUFFIX_ALL) $(BUILD_LINKERNAME_LIB) +$(SEP_REALNAME_LIBS) : %.so.$(SO_SUFFIX_ALL) : %.a spdk.map + $(call spdk_build_realname_shared_lib,$(filter %.a,$^),spdk.map) + +$(SEP_LINKERNAME_LIBS) : %.so : %.so.$(SO_SUFFIX_ALL) + $(BUILD_LINKERNAME_LIB) + .PHONY: all clean $(DIRS-y) -all: $(COMBINED_SHARED_LIB) $(COMBINED_LINKERNAME_LIB) +all: $(COMBINED_SHARED_LIB) $(COMBINED_LINKERNAME_LIB) $(SEP_REALNAME_LIBS) $(SEP_LINKERNAME_LIBS) clean: - $(CLEAN_C) $(COMBINED_SHARED_LIB) $(COMBINED_LINKERNAME_LIB) + $(CLEAN_C) $(COMBINED_SHARED_LIB) $(COMBINED_LINKERNAME_LIB) $(SEP_REALNAME_LIBS) $(SEP_LINKERNAME_LIBS) install: - $(call spdk_install_shared_libs, $(COMBINED_LINKERNAME_LIB)) + $(call spdk_install_shared_libs, $(COMBINED_LINKERNAME_LIB) $(SEP_LINKERNAME_LIBS)) include $(SPDK_ROOT_DIR)/mk/spdk.subdirs.mk