Priority: optional
Maintainer: Bdale Garbee <bdale@gag.com>
Uploaders: Keith Packard <keithp@keithp.com>
-Build-Depends: debhelper (>= 7), autoconf, automake, gawk, libreadline-dev, libusb-1.0-0-dev, nickle, cc1111, xsltproc, fop, xmlto, docbook-xml, docbook-xsl, swig, default-jdk, freetts, libtool, libjfreechart-java, libbluetooth-dev, pkg-config, libelf-dev, libbluetooth-dev, libssl-dev, gcc-arm-none-eabi, icoutils, librsvg2-bin
+Build-Depends: debhelper (>= 7), autoconf, automake, gawk, libreadline-dev, libusb-1.0-0-dev, nickle, cc1111, xsltproc, fop, xmlto, docbook-xml, docbook-xsl, swig, default-jdk, freetts, libtool, libjfreechart-java, libbluetooth-dev, pkg-config, libelf-dev, libbluetooth-dev, libssl-dev, gcc-arm-none-eabi, icoutils, librsvg2-bin, icnsutils
Standards-Version: 3.9.5
Homepage: http://altusmetrum.org/AltOS
Vcs-Git: git://git.gag.com/fw/altos
--- /dev/null
+altus-metrum-*.png
+micropeak-*.png
+telegps-*.png
+*.ico
+*.icns
+*.build
-RES=16 32 48 64 128 256
+LINUX_RES=16 32 48 64 128 256 512
+MAC_RES=16 32 128 256 512
+WIN_RES=16 24 32 48 64 72 96 128 180 256
+RES=$(shell echo $(LINUX_RES) $(MAC_RES) $(WIN_RES) | awk '{ for (i = 1; i <= NF; i++) printf("%s\n", $$i); }' | sort -n -u)
AM_FILES=$(shell for i in $(RES); do echo altus-metrum-$$i.png; done)
MP_FILES=$(shell for i in $(RES); do echo micropeak-$$i.png; done)
TG_FILES=$(shell for i in $(RES); do echo telegps-$$i.png; done)
+MAC_TG_FILES=$(shell for i in $(MAC_RES); do echo telegps-$$i.png; done)
+MAC_MP_FILES=$(shell for i in $(MAC_RES); do echo micropeak-$$i.png; done)
+MAC_AM_FILES=$(shell for i in $(MAC_RES); do echo altus-metrum-$$i.png; done)
ICO_FILES=altus-metrum.ico micro-peak.ico telegps.ico
+ICNS_FILES=AltosUIIcon.icns TeleGPS.icns MicroPeak.icns
icondir = $(datadir)/icons/hicolor/scalable/apps
EXTRA_DIST = $(icon_DATA) $(AM_FILES) $(MP_FILES) $(TG_FILES)
-all-local: $(ICO_FILES)
+res:
+ echo $(RES)
-$(TG_FILES): telegps.svg
- for i in $(RES); do rsvg-convert -w $$i -o telegps-$$i.png telegps.svg; done
+all-local: $(ICO_FILES) $(ICNS_FILES)
+
+clean-local:
+ $(RM) $(TG_FILES) $(MP_FILES) $(ICO_FILES) $(ICNS_FILES) *.build
+
+$(AM_FILES): altusmetrum.build
+
+altusmetrum.build: altusmetrum.svg
+ for i in $(RES); do ./make-png altusmetrum.svg $$i altus-metrum-$$i.png; done && touch $@
+
+$(TG_FILES): telegps.build
+
+telegps.build: telegps.svg
+ for i in $(RES); do ./make-png telegps.svg $$i telegps-$$i.png; done && touch $@
+
+$(MP_FILES): micropeak.build
+
+micropeak.build: micropeak.svg
+ for i in $(RES); do ./make-png micropeak.svg $$i micropeak-$$i.png; done && touch $@
#clean-local:
# $(RM) -f $(ICO_FILES)
telegps.ico: $(TG_FILES)
icotool -c -o $@ $(TG_FILES)
+
+AltosUIIcon.icns: $(MAC_AM_FILES)
+ png2icns $@ $(MAC_AM_FILES)
+
+TeleGPS.icns: $(MAC_TG_FILES)
+ png2icns $@ $(MAC_TG_FILES)
+
+MicroPeak.icns: $(MAC_MP_FILES)
+ png2icns $@ $(MAC_MP_FILES)
--- /dev/null
+#!/bin/sh
+
+case $# in
+3)
+ ;;
+*)
+ echo "Usage: $0 <input.svg> <size> <output.png>" 1>&2
+ exit 1
+ ;;
+esac
+
+SVG=$1
+SIZE=$2
+PNG=$3
+
+SHADOW=$(($SIZE / 16))
+IMAGE=$(($SIZE - $SHADOW))
+
+OPACITY=80
+BLUR=$(($SHADOW / 4))
+SHIFT=$(($SHADOW - $BLUR))
+
+echo SHADOW $SHADOW IMAGE $IMAGE OPACITY $OPACITY SHIFT $SHIFT BLUR $BLUR
+
+TMP=image-$$.png
+
+trap "rm $TMP" 0 1 15
+
+rsvg-convert -w $IMAGE -h $IMAGE -o $TMP $SVG
+
+convert $TMP \
+ \( +clone -background black -shadow ${OPACITY}x${BLUR}+${SHIFT}+${SHIFT} \) \
+ +swap -background none -layers merge -crop ${SIZE}x${SIZE}+0+0 +repage $PNG
+