Yocto 2.5

Move OpenBMC to Yocto 2.5(sumo)

Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Change-Id: I5c5ad6904a16e14c1c397f0baf10c9d465594a78
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/epiphany/epiphany_3.24.3.bb b/import-layers/yocto-poky/meta/recipes-gnome/epiphany/epiphany_3.24.3.bb
deleted file mode 100644
index c507d23..0000000
--- a/import-layers/yocto-poky/meta/recipes-gnome/epiphany/epiphany_3.24.3.bb
+++ /dev/null
@@ -1,25 +0,0 @@
-SUMMARY = "WebKit based web browser for GNOME"
-LICENSE = "GPLv3+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-
-DEPENDS = "libsoup-2.4 webkitgtk gtk+3 iso-codes avahi libnotify gcr \
-	   gsettings-desktop-schemas gnome-desktop3 libxml2-native \
-	   glib-2.0 glib-2.0-native json-glib"
-
-inherit gnomebase gsettings distro_features_check upstream-version-is-even gettext
-REQUIRED_DISTRO_FEATURES = "x11"
-
-SRC_URI += "file://0001-yelp.m4-drop-the-check-for-itstool.patch \
-            file://0001-bookmarks-Check-for-return-value-of-fread.patch \
-           "
-SRC_URI[archive.md5sum] = "c0221aec6a08935e6854eaa9de9451ef"
-SRC_URI[archive.sha256sum] = "fef51676310d9f37e18c9b2d778254232eb17cccd988c2d1ecf42c7b2963a154"
-
-EXTRA_OECONF += " --with-distributor-name=${DISTRO} --enable-debug=no"
-
-do_configure_prepend() {
-    sed -i -e s:help::g ${S}/Makefile.am
-}
-
-FILES_${PN} += "${datadir}/dbus-1 ${datadir}/gnome-shell/search-providers"
-RDEPENDS_${PN} = "iso-codes adwaita-icon-theme"
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/epiphany/epiphany_3.26.6.bb b/import-layers/yocto-poky/meta/recipes-gnome/epiphany/epiphany_3.26.6.bb
new file mode 100644
index 0000000..e250f76
--- /dev/null
+++ b/import-layers/yocto-poky/meta/recipes-gnome/epiphany/epiphany_3.26.6.bb
@@ -0,0 +1,22 @@
+SUMMARY = "WebKit based web browser for GNOME"
+LICENSE = "GPLv3+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+DEPENDS = "libsoup-2.4 webkitgtk gtk+3 iso-codes avahi libnotify gcr \
+	   gsettings-desktop-schemas gnome-desktop3 libxml2-native \
+	   glib-2.0 glib-2.0-native json-glib"
+
+GNOMEBASEBUILDCLASS = "meson"
+inherit gnomebase gsettings distro_features_check upstream-version-is-even gettext
+REQUIRED_DISTRO_FEATURES = "x11"
+
+SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \
+           file://0002-help-meson.build-disable-the-use-of-yelp.patch \
+           "
+SRC_URI[archive.md5sum] = "8449968366a6f9aaff3ac228ddfc7c66"
+SRC_URI[archive.sha256sum] = "01b16aa55d312ae0f17d3136f90d8c68ac748715f119412fb1917023c6f630a8"
+
+EXTRA_OEMESON += " -Ddistributor_name=${DISTRO}"
+
+FILES_${PN} += "${datadir}/dbus-1 ${datadir}/gnome-shell/search-providers"
+RDEPENDS_${PN} = "iso-codes adwaita-icon-theme"
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/epiphany/files/0001-bookmarks-Check-for-return-value-of-fread.patch b/import-layers/yocto-poky/meta/recipes-gnome/epiphany/files/0001-bookmarks-Check-for-return-value-of-fread.patch
deleted file mode 100644
index ddcd394..0000000
--- a/import-layers/yocto-poky/meta/recipes-gnome/epiphany/files/0001-bookmarks-Check-for-return-value-of-fread.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From aa2176be32eed2578da82f34d31148f934c11c34 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 28 Jun 2017 17:03:45 -0700
-Subject: [PATCH] bookmarks: Check for return value of fread()
-
-Fixes below compiler error
-ignoring return value of 'fread', declared with attribute warn_unused_result
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/bookmarks/ephy-bookmark.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/bookmarks/ephy-bookmark.c b/src/bookmarks/ephy-bookmark.c
-index ff0239b..8633ce4 100644
---- a/src/bookmarks/ephy-bookmark.c
-+++ b/src/bookmarks/ephy-bookmark.c
-@@ -217,7 +217,8 @@ ephy_bookmark_init (EphyBookmark *self)
-   bytes = g_malloc (num_bytes);
- 
-   fp = fopen ("/dev/urandom", "r");
--  fread (bytes, sizeof (guint8), num_bytes, fp);
-+  if (fread (bytes, sizeof (guint8), num_bytes, fp) != num_bytes)
-+    g_warning("Unable to read data from /dev/urandom\n");
- 
-   self->id = g_malloc0 (ID_LEN + 1);
-   for (gsize i = 0; i < num_bytes; i++) {
--- 
-2.13.2
-
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/epiphany/files/0001-yelp.m4-drop-the-check-for-itstool.patch b/import-layers/yocto-poky/meta/recipes-gnome/epiphany/files/0001-yelp.m4-drop-the-check-for-itstool.patch
deleted file mode 100644
index 2585d7f..0000000
--- a/import-layers/yocto-poky/meta/recipes-gnome/epiphany/files/0001-yelp.m4-drop-the-check-for-itstool.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 30f03a256efe375a4d5c3a24bf4168ebf380e3ab Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Thu, 30 Jul 2015 15:13:23 +0300
-Subject: [PATCH] yelp.m4: drop the check for itstool
-
-It isn't used for anything during build, so there's no need to provide
-it as a recipe.
-
-Upstream-Status: Inappropriate [tarball-specific issue]
----
- m4/yelp.m4 | 6 ------
- 1 file changed, 6 deletions(-)
-
-diff --git a/m4/yelp.m4 b/m4/yelp.m4
-index 5db847f..1b6ede4 100644
---- a/m4/yelp.m4
-+++ b/m4/yelp.m4
-@@ -27,12 +27,6 @@ AC_ARG_WITH([help-dir],
- HELP_DIR="$with_help_dir"
- AC_SUBST(HELP_DIR)
- 
--AC_ARG_VAR([ITSTOOL], [Path to the `itstool` command])
--AC_CHECK_PROG([ITSTOOL], [itstool], [itstool])
--if test x"$ITSTOOL" = x; then
--  AC_MSG_ERROR([itstool not found])
--fi
--
- AC_ARG_VAR([XMLLINT], [Path to the `xmllint` command])
- AC_CHECK_PROG([XMLLINT], [xmllint], [xmllint])
- if test x"$XMLLINT" = x; then
--- 
-2.1.4
-
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/epiphany/files/0002-help-meson.build-disable-the-use-of-yelp.patch b/import-layers/yocto-poky/meta/recipes-gnome/epiphany/files/0002-help-meson.build-disable-the-use-of-yelp.patch
new file mode 100644
index 0000000..249517d
--- /dev/null
+++ b/import-layers/yocto-poky/meta/recipes-gnome/epiphany/files/0002-help-meson.build-disable-the-use-of-yelp.patch
@@ -0,0 +1,34 @@
+From fc314fc3a66c92fe73e1a0cea4f49d11b29e1f45 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Wed, 31 Jan 2018 15:50:38 +0200
+Subject: [PATCH 2/2] help/meson.build: disable the use of yelp
+
+In particular this avoids calling itstool which oe-core doesn't provide.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ help/meson.build | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/help/meson.build b/help/meson.build
+index f720add..cbfeb1e 100644
+--- a/help/meson.build
++++ b/help/meson.build
+@@ -46,8 +46,8 @@ help_linguas = [
+   'sv'
+ ]
+ 
+-gnome.yelp(meson.project_name(),
+-  sources: help_files,
+-  media: help_media,
+-  languages: help_linguas,
+-)
++#gnome.yelp(meson.project_name(),
++#  sources: help_files,
++#  media: help_media,
++#  languages: help_linguas,
++#)
+-- 
+2.15.1
+
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gcr/gcr_3.20.0.bb b/import-layers/yocto-poky/meta/recipes-gnome/gcr/gcr_3.20.0.bb
index 4450e15..a68e0f6 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gcr/gcr_3.20.0.bb
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gcr/gcr_3.20.0.bb
@@ -8,7 +8,7 @@
 DEPENDS = "intltool-native gtk+3 p11-kit glib-2.0 libgcrypt \
            ${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'libxslt-native', '', d)}"
 
-inherit autotools gnomebase gtk-icon-cache gtk-doc distro_features_check upstream-version-is-even vala gobject-introspection
+inherit gnomebase gtk-icon-cache gtk-doc distro_features_check upstream-version-is-even vala gobject-introspection
 # depends on gtk+3, but also x11 through gtk+-x11
 REQUIRED_DISTRO_FEATURES = "x11"
 
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-without-libtiff-not-having-an-effect.patch b/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-without-libtiff-not-having-an-effect.patch
new file mode 100644
index 0000000..2a54d8e
--- /dev/null
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-without-libtiff-not-having-an-effect.patch
@@ -0,0 +1,27 @@
+From 460befc992adb32434b0408b453be39a6866ccf8 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Tue, 10 Oct 2017 14:33:18 +0300
+Subject: [PATCH] Fix --without-libtiff not having an effect.
+
+Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=788770]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 315e0cc..98e780c 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -676,7 +676,7 @@ if test x$gio_can_sniff = x; then
+   AC_DEFINE(GDK_PIXBUF_USE_GIO_MIME, 1, [Define if gio can sniff image data])
+ fi
+ 
+-AM_CONDITIONAL(HAVE_TIFF, test "x$libtiff_found" != x)
++AM_CONDITIONAL(HAVE_TIFF, test "x$libtiff_found" != xno)
+ AM_CONDITIONAL(HAVE_PNG, test "x$LIBPNG" != x)
+ AM_CONDITIONAL(HAVE_JPEG, test "x$LIBJPEG" != x)
+ AM_CONDITIONAL(HAVE_JASPER, test "x$LIBJASPER" != x)
+-- 
+2.14.1
+
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-queryloaders-Make-output-more-reproducible.patch b/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-queryloaders-Make-output-more-reproducible.patch
deleted file mode 100644
index aa21419..0000000
--- a/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-queryloaders-Make-output-more-reproducible.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From 1049fbd887e52f94afeb03fc7942c01c143ebdfc Mon Sep 17 00:00:00 2001
-From: Jussi Kukkonen <jussi.kukkonen@intel.com>
-Date: Fri, 9 Jun 2017 12:01:25 +0300
-Subject: [PATCH] queryloaders: Make output more reproducible
-
-Reproducible builds are good: Sort the output by module name so that
-same input always leads to same output.
-
-This should also make gdk-pixbuf-print-mime-types output and
-gdk-pixbuf-thumbnailer.thumbnailer reproducible.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=783592
-
-Upstream-Status: Submitted
-Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
----
- gdk-pixbuf/queryloaders.c | 12 ++++++++++--
- 1 file changed, 10 insertions(+), 2 deletions(-)
-
-diff --git a/gdk-pixbuf/queryloaders.c b/gdk-pixbuf/queryloaders.c
-index 395674a..4ac9b28 100644
---- a/gdk-pixbuf/queryloaders.c
-+++ b/gdk-pixbuf/queryloaders.c
-@@ -346,6 +346,7 @@ int main (int argc, char **argv)
- #ifdef USE_GMODULE
-                 const char *path;
-                 GDir *dir;
-+                GList *l, *modules = NULL;
- 
-                 path = g_getenv ("GDK_PIXBUF_MODULEDIR");
- #ifdef G_OS_WIN32
-@@ -365,12 +366,19 @@ int main (int argc, char **argv)
-                                 gint len = strlen (dent);
-                                 if (len > SOEXT_LEN &&
-                                     strcmp (dent + len - SOEXT_LEN, SOEXT) == 0) {
-+                                        modules = g_list_prepend (modules,
-+                                                                  g_strdup (dent));
--                                        if (!query_module (contents, path, dent))
--                                                success = FALSE;
-                                 }
-                         }
-                         g_dir_close (dir);
-                 }
-+
-+                modules = g_list_sort (modules, (GCompareFunc)strcmp);
-+                for (l = modules; l != NULL; l = l->next)
-+                        if (!query_module (contents, path, l->data))
-+                                success = FALSE;
-+
-+                g_list_free_full (modules, g_free);
- #else
-                 g_string_append_printf (contents, "# dynamic loading of modules not supported\n");
- #endif
--- 
-2.1.4
-
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/fatal-loader.patch b/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/fatal-loader.patch
index 70146c6..7d0d54b 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/fatal-loader.patch
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/fatal-loader.patch
@@ -1,11 +1,20 @@
+From b6a7b30522455cab39a0b9ea8463313380146e70 Mon Sep 17 00:00:00 2001
+From: Ross Burton <ross.burton@intel.com>
+Date: Tue, 1 Apr 2014 17:23:36 +0100
+Subject: [PATCH 3/4] gdk-pixbuf: add an option so that loader errors are fatal
+
 If an environment variable is specified set the return value from main() to
 non-zero if the loader had errors (missing libraries, generally).
 
 Upstream-Status: Pending
 Signed-off-by: Ross Burton <ross.burton@intel.com>
 
