Skip to contentSkip to conversation

Upgrade GTK+3 and dependencies

PATCH In review Jussi Kukkonen 4 participants 13 messages Apr 9, 2015 – Apr 13, 2015

lore
Share & tools
lore
#0 lore raw

cover Upgrade GTK+3 and dependencies

These upgrades depend on the GLib upgrade (2.44.0) sent earlier by Robert Yang (in git.openembedded.org/openembedded-core-contrib rbt/PU).

The patchset includes many 'firsts' for me so feedback is welcome. Things of note:
* virtual/mesa is used as dependency when gtk+3 needs wayland-egl -- is this correct?
* The libepoxy recipe is new. Patching the dependency out of GTK+ might be possible but epoxy is quite small so I assumed adding a recipe is ok.

The following changes since commit 7fb6a6e907e5803597b2e12ba7047c46e57dba26:

upstream_tracking.inc: Add no-update reason for gdk-pixbuf (2015-04-09 10:01:48 +0100)

are available in the git repository at:

git://git.yoctoproject.org/poky-contrib jku/update-gtk3
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=jku/update-gtk3

Jussi Kukkonen (7):
glib-networking: Upgrade to 2.44.0
cairo: Upgrade to 1.14.2
atk: Upgrade to 2.16.0
at-spi2-core: Upgrade to 2.16.0
at-spi2-atk: Upgrade to 2.16.0
libepoxy: Add as GTK+ 3.16 requirement
gtk+3: Upgrade to 3.16.0

 .../conf/distro/include/upstream_tracking.inc      |  1 -
 ...working_2.38.0.bb => glib-networking_2.44.0.bb} |  4 +--
 meta/recipes-gnome/gtk+/gtk+3.inc                  | 14 ++++-----
 ...ve-includedir-poisoning-from-configure.ac.patch | 34 ++++++++++++++++++++++
 .../gtk+/gtk+3/fix-flags-for-native.patch          | 33 ---------------------
 .../gtk+/{gtk+3_3.12.2.bb => gtk+3_3.16.0.bb}      |  6 ++--
 .../cairo/{cairo_1.12.18.bb => cairo_1.14.2.bb}    |  4 +--
 meta/recipes-graphics/libepoxy/libepoxy_1.2.bb     | 16 ++++++++++
 ...at-spi2-atk_2.14.1.bb => at-spi2-atk_2.16.0.bb} |  4 +--
 ...-spi2-core_2.14.1.bb => at-spi2-core_2.16.0.bb} |  7 +++--
 .../atk/{atk_2.14.0.bb => atk_2.16.0.bb}           |  4 +--
 11 files changed, 72 insertions(+), 55 deletions(-)
 rename meta/recipes-core/glib-networking/{glib-networking_2.38.0.bb => glib-networking_2.44.0.bb} (88%)
 create mode 100644 meta/recipes-gnome/gtk+/gtk+3/Remove-includedir-poisoning-from-configure.ac.patch
 delete mode 100644 meta/recipes-gnome/gtk+/gtk+3/fix-flags-for-native.patch
 rename meta/recipes-gnome/gtk+/{gtk+3_3.12.2.bb => gtk+3_3.16.0.bb} (73%)
 rename meta/recipes-graphics/cairo/{cairo_1.12.18.bb => cairo_1.14.2.bb} (92%)
 create mode 100644 meta/recipes-graphics/libepoxy/libepoxy_1.2.bb
 rename meta/recipes-support/atk/{at-spi2-atk_2.14.1.bb => at-spi2-atk_2.16.0.bb} (79%)
 rename meta/recipes-support/atk/{at-spi2-core_2.14.1.bb => at-spi2-core_2.16.0.bb} (68%)
 rename meta/recipes-support/atk/{atk_2.14.0.bb => atk_2.16.0.bb} (79%)
Signature · 1 line
2.1.4
#1 lore raw

PATCH 1/7 glib-networking: Upgrade to 2.44.0

---
 meta-yocto/conf/distro/include/upstream_tracking.inc                  | 1 -
 .../{glib-networking_2.38.0.bb => glib-networking_2.44.0.bb}          | 4 ++--
 2 files changed, 2 insertions(+), 3 deletions(-)
 rename meta/recipes-core/glib-networking/{glib-networking_2.38.0.bb => glib-networking_2.44.0.bb} (88%)
meta-yocto/conf/distro/include/upstream_tracking.inc +0 -1
index b36ad36..8b95ebb 100644
@@ -57,7 +57,6 @@ RECIPE_NO_UPDATE_REASON_pn-createrepo = "Versions after 0.9.* use YUM, so we hol
 RECIPE_NO_UPDATE_REASON_pn-db= "API compatibility issue"
 RECIPE_NO_UPDATE_REASON_pn-dbus = "D-BUS 1.9.x is the development version, not stable."
 RECIPE_NO_UPDATE_REASON_pn-gawk = "Version 4.1.0 requires Automake 1.13, but have 1.12.6"
