Enable DPDK shared object build with SPDK shared object build.
When building SPDK with shared objects, we should also build the DPDK submodule shared libraries. This will make it much easier for peole to link their applications against a dpdk shared library if the DPDK shared libraries installed on their system don't have all the symbols that SPDK needs. Also, add a linker argument to DPDK to specify that it should look in the dpdk subdirectory when linking libraries. Note: this change will not work until the default config options in the DPDK submodule are updated. Change-Id: I9546df7b84952eb20fe1ac98e3b3bbd0fcbda3a7 Signed-off-by: Seth Howell <seth.howell@intel.com> Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/463028 Reviewed-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com> Reviewed-by: Jan Kryl <jan.kryl@mayadata.io> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
This commit is contained in:
parent
23707ccf38
commit
9cc7b31e58
@ -40,11 +40,12 @@ DPDK_FRAMEWORK = n
|
||||
DPDK_OPTS =
|
||||
DPDK_CFLAGS =
|
||||
|
||||
# We commented out this build option in our DPDK fork, but DPDK makefiles check
|
||||
# its value specifically against 'n' to set linking flags properly. Set it here
|
||||
# to 'n' for now.
|
||||
# TODO allow DPDK to be built as shared library
|
||||
ifeq ($(CONFIG_SHARED),y)
|
||||
DPDK_OPTS += CONFIG_RTE_BUILD_SHARED_LIB=y
|
||||
DPDK_LDFLAGS+= -rpath $(SPDK_ROOT_DIR)/dpdk/build/lib
|
||||
else
|
||||
DPDK_OPTS += CONFIG_RTE_BUILD_SHARED_LIB=n
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_CRYPTO),y)
|
||||
DPDK_FRAMEWORK = y
|
||||
|
Loading…
x
Reference in New Issue
Block a user