summaryrefslogtreecommitdiffstats
path: root/icons/breeze/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'icons/breeze/CMakeLists.txt')
-rw-r--r--icons/breeze/CMakeLists.txt53
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 @@
1include(KDEInstallDirs)
2
3set(BINARY_ICONS_RESOURCE TRUE)
4if(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)
46else()
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)
53endif()