find_path(DPDK_INCLUDE_DIR PATH_SUFFIXES dpdk NAMES rte_config.h)
find_library(DPDK_LIB NAMES libdpdk.a)
+if (NOT DPDK_INCLUDE_DIR)
+ message(WARNING "-- DPDK not found - dpdk_plugin disabled")
+ return()
+endif()
+
##############################################################################
# Find DPDK Version
##############################################################################
#endif
#ifdef RTE_LIBRTE_PMD_AESNI_GCM
printf(\"RTE_LIBRTE_PMD_AESNI_GCM=%u\\n\", RTE_LIBRTE_PMD_AESNI_GCM);
+#endif
+#ifdef RTE_LIBRTE_MLX4_PMD
+ printf(\"RTE_LIBRTE_MLX4_PMD=%u\\n\", RTE_LIBRTE_MLX4_PMD);
+#endif
+#ifdef RTE_LIBRTE_MLX5_PMD
+ printf(\"RTE_LIBRTE_MLX5_PMD=%u\\n\", RTE_LIBRTE_MLX5_PMD);
+#ifdef RTE_LIBRTE_MLX5_DLOPEN_DEPS
+ printf(\"RTE_LIBRTE_MLX5_DLOPEN_DEPS=%u\\n\", RTE_LIBRTE_MLX5_DLOPEN_DEPS);
+#endif
#endif
return 0;
}
set(DPDK_LINK_FLAGS "${DPDK_LINK_FLAGS} -Wl,--exclude-libs,libIPSec_MB.a,-l:libIPSec_MB.a")
message(STATUS "DPDK depends on IPSec MB library")
endif()
+ if(DPDK_RTE_LIBRTE_MLX4_PMD OR DPDK_RTE_LIBRTE_MLX5_PMD)
+ if (DPDK_RTE_LIBRTE_MLX5_DLOPEN_DEPS)
+ set(DPDK_LINK_FLAGS "${DPDK_LINK_FLAGS} -Wl,-lmnl")
+ message(STATUS "DPDK depends on libmnl (Mellanox PMD requirement)")
+ else()
+ set(DPDK_LINK_FLAGS "${DPDK_LINK_FLAGS} -Wl,-lmnl,-libverbs,-lmlx5")
+ message(STATUS "DPDK depends on libmnl, libibverbs, libmlx5 (Mellanox PMD requirement)")
+ endif()
+ endif()
set(DPDK_LINK_FLAGS "${DPDK_LINK_FLAGS} -Wl,-lnuma")
add_vpp_plugin(dpdk
SOURCES