-RECIPE_NO_UPDATE_REASON_pn-glib-networking = "Pending Glib-2.0 Update"
 RECIPE_NO_UPDATE_REASON_pn-gnome-desktop = "waiting for the sato gtk3 port"
 RECIPE_NO_UPDATE_REASON_pn-gnome-icon-theme = "waiting for the sato gtk3 port"
 RECIPE_NO_UPDATE_REASON_pn-gnome-keyring = "waiting for the sato gtk3 port"
meta/recipes-core/glib-networking/glib-networking_2.44.0.bb renamed from meta/recipes-core/glib-networking/glib-networking_2.38.0.bb +2 -2
similarity index 88%
rename from meta/recipes-core/glib-networking/glib-networking_2.38.0.bb
rename to meta/recipes-core/glib-networking/glib-networking_2.44.0.bb
index b9ba2d6..848bf53 100644
@@ -11,8 +11,8 @@ DEPENDS = "glib-2.0 intltool-native"
 
 GNOME_COMPRESS_TYPE = "xz"
 
-SRC_URI[archive.md5sum] = "a22907deed3d956860d83aa3233e86ff"
-SRC_URI[archive.sha256sum] = "a43eacbf721b475cf6ba0cd2eab02a332014f71a4c41d0b44bd7bbf8ed1f840d"
+SRC_URI[archive.md5sum] = "6989b20cf3b26dd5ae272e04a9acb0b3"
+SRC_URI[archive.sha256sum] = "8f8a340d3ba99bfdef38b653da929652ea6640e27969d29f7ac51fbbe11a4346"
 
 PACKAGECONFIG ??= "ca-certificates gnutls"
 
Signature · 1 line
2.1.4
#2 lore raw

PATCH 2/7 cairo: Upgrade to 1.14.2

---
 meta/recipes-graphics/cairo/{cairo_1.12.18.bb => cairo_1.14.2.bb} | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
 rename meta/recipes-graphics/cairo/{cairo_1.12.18.bb => cairo_1.14.2.bb} (92%)
meta/recipes-graphics/cairo/cairo_1.14.2.bb renamed from meta/recipes-graphics/cairo/cairo_1.12.18.bb +2 -2
similarity index 92%
rename from meta/recipes-graphics/cairo/cairo_1.12.18.bb
rename to meta/recipes-graphics/cairo/cairo_1.14.2.bb
index fd0bd8c..3272eb3 100644
@@ -4,8 +4,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=e73e999e0c72b5ac9012424fa157ad77"
 
 SRC_URI = "http://cairographics.org/releases/cairo-${PV}.tar.xz"
 
-SRC_URI[md5sum] = "8e4ff32b82c3b39387eb6f5c59ef848e"
-SRC_URI[sha256sum] = "dc59f0b7ac945ce4e138a03c227a29260915a8b05a4226c1f6f1be586ba7f5b6"
+SRC_URI[md5sum] = "e1cdfaf1c6c995c4d4c54e07215b0118"
+SRC_URI[sha256sum] = "c919d999ddb1bbbecd4bbe65299ca2abd2079c7e13d224577895afa7005ecceb"
 
 PACKAGES =+ "cairo-gobject cairo-script-interpreter cairo-perf-utils"
 
Signature · 1 line
2.1.4
#3 lore raw

PATCH 3/7 atk: Upgrade to 2.16.0

In reply to Jussi Kukkonen
---
 meta/recipes-support/atk/{atk_2.14.0.bb => atk_2.16.0.bb} | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
 rename meta/recipes-support/atk/{atk_2.14.0.bb => atk_2.16.0.bb} (79%)
meta/recipes-support/atk/atk_2.16.0.bb renamed from meta/recipes-support/atk/atk_2.14.0.bb +2 -2
similarity index 79%
rename from meta/recipes-support/atk/atk_2.14.0.bb
rename to meta/recipes-support/atk/atk_2.16.0.bb
index e0e9be3..e29469b 100644
@@ -14,8 +14,8 @@ inherit gnomebase gtk-doc
 
 GNOME_COMPRESS_TYPE = "xz"
 
-SRC_URI[archive.md5sum] = "ecb7ca8469a5650581b1227d78051b8b"
-SRC_URI[archive.sha256sum] = "2875cc0b32bfb173c066c22a337f79793e0c99d2cc5e81c4dac0d5a523b8fbad"
+SRC_URI[archive.md5sum] = "c7c5002bd6e58b4723a165f1bf312116"
+SRC_URI[archive.sha256sum] = "095f986060a6a0b22eb15eef84ae9f14a1cf8082488faa6886d94c37438ae562"
 
 BBCLASSEXTEND = "native"
 
Signature · 1 line
2.1.4
#4 lore raw