+---
+ gdk-pixbuf/queryloaders.c | 19 +++++++++++++++----
+ 1 file changed, 15 insertions(+), 4 deletions(-)
+
 diff --git a/gdk-pixbuf/queryloaders.c b/gdk-pixbuf/queryloaders.c
-index a9ca015..395674a 100644
+index a81c804..350bec8 100644
 --- a/gdk-pixbuf/queryloaders.c
 +++ b/gdk-pixbuf/queryloaders.c
 @@ -146,7 +146,7 @@ write_loader_info (GString *contents, const char *path, GdkPixbufFormat *info)
@@ -47,17 +56,18 @@
  
  #ifdef G_OS_WIN32
          gchar *libdir;
-@@ -360,7 +365,8 @@ int main (int argc, char **argv)
-                                 gint len = strlen (dent);
-                                 if (len > SOEXT_LEN &&
-                                     strcmp (dent + len - SOEXT_LEN, SOEXT) == 0) {
--                                        query_module (contents, path, dent);
-+                                        if (!query_module (contents, path, dent))
-+                                                success = FALSE;
-                                 }
-                         }
-                         g_dir_close (dir);
-@@ -378,7 +384,8 @@ int main (int argc, char **argv)
+@@ -370,7 +375,9 @@ int main (int argc, char **argv)
+                 }
+                 modules = g_list_sort (modules, (GCompareFunc)strcmp);
+                 for (l = modules; l != NULL; l = l->next)
+-                        query_module (contents, path, l->data);
++                        if (!query_module (contents, path, l->data))
++                                success = FALSE;
++
+                 g_list_free_full (modules, g_free);
+ #else
+                 g_string_append_printf (contents, "# dynamic loading of modules not supported\n");
+@@ -385,7 +392,8 @@ int main (int argc, char **argv)
                          infilename = g_locale_to_utf8 (infilename,
                                                         -1, NULL, NULL, NULL);
  #endif
@@ -67,7 +77,7 @@
                  }
                  g_free (cwd);
          }
-@@ -394,5 +401,8 @@ int main (int argc, char **argv)
+@@ -401,5 +409,8 @@ int main (int argc, char **argv)
          else
                  g_print ("%s\n", contents->str);
  
@@ -77,3 +87,6 @@
 +        else
 +                return 0;
  }
+-- 
+2.14.1
+
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.36.8.bb b/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.36.11.bb
similarity index 94%
rename from import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.36.8.bb
rename to import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.36.11.bb
index 8c35904..99c84c6 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.36.8.bb
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.36.11.bb
@@ -18,11 +18,11 @@
            file://run-ptest \
            file://fatal-loader.patch \
            file://0001-Work-around-thumbnailer-cross-compile-failure.patch \
-           file://0001-queryloaders-Make-output-more-reproducible.patch \
+           file://0001-Fix-without-libtiff-not-having-an-effect.patch \
            "
 
