diff options
author | Damjan Marion <damarion@cisco.com> | 2018-08-25 21:58:02 +0200 |
---|---|---|
committer | Damjan Marion <damarion@cisco.com> | 2018-08-25 22:09:58 +0200 |
commit | c0ccefddbf50bb35f6fcb93d99a31ab52d4122d9 (patch) | |
tree | 0872ef341d9ef52ea40cf7ef817d9384b91815c7 /src/plugins/CMakeLists.txt | |
parent | b0f5bad55ba76f9a0a32399ed8871399de57954d (diff) |
cmake: handle api_test_plugins in add_vpp_plugin macro
Change-Id: I76a1711af0a920cce66e6dfb07d019ba505d55b7
Signed-off-by: Damjan Marion <damarion@cisco.com>
Diffstat (limited to 'src/plugins/CMakeLists.txt')
-rw-r--r-- | src/plugins/CMakeLists.txt | 30 |
1 files changed, 11 insertions, 19 deletions
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 ############################################################################ |