PATCH 4/7 at-spi2-core: Upgrade to 2.16.0

In reply to Jussi Kukkonen

* Add new org.a11y.atspi.Registry D-Bus service file

---
 .../atk/{at-spi2-core_2.14.1.bb => at-spi2-core_2.16.0.bb}         | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
 rename meta/recipes-support/atk/{at-spi2-core_2.14.1.bb => at-spi2-core_2.16.0.bb} (68%)
meta/recipes-support/atk/at-spi2-core_2.16.0.bb renamed from meta/recipes-support/atk/at-spi2-core_2.14.1.bb +4 -3
similarity index 68%
rename from meta/recipes-support/atk/at-spi2-core_2.14.1.bb
rename to meta/recipes-support/atk/at-spi2-core_2.16.0.bb
index 1a1ce6c..49ec46f 100644
@@ -6,8 +6,8 @@ MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
 
 SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz"
 
-SRC_URI[md5sum] = "a37993cc50d90465c9aeed95e2ac439a"
-SRC_URI[sha256sum] = "eef9660b14fdf0fb1f30d1be7c72d591fa7cbb87b00ca3a444425712f46ce657"
+SRC_URI[md5sum] = "be6eeea370f913b7639b609913b2cf02"
+SRC_URI[sha256sum] = "1c0b77fb8ce81abbf1d80c0afee9858b3f9229f673b7881995fe0fc16b1a74d0"
 
 DEPENDS = "dbus glib-2.0 virtual/libx11 libxi libxtst intltool-native"
 
@@ -17,4 +17,5 @@ REQUIRED_DISTRO_FEATURES = "x11"
 
 EXTRA_OECONF = "--disable-introspection --disable-xevie --with-dbus-daemondir=${bindir}"
 
-FILES_${PN} += "${datadir}/dbus-1/services/*.service"
+FILES_${PN} += "${datadir}/dbus-1/services/*.service \
+                ${datadir}/dbus-1/accessibility-services/*.service"
Signature · 1 line
2.1.4
#5 lore raw

PATCH 5/7 at-spi2-atk: Upgrade to 2.16.0

In reply to Jussi Kukkonen
---
 .../atk/{at-spi2-atk_2.14.1.bb => at-spi2-atk_2.16.0.bb}              | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
 rename meta/recipes-support/atk/{at-spi2-atk_2.14.1.bb => at-spi2-atk_2.16.0.bb} (79%)
meta/recipes-support/atk/at-spi2-atk_2.16.0.bb renamed from meta/recipes-support/atk/at-spi2-atk_2.14.1.bb +2 -2
similarity index 79%
rename from meta/recipes-support/atk/at-spi2-atk_2.14.1.bb
rename to meta/recipes-support/atk/at-spi2-atk_2.16.0.bb
index 2391389..d8379c1 100644
@@ -5,8 +5,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=e9f288ba982d60518f375b5898283886"
 MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
 
 SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz"
-SRC_URI[md5sum] = "5c6a085249a6d4e792ead86dca183504"
-SRC_URI[sha256sum] = "058f34ea60edf0a5f831c9f2bdd280fe95c1bcafb76e466e44aa0fb356d17bcb"
+SRC_URI[md5sum] = "8936488c8cdce0e158f80b2e247527f9"
+SRC_URI[sha256sum] = "78efc45ec36383bf785f8636e64a8d866defeb020e00a08f92978f1fc3772ff9"
 
 DEPENDS = "dbus glib-2.0 atk at-spi2-core"
 
Signature · 1 line
2.1.4
#6 lore raw

PATCH 6/7 libepoxy: Add as GTK+ 3.16 requirement

In reply to Jussi Kukkonen

Libepoxy is a OpenGL function pointer management library required by GTK 3.16.

---
 meta/recipes-graphics/libepoxy/libepoxy_1.2.bb | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)
 create mode 100644 meta/recipes-graphics/libepoxy/libepoxy_1.2.bb
meta/recipes-graphics/libepoxy/libepoxy_1.2.bb new file +16 -0
new file mode 100644
index 0000000..4357331
@@ -0,0 +1,16 @@
+SUMMARY = "OpenGL function pointer management library"
+HOMEPAGE = "https://github.com/anholt/libepoxy/"
+SECTION = "libs"
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=58ef4c80d401e07bd9ee8b6b58cf464b"
+
+
+SRC_URI = "git://github.com/anholt/libepoxy.git"
+SRCREV="7422de5b4be7b19d789136b3bb5f932de42db27c"
+
+S = "${WORKDIR}/git"
+
+inherit autotools pkgconfig
+
+DEPENDS = "util-macros"
Signature · 1 line
2.1.4
#7 lore raw

Re: [PATCH 6/7] libepoxy: Add as GTK+ 3.16 requirement

Quoted 15 lines · Jussi Kukkonen

