]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson: link required dpdk components for seastar
authorYingxin Cheng <yingxin.cheng@intel.com>
Wed, 6 Nov 2019 09:27:39 +0000 (17:27 +0800)
committerYingxin Cheng <yingxin.cheng@intel.com>
Wed, 13 Nov 2019 07:53:31 +0000 (15:53 +0800)
see https://github.com/scylladb/seastar/blob/
809b3ef875e7edb7c56643812dc8347ff9a82cee/cmake/Finddpdk.cmake#L60-L85

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
cmake/modules/BuildDPDK.cmake
cmake/modules/Finddpdk.cmake

index cfcfc20ae1e36ded7cd1cb415725f851a97303ea..fbe42b62e0dfd11298082d58ad1fc00fec50760e 100644 (file)
@@ -108,17 +108,38 @@ function(do_export_dpdk dpdk_dir)
     endif()
   endif()
 
-  foreach(c
-      bus_pci
-      cmdline
-      eal
-      ethdev
-      kvargs
-      mbuf
-      mempool
-      mempool_ring
-      pci
-      ring)
+  list(APPEND dpdk_components
+    bus_pci
+    cmdline
+    eal
+    ethdev
+    kvargs
+    mbuf
+    mempool
+    mempool_ring
+    pci
+    ring)
+  if(Seastar_DPDK)
+    list(APPEND dpdk_components
+      bus_vdev
+      cfgfile
+      hash
+      net
+      pmd_bnxt
+      pmd_cxgbe
+      pmd_e1000
+      pmd_ena
+      pmd_enic
+      pmd_i40e
+      pmd_ixgbe
+      pmd_nfp
+      pmd_qede
+      pmd_ring
+      pmd_sfc_efx
+      timer)
+  endif()
+
+  foreach(c ${dpdk_components})
     add_library(dpdk::${c} STATIC IMPORTED)
     add_dependencies(dpdk::${c} dpdk-ext)
     set(dpdk_${c}_LIBRARY
index 751e1c4594d696a0a504a0f4bdc3e44e351be7db..f7b7a2d4b2fe772fa256be8410810694fbceb086 100644 (file)
@@ -38,6 +38,8 @@ endif()
 
 set(components
   bus_pci
+  bus_vdev
+  cfgfile
   cmdline
   eal
   ethdev
@@ -47,15 +49,25 @@ set(components
   mempool
   mempool_ring
   mempool_stack
+  net
   pci
   pmd_af_packet
+  pmd_bnxt
   pmd_bond
+  pmd_cxgbe
+  pmd_e1000
+  pmd_ena
+  pmd_enic
   pmd_i40e
   pmd_ixgbe
   pmd_mlx5
+  pmd_nfp
+  pmd_qede
   pmd_ring
+  pmd_sfc_efx
   pmd_vmxnet3_uio
-  ring)
+  ring
+  timer)
 
 # for collecting dpdk library targets, it will be used when defining dpdk::dpdk
 set(_dpdk_libs)