-SRC_URI[md5sum] = "e0aaa0061eb12667b32b27472230b962"
-SRC_URI[sha256sum] = "5d68e5283cdc0bf9bda99c3e6a1d52ad07a03364fa186b6c26cfc86fcd396a19"
+SRC_URI[md5sum] = "6e84e5485c17ce7c25df77fe76eb2d6a"
+SRC_URI[sha256sum] = "ae62ab87250413156ed72ef756347b10208c00e76b222d82d9ed361ed9dde2f3"
 
 inherit autotools pkgconfig gettext pixbufcache ptest-gnome upstream-version-is-even gobject-introspection gtk-doc lib_package
 
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop/0001-Disable-libseccomp-sycall-filtering-mechanism.patch b/import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop/0001-Disable-libseccomp-sycall-filtering-mechanism.patch
new file mode 100644
index 0000000..10b0743
--- /dev/null
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop/0001-Disable-libseccomp-sycall-filtering-mechanism.patch
@@ -0,0 +1,38 @@
+From 9dfada06f8d2e02d7a04f793ba6e1d4a2aa5ffb7 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Thu, 5 Oct 2017 14:54:17 +0300
+Subject: [PATCH] Disable libseccomp (sycall filtering mechanism)
+
+Upstream forgot to make it optional, and it is not currently used in Yocto
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ configure.ac | 11 -----------
+ 1 file changed, 11 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 86bcf1f..8911f19 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -157,17 +157,6 @@ else
+ fi
+ 
+ SECCOMP_PKG=""
+-dnl Check for bubblewrap compatible platform
+-case $host_os in
+-  linux*)
+-    PKG_CHECK_MODULES(LIBSECCOMP, [libseccomp])
+-    SECCOMP_PKG="libseccomp"
+-    AC_DEFINE_UNQUOTED(_GNU_SOURCE, 1, [Define to include GNU extensions])
+-    AC_DEFINE_UNQUOTED(HAVE_BWRAP, 1, [Define to 1 if Bubblewrap support is available])
+-    AC_DEFINE([ENABLE_SECCOMP], [1], [Define if using seccomp])
+-    AC_DEFINE_UNQUOTED(INSTALL_PREFIX, "$prefix", [Path to library install prefix])
+-    ;;
+-esac
+ 
+ dnl pkg-config dependency checks
+ 
+-- 
+2.14.1
+
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop/gnome-desktop-thumbnail-don-t-assume-time_t-is-long.patch b/import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop/gnome-desktop-thumbnail-don-t-assume-time_t-is-long.patch
new file mode 100644
index 0000000..fcc152f
--- /dev/null
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop/gnome-desktop-thumbnail-don-t-assume-time_t-is-long.patch
@@ -0,0 +1,61 @@
+From 9048939b76b3bd10783adb79ed0aaf6cd13895cc Mon Sep 17 00:00:00 2001
+From: Christopher Larson <chris_larson@mentor.com>
+Date: Tue, 13 Dec 2016 20:39:51 -0700
+Subject: [PATCH 1/2] gnome-desktop-thumbnail: don't convert time_t to long
+
+Explicitly use strftime+strptime rather than snprintf+atol. This fixes the
+build for X32, where long's size doesn't match that of time_t.
+
+Upstream-Status: Pending
+Signed-off-by: Christopher Larson <chris_larson@mentor.com>
+
+
+Modify patch described above to eliminate replacement of
+
+g_snprintf (mtime_str, 21, "%" G_GINT64_FORMAT, (gint64) mtime)
+
+which is not necessary.  Retain replacement of atol().
+
+Signed-off-by: Joe Slater <joe.slater@windriver.com>
+
+---
+ libgnome-desktop/gnome-desktop-thumbnail.c | 16 ++++++++++++++--
+ 1 file changed, 14 insertions(+), 2 deletions(-)
+
+diff --git a/libgnome-desktop/gnome-desktop-thumbnail.c b/libgnome-desktop/gnome-desktop-thumbnail.c
+index e56c3d7..5d96bf3 100644
+--- a/libgnome-desktop/gnome-desktop-thumbnail.c
++++ b/libgnome-desktop/gnome-desktop-thumbnail.c
+@@ -120,6 +120,8 @@
+  * Since: 2.2
+  */
+ 
++#define _XOPEN_SOURCE
++
+ #include <config.h>
+ 
+ #include <glib.h>
+@@ -1319,6 +1326,7 @@ gnome_desktop_thumbnail_is_valid (GdkPixbuf          *pixbuf,
+ {
+   const char *thumb_uri, *thumb_mtime_str;
+   time_t thumb_mtime;
++  struct tm tmp_mtime;
+ 
+   thumb_uri = gdk_pixbuf_get_option (pixbuf, "tEXt::Thumb::URI");
+   if (g_strcmp0 (uri, thumb_uri) != 0)
+@@ -1327,7 +1335,11 @@ gnome_desktop_thumbnail_is_valid (GdkPixbuf          *pixbuf,
+   thumb_mtime_str = gdk_pixbuf_get_option (pixbuf, "tEXt::Thumb::MTime");
+   if (!thumb_mtime_str)
+     return FALSE;
+-  thumb_mtime = atol (thumb_mtime_str);
++  if (!strptime (thumb_mtime_str, "%s", &tmp_mtime))
++    return FALSE;
++  thumb_mtime = mktime (&tmp_mtime);
++  if (!thumb_mtime)
++    return FALSE;
+   if (mtime != thumb_mtime)
+     return FALSE;
+ 
+-- 
+2.14.1
+
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop/gnome-desktop-thumbnail-don-t-convert-time_t-to-long.patch b/import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop/gnome-desktop-thumbnail-don-t-convert-time_t-to-long.patch
deleted file mode 100644
index 18a069f..0000000
--- a/import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop/gnome-desktop-thumbnail-don-t-convert-time_t-to-long.patch
+++ /dev/null
@@ -1,72 +0,0 @@
-From adfa0c8f9fec1faac4bea6a94d947ea32e585923 Mon Sep 17 00:00:00 2001
-From: Christopher Larson <chris_larson@mentor.com>
-Date: Tue, 13 Dec 2016 20:39:51 -0700
-Subject: [PATCH] gnome-desktop-thumbnail: don't convert time_t to long
-
-Explicitly use strftime+strptime rather than snprintf+atol. This fixes the
-build for X32, where long's size doesn't match that of time_t.
-
-Upstream-Status: Pending
-Signed-off-by: Christopher Larson <chris_larson@mentor.com>
----
- libgnome-desktop/gnome-desktop-thumbnail.c | 16 ++++++++++++++--
- 1 file changed, 14 insertions(+), 2 deletions(-)
-
-diff --git a/libgnome-desktop/gnome-desktop-thumbnail.c b/libgnome-desktop/gnome-desktop-thumbnail.c
-index 3946309..b756333 100644
---- a/libgnome-desktop/gnome-desktop-thumbnail.c
-+++ b/libgnome-desktop/gnome-desktop-thumbnail.c
-@@ -126,6 +126,8 @@
-  * Since: 2.2
-  */
- 
-+#define _XOPEN_SOURCE
-+
- #include <config.h>
- #include <sys/types.h>
- #include <sys/stat.h>
-@@ -1483,6 +1485,7 @@ save_thumbnail (GdkPixbuf  *pixbuf,
-   char *tmp_path = NULL;
-   int tmp_fd;
-   char mtime_str[21];
-+  struct tm *tmp_mtime = NULL;
-   gboolean ret = FALSE;
-   GError *error = NULL;
-   const char *width, *height;
-@@ -1502,7 +1505,11 @@ save_thumbnail (GdkPixbuf  *pixbuf,
-     goto out;
-   close (tmp_fd);
- 
--  g_snprintf (mtime_str, 21, "%ld",  mtime);
-+  tmp_mtime = localtime (&mtime);
-+  if (!tmp_mtime)
-+    goto out;
-+  strftime (mtime_str, 21, "%s", tmp_mtime);
-+  free (tmp_mtime);
-   width = gdk_pixbuf_get_option (pixbuf, "tEXt::Thumb::Image::Width");
-   height = gdk_pixbuf_get_option (pixbuf, "tEXt::Thumb::Image::Height");
- 
-@@ -1695,6 +1702,7 @@ gnome_desktop_thumbnail_is_valid (GdkPixbuf          *pixbuf,
- {
-   const char *thumb_uri, *thumb_mtime_str;
-   time_t thumb_mtime;
-+  struct tm tmp_mtime;
-   
-   thumb_uri = gdk_pixbuf_get_option (pixbuf, "tEXt::Thumb::URI");
-   if (!thumb_uri)
-@@ -1705,7 +1713,11 @@ gnome_desktop_thumbnail_is_valid (GdkPixbuf          *pixbuf,
-   thumb_mtime_str = gdk_pixbuf_get_option (pixbuf, "tEXt::Thumb::MTime");
-   if (!thumb_mtime_str)
-     return FALSE;
--  thumb_mtime = atol (thumb_mtime_str);
-+  if (!strptime (thumb_mtime_str, "%s", &tmp_mtime))
-+    return FALSE;
-+  thumb_mtime = mktime (&tmp_mtime);
-+  if (!thumb_mtime)
-+    return FALSE;
-   if (mtime != thumb_mtime)
-     return FALSE;
-   
--- 
-2.8.0
-
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop3_3.24.2.bb b/import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop3_3.26.2.bb
similarity index 66%
rename from import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop3_3.24.2.bb
rename to import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop3_3.26.2.bb
index 5c1c213..879dc9a 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop3_3.24.2.bb
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop3_3.26.2.bb
@@ -7,12 +7,14 @@
 BPN = "gnome-desktop"
 
 inherit gnome pkgconfig upstream-version-is-even gobject-introspection
-SRC_URI[archive.md5sum] = "af7c6a243df7a335a010bdc05b34ca93"
-SRC_URI[archive.sha256sum] = "8fa1de66a6a75963bffc79b01a60434c71237d44c51beca09c0f714a032d785e"
+SRC_URI[archive.md5sum] = "6cee2ecd677d87eaa0eb5ebfa7b45fb3"
+SRC_URI[archive.sha256sum] = "f7561a7a313fc474b2c390cd9696df1f5c1e1556080e43f4afe042b1060e5f2a"
 
-SRC_URI += "file://gnome-desktop-thumbnail-don-t-convert-time_t-to-long.patch \
-            file://0001-configure.ac-Remove-gnome-common-macro-calls.patch \
-"
+SRC_URI += " \
+           file://gnome-desktop-thumbnail-don-t-assume-time_t-is-long.patch \
+           file://0001-configure.ac-Remove-gnome-common-macro-calls.patch \
+           file://0001-Disable-libseccomp-sycall-filtering-mechanism.patch \
+           "
 
 DEPENDS += "intltool-native gsettings-desktop-schemas gconf virtual/libx11 gtk+3 glib-2.0 startup-notification xkeyboard-config iso-codes udev"
 
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST.patch b/import-layers/yocto-poky/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST.patch
index e7ac97b..96ec96b 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST.patch
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST.patch
@@ -1,29 +1,27 @@
-From d2b9ad8a80bf9320fe35c9aee8f52e55ebd40e06 Mon Sep 17 00:00:00 2001
+From 88ed996cc9e2b296cacfdbeece4be28a90bab511 Mon Sep 17 00:00:00 2001
 From: Jussi Kukkonen <jussi.kukkonen@intel.com>
 Date: Tue, 30 May 2017 14:55:49 +0300
-Subject: [PATCH] Don't use AC_CANONICAL_HOST
+Subject: [PATCH 1/2] Don't use AC_CANONICAL_HOST
 
 This won't work when building allarch (and is only used to find out if
 target is windows).
 
 Upstream-Status: Inappropriate [embedded specific]
 Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
+
 ---
  configure.ac | 1 -
  1 file changed, 1 deletion(-)
 
-diff --git a/configure.ac b/configure.ac
-index d855b7a..6908f59 100644
---- a/configure.ac
-+++ b/configure.ac
+Index: adwaita-icon-theme-3.26.1/configure.ac
+===================================================================
+--- adwaita-icon-theme-3.26.1.orig/configure.ac
++++ adwaita-icon-theme-3.26.1/configure.ac
 @@ -3,7 +3,6 @@ AC_PREREQ(2.53)
  
- AC_INIT([adwaita-icon-theme], [3.24.0],
+ AC_INIT([adwaita-icon-theme], [3.26.1],
          [http://bugzilla.gnome.org/enter_bug.cgi?product=adwaita-icon-theme])
 -AC_CANONICAL_HOST
  AC_CONFIG_MACRO_DIR([m4])
  AC_CONFIG_SRCDIR([index.theme.in])
  
--- 
-2.1.4
-
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.24.0.bb b/import-layers/yocto-poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.26.1.bb
similarity index 92%
rename from import-layers/yocto-poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.24.0.bb
rename to import-layers/yocto-poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.26.1.bb
index d340536..6437d5e 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.24.0.bb
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.26.1.bb
@@ -15,8 +15,8 @@
            file://0001-Run-installation-commands-as-shell-jobs.patch \
            "
 
-SRC_URI[md5sum] = "3ccac0d600ffc936d2adfb80e9245bc5"
-SRC_URI[sha256sum] = "ccf79ff3bd340254737ce4d28b87f0ccee4b3358cd3cd5cd11dc7b42f41b272a"
+SRC_URI[md5sum] = "3ef87e789711e5130792d4b5366c005d"
+SRC_URI[sha256sum] = "28ba7392c7761996efd780779167ea6c940eedfb1bf37cfe9bccb7021f54d79d"
 
 do_install_append() {
 	# Build uses gtk-encode-symbolic-svg to create png versions:
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gnome/gconf/create_config_directory.patch b/import-layers/yocto-poky/meta/recipes-gnome/gnome/gconf/create_config_directory.patch
new file mode 100644
index 0000000..cd72e73
--- /dev/null
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gnome/gconf/create_config_directory.patch
@@ -0,0 +1,28 @@
+Upstream-Status: Pending
+
+In some circumstances, gconf isn't able to save configurations
+because ~/.config folder aka root_dir doesn't exist.
+This issue was not seen before because ~/.config directory is shared
+between several packages and one of those packages usually creates it
+by the time gconf wants to use it.
+
+This patch makes sure that gconf creates the .config directory if it
+doesn't exist, along with the gconf directory inside it.
+
+Signed-off-by: Jaewon Lee <jaewon.lee@xilinx.com>
+Signed-off-by: Alejandro Hernandez <alejandr@xilinx.com>
+
+
+Index: GConf-3.2.6/backends/markup-backend.c
+===================================================================
+--- GConf-3.2.6.orig/backends/markup-backend.c
++++ GConf-3.2.6/backends/markup-backend.c
+@@ -276,7 +276,7 @@ resolve_address (const char *address,
+       /* dir_mode without search bits */
+       file_mode = dir_mode & (~0111);
+     }
+-  else if (g_mkdir (root_dir, dir_mode) < 0)
++  else if (g_mkdir_with_parents (root_dir, dir_mode) < 0)
+     {
+       /* Error out even on EEXIST - shouldn't happen anyway */
+       gconf_set_error (err, GCONF_ERROR_FAILED,
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gnome/gconf_3.2.6.bb b/import-layers/yocto-poky/meta/recipes-gnome/gnome/gconf_3.2.6.bb
index 92fd12c..120ae3e 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gnome/gconf_3.2.6.bb
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gnome/gconf_3.2.6.bb
@@ -11,6 +11,7 @@
 SRC_URI = "${GNOME_MIRROR}/GConf/${@gnome_verdir("${PV}")}/GConf-${PV}.tar.xz;name=archive \
            file://remove_plus_from_invalid_characters_list.patch \
            file://unable-connect-dbus.patch \
+           file://create_config_directory.patch \
 "
 
 SRC_URI[archive.md5sum] = "2b16996d0e4b112856ee5c59130e822c"
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-add-a-lib-dirs-envvar-option.patch b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-add-a-lib-dirs-envvar-option.patch
new file mode 100644
index 0000000..4ec527d
--- /dev/null
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-add-a-lib-dirs-envvar-option.patch
@@ -0,0 +1,73 @@
+From e48f1e18f5ea41656f0ba10fe61d69d2604b0064 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Wed, 3 Jan 2018 17:02:01 +0200
+Subject: [PATCH] giscanner: add a --lib-dirs-envvar option
+
+By default LD_LIBRARY_PATH is set to the list of target library paths;
+this breaks down in cross-compilation environment, as we need to run a
+native emulation wrapper rather than the target binary itself. This patch
+allows exporting those paths to a different environment variable
+which can be picked up and used by the wrapper.
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
+---
+ giscanner/ccompiler.py   | 4 ++--
+ giscanner/dumper.py      | 3 ++-
+ giscanner/scannermain.py | 3 +++
+ 3 files changed, 7 insertions(+), 3 deletions(-)
+
+diff --git a/giscanner/ccompiler.py b/giscanner/ccompiler.py
+index 29de0ee..928eae8 100644
+--- a/giscanner/ccompiler.py
++++ b/giscanner/ccompiler.py
+@@ -109,7 +109,7 @@ class CCompiler(object):
+ 
+             self._cflags_no_deprecation_warnings = "-Wno-deprecated-declarations"
+ 
+-    def get_internal_link_flags(self, args, libtool, libraries, extra_libraries, libpaths):
++    def get_internal_link_flags(self, args, libtool, libraries, extra_libraries, libpaths, lib_dirs_envvar):
+         # An "internal" link is where the library to be introspected
+         # is being built in the current directory.
+ 
+@@ -119,7 +119,7 @@ class CCompiler(object):
+         if self.check_is_msvc():
+             runtime_path_envvar = ['LIB', 'PATH']
+         else:
+-            runtime_path_envvar = ['LD_LIBRARY_PATH']
++            runtime_path_envvar = ['LD_LIBRARY_PATH'] if not lib_dirs_envvar else [lib_dirs_envvar]
+             # Search the current directory first
+             # (This flag is not supported nor needed for Visual C++)
+             args.append('-L.')
+diff --git a/giscanner/dumper.py b/giscanner/dumper.py
+index 7f77bd2..db96df6 100644
+--- a/giscanner/dumper.py
++++ b/giscanner/dumper.py
+@@ -259,7 +259,8 @@ class DumpCompiler(object):
+                                                    libtool,
+                                                    self._options.libraries,
+                                                    self._options.extra_libraries,
+-                                                   self._options.library_paths)
++                                                   self._options.library_paths,
++                                                   self._options.lib_dirs_envvar)
+             args.extend(pkg_config_libs)
+ 
+         else:
+diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py
+index 38a45c1..b603850 100755
+--- a/giscanner/scannermain.py
++++ b/giscanner/scannermain.py
+@@ -130,6 +130,9 @@ def _get_option_parser():
+     parser.add_option("", "--use-ldd-wrapper",
+                       action="store", dest="ldd_wrapper", default=None,
+                       help="wrapper to use instead of ldd (useful when cross-compiling)")
++    parser.add_option("", "--lib-dirs-envvar",
++                      action="store", dest="lib_dirs_envvar", default=None,
++                      help="environment variable to write a list of library directories to (for running the transient binary), instead of standard LD_LIBRARY_PATH")
+     parser.add_option("", "--program-arg",
+                       action="append", dest="program_args", default=[],
+                       help="extra arguments to program")
+-- 
+2.15.1
+
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0002-configure.ac-add-host-gi-gi-cross-wrapper-gi-ldd-wra.patch b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0002-configure.ac-add-host-gi-gi-cross-wrapper-gi-ldd-wra.patch
index 48a0c85..c682b42 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0002-configure.ac-add-host-gi-gi-cross-wrapper-gi-ldd-wra.patch
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0002-configure.ac-add-host-gi-gi-cross-wrapper-gi-ldd-wra.patch
@@ -32,10 +32,10 @@
  tests/Makefile.am |  5 ++++-
  4 files changed, 87 insertions(+), 1 deletion(-)
 
-diff --git a/Makefile.am b/Makefile.am
-index b080a89..ce8d29b 100644
---- a/Makefile.am
-+++ b/Makefile.am
+Index: gobject-introspection-1.52.1/Makefile.am
+===================================================================
+--- gobject-introspection-1.52.1.orig/Makefile.am
++++ gobject-introspection-1.52.1/Makefile.am
 @@ -21,7 +21,9 @@ include Makefile-cmph.am
  include Makefile-girepository.am
  include Makefile-giscanner.am
@@ -46,10 +46,10 @@
  include Makefile-tools.am
  include Makefile-msvcproj.am
  
-diff --git a/common.mk b/common.mk
-index e26c637..9f3a65f 100644
---- a/common.mk
-+++ b/common.mk
+Index: gobject-introspection-1.52.1/common.mk
+===================================================================
+--- gobject-introspection-1.52.1.orig/common.mk
++++ gobject-introspection-1.52.1/common.mk
 @@ -6,6 +6,15 @@
  # module itself.
  #
@@ -130,13 +130,13 @@
  
  INTROSPECTION_DOCTOOL_ARGS = \
      --add-include-path=$(srcdir) \
-diff --git a/configure.ac b/configure.ac
-index 6c91fa5..21340a5 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -360,6 +360,48 @@ fi
- 
- AC_SUBST(EXTRA_LINK_FLAGS)
+Index: gobject-introspection-1.52.1/configure.ac
+===================================================================
+--- gobject-introspection-1.52.1.orig/configure.ac
++++ gobject-introspection-1.52.1/configure.ac
+@@ -366,6 +366,48 @@ dnl
+ AM_CONDITIONAL(MSVC_BASE_NO_TOOLSET_SET, [test x$MSVC_BASE_TOOLSET = x])
+ AM_CONDITIONAL(MSVC_NO_TOOLSET_SET, [test x$MSVC_TOOLSET = x])
  
 +AC_ARG_ENABLE([host-gi],
 +[AS_HELP_STRING([--enable-host-gi],[Use gobject introspection tools installed in the host system (useful when cross-compiling)])],
@@ -183,10 +183,10 @@
  AC_CONFIG_FILES([
  Makefile
  tests/Makefile
-diff --git a/tests/Makefile.am b/tests/Makefile.am
-index bdd0fa7..75dd3c9 100644
---- a/tests/Makefile.am
-+++ b/tests/Makefile.am
+Index: gobject-introspection-1.52.1/tests/Makefile.am
+===================================================================
+--- gobject-introspection-1.52.1.orig/tests/Makefile.am
++++ gobject-introspection-1.52.1/tests/Makefile.am
 @@ -1,6 +1,9 @@
  include $(top_srcdir)/common.mk
  
@@ -198,6 +198,3 @@
  
  EXTRA_DIST=
  BUILT_SOURCES=
--- 
-2.7.0
-
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.52.1.bb b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.54.1.bb
similarity index 93%
rename from import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.52.1.bb
rename to import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.54.1.bb
index 3fe71a3..85c8001 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.52.1.bb
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.54.1.bb
@@ -8,15 +8,16 @@
                     file://giscanner/sourcescanner.c;endline=22;md5=194d6e0c1d00662f32d030ce44de8d39 \
                     file://girepository/giregisteredtypeinfo.c;endline=21;md5=661847611ae6979465415f31a759ba27"
 
-SRC_URI = "${GNOME_MIRROR}/${BPN}/1.52/${BPN}-${PV}.tar.xz \
+SRC_URI = "${GNOME_MIRROR}/${BPN}/1.54/${BPN}-${PV}.tar.xz \
            file://0001-Revert-an-incomplete-upstream-attempt-at-cross-compi.patch \
            file://0002-configure.ac-add-host-gi-gi-cross-wrapper-gi-ldd-wra.patch \
            file://0003-giscanner-add-use-binary-wrapper-option.patch \
            file://0004-giscanner-add-a-use-ldd-wrapper-option.patch \
            file://0005-Prefix-pkg-config-paths-with-PKG_CONFIG_SYSROOT_DIR-.patch \
+           file://0001-giscanner-add-a-lib-dirs-envvar-option.patch \
            "
-SRC_URI[md5sum] = "34157073991f9eeb0ed953351b65eb61"
-SRC_URI[sha256sum] = "2ed0c38d52fe1aa6fc4def0c868fe481cb87b532fc694756b26d6cfab29faff4"
+SRC_URI[md5sum] = "126c29e4d54adbed2ed4e2b04483de41"
+SRC_URI[sha256sum] = "b88ded5e5f064ab58a93aadecd6d58db2ec9d970648534c63807d4f9a7bb877e"
 
 inherit autotools pkgconfig gtk-doc python3native qemu gobject-introspection-data upstream-version-is-even
 BBCLASSEXTEND = "native"
@@ -71,7 +72,7 @@
 # This prevents g-ir-scanner from writing cache data to $HOME
 export GI_SCANNER_DISABLE_CACHE=1
 
-g-ir-scanner --use-binary-wrapper=${STAGING_BINDIR}/g-ir-scanner-qemuwrapper --use-ldd-wrapper=${STAGING_BINDIR}/g-ir-scanner-lddwrapper --add-include-path=${STAGING_DATADIR}/gir-1.0 "\$@"
+g-ir-scanner --lib-dirs-envvar=GIR_EXTRA_LIBS_PATH --use-binary-wrapper=${STAGING_BINDIR}/g-ir-scanner-qemuwrapper --use-ldd-wrapper=${STAGING_BINDIR}/g-ir-scanner-lddwrapper --add-include-path=${STAGING_DATADIR}/gir-1.0 "\$@"
 EOF
         chmod +x ${B}/g-ir-scanner-wrapper
 
@@ -132,6 +133,7 @@
 # .gir files go to dev package, as they're needed for developing (but not for running)
 # things that depends on introspection.
 FILES_${PN}-dev_append = " ${datadir}/gir-*/*.gir"
+FILES_${PN}-dev_append = " ${datadir}/gir-*/*.rnc"
 
 # These are used by gobject-based packages
 # to generate transient introspection binaries
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.22.0.bb b/import-layers/yocto-poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.24.1.bb
similarity index 70%
rename from import-layers/yocto-poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.22.0.bb
rename to import-layers/yocto-poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.24.1.bb
index d84a4f3..b61fd24 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.22.0.bb
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.24.1.bb
@@ -9,5 +9,5 @@
 
 inherit gnomebase gsettings gettext gobject-introspection upstream-version-is-even
 
-SRC_URI[archive.md5sum] = "5b9056ab6eff42a0117f2912edff5f20"
-SRC_URI[archive.sha256sum] = "0f06c7ba34c3a99e4d58b10889496133c9aaad6698ea2d8405d481c7f1a7eae1"
+SRC_URI[archive.md5sum] = "796b6ac1eff450261edd521b72e7fe6d"
+SRC_URI[archive.sha256sum] = "76a3fa309f9de6074d66848987214f0b128124ba7184c958c15ac78a8ac7eea7"
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+/hardcoded_libtool.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+/hardcoded_libtool.patch
index 1ae728e..9eb7f6b 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+/hardcoded_libtool.patch
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+/hardcoded_libtool.patch
@@ -3,19 +3,20 @@
 Updated to apply to gtk+-2.24.15
 
 Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
-diff -Nurd gtk+-2.24.15/configure.ac gtk+-2.24.15/configure.ac
---- gtk+-2.24.15/configure.ac	2013-01-12 20:52:54.000000000 +0200
-+++ gtk+-2.24.15/configure.ac	2013-02-12 21:33:30.689925967 +0200
-@@ -415,7 +415,7 @@
+Index: gtk+-2.24.31/configure.ac
+===================================================================
+--- gtk+-2.24.31.orig/configure.ac
++++ gtk+-2.24.31/configure.ac
+@@ -415,7 +415,7 @@ AC_MSG_CHECKING([Whether to write depend
  case $enable_explicit_deps in
    auto)
      export SED
 -    deplibs_check_method=`(./libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh`
 +    deplibs_check_method=`(./$host_alias-libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh`
      if test "x$deplibs_check_method" '!=' xpass_all || test "x$enable_static" = xyes ; then
-       enable_explicit_deps=yes
+       enable_explicit_deps=yes  
      else
-@@ -774,7 +774,7 @@
+@@ -772,7 +772,7 @@ else
      dnl Now we check to see if our libtool supports shared lib deps
      dnl (in a rather ugly way even)
      if $dynworks; then
@@ -24,7 +25,7 @@
          module_deplibs_check=`$module_libtool_config | \
              grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
              sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
-@@ -1574,7 +1574,7 @@
+@@ -1579,7 +1579,7 @@ fi
  # We are using gmodule-no-export now, but I'm leaving the stripping
  # code in place for now, since pango and atk still require gmodule.
  export SED
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3.inc b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3.inc
index 0a357db..420ead2 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3.inc
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3.inc
@@ -35,7 +35,6 @@
                  --enable-modules \
                  --disable-cups \
                  --disable-colord \
-                 WAYLAND_PROTOCOLS_SYSROOT_DIR=${RECIPE_SYSROOT} \
                  ${@bb.utils.contains("DISTRO_FEATURES", "x11", "", "--disable-gtk-doc", d)} \
                  "
 
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0002-Do-not-try-to-initialize-GL-without-libGL.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0002-Do-not-try-to-initialize-GL-without-libGL.patch
index ab7b659..cc7edf7 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0002-Do-not-try-to-initialize-GL-without-libGL.patch
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0002-Do-not-try-to-initialize-GL-without-libGL.patch
@@ -1,4 +1,4 @@
-From 2d2361f24be1e51201063dbbda570debe8702b6f Mon Sep 17 00:00:00 2001
+From 23a563155406980dfc8cf6f7c2da6cce0ac310f0 Mon Sep 17 00:00:00 2001
 From: Jussi Kukkonen <jussi.kukkonen@intel.com>
 Date: Fri, 16 Oct 2015 16:35:16 +0300
 Subject: [PATCH 2/4] Do not try to initialize GL without libGL
@@ -15,29 +15,29 @@
 
 Upstream-Status: Denied
 Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
+
 ---
- configure.ac            | 7 +++++++
+ configure.ac            | 6 ++++++
  gdk/x11/gdkvisual-x11.c | 5 +++++
- 2 files changed, 12 insertions(+)
+ 2 files changed, 11 insertions(+)
 
 diff --git a/configure.ac b/configure.ac
-index f43ac09..965eec9 100644
+index 757fd7c..0a48875 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -346,6 +346,13 @@ AC_ARG_ENABLE(mir-backend,
-                               [enable the Mir gdk backend])],
- 			      [backend_set=yes])
- 
+@@ -351,6 +351,12 @@ AC_ARG_ENABLE(cloudproviders,
+               [AS_HELP_STRING([--enable-cloudproviders],
+                               [enable libcloudproviders integration])],
+                               [cloudproviders_set=yes])
 +AC_ARG_ENABLE(glx,
 +              [AS_HELP_STRING([--enable-glx],
 +                              [When enabled Gdk will try to initialize GLX])])
 +AS_IF([test "x$enable_glx" != "xno"], [
 +  AC_DEFINE([HAVE_GLX], [], [GLX will be available at runtime])
 +])
-+
+ 
  if test -z "$backend_set"; then
    if test "$platform_win32" = yes; then
-     enable_win32_backend=yes
 diff --git a/gdk/x11/gdkvisual-x11.c b/gdk/x11/gdkvisual-x11.c
 index 81479d8..3c8c5c0 100644
 --- a/gdk/x11/gdkvisual-x11.c
@@ -56,5 +56,5 @@
  
  gint
 -- 
-2.12.0
+2.14.1
 
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch
index 9cdee0e..d2f12dc 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch
@@ -1,4 +1,4 @@
-From a2e6b7cbbd6d741fed38d91b3742aa4a08395aba Mon Sep 17 00:00:00 2001
+From de36df70d87ba3453ed4f2b92e990021c67238f5 Mon Sep 17 00:00:00 2001
 From: Jussi Kukkonen <jussi.kukkonen@intel.com>
 Date: Tue, 21 Jun 2016 15:11:39 +0300
 Subject: [PATCH 3/4] Add --disable-opengl configure option
@@ -19,41 +19,40 @@
 
 Upstream-Status: Inappropriate [Evil eye expected from upstream]
 Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
+
 ---
- configure.ac                      | 13 +++++++--
- demos/gtk-demo/glarea.c           | 14 +++++++++
- docs/tools/Makefile.am            |  9 ++++--
- docs/tools/widgets.c              |  4 ++-
- gdk/gdkdisplay.c                  |  4 ++-
- gdk/gdkgl.c                       | 10 +++++++
- gdk/gdkglcontext.c                |  6 ++++
- gdk/gdkwindow.c                   | 13 +++++++++
- gdk/x11/Makefile.am               | 30 +++++++++++++++++---
- gdk/x11/gdkdisplay-x11.c          |  6 +++-
- gdk/x11/gdkscreen-x11.c           |  5 ++++
- gdk/x11/gdkwindow-x11.c           |  4 +++
- gdk/x11/gdkx-autocleanups.h       |  2 ++
- gdk/x11/gdkx-with-gl-context.h    | 59 ++++++++++++++++++++++++++++++++++++++
- gdk/x11/gdkx-without-gl-context.h | 58 +++++++++++++++++++++++++++++++++++++
- gdk/x11/gdkx.h                    | 60 ---------------------------------------
- gtk/Makefile.am                   |  3 +-
- gtk/gtkglarea.c                   | 20 ++++++++++++-
- gtk/inspector/general.c           |  6 ++++
- tests/Makefile.am                 | 10 +++++--
- testsuite/gtk/objects-finalize.c  |  2 ++
- 21 files changed, 261 insertions(+), 77 deletions(-)
- create mode 100644 gdk/x11/gdkx-with-gl-context.h
+ configure.ac                               | 13 +++++--
+ demos/gtk-demo/glarea.c                    | 14 ++++++++
+ docs/tools/Makefile.am                     |  9 +++--
+ docs/tools/widgets.c                       |  4 ++-
+ gdk/gdkdisplay.c                           |  4 ++-
+ gdk/gdkgl.c                                | 10 ++++++
+ gdk/gdkglcontext.c                         |  6 ++++
+ gdk/gdkwindow.c                            | 13 +++++++
+ gdk/x11/Makefile.am                        | 30 +++++++++++++---
+ gdk/x11/gdkdisplay-x11.c                   |  6 +++-
+ gdk/x11/gdkscreen-x11.c                    |  5 +++
+ gdk/x11/gdkwindow-x11.c                    |  4 +++
+ gdk/x11/gdkx-autocleanups.h                |  2 ++
+ gdk/x11/{gdkx.h => gdkx-with-gl-context.h} |  1 -
+ gdk/x11/gdkx-without-gl-context.h          | 58 ++++++++++++++++++++++++++++++
+ gtk/Makefile.am                            |  3 +-
+ gtk/gtkglarea.c                            | 20 ++++++++++-
+ gtk/inspector/general.c                    |  6 ++++
+ tests/Makefile.am                          | 10 ++++--
+ testsuite/gtk/objects-finalize.c           |  2 ++
+ 20 files changed, 202 insertions(+), 18 deletions(-)
+ rename gdk/x11/{gdkx.h => gdkx-with-gl-context.h} (98%)
  create mode 100644 gdk/x11/gdkx-without-gl-context.h
- delete mode 100644 gdk/x11/gdkx.h
 
 diff --git a/configure.ac b/configure.ac
-index 965eec9..00bf544 100644
+index 0a48875..6f0a3a6 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -346,6 +346,15 @@ AC_ARG_ENABLE(mir-backend,
-                               [enable the Mir gdk backend])],
- 			      [backend_set=yes])
- 
+@@ -351,6 +351,15 @@ AC_ARG_ENABLE(cloudproviders,
+               [AS_HELP_STRING([--enable-cloudproviders],
+                               [enable libcloudproviders integration])],
+                               [cloudproviders_set=yes])
 +AC_ARG_ENABLE(opengl,
 +              [AS_HELP_STRING([--enable-opengl],
 +                              [When enabled, Gtk+ will use libepoxy and exposes GtkGLArea widget ])])
@@ -66,16 +65,16 @@
  AC_ARG_ENABLE(glx,
                [AS_HELP_STRING([--enable-glx],
                                [When enabled Gdk will try to initialize GLX])])
-@@ -1352,7 +1361,7 @@ CFLAGS="$saved_cflags"
+@@ -1372,7 +1381,7 @@ CFLAGS="$saved_cflags"
  LDFLAGS="$saved_ldflags"
  
  GDK_PACKAGES="$PANGO_PACKAGES gdk-pixbuf-2.0 >= gdk_pixbuf_required_version cairo >= cairo_required_version cairo-gobject >= cairo_required_version"
--GDK_PRIVATE_PACKAGES="$GDK_GIO_PACKAGE $X_PACKAGES $WAYLAND_PACKAGES $MIR_PACKAGES $cairo_backends epoxy >= epoxy_required_version"
-+GDK_PRIVATE_PACKAGES="$GDK_GIO_PACKAGE $X_PACKAGES $WAYLAND_PACKAGES $MIR_PACKAGES $cairo_backends $EPOXY_PACKAGES"
+-GDK_PRIVATE_PACKAGES="$GDK_GIO_PACKAGE $X_PACKAGES $WAYLAND_PACKAGES $MIR_PACKAGES $cairo_backends epoxy >= epoxy_required_version $CLOUDPROVIDER_PACKAGES"
++GDK_PRIVATE_PACKAGES="$GDK_GIO_PACKAGE $X_PACKAGES $WAYLAND_PACKAGES $MIR_PACKAGES $cairo_backends $EPOXY_PACKAGES $CLOUDPROVIDER_PACKAGES"
  
  PKG_CHECK_MODULES(GDK_DEP, $GDK_PACKAGES $GDK_PRIVATE_PACKAGES)
  GDK_DEP_LIBS="$GDK_EXTRA_LIBS $GDK_DEP_LIBS $MATH_LIB"
-@@ -1386,7 +1395,7 @@ fi
+@@ -1406,7 +1415,7 @@ fi
  PKG_CHECK_MODULES(ATK, $ATK_PACKAGES)
  
  GTK_PACKAGES="atk >= atk_required_version cairo >= cairo_required_version cairo-gobject >= cairo_required_version gdk-pixbuf-2.0 >= gdk_pixbuf_required_version gio-2.0 >= glib_required_version"
@@ -210,10 +209,10 @@
  
    return info;
 diff --git a/gdk/gdkdisplay.c b/gdk/gdkdisplay.c
-index 6b012ca..311c7f7 100644
+index 40225e9..c55e1de 100644
 --- a/gdk/gdkdisplay.c
 +++ b/gdk/gdkdisplay.c
-@@ -2409,7 +2409,9 @@ gboolean
+@@ -2406,7 +2406,9 @@ gboolean
  gdk_display_make_gl_context_current (GdkDisplay   *display,
                                       GdkGLContext *context)
  {
@@ -347,7 +346,7 @@
  
  /**
 diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c
-index 689d666..fb84256 100644
+index c0e0a7d..437ab03 100644
 --- a/gdk/gdkwindow.c
 +++ b/gdk/gdkwindow.c
 @@ -45,7 +45,9 @@
@@ -360,7 +359,7 @@
  
  /* for the use of round() */
  #include "fallback-c89.c"
-@@ -2819,6 +2821,13 @@ gdk_window_get_paint_gl_context (GdkWindow  *window,
+@@ -2822,6 +2824,13 @@ gdk_window_get_paint_gl_context (GdkWindow  *window,
  {
    GError *internal_error = NULL;
  
@@ -374,7 +373,7 @@
    if (_gdk_gl_flags & GDK_GL_DISABLE)
      {
        g_set_error_literal (error, GDK_GL_ERROR,
-@@ -2954,6 +2963,7 @@ gdk_window_begin_paint_internal (GdkWindow            *window,
+@@ -2957,6 +2966,7 @@ gdk_window_begin_paint_internal (GdkWindow            *window,
          }
        else
          {
@@ -382,7 +381,7 @@
  	  gdk_gl_context_make_current (context);
            /* With gl we always need a surface to combine the gl
               drawing with the native drawing. */
-@@ -2968,6 +2978,7 @@ gdk_window_begin_paint_internal (GdkWindow            *window,
+@@ -2971,6 +2981,7 @@ gdk_window_begin_paint_internal (GdkWindow            *window,
            glBlendFunc (GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
  
            glViewport (0, 0, ww, wh);
@@ -390,7 +389,7 @@
          }
      }
  
-@@ -3031,6 +3042,7 @@ gdk_window_end_paint_internal (GdkWindow *window)
+@@ -3034,6 +3045,7 @@ gdk_window_end_paint_internal (GdkWindow *window)
  
            gdk_gl_context_make_current (window->gl_paint_context);
  
@@ -398,7 +397,7 @@
            if (!cairo_region_is_empty (opaque_region))
              gdk_gl_texture_from_surface (window->current_paint.surface,
                                           opaque_region);
-@@ -3041,6 +3053,7 @@ gdk_window_end_paint_internal (GdkWindow *window)
+@@ -3044,6 +3056,7 @@ gdk_window_end_paint_internal (GdkWindow *window)
                                             window->current_paint.need_blend_region);
                glDisable(GL_BLEND);
              }
@@ -479,7 +478,7 @@
 +
  -include $(top_srcdir)/git.mk
 diff --git a/gdk/x11/gdkdisplay-x11.c b/gdk/x11/gdkdisplay-x11.c
-index ad65e29..91345ee 100644
+index e9a263f..2829a31 100644
 --- a/gdk/x11/gdkdisplay-x11.c
 +++ b/gdk/x11/gdkdisplay-x11.c
 @@ -37,7 +37,9 @@
@@ -492,7 +491,7 @@
  #include "gdk-private.h"
  
  #include <glib.h>
-@@ -2994,7 +2996,9 @@ gdk_x11_display_class_init (GdkX11DisplayClass * class)
+@@ -3169,7 +3171,9 @@ gdk_x11_display_class_init (GdkX11DisplayClass * class)
    display_class->text_property_to_utf8_list = _gdk_x11_display_text_property_to_utf8_list;
    display_class->utf8_to_string_target = _gdk_x11_display_utf8_to_string_target;
  
@@ -554,71 +553,21 @@
  G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11Keymap, g_object_unref)
  G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11Screen, g_object_unref)
  G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11Visual, g_object_unref)
-diff --git a/gdk/x11/gdkx-with-gl-context.h b/gdk/x11/gdkx-with-gl-context.h
-new file mode 100644
-index 0000000..ae05fa6
---- /dev/null
+diff --git a/gdk/x11/gdkx.h b/gdk/x11/gdkx-with-gl-context.h
+similarity index 98%
+rename from gdk/x11/gdkx.h
+rename to gdk/x11/gdkx-with-gl-context.h
+index 1f64bcc..ae05fa6 100644
+--- a/gdk/x11/gdkx.h
 +++ b/gdk/x11/gdkx-with-gl-context.h
-@@ -0,0 +1,59 @@
-+/* GDK - The GIMP Drawing Kit
-+ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
-+ *
-+ * This library is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2 of the License, or (at your option) any later version.
-+ *
-+ * This library is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
-+ */
-+
-+/*
-+ * Modified by the GTK+ Team and others 1997-2000.  See the AUTHORS
-+ * file for a list of people on the GTK+ Team.  See the ChangeLog
-+ * files for a list of changes.  These files are distributed with
-+ * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
-+ */
-+
-+#ifndef __GDK_X_H__
-+#define __GDK_X_H__
-+
-+#include <gdk/gdk.h>
-+
-+#include <X11/Xlib.h>
-+#include <X11/Xutil.h>
-+
-+#define __GDKX_H_INSIDE__
-+
-+#include <gdk/x11/gdkx11applaunchcontext.h>
-+#include <gdk/x11/gdkx11cursor.h>
-+#include <gdk/x11/gdkx11device.h>
-+#include <gdk/x11/gdkx11device-core.h>
-+#include <gdk/x11/gdkx11device-xi2.h>
-+#include <gdk/x11/gdkx11devicemanager.h>
-+#include <gdk/x11/gdkx11devicemanager-core.h>
-+#include <gdk/x11/gdkx11devicemanager-xi2.h>
-+#include <gdk/x11/gdkx11display.h>
-+#include <gdk/x11/gdkx11displaymanager.h>
-+#include <gdk/x11/gdkx11dnd.h>
-+#include <gdk/x11/gdkx11glcontext.h>
-+#include <gdk/x11/gdkx11keys.h>
-+#include <gdk/x11/gdkx11property.h>
-+#include <gdk/x11/gdkx11screen.h>
-+#include <gdk/x11/gdkx11selection.h>
-+#include <gdk/x11/gdkx11utils.h>
-+#include <gdk/x11/gdkx11visual.h>
-+#include <gdk/x11/gdkx11window.h>
-+
-+#include <gdk/x11/gdkx-autocleanups.h>
-+
-+#undef __GDKX_H_INSIDE__
-+
-+#endif /* __GDK_X_H__ */
+@@ -45,7 +45,6 @@
+ #include <gdk/x11/gdkx11dnd.h>
+ #include <gdk/x11/gdkx11glcontext.h>
+ #include <gdk/x11/gdkx11keys.h>
+-#include <gdk/x11/gdkx11monitor.h>
+ #include <gdk/x11/gdkx11property.h>
+ #include <gdk/x11/gdkx11screen.h>
+ #include <gdk/x11/gdkx11selection.h>
 diff --git a/gdk/x11/gdkx-without-gl-context.h b/gdk/x11/gdkx-without-gl-context.h
 new file mode 100644
 index 0000000..c9e2617
@@ -683,77 +632,11 @@
 +#undef __GDKX_H_INSIDE__
 +
 +#endif /* __GDK_X_H__ */
-diff --git a/gdk/x11/gdkx.h b/gdk/x11/gdkx.h
-deleted file mode 100644
-index 1f64bcc..0000000
---- a/gdk/x11/gdkx.h
-+++ /dev/null
-@@ -1,60 +0,0 @@
--/* GDK - The GIMP Drawing Kit
-- * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
-- *
-- * This library is free software; you can redistribute it and/or
-- * modify it under the terms of the GNU Lesser General Public
-- * License as published by the Free Software Foundation; either
-- * version 2 of the License, or (at your option) any later version.
-- *
-- * This library is distributed in the hope that it will be useful,
-- * but WITHOUT ANY WARRANTY; without even the implied warranty of
-- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-- * Lesser General Public License for more details.
-- *
-- * You should have received a copy of the GNU Lesser General Public
-- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
-- */
--
--/*
-- * Modified by the GTK+ Team and others 1997-2000.  See the AUTHORS
-- * file for a list of people on the GTK+ Team.  See the ChangeLog
-- * files for a list of changes.  These files are distributed with
-- * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
-- */
--
--#ifndef __GDK_X_H__
--#define __GDK_X_H__
--
--#include <gdk/gdk.h>
--
--#include <X11/Xlib.h>
--#include <X11/Xutil.h>
--
--#define __GDKX_H_INSIDE__
--
--#include <gdk/x11/gdkx11applaunchcontext.h>
--#include <gdk/x11/gdkx11cursor.h>
--#include <gdk/x11/gdkx11device.h>
--#include <gdk/x11/gdkx11device-core.h>
--#include <gdk/x11/gdkx11device-xi2.h>
--#include <gdk/x11/gdkx11devicemanager.h>
--#include <gdk/x11/gdkx11devicemanager-core.h>
--#include <gdk/x11/gdkx11devicemanager-xi2.h>
--#include <gdk/x11/gdkx11display.h>
--#include <gdk/x11/gdkx11displaymanager.h>
--#include <gdk/x11/gdkx11dnd.h>
--#include <gdk/x11/gdkx11glcontext.h>
--#include <gdk/x11/gdkx11keys.h>
--#include <gdk/x11/gdkx11monitor.h>
--#include <gdk/x11/gdkx11property.h>
--#include <gdk/x11/gdkx11screen.h>
--#include <gdk/x11/gdkx11selection.h>
--#include <gdk/x11/gdkx11utils.h>
--#include <gdk/x11/gdkx11visual.h>
--#include <gdk/x11/gdkx11window.h>
--
--#include <gdk/x11/gdkx-autocleanups.h>
--
--#undef __GDKX_H_INSIDE__
--
--#endif /* __GDK_X_H__ */
 diff --git a/gtk/Makefile.am b/gtk/Makefile.am
-index 45fb7c2..ce81011 100644
+index 842c2f9..0921bc7 100644
 --- a/gtk/Makefile.am
 +++ b/gtk/Makefile.am
-@@ -1411,14 +1411,13 @@ gtkprivatetypebuiltins.c: $(gtk_private_type_h_sources)  gtkprivatetypebuiltins.
+@@ -1416,14 +1416,13 @@ gtkprivatetypebuiltins.c: $(gtk_private_type_h_sources)  gtkprivatetypebuiltins.
  	&& cp xgen-gptbc gtkprivatetypebuiltins.c  \
  	&& rm -f xgen-gptbc
  
@@ -913,7 +796,7 @@
    if (GDK_IS_WAYLAND_DISPLAY (gdk_display_get_default ()))
      {
 diff --git a/tests/Makefile.am b/tests/Makefile.am
-index f86c166..ba1acad 100644
+index e2db6e4..e51cf34 100644
 --- a/tests/Makefile.am
 +++ b/tests/Makefile.am
 @@ -80,8 +80,6 @@ noinst_PROGRAMS =  $(TEST_PROGS)	\
@@ -949,17 +832,16 @@
 index 0b3a519..07b096f 100644
 --- a/testsuite/gtk/objects-finalize.c
 +++ b/testsuite/gtk/objects-finalize.c
-@@ -115,8 +115,10 @@ main (int argc, char **argv)
+@@ -115,7 +115,9 @@ main (int argc, char **argv)
  	  all_types[i] != GDK_TYPE_X11_DEVICE_MANAGER_CORE &&
  	  all_types[i] != GDK_TYPE_X11_DEVICE_MANAGER_XI2 &&
  	  all_types[i] != GDK_TYPE_X11_DISPLAY_MANAGER &&
 +#ifdef HAVE_OPENGL
  	  all_types[i] != GDK_TYPE_X11_GL_CONTEXT &&
- #endif
 +#endif
+ #endif
  	  /* Not allowed to finalize a GdkPixbufLoader without calling gdk_pixbuf_loader_close() */
  	  all_types[i] != GDK_TYPE_PIXBUF_LOADER &&
- 	  all_types[i] != GDK_TYPE_DRAWING_CONTEXT &&
 -- 
-2.12.0
+2.14.1
 
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0004-configure.ac-Fix-wayland-protocols-path.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0004-configure.ac-Fix-wayland-protocols-path.patch
deleted file mode 100644
index aca55ce..0000000
--- a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0004-configure.ac-Fix-wayland-protocols-path.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 34f4d3928e8206a89b0a601bdf79d6194b3cc77e Mon Sep 17 00:00:00 2001
-From: Jussi Kukkonen <jussi.kukkonen@intel.com>
-Date: Thu, 9 Jun 2016 11:21:36 +0300
-Subject: [PATCH 4/4] configure.ac: Fix wayland-protocols path
-
-The wayland-protocols directory is used during build: Fix the path
-to point to sysroot specified in recipe.
-
-Normally PKG_CONFIG_SYSROOT_DIR could be used in configure.ac but that
-breaks multilib gtk+ as it would point to multilib sysroot when the
-(allarch) wayland-protocols is actually in the machine sysroot.
-
-Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
-Upstream-Status: Inappropriate [embedded specific]
-
-Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 00bf544..5515915 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -465,7 +465,7 @@ fi
- if test "$enable_wayland_backend" = "yes"; then
-   # For the cairo image backend
-   cairo_backends="$cairo_backends cairo"
--  AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, `$PKG_CONFIG --variable=pkgdatadir wayland-protocols`)
-+  AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, ${WAYLAND_PROTOCOLS_SYSROOT_DIR}`$PKG_CONFIG --variable=pkgdatadir wayland-protocols`)
-   GDK_BACKENDS="$GDK_BACKENDS wayland"
-   GDK_WINDOWING="$GDK_WINDOWING
- #define GDK_WINDOWING_WAYLAND"
--- 
-2.12.0
-
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3_3.22.17.bb b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3_3.22.28.bb
similarity index 77%
rename from import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3_3.22.17.bb
rename to import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3_3.22.28.bb
index 66a5463..864e826 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3_3.22.17.bb
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3_3.22.28.bb
@@ -6,10 +6,9 @@
            file://0001-Hardcoded-libtool.patch \
            file://0002-Do-not-try-to-initialize-GL-without-libGL.patch \
            file://0003-Add-disable-opengl-configure-option.patch \
-           file://0004-configure.ac-Fix-wayland-protocols-path.patch \
           "
-SRC_URI[md5sum] = "29f85430cf7cfa8ca8d0703ba65dbe11"
-SRC_URI[sha256sum] = "a6c1fb8f229c626a3d9c0e1ce6ea138de7f64a5a6bc799d45fa286fe461c3437"
+SRC_URI[md5sum] = "8c1f5ab987ddc7dab3e59660f89dcd9b"
+SRC_URI[sha256sum] = "d299612b018cfed7b2c689168ab52b668023708e17c335eb592260d186f15e1f"
 
 S = "${WORKDIR}/gtk+-${PV}"
 
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+_2.24.31.bb b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+_2.24.32.bb
similarity index 90%
rename from import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+_2.24.31.bb
rename to import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+_2.24.32.bb
index cc31bab..2070358 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+_2.24.31.bb
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+_2.24.32.bb
@@ -12,8 +12,8 @@
            file://strict-prototypes.patch \
 	  "
 
-SRC_URI[md5sum] = "526a1008586094a2cbb4592fd3f9ee10"
-SRC_URI[sha256sum] = "68c1922732c7efc08df4656a5366dcc3afdc8791513400dac276009b40954658"
+SRC_URI[md5sum] = "d5742aa42275203a499b59b4c382a784"
+SRC_URI[sha256sum] = "b6c8a93ddda5eabe3bfee1eb39636c9a03d2a56c7b62828b359bf197943c582e"
 
 EXTRA_OECONF = "--enable-xkb --disable-glibtest --disable-cups --disable-xinerama"
 
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk-icon-utils-native_3.22.17.bb b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk-icon-utils-native_3.22.28.bb
similarity index 93%
rename from import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk-icon-utils-native_3.22.17.bb
rename to import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk-icon-utils-native_3.22.28.bb
index 032d82d..942c047 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk-icon-utils-native_3.22.17.bb
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk-icon-utils-native_3.22.28.bb
@@ -10,8 +10,8 @@
 
 SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk+/${MAJ_VER}/gtk+-${PV}.tar.xz \
           file://Remove-Gdk-dependency-from-gtk-encode-symbolic-svg.patch"
-SRC_URI[md5sum] = "29f85430cf7cfa8ca8d0703ba65dbe11"
-SRC_URI[sha256sum] = "a6c1fb8f229c626a3d9c0e1ce6ea138de7f64a5a6bc799d45fa286fe461c3437"
+SRC_URI[md5sum] = "8c1f5ab987ddc7dab3e59660f89dcd9b"
+SRC_URI[sha256sum] = "d299612b018cfed7b2c689168ab52b668023708e17c335eb592260d186f15e1f"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
                     file://gtk/gtk.h;endline=25;md5=1d8dc0fccdbfa26287a271dce88af737 \
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/0001-Do-not-error-out-if-perl-is-not-found-or-its-version.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/0001-Do-not-error-out-if-perl-is-not-found-or-its-version.patch
deleted file mode 100644
index 4a90287..0000000
--- a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/0001-Do-not-error-out-if-perl-is-not-found-or-its-version.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From e733241fb580f032efbbe684ec35d4c9d27f1595 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Thu, 8 Sep 2016 13:38:39 +0300
-Subject: [PATCH] Do not error out if perl is not found or its version is too
- old.
-
-This allows use to avoid depending on perl-native if we're not going
-to use it (when api-docs are disabled).
-
-Upstream-Status: Inappropriate [oe-core specific]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- configure.ac | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 2a61d6e..29415bd 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -36,7 +36,7 @@ dnl Check for Perl.
- dnl
- AC_PATH_PROG([PERL], [perl])
- if test -z "$PERL"; then
--	AC_MSG_ERROR([perl not found])
-+	AC_MSG_WARN([perl not found])
- fi
- 
- AC_MSG_CHECKING([if Perl version >= 5.18.0])
-@@ -44,7 +44,7 @@ if "$PERL" -e "require v5.18.0"; then
- 	AC_MSG_RESULT([yes])
- else
- 	AC_MSG_RESULT([no])
--	AC_MSG_ERROR([perl >= 5.18.0 is required for gtk-doc])
-+	AC_MSG_WARN([perl >= 5.18.0 is required for gtk-doc])
- fi
- 
- dnl
--- 
-2.9.3
-
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/0001-Do-not-hardocode-paths-to-perl-python-in-scripts.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/0001-Do-not-hardocode-paths-to-perl-python-in-scripts.patch
index 477fc9a..2fe3ab9 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/0001-Do-not-hardocode-paths-to-perl-python-in-scripts.patch
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/0001-Do-not-hardocode-paths-to-perl-python-in-scripts.patch
@@ -1,7 +1,7 @@
-From 6fab82b93c7bd301eb42448515b02f7cb3306897 Mon Sep 17 00:00:00 2001
+From 928102874bc2339a1d57c6b178877e0c6002cb3a Mon Sep 17 00:00:00 2001
 From: Alexander Kanavin <alex.kanavin@gmail.com>
 Date: Wed, 31 Aug 2016 16:44:46 +0300
-Subject: [PATCH] Do not hardocode paths to perl/python in scripts.
+Subject: [PATCH 1/3] Do not hardocode paths to perl/python in scripts.
 
 Doing so when the interpreters are somewhere deep in a sysroot directory
 can reach the shebang line limit, and resulting scripts wouldn't work
@@ -9,131 +9,134 @@
 
 Upstream-Status: Inappropriate [oe-core specific]
 Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
 ---
- gtkdoc-check.in     | 2 +-
- gtkdoc-common.pl.in | 2 +-
- gtkdoc-depscan.in   | 2 +-
- gtkdoc-fixxref.in   | 2 +-
- gtkdoc-mkdb.in      | 2 +-
- gtkdoc-mktmpl.in    | 2 +-
- gtkdoc-rebase.in    | 2 +-
- gtkdoc-scan.in      | 2 +-
- gtkdoc-scangobj.in  | 2 +-
- tests/tools.sh.in   | 4 ++--
- 10 files changed, 11 insertions(+), 11 deletions(-)
+ gtkdoc-check.in    | 2 +-
+ gtkdoc-depscan.in  | 2 +-
+ gtkdoc-fixxref.in  | 2 +-
+ gtkdoc-mkdb.in     | 2 +-
+ gtkdoc-mkhtml.in   | 2 +-
+ gtkdoc-mkman.in    | 2 +-
+ gtkdoc-mkpdf.in    | 2 +-
+ gtkdoc-rebase.in   | 2 +-
+ gtkdoc-scan.in     | 2 +-
+ gtkdoc-scangobj.in | 2 +-
+ tests/tools.sh.in  | 2 +-
+ 11 files changed, 11 insertions(+), 11 deletions(-)
 
 diff --git a/gtkdoc-check.in b/gtkdoc-check.in
-index 560d69b..b60857f 100755
+index 8c8e917..f6a25f6 100755
 --- a/gtkdoc-check.in
 +++ b/gtkdoc-check.in
 @@ -1,4 +1,4 @@
--#!@PERL@ -w
-+#!/usr/bin/env perl
- # -*- cperl -*-
- #
- # gtk-doc - GTK DocBook documentation generator.
-diff --git a/gtkdoc-common.pl.in b/gtkdoc-common.pl.in
-index 4747396..cfadb78 100644
---- a/gtkdoc-common.pl.in
-+++ b/gtkdoc-common.pl.in
-@@ -1,4 +1,4 @@
--#!@PERL@ -w
-+#!/usr/bin/env perl
- # -*- cperl -*-
+-#!@PYTHON@
++#!/usr/bin/env python3
+ # -*- python; coding: utf-8 -*-
  #
  # gtk-doc - GTK DocBook documentation generator.
 diff --git a/gtkdoc-depscan.in b/gtkdoc-depscan.in
-index 83af01b..917e247 100644
+index 9bfaf30..aadc952 100644
 --- a/gtkdoc-depscan.in
 +++ b/gtkdoc-depscan.in
 @@ -1,4 +1,4 @@
 -#!@PYTHON@
-+#!/usr/bin/env python
++#!/usr/bin/env python3
  
- import gzip, os.path, re
+ from __future__ import print_function
  
 diff --git a/gtkdoc-fixxref.in b/gtkdoc-fixxref.in
-index 3d9e8d0..d55190b 100755
+index 0ea02d4..bdd443a 100755
 --- a/gtkdoc-fixxref.in
 +++ b/gtkdoc-fixxref.in
 @@ -1,4 +1,4 @@
--#!@PERL@ -w
-+#!/usr/bin/env perl
- # -*- cperl -*-
+-#!@PYTHON@
++#!/usr/bin/env python3
+ # -*- python -*-
  #
  # gtk-doc - GTK DocBook documentation generator.
 diff --git a/gtkdoc-mkdb.in b/gtkdoc-mkdb.in
-index 8dd6d5e..d808750 100755
+index 42d5731..3a56d56 100755
 --- a/gtkdoc-mkdb.in
 +++ b/gtkdoc-mkdb.in
 @@ -1,4 +1,4 @@
--#!@PERL@ -w
-+#!/usr/bin/env perl
- # -*- cperl -*-
+-#!@PYTHON@
++#!/usr/bin/env python3
+ # -*- python; coding: utf-8 -*-
  #
  # gtk-doc - GTK DocBook documentation generator.
-diff --git a/gtkdoc-mktmpl.in b/gtkdoc-mktmpl.in
-index c64dfd3..2f46c18 100755
---- a/gtkdoc-mktmpl.in
-+++ b/gtkdoc-mktmpl.in
+diff --git a/gtkdoc-mkhtml.in b/gtkdoc-mkhtml.in
+index 0d0a15d..914ff55 100644
+--- a/gtkdoc-mkhtml.in
++++ b/gtkdoc-mkhtml.in
 @@ -1,4 +1,4 @@
--#!@PERL@ -w
-+#!/usr/bin/env perl
- # -*- cperl -*-
+-#!@PYTHON@
++#!/usr/bin/env python3
+ # -*- python; coding: utf-8 -*-
+ #
+ # gtk-doc - GTK DocBook documentation generator.
+diff --git a/gtkdoc-mkman.in b/gtkdoc-mkman.in
+index c5445cd..65db71a 100644
+--- a/gtkdoc-mkman.in
++++ b/gtkdoc-mkman.in
+@@ -1,4 +1,4 @@
+-#!@PYTHON@
++#!/usr/bin/env python3
+ # -*- python; coding: utf-8 -*-
+ #
+ # gtk-doc - GTK DocBook documentation generator.
+diff --git a/gtkdoc-mkpdf.in b/gtkdoc-mkpdf.in
+index e8c0c03..f807236 100755
+--- a/gtkdoc-mkpdf.in
++++ b/gtkdoc-mkpdf.in
+@@ -1,4 +1,4 @@
+-#!@PYTHON@
++#!/usr/bin/env python3
+ # -*- python; coding: utf-8 -*-
  #
  # gtk-doc - GTK DocBook documentation generator.
 diff --git a/gtkdoc-rebase.in b/gtkdoc-rebase.in
-index 375482d..cf05b45 100644
+index 17a71c2..ec3fd28 100755
 --- a/gtkdoc-rebase.in
 +++ b/gtkdoc-rebase.in
 @@ -1,4 +1,4 @@
--#!@PERL@ -w
-+#!/usr/bin/env perl
- # -*- cperl -*-
+-#!@PYTHON@
++#!/usr/bin/env python3
+ # -*- python -*-
  #
  # gtk-doc - GTK DocBook documentation generator.
 diff --git a/gtkdoc-scan.in b/gtkdoc-scan.in
-index 048e5c9..78c6136 100755
+index 954c811..f461504 100755
 --- a/gtkdoc-scan.in
 +++ b/gtkdoc-scan.in
 @@ -1,4 +1,4 @@
--#!@PERL@ -w
-+#!/usr/bin/env perl
- # -*- cperl -*-
+-#!@PYTHON@
++#!/usr/bin/env python3
+ # -*- python -*-
  #
  # gtk-doc - GTK DocBook documentation generator.
 diff --git a/gtkdoc-scangobj.in b/gtkdoc-scangobj.in
-index fb66b76..67ee8f7 100644
+index 4cbe130..52c2c24 100644
 --- a/gtkdoc-scangobj.in
 +++ b/gtkdoc-scangobj.in
 @@ -1,4 +1,4 @@
--#!@PERL@ -w
-+#!/usr/bin/env perl
- # -*- cperl -*-
+-#!@PYTHON@
++#!/usr/bin/env python3
+ # -*- python -*-
  #
  # gtk-doc - GTK DocBook documentation generator.
 diff --git a/tests/tools.sh.in b/tests/tools.sh.in
-index a114a42..7073883 100644
+index 4d301d0..565fc1e 100644
 --- a/tests/tools.sh.in
 +++ b/tests/tools.sh.in
-@@ -11,7 +11,7 @@ echo "Running suite(s): gtk-doc-$suite";
- 
- # test perl scripts
- for file in gtkdoc-check gtkdoc-fixxref gtkdoc-mkdb gtkdoc-mktmpl gtkdoc-rebase gtkdoc-scan gtkdoc-scangobj ; do
--  @PERL@ -cwT `which $file`
-+  perl -cwT `which $file`
-   if test $? = 1 ; then failed=`expr $failed + 1`; fi
-   tested=`expr $tested + 1`
+@@ -31,7 +31,7 @@ done
+ # TODO: test python 2 and 3 (python3 -mcompileall gtkdoc/*.py)
+ for file in gtkdoc-check gtkdoc-depscan gtkdoc-fixxref gtkdoc-mkdb gtkdoc-mkhtml gtkdoc-mkman gtkdoc-mkpdf gtkdoc-rebase gtkdoc-scangobj; do
+     fullfile=`which $file`
+-    @PYTHON@ -m py_compile $fullfile
++    python3 -m py_compile $fullfile
+     if test $? != 0 ; then failed=`expr $failed + 1`; fi
+     tested=`expr $tested + 1`
  done
-@@ -34,7 +34,7 @@ done
- 
- 
- # test python scripts
--@PYTHON@ -m py_compile `which gtkdoc-depscan`
-+python -m py_compile `which gtkdoc-depscan`
- if test $? != 0 ; then failed=`expr $failed + 1`; fi
- tested=`expr $tested + 1`
- 
 -- 
-2.9.3
+2.14.1
 
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/conditionaltests.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/conditionaltests.patch
index 0c180f2..21c2db7 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/conditionaltests.patch
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/conditionaltests.patch
@@ -1,14 +1,23 @@
+From 78bbf185934147a69ceb4b617d424e12e70997bf Mon Sep 17 00:00:00 2001
+From: Richard Purdie <richard.purdie@linuxfoundation.org>
+Date: Tue, 27 Jun 2017 21:00:58 +0100
+Subject: [PATCH 3/3] gtk-doc: Handle floating gtk-doc dependency
+
 Allow the tests to be explicitly disabled to avoid floating dependnecy
 issues. This is not really an issue with RSS but is on previous releases.
 
 RP 2017/6/27
 Upstream-Status: Pending
 
-Index: gtk-doc-1.25/configure.ac
-===================================================================
---- gtk-doc-1.25.orig/configure.ac
-+++ gtk-doc-1.25/configure.ac
-@@ -161,6 +161,11 @@ if test "x$GCC" = "xyes"; then
+---
+ configure.ac | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index 684e2d1..e5e3aab 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -146,6 +146,11 @@ if test "x$GCC" = "xyes"; then
  	fi
  fi
  
@@ -20,7 +29,7 @@
  dnl if glib is available we can enable the tests
  PKG_CHECK_MODULES(TEST_DEPS, [glib-2.0 >= 2.6.0 gobject-2.0 >= 2.6.0],
  	[	glib_prefix="`$PKG_CONFIG --variable=prefix glib-2.0`"
-@@ -171,6 +176,11 @@ PKG_CHECK_MODULES(TEST_DEPS, [glib-2.0 >
+@@ -156,6 +161,11 @@ PKG_CHECK_MODULES(TEST_DEPS, [glib-2.0 >= 2.6.0 gobject-2.0 >= 2.6.0],
  		build_tests="no"
  	]
  )
@@ -30,5 +39,8 @@
 +fi
 +
  AM_CONDITIONAL(GTK_DOC_USE_LIBTOOL, test -n "$LIBTOOL" -a x$gtk_doc_use_libtool = xyes )
- dnl this enable the rule in test/Makefile.am
+ dnl this enables the rule in test/Makefile.am
  AM_CONDITIONAL(BUILD_TESTS, test x$build_tests = xyes)
+-- 
+2.14.1
+
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/no-clobber.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/no-clobber.patch
new file mode 100644
index 0000000..0fa22b2
--- /dev/null
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/no-clobber.patch
@@ -0,0 +1,27 @@
+In out-of-tree builds gtk-doc's setup-build target copies all the content from $srcdir to $builddir.
+
+However, if some of this content is regenerated at configure time this can happen:
+
+1) configure writes new build/version.xml
+2) make compile copies content, including the tarball's src/version.xml
+   to build/version.xml, and generates gtk-doc.
+3) make install notices build/version.xml is older than configure.status,
+   so regenerates gtk-doc.
+
+gtk-doc generation is a slow process at the best of times, so doing it twice isn't good.
+
+Solve this by changing cp --force to cp --no-clobber, so setup-build only copies
+files which don't already exist.
+
+Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=794571]
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+diff --git a/gtk-doc.make b/gtk-doc.make
+index f87eaab..246f3c0 100644
+--- a/gtk-doc.make
++++ b/gtk-doc.make
+@@ -113,3 +113,3 @@ setup-build.stamp:
+ 	      test -f $(abs_srcdir)/$$file && \
+-	        cp -pf $(abs_srcdir)/$$file $(abs_builddir)/$$file || true; \
++	        cp -pn $(abs_srcdir)/$$file $(abs_builddir)/$$file || true; \
+ 	    done; \
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/pkg-config-native.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/pkg-config-native.patch
index c768870..bfbc777 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/pkg-config-native.patch
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/pkg-config-native.patch
@@ -1,24 +1,32 @@
-Use native pkg-config when looking for gtk-doc.
+From 5f145621b4780cfd6a5632fcc97c45f572938efc Mon Sep 17 00:00:00 2001
+From: Ross Burton <ross.burton@intel.com>
+Date: Mon, 5 Sep 2016 22:25:44 +0100
+Subject: [PATCH 5/5] Use native pkg-config when looking for gtk-doc.
 
 Upstream-Status: Inappropriate
 Signed-off-by: Ross Burton <ross.burton@intel.com>
 
-diff --git a/gtk-doc.m4 b/gtk-doc.m4
-index 3675543..94881ae 100644
---- a/gtk-doc.m4
-+++ b/gtk-doc.m4
-@@ -1,6 +1,6 @@
- dnl -*- mode: autoconf -*-
+---
+ gtk-doc.m4 | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
 
+Index: gtk-doc-1.27/gtk-doc.m4
+===================================================================
+--- gtk-doc-1.27.orig/gtk-doc.m4
++++ gtk-doc-1.27/gtk-doc.m4
+@@ -25,7 +25,7 @@
+ # Macro appear in them. The GNU General Public License (GPL) does govern
+ # all other use of the material that constitutes the Autoconf Macro.
+ 
 -# serial 2
 +# serial 2.1
-
+ 
  dnl Usage:
  dnl   GTK_DOC_CHECK([minimum-gtk-doc-version])
-@@ -10,11 +10,16 @@ AC_DEFUN([GTK_DOC_CHECK],
+@@ -35,11 +35,16 @@ AC_DEFUN([GTK_DOC_CHECK],
    AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first
    AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first
-
+ 
 +  gtkdoc_pkgconfig_save=$PKG_CONFIG
 +  PKG_CONFIG=pkg-config-native
 +
@@ -26,7 +34,7 @@
    AC_MSG_CHECKING([for gtk-doc])
    PKG_CHECK_EXISTS([$gtk_doc_requires],[have_gtk_doc=yes],[have_gtk_doc=no])
    AC_MSG_RESULT($have_gtk_doc)
-
+ 
 +  PKG_CONFIG=$gtkdoc_pkgconfig_save
 +
    if test "$have_gtk_doc" = "no"; then
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/gtk-doc_1.25.bb b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/gtk-doc_1.27.bb
similarity index 81%
rename from import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/gtk-doc_1.25.bb
rename to import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/gtk-doc_1.27.bb
index e0eb994..4552811 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/gtk-doc_1.25.bb
+++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/gtk-doc_1.27.bb
@@ -15,22 +15,18 @@
 # into its scripts. This means that target gtk-doc package is broken;
 # hopefully no one minds because its scripts are not used for anything during build
 # and shouldn't be used on targets.
-PACKAGECONFIG[working-scripts] = "--with-highlight=source-highlight,--with-highlight=no,libxslt-native xmlto-native source-highlight-native perl-native"
+PACKAGECONFIG[working-scripts] = "--with-highlight=source-highlight,--with-highlight=no,libxslt-native xmlto-native source-highlight-native python3-six"
 PACKAGECONFIG[tests] = "--enable-tests,--disable-tests,glib-2.0"
 
-# We cannot use host perl, because it may be too old for gtk-doc
-EXTRANATIVEPATH += "perl-native"
-
+SRC_URI[archive.md5sum] = "b29949e0964762e474b706ce22171602"
+SRC_URI[archive.sha256sum] = "e26bd3f7080c749b1cb66c46c6bf8239e2f320a949964fb9c6d56e1b0c6d9a6f"
 SRC_URI += "file://0001-Do-not-hardocode-paths-to-perl-python-in-scripts.patch \
-            file://0001-Do-not-error-out-if-xsltproc-is-not-found.patch \
-            file://0001-Do-not-error-out-if-perl-is-not-found-or-its-version.patch \
-            file://conditionaltests.patch \
+           file://0001-Do-not-error-out-if-xsltproc-is-not-found.patch \
+           file://conditionaltests.patch \
+           file://no-clobber.patch \
            "
 SRC_URI_append_class-native = " file://pkg-config-native.patch"
 
-SRC_URI[archive.md5sum] = "0dc6570953112a464a409fb99258ccbc"
-SRC_URI[archive.sha256sum] = "1ea46ed400e6501f975acaafea31479cea8f32f911dca4dff036f59e6464fd42"
-
 BBCLASSEXTEND = "native nativesdk"
 
 # Do not check for XML catalogs when building because that
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.15.bb b/import-layers/yocto-poky/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.17.bb
similarity index 74%
rename from import-layers/yocto-poky/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.15.bb
rename to import-layers/yocto-poky/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.17.bb
index a704632..7064b19 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.15.bb
+++ b/import-layers/yocto-poky/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.17.bb
@@ -6,8 +6,8 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=f08a446809913fc9b3c718f0eaea0426"
 
 SRC_URI = "http://icon-theme.freedesktop.org/releases/${BPN}-${PV}.tar.xz"
-SRC_URI[md5sum] = "6aa2b3993a883d85017c7cc0cfc0fb73"
-SRC_URI[sha256sum] = "9cc45ac3318c31212ea2d8cb99e64020732393ee7630fa6c1810af5f987033cc"
+SRC_URI[md5sum] = "84eec8d6f810240a069c731f1870b474"
+SRC_URI[sha256sum] = "317484352271d18cbbcfac3868eab798d67fff1b8402e740baa6ff41d588a9d8"
 
 inherit allarch autotools
 
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/json-glib/json-glib_1.2.8.bb b/import-layers/yocto-poky/meta/recipes-gnome/json-glib/json-glib_1.2.8.bb
deleted file mode 100644
index 2c5d381..0000000
--- a/import-layers/yocto-poky/meta/recipes-gnome/json-glib/json-glib_1.2.8.bb
+++ /dev/null
@@ -1,20 +0,0 @@
-SUMMARY = "JSON-GLib implements a full JSON parser using GLib and GObject"
-DESCRIPTION = "Use JSON-GLib it is possible to parse and generate valid JSON\
- data structures, using a DOM-like API. JSON-GLib also offers GObject \
-integration, providing the ability to serialize and deserialize GObject \
-instances to and from JSON data types."
-HOMEPAGE = "http://live.gnome.org/JsonGlib"
-
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
-
-DEPENDS = "glib-2.0"
-
-SRC_URI[archive.md5sum] = "ff31e7d0594df44318e12facda3d086e"
-SRC_URI[archive.sha256sum] = "fd55a9037d39e7a10f0db64309f5f0265fa32ec962bf85066087b83a2807f40a"
-
-inherit gnomebase gettext lib_package gobject-introspection gtk-doc manpages
-
-PACKAGECONFIG[manpages] = "--enable-man --with-xml-catalog=${STAGING_ETCDIR_NATIVE}/xml/catalog.xml, --disable-man, libxslt-native xmlto-native"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/json-glib/json-glib_1.4.2.bb b/import-layers/yocto-poky/meta/recipes-gnome/json-glib/json-glib_1.4.2.bb
new file mode 100644
index 0000000..19fe3cc
--- /dev/null
+++ b/import-layers/yocto-poky/meta/recipes-gnome/json-glib/json-glib_1.4.2.bb
@@ -0,0 +1,40 @@
+SUMMARY = "JSON-GLib implements a full JSON parser using GLib and GObject"
+DESCRIPTION = "Use JSON-GLib it is possible to parse and generate valid JSON\
+ data structures, using a DOM-like API. JSON-GLib also offers GObject \
+integration, providing the ability to serialize and deserialize GObject \
+instances to and from JSON data types."
+HOMEPAGE = "http://live.gnome.org/JsonGlib"
+
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
+
+DEPENDS = "glib-2.0"
+
+SRC_URI[archive.md5sum] = "35107e23a7bbbc70f31c34f7b9adf1c3"
+SRC_URI[archive.sha256sum] = "2d7709a44749c7318599a6829322e081915bdc73f5be5045882ed120bb686dc8"
+
+GNOMEBASEBUILDCLASS = "meson"
+inherit gnomebase lib_package gobject-introspection gtk-doc gettext
+
+# This builds both API docs (via gtk-doc) and manpages
+GTKDOC_ENABLE_FLAG = "-Ddocs=true"
+GTKDOC_DISABLE_FLAG = "-Ddocs=false"
+
+GI_ENABLE_FLAG = "-Dintrospection=true"
+GI_DISABLE_FLAG = "-Dintrospection=false"
+
+EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GTKDOC_ENABLED', 'True', '${GTKDOC_ENABLE_FLAG}', \
+                                                                                    '${GTKDOC_DISABLE_FLAG}', d)} "
+EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GI_ENABLE_FLAG}', \
+                                                                                    '${GI_DISABLE_FLAG}', d)} "
+
+do_install_append() {
+    # FIXME: these need to be provided via ptest
+    rm -rf ${D}${datadir}/installed-tests ${D}${libexecdir}
+}
+
+BBCLASSEXTEND = "native nativesdk"
+
+# Currently it's not possible to disable gettext in Meson, so we need to force
+# this back on.
+USE_NLS_class-native = "yes"
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/libgudev/libgudev_231.bb b/import-layers/yocto-poky/meta/recipes-gnome/libgudev/libgudev_232.bb
similarity index 74%
rename from import-layers/yocto-poky/meta/recipes-gnome/libgudev/libgudev_231.bb
rename to import-layers/yocto-poky/meta/recipes-gnome/libgudev/libgudev_232.bb
index ad67926..19fe962 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/libgudev/libgudev_231.bb
+++ b/import-layers/yocto-poky/meta/recipes-gnome/libgudev/libgudev_232.bb
@@ -1,7 +1,7 @@
 SUMMARY = "GObject wrapper for libudev"
 HOMEPAGE = "https://wiki.gnome.org/Projects/libgudev"
-SRC_URI[archive.md5sum] = "916c10c51ec61131e244c3936bbb2e0c"
-SRC_URI[archive.sha256sum] = "3b1ef99d4a8984c35044103d8ddfc3cc52c80035c36abab2bcc5e3532e063f96"
+SRC_URI[archive.sha256sum] = "ee4cb2b9c573cdf354f6ed744f01b111d4b5bed3503ffa956cefff50489c7860"
+SRC_URI[archive.md5sum] = "6914852377156665567abf8a38d89236"
 
 DEPENDS = "glib-2.0 udev"
 
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/librsvg/librsvg_2.40.18.bb b/import-layers/yocto-poky/meta/recipes-gnome/librsvg/librsvg_2.40.20.bb
similarity index 79%
rename from import-layers/yocto-poky/meta/recipes-gnome/librsvg/librsvg_2.40.18.bb
rename to import-layers/yocto-poky/meta/recipes-gnome/librsvg/librsvg_2.40.20.bb
index 21a0dc2..e376d52 100644
--- a/import-layers/yocto-poky/meta/recipes-gnome/librsvg/librsvg_2.40.18.bb
+++ b/import-layers/yocto-poky/meta/recipes-gnome/librsvg/librsvg_2.40.20.bb
@@ -2,6 +2,8 @@
 HOMEPAGE = "http://ftp.gnome.org/pub/GNOME/sources/librsvg/"
 BUGTRACKER = "https://bugzilla.gnome.org/"
 
+RECIPE_NO_UPDATE_REASON = "Versions from 2.41.0 requires Rust compiler to build it"
+
 LICENSE = "LGPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
                     file://rsvg.h;beginline=3;endline=24;md5=20b4113c4909bbf0d67e006778302bc6"
@@ -10,12 +12,12 @@
 DEPENDS = "cairo gdk-pixbuf glib-2.0 libcroco libxml2 pango"
 BBCLASSEXTEND = "native"
 
-inherit autotools pkgconfig gnomebase gtk-doc pixbufcache upstream-version-is-even gobject-introspection
+inherit gnomebase gtk-doc pixbufcache upstream-version-is-even gobject-introspection
 
 SRC_URI += "file://gtk-option.patch"
 
-SRC_URI[archive.md5sum] = "eaa5c8a8bbe2600ab5194c0d3b1b621b"
-SRC_URI[archive.sha256sum] = "bfc8c488c89c1e7212c478beb95c41b44701636125a3e6dab41187f1485b564c"
+SRC_URI[archive.md5sum] = "4949d313b0c5d9161a5c259104af5568"
+SRC_URI[archive.sha256sum] = "cff4dd3c3b78bfe99d8fcfad3b8ba1eee3289a0823c0e118d78106be6b84c92b"
 
 CACHED_CONFIGUREVARS = "ac_cv_path_GDK_PIXBUF_QUERYLOADERS=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders"
 
@@ -40,5 +42,6 @@
 	      ${datadir}/themes"
 FILES_librsvg-gtk = "${libdir}/gdk-pixbuf-2.0/*/*/*.so \
                      ${datadir}/thumbnailers/librsvg.thumbnailer"
+RRECOMMENDS_librsvg-gtk = "gdk-pixbuf-bin"
 
 PIXBUF_PACKAGES = "librsvg-gtk"