[OE-core] [PATCH 1/4] gtk-update-icon-cache-native: add

Richard Purdie richard.purdie at linuxfoundation.org
Tue Mar 5 09:17:36 UTC 2013


On Mon, 2013-03-04 at 12:52 +0000, Ross Burton wrote:
> 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...).
> 
> Signed-off-by: Ross Burton <ross.burton at intel.com>
> ---
>  .../gtk+/gtk-update-icon-cache-native_3.4.4.bb     |   44 ++++++++++++++++++++
>  1 file changed, 44 insertions(+)
>  create mode 100644 meta/recipes-gnome/gtk+/gtk-update-icon-cache-native_3.4.4.bb
> 
> diff --git a/meta/recipes-gnome/gtk+/gtk-update-icon-cache-native_3.4.4.bb b/meta/recipes-gnome/gtk+/gtk-update-icon-cache-native_3.4.4.bb
> new file mode 100644
> index 0000000..5941bbd
> --- /dev/null
> +++ b/meta/recipes-gnome/gtk+/gtk-update-icon-cache-native_3.4.4.bb
> @@ -0,0 +1,44 @@
> +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} $(${PKG_CONFIG_FOR_BUILD} --cflags --libs gdk-pixbuf-2.0) \
> +		-o gtk-update-icon-cache ${S}/gtk/updateiconcache.c

I saw failures when building locally for this, I think its down to
linker order. Moving ${S}/gtk/updateiconcache.c before the pkg-config
libs made it work...

Cheers,

Richard







More information about the Openembedded-core mailing list