blob: d2cb912c59e754d09690a49ab761fa326f56a23d [file] [log] [blame]
Pierre Ossman64127702012-03-27 12:33:36 +00001set(ICON_FILES
2 icons/tigervnc_16.png
3 icons/tigervnc_22.png
4 icons/tigervnc_24.png
5 icons/tigervnc_32.png
6 icons/tigervnc_48.png)
7
8find_program(CONVERT_EXECUTABLE convert)
9
10if(CONVERT_EXECUTABLE)
11 add_custom_target(icons-target ALL DEPENDS ${ICON_FILES})
12
13 if(UNIX AND NOT APPLE)
14 foreach(SIZE 16 22 24 32 48)
15 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/icons/tigervnc_${SIZE}.png
16 DESTINATION ${DATA_DIR}/icons/hicolor/${SIZE}x${SIZE}/apps
17 RENAME tigervnc.png)
18 endforeach()
19 install(FILES icons/tigervnc.svg
20 DESTINATION ${DATA_DIR}/icons/hicolor/scalable/apps)
21 endif()
22endif()
23
24add_custom_command(OUTPUT icons COMMAND mkdir icons)
25
26add_custom_command(OUTPUT icons/tigervnc_16.png
27 COMMAND ${CONVERT_EXECUTABLE} -background transparent
28 ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_16.svg icons/tigervnc_16.png
29 DEPENDS icons ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_16.svg
30 COMMENT "Generating icons/tigervnc_16.png")
31
32add_custom_command(OUTPUT icons/tigervnc_22.png
33 COMMAND ${CONVERT_EXECUTABLE} -size 22x22 xc:none -gravity center -background transparent
34 ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_20.svg -composite icons/tigervnc_22.png
35 DEPENDS icons ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_20.svg
36 COMMENT "Generating icons/tigervnc_22.png")
37
38add_custom_command(OUTPUT icons/tigervnc_24.png
39 COMMAND ${CONVERT_EXECUTABLE} -size 24x24 xc:none -gravity center -background transparent
40 ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_20.svg -composite icons/tigervnc_24.png
41 DEPENDS icons ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_20.svg
42 COMMENT "Generating icons/tigervnc_24.png")
43
44add_custom_command(OUTPUT icons/tigervnc_32.png
45 COMMAND ${CONVERT_EXECUTABLE} -size 32x32 xc:none -gravity center -background transparent
46 ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_28.svg -composite icons/tigervnc_32.png
47 DEPENDS icons ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_28.svg
48 COMMENT "Generating icons/tigervnc_32.png")
49
50add_custom_command(OUTPUT icons/tigervnc_48.png
51 COMMAND ${CONVERT_EXECUTABLE} -size 48x48 xc:none -gravity center -background transparent
52 ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_42.svg -composite icons/tigervnc_48.png
53 DEPENDS icons ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_42.svg
54 COMMENT "Generating icons/tigervnc_48.png")