Add options to link with external DPDK tree
By uncommenting following lines in the build-data/platforms/vpp.mk VPP links nicely with packaged DPDK 2.2 distributed with Ubuntu 16.04 LTS. vpp_uses_external_dpdk = yes vpp_dpdk_inc_dir = /usr/include/dpdk vpp_dpdk_lib_dir = /usr/lib vpp_dpdk_shared_lib = yes Change-Id: Id5b7d95bac6aa60341933b92e86d949a9abf1a5d Signed-off-by: Damjan Marion <damarion@cisco.com>
This commit is contained in:

committed by
Gerrit Code Review

parent
aa04a0ff8e
commit
28e3db9dd6
@ -36,7 +36,12 @@ sample-plugin_image_include = echo $(arch_lib_dir)/vlib_plugins
|
||||
|
||||
ifneq ($($(PLATFORM)_uses_dpdk),no)
|
||||
sample-plugin_configure_args = --with-dpdk
|
||||
ifeq ($($(PLATFORM)_uses_external_dpdk),yes)
|
||||
sample-plugin_CPPFLAGS += -I$($(PLATFORM)_dpdk_inc_dir)
|
||||
sample-plugin_LDFLAGS += -L$($(PLATFORM)_dpdk_lib_dir)
|
||||
else
|
||||
sample-plugin_configure_depend += dpdk-install
|
||||
sample-plugin_CPPFLAGS += $(call installed_includes_fn, dpdk)
|
||||
sample-plugin_LDFLAGS += $(call installed_libs_fn, dpdk)
|
||||
endif
|
||||
endif
|
||||
|
@ -4,8 +4,13 @@ vlib_CPPFLAGS = $(call installed_includes_fn, vppinfra)
|
||||
vlib_LDFLAGS = $(call installed_libs_fn, vppinfra)
|
||||
|
||||
ifneq ($($(PLATFORM)_uses_dpdk),no)
|
||||
vlib_configure_depend += dpdk-install
|
||||
vlib_configure_args += --with-dpdk
|
||||
ifeq ($($(PLATFORM)_uses_external_dpdk),yes)
|
||||
vlib_CPPFLAGS += -I$($(PLATFORM)_dpdk_inc_dir)
|
||||
vlib_LDFLAGS += -L$($(PLATFORM)_dpdk_lib_dir)
|
||||
else
|
||||
vlib_configure_depend += dpdk-install
|
||||
vlib_CPPFLAGS += $(call installed_includes_fn, dpdk)
|
||||
vlib_LDFLAGS += $(call installed_libs_fn, dpdk)
|
||||
endif
|
||||
endif
|
||||
|
@ -22,7 +22,12 @@ vnet_LDFLAGS = $(call installed_libs_fn, \
|
||||
vnet_configure_args += $(vnet_configure_args_$(PLATFORM))
|
||||
|
||||
ifneq ($($(PLATFORM)_uses_dpdk),no)
|
||||
ifeq ($($(PLATFORM)_uses_external_dpdk),yes)
|
||||
vnet_CPPFLAGS += -I$($(PLATFORM)_dpdk_inc_dir)
|
||||
vnet_LDFLAGS += -L$($(PLATFORM)_dpdk_lib_dir)
|
||||
else
|
||||
vnet_configure_depend += dpdk-install
|
||||
vnet_CPPFLAGS += $(call installed_includes_fn, dpdk)
|
||||
vnet_LDFLAGS += $(call installed_libs_fn, dpdk)
|
||||
endif
|
||||
endif
|
||||
|
@ -24,7 +24,12 @@ vpp-api-test_LDFLAGS = $(call installed_libs_fn, \
|
||||
|
||||
ifneq ($($(PLATFORM)_uses_dpdk),no)
|
||||
vpp-api-test_configure_args = --with-dpdk
|
||||
ifeq ($($(PLATFORM)_uses_external_dpdk),yes)
|
||||
vpp-api-test_CPPFLAGS += -I$($(PLATFORM)_dpdk_inc_dir)
|
||||
vpp-api-test_LDFLAGS += -L$($(PLATFORM)_dpdk_lib_dir)
|
||||
else
|
||||
vpp-api-test_configure_depend += dpdk-install
|
||||
vpp-api-test_CPPFLAGS += $(call installed_includes_fn, dpdk)
|
||||
vpp-api-test_LDFLAGS += $(call installed_libs_fn, dpdk)
|
||||
endif
|
||||
endif
|
||||
|
@ -6,7 +6,11 @@ vpp_configure_depend = \
|
||||
vnet-install \
|
||||
|
||||
#
|
||||
vpp_configure_args =
|
||||
ifeq ($($(PLATFORM)_dpdk_shared_lib),yes)
|
||||
vpp_configure_args = --enable-dpdk-shared
|
||||
else
|
||||
vpp_configure_args =
|
||||
endif
|
||||
|
||||
# Platform dependent configure flags
|
||||
vpp_configure_args += $(vpp_configure_args_$(PLATFORM))
|
||||
@ -29,7 +33,12 @@ vpp_LDFLAGS = $(call installed_libs_fn, \
|
||||
vnet)
|
||||
|
||||
ifneq ($($(PLATFORM)_uses_dpdk),no)
|
||||
ifeq ($($(PLATFORM)_uses_external_dpdk),yes)
|
||||
vpp_CPPFLAGS += -I$($(PLATFORM)_dpdk_inc_dir)
|
||||
vpp_LDFLAGS += -L$($(PLATFORM)_dpdk_lib_dir)
|
||||
else
|
||||
vpp_configure_depend += dpdk-install
|
||||
vpp_CPPFLAGS += $(call installed_includes_fn, dpdk)
|
||||
vpp_LDFLAGS += $(call installed_libs_fn, dpdk)
|
||||
endif
|
||||
endif
|
||||
|
@ -17,7 +17,7 @@ vpp_native_tools = vppapigen
|
||||
|
||||
vpp_uses_dpdk = yes
|
||||
|
||||
vpp_root_packages = vpp vlib vlib-api vnet svm dpdk vpp-api-test \
|
||||
vpp_root_packages = vpp vlib vlib-api vnet svm vpp-api-test \
|
||||
vpp-japi gmod
|
||||
|
||||
vpp_configure_args_vpp = --with-dpdk
|
||||
@ -26,6 +26,11 @@ vnet_configure_args_vpp = --with-dpdk
|
||||
# Set these parameters carefully. The vlib_buffer_t is 128 bytes, i.e.
|
||||
vlib_configure_args_vpp = --with-pre-data=128
|
||||
|
||||
# DPDK configuration parameters
|
||||
# vpp_uses_external_dpdk = yes
|
||||
# vpp_dpdk_inc_dir = /usr/include/dpdk
|
||||
# vpp_dpdk_lib_dir = /usr/lib
|
||||
# vpp_dpdk_shared_lib = yes
|
||||
|
||||
vpp_debug_TAG_CFLAGS = -g -O0 -DCLIB_DEBUG -DFORTIFY_SOURCE=2 -march=$(MARCH) \
|
||||
-fstack-protector-all -fPIC -Werror
|
||||
|
Reference in New Issue
Block a user