Use the macro in ECM to install kdeconnect plugins
This commit is contained in:
parent
5fcc0c9694
commit
b099bdd723
1 changed files with 2 additions and 29 deletions
|
@ -3,33 +3,6 @@
|
||||||
|
|
||||||
|
|
||||||
# Thoroughly inspired in kdevplatform_add_plugin
|
# Thoroughly inspired in kdevplatform_add_plugin
|
||||||
function(kdeconnect_add_plugin plugin)
|
function(kdeconnect_add_plugin)
|
||||||
set(options )
|
kcoreaddons_add_plugin(${ARGN} INSTALL_NAMESPACE kdeconnect)
|
||||||
set(oneValueArgs JSON)
|
|
||||||
set(multiValueArgs SOURCES)
|
|
||||||
cmake_parse_arguments(KC_ADD_PLUGIN "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
|
||||||
|
|
||||||
get_filename_component(json "${KC_ADD_PLUGIN_JSON}" REALPATH)
|
|
||||||
|
|
||||||
# ensure we recompile the corresponding object files when the json file changes
|
|
||||||
set(dependent_sources )
|
|
||||||
foreach(source ${KC_ADD_PLUGIN_SOURCES})
|
|
||||||
get_filename_component(source "${source}" REALPATH)
|
|
||||||
if(EXISTS "${source}")
|
|
||||||
file(STRINGS "${source}" match REGEX "K_PLUGIN_FACTORY_WITH_JSON")
|
|
||||||
if(match)
|
|
||||||
list(APPEND dependent_sources "${source}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
if(NOT dependent_sources)
|
|
||||||
# fallback to all sources - better safe than sorry...
|
|
||||||
set(dependent_sources ${KC_ADD_PLUGIN_SOURCES})
|
|
||||||
endif()
|
|
||||||
set_property(SOURCE ${dependent_sources} APPEND PROPERTY OBJECT_DEPENDS ${json})
|
|
||||||
|
|
||||||
add_library(${plugin} MODULE ${KC_ADD_PLUGIN_SOURCES})
|
|
||||||
set_property(TARGET ${plugin} APPEND PROPERTY AUTOGEN_TARGET_DEPENDS ${json})
|
|
||||||
|
|
||||||
install(TARGETS ${plugin} DESTINATION ${PLUGIN_INSTALL_DIR}/kdeconnect)
|
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
Loading…
Reference in a new issue