blob: 942c047179946d60c60404aea308cb0836421efc [file] [log] [blame]
Brad Bishop316dfdd2018-06-25 12:45:53 -04001SUMMARY = "Native icon utils for GTK+"
2DESCRIPTION = "gtk-update-icon-cache and gtk-encode-symbolic-svg built from GTK+ natively, for build time and on-host postinst script execution."
3SECTION = "libs"
4
5DEPENDS = "glib-2.0-native gdk-pixbuf-native librsvg-native"
6
7LICENSE = "LGPLv2 & LGPLv2+ & LGPLv2.1+"
8
9MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
10
11SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk+/${MAJ_VER}/gtk+-${PV}.tar.xz \
12 file://Remove-Gdk-dependency-from-gtk-encode-symbolic-svg.patch"
13SRC_URI[md5sum] = "8c1f5ab987ddc7dab3e59660f89dcd9b"
14SRC_URI[sha256sum] = "d299612b018cfed7b2c689168ab52b668023708e17c335eb592260d186f15e1f"
15
16LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
17 file://gtk/gtk.h;endline=25;md5=1d8dc0fccdbfa26287a271dce88af737 \
18 file://gdk/gdk.h;endline=25;md5=c920ce39dc88c6f06d3e7c50e08086f2 \
19 file://tests/testgtk.c;endline=25;md5=cb732daee1d82af7a2bf953cf3cf26f1"
20
21S = "${WORKDIR}/gtk+-${PV}"
22
23inherit pkgconfig native
24
25# versions >= 3.90 are development versions, otherwise like upstream-version-is-even
26UPSTREAM_CHECK_REGEX = "[^\d\.](?P<pver>3\.([1-8]?[02468])+(\.\d+)+)\.tar"
27
28PKG_CONFIG_FOR_BUILD = "${STAGING_BINDIR_NATIVE}/pkg-config-native"
29
30do_configure() {
31 # Quite ugly but defines enough to compile the tools.
32 if ! test -f gtk/config.h; then
33 echo "#define GETTEXT_PACKAGE \"gtk30\"" >> gtk/config.h
34 echo "#define HAVE_UNISTD_H 1" >> gtk/config.h
35 echo "#define HAVE_FTW_H 1" >> gtk/config.h
36 fi
37 if ! test -f gdk/config.h; then
38 touch gdk/config.h
39 fi
40}
41
42do_compile() {
43 ${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \
44 ${S}/gtk/updateiconcache.c \
45 $(${PKG_CONFIG_FOR_BUILD} --cflags --libs gdk-pixbuf-2.0) \
46 -o gtk-update-icon-cache
47
48 ${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \
49 ${S}/gtk/encodesymbolic.c \
50 $(${PKG_CONFIG_FOR_BUILD} --cflags --libs gio-2.0 gdk-pixbuf-2.0) \
51 -o gtk-encode-symbolic-svg
52}
53
54do_install() {
55 install -d ${D}${bindir}
56 install -m 0755 ${B}/gtk-update-icon-cache ${D}${bindir}
57 install -m 0755 ${B}/gtk-encode-symbolic-svg ${D}${bindir}
58
59 create_wrapper ${D}/${bindir}/gtk-update-icon-cache \
60 GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/2.10.0/loaders.cache
61 create_wrapper ${D}/${bindir}/gtk-encode-symbolic-svg \
62 GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/2.10.0/loaders.cache
63}