Libepoxy is a OpenGL function pointer management library required by GTK 3.16.

---
 meta/recipes-graphics/libepoxy/libepoxy_1.2.bb | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)
 create mode 100644 meta/recipes-graphics/libepoxy/libepoxy_1.2.bb
meta/recipes-graphics/libepoxy/libepoxy_1.2.bb new file +0 -0
new file mode 100644
index 0000000..4357331

meta/recipes-graphics/libepoxy/libepoxy_1.2.bb line 5

Quoted 5 lines
meta/recipes-graphics/libepoxy/libepoxy_1.2.bb new file +5 -0
@@ -0,0 +1,16 @@
+SUMMARY = "OpenGL function pointer management library"
+HOMEPAGE = "https://github.com/anholt/libepoxy/"
+SECTION = "libs"
+
+LICENSE = "MIT"

Something I forgot from the cover letter: epoxy is covered by two different licenses (see
https://github.com/anholt/libepoxy/blob/master/COPYING) and while both look exactly like MIT to me (the Khronos one just replaces "Software" with "Materials"), I thought it's appropriate to mention... Do I need to add another license variant or do something else?

Quoted 14 lines
meta/recipes-graphics/libepoxy/libepoxy_1.2.bb new file +11 -1
+LIC_FILES_CHKSUM = "file://COPYING;md5=58ef4c80d401e07bd9ee8b6b58cf464b"
+
+
+SRC_URI = "git://github.com/anholt/libepoxy.git"
+SRCREV="7422de5b4be7b19d789136b3bb5f932de42db27c"
+
+S = "${WORKDIR}/git"
+
+inherit autotools pkgconfig
+
+DEPENDS = "util-macros"
--

2.1.4

#8 lore raw

Re: [PATCH 6/7] libepoxy: Add as GTK+ 3.16 requirement

Quoted 20 lines · Jussi Kukkonen
Quoted 19 lines · Jussi Kukkonen

Libepoxy is a OpenGL function pointer management library required by GTK 3.16.

---
 meta/recipes-graphics/libepoxy/libepoxy_1.2.bb | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)
 create mode 100644 meta/recipes-graphics/libepoxy/libepoxy_1.2.bb
meta/recipes-graphics/libepoxy/libepoxy_1.2.bb new file +4 -0
new file mode 100644
index 0000000..4357331
@@ -0,0 +1,16 @@
+SUMMARY = "OpenGL function pointer management library"
+HOMEPAGE = "https://github.com/anholt/libepoxy/"
+SECTION = "libs"
+
Quoted 9 lines

meta/recipes-graphics/libepoxy/libepoxy_1.2.bb line 5

Quoted 1 line
meta/recipes-graphics/libepoxy/libepoxy_1.2.bb new file +1 -0
+LICENSE = "MIT"

