Skip to content

Commit

Permalink
Avoid duplicating list of icon sizes
Browse files Browse the repository at this point in the history
  • Loading branch information
CendioOssman committed May 11, 2022
1 parent 28fcd03 commit 379ad82
Showing 1 changed file with 13 additions and 41 deletions.
54 changes: 13 additions & 41 deletions media/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,47 +1,19 @@
set(ICON_FILES
${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_16.png
${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_22.png
${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_24.png
${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_32.png
${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_48.png)
set(ICON_SIZES 16 22 24 32 48)

find_program(CONVERT_EXECUTABLE convert)

if(CONVERT_EXECUTABLE)
foreach(SIZE ${ICON_SIZES})
list(APPEND ICON_FILES ${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_${SIZE}.png)
endforeach()
add_custom_target(icons DEPENDS ${ICON_FILES})
endif()

add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_16.png
COMMAND ${CONVERT_EXECUTABLE} -depth 8 -background transparent
${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_16.svg
${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_16.png
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_16.svg
COMMENT "Generating icons/tigervnc_16.png")

add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_22.png
COMMAND ${CONVERT_EXECUTABLE} -depth 8 -background transparent
${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_22.svg
${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_22.png
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_22.svg
COMMENT "Generating icons/tigervnc_22.png")

add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_24.png
COMMAND ${CONVERT_EXECUTABLE} -depth 8 -background transparent
${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_24.svg
${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_24.png
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_24.svg
COMMENT "Generating icons/tigervnc_24.png")

add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_32.png
COMMAND ${CONVERT_EXECUTABLE} -depth 8 -background transparent
${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_32.svg
${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_32.png
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_32.svg
COMMENT "Generating icons/tigervnc_32.png")

add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_48.png
COMMAND ${CONVERT_EXECUTABLE} -depth 8 -background transparent
${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_48.svg
${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_48.png
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_48.svg
COMMENT "Generating icons/tigervnc_48.png")
foreach(SIZE ${ICON_SIZES})
add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_${SIZE}.png
COMMAND ${CONVERT_EXECUTABLE} -depth 8 -background transparent
${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_${SIZE}.svg
${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_${SIZE}.png
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_${SIZE}.svg
COMMENT "Generating icons/tigervnc_${SIZE}.png")
endforeach()
endif()

0 comments on commit 379ad82

Please sign in to comment.