]> source.dussan.org Git - tigervnc.git/commitdiff
Avoid duplicating list of icon sizes
authorPierre Ossman <ossman@cendio.se>
Wed, 11 May 2022 08:00:01 +0000 (10:00 +0200)
committerPierre Ossman <ossman@cendio.se>
Wed, 11 May 2022 11:05:47 +0000 (13:05 +0200)
media/CMakeLists.txt

index e6eb1a176d569b4d3d442bce58df7a3ee7be671e..487e9d00dd86542b750f2ec43d2d78ff9db6903e 100644 (file)
@@ -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()