vlib: move pci api types from vnet/pci to vlib/pci
[vpp.git] / src / vlib / CMakeLists.txt
index 59c725f..c2a0d63 100644 (file)
@@ -19,7 +19,27 @@ configure_file(
   ${CMAKE_SOURCE_DIR}/vlib/config.h.in
   ${CMAKE_BINARY_DIR}/vlib/config.h
 )
-install(FILES ${CMAKE_BINARY_DIR}/vlib/config.h DESTINATION include/vlib)
+install(
+  FILES ${CMAKE_BINARY_DIR}/vlib/config.h
+  DESTINATION include/vlib
+  COMPONENT vpp-dev
+)
+
+##############################################################################
+# Find lib and include files
+##############################################################################
+message(STATUS "Looking for libuuid")
+find_path(UUID_INCLUDE_DIR NAMES uuid/uuid.h)
+find_library(UUID_LIB NAMES uuid)
+
+if(UUID_INCLUDE_DIR AND UUID_LIB)
+  include_directories(${UUID_INCLUDE_DIR})
+  set(VMBUS_SOURCE linux/vmbus.c)
+  set(VMBUS_LIBS uuid)
+  message(STATUS "Found uuid in ${UUID_INCLUDE_DIR}")
+else()
+  message(WARNING "-- libuuid not found - vmbus support disabled")
+endif()
 
 ##############################################################################
 # vlib shared library
@@ -27,23 +47,26 @@ install(FILES ${CMAKE_BINARY_DIR}/vlib/config.h DESTINATION include/vlib)
 add_vpp_library(vlib
   SOURCES
   buffer.c
-  buffer_serialize.c
   cli.c
   counter.c
+  drop.c
   error.c
   format.c
+  handoff_trace.c
   i2c.c
   init.c
   linux/pci.c
-  linux/physmem.c
   linux/vfio.c
   log.c
   main.c
-  mc.c
   node.c
   node_cli.c
   node_format.c
   pci/pci.c
+  pci/pci_types_api.c
+  physmem.c
+  punt.c
+  punt_node.c
   threads.c
   threads_cli.c
   trace.c
@@ -51,17 +74,22 @@ add_vpp_library(vlib
   unix/cli.c
   unix/input.c
   unix/main.c
-  unix/mc_socket.c
   unix/plugin.c
   unix/util.c
+  vmbus/vmbus.c
+  ${VMBUS_SOURCE}
+
+  MULTIARCH_SOURCES
+  drop.c
+  punt_node.c
 
   INSTALL_HEADERS
   buffer_funcs.h
   buffer.h
   buffer_node.h
-  cli_funcs.h
   cli.h
   counter.h
+  counter_types.h
   defs.h
   error_funcs.h
   error.h
@@ -72,13 +100,14 @@ add_vpp_library(vlib
   linux/vfio.h
   log.h
   main.h
-  mc.h
   node_funcs.h
   node.h
   pci/pci_config.h
   pci/pci.h
+  pci/pci_types_api.h
   physmem_funcs.h
   physmem.h
+  punt.h
   threads.h
   trace_funcs.h
   trace.h
@@ -87,6 +116,12 @@ add_vpp_library(vlib
   unix/plugin.h
   unix/unix.h
   vlib.h
+  vmbus/vmbus.h
+
+  API_FILES
+  pci/pci_types.api
+
+  LINK_LIBRARIES vppinfra svm ${VMBUS_LIBS} ${CMAKE_DL_LIBS}
 
-  LINK_LIBRARIES vppinfra svm ${CMAKE_DL_LIBS}
+  DEPENDS api_headers
 )