From 19230378c8309e8c24ee81ae255de4b3d80b24f2 Mon Sep 17 00:00:00 2001 From: Kefu Chai Date: Sun, 6 May 2018 14:32:45 +0800 Subject: [PATCH] cmake: specify missing settings for dpdk * after upgrading to gcc-8, seems dpdk requires more settings to compile. in which, CONFIG_RTE_MAX_VFIO_GROUPS=64 is copied from config/common_base. * librte_bus_pci.a depends on librte_pci.a, so reorder the libraries in DPDK_LIBRARIES. Signed-off-by: Kefu Chai --- cmake/modules/BuildDPDK.cmake | 4 ++-- cmake/modules/patch-dpdk-conf.sh | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/cmake/modules/BuildDPDK.cmake b/cmake/modules/BuildDPDK.cmake index 03d141edfaf..ea608577336 100644 --- a/cmake/modules/BuildDPDK.cmake +++ b/cmake/modules/BuildDPDK.cmake @@ -71,7 +71,7 @@ function(do_build_dpdk dpdk_dir) BUILD_IN_SOURCE 1 INSTALL_COMMAND "true") ExternalProject_Add_Step(dpdk-ext patch-config - COMMAND ${CMAKE_MODULE_PATH}/patch-dpdk-conf.sh ${dpdk_dir} ${machine} + COMMAND ${CMAKE_MODULE_PATH}/patch-dpdk-conf.sh ${dpdk_dir} ${machine} ${arch} DEPENDEES configure DEPENDERS build) # easier to adjust the config @@ -86,7 +86,7 @@ macro(build_dpdk) # target file(MAKE_DIRECTORY ${DPDK_INCLUDE_DIR}) foreach(c - pci bus_pci + bus_pci pci eal mempool mempool_ring mempool_stack ring) add_library(dpdk::${c} STATIC IMPORTED) diff --git a/cmake/modules/patch-dpdk-conf.sh b/cmake/modules/patch-dpdk-conf.sh index 57c2da7932d..8da0ac293f0 100755 --- a/cmake/modules/patch-dpdk-conf.sh +++ b/cmake/modules/patch-dpdk-conf.sh @@ -15,8 +15,12 @@ conf=$1/.config shift machine=$1 shift +arch=$1 +shift setconf CONFIG_RTE_MACHINE "${machine}" +setconf CONFIG_RTE_ARCH "${arch}" + # Disable experimental features setconf CONFIG_RTE_NEXT_ABI n setconf CONFIG_RTE_LIBRTE_MBUF_OFFLOAD n @@ -38,6 +42,7 @@ setconf CONFIG_RTE_LIBRTE_VHOST_NUMA n setconf CONFIG_RTE_LIBRTE_VMXNET3_PMD n setconf CONFIG_RTE_LIBRTE_PMD_VHOST n setconf CONFIG_RTE_APP_EVENTDEV n +setconf CONFIG_RTE_MAX_VFIO_GROUPS 64 # no test setconf CONFIG_RTE_APP_TEST n -- 2.39.5