crypto: Enabling IOMMU DMA translation table update for QAT card
[vpp.git] / src / plugins / dpdk / CMakeLists.txt
index 9655daf..91cf236 100644 (file)
@@ -25,7 +25,7 @@ else()
     ##############################################################################
     # Find lib and include files
     ##############################################################################
-    find_path(DPDK_INCLUDE_DIR PATH_SUFFIXES dpdk NAMES rte_config.h)
+    vpp_find_path(DPDK_INCLUDE_DIR PATH_SUFFIXES dpdk NAMES rte_config.h)
     vpp_plugin_find_library(dpdk DPDK_LIB "libdpdk.a")
 
     if (NOT DPDK_INCLUDE_DIR)
@@ -96,7 +96,7 @@ else()
     ##############################################################################
     # Mellanox libraries
     ##############################################################################
-    if(DPDK_RTE_LIBRTE_MLX4_PMD OR DPDK_RTE_LIBRTE_MLX5_PMD)
+    if(DPDK_RTE_NET_MLX4 OR DPDK_RTE_NET_MLX5)
       if (DPDK_RTE_IBVERBS_LINK_DLOPEN)
         message(STATUS "DPDK depends on libmnl (Mellanox PMD requirement)")
         vpp_plugin_find_library(dpdk MNL_LIB "mnl")
@@ -117,24 +117,30 @@ endif()
 # DPDK plugin
 ##############################################################################
 
-if (${DPDK_VERSION} VERSION_GREATER_EQUAL "20.8.0")
-  set(DPDK_CRYPTODEV_RAW_SOURCE cryptodev/cryptodev_raw_data_path.c)
-endif ()
+if(OPENSSL_FOUND)
+  include_directories(${OPENSSL_INCLUDE_DIR})
+
+  set(DPDK_CRYPTODEV_OP_SOURCE cryptodev/cryptodev_op_data_path.c)
+  set(DPDK_CRYPTODEV_SOURCE cryptodev/cryptodev.c)
+  if (${DPDK_VERSION} VERSION_GREATER_EQUAL "20.8.0")
+    set(DPDK_CRYPTODEV_RAW_SOURCE cryptodev/cryptodev_raw_data_path.c)
+  endif()
+endif()
 
 add_vpp_plugin(dpdk
   SOURCES
   buffer.c
   main.c
-  thread.c
   device/cli.c
   device/common.c
   device/device.c
+  device/driver.c
   device/flow.c
   device/format.c
   device/init.c
   device/node.c
-  cryptodev/cryptodev_op_data_path.c
-  cryptodev/cryptodev.c
+  ${DPDK_CRYPTODEV_OP_SOURCE}
+  ${DPDK_CRYPTODEV_SOURCE}
   ${DPDK_CRYPTODEV_RAW_SOURCE}
 
   MULTIARCH_SOURCES
@@ -151,6 +157,9 @@ add_vpp_plugin(dpdk
   LINK_LIBRARIES
   ${DPDK_LINK_LIBRARIES}
 
+  LINK_LIBRARIES
+  ${OPENSSL_LIBRARIES}
+
   COMPONENT
   vpp-plugin-dpdk
 )