summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLaurentiu Palcu <laurentiu.palcu@intel.com>2012-09-18 18:56:04 +0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-12-06 12:31:09 +0000
commitdec1e7fdcee5980202c36cb43597fc9110103312 (patch)
tree932a950bd98bec90777045f02ed13b022aa60a61
parentfd401f292ebca8d905783ef15b9b347f80d6f899 (diff)
downloadpoky-dec1e7fdcee5980202c36cb43597fc9110103312.tar.gz
gtk-icon-cache: run the icon generation at rootfs time
This change will allow for the icon cache generation at rootfs time and only once, at the end. So, even though there will be many packages depending on gtk+, the icon cache generation will be done once. Hopefully, this will lower the target's first boot time significantly by using the power of the host machine to generate the cache. (From OE-Core rev: 74e34f6828771095a25d2c2de89f468b33e359f7) Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/gtk-icon-cache.bbclass18
1 files changed, 14 insertions, 4 deletions
diff --git a/meta/classes/gtk-icon-cache.bbclass b/meta/classes/gtk-icon-cache.bbclass
index 01fb2f3946..f87a30fd5b 100644
--- a/meta/classes/gtk-icon-cache.bbclass
+++ b/meta/classes/gtk-icon-cache.bbclass
@@ -1,12 +1,22 @@
1FILES_${PN} += "${datadir}/icons/hicolor" 1FILES_${PN} += "${datadir}/icons/hicolor"
2 2
3DEPENDS += "${@['hicolor-icon-theme', '']['${BPN}' == 'hicolor-icon-theme']}" 3DEPENDS += "${@['hicolor-icon-theme', '']['${BPN}' == 'hicolor-icon-theme']} gtk+-native"
4 4
5# This could run on the host as icon cache files are architecture independent,
6# but there is no gtk-update-icon-cache built natively.
7gtk_icon_cache_postinst() { 5gtk_icon_cache_postinst() {
8if [ "x$D" != "x" ]; then 6if [ "x$D" != "x" ]; then
9 exit 1 7 if [ ! -f $INTERCEPT_DIR/update_icon_cache ]; then
8 cat << "EOF" > $INTERCEPT_DIR/update_icon_cache
9#!/bin/sh
10
11# update native pixbuf loaders
12gdk-pixbuf-query-loaders --update-cache
13
14for icondir in $D/usr/share/icons/*/ ; do
15 gtk-update-icon-cache -fqt $icondir
16done
17EOF
18 fi
19 exit 0
10fi 20fi
11 21
12# Update the pixbuf loaders in case they haven't been registered yet 22# Update the pixbuf loaders in case they haven't been registered yet