mirror of
https://github.com/Ylianst/MeshCentral.git
synced 2025-01-02 10:33:19 -05:00
43 lines
1.3 KiB
Makefile
43 lines
1.3 KiB
Makefile
BROWSER_SIZES := 16 24 32 48 64
|
|
#ANDROID_SIZES := 72 96 144 192
|
|
# FIXME: The ICO is limited to 8 icons due to a Chrome bug:
|
|
# https://bugs.chromium.org/p/chromium/issues/detail?id=1381393
|
|
ANDROID_SIZES := 96 144 192
|
|
WEB_ICON_SIZES := $(BROWSER_SIZES) $(ANDROID_SIZES)
|
|
|
|
#IOS_1X_SIZES := 20 29 40 76 # No such devices exist anymore
|
|
IOS_2X_SIZES := 40 58 80 120 152 167
|
|
IOS_3X_SIZES := 60 87 120 180
|
|
ALL_IOS_SIZES := $(IOS_1X_SIZES) $(IOS_2X_SIZES) $(IOS_3X_SIZES)
|
|
|
|
ALL_ICONS := \
|
|
$(ALL_IOS_SIZES:%=novnc-ios-%.png) \
|
|
novnc.ico
|
|
|
|
all: $(ALL_ICONS)
|
|
|
|
# Our testing shows that the ICO file need to be sorted in largest to
|
|
# smallest to get the apporpriate behviour
|
|
WEB_ICON_SIZES_REVERSE := $(shell echo $(WEB_ICON_SIZES) | tr ' ' '\n' | sort -nr | tr '\n' ' ')
|
|
WEB_BASE_ICONS := $(WEB_ICON_SIZES_REVERSE:%=novnc-%.png)
|
|
.INTERMEDIATE: $(WEB_BASE_ICONS)
|
|
|
|
novnc.ico: $(WEB_BASE_ICONS)
|
|
convert $(WEB_BASE_ICONS) "$@"
|
|
|
|
# General conversion
|
|
novnc-%.png: novnc-icon.svg
|
|
convert -depth 8 -background transparent \
|
|
-size $*x$* "$(lastword $^)" "$@"
|
|
|
|
# iOS icons use their own SVG
|
|
novnc-ios-%.png: novnc-ios-icon.svg
|
|
convert -depth 8 -background transparent \
|
|
-size $*x$* "$(lastword $^)" "$@"
|
|
|
|
# The smallest sizes are generated using a different SVG
|
|
novnc-16.png novnc-24.png novnc-32.png: novnc-icon-sm.svg
|
|
|
|
clean:
|
|
rm -f *.png
|