Sync with desktop-base
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
TARGET_DIR = usr/share/icons/desktop-base
|
||||
TARGET_DIR_SCALABLE = $(TARGET_DIR)/scalable/emblems
|
||||
# Generic folder for alternatives
|
||||
TARGET_VENDOR = usr/share/icons/vendor
|
||||
# TODO remove installing to _legacy early in bullseye cycle
|
||||
TARGET_DIR_LEGACY = usr/share/icons/hicolor
|
||||
TARGET_DIR_SCALABLE_LEGACY = $(TARGET_DIR_LEGACY)/scalable/emblems
|
||||
|
||||
.PHONY: build clean install
|
||||
|
||||
EMBLEMS = $(basename $(wildcard *.svg))
|
||||
$(info Emblems: '$(EMBLEMS)')
|
||||
# TODO remove installing to _legacy early in bullseye cycle
|
||||
RESOLUTIONS := 64 128 256
|
||||
$(info Resolutions: '$(RESOLUTIONS)')
|
||||
RESOLUTIONS_LEGACY := 16 22 32 36 48 64 128 256
|
||||
$(info Legacy Resolutions: '$(RESOLUTIONS_LEGACY)')
|
||||
|
||||
# The build: target should depend on all PNGs to generate
|
||||
$(info $(foreach SVG,$(EMBLEMS),$(foreach RES,$(RESOLUTIONS_LEGACY),$(SVG)-$(RES)x$(RES).png)))
|
||||
build: $(foreach SVG,$(EMBLEMS),$(foreach RES,$(RESOLUTIONS_LEGACY),$(SVG)-$(RES)x$(RES).png))
|
||||
|
||||
# Dynamically add rules for PNG generation for each resolution, for each emblem file
|
||||
define SVG_TO_PNG_RULE
|
||||
$1-$2x$2.png: $1.svg
|
||||
rsvg-convert $$< -w $2 -h $2 -o $$@.raw
|
||||
optipng $$@.raw -out $$@
|
||||
endef
|
||||
$(foreach EMBLEM,$(EMBLEMS),$(foreach RES,$(RESOLUTIONS_LEGACY),$(eval $(call SVG_TO_PNG_RULE,$(EMBLEM),$(RES)))))
|
||||
|
||||
clean:
|
||||
rm -f *.png.raw
|
||||
rm -f *.png
|
||||
|
||||
install:
|
||||
# Install PNG icons for each resolution
|
||||
for RES in $(RESOLUTIONS) ; do \
|
||||
EMBLEMS_DIR=$(DESTDIR)/$(TARGET_DIR)/$${RES}x$${RES}/emblems ; \
|
||||
install -d $${EMBLEMS_DIR} ; \
|
||||
for EMBLEM in $(EMBLEMS) ; do \
|
||||
PNG_SOURCE=$${EMBLEM}-$${RES}x$${RES}.png ; \
|
||||
$(INSTALL_DATA) $${PNG_SOURCE} $${EMBLEMS_DIR}/$${EMBLEM}.png ; \
|
||||
done ; \
|
||||
done
|
||||
# Install SVG emblems in the scalable emblems dir
|
||||
for EMBLEM in $(EMBLEMS) ; do \
|
||||
EMBLEMS_DIR=$(DESTDIR)/$(TARGET_DIR_SCALABLE) ; \
|
||||
install -d $${EMBLEMS_DIR} ; \
|
||||
$(INSTALL_DATA) $${EMBLEM}.svg $${EMBLEMS_DIR}/ ; \
|
||||
done
|
||||
for EMBLEM in $(EMBLEMS) ; do \
|
||||
EMBLEMS_DIR=$(DESTDIR)/$(TARGET_DIR_SCALABLE_LEGACY) ; \
|
||||
install -d $${EMBLEMS_DIR} ; \
|
||||
$(INSTALL_DATA) $${EMBLEM}.svg $${EMBLEMS_DIR}/ ; \
|
||||
$(INSTALL_DATA) $${EMBLEM}.icon $${EMBLEMS_DIR}/ ; \
|
||||
done
|
||||
|
||||
include ../Makefile.inc
|
||||
Reference in New Issue
Block a user