From df8eddfae66e3ead8ed0707cb5a6bdc97a319d75 Mon Sep 17 00:00:00 2001 From: Pierre Ossman Date: Wed, 11 May 2022 12:39:58 +0200 Subject: Automatically generate Windows icon file --- media/CMakeLists.txt | 22 +++++++++++++++++++--- media/icons/tigervnc.ico | Bin 0 -> 46788 bytes media/tigervnc.ico | Bin 25214 -> 0 bytes 3 files changed, 19 insertions(+), 3 deletions(-) create mode 100644 media/icons/tigervnc.ico delete mode 100755 media/tigervnc.ico (limited to 'media') diff --git a/media/CMakeLists.txt b/media/CMakeLists.txt index 4bed4b6b..248e2213 100644 --- a/media/CMakeLists.txt +++ b/media/CMakeLists.txt @@ -1,14 +1,16 @@ -set(ICON_SIZES 16 22 24 32 48 64 128) +set(LINUX_ICON_SIZES 16 22 24 32 48 64 128) +set(WINDOWS_ICON_SIZES 16 24 32 48 256) find_program(CONVERT_EXECUTABLE convert) if(CONVERT_EXECUTABLE) - foreach(SIZE ${ICON_SIZES}) + set(ICON_FILES icons/tigervnc.ico) + foreach(SIZE ${LINUX_ICON_SIZES}) list(APPEND ICON_FILES ${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_${SIZE}.png) endforeach() add_custom_target(icons DEPENDS ${ICON_FILES}) - foreach(SIZE ${ICON_SIZES}) + foreach(SIZE ${LINUX_ICON_SIZES} ${WINDOWS_ICON_SIZES}) if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_${SIZE}.svg) set(ICON_SRC_FILE ${CMAKE_CURRENT_SOURCE_DIR}/tigervnc_${SIZE}.svg) else() @@ -21,4 +23,18 @@ if(CONVERT_EXECUTABLE) DEPENDS ${ICON_SRC_FILE} COMMENT "Generating icons/tigervnc_${SIZE}.png") endforeach() + + foreach(SIZE ${WINDOWS_ICON_SIZES}) + if(${SIZE} LESS_EQUAL 32) + list(APPEND ICO_LEGACY \\\( ${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_${SIZE}.png -depth 4 -colors 16 \\\)) + list(APPEND ICO_LEGACY \\\( ${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_${SIZE}.png -depth 8 -colors 256 \\\)) + endif() + list(APPEND ICO_NORMAL \\\( ${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_${SIZE}.png \\\)) + list(APPEND ICO_DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc_${SIZE}.png) + endforeach() + add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc.ico + COMMAND ${CONVERT_EXECUTABLE} ${ICO_LEGACY} ${ICO_NORMAL} + ${CMAKE_CURRENT_SOURCE_DIR}/icons/tigervnc.ico + DEPENDS ${ICO_DEPENDS} + COMMENT "Generating icons/tigervnc.ico") endif() diff --git a/media/icons/tigervnc.ico b/media/icons/tigervnc.ico new file mode 100644 index 00000000..97aa02a2 Binary files /dev/null and b/media/icons/tigervnc.ico differ diff --git a/media/tigervnc.ico b/media/tigervnc.ico deleted file mode 100755 index b86033b7..00000000 Binary files a/media/tigervnc.ico and /dev/null differ -- cgit v1.2.3