diff options
Diffstat (limited to 'icons/breeze/CMakeLists.txt')
-rw-r--r-- | icons/breeze/CMakeLists.txt | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/icons/breeze/CMakeLists.txt b/icons/breeze/CMakeLists.txt new file mode 100644 index 00000000..4fac9316 --- /dev/null +++ b/icons/breeze/CMakeLists.txt | |||
@@ -0,0 +1,53 @@ | |||
1 | include(KDEInstallDirs) | ||
2 | |||
3 | set(BINARY_ICONS_RESOURCE TRUE) | ||
4 | if(BINARY_ICONS_RESOURCE) | ||
5 | find_package(Qt5 NO_MODULE REQUIRED Core) | ||
6 | add_executable(qrcAlias qrcAlias.cpp) | ||
7 | target_link_libraries(qrcAlias PUBLIC Qt5::Core) | ||
8 | |||
9 | function(generate_binary_resource target outfile) | ||
10 | set(RESOURCES_WORKING_DIR ${CMAKE_CURRENT_BINARY_DIR}/res) | ||
11 | set(RESOURCE_FILE ${RESOURCES_WORKING_DIR}/kube-${target}.qrc) | ||
12 | set(BINARY_RESOURCE_FILE ${CMAKE_CURRENT_BINARY_DIR}/kube-${target}.rcc) | ||
13 | |||
14 | get_target_property(QT_RCC_EXECUTABLE Qt5::rcc LOCATION) | ||
15 | |||
16 | file(REMOVE_RECURSE ${RESOURCES_WORKING_DIR}) | ||
17 | file(MAKE_DIRECTORY ${RESOURCES_WORKING_DIR}) | ||
18 | file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/${target}/ DESTINATION ${RESOURCES_WORKING_DIR}) | ||
19 | file(REMOVE | ||
20 | ${RESOURCE_FILE} | ||
21 | ${RESOURCE_FILE}.depends | ||
22 | ${RESOURCES_WORKING_DIR}/.gitignore | ||
23 | ${RESOURCES_WORKING_DIR}/CMakeLists.txt | ||
24 | ) | ||
25 | |||
26 | add_custom_command(OUTPUT ${RESOURCE_FILE} | ||
27 | COMMAND ${QT_RCC_EXECUTABLE} --project -o ${CMAKE_CURRENT_BINARY_DIR}/tmp.qrc | ||
28 | COMMAND $<TARGET_FILE:qrcAlias> -i ${CMAKE_CURRENT_BINARY_DIR}/tmp.qrc -o ${RESOURCE_FILE} | ||
29 | WORKING_DIRECTORY ${RESOURCES_WORKING_DIR} | ||
30 | ) | ||
31 | add_custom_command(OUTPUT ${BINARY_RESOURCE_FILE} | ||
32 | COMMAND ${QT_RCC_EXECUTABLE} --binary | ||
33 | -o ${BINARY_RESOURCE_FILE} | ||
34 | ${RESOURCE_FILE} | ||
35 | DEPENDS ${RESOURCE_FILE} | ||
36 | WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} | ||
37 | ) | ||
38 | |||
39 | add_custom_target(kube-${target}-rcc ALL DEPENDS ${BINARY_RESOURCE_FILE}) | ||
40 | |||
41 | set(${outfile} ${BINARY_RESOURCE_FILE} PARENT_SCOPE) | ||
42 | endfunction() | ||
43 | |||
44 | generate_binary_resource(icons binary_resource) | ||
45 | install(FILES ${binary_resource} DESTINATION ${KDE_INSTALL_DATADIR}/kube) | ||
46 | else() | ||
47 | install(DIRECTORY | ||
48 | icons/places | ||
49 | icons/actions | ||
50 | icons/mimetypes | ||
51 | DESTINATION ${KDE_INSTALL_FULL_ICONDIR}/kube) | ||
52 | install(FILES icons/index.theme DESTINATION ${KDE_INSTALL_FULL_ICONDIR}/kube) | ||
53 | endif() | ||