X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvpp%2FCMakeLists.txt;h=37f57ac78232f87a0cba82a445cb03f7a148b976;hb=a6b1a7d809e746325fe712b9de9ff086e55772dd;hp=78ca867abffb8b63b996538b4f3f0eb6cfb96ca6;hpb=2fee16787ed0d622631223567635a77e14c8c076;p=vpp.git diff --git a/src/vpp/CMakeLists.txt b/src/vpp/CMakeLists.txt index 78ca867abff..37f57ac7823 100644 --- a/src/vpp/CMakeLists.txt +++ b/src/vpp/CMakeLists.txt @@ -15,17 +15,23 @@ # 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 +) + +install( + FILES ${CMAKE_CURRENT_BINARY_DIR}/app/version.h + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/vpp/app + COMPONENT vpp-dev ) ############################################################################## @@ -33,19 +39,32 @@ 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 +) + +install( + FILES ${CMAKE_CURRENT_BINARY_DIR}/vnet/config.h + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/vpp/vnet + COMPONENT vpp-dev +) + 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() @@ -53,13 +72,9 @@ 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 api/api.c api/json_format.c - api/custom_dump.c + api/types.c ) if(VPP_API_TEST_BUILTIN) @@ -67,6 +82,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() @@ -78,11 +94,6 @@ add_vpp_executable(vpp DEPENDS vpp_version_h api_headers ) -add_vpp_headers(vpp - api/vpe_msg_enum.h - api/vpe_all_api_h.h -) - ############################################################################## # vppctl binary ############################################################################## @@ -103,18 +114,10 @@ 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 svm vlibmemoryclient + LINK_LIBRARIES vppapiclient vppinfra DEPENDS api_headers - NO_INSTALL ) add_vpp_executable(vpp_prometheus_export @@ -122,3 +125,35 @@ 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} +) + +add_vat_test_library(vpp + api/api_test.c +) + +############################################################################## +# 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()