<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On 5 July 2016 at 16:09, Robert Yang <span dir="ltr">&lt;<a href="mailto:liezhi.yang@windriver.com" target="_blank">liezhi.yang@windriver.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
Hi,<br>
<br>
I can&#39;t build it on Ubuntu 14.04:<br></blockquote><div><br></div><div>I can&#39;t see from the log why the file would be be missing and can&#39;t reproduce that locally... Cleaning sstate should be a valid workaround but I&#39;d be really interested in reproducing this: if you can reproduce (or remember if you did any  distro feature or  packageconfig changes) please let me know the details.</div><div><br></div><div>In the meantime I&#39;ll take another look at the build system...</div><div><br></div><div>Thanks, </div><div>  Jussi</div><div> </div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
MACHINE = &quot;qemux86&quot;<br>
<br>
$ bitbake gtk+3<br>
<br>
Making all in po-properties<br>
make[2]: Entering directory &#39;/buildarea/lyang1/test_qemux86/bitbake_build/tmp/work/i586-wrs-linux/gtk+3/3.20.6-r0/build/po-properties&#39;<br>
make[2]: Nothing to be done for &#39;all&#39;.<br>
make[2]: Leaving directory &#39;/buildarea/lyang1/test_qemux86/bitbake_build/tmp/work/i586-wrs-linux/gtk+3/3.20.6-r0/build/po-properties&#39;<br>
Making all in gdk<br>
make[2]: Entering directory &#39;/buildarea/lyang1/test_qemux86/bitbake_build/tmp/work/i586-wrs-linux/gtk+3/3.20.6-r0/build/gdk&#39;<br>
( cd ../../gtk+-3.20.6/gdk &amp;&amp; glib-mkenums --template gdkenumtypes.h.template \<br>
    gdk.h gdk-autocleanup.h gdkapplaunchcontext.h gdkcairo.h gdkcursor.h gdkdevice.h gdkdevicemanager.h gdkdisplay.h gdkdisplaymanager.h gdkdnd.h gdkevents.h gdkframetimings.h gdkglcontext.h gdkkeys.h gdkkeysyms.h gdkkeysyms-compat.h gdkmain.h gdkpango.h gdkframeclock.h gdkpixbuf.h gdkprivate.h gdkproperty.h gdkrectangle.h gdkrgba.h gdkscreen.h gdkseat.h gdkselection.h gdktestutils.h gdkthreads.h gdktypes.h gdkvisual.h gdkwindow.h deprecated/gdkcolor.h ) &gt;&gt; xgen-geth \<br>
&amp;&amp; (cmp -s xgen-geth gdkenumtypes.h || cp xgen-geth gdkenumtypes.h ) \<br>
&amp;&amp; rm -f xgen-geth \<br>
&amp;&amp; echo timestamp &gt; stamp-gdkenumtypes.h<br>
cd .. &amp;&amp; /bin/sh ./config.status gdk/gdkconfig.h \<br>
&amp;&amp; echo timestamp &gt; gdk/stamp-gc-h<br>
config.status: executing gdk/gdkconfig.h commands<br>
config.status: gdk/gdkconfig.h is unchanged<br>
if test -f gdkconfig.h; then :; \<br>
else rm -f stamp-gc-h; make stamp-gc-h; fi<br>
make  all-recursive<br>
make[3]: Entering directory &#39;/buildarea/lyang1/test_qemux86/bitbake_build/tmp/work/i586-wrs-linux/gtk+3/3.20.6-r0/build/gdk&#39;<br>
Making all in x11<br>
make[4]: Entering directory &#39;/buildarea/lyang1/test_qemux86/bitbake_build/tmp/work/i586-wrs-linux/gtk+3/3.20.6-r0/build/gdk/x11&#39;<br>
cd ../../../gtk+-3.20.6/gdk/x11 \<br>
&amp;&amp; (cmp -s gdkx-with-gl-context.h gdkx.h || cp gdkx-with-gl-context.h gdkx.h )<br>
cp: cannot stat &#39;gdkx-with-gl-context.h&#39;: No such file or directory<br>
Makefile:1014: recipe for target &#39;gdkx.h&#39; failed<br>
make[4]: *** [gdkx.h] Error 1<br>
make[4]: Leaving directory &#39;/buildarea/lyang1/test_qemux86/bitbake_build/tmp/work/i586-wrs-linux/gtk+3/3.20.6-r0/build/gdk/x11&#39;<br>
Makefile:1460: recipe for target &#39;all-recursive&#39; failed<br>
make[3]: *** [all-recursive] Error 1<br>
make[3]: Leaving directory &#39;/buildarea/lyang1/test_qemux86/bitbake_build/tmp/work/i586-wrs-linux/gtk+3/3.20.6-r0/build/gdk&#39;<br>
Makefile:951: recipe for target &#39;all&#39; failed<br>
make[2]: *** [all] Error 2<br>
make[2]: Leaving directory &#39;/buildarea/lyang1/test_qemux86/bitbake_build/tmp/work/i586-wrs-linux/gtk+3/3.20.6-r0/build/gdk&#39;<br>
Makefile:713: recipe for target &#39;all-recursive&#39; failed<br>
make[1]: *** [all-recursive] Error 1<br>
make[1]: Leaving directory &#39;/buildarea/lyang1/test_qemux86/bitbake_build/tmp/work/i586-wrs-linux/gtk+3/3.20.6-r0/build&#39;<br>
Makefile:607: recipe for target &#39;all&#39; failed<br>
make: *** [all] Error 2<span class="HOEnZb"><font color="#888888"><br>
<br>
// Robert</font></span><div class="HOEnZb"><div class="h5"><br>
<br>
On 06/22/2016 07:52 PM, Jussi Kukkonen wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
* Remove a patch that&#39;s no longer needed (as we don&#39;t<br>
   have a problem with client side decorations anymore)<br>
* Wayland build now depends on wayland-protocols:<br>
   Use same WAYLAND_PROTOCOLS_SYSROOT_DIR trick as weston so<br>
   protocols are found and multilib build does not break<br>
* Add new binary gtk-query-settings to -dev package<br>
* Rebase patches<br>
* Modify 0003-Add-disable-opengl-configure-option.patch so<br>
   that gdkx.h really is generated whenever it changes<br>
<br>
Signed-off-by: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com" target="_blank">jussi.kukkonen@intel.com</a>&gt;<br>
---<br>
  meta/recipes-gnome/gtk+/gtk+3.inc                  |   9 +-<br>
  ..._libtool.patch =&gt; 0001-Hardcoded-libtool.patch} |  26 +-<br>
  ...o-not-try-to-initialize-GL-without-libGL.patch} |  12 +-<br>
  ...0003-Add-disable-opengl-configure-option.patch} | 327 ++++++---------------<br>
  ...4-configure.ac-Fix-wayland-protocols-path.patch |  36 +++<br>
  meta/recipes-gnome/gtk+/gtk+3/Dont-force-csd.patch | 118 --------<br>
  .../gtk+/{gtk+<a href="http://3_3.18.8.bb" rel="noreferrer" target="_blank">3_3.18.8.bb</a> =&gt; gtk+<a href="http://3_3.20.6.bb" rel="noreferrer" target="_blank">3_3.20.6.bb</a>}      |  13 +-<br>
  ...<a href="http://e_3.18.8.bb" rel="noreferrer" target="_blank">e_3.18.8.bb</a> =&gt; <a href="http://gtk-icon-utils-native_3.20.6.bb" rel="noreferrer" target="_blank">gtk-icon-utils-native_3.20.6.bb</a>} |   4 +-<br>
  8 files changed, 173 insertions(+), 372 deletions(-)<br>
  rename meta/recipes-gnome/gtk+/gtk+3/{hardcoded_libtool.patch =&gt; 0001-Hardcoded-libtool.patch} (70%)<br>
  rename meta/recipes-gnome/gtk+/gtk+3/{Do-not-try-to-initialize-GL-without-libGL.patch =&gt; 0002-Do-not-try-to-initialize-GL-without-libGL.patch} (86%)<br>
  rename meta/recipes-gnome/gtk+/gtk+3/{0001-Add-disable-opengl-configure-option.patch =&gt; 0003-Add-disable-opengl-configure-option.patch} (71%)<br>
  create mode 100644 meta/recipes-gnome/gtk+/gtk+3/0004-configure.ac-Fix-wayland-protocols-path.patch<br>
  delete mode 100644 meta/recipes-gnome/gtk+/gtk+3/Dont-force-csd.patch<br>
  rename meta/recipes-gnome/gtk+/{gtk+<a href="http://3_3.18.8.bb" rel="noreferrer" target="_blank">3_3.18.8.bb</a> =&gt; gtk+<a href="http://3_3.20.6.bb" rel="noreferrer" target="_blank">3_3.20.6.bb</a>} (57%)<br>
  rename meta/recipes-gnome/gtk+/{<a href="http://gtk-icon-utils-native_3.18.8.bb" rel="noreferrer" target="_blank">gtk-icon-utils-native_3.18.8.bb</a> =&gt; <a href="http://gtk-icon-utils-native_3.20.6.bb" rel="noreferrer" target="_blank">gtk-icon-utils-native_3.20.6.bb</a>} (93%)<br>
