misc: move part of vpe apis to vlibmemory
[vpp.git] / src / vpp / CMakeLists.txt
index 999b280..32f702d 100644 (file)
 # Generate vpp/app/version.h
 ##############################################################################
 add_custom_command(
-  OUTPUT ${CMAKE_BINARY_DIR}/include/vpp/app/version.h
+  OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/app/version.h
   WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
   COMMAND mkdir
-  ARGS -p ${CMAKE_BINARY_DIR}/include/vpp/app
+  ARGS -p ${CMAKE_CURRENT_BINARY_DIR}/app
   COMMAND scripts/generate_version_h
-  ARGS ${CMAKE_BINARY_DIR}/include/vpp/app/version.h
+  ARGS ${CMAKE_CURRENT_BINARY_DIR}/app/version.h
   COMMENT "Generating VPP version.h"
 )
 
 add_custom_target(vpp_version_h
-  DEPENDS ${CMAKE_BINARY_DIR}/include/vpp/app/version.h
+  DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/app/version.h
 )
 
 ##############################################################################
@@ -33,19 +33,25 @@ add_custom_target(vpp_version_h
 ##############################################################################
 option(VPP_API_TEST_BUILTIN "Use builtin VPP API test." ON)
 
+configure_file(
+  ${CMAKE_SOURCE_DIR}/vpp/vnet/config.h.in
+  ${CMAKE_CURRENT_BINARY_DIR}/vnet/config.h
+)
+
 set(VPP_API_FILES
+  api/vpe_types.api
   api/vpe.api
-  stats/stats.api
-  oam/oam.api
 )
 
-vpp_add_api_files(vpp ${VPP_API_FILES})
+vpp_add_api_files(vpp core vpp ${VPP_API_FILES})
 
 foreach(file ${VPP_API_FILES})
   get_filename_component(dir ${file} DIRECTORY)
   install(
     FILES ${CMAKE_CURRENT_BINARY_DIR}/${file}.h
-    DESTINATION include/vpp/${dir}
+    ${CMAKE_CURRENT_BINARY_DIR}/${file}_enum.h
+    ${CMAKE_CURRENT_BINARY_DIR}/${file}_types.h
+    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/vpp/${dir}
     COMPONENT vpp-dev
   )
 endforeach()
@@ -54,13 +60,11 @@ set(VPP_SOURCES
   vnet/main.c
   app/vpe_cli.c
   app/version.c
-  oam/oam.c
-  oam/oam_api.c
-  stats/stats.c
   stats/stat_segment.c
+  stats/stat_segment_provider.c
   api/api.c
   api/json_format.c
-  api/custom_dump.c
+  api/types.c
 )
 
 if(VPP_API_TEST_BUILTIN)
@@ -68,6 +72,7 @@ if(VPP_API_TEST_BUILTIN)
     api/api_format.c
     api/api_main.c
     api/plugin.c
+    api/types.c
   )
   add_definitions(-DVPP_API_TEST_BUILTIN=1)
 endif()
@@ -82,6 +87,8 @@ add_vpp_executable(vpp
 add_vpp_headers(vpp
   api/vpe_msg_enum.h
   api/vpe_all_api_h.h
+  stats/stat_segment.h
+  stats/stat_segment_shared.h
 )
 
 ##############################################################################
@@ -104,13 +111,6 @@ add_vpp_executable(vpp_get_metrics
 ##############################################################################
 # stats binaries
 ##############################################################################
-add_vpp_executable(summary_stats_client
-  SOURCES api/summary_stats_client.c
-  LINK_LIBRARIES vppinfra svm vlibmemoryclient
-  DEPENDS api_headers
-  NO_INSTALL
-)
-
 add_vpp_executable(vpp_get_stats
   SOURCES app/vpp_get_stats.c
   LINK_LIBRARIES vppapiclient vppinfra
@@ -122,3 +122,31 @@ add_vpp_executable(vpp_prometheus_export
   LINK_LIBRARIES vppapiclient vppinfra svm vlibmemoryclient
   DEPENDS api_headers
 )
+
+##############################################################################
+# vppmem_preload library
+##############################################################################
+add_vpp_library(vppmem_preload
+  SOURCES mem/mem.c
+  LINK_LIBRARIES vppinfra
+)
+
+install(FILES conf/startup.conf DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/vpp COMPONENT vpp)
+install(FILES conf/80-vpp.conf DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/sysctl.d COMPONENT vpp)
+
+##############################################################################
+# VAT2 plugins
+##############################################################################
+add_vpp_test_library(vpp
+  ${VPP_API_FILES}
+)
+
+##############################################################################
+# minimal interactive startup.conf  - only if not present
+##############################################################################
+if(NOT EXISTS ${CMAKE_BINARY_DIR}/startup.conf)
+  configure_file(
+    ${CMAKE_CURRENT_SOURCE_DIR}/conf/startup.conf.in
+    ${CMAKE_BINARY_DIR}/startup.conf
+  )
+endif()