1# Creates targets for copying and installing qmlfiles and generating the qmltypes file for a plugin
3# export_qmlplugin(plugin version sub_path [TARGETS target1 [target2 ...]])
5# TARGETS additional install targets (eg the plugin shared object)
7# Two targets will be created:
8# - plugin-qmlfiles - Copies the qml files (*.qml, *.js, qmldir) into the shadow build folder.
9# - plugin-qmltypes - Generates the qmltypes file in the shadow build folder.
12macro(export_qmlplugin PLUGIN VERSION PLUGIN_SUBPATH)
13 set(multi_value_keywords TARGETS)
14 cmake_parse_arguments(qmlplugin "" "" "${multi_value_keywords}" ${ARGN})
22 # copy the qmldir file
23 add_custom_target(${PLUGIN}-qmlfiles ALL
24 COMMAND cp ${QMLFILES} ${CMAKE_BINARY_DIR}/plugins/${PLUGIN_SUBPATH}
28 # create the plugin.qmltypes file
29 add_custom_target(${PLUGIN}-qmltypes ALL
30 COMMAND qmlplugindump -notrelocatable ${PLUGIN} ${VERSION} ${CMAKE_BINARY_DIR}/plugins > ${CMAKE_BINARY_DIR}/plugins/${PLUGIN_SUBPATH}/plugin.qmltypes
32 add_dependencies(${PLUGIN}-qmltypes ${PLUGIN}-qmlfiles ${qmlplugin_TARGETS})
34 # install the qmldir file.
35 install(FILES ${QMLFILES}
36 DESTINATION ${SHELL_PRIVATE_LIBDIR}/qml/${PLUGIN_SUBPATH}
39 # install the qmltypes file.
40 install(FILES ${CMAKE_BINARY_DIR}/plugins/${PLUGIN_SUBPATH}/plugin.qmltypes
41 DESTINATION ${SHELL_PRIVATE_LIBDIR}/qml/${PLUGIN_SUBPATH}
44 # install the additional targets
45 install(TARGETS ${qmlplugin_TARGETS}
46 DESTINATION ${SHELL_PRIVATE_LIBDIR}/qml/${PLUGIN_SUBPATH}
48endmacro(export_qmlplugin)
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list