gtk-update-icon-cache-native: add

This recipe builds natively just the gtk-update-icon-cache binary that is
required to run the gtk-icon-cache.bbclass postinstall scripts.

The advantage of doing this is it means running 400 less tasks which takes four
minutes on my machine, as the alternative is building GTK+ natively (and so
libX11, freetype, fontconfig...).

(From OE-Core rev: 8265ef7f3a3598ff4535da1e5f9329fcf236f776)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Ross Burton 2013-03-04 12:52:44 +00:00 committed by Richard Purdie
parent b1a7b15941
commit f9a94af968
1 changed files with 45 additions and 0 deletions

View File

@ -0,0 +1,45 @@
SUMMARY = "gtk-update-icon-cache built natively"
DESCRIPTION = "Just gtk-update-icon-cache built from GTK+ natively, for on-host postinst script execution."
SECTION = "libs"
PROVIDES = "virtual/gtk-update-icon-cache-native"
DEPENDS = "gdk-pixbuf-native"
LICENSE = "LGPLv2 & LGPLv2+ & LGPLv2.1+"
LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
file://gtk/gtk.h;endline=25;md5=1d8dc0fccdbfa26287a271dce88af737 \
file://gdk/gdk.h;endline=25;md5=c920ce39dc88c6f06d3e7c50e08086f2 \
file://tests/testgtk.c;endline=25;md5=cb732daee1d82af7a2bf953cf3cf26f1"
SRC_URI = "http://download.gnome.org/sources/gtk+/3.4/gtk+-${PV}.tar.xz"
SRC_URI[md5sum] = "1b2cf29502a6394e8d4b30f7f5bb9131"
SRC_URI[sha256sum] = "f154e460075034da4c0ce89c320025dcd459da2a1fdf32d92a09522eaca242c7"
S = "${WORKDIR}/gtk+-${PV}"
inherit pkgconfig native
PKG_CONFIG_FOR_BUILD = "${STAGING_BINDIR_NATIVE}/pkg-config-native"
do_configure() {
# Quite ugly but defines enough to compile the tool.
if ! test -f gtk/config.h; then
echo "#define GETTEXT_PACKAGE \"gtk30\"" >> gtk/config.h
echo "#define HAVE_UNISTD_H 1" >> gtk/config.h
echo "#define HAVE_FTW_H 1" >> gtk/config.h
fi
}
do_compile() {
${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS} ${S}/gtk/updateiconcache.c \
$(${PKG_CONFIG_FOR_BUILD} --cflags --libs gdk-pixbuf-2.0) \
-o gtk-update-icon-cache
}
do_install() {
install -d ${D}${bindir}
install -m 0755 ${B}/gtk-update-icon-cache ${D}${bindir}
}