From c0ccefddbf50bb35f6fcb93d99a31ab52d4122d9 Mon Sep 17 00:00:00 2001 From: Damjan Marion Date: Sat, 25 Aug 2018 21:58:02 +0200 Subject: cmake: handle api_test_plugins in add_vpp_plugin macro Change-Id: I76a1711af0a920cce66e6dfb07d019ba505d55b7 Signed-off-by: Damjan Marion --- src/plugins/CMakeLists.txt | 30 +++++++++++------------------- 1 file changed, 11 insertions(+), 19 deletions(-) (limited to 'src/plugins/CMakeLists.txt') diff --git a/src/plugins/CMakeLists.txt b/src/plugins/CMakeLists.txt index 8ea99c7566a..877d25dd907 100644 --- a/src/plugins/CMakeLists.txt +++ b/src/plugins/CMakeLists.txt @@ -20,7 +20,7 @@ macro(add_vpp_plugin name) cmake_parse_arguments(PLUGIN "" "LINK_FLAGS" - "SOURCES;API_FILES;MULTIARCH_SOURCES;LINK_LIBRARIES" + "SOURCES;API_FILES;MULTIARCH_SOURCES;LINK_LIBRARIES;API_TEST_SOURCES" ${ARGN} ) set(plugin_name ${name}_plugin) @@ -43,27 +43,19 @@ macro(add_vpp_plugin name) if(PLUGIN_LINK_FLAGS) set_target_properties(${plugin_name} PROPERTIES LINK_FLAGS "${PLUGIN_LINK_FLAGS}") endif() + if(PLUGIN_API_TEST_SOURCES) + set(test_plugin_name ${name}_test_plugin) + add_library(${test_plugin_name} SHARED ${PLUGIN_API_TEST_SOURCES} ${api_headers}) + add_dependencies(${test_plugin_name} api_headers) + set_target_properties(${test_plugin_name} PROPERTIES + PREFIX "" + LIBRARY_OUTPUT_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/vpp_api_test_plugins) + install(TARGETS ${test_plugin_name} DESTINATION lib/vpp_api_test_plugins COMPONENT + plugins) + endif() install(TARGETS ${plugin_name} DESTINATION lib/vpp_plugins COMPONENT plugins) endmacro() -macro(add_vpp_api_test_plugin plugin_name) - set(api_headers) - foreach(f ${ARGN}) - if(${f} MATCHES ".*\.api$") - vpp_generate_api_header(${f} plugins) - list(APPEND api_headers ${f}.h) - endif() - endforeach() - add_library(${plugin_name} SHARED ${ARGN} ${api_headers}) - add_dependencies(${plugin_name} api_headers) - set_target_properties(${plugin_name} PROPERTIES PREFIX "") - set_target_properties(${plugin_name} PROPERTIES - PREFIX "" - LIBRARY_OUTPUT_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}//vpp_api_test_plugins) - install(TARGETS ${plugin_name} DESTINATION lib/vpp_api_test_plugins COMPONENT - plugins) -endmacro() - ############################################################################## # find and add all plugin subdirs ############################################################################ -- cgit 1.2.3-korg