You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

CMakeLists.txt 2.6KB

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