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 915B

123456789101112131415161718192021222324
  1. set(ICON_SIZES 16 22 24 32 48 64 128)
  2. find_program(CONVERT_EXECUTABLE convert)
  3. if(CONVERT_EXECUTABLE)
  4. foreach(SIZE ${ICON_SIZES})
  5. list(APPEND ICON_FILES ${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_${SIZE}.png)
  6. endforeach()
  7. add_custom_target(icons DEPENDS ${ICON_FILES})
  8. foreach(SIZE ${ICON_SIZES})
  9. if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_${SIZE}.svg)
  10. set(ICON_SRC_FILE ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_${SIZE}.svg)
  11. else()
  12. set(ICON_SRC_FILE ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_48.svg)
  13. endif()
  14. add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_${SIZE}.png
  15. COMMAND ${CONVERT_EXECUTABLE} -depth 8 -background transparent
  16. -size ${SIZE}x${SIZE} ${ICON_SRC_FILE}
  17. ${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_${SIZE}.png
  18. DEPENDS ${ICON_SRC_FILE}
  19. COMMENT "Generating icons/tigervnc_${SIZE}.png")
  20. endforeach()
  21. endif()