Something I forgot from the cover letter: epoxy is covered by two different licenses (see
https://github.com/anholt/libepoxy/blob/master/COPYING) and while both look exactly like MIT to me (the Khronos one just replaces "Software" with "Materials"), I thought it's appropriate to mention... Do I need to add another license variant or do something else?

IANAL, but at least two distros list it as MIT (Fedora, Gentoo), so I think we're pretty safe keeping it as such. The changes are minimal enough for the generic license that I don't think it 's/Software/Materials/g' is a substantial enough change to add a whole other common-license.

-b

Quoted 20 lines
Quoted 13 lines
meta/recipes-graphics/libepoxy/libepoxy_1.2.bb new file +11 -1
+LIC_FILES_CHKSUM = "file://COPYING;md5=58ef4c80d401e07bd9ee8b6b58cf464b"
+
+
+SRC_URI = "git://github.com/anholt/libepoxy.git"
+SRCREV="7422de5b4be7b19d789136b3bb5f932de42db27c"
+
+S = "${WORKDIR}/git"
+
+inherit autotools pkgconfig
+
+DEPENDS = "util-macros"
--
Quoted 2 lines

2.1.4

--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Signature · 3 lines
Elizabeth Flanagan
Yocto Project
Build and Release
#9 lore raw

Re: [PATCH 6/7] libepoxy: Add as GTK+ 3.16 requirement

In reply to Jussi Kukkonen
Quoted 5 lines

Op 9 apr. 2015, om 14:16 heeft Jussi Kukkonen <[email protected]> het volgende geschreven:

Libepoxy is a OpenGL function pointer management library required by GTK 3.16.

Slightly related to libepoxy: what is your opinion on a patch like this: https://github.com/Angstrom-distribution/meta-angstrom/commit/b6b079e790441b3d926e9dff931b4be59b79b987 ? I needed it for xf86-video-ati, but it does good things for most GL drivers, the exception being xf86-video-intel.

regards,

Koen

#10 lore raw

Re: [PATCH 6/7] libepoxy: Add as GTK+ 3.16 requirement

Quoted 6 lines · Koen Kooi

Slightly related to libepoxy: what is your opinion on a patch like this:
https://github.com/Angstrom-distribution/meta-angstrom/commit/b6b079e790441b3d926e9dff931b4be59b79b987
?
I needed it for xf86-video-ati, but it does good things for most GL drivers, the exception being xf86-video-intel.

Adding the option for glamor is a no-brainer. Does enabling it do bad things for -intel or just have no impact?

Ross

#11 lore raw

PATCH 7/7 gtk+3: Upgrade to 3.16.0

In reply to Jussi Kukkonen

* Drop --disable-gtk2-dependency and the patch for gtk/native/Makefile.am: gtk-update-icon-cache is no longer used at build time and as a result the option was removed.
* Add dependency to libepoxy
* Add dependency to virtual/mesa for wayland-egl
* Package new binaries gtk3-icon-browser and gtk-encode-symbolic-svg
* Patch configure.ac to prevent include path poisoning

---
 meta/recipes-gnome/gtk+/gtk+3.inc                  | 14 ++++-----
 ...ve-includedir-poisoning-from-configure.ac.patch | 34 ++++++++++++++++++++++
 .../gtk+/gtk+3/fix-flags-for-native.patch          | 33 ---------------------
 .../gtk+/{gtk+3_3.12.2.bb => gtk+3_3.16.0.bb}      |  6 ++--
 4 files changed, 44 insertions(+), 43 deletions(-)
 create mode 100644 meta/recipes-gnome/gtk+/gtk+3/Remove-includedir-poisoning-from-configure.ac.patch
 delete mode 100644 meta/recipes-gnome/gtk+/gtk+3/fix-flags-for-native.patch
 rename meta/recipes-gnome/gtk+/{gtk+3_3.12.2.bb => gtk+3_3.16.0.bb} (73%)
meta/recipes-gnome/gtk+/gtk+3.inc +7 -7
index 3e36676..3823fb3 100644
@@ -6,7 +6,7 @@ BUGTRACKER = "https://bugzilla.gnome.org/"
 SECTION = "libs"
 
 DEPENDS = "glib-2.0 cairo pango atk jpeg libpng gdk-pixbuf \
-           docbook-utils-native gdk-pixbuf-native"
+           docbook-utils-native gdk-pixbuf-native libepoxy"
 
 LICENSE = "LGPLv2 & LGPLv2+ & LGPLv2.1+"
 
@@ -22,10 +22,7 @@ do_configure_prepend() {
     ln -s ${TARGET_PREFIX}libtool libtool
 }
 
-# Forcibly disable the GTK+ 2 dependency as we don't want to natively build the
-# entire GTK+ stack, or need GTK+ 2 for gtk-update-icon-cache.
 EXTRA_OECONF += " \
-                 --disable-gtk2-dependency \
                  --disable-glibtest \
                  --disable-xinerama \
                  --enable-modules \
@@ -37,7 +34,7 @@ PACKAGECONFIG ??= "${@bb.utils.contains("DISTRO_FEATURES", "x11", "x11", "", d)}
                    ${@bb.utils.contains("DISTRO_FEATURES", "wayland", "wayland", "", d)}"
 
 PACKAGECONFIG[x11] = "--enable-x11-backend,--disable-x11-backend,at-spi2-atk fontconfig libx11 libxext libxcursor libxi libxdamage libxrandr libxrender libxcomposite libxfixes"
-PACKAGECONFIG[wayland] = "--enable-wayland-backend,--disable-wayland-backend,wayland libxkbcommon"
+PACKAGECONFIG[wayland] = "--enable-wayland-backend,--disable-wayland-backend,wayland libxkbcommon virtual/mesa"
 
 do_install_append() {
 	mv ${D}${bindir}/gtk-update-icon-cache ${D}${bindir}/gtk-update-icon-cache-3.0
@@ -48,12 +45,14 @@ LIBV = "3.0.0"
 
 FILES_${PN}-demo = "${bindir}/gtk3-demo \
                     ${bindir}/gtk3-demo-application \
+                    ${bindir}/gtk3-icon-browser \
                     ${bindir}/gtk3-widget-factory \
                     ${datadir}/gtk-3.0/demo \
                     ${datadir}/applications/gtk3-demo.desktop \
+                    ${datadir}/applications/gtk3-icon-browser.desktop \
                     ${datadir}/applications/gtk3-widget-factory.desktop \
-                    ${datadir}/icons/hicolor/*/apps/gtk3-demo.png \
-                    ${datadir}/icons/hicolor/*/apps/gtk3-widget-factory.png"
+                    ${datadir}/icons/hicolor/*/apps/gtk3-demo*.png \
+                    ${datadir}/icons/hicolor/*/apps/gtk3-widget-factory*.png"
 
 # The demo uses PNG files and mime type sniffing, so ensure that these
 # dependencies are present.
@@ -62,6 +61,7 @@ RDEPENDS_${PN}-demo += "gdk-pixbuf-loader-png shared-mime-info"
 FILES_${PN} = "${bindir}/gtk-update-icon-cache-3.0 \
                ${bindir}/gtk-query-immodules-3.0 \
                ${bindir}/gtk-launch \
+               ${bindir}/gtk-encode-symbolic-svg \
                ${libdir}/lib*${SOLIBS} \
                ${datadir}/themes ${sysconfdir} ${datadir}/glib-2.0/schemas/ \
                ${libdir}/gtk-3.0/${LIBV}/engines/libpixmap.so \
meta/recipes-gnome/gtk+/gtk+3/Remove-includedir-poisoning-from-configure.ac.patch new file +34 -0
new file mode 100644
index 0000000..37cd724
@@ -0,0 +1,34 @@
+From b5091089aa9c48574563ec6fd61b22e18e584d6a Mon Sep 17 00:00:00 2001
+From: Jussi Kukkonen <[email protected]>
+Date: Thu, 2 Apr 2015 16:16:41 +0300
+Subject: [PATCH] Remove includedir poisoning from configure.ac
+
+configure.ac tries to workaround pkg-config dropping the default include
+directories, but ends up poisoning the sysroot includedirs with system
+ones.
+
+Issue is filed upstream at
+https://bugzilla.gnome.org/show_bug.cgi?id=747445
+
+Upstream-Status: Submitted
+---
+ configure.ac | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 38126da..a6c1058 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -348,8 +348,7 @@ backend_immodules=
+ have_gio_unix=no
+ GDK_BACKENDS=
+ GDK_EXTRA_LIBS=
+-# expoxy.pc has Cflags: -I${includedir}, but pkg-config swallows that :-(
+-GDK_EXTRA_CFLAGS="-I${prefix}/include"
++GDK_EXTRA_CFLAGS=
+ GDK_WINDOWING=
+ PANGO_PACKAGES="pango pangocairo"
+ 
+-- 
+2.1.4
+
meta/recipes-gnome/gtk+/gtk+3/fix-flags-for-native.patch deleted +0 -33
deleted file mode 100644
index 9ae1088..0000000
@@ -1,33 +0,0 @@
-From 5e16904f94b5f5961f8f6e75716e6d7d228de119 Mon Sep 17 00:00:00 2001
-From: Robert Yang <[email protected]>
-Date: Fri, 28 Mar 2014 03:10:12 +0000
-Subject: [PATCH] gtk/native/Makefile.am: unset target FLAGS for native build
-
-The target gtk+3 does a native build in its "native" directory, we need
-unset the target FLAGS for native build, otherwise, there might be build
-failures.
-
-Upstream-Status: Pending
-
-Signed-off-by: Robert Yang <[email protected]>
----
- gtk/native/Makefile.am | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/gtk/native/Makefile.am b/gtk/native/Makefile.am
-index 64899e9..a1c814a 100644
---- a/gtk/native/Makefile.am
-+++ b/gtk/native/Makefile.am
-@@ -3,6 +3,9 @@ AM_CFLAGS = @CFLAGS_FOR_BUILD@
- CPP = @CPP_FOR_BUILD@
- AM_CPPFLAGS = @CPPFLAGS_FOR_BUILD@
- AM_LDFLAGS = @LDFLAGS_FOR_BUILD@
-+CFLAGS =
-+CPPFLAGS =
-+LDFLAGS =
- 
- if CROSS_COMPILING
- if !USE_EXTERNAL_ICON_CACHE
--- 
-1.8.3.4
-
meta/recipes-gnome/gtk+/gtk+3_3.16.0.bb renamed from meta/recipes-gnome/gtk+/gtk+3_3.12.2.bb +3 -3
similarity index 73%
rename from meta/recipes-gnome/gtk+/gtk+3_3.12.2.bb
rename to meta/recipes-gnome/gtk+/gtk+3_3.16.0.bb
index f4f1971..b7f5bc1 100644
@@ -4,11 +4,11 @@ MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
 
 SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk+/${MAJ_VER}/gtk+-${PV}.tar.xz \
            file://hardcoded_libtool.patch \
-           file://fix-flags-for-native.patch \
+           file://Remove-includedir-poisoning-from-configure.ac.patch \
           "
 
-SRC_URI[md5sum] = "0d6d8f9f79132b3b47475d047b369b1c"
-SRC_URI[sha256sum] = "61d74eea74231b1ea4b53084a9d6fc9917ab0e1d71b69d92cbf60a4b4fb385d0"
+SRC_URI[md5sum] = "11c97ce2527956e0ddb5ad5b236e4572"
+SRC_URI[sha256sum] = "ce617318fe18092383cf6ed5d8c688a95a97f2d4c68481317a6a531e288c26ea"
 
 S = "${WORKDIR}/gtk+-${PV}"
 
Signature · 1 line
2.1.4
#12 lore raw

Re: [PATCH 7/7] gtk+3: Upgrade to 3.16.0

Quoted 7 lines · Jussi Kukkonen

* Drop --disable-gtk2-dependency and the patch for gtk/native/Makefile.am: gtk-update-icon-cache is no longer used at build time and as a result the option was removed.
* Add dependency to libepoxy
* Add dependency to virtual/mesa for wayland-egl
* Package new binaries gtk3-icon-browser and gtk-encode-symbolic-svg
* Patch configure.ac to prevent include path poisoning

Please don't take this patch yet. There have been some more extensive icon changes than I realised -- this leads to applications not having icons they used to have with 3.12.

Sorry about that, I'll resend when ready.

Jussi

Quoted 174 lines
---
 meta/recipes-gnome/gtk+/gtk+3.inc                  | 14 ++++-----
 ...ve-includedir-poisoning-from-configure.ac.patch | 34 ++++++++++++++++++++++
 .../gtk+/gtk+3/fix-flags-for-native.patch          | 33 ---------------------
 .../gtk+/{gtk+3_3.12.2.bb => gtk+3_3.16.0.bb}      |  6 ++--
 4 files changed, 44 insertions(+), 43 deletions(-)
 create mode 100644 meta/recipes-gnome/gtk+/gtk+3/Remove-includedir-poisoning-from-configure.ac.patch
 delete mode 100644 meta/recipes-gnome/gtk+/gtk+3/fix-flags-for-native.patch
 rename meta/recipes-gnome/gtk+/{gtk+3_3.12.2.bb => gtk+3_3.16.0.bb} (73%)
meta/recipes-gnome/gtk+/gtk+3.inc +7 -7
index 3e36676..3823fb3 100644
@@ -6,7 +6,7 @@ BUGTRACKER = "https://bugzilla.gnome.org/"
 SECTION = "libs"
 
 DEPENDS = "glib-2.0 cairo pango atk jpeg libpng gdk-pixbuf \
-           docbook-utils-native gdk-pixbuf-native"
+           docbook-utils-native gdk-pixbuf-native libepoxy"
 
 LICENSE = "LGPLv2 & LGPLv2+ & LGPLv2.1+"
 
@@ -22,10 +22,7 @@ do_configure_prepend() {
     ln -s ${TARGET_PREFIX}libtool libtool
 }
 
-# Forcibly disable the GTK+ 2 dependency as we don't want to natively build the
-# entire GTK+ stack, or need GTK+ 2 for gtk-update-icon-cache.
 EXTRA_OECONF += " \
-                 --disable-gtk2-dependency \
                  --disable-glibtest \
                  --disable-xinerama \
                  --enable-modules \
@@ -37,7 +34,7 @@ PACKAGECONFIG ??= "${@bb.utils.contains("DISTRO_FEATURES", "x11", "x11", "", d)}
                    ${@bb.utils.contains("DISTRO_FEATURES", "wayland", "wayland", "", d)}"
 
 PACKAGECONFIG[x11] = "--enable-x11-backend,--disable-x11-backend,at-spi2-atk fontconfig libx11 libxext libxcursor libxi libxdamage libxrandr libxrender libxcomposite libxfixes"
-PACKAGECONFIG[wayland] = "--enable-wayland-backend,--disable-wayland-backend,wayland libxkbcommon"
+PACKAGECONFIG[wayland] = "--enable-wayland-backend,--disable-wayland-backend,wayland libxkbcommon virtual/mesa"
 
 do_install_append() {
        mv ${D}${bindir}/gtk-update-icon-cache ${D}${bindir}/gtk-update-icon-cache-3.0
@@ -48,12 +45,14 @@ LIBV = "3.0.0"
 
 FILES_${PN}-demo = "${bindir}/gtk3-demo \
                     ${bindir}/gtk3-demo-application \
+                    ${bindir}/gtk3-icon-browser \
                     ${bindir}/gtk3-widget-factory \
                     ${datadir}/gtk-3.0/demo \
                     ${datadir}/applications/gtk3-demo.desktop \
+                    ${datadir}/applications/gtk3-icon-browser.desktop \
                     ${datadir}/applications/gtk3-widget-factory.desktop \
-                    ${datadir}/icons/hicolor/*/apps/gtk3-demo.png \
-                    ${datadir}/icons/hicolor/*/apps/gtk3-widget-factory.png"
+                    ${datadir}/icons/hicolor/*/apps/gtk3-demo*.png \
+                    ${datadir}/icons/hicolor/*/apps/gtk3-widget-factory*.png"
 
 # The demo uses PNG files and mime type sniffing, so ensure that these
 # dependencies are present.
@@ -62,6 +61,7 @@ RDEPENDS_${PN}-demo += "gdk-pixbuf-loader-png shared-mime-info"
 FILES_${PN} = "${bindir}/gtk-update-icon-cache-3.0 \
                ${bindir}/gtk-query-immodules-3.0 \
                ${bindir}/gtk-launch \
+               ${bindir}/gtk-encode-symbolic-svg \
                ${libdir}/lib*${SOLIBS} \
                ${datadir}/themes ${sysconfdir} ${datadir}/glib-2.0/schemas/ \
                ${libdir}/gtk-3.0/${LIBV}/engines/libpixmap.so \
meta/recipes-gnome/gtk+/gtk+3/Remove-includedir-poisoning-from-configure.ac.patch new file +34 -0
new file mode 100644
index 0000000..37cd724
@@ -0,0 +1,34 @@
+From b5091089aa9c48574563ec6fd61b22e18e584d6a Mon Sep 17 00:00:00 2001
+From: Jussi Kukkonen <[email protected]>
+Date: Thu, 2 Apr 2015 16:16:41 +0300
+Subject: [PATCH] Remove includedir poisoning from configure.ac
+
+configure.ac tries to workaround pkg-config dropping the default include
+directories, but ends up poisoning the sysroot includedirs with system
+ones.
+
+Issue is filed upstream at
+https://bugzilla.gnome.org/show_bug.cgi?id=747445
+
+Upstream-Status: Submitted
+---
+ configure.ac | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 38126da..a6c1058 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -348,8 +348,7 @@ backend_immodules=
+ have_gio_unix=no
+ GDK_BACKENDS=
+ GDK_EXTRA_LIBS=
+-# expoxy.pc has Cflags: -I${includedir}, but pkg-config swallows that :-(
+-GDK_EXTRA_CFLAGS="-I${prefix}/include"
++GDK_EXTRA_CFLAGS=
+ GDK_WINDOWING=
+ PANGO_PACKAGES="pango pangocairo"
+
+--
+2.1.4
+
meta/recipes-gnome/gtk+/gtk+3/fix-flags-for-native.patch deleted +0 -33
deleted file mode 100644
index 9ae1088..0000000
@@ -1,33 +0,0 @@
-From 5e16904f94b5f5961f8f6e75716e6d7d228de119 Mon Sep 17 00:00:00 2001
-From: Robert Yang <[email protected]>
-Date: Fri, 28 Mar 2014 03:10:12 +0000
-Subject: [PATCH] gtk/native/Makefile.am: unset target FLAGS for native build
-
-The target gtk+3 does a native build in its "native" directory, we need
-unset the target FLAGS for native build, otherwise, there might be build
-failures.
-
-Upstream-Status: Pending
-
-Signed-off-by: Robert Yang <[email protected]>
----
- gtk/native/Makefile.am | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/gtk/native/Makefile.am b/gtk/native/Makefile.am
-index 64899e9..a1c814a 100644
---- a/gtk/native/Makefile.am
-+++ b/gtk/native/Makefile.am
-@@ -3,6 +3,9 @@ AM_CFLAGS = @CFLAGS_FOR_BUILD@
- CPP = @CPP_FOR_BUILD@
- AM_CPPFLAGS = @CPPFLAGS_FOR_BUILD@
- AM_LDFLAGS = @LDFLAGS_FOR_BUILD@
-+CFLAGS =
-+CPPFLAGS =
-+LDFLAGS =
-
- if CROSS_COMPILING
- if !USE_EXTERNAL_ICON_CACHE
---
-1.8.3.4
-
meta/recipes-gnome/gtk+/gtk+3_3.16.0.bb renamed from meta/recipes-gnome/gtk+/gtk+3_3.12.2.bb +3 -4
similarity index 73%
rename from meta/recipes-gnome/gtk+/gtk+3_3.12.2.bb
rename to meta/recipes-gnome/gtk+/gtk+3_3.16.0.bb
index f4f1971..b7f5bc1 100644
@@ -4,11 +4,11 @@ MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
 
 SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk+/${MAJ_VER}/gtk+-${PV}.tar.xz \
            file://hardcoded_libtool.patch \
-           file://fix-flags-for-native.patch \
+           file://Remove-includedir-poisoning-from-configure.ac.patch \
           "
 
-SRC_URI[md5sum] = "0d6d8f9f79132b3b47475d047b369b1c"
-SRC_URI[sha256sum] = "61d74eea74231b1ea4b53084a9d6fc9917ab0e1d71b69d92cbf60a4b4fb385d0"
+SRC_URI[md5sum] = "11c97ce2527956e0ddb5ad5b236e4572"
+SRC_URI[sha256sum] = "ce617318fe18092383cf6ed5d8c688a95a97f2d4c68481317a6a531e288c26ea"
 
 S = "${WORKDIR}/gtk+-${PV}"
 
--

2.1.4