<br>
diff --git a/meta/recipes-gnome/gtk+/gtk+3.inc b/meta/recipes-gnome/gtk+/gtk+3.inc<br>
index 959fb44..0de114d 100644<br>
--- a/meta/recipes-gnome/gtk+/gtk+3.inc<br>
+++ b/meta/recipes-gnome/gtk+/gtk+3.inc<br>
@@ -31,7 +31,9 @@ EXTRA_OECONF += &quot; \<br>
                   --enable-modules \<br>
                   --disable-cups \<br>
                   --disable-colord \<br>
-&quot;<br>
+                 WAYLAND_PROTOCOLS_SYSROOT_DIR=${STAGING_DIR}/${MACHINE} \<br>
+                 &quot;<br>
+EXTRA_OECONF[vardepsexclude] = &quot;MACHINE&quot;<br>
<br>
  do_compile_prepend() {<br>
          export GIR_EXTRA_LIBS_PATH=&quot;${B}/gdk/.libs&quot;<br>
@@ -46,7 +48,7 @@ PACKAGECONFIG[x11] = &quot;--enable-x11-backend,--disable-x11-backend,at-spi2-atk fon<br>
  # this is provided by oe-core patch that removes epoxy/gl dependency from a X11 build<br>
  PACKAGECONFIG[opengl] = &quot;--enable-opengl,--disable-opengl,libepoxy&quot;<br>
  PACKAGECONFIG[glx] = &quot;--enable-glx,--disable-glx,,libgl&quot;<br>
-PACKAGECONFIG[wayland] = &quot;--enable-wayland-backend,--disable-wayland-backend,wayland libxkbcommon virtual/mesa wayland-native&quot;<br>
+PACKAGECONFIG[wayland] = &quot;--enable-wayland-backend,--disable-wayland-backend,wayland wayland-protocols libxkbcommon virtual/mesa wayland-native&quot;<br>
<br>
  do_install_append() {<br>
        mv ${D}${bindir}/gtk-update-icon-cache ${D}${bindir}/gtk-update-icon-cache-3.0<br>
@@ -76,6 +78,7 @@ FILES_${PN}_append = &quot; ${bindir}/gtk-update-icon-cache-3.0 \<br>
  FILES_${PN}-dev += &quot; \<br>
                      ${datadir}/gtk-3.0/gtkbuilder.rng \<br>
                      ${datadir}/gtk-3.0/include \<br>
+                    ${datadir}/gettext/its \<br>
                      ${libdir}/gtk-3.0/include \<br>
                      ${libdir}/gtk-3.0/${LIBV}/loaders/*.la \<br>
                      ${libdir}/gtk-3.0/${LIBV}/immodules/*.la \<br>
@@ -85,6 +88,7 @@ FILES_${PN}-dev += &quot; \<br>
                      ${bindir}/gtk-builder-convert \<br>
                      ${bindir}/gtk-encode-symbolic-svg \<br>
                      ${bindir}/gtk-builder-tool \<br>
+                    ${bindir}/gtk-query-settings \<br>
                      &quot;<br>
<br>
  GTKBASE_RRECOMMENDS ?= &quot;liberation-fonts \<br>
@@ -99,6 +103,7 @@ GTKGLIBC_RRECOMMENDS ?= &quot;${GTKBASE_RRECOMMENDS} glibc-gconv-iso8859-1&quot;<br>
<br>
  RRECOMMENDS_${PN} = &quot;${GTKBASE_RRECOMMENDS}&quot;<br>
  RRECOMMENDS_${PN}_libc-glibc = &quot;${GTKGLIBC_RRECOMMENDS}&quot;<br>
+RRECOMMENDS_${PN}-dev += &quot;wayland-protocols&quot;<br>
<br>
  PACKAGES_DYNAMIC += &quot;^gtk3-immodule-.* ^gtk3-printbackend-.*&quot;<br>
<br>
diff --git a/meta/recipes-gnome/gtk+/gtk+3/hardcoded_libtool.patch b/meta/recipes-gnome/gtk+/gtk+3/0001-Hardcoded-libtool.patch<br>
similarity index 70%<br>
rename from meta/recipes-gnome/gtk+/gtk+3/hardcoded_libtool.patch<br>
rename to meta/recipes-gnome/gtk+/gtk+3/0001-Hardcoded-libtool.patch<br>
index 3b4beeb..0bda1f1 100644<br>
--- a/meta/recipes-gnome/gtk+/gtk+3/hardcoded_libtool.patch<br>
+++ b/meta/recipes-gnome/gtk+/gtk+3/0001-Hardcoded-libtool.patch<br>
@@ -1,12 +1,21 @@<br>
+From 5a73a5b92566e314bbc8a1bd40f1ec204837c111 Mon Sep 17 00:00:00 2001<br>
+From: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com" target="_blank">jussi.kukkonen@intel.com</a>&gt;<br>
+Date: Tue, 21 Jun 2016 14:53:56 +0300<br>
+Subject: [PATCH 1/4] Hardcoded libtool<br>
+<br>
  Upstream-Status: Inappropriate [embedded specific]<br>
<br>
  Signed-off-by: Marko Lindqvist &lt;<a href="mailto:cazfi74@gmail.com" target="_blank">cazfi74@gmail.com</a>&gt;<br>
+Signed-off-by: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com" target="_blank">jussi.kukkonen@intel.com</a>&gt;<br>
+---<br>
+ <a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a> | 6 +++---<br>
+ 1 file changed, 3 insertions(+), 3 deletions(-)<br>
<br>
-Index: gtk+-3.8.2/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
-===================================================================<br>
---- gtk+-3.8.2.orig/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
-+++ gtk+-3.8.2/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
-@@ -531,7 +531,7 @@ AC_MSG_CHECKING([Whether to write depend<br>
+diff --git a/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a> b/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
+index 23d3077..b6931d6 100644<br>
+--- a/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
++++ b/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
+@@ -610,7 +610,7 @@ AC_MSG_CHECKING([whether to write dependencies into .pc files])<br>
   case $enable_explicit_deps in<br>
     auto)<br>
       export SED<br>
@@ -15,7 +24,7 @@ Index: gtk+-3.8.2/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
       if test &quot;x$deplibs_check_method&quot; != xpass_all || test &quot;x$enable_static&quot; = xyes ; then<br>
         enable_explicit_deps=yes<br>
       else<br>
-@@ -793,7 +793,7 @@ else<br>
+@@ -876,7 +876,7 @@ else<br>
       dnl Now we check to see if our libtool supports shared lib deps<br>
       dnl (in a rather ugly way even)<br>
       if $dynworks; then<br>
@@ -24,7 +33,7 @@ Index: gtk+-3.8.2/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
           module_deplibs_check=`$module_libtool_config | \<br>
               grep &#39;^[[a-z_]]*check[[a-z_]]*_method=[[&#39;\&#39;&#39;&quot;]]&#39; | \<br>
               sed &#39;s/.*[[&#39;\&#39;&#39;&quot;]]\(.*\)[[&#39;\&#39;&#39;&quot;]]$/\1/&#39;`<br>
-@@ -1528,7 +1528,7 @@ fi<br>
+@@ -1630,7 +1630,7 @@ AC_SUBST(GTK_PRINT_BACKENDS)<br>
   # We are using gmodule-no-export now, but I&#39;m leaving the stripping<br>
   # code in place for now, since pango and atk still require gmodule.<br>
   export SED<br>
@@ -33,3 +42,6 @@ Index: gtk+-3.8.2/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
   if test -n &quot;$export_dynamic&quot;; then<br>
     GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e &quot;s/$export_dynamic//&quot;`<br>
     GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e &quot;s/$export_dynamic//&quot;`<br>
+--<br>
+2.1.4<br>
+<br>
diff --git a/meta/recipes-gnome/gtk+/gtk+3/Do-not-try-to-initialize-GL-without-libGL.patch b/meta/recipes-gnome/gtk+/gtk+3/0002-Do-not-try-to-initialize-GL-without-libGL.patch<br>
similarity index 86%<br>
rename from meta/recipes-gnome/gtk+/gtk+3/Do-not-try-to-initialize-GL-without-libGL.patch<br>
rename to meta/recipes-gnome/gtk+/gtk+3/0002-Do-not-try-to-initialize-GL-without-libGL.patch<br>
index c8c480c..989716e 100644<br>
--- a/meta/recipes-gnome/gtk+/gtk+3/Do-not-try-to-initialize-GL-without-libGL.patch<br>
+++ b/meta/recipes-gnome/gtk+/gtk+3/0002-Do-not-try-to-initialize-GL-without-libGL.patch<br>
@@ -1,7 +1,7 @@<br>
-From fc22058a10db913534f11348f86681fe9e1838e5 Mon Sep 17 00:00:00 2001<br>
+From d63b926f8c8d8b5c9f9ec33d078b775f0409d88a Mon Sep 17 00:00:00 2001<br>
  From: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com" target="_blank">jussi.kukkonen@intel.com</a>&gt;<br>
  Date: Fri, 16 Oct 2015 16:35:16 +0300<br>
-Subject: [PATCH] Do not try to initialize GL without libGL<br>
+Subject: [PATCH 2/4] Do not try to initialize GL without libGL<br>
<br>
  _gdk_x11_screen_update_visuals_for_gl() will end up calling epoxys<br>
  GLX api which will exit() if libGL.so.1 is not present. We do not<br>
@@ -21,10 +21,10 @@ Signed-off-by: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com" target="_blank">jussi.kukkonen@intel.com</a>&gt;<br>
   2 files changed, 12 insertions(+)<br>
<br>
  diff --git a/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a> b/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
-index 729a62e..58cc1ac 100644<br>
+index b6931d6..e27da49 100644<br>
  --- a/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
  +++ b/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
-@@ -328,6 +328,13 @@ AC_ARG_ENABLE(mir-backend,<br>
+@@ -342,6 +342,13 @@ AC_ARG_ENABLE(mir-backend,<br>
                                 [enable the Mir gdk backend])],<br>
                              [backend_set=yes])<br>
<br>
@@ -39,10 +39,10 @@ index 729a62e..58cc1ac 100644<br>
     if test &quot;$platform_win32&quot; = yes; then<br>
       enable_win32_backend=yes<br>
  diff --git a/gdk/x11/gdkvisual-x11.c b/gdk/x11/gdkvisual-x11.c<br>
-index f3b062d..c8243f4 100644<br>
+index 81479d8..3c8c5c0 100644<br>
  --- a/gdk/x11/gdkvisual-x11.c<br>
  +++ b/gdk/x11/gdkvisual-x11.c<br>
-@@ -345,7 +345,12 @@ _gdk_x11_screen_init_visuals (GdkScreen *screen)<br>
+@@ -306,7 +306,12 @@ _gdk_x11_screen_init_visuals (GdkScreen *screen)<br>
     /* If GL is available we want to pick better default/rgba visuals,<br>
        as we care about glx details such as alpha/depth/stencil depth,<br>
        stereo and double buffering */<br>
diff --git a/meta/recipes-gnome/gtk+/gtk+3/0001-Add-disable-opengl-configure-option.patch b/meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch<br>
similarity index 71%<br>
rename from meta/recipes-gnome/gtk+/gtk+3/0001-Add-disable-opengl-configure-option.patch<br>
rename to meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch<br>
index a963334..8552f53 100644<br>
--- a/meta/recipes-gnome/gtk+/gtk+3/0001-Add-disable-opengl-configure-option.patch<br>
+++ b/meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch<br>
@@ -1,7 +1,7 @@<br>
-From c77afa19881d955d759879aeae8bbd88613dd4fe Mon Sep 17 00:00:00 2001<br>
+From a8fa547fdc1416b330aced805f5343ad912932ae Mon Sep 17 00:00:00 2001<br>
  From: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com" target="_blank">jussi.kukkonen@intel.com</a>&gt;<br>
-Date: Thu, 16 Jun 2016 15:11:34 +0300<br>
-Subject: [PATCH] Add --disable-opengl configure option<br>
+Date: Tue, 21 Jun 2016 15:11:39 +0300<br>
+Subject: [PATCH 3/4] Add --disable-opengl configure option<br>
<br>
  --disable-opengl will remove the dependency on libepoxy and on the<br>
  OpenGL APIs. This is useful for those who want to keep using gtk+3<br>
@@ -20,37 +20,35 @@ Long-term it would be good to find an alternative solution to this<br>
  Upstream-Status: Inappropriate [Evil eye expected from upstream]<br>
  Signed-off-by: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com" target="_blank">jussi.kukkonen@intel.com</a>&gt;<br>
  ---<br>
- <a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a>                      | 13 +++++++--<br>
- demos/gtk-demo/glarea.c           | 13 +++++++++<br>
- docs/tools/Makefile.am            |  9 ++++--<br>
- docs/tools/widgets.c              |  4 ++-<br>
- gdk/gdkdisplay.c                  |  4 ++-<br>
- gdk/gdkgl.c                       | 10 +++++++<br>
- gdk/gdkglcontext.c                |  6 ++++<br>
- gdk/gdkwindow.c                   | 14 +++++++++-<br>
- gdk/x11/Makefile.am               | 28 ++++++++++++++++---<br>
- gdk/x11/gdkdisplay-x11.c          |  6 ++--<br>
- gdk/x11/gdkscreen-x11.c           |  5 ++++<br>
- gdk/x11/gdkwindow-x11.c           |  4 +++<br>
- gdk/x11/gdkx-autocleanups.h       |  2 ++<br>
- gdk/x11/gdkx-with-gl-context.h    | 59 +++++++++++++++++++++++++++++++++++++++<br>
- gdk/x11/gdkx-without-gl-context.h | 58 ++++++++++++++++++++++++++++++++++++++<br>
- gdk/x11/gdkx.h                    | 59 ---------------------------------------<br>
- gtk/Makefile.am                   |  3 +-<br>
- gtk/gtkglarea.c                   | 20 ++++++++++++-<br>
- gtk/inspector/general.c           |  6 ++++<br>
- tests/Makefile.am                 | 10 +++++--<br>
- testsuite/gtk/objects-finalize.c  |  2 ++<br>
- 21 files changed, 257 insertions(+), 78 deletions(-)<br>
- create mode 100644 gdk/x11/gdkx-with-gl-context.h<br>
+ <a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a>                               | 13 +++++--<br>
+ demos/gtk-demo/glarea.c                    | 13 +++++++<br>
+ docs/tools/Makefile.am                     |  9 +++--<br>
+ docs/tools/widgets.c                       |  4 ++-<br>
+ gdk/gdkdisplay.c                           |  4 ++-<br>
+ gdk/gdkgl.c                                | 10 ++++++<br>
+ gdk/gdkglcontext.c                         |  6 ++++<br>
+ gdk/gdkwindow.c                            | 13 +++++++<br>
+ gdk/x11/Makefile.am                        | 30 +++++++++++++---<br>
+ gdk/x11/gdkdisplay-x11.c                   |  6 +++-<br>
+ gdk/x11/gdkscreen-x11.c                    |  5 +++<br>
+ gdk/x11/gdkwindow-x11.c                    |  4 +++<br>
+ gdk/x11/gdkx-autocleanups.h                |  2 ++<br>
+ gdk/x11/{gdkx.h =&gt; gdkx-with-gl-context.h} |  0<br>
+ gdk/x11/gdkx-without-gl-context.h          | 58 ++++++++++++++++++++++++++++++<br>
+ gtk/Makefile.am                            |  3 +-<br>
+ gtk/gtkglarea.c                            | 20 ++++++++++-<br>
+ gtk/inspector/general.c                    |  6 ++++<br>
+ tests/Makefile.am                          | 10 ++++--<br>
+ testsuite/gtk/objects-finalize.c           |  2 ++<br>
+ 20 files changed, 201 insertions(+), 17 deletions(-)<br>
+ rename gdk/x11/{gdkx.h =&gt; gdkx-with-gl-context.h} (100%)<br>
   create mode 100644 gdk/x11/gdkx-without-gl-context.h<br>
- delete mode 100644 gdk/x11/gdkx.h<br>
<br>
  diff --git a/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a> b/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
-index c280543..32da151 100644<br>
+index e27da49..a3e9beb 100644<br>
  --- a/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
  +++ b/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
-@@ -340,6 +340,15 @@ AC_ARG_ENABLE(mir-backend,<br>
+@@ -342,6 +342,15 @@ AC_ARG_ENABLE(mir-backend,<br>
                                 [enable the Mir gdk backend])],<br>
                              [backend_set=yes])<br>
<br>
@@ -66,7 +64,7 @@ index c280543..32da151 100644<br>
   AC_ARG_ENABLE(glx,<br>
                 [AS_HELP_STRING([--enable-glx],<br>
                                 [When enabled Gdk will try to initialize GLX])])<br>
-@@ -1330,7 +1339,7 @@ CFLAGS=&quot;$saved_cflags&quot;<br>
+@@ -1333,7 +1342,7 @@ CFLAGS=&quot;$saved_cflags&quot;<br>
   LDFLAGS=&quot;$saved_ldflags&quot;<br>
<br>
   GDK_PACKAGES=&quot;$PANGO_PACKAGES gdk-pixbuf-2.0 &gt;= gdk_pixbuf_required_version cairo &gt;= cairo_required_version cairo-gobject &gt;= cairo_required_version&quot;<br>
@@ -75,7 +73,7 @@ index c280543..32da151 100644<br>
<br>
   PKG_CHECK_MODULES(GDK_DEP, $GDK_PACKAGES $GDK_PRIVATE_PACKAGES)<br>
   GDK_DEP_LIBS=&quot;$GDK_EXTRA_LIBS $GDK_DEP_LIBS $MATH_LIB&quot;<br>
-@@ -1364,7 +1373,7 @@ fi<br>
+@@ -1367,7 +1376,7 @@ fi<br>
   PKG_CHECK_MODULES(ATK, $ATK_PACKAGES)<br>
<br>
   GTK_PACKAGES=&quot;atk &gt;= atk_required_version cairo &gt;= cairo_required_version cairo-gobject &gt;= cairo_required_version gdk-pixbuf-2.0 &gt;= gdk_pixbuf_required_version gio-2.0 &gt;= glib_required_version&quot;<br>
@@ -85,7 +83,7 @@ index c280543..32da151 100644<br>
     GTK_PRIVATE_PACKAGES=&quot;$GTK_PRIVATE_PACKAGES pangoft2&quot;<br>
   fi<br>
  diff --git a/demos/gtk-demo/glarea.c b/demos/gtk-demo/glarea.c<br>
-index c267706..b3bac86 100644<br>
+index 3aba729..c6c79f7 100644<br>
  --- a/demos/gtk-demo/glarea.c<br>
  +++ b/demos/gtk-demo/glarea.c<br>
  @@ -5,7 +5,9 @@<br>
@@ -207,10 +205,10 @@ index 932daf1..54239d6 100644<br>
<br>
     return info;<br>
  diff --git a/gdk/gdkdisplay.c b/gdk/gdkdisplay.c<br>
-index 892d6a7..8323768 100644<br>
+index 6150ef7..2223629 100644<br>
  --- a/gdk/gdkdisplay.c<br>
  +++ b/gdk/gdkdisplay.c<br>
-@@ -2285,7 +2285,9 @@ gboolean<br>
+@@ -2360,7 +2360,9 @@ gboolean<br>
   gdk_display_make_gl_context_current (GdkDisplay   *display,<br>
                                        GdkGLContext *context)<br>
   {<br>
@@ -222,7 +220,7 @@ index 892d6a7..8323768 100644<br>
<br>
   GdkRenderingMode<br>
  diff --git a/gdk/gdkgl.c b/gdk/gdkgl.c<br>
-index 85ce63d..d76e8dc 100644<br>
+index e8ba770..ba7c84b 100644<br>
  --- a/gdk/gdkgl.c<br>
  +++ b/gdk/gdkgl.c<br>
  @@ -22,7 +22,9 @@<br>
@@ -243,7 +241,7 @@ index 85ce63d..d76e8dc 100644<br>
   static const char *<br>
   get_vertex_type_name (int type)<br>
   {<br>
-@@ -205,6 +208,7 @@ use_texture_rect_program (GdkGLContextPaintData *paint_data)<br>
+@@ -254,6 +257,7 @@ use_texture_rect_program (GdkGLContextPaintData *paint_data)<br>
         glUseProgram (paint_data-&gt;current_program-&gt;program);<br>
       }<br>
   }<br>
@@ -251,7 +249,7 @@ index 85ce63d..d76e8dc 100644<br>
<br>
   void<br>
   gdk_gl_texture_quads (GdkGLContext *paint_context,<br>
-@@ -212,6 +216,7 @@ gdk_gl_texture_quads (GdkGLContext *paint_context,<br>
+@@ -261,6 +265,7 @@ gdk_gl_texture_quads (GdkGLContext *paint_context,<br>
                         int n_quads,<br>
                         GdkTexturedQuad *quads)<br>
   {<br>
@@ -259,7 +257,7 @@ index 85ce63d..d76e8dc 100644<br>
     GdkGLContextPaintData *paint_data  = gdk_gl_context_get_paint_data (paint_context);<br>
     GdkGLContextProgram *program;<br>
     GdkWindow *window = gdk_gl_context_get_window (paint_context);<br>
-@@ -275,6 +280,7 @@ gdk_gl_texture_quads (GdkGLContext *paint_context,<br>
+@@ -324,6 +329,7 @@ gdk_gl_texture_quads (GdkGLContext *paint_context,<br>
<br>
     glDisableVertexAttribArray (program-&gt;position_location);<br>
     glDisableVertexAttribArray (program-&gt;uv_location);<br>
@@ -267,7 +265,7 @@ index 85ce63d..d76e8dc 100644<br>
   }<br>
<br>
   /* x,y,width,height describes a rectangle in the gl render buffer<br>
-@@ -323,6 +329,7 @@ gdk_cairo_draw_from_gl (cairo_t              *cr,<br>
+@@ -372,6 +378,7 @@ gdk_cairo_draw_from_gl (cairo_t              *cr,<br>
                           int                   width,<br>
                           int                   height)<br>
   {<br>
@@ -275,7 +273,7 @@ index 85ce63d..d76e8dc 100644<br>
     GdkGLContext *paint_context;<br>
     cairo_surface_t *image;<br>
     cairo_matrix_t matrix;<br>
-@@ -643,6 +650,7 @@ gdk_cairo_draw_from_gl (cairo_t              *cr,<br>
+@@ -692,6 +699,7 @@ gdk_cairo_draw_from_gl (cairo_t              *cr,<br>
     if (clip_region)<br>
       cairo_region_destroy (clip_region);<br>
<br>
@@ -283,7 +281,7 @@ index 85ce63d..d76e8dc 100644<br>
   }<br>
<br>
   /* This is always called with the paint context current */<br>
-@@ -650,6 +658,7 @@ void<br>
+@@ -699,6 +707,7 @@ void<br>
   gdk_gl_texture_from_surface (cairo_surface_t *surface,<br>
                             cairo_region_t  *region)<br>
   {<br>
@@ -291,14 +289,14 @@ index 85ce63d..d76e8dc 100644<br>
     GdkGLContext *paint_context;<br>
     cairo_surface_t *image;<br>
     double device_x_offset, device_y_offset;<br>
-@@ -750,4 +759,5 @@ gdk_gl_texture_from_surface (cairo_surface_t *surface,<br>
+@@ -799,4 +808,5 @@ gdk_gl_texture_from_surface (cairo_surface_t *surface,<br>
<br>
     glDisable (GL_SCISSOR_TEST);<br>
     glDeleteTextures (1, &amp;texture_id);<br>
  +#endif<br>
   }<br>
  diff --git a/gdk/gdkglcontext.c b/gdk/gdkglcontext.c<br>
-index 4d71353..9bb55ef 100644<br>
+index 00a33eb..bd8a793 100644<br>
  --- a/gdk/gdkglcontext.c<br>
  +++ b/gdk/gdkglcontext.c<br>
  @@ -85,7 +85,9 @@<br>
@@ -311,7 +309,7 @@ index 4d71353..9bb55ef 100644<br>
<br>
   typedef struct {<br>
     GdkDisplay *display;<br>
-@@ -238,6 +240,7 @@ gdk_gl_context_upload_texture (GdkGLContext    *context,<br>
+@@ -239,6 +241,7 @@ gdk_gl_context_upload_texture (GdkGLContext    *context,<br>
                                  int              height,<br>
                                  guint            texture_target)<br>
   {<br>
@@ -319,7 +317,7 @@ index 4d71353..9bb55ef 100644<br>
     g_return_if_fail (GDK_IS_GL_CONTEXT (context));<br>
<br>
     glPixelStorei (GL_UNPACK_ALIGNMENT, 4);<br>
-@@ -245,6 +248,7 @@ gdk_gl_context_upload_texture (GdkGLContext    *context,<br>
+@@ -246,6 +249,7 @@ gdk_gl_context_upload_texture (GdkGLContext    *context,<br>
     glTexImage2D (texture_target, 0, GL_RGBA, width, height, 0, GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV,<br>
                   cairo_image_surface_get_data (image_surface));<br>
     glPixelStorei (GL_UNPACK_ROW_LENGTH, 0);<br>
@@ -327,7 +325,7 @@ index 4d71353..9bb55ef 100644<br>
   }<br>
<br>
   static void<br>
-@@ -586,6 +590,7 @@ gdk_gl_context_realize (GdkGLContext  *context,<br>
+@@ -635,6 +639,7 @@ gdk_gl_context_realize (GdkGLContext  *context,<br>
   static void<br>
   gdk_gl_context_check_extensions (GdkGLContext *context)<br>
   {<br>
@@ -335,8 +333,8 @@ index 4d71353..9bb55ef 100644<br>
     GdkGLContextPrivate *priv = gdk_gl_context_get_instance_private (context);<br>
     gboolean has_npot, has_texture_rectangle;<br>
<br>
-@@ -628,6 +633,7 @@ gdk_gl_context_check_extensions (GdkGLContext *context)<br>
-                      priv-&gt;use_texture_rectangle ? &quot;yes&quot; : &quot;no&quot;));<br>
+@@ -677,6 +682,7 @@ gdk_gl_context_check_extensions (GdkGLContext *context)<br>
+                        priv-&gt;use_texture_rectangle ? &quot;yes&quot; : &quot;no&quot;));<br>
<br>
     priv-&gt;extensions_checked = TRUE;<br>
  +#endif<br>
@@ -344,7 +342,7 @@ index 4d71353..9bb55ef 100644<br>
<br>
   /**<br>
  diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c<br>
-index c34c113..3025e96 100644<br>
+index 66ebb9d..74a0c3a 100644<br>
  --- a/gdk/gdkwindow.c<br>
  +++ b/gdk/gdkwindow.c<br>
  @@ -44,7 +44,9 @@<br>
@@ -357,15 +355,7 @@ index c34c113..3025e96 100644<br>
<br>
   /* for the use of round() */<br>
   #include &quot;fallback-c89.c&quot;<br>
-@@ -1455,7 +1457,6 @@ gdk_window_new (GdkWindow     *parent,<br>
-   g_signal_connect (device_manager, &quot;device-removed&quot;,<br>
-                     G_CALLBACK (device_removed_cb), window);<br>
-<br>
--<br>
-   if ((_gdk_gl_flags &amp; (GDK_GL_ALWAYS | GDK_GL_DISABLE)) == GDK_GL_ALWAYS)<br>
-     {<br>
-       GError *error = NULL;<br>
-@@ -2761,6 +2762,13 @@ gdk_window_get_paint_gl_context (GdkWindow  *window,<br>
+@@ -2759,6 +2761,13 @@ gdk_window_get_paint_gl_context (GdkWindow  *window,<br>
   {<br>
     GError *internal_error = NULL;<br>
<br>
@@ -379,7 +369,7 @@ index c34c113..3025e96 100644<br>
     if (_gdk_gl_flags &amp; GDK_GL_DISABLE)<br>
       {<br>
         g_set_error_literal (error, GDK_GL_ERROR,<br>
-@@ -2957,6 +2965,7 @@ gdk_window_begin_paint_region (GdkWindow       *window,<br>
+@@ -2955,6 +2964,7 @@ gdk_window_begin_paint_region (GdkWindow       *window,<br>
           }<br>
         else<br>
           {<br>
@@ -387,7 +377,7 @@ index c34c113..3025e96 100644<br>
          gdk_gl_context_make_current (context);<br>
             /* With gl we always need a surface to combine the gl<br>
                drawing with the native drawing. */<br>
-@@ -2971,6 +2980,7 @@ gdk_window_begin_paint_region (GdkWindow       *window,<br>
+@@ -2969,6 +2979,7 @@ gdk_window_begin_paint_region (GdkWindow       *window,<br>
             glBlendFunc (GL_ONE, GL_ONE_MINUS_SRC_ALPHA);<br>
<br>
             glViewport (0, 0, ww, wh);<br>
@@ -395,7 +385,7 @@ index c34c113..3025e96 100644<br>
           }<br>
       }<br>
<br>
-@@ -3119,6 +3129,7 @@ gdk_window_end_paint (GdkWindow *window)<br>
+@@ -3117,6 +3128,7 @@ gdk_window_end_paint (GdkWindow *window)<br>
<br>
             gdk_gl_context_make_current (window-&gt;gl_paint_context);<br>
<br>
@@ -403,7 +393,7 @@ index c34c113..3025e96 100644<br>
             if (!cairo_region_is_empty (opaque_region))<br>
               gdk_gl_texture_from_surface (window-&gt;current_paint.surface,<br>
                                            opaque_region);<br>
-@@ -3129,6 +3140,7 @@ gdk_window_end_paint (GdkWindow *window)<br>
+@@ -3127,6 +3139,7 @@ gdk_window_end_paint (GdkWindow *window)<br>
                                              window-&gt;current_paint.need_blend_region);<br>
                 glDisable(GL_BLEND);<br>
               }<br>
@@ -412,7 +402,7 @@ index c34c113..3025e96 100644<br>
             cairo_region_destroy (opaque_region);<br>
<br>
  diff --git a/gdk/x11/Makefile.am b/gdk/x11/Makefile.am<br>
-index c488a31..d0aa7ce 100644<br>
+index c488a31..4ce3c07 100644<br>
  --- a/gdk/x11/Makefile.am<br>
  +++ b/gdk/x11/Makefile.am<br>
  @@ -39,8 +39,6 @@ libgdk_x11_la_SOURCES =     \<br>
@@ -424,7 +414,7 @@ index c488a31..d0aa7ce 100644<br>
        gdkkeys-x11.c           \<br>
        gdkmain-x11.c           \<br>
        gdkproperty-x11.c       \<br>
-@@ -53,14 +51,30 @@ libgdk_x11_la_SOURCES =    \<br>
+@@ -53,14 +51,32 @@ libgdk_x11_la_SOURCES =    \<br>
        gdkwindow-x11.h         \<br>
        gdkxftdefaults.c        \<br>
        gdkxid.c                \<br>
@@ -450,13 +440,15 @@ index c488a31..d0aa7ce 100644<br>
  +<br>
  +BUILT_SOURCES = gdkx.h<br>
  +<br>
++.PHONY: gdkx.h<br>
  +gdkx.h:<br>
-+      $(AM_V_GEN) cd $(srcdir) &amp;&amp; cp $(GDKX_HEADER) gdkx.h<br>
++      $(AM_V_GEN) cd $(srcdir) \<br>
++      &amp;&amp; (cmp -s $(GDKX_HEADER) gdkx.h || cp $(GDKX_HEADER) gdkx.h )<br>
  +<br>
   libgdkx11include_HEADERS =   \<br>
        gdkx-autocleanups.h     \<br>
        gdkx11applaunchcontext.h \<br>
-@@ -74,7 +88,6 @@ libgdkx11include_HEADERS =   \<br>
+@@ -74,7 +90,6 @@ libgdkx11include_HEADERS =   \<br>
        gdkx11display.h         \<br>
        gdkx11displaymanager.h  \<br>
        gdkx11dnd.h             \<br>
@@ -464,7 +456,7 @@ index c488a31..d0aa7ce 100644<br>
        gdkx11keys.h            \<br>
        gdkx11property.h        \<br>
        gdkx11screen.h          \<br>
-@@ -83,9 +96,16 @@ libgdkx11include_HEADERS =  \<br>
+@@ -83,9 +98,16 @@ libgdkx11include_HEADERS =  \<br>
        gdkx11visual.h          \<br>
        gdkx11window.h<br>
<br>
@@ -482,7 +474,7 @@ index c488a31..d0aa7ce 100644<br>
  +<br>
   -include $(top_srcdir)/<a href="http://git.mk" rel="noreferrer" target="_blank">git.mk</a><br>
  diff --git a/gdk/x11/gdkdisplay-x11.c b/gdk/x11/gdkdisplay-x11.c<br>
-index 5816d18..5d2dae6 100644<br>
+index de91c64..42d50f6 100644<br>
  --- a/gdk/x11/gdkdisplay-x11.c<br>
  +++ b/gdk/x11/gdkdisplay-x11.c<br>
  @@ -37,7 +37,9 @@<br>
@@ -495,19 +487,19 @@ index 5816d18..5d2dae6 100644<br>
   #include &quot;gdk-private.h&quot;<br>
<br>
   #include &lt;glib.h&gt;<br>
-@@ -2989,8 +2991,8 @@ gdk_x11_display_class_init (GdkX11DisplayClass * class)<br>
-   display_class-&gt;convert_selection = _gdk_x11_display_convert_selection;<br>
+@@ -2959,7 +2961,9 @@ gdk_x11_display_class_init (GdkX11DisplayClass * class)<br>
     display_class-&gt;text_property_to_utf8_list = _gdk_x11_display_text_property_to_utf8_list;<br>
     display_class-&gt;utf8_to_string_target = _gdk_x11_display_utf8_to_string_target;<br>
--<br>
+<br>
+-  display_class-&gt;make_gl_context_current = gdk_x11_display_make_gl_context_current;<br>
  +#ifdef HAVE_OPENGL<br>
-   display_class-&gt;make_gl_context_current = gdk_x11_display_make_gl_context_current;<br>
--<br>
++   display_class-&gt;make_gl_context_current = gdk_x11_display_make_gl_context_current;<br>
  +#endif<br>
-   _gdk_x11_windowing_init ();<br>
- }<br>
+<br>
+   display_class-&gt;get_default_seat = gdk_x11_display_get_default_seat;<br>
+<br>
  diff --git a/gdk/x11/gdkscreen-x11.c b/gdk/x11/gdkscreen-x11.c<br>
-index 2bd7f28..30032e0 100644<br>
+index 9d8ed20..bd46b00 100644<br>
  --- a/gdk/x11/gdkscreen-x11.c<br>
  +++ b/gdk/x11/gdkscreen-x11.c<br>
  @@ -1968,3 +1968,8 @@ gdk_x11_screen_get_current_desktop (GdkScreen *screen)<br>
@@ -520,7 +512,7 @@ index 2bd7f28..30032e0 100644<br>
  +void _gdk_x11_screen_update_visuals_for_gl (GdkScreen *screen) {}<br>
  +#endif<br>
  diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c<br>
-index d08cee0..d354628 100644<br>
+index 9ed087a..30d6eb7 100644<br>
  --- a/gdk/x11/gdkwindow-x11.c<br>
  +++ b/gdk/x11/gdkwindow-x11.c<br>
  @@ -36,7 +36,9 @@<br>
@@ -533,7 +525,7 @@ index d08cee0..d354628 100644<br>
   #include &quot;gdkprivate-x11.h&quot;<br>
   #include &quot;gdk-private.h&quot;<br>
<br>
-@@ -5768,7 +5770,9 @@ gdk_window_impl_x11_class_init (GdkWindowImplX11Class *klass)<br>
+@@ -5782,7 +5784,9 @@ gdk_window_impl_x11_class_init (GdkWindowImplX11Class *klass)<br>
     impl_class-&gt;set_opaque_region = gdk_x11_window_set_opaque_region;<br>
     impl_class-&gt;set_shadow_width = gdk_x11_window_set_shadow_width;<br>
     impl_class-&gt;show_window_menu = gdk_x11_window_show_window_menu;<br>
@@ -557,71 +549,10 @@ index edb0ea7..a317d61 100644<br>
   G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11Keymap, g_object_unref)<br>
   G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11Screen, g_object_unref)<br>
   G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11Visual, g_object_unref)<br>
-diff --git a/gdk/x11/gdkx-with-gl-context.h b/gdk/x11/gdkx-with-gl-context.h<br>
-new file mode 100644<br>
-index 0000000..ae05fa6<br>
---- /dev/null<br>
-+++ b/gdk/x11/gdkx-with-gl-context.h<br>
-@@ -0,0 +1,59 @@<br>
-+/* GDK - The GIMP Drawing Kit<br>
-+ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald<br>
-+ *<br>
-+ * This library is free software; you can redistribute it and/or<br>
-+ * modify it under the terms of the GNU Lesser General Public<br>
-+ * License as published by the Free Software Foundation; either<br>
-+ * version 2 of the License, or (at your option) any later version.<br>
-+ *<br>
-+ * This library is distributed in the hope that it will be useful,<br>
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of<br>
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU<br>
-+ * Lesser General Public License for more details.<br>
-+ *<br>
-+ * You should have received a copy of the GNU Lesser General Public<br>
-+ * License along with this library. If not, see &lt;<a href="http://www.gnu.org/licenses/" rel="noreferrer" target="_blank">http://www.gnu.org/licenses/</a>&gt;.<br>
-+ */<br>
-+<br>
-+/*<br>
-+ * Modified by the GTK+ Team and others 1997-2000.  See the AUTHORS<br>
-+ * file for a list of people on the GTK+ Team.  See the ChangeLog<br>
-+ * files for a list of changes.  These files are distributed with<br>
-+ * GTK+ at <a href="ftp://ftp.gtk.org/pub/gtk/" rel="noreferrer" target="_blank">ftp://ftp.gtk.org/pub/gtk/</a>.<br>
-+ */<br>
-+<br>
-+#ifndef __GDK_X_H__<br>
-+#define __GDK_X_H__<br>
-+<br>
-+#include &lt;gdk/gdk.h&gt;<br>
-+<br>
-+#include &lt;X11/Xlib.h&gt;<br>
-+#include &lt;X11/Xutil.h&gt;<br>
-+<br>
-+#define __GDKX_H_INSIDE__<br>
-+<br>
-+#include &lt;gdk/x11/gdkx11applaunchcontext.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11cursor.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11device.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11device-core.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11device-xi2.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11devicemanager.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11devicemanager-core.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11devicemanager-xi2.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11display.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11displaymanager.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11dnd.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11glcontext.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11keys.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11property.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11screen.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11selection.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11utils.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11visual.h&gt;<br>
-+#include &lt;gdk/x11/gdkx11window.h&gt;<br>
-+<br>
-+#include &lt;gdk/x11/gdkx-autocleanups.h&gt;<br>
-+<br>
-+#undef __GDKX_H_INSIDE__<br>
-+<br>
-+#endif /* __GDK_X_H__ */<br>
+diff --git a/gdk/x11/gdkx.h b/gdk/x11/gdkx-with-gl-context.h<br>
+similarity index 100%<br>
+rename from gdk/x11/gdkx.h<br>
+rename to gdk/x11/gdkx-with-gl-context.h<br>
  diff --git a/gdk/x11/gdkx-without-gl-context.h b/gdk/x11/gdkx-without-gl-context.h<br>
  new file mode 100644<br>
  index 0000000..c9e2617<br>
@@ -686,76 +617,11 @@ index 0000000..c9e2617<br>
  +#undef __GDKX_H_INSIDE__<br>
  +<br>
  +#endif /* __GDK_X_H__ */<br>
-diff --git a/gdk/x11/gdkx.h b/gdk/x11/gdkx.h<br>
-deleted file mode 100644<br>
-index ae05fa6..0000000<br>
---- a/gdk/x11/gdkx.h<br>
-+++ /dev/null<br>
-@@ -1,59 +0,0 @@<br>
--/* GDK - The GIMP Drawing Kit<br>
-- * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald<br>
-- *<br>
-- * This library is free software; you can redistribute it and/or<br>
-- * modify it under the terms of the GNU Lesser General Public<br>
-- * License as published by the Free Software Foundation; either<br>
-- * version 2 of the License, or (at your option) any later version.<br>
-- *<br>
-- * This library is distributed in the hope that it will be useful,<br>
-- * but WITHOUT ANY WARRANTY; without even the implied warranty of<br>
-- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU<br>
-- * Lesser General Public License for more details.<br>
-- *<br>
-- * You should have received a copy of the GNU Lesser General Public<br>
-- * License along with this library. If not, see &lt;<a href="http://www.gnu.org/licenses/" rel="noreferrer" target="_blank">http://www.gnu.org/licenses/</a>&gt;.<br>
-- */<br>
--<br>
--/*<br>
-- * Modified by the GTK+ Team and others 1997-2000.  See the AUTHORS<br>
-- * file for a list of people on the GTK+ Team.  See the ChangeLog<br>
-- * files for a list of changes.  These files are distributed with<br>
-- * GTK+ at <a href="ftp://ftp.gtk.org/pub/gtk/" rel="noreferrer" target="_blank">ftp://ftp.gtk.org/pub/gtk/</a>.<br>
-- */<br>
--<br>
--#ifndef __GDK_X_H__<br>
--#define __GDK_X_H__<br>
--<br>
--#include &lt;gdk/gdk.h&gt;<br>
--<br>
--#include &lt;X11/Xlib.h&gt;<br>
--#include &lt;X11/Xutil.h&gt;<br>
--<br>
--#define __GDKX_H_INSIDE__<br>
--<br>
--#include &lt;gdk/x11/gdkx11applaunchcontext.h&gt;<br>
--#include &lt;gdk/x11/gdkx11cursor.h&gt;<br>
--#include &lt;gdk/x11/gdkx11device.h&gt;<br>
--#include &lt;gdk/x11/gdkx11device-core.h&gt;<br>
--#include &lt;gdk/x11/gdkx11device-xi2.h&gt;<br>
--#include &lt;gdk/x11/gdkx11devicemanager.h&gt;<br>
--#include &lt;gdk/x11/gdkx11devicemanager-core.h&gt;<br>
--#include &lt;gdk/x11/gdkx11devicemanager-xi2.h&gt;<br>
--#include &lt;gdk/x11/gdkx11display.h&gt;<br>
--#include &lt;gdk/x11/gdkx11displaymanager.h&gt;<br>
--#include &lt;gdk/x11/gdkx11dnd.h&gt;<br>
--#include &lt;gdk/x11/gdkx11glcontext.h&gt;<br>
--#include &lt;gdk/x11/gdkx11keys.h&gt;<br>
--#include &lt;gdk/x11/gdkx11property.h&gt;<br>
--#include &lt;gdk/x11/gdkx11screen.h&gt;<br>
--#include &lt;gdk/x11/gdkx11selection.h&gt;<br>
--#include &lt;gdk/x11/gdkx11utils.h&gt;<br>
--#include &lt;gdk/x11/gdkx11visual.h&gt;<br>
--#include &lt;gdk/x11/gdkx11window.h&gt;<br>
--<br>
--#include &lt;gdk/x11/gdkx-autocleanups.h&gt;<br>
--<br>
--#undef __GDKX_H_INSIDE__<br>
--<br>
--#endif /* __GDK_X_H__ */<br>
  diff --git a/gtk/Makefile.am b/gtk/Makefile.am<br>
-index 801c3a5..2d8839d 100644<br>
+index 6a53a2b..49a35e6 100644<br>
  --- a/gtk/Makefile.am<br>
  +++ b/gtk/Makefile.am<br>
-@@ -1246,14 +1246,13 @@ gtkprivatetypebuiltins.c: $(gtk_private_type_h_sources)  gtkprivatetypebuiltins.<br>
+@@ -1351,14 +1351,13 @@ gtkprivatetypebuiltins.c: $(gtk_private_type_h_sources)  gtkprivatetypebuiltins.<br>
        &amp;&amp; cp xgen-gptbc gtkprivatetypebuiltins.c  \<br>
        &amp;&amp; rm -f xgen-gptbc<br>
<br>
@@ -772,7 +638,7 @@ index 801c3a5..2d8839d 100644<br>
   gtktestutils.c: gtktypefuncs.c<br>
<br>
  diff --git a/gtk/gtkglarea.c b/gtk/gtkglarea.c<br>
-index 4098409..45fa1d1 100644<br>
+index 245fc6b..4214ad1 100644<br>
  --- a/gtk/gtkglarea.c<br>
  +++ b/gtk/gtkglarea.c<br>
  @@ -28,7 +28,9 @@<br>
@@ -868,7 +734,7 @@ index 4098409..45fa1d1 100644<br>
<br>
   static gboolean<br>
  diff --git a/gtk/inspector/general.c b/gtk/inspector/general.c<br>
-index 0611373..4499a29 100644<br>
+index 4eab3a7..c4e900e 100644<br>
  --- a/gtk/inspector/general.c<br>
  +++ b/gtk/inspector/general.c<br>
  @@ -33,8 +33,10 @@<br>
@@ -882,7 +748,7 @@ index 0611373..4499a29 100644<br>
<br>
   #ifdef GDK_WINDOWING_WIN32<br>
   #include &quot;win32/gdkwin32.h&quot;<br>
-@@ -146,6 +148,7 @@ append_extension_row (GtkInspectorGeneral *gen,<br>
+@@ -147,6 +149,7 @@ append_extension_row (GtkInspectorGeneral *gen,<br>
     gtk_size_group_add_widget (GTK_SIZE_GROUP (gen-&gt;priv-&gt;labels), label);<br>
   }<br>
<br>
@@ -890,7 +756,7 @@ index 0611373..4499a29 100644<br>
   #ifdef GDK_WINDOWING_X11<br>
   static void<br>
   append_glx_extension_row (GtkInspectorGeneral *gen,<br>
-@@ -155,6 +158,7 @@ append_glx_extension_row (GtkInspectorGeneral *gen,<br>
+@@ -156,6 +159,7 @@ append_glx_extension_row (GtkInspectorGeneral *gen,<br>
     append_extension_row (gen, ext, epoxy_has_glx_extension (dpy, 0, ext));<br>
   }<br>
   #endif<br>
@@ -898,27 +764,27 @@ index 0611373..4499a29 100644<br>
<br>
   #ifdef GDK_WINDOWING_WAYLAND<br>
   static void<br>
-@@ -174,6 +178,7 @@ init_gl (GtkInspectorGeneral *gen)<br>
-<br>
-   display = gdk_display_get_default ();<br>
-<br>
+@@ -171,6 +175,7 @@ append_egl_extension_row (GtkInspectorGeneral *gen,<br>
+ static void<br>
+ init_gl (GtkInspectorGeneral *gen)<br>
+ {<br>
  +#ifdef HAVE_OPENGL<br>
   #ifdef GDK_WINDOWING_X11<br>
-   if (GDK_IS_X11_DISPLAY (display))<br>
+   if (GDK_IS_X11_DISPLAY (gdk_display_get_default ()))<br>
       {<br>
-@@ -199,6 +204,7 @@ init_gl (GtkInspectorGeneral *gen)<br>
+@@ -197,6 +202,7 @@ init_gl (GtkInspectorGeneral *gen)<br>
       }<br>
     else<br>
   #endif<br>
  +#endif<br>
   #ifdef GDK_WINDOWING_WAYLAND<br>
-   if (GDK_IS_WAYLAND_DISPLAY (display))<br>
+   if (GDK_IS_WAYLAND_DISPLAY (gdk_display_get_default ()))<br>
       {<br>
  diff --git a/tests/Makefile.am b/tests/Makefile.am<br>
-index 50f2986..3b39169 100644<br>
+index 681807d..2941a36 100644<br>
  --- a/tests/Makefile.am<br>
  +++ b/tests/Makefile.am<br>
-@@ -78,8 +78,6 @@ noinst_PROGRAMS =  $(TEST_PROGS)     \<br>
+@@ -80,8 +80,6 @@ noinst_PROGRAMS =  $(TEST_PROGS)     \<br>
        testfullscreen                  \<br>
        testgeometry                    \<br>
        testgiconpixbuf                 \<br>
@@ -927,18 +793,19 @@ index 50f2986..3b39169 100644<br>
        testgrid                        \<br>
        testgtk                         \<br>
        testheaderbar                   \<br>
-@@ -166,10 +164,16 @@ noinst_PROGRAMS =  $(TEST_PROGS) \<br>
+@@ -169,11 +167,17 @@ noinst_PROGRAMS =  $(TEST_PROGS) \<br>
        testactionbar                   \<br>
        testwindowsize                  \<br>
        testpopover                     \<br>
  -     gdkgears                        \<br>
        listmodel                       \<br>
+       testpopup                       \<br>
        $(NULL)<br>
<br>
  +if HAVE_OPENGL<br>
  +noinst_PROGRAMS +=<br>
-+      testglarea                      \<br>
-+      testglblending                  \<br>
++      testglarea                      \<br>
++      testglblending                  \<br>
  +     gdkgears<br>
  +endif<br>
  +<br>
@@ -946,11 +813,11 @@ index 50f2986..3b39169 100644<br>
   noinst_PROGRAMS += testerrors<br>
   endif<br>
  diff --git a/testsuite/gtk/objects-finalize.c b/testsuite/gtk/objects-finalize.c<br>
-index 3568505..682ea10 100644<br>
+index e0ebee0..703643c 100644<br>
  --- a/testsuite/gtk/objects-finalize.c<br>
  +++ b/testsuite/gtk/objects-finalize.c<br>
-@@ -114,8 +114,10 @@ main (int argc, char **argv)<br>
-         all_types[i] != GDK_TYPE_X11_DISPLAY &amp;&amp;<br>
+@@ -115,8 +115,10 @@ main (int argc, char **argv)<br>
+         all_types[i] != GDK_TYPE_X11_DEVICE_MANAGER_CORE &amp;&amp;<br>
          all_types[i] != GDK_TYPE_X11_DEVICE_MANAGER_XI2 &amp;&amp;<br>
          all_types[i] != GDK_TYPE_X11_DISPLAY_MANAGER &amp;&amp;<br>
  +#ifdef HAVE_OPENGL<br>
@@ -961,5 +828,5 @@ index 3568505..682ea10 100644<br>
          all_types[i] != GDK_TYPE_PIXBUF_LOADER &amp;&amp;<br>
          all_types[i] != gdk_pixbuf_simple_anim_iter_get_type())<br>
  --<br>
-2.8.1<br>
+2.1.4<br>
<br>
diff --git a/meta/recipes-gnome/gtk+/gtk+3/0004-configure.ac-Fix-wayland-protocols-path.patch b/meta/recipes-gnome/gtk+/gtk+3/0004-configure.ac-Fix-wayland-protocols-path.patch<br>
new file mode 100644<br>
index 0000000..634b3a4<br>
--- /dev/null<br>
+++ b/meta/recipes-gnome/gtk+/gtk+3/0004-configure.ac-Fix-wayland-protocols-path.patch<br>
@@ -0,0 +1,36 @@<br>
+From 97b78e566634579bbae51be914aeaaa921137a8b Mon Sep 17 00:00:00 2001<br>
+From: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com" target="_blank">jussi.kukkonen@intel.com</a>&gt;<br>
+Date: Thu, 9 Jun 2016 11:21:36 +0300<br>
+Subject: [PATCH 4/4] <a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a>: Fix wayland-protocols path<br>
+<br>
+The wayland-protocols directory is used during build: Fix the path<br>
+to point to sysroot specified in recipe.<br>
+<br>
+Normally PKG_CONFIG_SYSROOT_DIR could be used in <a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a> but that<br>
+breaks multilib gtk+ as it would point to multilib sysroot when the<br>
+(allarch) wayland-protocols is actually in the machine sysroot.<br>
+<br>
+Signed-off-by: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com" target="_blank">jussi.kukkonen@intel.com</a>&gt;<br>
+Upstream-Status: Inappropriate [embedded specific]<br>
+<br>
+Signed-off-by: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com" target="_blank">jussi.kukkonen@intel.com</a>&gt;<br>
+---<br>
+ <a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a> | 2 +-<br>
+ 1 file changed, 1 insertion(+), 1 deletion(-)<br>
+<br>
+diff --git a/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a> b/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
+index a3e9beb..dde9dc5 100644<br>
+--- a/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
++++ b/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
+@@ -461,7 +461,7 @@ fi<br>
+ if test &quot;$enable_wayland_backend&quot; = &quot;yes&quot;; then<br>
+   # For the cairo image backend<br>
+   cairo_backends=&quot;$cairo_backends cairo&quot;<br>
+-  AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, `$PKG_CONFIG --variable=pkgdatadir wayland-protocols`)<br>
++  AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, ${WAYLAND_PROTOCOLS_SYSROOT_DIR}`$PKG_CONFIG --variable=pkgdatadir wayland-protocols`)<br>
+   GDK_BACKENDS=&quot;$GDK_BACKENDS wayland&quot;<br>
+   GDK_WINDOWING=&quot;$GDK_WINDOWING<br>
+ #define GDK_WINDOWING_WAYLAND&quot;<br>
+--<br>
+2.1.4<br>
+<br>
diff --git a/meta/recipes-gnome/gtk+/gtk+3/Dont-force-csd.patch b/meta/recipes-gnome/gtk+/gtk+3/Dont-force-csd.patch<br>
deleted file mode 100644<br>
index 32d8a84..0000000<br>
--- a/meta/recipes-gnome/gtk+/gtk+3/Dont-force-csd.patch<br>
+++ /dev/null<br>
@@ -1,118 +0,0 @@<br>
-window: Check if we can use CSD before enabling them<br>
-<br>
-Upstream-Status: Backport<br>
-Signed-off-by: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com" target="_blank">jussi.kukkonen@intel.com</a>&gt;<br>
-<br>
-<br>
-From c5e5ee67490e7e7af56052d8f8beb75db002c2f1 Mon Sep 17 00:00:00 2001<br>
-From: Emmanuele Bassi &lt;<a href="mailto:ebassi@gnome.org" target="_blank">ebassi@gnome.org</a>&gt;<br>
-Date: Wed, 3 Jun 2015 14:07:29 +0100<br>
-Subject: window: Check if we can use CSD before enabling them<br>
-<br>
-The change in 03213b9509fc1df16c66194ea168aed6c15110e9 changed the rules<br>
-as to when CSD can be enabled, but it also unconditionally enables CSD<br>
-with the implicit assumption that client-side shadows were the real<br>
-issue, and that we could work around that by drawing our own borders.<br>
-This also means that setting a titlebar for a GtkWindow will enable CSD<br>
-unconditionally.<br>
-<br>
-In reality, some window managers (like Matchbox) *only* support<br>
-server-side decorations, and will ignore all hints to the contrary, to<br>
-the point of drawing decorations at random locations on top of the<br>
-window.<br>
-<br>
-Since CSD are enabled unconditionally, the GTK_CSD environment variable<br>
-is also not a suitable escape hatch.<br>
-<br>
-In the grand tradition of asking ourselves if we should do something<br>
-just because we can, we should split the environment checks from the<br>
-checks on what the user requested; by doing that, we can also check<br>
-when enabling client-side decorations, and ideally bail out if needed.<br>
-<br>
-<a href="https://bugzilla.gnome.org/show_bug.cgi?id=750343" rel="noreferrer" target="_blank">https://bugzilla.gnome.org/show_bug.cgi?id=750343</a><br>
-<br>
-diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c<br>
-index 423c6bd..9fe882f 100644<br>
---- a/gtk/gtkwindow.c<br>
-+++ b/gtk/gtkwindow.c<br>
-@@ -4056,6 +4056,32 @@ gtk_window_supports_client_shadow (GtkWindow *window)<br>
-   return TRUE;<br>
- }<br>
-<br>
-+static gboolean<br>
-+gtk_window_can_use_csd (GtkWindow *window)<br>
-+{<br>
-+  const gchar *csd_env;<br>
-+<br>
-+#ifdef GDK_WINDOWING_BROADWAY<br>
-+  if (GDK_IS_BROADWAY_DISPLAY (gtk_widget_get_display (GTK_WIDGET (window))))<br>
-+    return TRUE;<br>
-+#endif<br>
-+<br>
-+#ifdef GDK_WINDOWING_WAYLAND<br>
-+  if (GDK_IS_WAYLAND_DISPLAY (gtk_widget_get_display (GTK_WIDGET (window))))<br>
-+    return TRUE;<br>
-+#endif<br>
-+<br>
-+#ifdef GDK_WINDOWING_MIR<br>
-+  if (GDK_IS_MIR_DISPLAY (gtk_widget_get_display (GTK_WIDGET (window))))<br>
-+    return TRUE;<br>
-+#endif<br>
-+<br>
-+  csd_env = g_getenv (&quot;GTK_CSD&quot;);<br>
-+<br>
-+  /* If GTK_CSD is unset we default to CSD support */<br>
-+  return csd_env == NULL || (strcmp (csd_env, &quot;1&quot;) == 0);<br>
-+}<br>
-+<br>
- static void<br>
- gtk_window_enable_csd (GtkWindow *window)<br>
- {<br>
-@@ -4063,6 +4089,10 @@ gtk_window_enable_csd (GtkWindow *window)<br>
-   GtkWidget *widget = GTK_WIDGET (window);<br>
-   GdkVisual *visual;<br>
-<br>
-+  /* If the environment does not support CSD, then there&#39;s no point in enabling them */<br>
-+  if (!gtk_window_can_use_csd (window))<br>
-+    return;<br>
-+<br>
-   /* We need a visual with alpha for client shadows */<br>
-   if (priv-&gt;use_client_shadow)<br>
-     {<br>
-@@ -5839,7 +5869,6 @@ static gboolean<br>
- gtk_window_should_use_csd (GtkWindow *window)<br>
- {<br>
-   GtkWindowPrivate *priv = window-&gt;priv;<br>
--  const gchar *csd_env;<br>
-<br>
-   if (priv-&gt;csd_requested)<br>
-     return TRUE;<br>
-@@ -5850,24 +5879,7 @@ gtk_window_should_use_csd (GtkWindow *window)<br>
-   if (priv-&gt;type == GTK_WINDOW_POPUP)<br>
-     return FALSE;<br>
-<br>
--#ifdef GDK_WINDOWING_BROADWAY<br>
--  if (GDK_IS_BROADWAY_DISPLAY (gtk_widget_get_display (GTK_WIDGET (window))))<br>
--    return TRUE;<br>
--#endif<br>
--<br>
--#ifdef GDK_WINDOWING_WAYLAND<br>
--  if (GDK_IS_WAYLAND_DISPLAY (gtk_widget_get_display (GTK_WIDGET (window))))<br>
--    return TRUE;<br>
--#endif<br>
--<br>
--#ifdef GDK_WINDOWING_MIR<br>
--  if (GDK_IS_MIR_DISPLAY (gtk_widget_get_display (GTK_WIDGET (window))))<br>
--    return TRUE;<br>
--#endif<br>
--<br>
--  csd_env = g_getenv (&quot;GTK_CSD&quot;);<br>
--<br>
--  return (g_strcmp0 (csd_env, &quot;1&quot;) == 0);<br>
-+  return gtk_window_can_use_csd (window);<br>
- }<br>
-<br>
- static void<br>
---<br>
-cgit v0.10.2<br>
-<br>
diff --git a/meta/recipes-gnome/gtk+/gtk+<a href="http://3_3.18.8.bb" rel="noreferrer" target="_blank">3_3.18.8.bb</a> b/meta/recipes-gnome/gtk+/gtk+<a href="http://3_3.20.6.bb" rel="noreferrer" target="_blank">3_3.20.6.bb</a><br>
similarity index 57%<br>
rename from meta/recipes-gnome/gtk+/gtk+<a href="http://3_3.18.8.bb" rel="noreferrer" target="_blank">3_3.18.8.bb</a><br>
rename to meta/recipes-gnome/gtk+/gtk+<a href="http://3_3.20.6.bb" rel="noreferrer" target="_blank">3_3.20.6.bb</a><br>
index d776b6d..453a4e2 100644<br>
--- a/meta/recipes-gnome/gtk+/gtk+<a href="http://3_3.18.8.bb" rel="noreferrer" target="_blank">3_3.18.8.bb</a><br>
+++ b/meta/recipes-gnome/gtk+/gtk+<a href="http://3_3.20.6.bb" rel="noreferrer" target="_blank">3_3.20.6.bb</a><br>
@@ -3,14 +3,13 @@ require gtk+3.inc<br>
  MAJ_VER = &quot;${@oe.utils.trim_version(&quot;${PV}&quot;, 2)}&quot;<br>
<br>
  SRC_URI = &quot;<a href="http://ftp.gnome.org/pub/gnome/sources/gtk+/$%7BMAJ_VER%7D/gtk+-$%7BPV%7D.tar.xz" rel="noreferrer" target="_blank">http://ftp.gnome.org/pub/gnome/sources/gtk+/${MAJ_VER}/gtk+-${PV}.tar.xz</a> \<br>
-           file://hardcoded_libtool.patch \<br>
-           file://Dont-force-csd.patch \<br>
-           file://Do-not-try-to-initialize-GL-without-libGL.patch \<br>
-           file://0001-Add-disable-opengl-configure-option.patch \<br>
+           file://0001-Hardcoded-libtool.patch \<br>
+           file://0002-Do-not-try-to-initialize-GL-without-libGL.patch \<br>
+           file://0003-Add-disable-opengl-configure-option.patch \<br>
+           file://0004-configure.ac-Fix-wayland-protocols-path.patch \<br>
            &quot;<br>
-<br>
-SRC_URI[md5sum] = &quot;9671acb41dc13561d19233f1a75cf184&quot;<br>
-SRC_URI[sha256sum] = &quot;1c53ef1bb55364698f7183ecd185b547f92f4a3a7abfafd531400232e2e052f8&quot;<br>
+SRC_URI[md5sum] = &quot;914e55ea053161f4a575c1c8dade7954&quot;<br>
+SRC_URI[sha256sum] = &quot;3f8016563a96b1cfef4ac9e795647f6316deb2978ff939b19e4e4f8f936fa4b2&quot;<br>
<br>
  S = &quot;${WORKDIR}/gtk+-${PV}&quot;<br>
<br>
diff --git a/meta/recipes-gnome/gtk+/<a href="http://gtk-icon-utils-native_3.18.8.bb" rel="noreferrer" target="_blank">gtk-icon-utils-native_3.18.8.bb</a> b/meta/recipes-gnome/gtk+/<a href="http://gtk-icon-utils-native_3.20.6.bb" rel="noreferrer" target="_blank">gtk-icon-utils-native_3.20.6.bb</a><br>
similarity index 93%<br>
rename from meta/recipes-gnome/gtk+/<a href="http://gtk-icon-utils-native_3.18.8.bb" rel="noreferrer" target="_blank">gtk-icon-utils-native_3.18.8.bb</a><br>
rename to meta/recipes-gnome/gtk+/<a href="http://gtk-icon-utils-native_3.20.6.bb" rel="noreferrer" target="_blank">gtk-icon-utils-native_3.20.6.bb</a><br>
index 793f14a..e870ba3 100644<br>
--- a/meta/recipes-gnome/gtk+/<a href="http://gtk-icon-utils-native_3.18.8.bb" rel="noreferrer" target="_blank">gtk-icon-utils-native_3.18.8.bb</a><br>
+++ b/meta/recipes-gnome/gtk+/<a href="http://gtk-icon-utils-native_3.20.6.bb" rel="noreferrer" target="_blank">gtk-icon-utils-native_3.20.6.bb</a><br>
@@ -10,8 +10,8 @@ MAJ_VER = &quot;${@oe.utils.trim_version(&quot;${PV}&quot;, 2)}&quot;<br>
<br>
  SRC_URI = &quot;<a href="http://ftp.gnome.org/pub/gnome/sources/gtk+/$%7BMAJ_VER%7D/gtk+-$%7BPV%7D.tar.xz" rel="noreferrer" target="_blank">http://ftp.gnome.org/pub/gnome/sources/gtk+/${MAJ_VER}/gtk+-${PV}.tar.xz</a> \<br>
            file://Remove-Gdk-dependency-from-gtk-encode-symbolic-svg.patch&quot;<br>
-SRC_URI[md5sum] = &quot;9671acb41dc13561d19233f1a75cf184&quot;<br>
-SRC_URI[sha256sum] = &quot;1c53ef1bb55364698f7183ecd185b547f92f4a3a7abfafd531400232e2e052f8&quot;<br>
+SRC_URI[md5sum] = &quot;914e55ea053161f4a575c1c8dade7954&quot;<br>
+SRC_URI[sha256sum] = &quot;3f8016563a96b1cfef4ac9e795647f6316deb2978ff939b19e4e4f8f936fa4b2&quot;<br>
<br>
  LIC_FILES_CHKSUM = &quot;file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \<br>
                      file://gtk/gtk.h;endline=25;md5=1d8dc0fccdbfa26287a271dce88af737 \<br>
<br>
</blockquote>
</div></div></blockquote></div><br></div></div>