summaryrefslogtreecommitdiff
path: root/recipes/openmoko2/openmoko-icon-theme-standard2-qvga_svn.bb
blob: e394547fd5b9964dc386f628c78296346af1f27d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
DESCRIPTION = "Standard Gtk+ icon theme for the Openmoko framework, QVGA edition"
SECTION = "openmoko/base"
DEPENDS = "imagemagick-native librsvg-native"
PV = "0.1.0+svnr${SRCREV}"
PR = "r2"

EXCLUDE_FROM_WORLD = "1"

inherit openmoko2

SRC_URI = "svn://svn.openmoko.org/trunk/src/target/OM-2007.2/artwork/;module=icons;proto=http"
S = "${WORKDIR}/icons"

pkg_postinst_${PN} () {
    if [ "x$D" != "x" ]; then
        exit 1
    fi
    gtk-update-icon-cache -q /usr/share/icons/openmoko-standard
}

do_configure_prepend () {
	cd ${S}
	#
	# don't include 36x36 and 128x128 icons, 32x32 and 48x48 stock icons
	#
	sed -i -e "/\(36\|128\)/d" -e "/\(32\|48\)\/stock/d" configure.ac
	cd openmoko-standard
	sed -i -e "s/\(36x36\|128x128\) //g" Makefile.am
	sed -i "/^SUBDIRS=/s/ stock//" {32x32,48x48}/Makefile.am 
	#
	# rescale stock icons to 22x22
	#
	for png in $(ls */stock/*.png | sed "s,.*/,," | sort | uniq); do
		svg=scalable/stock/$(basename $png .png).svg
		out=22x22/stock/$png
		if [ -f $svg ]; then
			#
			# if there are vector graphics, rerender
			#
			rsvg -w 22 -h 22 $svg $out
		else
			#
			# otherwise rescale biggest existing bitmap
			#
			png=$(echo */stock/$png | sed "s/.* //")
			convert -scale 22x22 $png $out
		fi
	done
	#
	# register the rescaled icons with automake
	#
	cd 22x22/stock
	sed -i "/^icons_DATA/s/=.*/= $(echo *.png)/" Makefile.am
	cd ${S}
}

PACKAGE_ARCH = "all"