summaryrefslogtreecommitdiff
path: root/cmake/FindDPDK.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake/FindDPDK.cmake')
-rw-r--r--cmake/FindDPDK.cmake5
1 files changed, 4 insertions, 1 deletions
diff --git a/cmake/FindDPDK.cmake b/cmake/FindDPDK.cmake
index 9938985..046a5fd 100644
--- a/cmake/FindDPDK.cmake
+++ b/cmake/FindDPDK.cmake
@@ -19,6 +19,8 @@ find_path(DPDK_INCLUDE_DIR
find_library(DPDK_LIBRARY
NAMES dpdk HINTS ${DPDK_ROOT_DIR}/lib)
+set(DPDK_LIBRARY_DIR ${DPDK_ROOT_DIR}/lib)
+
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(DPDK DEFAULT_MSG
DPDK_ROOT_DIR DPDK_INCLUDE_DIR DPDK_LIBRARY)
@@ -103,7 +105,8 @@ if(CMAKE_SYSTEM_PROCESSOR MATCHES "i686")
endif()
# Additional library
-set(DPDK_LIBRARY ${DPDK_LIBRARY} rt m dl)
+file(GLOB DPDK_LIBRARY_GEN "${DPDK_LIBRARY_DIR}/librte*.a" "${DPDK_LIBRARY_DIR}/libeth*.a")
+set(DPDK_LIBRARY -Wl,--whole-archive ${DPDK_LIBRARY_GEN} -Wl,--no-whole-archive rt m dl)
# Force Include
set(DPDK_FORCE_INCLUDE "-include ${DPDK_INCLUDE_DIR}/rte_config.h")