meta-openembedded: subtree update:55de2d06ad..53d431639a

Adrian Bunk (1):
      ltrace: Remove RDEPENDS on elfutils

Andreas Müller (22):
      gedit: upgrade 2.30.4 -> 3.34.0
      gtksourceview2: remove
      evolution-data-server: give up fine grained -dev/-dbg packages
      evolution-data-server: upgrade 3.26.6 -> 3.34.1 and rework
      gnome-font-viewer: initial add 3.34.0
      evince: upgrade 3.28.2 -> 3.34.1
      file-roller: inital add 3.32.2
      gexiv2: initial add 0.12.0
      gnome-autoar: inital add 0.2.3
      tracker: initial add 2.3.1
      nautilus: upgrade 3.18.5 -> 3.34.1
      geocode-glib: initial add 3.26.1
      libgweather: initial add 3.34.0
      libwacom: initial add 0.33
      gnome-settings-daemon: initial add 3.34.1
      fluidsynth: upgrade 2.0.7 -> 2.0.9
      gnome-terminal: re-add 3.34.2
      gnome-terminal: Fix build for musl
      gmime: cleanup recipe
      gmime: move to meta-oe/recipes-gnome
      gmime: upgrade 3.2.4 -> 3.2.5
      evolution-data-server: add upstream-version-is-even & gsettings to inherit

Bartosz Golaszewski (1):
      libgpiod: put gpio utils into an actual separate package

Gaylord Charles (1):
      nginx: fix install paths

Khem Raj (11):
      evince: Fix build with clang
      poppler: Extend the c/c++ flags fix to cover clang
      pidgin-sipe: Fix another case of struct incompatiblility due to 64bit time_t
      gperftools: Convert static and libunwind support to packageconfig
      libmad: Define O2 for all arches as default optimization
      rsyslog: Dont force enable atomic builtins on mips
      libtorrent: Drop 64bit atomics patch for mips/ppc
      libtorrent: Disable instrumentation on ppc/mips
      libkcapi: Move static inline functions where used
      grpc: Link with libatomic on clang/x86
      upm: Link with libatomic on clang/x86

Leon Anavi (1):
      surf: Add a simple web browser

Martin Balik (1):
      squid: upgrade 4.6 -> 4.9

Nicola Lunghi (2):
      python-jsonschema: multiple fixes
      python-jsonschema: add PACKAGECONFIG nongpl option

Oleksandr Kravchuk (1):
      flatbuffers: update to 1.11.0

Peter Kjellerstedt (1):
      libldb: Do not require the "pam" distro feature to be enabled

nick83ola (2):
      python3-apply-defaults: add recipe
      python3-jsonrpcserver: add recipe

Change-Id: I231fc015cba86b7c14915ffc3f6f123c9296fd68
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0004-Add-native-suffix-to-exacutables-produced-and-run-du.patch b/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0004-Add-native-suffix-to-exacutables-produced-and-run-du.patch
deleted file mode 100644
index 67023df..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0004-Add-native-suffix-to-exacutables-produced-and-run-du.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 30bd4ae3badb152c9f81c6d34014c586fa0cc825 Mon Sep 17 00:00:00 2001
-From: Piotr Tworek <tworaz@tworaz.net>
-Date: Mon, 12 Aug 2019 14:13:52 +0200
-Subject: [PATCH 4/7] Add native suffix to exacutables produced and run during
- build process.
-
-CMake can't build tools for the host system when cross compiling. As
-result eds currently fails to build in OE due to some programs being
-cross compiled for the target and run on the host. To work around this
-limitation modify existing targets using build time generated binaries
-to invoke binaries suffixed with -native. We can inject such binaries
-into expected locations prior to invoking ninja in do_compile.
-
-Upstream-Status: Inappropriate [OE specific]
-
-Signed-off-by: Piotr Tworek <tworaz@tworaz.net>
----
- src/addressbook/libebook-contacts/CMakeLists.txt | 2 +-
- src/camel/CMakeLists.txt                         | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/addressbook/libebook-contacts/CMakeLists.txt b/src/addressbook/libebook-contacts/CMakeLists.txt
-index e9e3259..2ae72a8 100644
---- a/src/addressbook/libebook-contacts/CMakeLists.txt
-+++ b/src/addressbook/libebook-contacts/CMakeLists.txt
-@@ -25,7 +25,7 @@ target_link_libraries(gen-western-table
- 
- add_custom_command(
- 	OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/e-name-western-tables.h
--	COMMAND ${CMAKE_CURRENT_BINARY_DIR}/gen-western-table "${CMAKE_CURRENT_SOURCE_DIR}/e-name-western-tables.h.in" >${CMAKE_CURRENT_BINARY_DIR}/e-name-western-tables.h
-+	COMMAND ${CMAKE_CURRENT_BINARY_DIR}/gen-western-table-native "${CMAKE_CURRENT_SOURCE_DIR}/e-name-western-tables.h.in" >${CMAKE_CURRENT_BINARY_DIR}/e-name-western-tables.h
- 	DEPENDS gen-western-table e-name-western-tables.h.in
- )
- 
-diff --git a/src/camel/CMakeLists.txt b/src/camel/CMakeLists.txt
-index be626a8..9226b2b 100644
---- a/src/camel/CMakeLists.txt
-+++ b/src/camel/CMakeLists.txt
-@@ -10,7 +10,7 @@ target_include_directories(camel-gen-tables PUBLIC
- 
- add_custom_command(
- 	OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/camel-mime-tables.c
--	COMMAND ${CMAKE_CURRENT_BINARY_DIR}/camel-gen-tables >${CMAKE_CURRENT_BINARY_DIR}/camel-mime-tables.c
-+	COMMAND ${CMAKE_CURRENT_BINARY_DIR}/camel-gen-tables-native >${CMAKE_CURRENT_BINARY_DIR}/camel-mime-tables.c
- 	DEPENDS camel-gen-tables
- )
- 
--- 
-2.21.0
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0005-Use-LC_MESSAGES-for-address-localization-when-LC_ADD.patch b/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0005-Use-LC_MESSAGES-for-address-localization-when-LC_ADD.patch
deleted file mode 100644
index 55ab5a7..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0005-Use-LC_MESSAGES-for-address-localization-when-LC_ADD.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 95425206e7317e59b7ca06d7f838ad357cdd200c Mon Sep 17 00:00:00 2001
-From: Piotr Tworek <tworaz@tworaz.net>
-Date: Wed, 14 Aug 2019 00:31:54 +0200
-Subject: [PATCH 5/7] Use LC_MESSAGES for address localization when LC_ADDRESS
- is not available.
-
-Musl does not define LC_ADDRESS unfortunately.
-
-Upstream-Status: Inappropriate [musl specific]
-
-Signed-off-by: Piotr Tworek <tworaz@tworaz.net>
----
- src/addressbook/libebook-contacts/e-phone-number-private.cpp | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/src/addressbook/libebook-contacts/e-phone-number-private.cpp b/src/addressbook/libebook-contacts/e-phone-number-private.cpp
-index 4c5aebb..9abcebd 100644
---- a/src/addressbook/libebook-contacts/e-phone-number-private.cpp
-+++ b/src/addressbook/libebook-contacts/e-phone-number-private.cpp
-@@ -36,6 +36,10 @@
- #include <phonenumbers/logger.h>
- #include <phonenumbers/phonenumberutil.h>
- 
-+#ifndef LC_ADDRESS
-+#define LC_ADDRESS LC_MESSAGES
-+#endif
-+
- using i18n::phonenumbers::PhoneNumber;
- using i18n::phonenumbers::PhoneNumberUtil;
- 
--- 
-2.21.0
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0006-Dont-add-usr-lib-to-LDFLAGS-when-linking-libphonenum.patch b/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0006-Dont-add-usr-lib-to-LDFLAGS-when-linking-libphonenum.patch
deleted file mode 100644
index c0c1427..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0006-Dont-add-usr-lib-to-LDFLAGS-when-linking-libphonenum.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From fb9164bbca5b425f1cf1bb3cac51d06afe81938a Mon Sep 17 00:00:00 2001
-From: Piotr Tworek <tworaz@tworaz.net>
-Date: Wed, 14 Aug 2019 00:47:59 +0200
-Subject: [PATCH 6/7] Dont add /usr/lib to LDFLAGS when linking libphonenumber.
-
-This will refer to host lib dir which is not what we want.
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Piotr Tworek <tworaz@tworaz.net>
----
- cmake/modules/FindPhonenumber.cmake | 6 ++----
- 1 file changed, 2 insertions(+), 4 deletions(-)
-
-diff --git a/cmake/modules/FindPhonenumber.cmake b/cmake/modules/FindPhonenumber.cmake
-index 04d1056..70c0c41 100644
---- a/cmake/modules/FindPhonenumber.cmake
-+++ b/cmake/modules/FindPhonenumber.cmake
-@@ -37,12 +37,10 @@ string(TOUPPER "${WITH_PHONENUMBER}" optupper)
- if(("${optupper}" STREQUAL "ON") OR ("${substr}" STREQUAL "${CMAKE_BINARY_DIR}"))
- 	set(WITH_PHONENUMBER "ON")
- 	set(PHONENUMBER_INCLUDE_DIRS "${INCLUDE_INSTALL_DIR}")
--	set(PHONENUMBER_LIB_DIRS ${LIB_INSTALL_DIR})
--	set(PHONENUMBER_LDFLAGS -L${PHONENUMBER_LIB_DIRS} ${PHONENUMBER_LDFLAGS})
-+	set(PHONENUMBER_LDFLAGS  ${PHONENUMBER_LDFLAGS})
- else(("${optupper}" STREQUAL "ON") OR ("${substr}" STREQUAL "${CMAKE_BINARY_DIR}"))
- 	set(PHONENUMBER_INCLUDE_DIRS "${WITH_PHONENUMBER}/include")
--	set(PHONENUMBER_LIB_DIRS ${WITH_PHONENUMBER}/lib${LIB_SUFFIX})
--	set(PHONENUMBER_LDFLAGS -L${PHONENUMBER_LIB_DIRS} ${PHONENUMBER_LDFLAGS})
-+	set(PHONENUMBER_LDFLAGS ${PHONENUMBER_LDFLAGS})
- endif(("${optupper}" STREQUAL "ON") OR ("${substr}" STREQUAL "${CMAKE_BINARY_DIR}"))
- 
- unset(bindirlen)
--- 
-2.21.0
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0007-Modify-gobject-intrispection-support-to-work-with-OE.patch b/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0007-Modify-gobject-intrispection-support-to-work-with-OE.patch
deleted file mode 100644
index c00082a..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0007-Modify-gobject-intrispection-support-to-work-with-OE.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From d84f4fd68441e934b37be2a6917abad52c5d1bda Mon Sep 17 00:00:00 2001
-From: Piotr Tworek <tworaz@tworaz.net>
-Date: Fri, 16 Aug 2019 21:22:16 +0200
-Subject: [PATCH 7/7] Modify gobject-intrispection support to work with OE.
-
-1. Use tools provided by the recipe sysroot instread of host ones.
-2. Make sure all the required dirs make it into g-ir-scanner via
-   LDFLAGS.
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Piotr Tworek <tworaz@tworaz.net>
----
- cmake/modules/GObjectIntrospection.cmake | 12 ++++++++++--
- 1 file changed, 10 insertions(+), 2 deletions(-)
-
-diff --git a/cmake/modules/GObjectIntrospection.cmake b/cmake/modules/GObjectIntrospection.cmake
-index 5be5042..67c035a 100644
---- a/cmake/modules/GObjectIntrospection.cmake
-+++ b/cmake/modules/GObjectIntrospection.cmake
-@@ -20,6 +20,9 @@ if(ENABLE_INTROSPECTION)
- 	pkg_check_variable(G_IR_SCANNER gobject-introspection-1.0 g_ir_scanner)
- 	pkg_check_variable(G_IR_COMPILER gobject-introspection-1.0 g_ir_compiler)
- 
-+	string(CONCAT G_IR_SCANNER $ENV{PKG_CONFIG_SYSROOT_DIR} "${G_IR_SCANNER}")
-+	string(CONCAT G_IR_COMPILER $ENV{PKG_CONFIG_SYSROOT_DIR} "${G_IR_COMPILER}")
-+
- 	if(NOT G_IR_SCANNER)
- 		message(FATAL_ERROR "g-ir-scanner not provided by gobject-introspection-1.0, you can disable GObject introspection by -DENABLE_INTROSPECTION=OFF")
- 	endif(NOT G_IR_SCANNER)
-@@ -116,7 +119,7 @@ macro(gir_add_introspection gir)
- 		file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/${_gir_name}_files "${_gir_files}")
- 
- 		add_custom_command(
--			COMMAND ${CMAKE_COMMAND} -E env "CC='${CMAKE_C_COMPILER}'" LDFLAGS=
-+			COMMAND ${CMAKE_COMMAND} -E env "CC='${CMAKE_C_COMPILER}'" LDFLAGS=${INTROSPECTION_SCANNER_LDFLAGS}
- 				${INTROSPECTION_SCANNER_ENV}
- 				${G_IR_SCANNER}
- 				${INTROSPECTION_SCANNER_ARGS}
-@@ -186,6 +189,7 @@ macro(gir_add_introspection_simple gir_library pkg_export_prefix gir_library_ver
- 	unset(INTROSPECTION_SCANNER_ARGS)
- 	unset(INTROSPECTION_SCANNER_ENV)
- 	unset(INTROSPECTION_COMPILER_ARGS)
-+	unset(INTROSPECTION_SCANNER_LDFLAGS)
- 
- 	set(${gir_vars_prefix} ${gir_library})
- 	set(${gir_vars_prefix}_SCANNERFLAGS "--warn-all")
-@@ -223,12 +227,12 @@ macro(gir_add_introspection_simple gir_library pkg_export_prefix gir_library_ver
- 		--add-include-path=${CMAKE_CURRENT_SOURCE_DIR}
- 		--library-path=${CMAKE_BINARY_DIR}
- 		--library-path=${CMAKE_BINARY_DIR}/src
-+		--library-path=${CMAKE_BINARY_DIR}/src/private
- 		--library-path=${CMAKE_CURRENT_BINARY_DIR}
- 		${_gir_extra_libdirs}
- 		${_gir_identifies_prefixes}
- 		${_gir_deps}
- 		--add-include-path=${SHARE_INSTALL_PREFIX}/gir-1.0
--		--library-path=${LIB_INSTALL_DIR}
- 		${_extra_library_path}
- 		--pkg-export ${pkg_export_prefix}-${gir_library_version}
- 		--c-include=${c_include}
-@@ -279,6 +283,10 @@ macro(gir_add_introspection_simple gir_library pkg_export_prefix gir_library_ver
- 		)
- 	endif(UNIX)
- 
-+	_gir_list_prefix(_gir_scanner_ldflags ${gir_extra_libdirs_var} "-Wl,-rpath-link=")
-+	string(REPLACE ";" " " _gir_scanner_ldflags "${_gir_scanner_ldflags}")
-+	set(INTROSPECTION_SCANNER_LDFLAGS "${_gir_scanner_ldflags}")
-+
- 	set(INTROSPECTION_SCANNER_ENV
- 		${_loader_library_path_var}="${_extra_loader_library_path_native}"
- 	)
--- 
-2.21.0
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server_3.32.4.bb b/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server_3.32.4.bb
deleted file mode 100644
index 429dd53..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server_3.32.4.bb
+++ /dev/null
@@ -1,155 +0,0 @@
-SUMMARY = "Evolution database backend server"
-HOMEPAGE = "http://www.gnome.org/projects/evolution/"
-BUGTRACKER = "https://bugzilla.gnome.org/"
-
-LICENSE = "LGPLv2 & LGPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6a6e689d19255cf0557f3fe7d7068212 \
-                    file://src/camel/camel.h;endline=24;md5=342fc5e9357254bc30c24e43ae47d9a1 \
-                    file://src/libedataserver/e-data-server-util.h;endline=20;md5=8f21a9c80ea82a4fb80b5f959f672543 \
-                    file://src/calendar/libecal/e-cal.h;endline=24;md5=e699ec3866f73f129f7a4ffffdcfc196"
-
-DEPENDS = " \
-    intltool-native gperf-native glib-2.0-native \
-    glib-2.0 gtk+3 libgnome-keyring libgdata libcanberra icu \
-    dbus db virtual/libiconv zlib libsoup-2.4 libical nss libsecret \
-"
-
-inherit gnomebase cmake gtk-doc gettext gobject-introspection perlnative upstream-version-is-even vala
-
-SRC_URI += "file://0001-CMakeLists.txt-Remove-TRY_RUN-for-iconv.patch \
-            file://0002-CMakeLists.txt-remove-CHECK_C_SOURCE_RUNS-check.patch \
-            file://0003-contact-Replace-the-Novell-sample-contact-with-somet.patch \
-            file://0004-Add-native-suffix-to-exacutables-produced-and-run-du.patch \
-            file://0005-Use-LC_MESSAGES-for-address-localization-when-LC_ADD.patch \
-            file://0006-Dont-add-usr-lib-to-LDFLAGS-when-linking-libphonenum.patch \
-            file://0007-Modify-gobject-intrispection-support-to-work-with-OE.patch \
-            file://iconv-detect.h \
-           "
-SRC_URI[archive.md5sum] = "57820f3f88fc554e1a58665a52e12c05"
-SRC_URI[archive.sha256sum] = "83f67cb4b680e892b22b51bcde64c788b7ac63e92a99de401fb347e3794f4c7f"
-
-LKSTRFTIME = "HAVE_LKSTRFTIME=ON"
-LKSTRFTIME_libc-musl = "HAVE_LKSTRFTIME=OFF"
-
-EXTRA_OECMAKE = " \
-    -D${LKSTRFTIME} \
-    -DSYSCONF_INSTALL_DIR=${sysconfdir} \
-    -DLIB_SUFFIX=${@d.getVar('baselib').replace('lib', '')} \
-"
-
-PACKAGECONFIG ??= "${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'introspection', '', d)}"
-PACKAGECONFIG[openldap] = "-DWITH_OPENLDAP=ON,-DWITH_OPENLDAP=OFF,openldap"
-PACKAGECONFIG[oauth2] = "-DENABLE_OAUTH2=ON,-DENABLE_OAUTH2=OFF,json-glib webkitgtk"
-PACKAGECONFIG[mitkrb5] = "-DWITH_KRB5=ON,-DWITH_KRB5=OFF,krb5"
-PACKAGECONFIG[goa] = "-DENABLE_GOA=ON,-DENABLE_GOA=OFF,gnome-online-accounts"
-PACKAGECONFIG[weather] = "-DENABLE_WEATHER=ON,-DENABLE_WEATHER=OFF,libgweather"
-PACKAGECONFIG[phonenumber] = "-DWITH_PHONENUMBER=ON,-DWITH_PHONENUMBER=OFF,libphonenumber"
-PACKAGECONFIG[introspection] = "-DENABLE_INTROSPECTION=ON,-DENABLE_INTROSPECTION=OFF"
-PACKAGECONFIG[vala] = "-DENABLE_VALA_BINDINGS=ON -DVAPIGEN=${STAGING_BINDIR_NATIVE}/vapigen,-DENABLE_VALA_BINDINGS=OFF"
-
-# -ldb needs this on some platforms
-LDFLAGS += "-lpthread -lgmodule-2.0 -lgthread-2.0"
-
-do_configure_append () {
-    cp ${WORKDIR}/iconv-detect.h ${S}/src
-
-    # fix native perl shebang
-    sed -i 's:${STAGING_BINDIR_NATIVE}/perl-native:${bindir}:' ${B}/src/tools/addressbook-export/csv2vcard
-}
-
-do_compile_prepend() {
-    # CMake does not support building native binaries when cross compiling. As result
-    # it always cross compiles them for the target and then aborts when they fail to run.
-    # To work around this manually build required tools and patch cmake targets to use
-    # those native binaries we built here.
-    ${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS} -I${B} ${S}/src/camel/camel-gen-tables.c \
-        -o ${B}/src/camel/camel-gen-tables-native
-    ${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS} -I${B} $(pkg-config-native --cflags glib-2.0) \
-        ${S}/src/addressbook/libebook-contacts/gen-western-table.c \
-        -o ${B}/src/addressbook/libebook-contacts/gen-western-table-native \
-        $(pkg-config-native --libs glib-2.0)
-}
-
-
-PACKAGES =+ "libebook-contacts libebook-contacts-dev \
-             libcamel libcamel-dev libebook libebook-dev libecal libecal-dev \
-             libedata-book libedata-book-dev libedata-cal libedata-cal-dev \
-             libedataserver libedataserver-dev \
-             libedataserverui libedataserverui-dev"
-
-FILES_${PN} =+ "${systemd_user_unitdir} \
-                ${datadir}/dbus-1 \
-                ${datadir}/evolution-data-server-*/ui/"
-RDEPENDS_${PN} += "perl"
-
-FILES_${PN}-dev =+ "${libdir}/pkgconfig/evolution-data-server-*.pc"
-FILES_${PN}-dbg =+ "${libdir}/evolution-data-server*/camel-providers/.debug \
-                    ${libdir}/evolution-data-server*/calendar-backends/.debug \
-                    ${libdir}/evolution-data-server*/addressbook-backends/.debug \
-                    ${libdir}/evolution-data-server*/extensions/.debug/"
-
-RRECOMMENDS_${PN}-dev += "libecal-dev libebook-dev"
-
-FILES_libcamel = "${libdir}/libcamel-*.so.* \
-                  ${libdir}/libcamel-provider-*.so.* \
-                  ${libdir}/girepository-*/Camel-*.typelib \
-                  ${libdir}/evolution-data-server*/camel-providers/*.so \
-                  ${libdir}/evolution-data-server*/camel-providers/*.urls"
-FILES_libcamel-dev = "${libdir}/libcamel-*.so ${libdir}/libcamel-provider-*.so \
-                      ${libdir}/pkgconfig/camel*pc \
-                      ${includedir}/evolution-data-server*/camel \
-                      ${datadir}/vala/vapi/camel-* \
-                      ${datadir}/gir-*/Camel-*.gir"
-
-FILES_libebook = "${libdir}/libebook-*.so.* \
-                  ${libdir}/girepository-*/EBook-*.typelib"
-FILES_libebook-dev = "${libdir}/libebook-*.so \
-                      ${libdir}/pkgconfig/libebook-*.pc \
-                      ${datadir}/gir-*/EBook-*.gir \
-                      ${datadir}/vala/vapi/libebook-*.* \
-                      ${includedir}/evolution-data-server*/libebook/*.h"
-RRECOMMENDS_libebook = "libedata-book"
-
-FILES_libebook-contacts = "${libdir}/libebook-contacts-*.so.* \
-                           ${libdir}/girepository-*/EBookContacts-*.typelib"
-FILES_libebook-contacts-dev = "${libdir}/libebook-contacts-*.so \
-                               ${libdir}/pkgconfig/libebook-contacts-*.pc \
-                               ${datadir}/gir-*/EBookContacts-*.gir \
-                               ${datadir}/vala/vapi/libebook-contacts-* \
-                               ${includedir}/evolution-data-server*/libebook-contacts/*.h"
-
-FILES_libecal = "${libdir}/libecal-*.so.*"
-FILES_libecal-dev = "${libdir}/libecal-*.so ${libdir}/pkgconfig/libecal-*.pc \
-                     ${includedir}/evolution-data-server*/libecal/*.h \
-                     ${includedir}/evolution-data-server*/libical/*.h"
-RRECOMMENDS_libecal = "libedata-cal tzdata"
-
-FILES_libedata-book = "${libexecdir}/e-addressbook-factory \
-                       ${datadir}/dbus-1/services/*.AddressBook.service \
-                       ${libdir}/libedata-book-*.so.* \
-                       ${libdir}/evolution-data-server-*/extensions/libebook*.so"
-FILES_libedata-book-dev = "${libdir}/libedata-book-*.so \
-                           ${libdir}/pkgconfig/libedata-book-*.pc \
-                           ${includedir}/evolution-data-server-*/libedata-book"
-
-FILES_libedata-cal = "${libexecdir}/e-calendar-factory \
-                      ${datadir}/dbus-1/services/*.Calendar.service \
-                      ${libdir}/libedata-cal-*.so.* \
-                      ${libdir}/evolution-data-server-*/extensions/libecal*.so"
-FILES_libedata-cal-dev = "${libdir}/libedata-cal-*.so \
-                          ${libdir}/pkgconfig/libedata-cal-*.pc \
-                          ${includedir}/evolution-data-server-*/libedata-cal"
-
-FILES_libedataserver = "${libdir}/libedataserver-*.so.* \
-                        ${libdir}/girepository-*/EDataServer-*.typelib"
-FILES_libedataserver-dev = "${libdir}/libedataserver-*.so \
-                            ${libdir}/pkgconfig/libedataserver-*.pc \
-                            ${datadir}/vala/vapi/libedataserver-* \
-                            ${includedir}/evolution-data-server-*/libedataserver/*.h"
-
-FILES_libedataserverui = "${libdir}/libedataserverui-*.so.*"
-FILES_libedataserverui-dev = "${libdir}/libedataserverui-*.so \
-                              ${libdir}/pkgconfig/libedataserverui-*.pc \
-                              ${datadir}/gir-*/EDataServerUI-*.gir \
-                              ${datadir}/vala/vapi/libedataserverui-* \
-                              ${includedir}/evolution-data-server-*/libedataserverui/*.h"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-Add-format-attribute-to-_synctex_malloc.patch b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-Add-format-attribute-to-_synctex_malloc.patch
index de739c5..32ca073 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-Add-format-attribute-to-_synctex_malloc.patch
+++ b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-Add-format-attribute-to-_synctex_malloc.patch
@@ -11,17 +11,17 @@
  1 file changed, 1 insertion(+)
 
 diff --git a/cut-n-paste/synctex/synctex_parser_utils.c b/cut-n-paste/synctex/synctex_parser_utils.c
-index f8a9f6f..9459b2d 100644
+index 08053f0..0519b38 100644
 --- a/cut-n-paste/synctex/synctex_parser_utils.c
 +++ b/cut-n-paste/synctex/synctex_parser_utils.c
-@@ -78,6 +78,7 @@ void *_synctex_malloc(size_t size) {
- 	return (void *)ptr;
+@@ -136,6 +136,7 @@ int _synctex_log(int level, const char * prompt, const char * reason,va_list arg
+ 	return result;
  }
  
 +__attribute__((__format__ (__printf__, 1, 0)))
  int _synctex_error(const char * reason,...) {
- 	va_list arg;
- 	int result;
+     va_list arg;
+     int result;
 -- 
-2.12.2
+2.20.1
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-add-a-formatting-attribute-check.patch b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-add-a-formatting-attribute-check.patch
deleted file mode 100644
index e87da90..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-add-a-formatting-attribute-check.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From ef170dda7fbab53682c9bc287dec93fa86130bc9 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 9 Sep 2018 21:49:59 -0700
-Subject: [PATCH] add a formatting attribute check
-
-Tell Clang that parameter is a printf style format using the
-attribute flag
-
-This helps in avoiding below warnings seen with clang
-
-unarr.c:106:22: error: format string is not a string literal
-[-Werror,-Wformat-nonliteral]
-|     vfprintf(stderr, msg, args);
-|                      ^~~
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- cut-n-paste/unarr/common/unarr.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/cut-n-paste/unarr/common/unarr.c b/cut-n-paste/unarr/common/unarr.c
-index 97ec92a..9e6e3ad 100644
---- a/cut-n-paste/unarr/common/unarr.c
-+++ b/cut-n-paste/unarr/common/unarr.c
-@@ -92,7 +92,7 @@ size_t ar_get_global_comment(ar_archive *ar, void *buffer, size_t count)
-     return ar->get_comment(ar, buffer, count);
- }
- 
--void ar_log(const char *prefix, const char *file, int line, const char *msg, ...)
-+void __attribute__((__format__ (__printf__, 4, 0))) ar_log(const char *prefix, const char *file, int line, const char *msg, ...)
- {
-     va_list args;
-     va_start(args, msg);
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-help-remove-YELP-macro.patch b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-help-remove-YELP-macro.patch
deleted file mode 100644
index 592f466..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-help-remove-YELP-macro.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 40921037d8e7205a3889d529fb4e06f79e1e88b0 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Fri, 19 Feb 2016 16:52:18 +0200
-Subject: [PATCH] help: remove YELP macro
-
-Upstream-Status: Inappropriate [embedded-specific]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- help/Makefile.am | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/help/Makefile.am b/help/Makefile.am
-index 7835810..37c88ce 100644
---- a/help/Makefile.am
-+++ b/help/Makefile.am
-@@ -1,5 +1,3 @@
--@YELP_HELP_RULES@
--
- SUBDIRS = reference
- 
- HELP_ID = evince
--- 
-2.7.0
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-libview-Remove-EvDocumentModel-get-type-function-dec.patch b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-libview-Remove-EvDocumentModel-get-type-function-dec.patch
deleted file mode 100644
index dcc4a4e..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-libview-Remove-EvDocumentModel-get-type-function-dec.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 0cdce687d3edfa5ac0fd19539ba1815d039026d5 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?I=C3=B1igo=20Mart=C3=ADnez?= <inigomartinez@gmail.com>
-Date: Fri, 7 Sep 2018 22:34:29 +0200
-Subject: [PATCH] libview: Remove EvDocumentModel get type function declaration
-
-The EvDocumentModel class declares the `ev_document_model_get_type`
-function as part of the `GObject` boilerplate code.
-
-However, this declaration is not necessary and also causes a warning
-when introspection data file, `EvinceView-3.0.gir`, is generated.
-
-Upstream-Status: Applied [1]
-
-
----
- libview/ev-document-model.h | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/libview/ev-document-model.h b/libview/ev-document-model.h
-index 784e27d6..6a99e43a 100644
---- a/libview/ev-document-model.h
-+++ b/libview/ev-document-model.h
-@@ -54,7 +54,6 @@ typedef enum {
- 	EV_PAGE_LAYOUT_AUTOMATIC
- } EvPageLayout;
- 
--GType            ev_document_model_get_type          (void) G_GNUC_CONST;
- EvDocumentModel *ev_document_model_new               (void);
- EvDocumentModel *ev_document_model_new_with_document (EvDocument      *document);
- 
--- 
-2.20.1
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0002-add-a-formatting-attribute-check.patch b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0002-add-a-formatting-attribute-check.patch
new file mode 100644
index 0000000..c374fc9
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0002-add-a-formatting-attribute-check.patch
@@ -0,0 +1,122 @@
+From ef170dda7fbab53682c9bc287dec93fa86130bc9 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 9 Sep 2018 21:49:59 -0700
+Subject: [PATCH] add a formatting attribute check
+
+Tell Clang that parameter is a printf style format using the
+attribute flag
+
+This helps in avoiding below warnings seen with clang
+
+unarr.c:106:22: error: format string is not a string literal
+[-Werror,-Wformat-nonliteral]
+|     vfprintf(stderr, msg, args);
+|                      ^~~
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ cut-n-paste/unarr/common/unarr.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/cut-n-paste/unarr/common/unarr.c
++++ b/cut-n-paste/unarr/common/unarr.c
+@@ -92,7 +92,7 @@ size_t ar_get_global_comment(ar_archive
+     return ar->get_comment(ar, buffer, count);
+ }
+ 
+-void ar_log(const char *prefix, const char *file, int line, const char *msg, ...)
++void __attribute__((__format__ (__printf__, 4, 5))) ar_log(const char *prefix, const char *file, int line, const char *msg, ...)
+ {
+     va_list args;
+     va_start(args, msg);
+--- a/cut-n-paste/synctex/synctex_parser_utils.c
++++ b/cut-n-paste/synctex/synctex_parser_utils.c
+@@ -87,11 +87,11 @@ void _synctex_free(void * ptr) {
+ #   include <syslog.h>
+ #endif
+ 
+-int _synctex_error(const char * reason, ...) __attribute__((__format__ (__printf__, 1, 2)));
+-int _synctex_log(int level, const char * prompt, const char * reason, va_list arg) __attribute__((__format__ (__printf__, 3, 0)));
+-
+-int _synctex_log(int level, const char * prompt, const char * reason,va_list arg) {
++static int _synctex_log(int level, const char * prompt, const char * reason, ...) SYNCTEX_PRINTF_FORMAT(3, 0);
++static int _synctex_log(int level, const char * prompt, const char * reason, ...) {
++	va_list arg;
+ 	int result;
++	va_start(arg, reason);
+ #	ifdef SYNCTEX_RECENT_WINDOWS
+ 	{/*	This code is contributed by William Blum.
+         As it does not work on some older computers,
+@@ -133,10 +133,10 @@ int _synctex_log(int level, const char *
+     result += vfprintf(where, reason, arg);
+     result += fprintf(where,"\n");
+ #   endif
++    va_end(arg);
+ 	return result;
+ }
+ 
+-__attribute__((__format__ (__printf__, 1, 0)))
+ int _synctex_error(const char * reason,...) {
+     va_list arg;
+     int result;
+@@ -355,6 +355,7 @@ char * _synctex_merge_strings(const char
+ 		size_t len = strlen(temp);
+ 		if(UINT_MAX-len<size) {
+ 			_synctex_error("!  _synctex_merge_strings: Capacity exceeded.");
++			va_end(arg);
+ 			return NULL;
+ 		}
+ 		size+=len;
+@@ -374,6 +375,7 @@ char * _synctex_merge_strings(const char
+ 					if(dest != strncpy(dest,temp,size)) {
+ 						_synctex_error("!  _synctex_merge_strings: Copy problem");
+ 						free(result);
++						va_end(arg);
+ 						result = NULL;
+ 						return NULL;
+ 					}
+--- a/cut-n-paste/synctex/synctex_parser.c
++++ b/cut-n-paste/synctex/synctex_parser.c
+@@ -8411,6 +8411,7 @@ struct synctex_updater_t {
+     int length;             /*  the number of chars appended */
+ };
+ 
++static int _synctex_updater_print(synctex_updater_p updater, const char * format, ...) SYNCTEX_PRINTF_FORMAT(2, 3);
+ static int _synctex_updater_print(synctex_updater_p updater, const char * format, ...) {
+     int result = 0;
+     if (updater) {
+@@ -8447,6 +8448,7 @@ static int vasprintf(char **ret,
+ /**
+  *  gzvprintf is not available until OSX 10.10
+  */
++static int _synctex_updater_print_gz(synctex_updater_p updater, const char * format, ...) SYNCTEX_PRINTF_FORMAT(2, 3);
+ static int _synctex_updater_print_gz(synctex_updater_p updater, const char * format, ...) {
+     int result = 0;
+     if (updater) {
+--- a/cut-n-paste/synctex/synctex_parser_utils.h
++++ b/cut-n-paste/synctex/synctex_parser_utils.h
+@@ -85,7 +85,11 @@ extern "C" {
+ #	else
+ #		define SYNCTEX_ARE_PATH_CHARACTERS_EQUAL(left,right) (toupper(left) != toupper(right))
+ #	endif
+-    
++#	ifdef __GNUC__
++#		define SYNCTEX_PRINTF_FORMAT(si, ftc) __attribute__ ((format (printf, si, ftc)))
++#	else
++#		define SYNCTEX_PRINTF_FORMAT(si, ftc)
++#	endif    
+ /*  This custom malloc functions initializes to 0 the newly allocated memory.
+  *  There is no bzero function on windows. */
+ void *_synctex_malloc(size_t size);
+@@ -97,8 +101,8 @@ void _synctex_free(void * ptr);
+ /*  This is used to log some informational message to the standard error stream.
+  *  On Windows, the stderr stream is not exposed and another method is used.
+  *	The return value is the number of characters printed.	*/
+-    int _synctex_error(const char * reason,...);
+-    int _synctex_debug(const char * reason,...);
++    int _synctex_error(const char * reason,...) SYNCTEX_PRINTF_FORMAT(1, 2);
++    int _synctex_debug(const char * reason,...) SYNCTEX_PRINTF_FORMAT(1, 2);
+ 
+ /*  strip the last extension of the given string, this string is modified!
+  *  This function depends on the OS because the path separator may differ.
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_3.28.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_3.28.2.bb
deleted file mode 100644
index f45180e..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_3.28.2.bb
+++ /dev/null
@@ -1,65 +0,0 @@
-SUMMARY = "Evince is a document viewer for document formats like pdf, ps, djvu"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=96f2f8d5ee576a2163977938ea36fa7b"
-SECTION = "x11/office"
-DEPENDS = "gtk+3 libsecret ${@bb.utils.contains('DISTRO_FEATURES','x11','gnome-desktop3','',d)} poppler gstreamer1.0-plugins-base orc adwaita-icon-theme intltool-native gnome-common-native"
-
-inherit gnomebase pkgconfig gtk-icon-cache gsettings gobject-introspection distro_features_check systemd
-
-SRC_URI = " \
-    ${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \
-    file://0001-help-remove-YELP-macro.patch \
-    file://0001-Add-format-attribute-to-_synctex_malloc.patch \
-    file://0001-add-a-formatting-attribute-check.patch \
-    file://0001-libview-Remove-EvDocumentModel-get-type-function-dec.patch \
-"
-SRC_URI[archive.md5sum] = "66aa1766eaaa37536e48def11a0e67a3"
-SRC_URI[archive.sha256sum] = "0955d22d85c9f6d322b6cbb464f1cc4c352db619017ec95dad4cc5c3440f73e1"
-
-EXTRA_OECONF = "--enable-thumbnailer"
-
-do_compile_prepend() {
-    export GIR_EXTRA_LIBS_PATH="${B}/libdocument/.libs"
-}
-
-
-do_install_append() {
-    install -d ${D}${datadir}/pixmaps
-    install -m 0755 ${S}/data/icons/48x48/apps/evince.png ${D}${datadir}/pixmaps/
-    if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}
-    then
-        install -d ${D}${systemd_unitdir}/system
-        mv ${D}${systemd_user_unitdir}/evince.service ${D}${systemd_system_unitdir}/evince.service
-    else
-        rm -rf ${D}${libdir}/systemd/user/evince.service
-    fi
-    rmdir --ignore-fail-on-non-empty ${D}${systemd_user_unitdir}
-    rmdir --ignore-fail-on-non-empty ${D}${nonarch_libdir}/systemd
-    rmdir --ignore-fail-on-non-empty ${D}${nonarch_libdir}
-}
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[nautilus] = "--enable-nautilus,--disable-nautilus,nautilus"
-PACKAGECONFIG[browser-plugin] = "--enable-browser-plugin,--disable-browser-plugin,"
-
-SYSTEMD_SERVICE_${PN} = "evince.service"
-
-RDEPENDS_${PN} += "glib-2.0-utils"
-RRECOMMMENDS_${PN} = "adwaita-icon-theme"
-
-PACKAGES =+ "${PN}-nautilus-extension"
-PACKAGES =+ "${PN}-browser-plugin"
-
-FILES_${PN} += "${datadir}/dbus-1 \
-                ${datadir}/metainfo \
-                ${datadir}/thumbnailers \
-                ${systemd_unitdir}/systemd/user/evince.service \
-               "
-FILES_${PN}-dbg += "${libdir}/*/*/.debug \
-                    ${libdir}/*/*/*/.debug"
-FILES_${PN}-dev += "${libdir}/nautilus/extensions-2.0/*.la \
-                    ${libdir}/evince/*/backends/*.la"
-FILES_${PN}-staticdev += "${libdir}/nautilus/extensions-2.0/*.a \
-                          ${libdir}/evince/*/backends/*.a"
-FILES_${PN}-nautilus-extension = "${libdir}/nautilus/*/*so"
-FILES_${PN}-browser-plugin = "${libdir}/mozilla/*/*so"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_3.34.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_3.34.1.bb
new file mode 100644
index 0000000..6f0392d
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_3.34.1.bb
@@ -0,0 +1,52 @@
+SUMMARY = "Evince is a document viewer for document formats like pdf, ps, djvu"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=96f2f8d5ee576a2163977938ea36fa7b"
+SECTION = "x11/office"
+DEPENDS = " \
+    gnome-common-native \
+    yelp-tools-native \
+    appstream-glib \
+    gtk+3 \
+    gspell \
+    libsecret \
+    poppler \
+    gstreamer1.0-plugins-base \
+    orc \
+    adwaita-icon-theme \
+    ${@bb.utils.contains('DISTRO_FEATURES','x11','gnome-desktop3','',d)} \
+"
+
+inherit gnomebase itstool gnome-help pkgconfig gsettings gobject-introspection upstream-version-is-even gettext distro_features_check
+
+SRC_URI[archive.md5sum] = "77b38b625008f5940e9bd4b3d38e8cf8"
+SRC_URI[archive.sha256sum] = "85e407cde396147b249120d816c7715fb6df191ca561cf65ff3554a5d67626df"
+SRC_URI += " \
+    file://0001-Add-format-attribute-to-_synctex_malloc.patch \
+    file://0002-add-a-formatting-attribute-check.patch \
+"
+
+EXTRA_OECONF = " \
+    --enable-thumbnailer \
+    --without-systemduserunitdir \
+"
+
+do_compile_prepend() {
+    export GIR_EXTRA_LIBS_PATH="${B}/libdocument/.libs"
+}
+
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[nautilus] = "--enable-nautilus,--disable-nautilus,nautilus"
+PACKAGECONFIG[browser-plugin] = "--enable-browser-plugin,--disable-browser-plugin,"
+
+RDEPENDS_${PN} += "glib-2.0-utils"
+RRECOMMMENDS_${PN} = "adwaita-icon-theme"
+
+PACKAGES =+ "${PN}-nautilus-extension"
+PACKAGES =+ "${PN}-browser-plugin"
+
+FILES_${PN} += "${datadir}/dbus-1 \
+                ${datadir}/metainfo \
+                ${datadir}/thumbnailers \
+"
+FILES_${PN}-nautilus-extension = "${libdir}/nautilus/*/*so"
+FILES_${PN}-browser-plugin = "${libdir}/mozilla/*/*so"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server-native.bb b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server-native.bb
new file mode 100644
index 0000000..681a61c
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server-native.bb
@@ -0,0 +1,23 @@
+require ${BPN}.inc
+
+inherit native
+
+DEPENDS = "glib-2.0-native"
+
+# build native helpers
+do_compile() {
+    cd ${S}/src/camel
+    sed -i 's:#include "evolution-data-server-config.h"::g' camel-gen-tables.c
+    ${CC} -o ${B}/camel-gen-tables camel-gen-tables.c ${CFLAGS} ${LDFLAGS}
+
+    LDFLAGS_glib=`pkg-config glib-2.0 --libs`
+    CFLAGS_glib=`pkg-config glib-2.0 --cflags`
+    cd ${S}/src/addressbook/libebook-contacts
+    sed -i 's:#include "evolution-data-server-config.h"::g' gen-western-table.c
+    ${CC} -o ${B}/gen-western-table gen-western-table.c ${CFLAGS} ${CFLAGS_glib} ${LDFLAGS} ${LDFLAGS_glib}
+}
+
+do_install() {
+    install -d ${D}${bindir}
+    install -m 755 ${B}/* ${D}${bindir}
+}
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb
new file mode 100644
index 0000000..82160b1
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb
@@ -0,0 +1,70 @@
+require ${BPN}.inc
+
+DEPENDS = " \
+    ${BPN}-native intltool-native gperf-native \
+    glib-2.0 gtk+3 libgdata \
+    dbus db virtual/libiconv zlib libsoup-2.4 libical nss libsecret \
+"
+
+inherit gsettings gobject-introspection distro_features_check cmake gtk-doc gettext perlnative pythonnative
+
+REQUIRED_DISTRO_FEATURES = "x11"
+
+SRC_URI += " \
+    file://0001-CMakeLists.txt-Remove-TRY_RUN-for-iconv.patch \
+    file://0002-CMakeLists.txt-remove-CHECK_C_SOURCE_RUNS-check.patch \
+    file://0003-contact-Replace-the-Novell-sample-contact-with-somet.patch \
+    file://0004-call-native-helpers.patch \
+    file://iconv-detect.h \
+"
+
+LKSTRFTIME = "HAVE_LKSTRFTIME=ON"
+LKSTRFTIME_libc-musl = "HAVE_LKSTRFTIME=OFF"
+
+# For arm qemu-arm runs at 100% CPU load and never returns - so disable introspection for now
+GI_DATA_ENABLED="False"
+
+EXTRA_OECMAKE = " \
+    -DSYSCONF_INSTALL_DIR=${sysconfdir} \
+    -DWITH_KRB5=OFF \
+    -DENABLE_GOA=OFF \
+    -DENABLE_UOA=OFF \
+    -DENABLE_GOOGLE_AUTH=OFF \
+    -DENABLE_WEATHER=OFF \
+    -DENABLE_INTROSPECTION=${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'ON', 'OFF', d)} \
+    -D${LKSTRFTIME} \
+    -DLIB_SUFFIX=${@d.getVar('baselib').replace('lib', '')} \
+"
+
+PACKAGECONFIG[canberra] = "-DENABLE_CANBERRA=ON,-DENABLE_CANBERRA=OFF,libcanberra"
+PACKAGECONFIG[oauth]    = "-DENABLE_OAUTH2=ON,-DENABLE_OAUTH2=OFF,webkitgtk json-glib"
+
+# BROKEN: due missing pkg-config in openldap eds' cmake finds host-libs when
+# searching for openldap-libs
+PACKAGECONFIG[openldap] = "-DWITH_OPENLDAP=ON,-DWITH_OPENLDAP=OFF,openldap"
+
+# -ldb needs this on some platforms
+LDFLAGS += "-lpthread -lgmodule-2.0 -lgthread-2.0"
+
+do_configure_append () {
+    cp ${WORKDIR}/iconv-detect.h ${S}/src
+
+    # fix native perl shebang
+    sed -i 's:${STAGING_BINDIR_NATIVE}/perl-native:${bindir}:' ${B}/src/tools/addressbook-export/csv2vcard
+
+    # fix abs path for g-ir-scanner-wrapper
+    sed  -i ${B}/build.ninja \
+        -e 's: ${bindir}/g-ir-scanner-wrapper: ${STAGING_BINDIR}/g-ir-scanner-wrapper:g'
+}
+
+do_compile_prepend() {
+    export GIR_EXTRA_LIBS_PATH="${B}/camel/.libs:${B}/libedataserver/.libs"
+}
+
+FILES_${PN} =+ " \
+    ${datadir}/dbus-1 \
+    ${datadir}/evolution-data-server-*/ui/ \
+    ${systemd_user_unitdir} \
+"
+
+RDEPENDS_${PN} += "perl"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.inc b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.inc
new file mode 100644
index 0000000..0893f8e
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.inc
@@ -0,0 +1,15 @@
+SUMMARY = "Evolution database backend server"
+HOMEPAGE = "http://www.gnome.org/projects/evolution/"
+BUGTRACKER = "https://bugzilla.gnome.org/"
+
+LICENSE = "LGPLv2 & LGPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6a6e689d19255cf0557f3fe7d7068212 \
+                    file://src/camel/camel.h;endline=24;md5=342fc5e9357254bc30c24e43ae47d9a1 \
+                    file://src/libedataserver/e-data-server-util.h;endline=20;md5=8f21a9c80ea82a4fb80b5f959f672543"
+
+inherit gnomebase upstream-version-is-even
+
+SRC_URI[archive.md5sum] = "d1701875bbac80d6d62e9acfc6c43bea"
+SRC_URI[archive.sha256sum] = "6ff56ba04cb639e627fe9d6e0ada106a10cadd68a0d53b8ec72b4e285df53abe"
+PV = "3.34.1"
+
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0001-CMakeLists.txt-Remove-TRY_RUN-for-iconv.patch b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0001-CMakeLists.txt-Remove-TRY_RUN-for-iconv.patch
similarity index 60%
rename from meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0001-CMakeLists.txt-Remove-TRY_RUN-for-iconv.patch
rename to meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0001-CMakeLists.txt-Remove-TRY_RUN-for-iconv.patch
index cc9dca4..e8c6d6a 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0001-CMakeLists.txt-Remove-TRY_RUN-for-iconv.patch
+++ b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0001-CMakeLists.txt-Remove-TRY_RUN-for-iconv.patch
@@ -1,7 +1,7 @@
-From e32075119803f9fffbba01a31083e416cb213011 Mon Sep 17 00:00:00 2001
+From 131b88a81aba3d72d566bc8a9d968941a98e0007 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-Date: Tue, 19 Dec 2017 16:37:20 +0100
-Subject: [PATCH 1/7] CMakeLists.txt: Remove TRY_RUN for iconv
+Date: Sun, 31 Mar 2019 18:11:55 +0200
+Subject: [PATCH] CMakeLists.txt: Remove TRY_RUN for iconv
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
@@ -13,22 +13,24 @@
 
 Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
 ---
- CMakeLists.txt | 6 ------
- 1 file changed, 6 deletions(-)
+ CMakeLists.txt | 11 -----------
+ 1 file changed, 11 deletions(-)
 
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index f9d72db..ed99904 100644
+index 1672daf..0b3e4e0 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -526,15 +526,9 @@ endif(NOT HAVE_ICONV)
+@@ -524,17 +524,6 @@ if(NOT HAVE_ICONV)
+ 	message(FATAL_ERROR "You need to install a working iconv implementation, such as ftp://ftp.gnu.org/pub/gnu/libiconv")
+ endif(NOT HAVE_ICONV)
  
- set(CMAKE_REQUIRED_LIBRARIES ${ICONV_LIBS})
- file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/" _binary_dir_with_separator)
+-set(CMAKE_REQUIRED_LIBRARIES ${ICONV_LIBS})
+-file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/" _binary_dir_with_separator)
 -CHECK_C_SOURCE_RUNS("#define ICONV_DETECT_BUILD_DIR \"${_binary_dir_with_separator}\"
 -		     #include \"${CMAKE_SOURCE_DIR}/iconv-detect.c\"" _correct_iconv)
- unset(_binary_dir_with_separator)
- unset(CMAKE_REQUIRED_LIBRARIES)
- 
+-unset(_binary_dir_with_separator)
+-unset(CMAKE_REQUIRED_LIBRARIES)
+-
 -if(NOT _correct_iconv)
 -	message(FATAL_ERROR "You need to install a working iconv implementation, such as ftp://ftp.gnu.org/pub/gnu/libiconv")
 -endif(NOT _correct_iconv)
@@ -37,5 +39,5 @@
  # Backtraces for debugging
  # ******************************
 -- 
-2.21.0
+2.20.1
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0002-CMakeLists.txt-remove-CHECK_C_SOURCE_RUNS-check.patch b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0002-CMakeLists.txt-remove-CHECK_C_SOURCE_RUNS-check.patch
similarity index 100%
rename from meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0002-CMakeLists.txt-remove-CHECK_C_SOURCE_RUNS-check.patch
rename to meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0002-CMakeLists.txt-remove-CHECK_C_SOURCE_RUNS-check.patch
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0003-contact-Replace-the-Novell-sample-contact-with-somet.patch b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0003-contact-Replace-the-Novell-sample-contact-with-somet.patch
similarity index 100%
rename from meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/0003-contact-Replace-the-Novell-sample-contact-with-somet.patch
rename to meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0003-contact-Replace-the-Novell-sample-contact-with-somet.patch
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0004-call-native-helpers.patch b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0004-call-native-helpers.patch
new file mode 100644
index 0000000..e320f63
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0004-call-native-helpers.patch
@@ -0,0 +1,45 @@
+From 9c375e3fcf8ff778a5010a07a7da4b6a58adec7c Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Sun, 31 Mar 2019 19:11:31 +0200
+Subject: [PATCH] call native helpers
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Upstream-Status: Inappropriate[oe-specific]
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+---
+ src/addressbook/libebook-contacts/CMakeLists.txt | 2 +-
+ src/camel/CMakeLists.txt                         | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/addressbook/libebook-contacts/CMakeLists.txt b/src/addressbook/libebook-contacts/CMakeLists.txt
+index e9e3259..e749d1b 100644
+--- a/src/addressbook/libebook-contacts/CMakeLists.txt
++++ b/src/addressbook/libebook-contacts/CMakeLists.txt
+@@ -25,7 +25,7 @@ target_link_libraries(gen-western-table
+ 
+ add_custom_command(
+ 	OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/e-name-western-tables.h
+-	COMMAND ${CMAKE_CURRENT_BINARY_DIR}/gen-western-table "${CMAKE_CURRENT_SOURCE_DIR}/e-name-western-tables.h.in" >${CMAKE_CURRENT_BINARY_DIR}/e-name-western-tables.h
++	COMMAND gen-western-table "${CMAKE_CURRENT_SOURCE_DIR}/e-name-western-tables.h.in" >${CMAKE_CURRENT_BINARY_DIR}/e-name-western-tables.h
+ 	DEPENDS gen-western-table e-name-western-tables.h.in
+ )
+ 
+diff --git a/src/camel/CMakeLists.txt b/src/camel/CMakeLists.txt
+index be626a8..14ac8b8 100644
+--- a/src/camel/CMakeLists.txt
++++ b/src/camel/CMakeLists.txt
+@@ -10,7 +10,7 @@ target_include_directories(camel-gen-tables PUBLIC
+ 
+ add_custom_command(
+ 	OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/camel-mime-tables.c
+-	COMMAND ${CMAKE_CURRENT_BINARY_DIR}/camel-gen-tables >${CMAKE_CURRENT_BINARY_DIR}/camel-mime-tables.c
++	COMMAND camel-gen-tables >${CMAKE_CURRENT_BINARY_DIR}/camel-mime-tables.c
+ 	DEPENDS camel-gen-tables
+ )
+ 
+-- 
+2.20.1
+
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/iconv-detect.h b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/iconv-detect.h
similarity index 100%
rename from meta-openembedded/meta-gnome/recipes-gnome/eds/evolution-data-server/iconv-detect.h
rename to meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/iconv-detect.h
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/file-roller/file-roller_3.32.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/file-roller/file-roller_3.32.2.bb
new file mode 100644
index 0000000..8350189
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/file-roller/file-roller_3.32.2.bb
@@ -0,0 +1,26 @@
+SUMMARY = "An archive manager utility for the  GNOME Environment"
+LICENSE="GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+
+GNOMEBASEBUILDCLASS = "meson"
+
+DEPENDS = " \
+    glib-2.0-native \
+    gtk+3 \
+    nautilus \
+    libarchive \
+    libnotify \
+"
+
+inherit gnomebase itstool gnome-help gettext upstream-version-is-even
+
+SRC_URI[archive.md5sum] = "e79715bb2400df83c0f67cc0cce2b655"
+SRC_URI[archive.sha256sum] = "c60a79e0baf74cb1c09a1c8f5ffe0d6e311227ca14ecc5b1156beb3715341a71"
+
+PACKAGECONFIG[nautilus] = "-Dnautilus-actions=true,-Dnautilus-actions=false,nautilus"
+
+FILES_${PN} += " \
+    ${datadir}/dbus-1 \
+    ${datadir}/metainfo \
+    ${libdir}/nautilus \
+"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gedit/files/0001-Remove-help-directory-from-build.patch b/meta-openembedded/meta-gnome/recipes-gnome/gedit/files/0001-Remove-help-directory-from-build.patch
deleted file mode 100644
index 4ad57ef..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gedit/files/0001-Remove-help-directory-from-build.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 1d2e6165e3154e27ecde329a40c05f0880afb9e0 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Tue, 17 May 2016 14:14:03 +0300
-Subject: [PATCH] Remove help directory from build
-
-It hardcodes the use of xml2po utility, which is provided by obsolete gnome-doc-utils
-
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- Makefile.am | 3 ---
- 1 file changed, 3 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index e57b203..a88152d 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -3,9 +3,6 @@ ACLOCAL_AMFLAGS = -I m4
- 
- SUBDIRS = gedit pixmaps po data plugin-loaders plugins docs tests win32 osx
- 
--if !OS_OSX
--SUBDIRS += help
--endif
- 
- distuninstallcheck_listfiles = find . -type f -print | grep -v scrollkeeper
- 
--- 
-2.8.1
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gedit/files/0001-gedit-utils-qualify-handle_builder_error-with-format.patch b/meta-openembedded/meta-gnome/recipes-gnome/gedit/files/0001-gedit-utils-qualify-handle_builder_error-with-format.patch
deleted file mode 100644
index 4885c45..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gedit/files/0001-gedit-utils-qualify-handle_builder_error-with-format.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 623ffac1f6e7725041b386e0f2933fe36809b5a9 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 26 Aug 2017 09:04:30 -0700
-Subject: [PATCH] gedit-utils: qualify handle_builder_error() with format
- string parameters
-
-gedit-utils.c:1063:32: error: format string is not a string literal [-Werror,-Wformat-nonliteral]
-        msg_plain = g_strdup_vprintf (message, args);
-                                      ^~~~~~~
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- gedit/gedit-utils.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/gedit/gedit-utils.c b/gedit/gedit-utils.c
-index 41a5afd..c800828 100644
---- a/gedit/gedit-utils.c
-+++ b/gedit/gedit-utils.c
-@@ -1051,7 +1051,7 @@ gedit_utils_is_valid_uri (const gchar *uri)
- 	return TRUE;
- }
- 
--static GtkWidget *
-+static G_GNUC_PRINTF(1, 2) GtkWidget *
- handle_builder_error (const gchar *message, ...)
- {
- 	GtkWidget *label;
--- 
-2.14.1
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gedit/files/0001-tests-document-saver.c-Define-ACCESSPERMS-if-not-def.patch b/meta-openembedded/meta-gnome/recipes-gnome/gedit/files/0001-tests-document-saver.c-Define-ACCESSPERMS-if-not-def.patch
deleted file mode 100644
index 11afe75..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gedit/files/0001-tests-document-saver.c-Define-ACCESSPERMS-if-not-def.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From ee43bcc3c8d69fe56a64c3487e2d3c780ea5d25e Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 13 Jul 2017 06:53:35 -0700
-Subject: [PATCH] tests/document-saver.c: Define ACCESSPERMS if not defined
- already
-
-Helps compile with musl
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- tests/document-saver.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/tests/document-saver.c b/tests/document-saver.c
-index 9f44d5a..811ade6 100644
---- a/tests/document-saver.c
-+++ b/tests/document-saver.c
-@@ -41,6 +41,10 @@
- #define UNOWNED_GROUP_LOCAL_URI "/tmp/gedit-document-saver-unowned-group.txt"
- #define UNOWNED_GROUP_REMOTE_URI "sftp://localhost/tmp/gedit-document-saver-unowned-group.txt"
- 
-+#if !defined(ACCESSPERMS)
-+#define ACCESSPERMS (S_IRWXU|S_IRWXG|S_IRWXO) /* 0777 */
-+#endif
-+
- static gboolean test_completed;
- static gboolean mount_completed;
- static gboolean mount_success;
--- 
-2.13.2
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gedit/files/0001-workaround-void-pointer-arithmetic.patch b/meta-openembedded/meta-gnome/recipes-gnome/gedit/files/0001-workaround-void-pointer-arithmetic.patch
deleted file mode 100644
index a28808b..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gedit/files/0001-workaround-void-pointer-arithmetic.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 8e0cbfac142d38320dd02416601e14c65585cd17 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
-Date: Sat, 9 Mar 2013 12:47:06 +0100
-Subject: [PATCH] workaround void pointer arithmetic
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-fixes errors like:
-error: pointer of type 'void *' used in arithmetic [-Werror=pointer-arith]
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
----
- gedit/gedit-document-input-stream.c   |    4 ++--
- gedit/gedit-smart-charset-converter.c |    2 +-
- 2 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/gedit/gedit-document-input-stream.c b/gedit/gedit-document-input-stream.c
-index 5a1f961..38316e7 100644
---- a/gedit/gedit-document-input-stream.c
-+++ b/gedit/gedit-document-input-stream.c
-@@ -426,7 +426,7 @@ gedit_document_input_stream_read (GInputStream  *stream,
- 
- 	do
- 	{
--		n = read_line (dstream, buffer + read, space_left);
-+		n = read_line (dstream, ((char*)buffer) + read, space_left);
- 		read += n;
- 		space_left -= n;
- 	} while (space_left > 0 && n != 0 && dstream->priv->bytes_partial == 0);
-@@ -451,7 +451,7 @@ gedit_document_input_stream_read (GInputStream  *stream,
- 
- 			newline = get_new_line (dstream);
- 
--			memcpy (buffer + read, newline, newline_size);
-+			memcpy (((char*)buffer) + read, newline, newline_size);
- 
- 			read += newline_size;
- 			dstream->priv->newline_added = TRUE;
-diff --git a/gedit/gedit-smart-charset-converter.c b/gedit/gedit-smart-charset-converter.c
-index e32b0b1..6745ce3 100644
---- a/gedit/gedit-smart-charset-converter.c
-+++ b/gedit/gedit-smart-charset-converter.c
-@@ -153,7 +153,7 @@ try_convert (GCharsetConverter *converter,
- 	do
- 	{
- 		res = g_converter_convert (G_CONVERTER (converter),
--		                           inbuf + nread,
-+		                           ((const char*)inbuf) + nread,
- 		                           inbuf_size - nread,
- 		                           out + nwritten,
- 		                           out_size - nwritten,
--- 
-1.7.4.4
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gedit/files/0002-suppress-string-format-literal-warning-to-fix-build-.patch b/meta-openembedded/meta-gnome/recipes-gnome/gedit/files/0002-suppress-string-format-literal-warning-to-fix-build-.patch
deleted file mode 100644
index a5d2310..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gedit/files/0002-suppress-string-format-literal-warning-to-fix-build-.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 4ebdf8023f763f75a7e1b548894de2e8b784f4a8 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
-Date: Fri, 29 Jul 2016 23:19:40 +0200
-Subject: [PATCH] suppress string format literal warning to fix build with gcc6
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Upstream-Status: Pending
-
-Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
----
- plugins/time/gedit-time-plugin.c | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/plugins/time/gedit-time-plugin.c b/plugins/time/gedit-time-plugin.c
-index d2ffdb9..441d9f9 100644
---- a/plugins/time/gedit-time-plugin.c
-+++ b/plugins/time/gedit-time-plugin.c
-@@ -473,12 +473,15 @@ get_time (const gchar* format)
-   	clock = time (NULL);
-   	now = localtime (&clock);
- 
-+#pragma GCC diagnostic push
-+#pragma GCC diagnostic ignored "-Wformat-nonliteral"
- 	do
- 	{
- 		out_length += 255;
- 		out = g_realloc (out, out_length);
- 	}
-   	while (strftime (out, out_length, locale_format, now) == 0);
-+#pragma GCC diagnostic pop
- 
- 	g_free (locale_format);
- 
--- 
-2.5.5
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gedit/gedit_2.30.4.bb b/meta-openembedded/meta-gnome/recipes-gnome/gedit/gedit_2.30.4.bb
deleted file mode 100644
index 6e07208..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gedit/gedit_2.30.4.bb
+++ /dev/null
@@ -1,33 +0,0 @@
-SUMMARY = "GNOME editor"
-SECTION = "x11/gnome"
-LICENSE = "GPLv2+"
-PR = "r2"
-
-DEPENDS = "gvfs enchant gconf gnome-doc-utils glib-2.0 glib-2.0-native gtk+ \
-           gtksourceview2 iso-codes intltool-native gnome-common-native \
-           libice python3-six-native"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-inherit distro_features_check gnomebase gconf gettext python3native
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \
-           file://0001-workaround-void-pointer-arithmetic.patch \
-           file://0001-Remove-help-directory-from-build.patch \
-           file://0002-suppress-string-format-literal-warning-to-fix-build-.patch \
-           file://0001-tests-document-saver.c-Define-ACCESSPERMS-if-not-def.patch \
-           file://0001-gedit-utils-qualify-handle_builder_error-with-format.patch \
-           "
-SRC_URI[archive.md5sum] = "e1eecb0a92a1a363b3d375ec5ac0fb3b"
-SRC_URI[archive.sha256sum] = "a561fe3dd1d199baede1bd07c4ee65f06fc7c494dd4d3327117f04149a608e3c"
-GNOME_COMPRESS_TYPE="bz2"
-
-EXTRA_OECONF = "--disable-scrollkeeper \
-                --enable-gvfs-metadata"
-
-LDFLAGS += "-lgmodule-2.0 -lICE"
-
-FILES_${PN} += "${libdir}/gedit-2/plugin* ${datadir}/gedit-2"
-FILES_${PN}-dbg += "${libdir}/gedit-2/plugin-loaders/.debug ${libdir}/gedit-2/plugins/.debug"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gedit/gedit_3.34.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gedit/gedit_3.34.0.bb
new file mode 100644
index 0000000..9679a1c
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gedit/gedit_3.34.0.bb
@@ -0,0 +1,44 @@
+SUMMARY = "GNOME editor"
+SECTION = "x11/gnome"
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=75859989545e37968a99b631ef42722e"
+
+GNOMEBASEBUILDCLASS = "meson"
+
+DEPENDS = " \
+    yelp-tools-native \
+    libxml2-native \
+    gdk-pixbuf-native \
+    iso-codes \
+    gtk+3 \
+    gsettings-desktop-schemas \
+    gtksourceview4 \
+    libpeas \
+    libsoup-2.4 \
+    gspell \
+    gtksourceview4 \
+"
+
+inherit gnomebase itstool gnome-help gobject-introspection gtk-doc vala gettext distro_features_check upstream-version-is-even
+
+REQUIRED_DISTRO_FEATURES = "x11"
+
+SRC_URI[archive.md5sum] = "ec6632fa73d9ea6c817e74a98d16eab6"
+SRC_URI[archive.sha256sum] = "3e95e51d3ccb495a9ac95aa3ed7fe8fe37ccde7c678f37fa3cea684bc71d507e"
+
+GTKDOC_MESON_OPTION = "documentation"
+
+PACKAGECONFIG ??= "gvfs"
+PACKAGECONFIG[gvfs] = "-Denable-gvfs-metadata=yes,-Denable-gvfs-metadata=no,,gvfs"
+
+PACKAGES += "${PN}-python"
+
+FILES_${PN} += " \
+    ${datadir}/dbus-1 \
+    ${datadir}/metainfo \
+"
+
+FILES_${PN}-python += " \
+    ${PYTHON_SITEPACKAGES_DIR} \
+"
+
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/geocode-glib/geocode-glib_3.26.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/geocode-glib/geocode-glib_3.26.1.bb
new file mode 100644
index 0000000..dc218f3
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/geocode-glib/geocode-glib_3.26.1.bb
@@ -0,0 +1,20 @@
+SUMMARY = "A convenience library for the geocoding"
+
+LICENSE = "LGPLv2"
+LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=55ca817ccb7d5b5b66355690e9abc605"
+
+GNOMEBASEBUILDCLASS = "meson"
+GIR_MESON_OPTION = "enable-introspection"
+GTKDOC_MESON_OPTION = "enable-gtk-doc"
+
+inherit gnomebase gobject-introspection gettext gtk-doc upstream-version-is-even
+
+DEPENDS = " \
+    json-glib \
+    libsoup-2.4 \
+"
+
+SRC_URI[archive.md5sum] = "21094494e66c86368add6a55bf480049"
+SRC_URI[archive.sha256sum] = "5baa6ab76a76c9fc567e4c32c3af2cd1d1784934c255bc5a62c512e6af6bde1c"
+
+EXTRA_OEMESON = "-Denable-installed-tests=false"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gexiv2/gexiv2_0.12.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gexiv2/gexiv2_0.12.0.bb
new file mode 100644
index 0000000..458eaea
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gexiv2/gexiv2_0.12.0.bb
@@ -0,0 +1,19 @@
+SUMMARY = "A GObject-based Exiv2 wrapper"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=625f055f41728f84a8d7938acc35bdc2"
+
+DEPENDS = "exiv2"
+
+GNOMEBASEBUILDCLASS = "meson"
+GTKDOC_MESON_OPTION = "gtk_doc"
+
+inherit gnomebase gobject-introspection gtk-doc
+
+SRC_URI[archive.md5sum] = "0a618c5b053106d1801d89cc77385419"
+SRC_URI[archive.sha256sum] = "58f539b0386f36300b76f3afea3a508de4914b27e78f58ee4d142486a42f926a"
+
+EXTRA_OEMESON = " \
+    -Dvapi=false \
+    -Dpython2_girdir=no \
+    -Dpython3_girdir=no \
+"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.2.3.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.2.3.bb
new file mode 100644
index 0000000..16a9213
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.2.3.bb
@@ -0,0 +1,18 @@
+SUMMARY = "GNOME archive library"
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
+
+DEPENDS = " \
+    gnome-common-native \
+    gtk+3 \
+    libarchive \
+"
+
+inherit gnomebase gobject-introspection gtk-doc vala
+
+SRC_URI[archive.md5sum] = "39b13fb2fc7752fa3b80616244dc4ef8"
+SRC_URI[archive.sha256sum] = "5de9db0db028cd6cab7c2fec46ba90965474ecf9cd68cfd681a6488cf1fb240a"
+
+do_compile_prepend() {
+    export GIR_EXTRA_LIBS_PATH="${B}/gnome-autoar/.libs"
+}
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer_3.34.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer_3.34.0.bb
new file mode 100644
index 0000000..95140ff
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer_3.34.0.bb
@@ -0,0 +1,25 @@
+SUMMARY = "GNOME bluetooth manager"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+
+SECTION = "x11/gnome"
+
+DEPENDS = " \
+    gtk+3 \
+    gnome-desktop3 \
+"
+
+GNOMEBASEBUILDCLASS = "meson"
+
+inherit gnomebase gtk-icon-cache gettext distro_features_check upstream-version-is-even
+
+REQUIRED_DISTRO_FEATURES = "x11"
+
+SRC_URI[archive.md5sum] = "76004a8986ea622b09c408b01a6f42e5"
+SRC_URI[archive.sha256sum] = "aa6f0583e5f93aec095e537f0638b29de3d02491f0131ef584a7c55d39d6b98b"
+
+FILES_${PN} += " \
+    ${datadir}/dbus-1 \
+    ${datadir}/metainfo \
+    ${datadir}/thumbnailers \
+"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_3.34.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_3.34.1.bb
new file mode 100644
index 0000000..d6af7a7
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_3.34.1.bb
@@ -0,0 +1,59 @@
+SUMMARY = "Window navigation construction toolkit"
+LICENSE = "LGPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+
+GNOMEBASEBUILDCLASS = "meson"
+
+inherit gnomebase gobject-introspection gettext distro_features_check upstream-version-is-even
+
+SRC_URI[archive.md5sum] = "528b0b7cc2dd22c6026a9c8739c71fa7"
+SRC_URI[archive.sha256sum] = "7ce4979817866911a94ecb75b36db56797e038c0c524c5c1a81aefccafc17337"
+
+DEPENDS = " \
+    colord \
+    geocode-glib \
+    gcr \
+    gnome-desktop3 \
+    libgweather \
+    lcms \
+    libcanberra \
+    geoclue \
+    libnotify \
+    upower \
+    libwacom \
+    virtual/libx11 \
+"
+
+# all these are mandatory
+REQUIRED_DISTRO_FEATURES = "x11 polkit pulseaudio systemd gobject-introspection-data"
+UNKNOWN_CONFIGURE_WHITELIST_append = " introspection"
+
+SRC_URI[archive.md5sum] = "cdd0d0c8664056deb78aa40c88ec24d1"
+SRC_URI[archive.sha256sum] = "9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f"
+
+# allow cross build mixed with build of native tools
+do_write_config_append() {
+    cat >${WORKDIR}/meson.native <<EOF
+[binaries]
+pkgconfig = 'pkg-config-native'
+EOF
+}
+EXTRA_OEMESON = "--native-file ${WORKDIR}/meson.native"
+
+PACKAGECONFIG ??= " \
+    cups nm \
+    alsa gudev \
+    ${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)} \
+"
+PACKAGECONFIG[alsa] = "-Dalsa=true,-Dalsa=false,alsa-lib"
+PACKAGECONFIG[cups] = "-Dcups=true,-Dcups=false,cups"
+PACKAGECONFIG[gudev] = "-Dgudev=true,-Dgudev=false,libgudev"
+PACKAGECONFIG[nm] = "-Dnetwork_manager=true,-Dnetwork_manager=false,networkmanager"
+PACKAGECONFIG[wayland] = "-Dwayland=true,-Dwayland=false,wayland"
+
+FILES_${PN} += " \
+    ${systemd_user_unitdir} \
+    ${libdir}/gnome-settings-daemon-3.0/libgsd.so \
+"
+
+RDEPEND_${PN} += "gdbus"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
new file mode 100644
index 0000000..a69390e
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
@@ -0,0 +1,35 @@
+From f231cecc151930fd5b6309da317a8c5bc6001f38 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Sun, 17 Nov 2019 15:55:54 +0100
+Subject: [PATCH] Add W_EXITCODE macro for non-glibc systems
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Upstream-Status: Pending
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+---
+ src/terminal.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/terminal.c b/src/terminal.c
+index d06ce35..6284e4c 100644
+--- a/src/terminal.c
++++ b/src/terminal.c
+@@ -47,6 +47,12 @@
+ GS_DEFINE_CLEANUP_FUNCTION0(TerminalOptions*, gs_local_options_free, terminal_options_free)
+ #define gs_free_options __attribute__ ((cleanup(gs_local_options_free)))
+ 
++/* fix for musl */
++#ifndef W_EXITCODE
++#define W_EXITCODE(ret, sig) ((ret) << 8 | (sig))
++#endif
++
++
+ /* Wait-for-exit helper */
+ 
+ typedef struct {
+-- 
+2.21.0
+
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal_3.34.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal_3.34.2.bb
new file mode 100644
index 0000000..ffbabbf
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal_3.34.2.bb
@@ -0,0 +1,37 @@
+SUMMARY = "GNOME terminal"
+LICENSE = "GPLv3 & GFDL-1.3"
+LIC_FILES_CHKSUM = " \
+    file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949 \
+    file://COPYING.GFDL;md5=a22d0be1ce2284b67950a4d1673dd1b0 \
+"
+
+inherit gnomebase gnome-help gettext itstool upstream-version-is-even
+
+DEPENDS = " \
+    glib-2.0-native \
+    intltool-native \
+    yelp-tools-native \
+    desktop-file-utils-native \
+    gtk+3 \
+    gsettings-desktop-schemas \
+    vte \
+    dconf \
+    libpcre2 \
+"
+
+SRC_URI[archive.md5sum] = "13fa9f5f459481c7f05b6964c470ef16"
+SRC_URI[archive.sha256sum] = "3bd723f4058ec014da4715db4181b7d73eccc797b85ad5e6236996951c01803d"
+SRC_URI += "file://0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch"
+
+EXTRA_OECONF += " \
+    --disable-search-provider \
+    --without-nautilus-extension \
+"
+
+FILES_${PN} += " \
+    ${datadir}/metainfo \
+    ${datadir}/dbus-1 \
+    ${systemd_user_unitdir} \
+"
+
+RRECOMMENDS_${PN} += "vte-prompt gsettings-desktop-schemas"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview-classic-light_1.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview-classic-light_1.0.bb
index 7dabd1e..bcc3106 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview-classic-light_1.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview-classic-light_1.0.bb
@@ -9,8 +9,6 @@
 S = "${WORKDIR}"
 
 do_install() {
-    install -d ${D}${datadir}/gtksourceview-2.0/styles
-    install -m 0644 ${WORKDIR}/classic-light.xml ${D}${datadir}/gtksourceview-2.0/styles/
     install -d ${D}${datadir}/gtksourceview-3.0/styles
     install -m 0644 ${WORKDIR}/classic-light.xml ${D}${datadir}/gtksourceview-3.0/styles/
     install -d ${D}${datadir}/gtksourceview-4/styles
@@ -18,7 +16,6 @@
 }
 
 FILES_${PN} = " \
-    ${datadir}/gtksourceview-2.0/styles \
     ${datadir}/gtksourceview-3.0/styles \
     ${datadir}/gtksourceview-4/styles \
 "
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2_2.10.5.bb b/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2_2.10.5.bb
deleted file mode 100644
index 012f8e3..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2_2.10.5.bb
+++ /dev/null
@@ -1,32 +0,0 @@
-SUMMARY = "Portable C library for multiline text editing"
-HOMEPAGE = "http://projects.gnome.org/gtksourceview/"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-DEPENDS = "gtk+ libxml2 intltool-native gnome-common-native glib-2.0-native"
-
-PNAME = "gtksourceview"
-
-S = "${WORKDIR}/${PNAME}-${PV}"
-
-inherit gnomebase lib_package gettext distro_features_check
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-# overrule SRC_URI from gnome.conf
-SRC_URI = "${GNOME_MIRROR}/${PNAME}/${@gnome_verdir("${PV}")}/${PNAME}-${PV}.tar.bz2;name=archive \
-           file://gtk-doc.make \
-           file://suppress-string-format-literal-warning.patch \
-           file://0001-test-widget.c-fix-non-literal-format-string-issues.patch \
-           "
-SRC_URI[archive.md5sum] = "1219ad1694df136f126507466aeb41aa"
-SRC_URI[archive.sha256sum] = "c585773743b1df8a04b1be7f7d90eecdf22681490d6810be54c81a7ae152191e"
-
-do_configure_prepend() {
-    cp ${WORKDIR}/gtk-doc.make ${S}/
-    sed -i -e s:docs::g ${S}/Makefile.am
-    echo "EXTRA_DIST = version.xml" > gnome-doc-utils.make
-}
-
-FILES_${PN} += " ${datadir}/gtksourceview-2.0"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/libgweather/libgweather_3.34.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/libgweather/libgweather_3.34.0.bb
new file mode 100644
index 0000000..2d31be0
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/libgweather/libgweather_3.34.0.bb
@@ -0,0 +1,24 @@
+SUMMARY = "A library to access weather information from online services"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+GNOMEBASEBUILDCLASS = "meson"
+
+inherit gnomebase gobject-introspection gettext gtk-doc vala distro_features_check
+
+SRC_URI[archive.md5sum] = "52c3b1e27887fc88f862c92c42d930c1"
+SRC_URI[archive.sha256sum] = "02245395d639d9749fe2d19b7e66b64a152b9509ab0e5aad92514538b9c6f1b9"
+
+# gobject-introspection is mandatory and cannot be configured
+REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
+UNKNOWN_CONFIGURE_WHITELIST_append = " introspection"
+
+GTKDOC_MESON_OPTION = "gtk_doc"
+
+DEPENDS = " \
+    gtk+3 \
+    json-glib \
+    libsoup-2.4 \
+    geocode-glib \
+"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus/0001-nautilus-drop-gnome-desktop-thumbnail-API-with-new-g.patch b/meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus/0001-nautilus-drop-gnome-desktop-thumbnail-API-with-new-g.patch
deleted file mode 100644
index f19eb49..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus/0001-nautilus-drop-gnome-desktop-thumbnail-API-with-new-g.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From a4ed38e95cbe07f02028249b8b315565a5ac1e43 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 5 May 2018 22:32:45 -0700
-Subject: [PATCH] nautilus: drop gnome-desktop thumbnail API with new
- gdk-pixbuf
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-If gdk-pixbuf >= 2.36.5 is available, its scaling API can do what we
-want, so we don’t need to use the deprecated gnome-desktop one.
-
-Also fixes compile errors seen on master
-nautilus-properties-window.c:5101: undefined reference to `gnome_desktop_thumbnail_scale_down_pixbuf'
-
-Upstream-Status: Backport
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/nautilus-properties-window.c | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/src/nautilus-properties-window.c b/src/nautilus-properties-window.c
-index dea8b0f..fad9bd1 100644
---- a/src/nautilus-properties-window.c
-+++ b/src/nautilus-properties-window.c
-@@ -5098,10 +5098,11 @@ update_preview_callback (GtkFileChooser *icon_chooser,
- 			scale = (double)gdk_pixbuf_get_height (pixbuf) /
- 				gdk_pixbuf_get_width (pixbuf);
- 
--			scaled_pixbuf = gnome_desktop_thumbnail_scale_down_pixbuf
-+			scaled_pixbuf = gdk_pixbuf_scale_simple
- 				(pixbuf,
- 				 PREVIEW_IMAGE_WIDTH,
--				 scale * PREVIEW_IMAGE_WIDTH);
-+				 scale * PREVIEW_IMAGE_WIDTH,
-+				 GDK_INTERP_HYPER);
- 			g_object_unref (pixbuf);
- 			pixbuf = scaled_pixbuf;
- 		}
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus_3.18.5.bb b/meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus_3.18.5.bb
deleted file mode 100644
index bdb2f3c..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus_3.18.5.bb
+++ /dev/null
@@ -1,33 +0,0 @@
-SUMMARY = "File manager for GNOME"
-SECTION = "x11/gnome"
-
-LICENSE="GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=36cf660aea2b8beffba7945f44a7e748 \
-                    file://COPYING.EXTENSIONS;md5=7579d6678402a1868631bf82c93ff0d4 \
-                    file://COPYING.LIB;md5=f30a9716ef3762e3467a2f62bf790f0a"
-
-inherit distro_features_check autotools pkgconfig gobject-introspection
-
-MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
-SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/nautilus/${MAJ_VER}/nautilus-${PV}.tar.xz \
-           file://0001-nautilus-drop-gnome-desktop-thumbnail-API-with-new-g.patch \
-           "
-
-SRC_URI[md5sum] = "0f578bda5655c0ce204befafca5803d7"
-SRC_URI[sha256sum] = "60a927c0522b4cced9d8f62baed2ee5e2fd4305be4523eb5bc44805971a6cc15"
-
-DEPENDS = "gtk+3 gnome-desktop3 gsettings-desktop-schemas glib-2.0-native intltool-native pango"
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-EXTRA_OECONF = " \
-    --disable-gtk-doc \
-    --disable-update-mimedb \
-    --disable-nst-extension \
-    --enable-tracker=no \
-    --disable-schemas-compile \
-    --enable-xmp=no \
-    --enable-libexif=no \
-"
-
-FILES_${PN} += "${datadir}/*"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus_3.34.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus_3.34.1.bb
new file mode 100644
index 0000000..342c59d
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus_3.34.1.bb
@@ -0,0 +1,32 @@
+SUMMARY = "File manager for GNOME"
+SECTION = "x11/gnome"
+
+LICENSE="GPLv3"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=d32239bcb673463ab874e80d47fae504"
+
+GNOMEBASEBUILDCLASS = "meson"
+
+DEPENDS = " \
+    fontconfig \
+    gtk+3 \
+    gnome-desktop3 \
+    gsettings-desktop-schemas \
+    gnome-autoar \
+    tracker \
+"
+
+inherit gnomebase gobject-introspection gtk-doc gettext distro_features_check
+
+SRC_URI[archive.md5sum] = "19e4f1d89fb9d0ff135d5b1974ce43b5"
+SRC_URI[archive.sha256sum] = "37ce2c16a610c589dcc7660f9092446465568e38e29bce6ed8c24f2e8e0077f3"
+
+REQUIRED_DISTRO_FEATURES = "x11"
+
+PACKAGECONFIG = "extensions"
+PACKAGECONFIG[extensions] = "-Dextensions=true,-Dextensions=false, gexiv2 gstreamer1.0-plugins-base"
+
+FILES_${PN} += " \
+    ${datadir}/dbus-1 \
+    ${datadir}/metainfo \
+    ${datadir}/gnome-shell \
+"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker_2.3.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker_2.3.1.bb
new file mode 100644
index 0000000..ad65630
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker_2.3.1.bb
@@ -0,0 +1,50 @@
+SUMMARY = "Tracker is a file search engine"
+LICENSE = "GPLv2 & LGPLv2.1"
+LIC_FILES_CHKSUM = " \
+    file://COPYING.GPL;md5=ee31012bf90e7b8c108c69f197f3e3a4 \
+    file://COPYING.LGPL;md5=2d5025d4aa3495befef8f17206a5b0a1 \
+"
+
+DEPENDS = " \
+    libxml2-native \
+    dbus-native \
+    glib-2.0 \
+    sqlite3 \
+    libarchive \
+    dbus \
+    icu \
+    json-glib \
+    libsoup-2.4 \
+    libstemmer \
+"
+
+GNOMEBASEBUILDCLASS = "meson"
+
+inherit gnomebase gobject-introspection vala gtk-doc manpages bash-completion distro_features_check
+
+SRC_URI[archive.md5sum] = "5e75b611b190c4cebf53e3de15266429"
+SRC_URI[archive.sha256sum] = "b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1"
+
+# gobject-introspection is mandatory and cannot be configured
+REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
+UNKNOWN_CONFIGURE_WHITELIST_append = " introspection"
+
+PACKAGECONFIG ??= "fts"
+PACKAGECONFIG[networkmanager] = "-Dnetwork_manager=enabled,-Dnetwork_manager=disabled,networkmanger"
+# full text search requires sqlite3 build with PACKAGECONFIG[fts5] set
+PACKAGECONFIG[fts] = "-Dfts=true,-Dfts=false"
+
+# set required cross property sqlite3_has_fts5
+do_write_config[vardeps] += "PACKAGECONFIG"
+do_write_config_append() {
+    echo "[properties]" > ${WORKDIR}/meson-tracker.cross
+    echo "sqlite3_has_fts5 = '${@bb.utils.contains('PACKAGECONFIG', 'fts', 'true', 'false', d)}'" >> ${WORKDIR}/meson-tracker.cross
+}
+
+EXTRA_OEMESON = "--cross-file ${WORKDIR}/meson-tracker.cross"
+
+FILES_${PN} += " \
+    ${datadir}/dbus-1 \
+    ${libdir}/tracker-2.0 \
+    ${systemd_user_unitdir} \
+"
diff --git a/meta-openembedded/meta-gnome/recipes-support/libwacom/libwacom_0.33.bb b/meta-openembedded/meta-gnome/recipes-support/libwacom/libwacom_0.33.bb
new file mode 100644
index 0000000..6fb3b82
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-support/libwacom/libwacom_0.33.bb
@@ -0,0 +1,14 @@
+SUMMARY = "A tablet description library"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=40a21fffb367c82f39fd91a3b137c36e"
+
+DEPENDS = " \
+    libxml2-native \
+    libgudev \
+"
+
+inherit autotools pkgconfig
+
+SRC_URI = "git://github.com/linuxwacom/libwacom.git"
+SRCREV = "87cc710e21a6220e267dd08936bbec2932aa3658"
+S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth.inc b/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth.inc
index c4c623a..764ed37 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth.inc
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth.inc
@@ -4,9 +4,9 @@
 LICENSE = "LGPL-2.1"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=fc178bcd425090939a8b634d1d6a9594"
 
-SRC_URI = "git://github.com/FluidSynth/fluidsynth.git"
-SRCREV = "62b38b1c66aec606f83b322bb03bd84810bbda41"
+SRC_URI = "git://github.com/FluidSynth/fluidsynth.git;branch=2.0.x"
+SRCREV = "c2f4683bf57f61451d14d219fdb25cf9f29cb7fe"
 S = "${WORKDIR}/git"
-PV = "2.0.7"
+PV = "2.0.9"
 
 inherit cmake pkgconfig lib_package
diff --git a/meta-openembedded/meta-networking/recipes-daemons/squid/squid_4.6.bb b/meta-openembedded/meta-networking/recipes-daemons/squid/squid_4.9.bb
similarity index 96%
rename from meta-openembedded/meta-networking/recipes-daemons/squid/squid_4.6.bb
rename to meta-openembedded/meta-networking/recipes-daemons/squid/squid_4.9.bb
index ca4927d..6f202cf 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/squid/squid_4.6.bb
+++ b/meta-openembedded/meta-networking/recipes-daemons/squid/squid_4.9.bb
@@ -28,8 +28,8 @@
 
 SRC_URI_remove_toolchain-clang = "file://0001-configure-Check-for-Wno-error-format-truncation-comp.patch"
 
-SRC_URI[md5sum] = "6fb9f2be772b9bcaf2b3322d9e16ee1e"
-SRC_URI[sha256sum] = "73c1970467618db194057f6c43c80019a4dc47847579fc404796ff2dcd215f05"
+SRC_URI[md5sum] = "b315d0dce37627dfe61eec7f5304baaf"
+SRC_URI[sha256sum] = "0f5829d878002147e7c4d9b8901c2c3c051693465e82e45cef9ab0e226e3e729"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
                     file://errors/COPYRIGHT;md5=19cc4dd146f397e72f3ff6f9f58fbfbe \
diff --git a/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc_1.24.3.bb b/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc_1.24.3.bb
index ecc575b..24072c0 100644
--- a/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc_1.24.3.bb
+++ b/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc_1.24.3.bb
@@ -42,6 +42,10 @@
     sed -i -e "s/set(_gRPC_ALLTARGETS_LIBRARIES \${CMAKE_DL_LIBS} rt m pthread)/set(_gRPC_ALLTARGETS_LIBRARIES \${CMAKE_DL_LIBS} atomic rt m pthread)/g" ${S}/CMakeLists.txt
 }
 
+do_configure_prepend_toolchain-clang_x86() {
+    sed -i -e "s/set(_gRPC_ALLTARGETS_LIBRARIES \${CMAKE_DL_LIBS} rt m pthread)/set(_gRPC_ALLTARGETS_LIBRARIES \${CMAKE_DL_LIBS} atomic rt m pthread)/g" ${S}/CMakeLists.txt
+}
+
 BBCLASSEXTEND = "native nativesdk"
 
 SYSROOT_DIRS_BLACKLIST_append_class-target = "${libdir}/cmake/grpc"
diff --git a/meta-openembedded/meta-networking/recipes-support/libldb/libldb_1.5.6.bb b/meta-openembedded/meta-networking/recipes-support/libldb/libldb_1.5.6.bb
index 99eb6f9..cc24863 100644
--- a/meta-openembedded/meta-networking/recipes-support/libldb/libldb_1.5.6.bb
+++ b/meta-openembedded/meta-networking/recipes-support/libldb/libldb_1.5.6.bb
@@ -36,8 +36,7 @@
 SRC_URI[md5sum] = "fc58ef432c1fcb03fc3bb6cccce08977"
 SRC_URI[sha256sum] = "ff82474d0bf109e415a2d50334bde5715f486a53ff4bb8c7f74459dd229e975b"
 
-inherit waf-samba distro_features_check
-REQUIRED_DISTRO_FEATURES = "pam"
+inherit waf-samba
 
 S = "${WORKDIR}/ldb-${PV}"
 
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent/0001-Define-64bit-atomic-helpers-for-ppc-32-bit.patch b/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent/0001-Define-64bit-atomic-helpers-for-ppc-32-bit.patch
deleted file mode 100644
index 4d09797..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent/0001-Define-64bit-atomic-helpers-for-ppc-32-bit.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From c9859a38a58996b8767a30e14febc03845f66f95 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 1 Jul 2017 13:10:53 -0700
-Subject: [PATCH] Define 64bit atomic helpers for ppc 32-bit
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/atomic64.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/atomic64.c b/src/atomic64.c
-index f841b39b..35c7c9d8 100644
---- a/src/atomic64.c
-+++ b/src/atomic64.c
-@@ -18,10 +18,10 @@
- #include <stdbool.h>
- 
- /*
-- * only need these on MIPS, since it lacks hardware 64-bit atomics,
-+ * only need these on MIPS & PPC32, since it lacks hardware 64-bit atomics,
-  * unlike x86 and ARM.
-  */
--#if defined(__mips__) || defined(__mipsel__)
-+#if defined(__mips__) || defined(__mipsel__) || defined(__powerpc__)
- 
- static void __spin_lock(volatile int *lock) {
-   while (__sync_lock_test_and_set(lock, 1))
--- 
-2.13.2
-
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent/0001-implement-64bit-atomic-for-mips.patch b/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent/0001-implement-64bit-atomic-for-mips.patch
deleted file mode 100644
index 84e0772..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent/0001-implement-64bit-atomic-for-mips.patch
+++ /dev/null
@@ -1,263 +0,0 @@
-From d7b6df5808e7bef5930b61a82e880699a9f9e208 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 29 Jun 2017 15:39:19 -0700
-Subject: [PATCH] implement 64bit atomic for mips
-
-GCC does not provide 64bit atomics for mips32
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/Makefile.am |   1 +
- src/atomic64.c  | 228 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- 2 files changed, 229 insertions(+)
- create mode 100644 src/atomic64.c
-
-diff --git a/src/Makefile.am b/src/Makefile.am
-index 99aaace0..cbbbbee9 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -27,6 +27,7 @@ libtorrent_la_LIBADD = \
- 	utils/libsub_utils.la
- 
- libtorrent_la_SOURCES = \
-+	atomic64.c \
- 	globals.cc \
- 	globals.h \
- 	manager.cc \
-diff --git a/src/atomic64.c b/src/atomic64.c
-new file mode 100644
-index 00000000..f841b39b
---- /dev/null
-+++ b/src/atomic64.c
-@@ -0,0 +1,228 @@
-+/*===----- atomic64.c - Support functions for 64-bit atomic operations.-----===
-+ *
-+ *                     The LLVM Compiler Infrastructure
-+ *
-+ * This file is dual licensed under the MIT and the University of Illinois Open
-+ * Source Licenses. See LICENSE.TXT for details.
-+ *
-+ *===-----------------------------------------------------------------------===
-+ *
-+ *  atomic64.c defines a set of functions for performing atomic accesses on
-+ *  64-bit memory locations. It also implements spinlock synchronization
-+ *  operations.
-+ *
-+ *===-----------------------------------------------------------------------===
-+ */
-+
-+#include <stdint.h>
-+#include <stdbool.h>
-+
-+/*
-+ * only need these on MIPS, since it lacks hardware 64-bit atomics,
-+ * unlike x86 and ARM.
-+ */
-+#if defined(__mips__) || defined(__mipsel__)
-+
-+static void __spin_lock(volatile int *lock) {
-+  while (__sync_lock_test_and_set(lock, 1))
-+    while (*lock) {}
-+}
-+
-+static void __spin_unlock(volatile int *lock) {
-+  __sync_lock_release(lock);
-+}
-+
-+/*
-+ * Make sure the lock is on its own cache line to prevent false sharing.
-+ * Put it inside a struct that is aligned and padded to the typical MIPS
-+ * cacheline which is 32 bytes.
-+ */
-+static struct {
-+  int lock;
-+  char pad[32 - sizeof(int)];
-+} __attribute__((aligned (32))) lock = { 0 };
-+
-+
-+uint64_t __sync_fetch_and_add_8(volatile uint64_t *ptr, uint64_t val) {
-+  uint64_t ret;
-+
-+  __spin_lock(&lock.lock);
-+
-+  ret = *ptr;
-+  *ptr = ret + val;
-+
-+  __spin_unlock(&lock.lock);
-+
-+  return ret;
-+}
-+
-+uint64_t __sync_fetch_and_sub_8(volatile uint64_t *ptr, uint64_t val) {
-+  uint64_t ret;
-+
-+  __spin_lock(&lock.lock);
-+
-+  ret = *ptr;
-+  *ptr = ret - val;
-+
-+  __spin_unlock(&lock.lock);
-+
-+  return ret;
-+}
-+
-+uint64_t __sync_fetch_and_and_8(volatile uint64_t *ptr, uint64_t val) {
-+  uint64_t ret;
-+
-+  __spin_lock(&lock.lock);
-+
-+  ret = *ptr;
-+  *ptr = ret & val;
-+
-+  __spin_unlock(&lock.lock);
-+
-+  return ret;
-+}
-+
-+uint64_t __sync_fetch_and_or_8(volatile uint64_t *ptr, uint64_t val) {
-+  uint64_t ret;
-+
-+  __spin_lock(&lock.lock);
-+
-+  ret = *ptr;
-+  *ptr = ret | val;
-+
-+  __spin_unlock(&lock.lock);
-+
-+  return ret;
-+}
-+
-+uint64_t __sync_fetch_and_xor_8(volatile uint64_t *ptr, uint64_t val) {
-+  uint64_t ret;
-+
-+  __spin_lock(&lock.lock);
-+
-+  ret = *ptr;
-+  *ptr = ret ^ val;
-+
-+  __spin_unlock(&lock.lock);
-+
-+  return ret;
-+}
-+
-+uint64_t __sync_add_and_fetch_8(volatile uint64_t *ptr, uint64_t val) {
-+  uint64_t ret;
-+
-+  __spin_lock(&lock.lock);
-+
-+  ret = *ptr + val;
-+  *ptr = ret;
-+
-+  __spin_unlock(&lock.lock);
-+
-+  return ret;
-+}
-+
-+uint64_t __sync_sub_and_fetch_8(volatile uint64_t *ptr, uint64_t val) {
-+  uint64_t ret;
-+
-+  __spin_lock(&lock.lock);
-+
-+  ret = *ptr - val;
-+  *ptr = ret;
-+
-+  __spin_unlock(&lock.lock);
-+
-+  return ret;
-+}
-+
-+uint64_t __sync_and_and_fetch_8(volatile uint64_t *ptr, uint64_t val) {
-+  uint64_t ret;
-+
-+  __spin_lock(&lock.lock);
-+
-+  ret = *ptr & val;
-+  *ptr = ret;
-+
-+  __spin_unlock(&lock.lock);
-+
-+  return ret;
-+}
-+
-+uint64_t __sync_or_and_fetch_8(volatile uint64_t *ptr, uint64_t val) {
-+  uint64_t ret;
-+
-+  __spin_lock(&lock.lock);
-+
-+  ret = *ptr | val;
-+  *ptr = ret;
-+
-+  __spin_unlock(&lock.lock);
-+
-+  return ret;
-+}
-+
-+uint64_t __sync_xor_and_fetch_8(volatile uint64_t *ptr, uint64_t val) {
-+  uint64_t ret;
-+
-+  __spin_lock(&lock.lock);
-+
-+  ret = *ptr ^ val;
-+  *ptr = ret;
-+
-+  __spin_unlock(&lock.lock);
-+
-+  return ret;
-+}
-+
-+bool __sync_bool_compare_and_swap_8(volatile uint64_t *ptr,
-+                                         uint64_t oldval, uint64_t newval) {
-+  bool ret = false;
-+
-+  __spin_lock(&lock.lock);
-+
-+  if (*ptr == oldval) {
-+    *ptr = newval;
-+    ret = true;
-+  }
-+
-+  __spin_unlock(&lock.lock);
-+
-+  return ret;
-+}
-+
-+uint64_t __sync_val_compare_and_swap_8(volatile uint64_t *ptr,
-+                                            uint64_t oldval, uint64_t newval) {
-+  uint64_t ret;
-+
-+  __spin_lock(&lock.lock);
-+
-+  ret = *ptr;
-+  if (ret == oldval)
-+    *ptr = newval;
-+
-+  __spin_unlock(&lock.lock);
-+
-+  return ret;
-+}
-+
-+uint64_t __sync_lock_test_and_set_8(volatile uint64_t *ptr, uint64_t val) {
-+  uint64_t ret;
-+
-+  __spin_lock(&lock.lock);
-+
-+  ret = *ptr;
-+  *ptr = val;
-+
-+  __spin_unlock(&lock.lock);
-+
-+  return ret;
-+}
-+
-+void __sync_lock_release_8(volatile uint64_t *ptr) {
-+  __spin_lock(&lock.lock);
-+
-+  *ptr = 0;
-+
-+  __spin_unlock(&lock.lock);
-+}
-+
-+#endif
--- 
-2.13.2
-
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent_git.bb b/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent_git.bb
index fa106ea..3ee6955 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent_git.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent_git.bb
@@ -8,8 +8,6 @@
 
 SRC_URI = "git://github.com/rakshasa/libtorrent \
            file://don-t-run-code-while-configuring-package.patch \
-           file://0001-implement-64bit-atomic-for-mips.patch \
-           file://0001-Define-64bit-atomic-helpers-for-ppc-32-bit.patch \
            "
 SRCREV = "756f70010779927dc0691e1e722ed433d5d295e1"
 
@@ -17,6 +15,13 @@
 
 S = "${WORKDIR}/git"
 
+PACKAGECONFIG ??= "instrumentation"
+
+PACKAGECONFIG_remove_mipsarch = "instrumentation"
+PACKAGECONFIG_remove_powerpc = "instrumentation"
+
+PACKAGECONFIG[instrumentation] = "--enable-instrumentation,--disable-instrumentation,"
+
 inherit autotools pkgconfig
 
 EXTRA_OECONF = "--with-zlib=${STAGING_EXECPREFIXDIR}"
diff --git a/meta-openembedded/meta-oe/recipes-crypto/libkcapi/libkcapi/0001-kcapi-kdf-Move-code-to-fix.patch b/meta-openembedded/meta-oe/recipes-crypto/libkcapi/libkcapi/0001-kcapi-kdf-Move-code-to-fix.patch
new file mode 100644
index 0000000..3dd7ea7
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-crypto/libkcapi/libkcapi/0001-kcapi-kdf-Move-code-to-fix.patch
@@ -0,0 +1,71 @@
+From 00c1654e368f728b213c4e3782045d54098edb25 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 16 Nov 2019 23:03:51 -0800
+Subject: [PATCH] kcapi-kdf: Move code to fix
+
+Fixes clang build
+unused function '_bswap32' [-Werror,-Wunused-function]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ lib/kcapi-kdf.c | 36 ++++++++++++++++--------------------
+ 1 file changed, 16 insertions(+), 20 deletions(-)
+
+diff --git a/lib/kcapi-kdf.c b/lib/kcapi-kdf.c
+index ea39846..8e4a636 100644
+--- a/lib/kcapi-kdf.c
++++ b/lib/kcapi-kdf.c
+@@ -54,6 +54,20 @@
+ #include "kcapi.h"
+ #include "internal.h"
+ 
++#define GCC_VERSION (__GNUC__ * 10000		\
++		     + __GNUC_MINOR__ * 100	\
++		     + __GNUC_PATCHLEVEL__)
++#if GCC_VERSION >= 40400
++# define __HAVE_BUILTIN_BSWAP32__
++#endif
++
++#ifdef __HAVE_BUILTIN_BSWAP32__
++# define be_bswap32(x) (uint32_t)__builtin_bswap32((uint32_t)(x))
++/* Endian dependent byte swap operations.  */
++#elif  __BYTE_ORDER__ ==  __ORDER_BIG_ENDIAN__
++# define be_bswap32(x) ((uint32_t)(x))
++#elif __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
++
+ static inline uint32_t rol32(uint32_t x, int n)
+ {
+ 	return ( (x << (n&(32-1))) | (x >> ((32-n)&(32-1))) );
+@@ -68,27 +82,9 @@ static inline uint32_t _bswap32(uint32_t x)
+ {
+ 	return ((rol32(x, 8) & 0x00ff00ffL) | (ror32(x, 8) & 0xff00ff00L));
+ }
+-
+-#define GCC_VERSION (__GNUC__ * 10000		\
+-		     + __GNUC_MINOR__ * 100	\
+-		     + __GNUC_PATCHLEVEL__)
+-#if GCC_VERSION >= 40400
+-# define __HAVE_BUILTIN_BSWAP32__
+-#endif
+-
+-#ifdef __HAVE_BUILTIN_BSWAP32__
+-# define _swap32(x) (uint32_t)__builtin_bswap32((uint32_t)(x))
+-#else
+-# define _swap32(x) _bswap32(x)
+-#endif
+-
+-/* Endian dependent byte swap operations.  */
+-#if __BYTE_ORDER__ ==  __ORDER_BIG_ENDIAN__
+-# define be_bswap32(x) ((uint32_t)(x))
+-#elif __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
+-# define be_bswap32(x) _swap32(x)
++# define be_bswap32(x) _bswap32(x)
+ #else
+-#error "Endianess not defined"
++# error "Neither builtin_bswap32 nor endianess defined"
+ #endif
+ 
+ DSO_PUBLIC
+-- 
+2.24.0
+
diff --git a/meta-openembedded/meta-oe/recipes-crypto/libkcapi/libkcapi_git.bb b/meta-openembedded/meta-oe/recipes-crypto/libkcapi/libkcapi_git.bb
index 7990709..aa438e5 100644
--- a/meta-openembedded/meta-oe/recipes-crypto/libkcapi/libkcapi_git.bb
+++ b/meta-openembedded/meta-oe/recipes-crypto/libkcapi/libkcapi_git.bb
@@ -10,6 +10,7 @@
 PV = "1.1.5"
 SRC_URI = " \
     git://github.com/smuellerDD/libkcapi.git \
+    file://0001-kcapi-kdf-Move-code-to-fix.patch \
 "
 
 inherit autotools
diff --git a/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers/0001-Add-detection-of-strtoull_l-function.patch b/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers/0001-Add-detection-of-strtoull_l-function.patch
new file mode 100644
index 0000000..f3e8210
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers/0001-Add-detection-of-strtoull_l-function.patch
@@ -0,0 +1,38 @@
+From bff7ffbc5130cd46caf33b76b4bb0593fcd15066 Mon Sep 17 00:00:00 2001
+From: Vladimir Glavnyy <31897320+vglavnyy@users.noreply.github.com>
+Date: Fri, 10 May 2019 00:15:29 +0700
+Subject: [PATCH] Add detection of strtoull_l function (#5333) (#5337)
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Retrieved from:
+https://github.com/google/flatbuffers/commit/bff7ffbc5130cd46caf33b76b4bb0593fcd15066]
+---
+ CMakeLists.txt | 12 +++++++++---
+ 1 file changed, 9 insertions(+), 3 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 0640c37b5..30be238fe 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -42,12 +42,18 @@ if(DEFINED FLATBUFFERS_MAX_PARSING_DEPTH)
+   message(STATUS "FLATBUFFERS_MAX_PARSING_DEPTH: ${FLATBUFFERS_MAX_PARSING_DEPTH}")
+ endif()
+ 
+-# Auto-detect locale-narrow 'strtod_l' function.
++# Auto-detect locale-narrow 'strtod_l' and  'strtoull_l' functions.
+ if(NOT DEFINED FLATBUFFERS_LOCALE_INDEPENDENT)
++  set(FLATBUFFERS_LOCALE_INDEPENDENT 0)
+   if(MSVC)
+-    check_cxx_symbol_exists(_strtof_l stdlib.h FLATBUFFERS_LOCALE_INDEPENDENT)
++    check_cxx_symbol_exists(_strtof_l stdlib.h FLATBUFFERS_HAS_STRTOF_L)
++    check_cxx_symbol_exists(_strtoui64_l stdlib.h FLATBUFFERS_HAS_STRTOULL_L)
+   else()
+-    check_cxx_symbol_exists(strtof_l stdlib.h FLATBUFFERS_LOCALE_INDEPENDENT)
++    check_cxx_symbol_exists(strtof_l stdlib.h FLATBUFFERS_HAS_STRTOF_L)
++    check_cxx_symbol_exists(strtoull_l stdlib.h FLATBUFFERS_HAS_STRTOULL_L)
++  endif()
++  if(FLATBUFFERS_HAS_STRTOF_L AND FLATBUFFERS_HAS_STRTOULL_L)
++    set(FLATBUFFERS_LOCALE_INDEPENDENT 1)
+   endif()
+ endif()
+ add_definitions(-DFLATBUFFERS_LOCALE_INDEPENDENT=$<BOOL:${FLATBUFFERS_LOCALE_INDEPENDENT}>)
diff --git a/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.10.0.bb b/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.11.0.bb
similarity index 80%
rename from meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.10.0.bb
rename to meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.11.0.bb
index 452e1e6..bd6dcef 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.10.0.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.11.0.bb
@@ -10,9 +10,11 @@
 
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=a873c5645c184d51e0f9b34e1d7cf559"
 
-SRCREV = "c0698cc33f1e534bb59c455909b88cc2726089af"
+SRCREV = "9e7e8cbe9f675123dd41b7c62868acad39188cae"
 
-SRC_URI = "git://github.com/google/flatbuffers.git"
+SRC_URI = "git://github.com/google/flatbuffers.git \
+           file://0001-Add-detection-of-strtoull_l-function.patch \
+          "
 
 # Make sure C++11 is used, required for example for GCC 4.9
 CXXFLAGS += "-std=c++11"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
index 5c4e7c5..bb21cbc 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
@@ -14,7 +14,6 @@
 SRCREV = "c22d359433b333937ee3d803450dc41998115685"
 
 DEPENDS = "elfutils"
-RDEPENDS_${PN} = "elfutils"
 SRC_URI = "git://github.com/sparkleholic/ltrace.git;branch=master;protocol=http \
            file://configure-allow-to-disable-selinux-support.patch \
            file://0001-replace-readdir_r-with-readdir.patch \
diff --git a/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.1910.0.bb b/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.1910.0.bb
index f50f9a3..8287d2b 100644
--- a/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.1910.0.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.1910.0.bb
@@ -39,6 +39,7 @@
 
 EXTRA_OECONF += "--disable-generate-man-pages ap_cv_atomic_builtins=yes"
 EXTRA_OECONF += "--enable-imfile-tests"
+EXTRA_OECONF_remove_mipsarch = "ap_cv_atomic_builtins=yes"
 
 # first line is default yes in configure
 PACKAGECONFIG ??= " \
diff --git a/meta-openembedded/meta-oe/recipes-extended/upm/upm/0001-nmea_gps-Link-with-latomic.patch b/meta-openembedded/meta-oe/recipes-extended/upm/upm/0001-nmea_gps-Link-with-latomic.patch
new file mode 100644
index 0000000..c16b8db
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/upm/upm/0001-nmea_gps-Link-with-latomic.patch
@@ -0,0 +1,27 @@
+From 996d37fc0b7177ee57788399b9140032d5de2765 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 18 Nov 2019 15:50:02 -0800
+Subject: [PATCH] nmea_gps: Link with latomic
+
+clang/x86 ends up with missing symbols for atomics due to atomic<double>
+with libstdc++, it works ok with libc++
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/nmea_gps/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/nmea_gps/CMakeLists.txt b/src/nmea_gps/CMakeLists.txt
+index b3fb6591..5280bfed 100644
+--- a/src/nmea_gps/CMakeLists.txt
++++ b/src/nmea_gps/CMakeLists.txt
+@@ -6,4 +6,4 @@ upm_mixed_module_init (NAME nmea_gps
+     CPP_SRC nmea_gps.cxx
+     FTI_SRC nmea_gps_fti.c
+     CPP_WRAPS_C
+-    REQUIRES mraa utilities-c ${CMAKE_THREAD_LIBS_INIT})
++    REQUIRES mraa utilities-c atomic ${CMAKE_THREAD_LIBS_INIT})
+-- 
+2.24.0
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/upm/upm_git.bb b/meta-openembedded/meta-oe/recipes-extended/upm/upm_git.bb
index fb22e83..dbe9737 100644
--- a/meta-openembedded/meta-oe/recipes-extended/upm/upm_git.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/upm/upm_git.bb
@@ -15,6 +15,8 @@
            file://0001-Use-stdint-types.patch \
            "
 
+SRC_URI_append_toolchain-clang_x86 = " file://0001-nmea_gps-Link-with-latomic.patch "
+
 S = "${WORKDIR}/git"
 
 # Depends on mraa which only supports x86 and ARM for now
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/gmime/iconv-detect.h b/meta-openembedded/meta-oe/recipes-gnome/gmime/gmime/iconv-detect.h
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/pidgin/gmime/iconv-detect.h
rename to meta-openembedded/meta-oe/recipes-gnome/gmime/gmime/iconv-detect.h
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/gmime/nodolt.patch b/meta-openembedded/meta-oe/recipes-gnome/gmime/gmime/nodolt.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/pidgin/gmime/nodolt.patch
rename to meta-openembedded/meta-oe/recipes-gnome/gmime/gmime/nodolt.patch
diff --git a/meta-openembedded/meta-oe/recipes-gnome/gmime/gmime_3.2.5.bb b/meta-openembedded/meta-oe/recipes-gnome/gmime/gmime_3.2.5.bb
new file mode 100644
index 0000000..568083b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-gnome/gmime/gmime_3.2.5.bb
@@ -0,0 +1,16 @@
+LICENSE = "LGPL-2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
+DESCRIPTION = "Runtime libraries for parsing and creating MIME mail"
+SECTION = "libs"
+DEPENDS = "glib-2.0 zlib"
+
+inherit gnomebase gobject-introspection
+
+SRC_URI += "file://iconv-detect.h \
+            file://nodolt.patch"
+
+SRC_URI[archive.md5sum] = "98970e3995e67ac3f23827ff52308f9e"
+SRC_URI[archive.sha256sum] = "fb7556501f85c3bf3e65fdd82697cbc4fa4b55dccd33ad14239ce0197e78ba59"
+
+export ac_cv_have_iconv_detect_h="yes"
+do_configure_append = "cp ${WORKDIR}/iconv-detect.h ${S}"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/surf/surf/0001-config.mk-Fix-compiler-and-linker.patch b/meta-openembedded/meta-oe/recipes-graphics/surf/surf/0001-config.mk-Fix-compiler-and-linker.patch
new file mode 100644
index 0000000..fb90432
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/surf/surf/0001-config.mk-Fix-compiler-and-linker.patch
@@ -0,0 +1,41 @@
+From e97bb73851f5bbd94260da553a222526485cdfb1 Mon Sep 17 00:00:00 2001
+From: Leon Anavi <leon.anavi@konsulko.com>
+Date: Fri, 15 Nov 2019 18:24:42 +0000
+Subject: [PATCH] config.mk: Fix compiler and linker
+
+Do not set explicitly compiler and linker.
+
+Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
+---
+ config.mk | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/config.mk b/config.mk
+index df6e812..5deb991 100644
+--- a/config.mk
++++ b/config.mk
+@@ -15,17 +15,17 @@ GTKINC = `pkg-config --cflags gtk+-3.0 webkit2gtk-4.0`
+ GTKLIB = `pkg-config --libs gtk+-3.0 webkit2gtk-4.0`
+ 
+ # includes and libs
+-INCS = -I. -I/usr/include -I${X11INC} ${GTKINC}
+-LIBS = -L/usr/lib -lc -L${X11LIB} -lX11 ${GTKLIB} -lgthread-2.0
++INCS = ${GTKINC}
++LIBS = -lc -lX11 ${GTKLIB} -lgthread-2.0
+ 
+ # flags
+ CPPFLAGS = -DVERSION=\"${VERSION}\" -DWEBEXTDIR=\"${LIBPREFIX}\" -D_DEFAULT_SOURCE
+ CFLAGS = -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
+-LDFLAGS = -s ${LIBS}
++LDFLAGS = ${LIBS}
+ 
+ # Solaris
+ #CFLAGS = -fast ${INCS} -DVERSION=\"${VERSION}\"
+ #LDFLAGS = ${LIBS}
+ 
+ # compiler and linker
+-CC = cc
++CC ?= cc
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-oe/recipes-graphics/surf/surf_2.0.bb b/meta-openembedded/meta-oe/recipes-graphics/surf/surf_2.0.bb
new file mode 100644
index 0000000..5b03f8b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/surf/surf_2.0.bb
@@ -0,0 +1,25 @@
+SUMMARY = "Simple web browser"
+DESCRIPTION = "Simple open source web browser based on WebKit2/GTK"
+HOMEPAGE = "https://surf.suckless.org/"
+SECTION = "x11/graphics"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=b57e7f7720307a02d5a6598b00fe3afa"
+
+DEPENDS = "webkitgtk gtk+3 glib-2.0"
+
+REQUIRED_DISTRO_FEATURES = "x11"
+
+SRC_URI = "git://git.suckless.org/surf;branch=surf-webkit2 \
+           file://0001-config.mk-Fix-compiler-and-linker.patch \
+"
+SRCREV = "b814567e2bf8bda07cea8de1c7a062f4aa437b65"
+
+S = "${WORKDIR}/git"
+
+inherit pkgconfig distro_features_check
+
+TARGET_CC_ARCH += "${LDFLAGS}"
+
+do_install () {
+	install -D -m 0755 ${S}/surf ${D}${bindir}/surf
+}
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/libmad/libmad/0004-Remove-clang-unsupported-compiler-flags.patch b/meta-openembedded/meta-oe/recipes-multimedia/libmad/libmad/0004-Remove-clang-unsupported-compiler-flags.patch
index 5bfce4d..70723f2 100644
--- a/meta-openembedded/meta-oe/recipes-multimedia/libmad/libmad/0004-Remove-clang-unsupported-compiler-flags.patch
+++ b/meta-openembedded/meta-oe/recipes-multimedia/libmad/libmad/0004-Remove-clang-unsupported-compiler-flags.patch
@@ -7,37 +7,77 @@
  configure.ac | 12 ++++++------
  1 file changed, 6 insertions(+), 6 deletions(-)
 
-diff --git a/configure.ac b/configure.ac
-index 4fcd48b..40302db 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -140,20 +140,20 @@ then
-     case "$optimize" in
- 	-O|"-O "*)
- 	    optimize="-O"
+@@ -124,70 +124,7 @@ done
+ 
+ if test "$GCC" = yes
+ then
+-    if test -z "$arch"
+-    then
+-	case "$host" in
+-	    i386-*)           ;;
+-	    i?86-*)           arch="-march=i486" ;;
+-	    arm*-empeg-*)     arch="-march=armv4 -mtune=strongarm1100" ;;
+-	    armv4*-*)         arch="-march=armv4 -mtune=strongarm" ;;
+-	    powerpc-*)        ;;
+-	    mips*-agenda-*)   arch="-mcpu=vr4100" ;;
+-	    mips*-luxsonor-*) arch="-mips1 -mcpu=r3000 -Wa,-m4010" ;;
+-	esac
+-    fi
+-
+-    case "$optimize" in
+-	-O|"-O "*)
+-	    optimize="-O"
 -	    optimize="$optimize -fforce-addr"
-+	    : #optimize="$optimize -fforce-addr"
- 	    : #x optimize="$optimize -finline-functions"
- 	    : #- optimize="$optimize -fstrength-reduce"
+-	    : #x optimize="$optimize -finline-functions"
+-	    : #- optimize="$optimize -fstrength-reduce"
 -	    optimize="$optimize -fthread-jumps"
 -	    optimize="$optimize -fcse-follow-jumps"
 -	    optimize="$optimize -fcse-skip-blocks"
-+	    : #optimize="$optimize -fthread-jumps"
-+	    : #optimize="$optimize -fcse-follow-jumps"
-+	    : #optimize="$optimize -fcse-skip-blocks"
- 	    : #x optimize="$optimize -frerun-cse-after-loop"
- 	    : #x optimize="$optimize -frerun-loop-opt"
- 	    : #x optimize="$optimize -fgcse"
- 	    optimize="$optimize -fexpensive-optimizations"
+-	    : #x optimize="$optimize -frerun-cse-after-loop"
+-	    : #x optimize="$optimize -frerun-loop-opt"
+-	    : #x optimize="$optimize -fgcse"
+-	    optimize="$optimize -fexpensive-optimizations"
 -	    optimize="$optimize -fregmove"
-+	    : #optimize="$optimize -fregmove"
- 	    : #* optimize="$optimize -fdelayed-branch"
- 	    : #x optimize="$optimize -fschedule-insns"
+-	    : #* optimize="$optimize -fdelayed-branch"
+-	    : #x optimize="$optimize -fschedule-insns"
 -	    optimize="$optimize -fschedule-insns2"
-+	    : #optimize="$optimize -fschedule-insns2"
- 	    : #? optimize="$optimize -ffunction-sections"
- 	    : #? optimize="$optimize -fcaller-saves"
- 	    : #> optimize="$optimize -funroll-loops"
--- 
-2.1.0
-
+-	    : #? optimize="$optimize -ffunction-sections"
+-	    : #? optimize="$optimize -fcaller-saves"
+-	    : #> optimize="$optimize -funroll-loops"
+-	    : #> optimize="$optimize -funroll-all-loops"
+-	    : #x optimize="$optimize -fmove-all-movables"
+-	    : #x optimize="$optimize -freduce-all-givs"
+-	    : #? optimize="$optimize -fstrict-aliasing"
+-	    : #* optimize="$optimize -fstructure-noalias"
+-
+-	    case "$host" in
+-		arm*-*)
+-		    optimize="$optimize -fstrength-reduce"
+-		    ;;
+-		mips*-*)
+-		    optimize="$optimize -fstrength-reduce"
+-		    optimize="$optimize -finline-functions"
+-		    ;;
+-		i?86-*)
+-		    optimize="$optimize -fstrength-reduce"
+-		    ;;
+-		powerpc-apple-*)
+-		    # this triggers an internal compiler error with gcc2
+-		    : #optimize="$optimize -fstrength-reduce"
+-
+-		    # this is really only beneficial with gcc3
+-		    : #optimize="$optimize -finline-functions"
+-		    ;;
+-		*)
+-		    # this sometimes provokes bugs in gcc 2.95.2
+-		    : #optimize="$optimize -fstrength-reduce"
+-		    ;;
+-	    esac
+-	    ;;
+-    esac
++	optimize="-O2"
+ fi
+ 
+ case "$host" in
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/libmad/libmad/fix_for_mips_with_gcc-4.5.0.patch b/meta-openembedded/meta-oe/recipes-multimedia/libmad/libmad/fix_for_mips_with_gcc-4.5.0.patch
index 01c7aa3..5bc91f3 100644
--- a/meta-openembedded/meta-oe/recipes-multimedia/libmad/libmad/fix_for_mips_with_gcc-4.5.0.patch
+++ b/meta-openembedded/meta-oe/recipes-multimedia/libmad/libmad/fix_for_mips_with_gcc-4.5.0.patch
@@ -11,15 +11,13 @@
 2010/07/29
 Nitin A Kamble <nitin.a.kamble@intel.com>
 
-Index: libmad-0.15.1b/fixed.h
-===================================================================
---- libmad-0.15.1b.orig/fixed.h
-+++ libmad-0.15.1b/fixed.h
+--- a/fixed.h
++++ b/fixed.h
 @@ -297,6 +297,15 @@ mad_fixed_t mad_f_mul_inline(mad_fixed_t
  
  /* --- MIPS ---------------------------------------------------------------- */
  
-+# elif defined(FPM_MIPS) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4))
++# elif defined(FPM_MIPS) && (defined(__clang__) || __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4))
 +    typedef unsigned int u64_di_t __attribute__ ((mode (DI)));
 +#   define MAD_F_MLX(hi, lo, x, y) \
 +    do { \
diff --git a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.7.bb b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.7.bb
index fdb8251..731c835 100644
--- a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.7.bb
+++ b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.7.bb
@@ -2,7 +2,6 @@
 HOMEPAGE = "https://github.com/gperftools/gperftools"
 LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "file://COPYING;md5=762732742c73dc6c7fbe8632f06c059a"
-DEPENDS += "libunwind"
 
 SRCREV = "9608fa3bcf8020d35f59fbf70cd3cbe4b015b972"
 SRC_URI = "git://github.com/gperftools/gperftools \
@@ -20,7 +19,7 @@
 # On mips, we have the following error.
 #   do_page_fault(): sending SIGSEGV to ls for invalid read access from 00000008
 #   Segmentation fault (core dumped)
-COMPATIBLE_HOST_mipsarch_libc-glibc = "null"
+COMPATIBLE_HOST_mipsarch = "null"
 # Disable thumb1
 # {standard input}: Assembler messages:
 # {standard input}:434: Error: lo register required -- `ldr pc,[sp]'
@@ -28,9 +27,11 @@
 ARM_INSTRUCTION_SET_armv5 = "arm"
 ARM_INSTRUCTION_SET_toolchain-clang_arm = "arm"
 
-# Ensure static libs are always enabled, as they seem to be not produced by
-# default at least on ARM.
-EXTRA_OECONF_append += " --enable-static"
+PACKAGECONFIG ?= "libunwind static"
+PACKAGECONFIG_remove_arm_libc-musl = "libunwind"
+
+PACKAGECONFIG[libunwind] = "--enable-libunwind,--disable-libunwind,libunwind"
+PACKAGECONFIG[static] = "--enable-static,--disable-static,"
 
 PACKAGE_BEFORE_PN += "libtcmalloc-minimal"
 FILES_libtcmalloc-minimal = "${libdir}/libtcmalloc_minimal*${SOLIBS} ${libdir}/libtcmalloc_minimal_debug*${SOLIBS}"
diff --git a/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod.inc b/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod.inc
index 89679cb..07ce35a 100644
--- a/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod.inc
+++ b/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod.inc
@@ -8,11 +8,9 @@
 inherit autotools pkgconfig
 
 PACKAGECONFIG[tests] = "--enable-tests,--disable-tests,kmod udev"
-PACKAGECONFIG[tools] = "--enable-tools,--disable-tools,"
+
+EXTRA_OECONF = "--enable-tools"
 
 PACKAGES =+ " ${PN}-tools"
 
 FILES_${PN}-tools = "${bindir}/*"
-
-RRECOMMENDS_TOOLS = "${@bb.utils.contains('PACKAGECONFIG', 'tools', '${PN}-tools', '',d)}"
-RRECOMMENDS_${PN} += "${RRECOMMENDS_TOOLS}"
diff --git a/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_0.3.3.bb b/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_0.3.3.bb
index 3ecfffd..c4d2bdd 100644
--- a/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_0.3.3.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_0.3.3.bb
@@ -1,7 +1,6 @@
 require libgpiod.inc
 
-# enable tools
-PACKAGECONFIG ?= "tools"
+PACKAGECONFIG ?= ""
 
 PACKAGECONFIG[tests] = "--enable-tests,--disable-tests,kmod udev"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.4.1.bb b/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.4.1.bb
index d559028..0391deb 100644
--- a/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.4.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.4.1.bb
@@ -5,8 +5,8 @@
 SRC_URI[md5sum] = "585b4bb431f99c4ba9b3ee58b9d494c1"
 SRC_URI[sha256sum] = "21ae8fd1f8dafc2eb2ba50e652390cf533d21351419a7426255895cb52e21b1c"
 
-# enable tools and cxx bindings
-PACKAGECONFIG ?= "cxx tools"
+# enable cxx bindings
+PACKAGECONFIG ?= "cxx"
 
 PACKAGECONFIG[cxx] = "--enable-bindings-cxx,--disable-bindings-cxx"
 PACKAGECONFIG[tests] = "--enable-tests,--disable-tests,kmod udev"
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/gmime_3.2.4.bb b/meta-openembedded/meta-oe/recipes-support/pidgin/gmime_3.2.4.bb
deleted file mode 100644
index dcdaed5..0000000
--- a/meta-openembedded/meta-oe/recipes-support/pidgin/gmime_3.2.4.bb
+++ /dev/null
@@ -1,23 +0,0 @@
-LICENSE = "LGPL-2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
-DESCRIPTION = "Runtime libraries for parsing and creating MIME mail"
-SECTION = "libs"
-DEPENDS = "glib-2.0 zlib"
-
-inherit gnomebase autotools gobject-introspection
-
-SRC_URI += "file://iconv-detect.h \
-            file://nodolt.patch"
-
-SRC_URI[archive.md5sum] = "b6b4e9fdc8f3336551d23872c83b539a"
-SRC_URI[archive.sha256sum] = "249ea7c0e080b067aa9669162c36b181b402f6cf6cebc4999d838c6f1e81d024"
-
-EXTRA_OECONF_remove = "--disable-schemas-install"
-
-export ac_cv_have_iconv_detect_h="yes"
-do_configure_append = "cp ${WORKDIR}/iconv-detect.h ${S}"
-
-# we do not need GNOME 1 gnome-config support
-do_install_append () {
-    rm -f ${D}${libdir}/gmimeConf.sh
-}
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe/0001-Align-structs-casts-with-time_t-elements-to-8byte-bo.patch b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe/0001-Align-structs-casts-with-time_t-elements-to-8byte-bo.patch
new file mode 100644
index 0000000..87a6435
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe/0001-Align-structs-casts-with-time_t-elements-to-8byte-bo.patch
@@ -0,0 +1,50 @@
+From 1110d3036e73d0571f70f6758f3179e5048c0b5d Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 16 Nov 2019 11:07:42 -0800
+Subject: [PATCH] Align structs casts with time_t elements to 8byte boundary
+
+This helps with 64bit time_t conversion, especially where these
+structures are typcasted to another struct types which have time_t
+element, that now increases the natural alignment boundary of structures
+to 8-bytes.
+
+Fixes
+../../../pidgin-sipe-1.25.0/src/core/sipe-user.c:124:43: error: cast from 'struct sipe_core_public *' to 'struct sipe_core_private *' increases required alignment from 4 to 8 [-Werror,-Wcast-align]
+        struct sipe_core_private *sipe_private = SIPE_CORE_PRIVATE;
+                                                 ^~~~~~~~~~~~~~~~~
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/api/sipe-core.h            | 2 +-
+ src/core/sipe-http-transport.h | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/api/sipe-core.h b/src/api/sipe-core.h
+index cde0a9c..bd818bb 100644
+--- a/src/api/sipe-core.h
++++ b/src/api/sipe-core.h
+@@ -148,7 +148,7 @@ struct sipe_core_public {
+ 
+ 	/* server information */
+ 	/* currently nothing */
+-};
++} __attribute__((aligned(8)));
+ 
+ /**
+  * Initialize & destroy functions for the SIPE core
+diff --git a/src/core/sipe-http-transport.h b/src/core/sipe-http-transport.h
+index d82cd1b..08eb150 100644
+--- a/src/core/sipe-http-transport.h
++++ b/src/core/sipe-http-transport.h
+@@ -46,7 +46,7 @@ struct sipe_http_connection_public {
+ 	gchar *host;
+ 	guint32 port;
+ 	gboolean connected;
+-};
++} __attribute__((aligned(8)));
+ 
+ /**
+  * Check if we're shutting down the HTTP stack
+-- 
+2.24.0
+
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe_1.25.0.bb b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe_1.25.0.bb
index 7dc6316..99fcf3c 100644
--- a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe_1.25.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe_1.25.0.bb
@@ -9,6 +9,7 @@
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/sipe/pidgin-sipe-${PV}.tar.xz \
            file://0001-sipe-consider-64bit-time_t-when-printing.patch \
+           file://0001-Align-structs-casts-with-time_t-elements-to-8byte-bo.patch \
 "
 
 SRC_URI[md5sum] = "0e742f021dc8c3f17435aea05c3e0314"
diff --git a/meta-openembedded/meta-oe/recipes-support/poppler/poppler/0001-Do-not-overwrite-all-our-build-flags.patch b/meta-openembedded/meta-oe/recipes-support/poppler/poppler/0001-Do-not-overwrite-all-our-build-flags.patch
index 18f5085..05e0abe 100644
--- a/meta-openembedded/meta-oe/recipes-support/poppler/poppler/0001-Do-not-overwrite-all-our-build-flags.patch
+++ b/meta-openembedded/meta-oe/recipes-support/poppler/poppler/0001-Do-not-overwrite-all-our-build-flags.patch
@@ -13,11 +13,9 @@
  cmake/modules/PopplerMacros.cmake | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
 
-diff --git a/cmake/modules/PopplerMacros.cmake b/cmake/modules/PopplerMacros.cmake
-index ccb2790..0f392cb 100644
 --- a/cmake/modules/PopplerMacros.cmake
 +++ b/cmake/modules/PopplerMacros.cmake
-@@ -125,14 +125,14 @@ if(CMAKE_COMPILER_IS_GNUCXX)
+@@ -123,14 +123,14 @@ if(CMAKE_COMPILER_IS_GNUCXX)
    set(DEFAULT_COMPILE_WARNINGS_EXTRA "${_warn} ${_warnx}")
  
    set(_save_cxxflags "${CMAKE_CXX_FLAGS}")
@@ -34,5 +32,21 @@
    set(CMAKE_C_FLAGS_RELWITHDEBINFO   "-O2 -g ${_save_cflags}")
    set(CMAKE_C_FLAGS_RELEASE          "-O2 -DNDEBUG ${_save_cflags}")
    set(CMAKE_C_FLAGS_DEBUG            "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline ${_save_cflags}")
--- 
-2.14.3
+@@ -167,7 +167,7 @@ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL
+   set(DEFAULT_COMPILE_WARNINGS_EXTRA "${_warn} ${_warnx}")
+ 
+   set(_save_cxxflags "${CMAKE_CXX_FLAGS}")
+-  set(CMAKE_CXX_FLAGS                "-fno-exceptions -fno-check-new -fno-common -D_DEFAULT_SOURCE")
++  set(CMAKE_CXX_FLAGS                "-fno-exceptions -fno-check-new -fno-common -D_DEFAULT_SOURCE ${_save_cxxflags}")
+   set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g ${_save_cxxflags}")
+   set(CMAKE_CXX_FLAGS_RELEASE        "-O2 -DNDEBUG ${_save_cxxflags}")
+   # clang does not support -fno-reorder-blocks -fno-schedule-insns, so do not use -O2
+@@ -175,7 +175,7 @@ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL
+   set(CMAKE_CXX_FLAGS_DEBUGFULL      "-g3 -fno-inline ${_save_cxxflags}")
+   set(CMAKE_CXX_FLAGS_PROFILE        "-g3 -fno-inline -ftest-coverage -fprofile-arcs ${_save_cxxflags}")
+   set(_save_cflags "${CMAKE_C_FLAGS}")
+-  set(CMAKE_C_FLAGS                  "-std=c99 -D_DEFAULT_SOURCE")
++  set(CMAKE_C_FLAGS                  "-std=c99 -D_DEFAULT_SOURCE ${_save_cflags}")
+   set(CMAKE_C_FLAGS_RELWITHDEBINFO   "-O2 -g ${_save_cflags}")
+   set(CMAKE_C_FLAGS_RELEASE          "-O2 -DNDEBUG ${_save_cflags}")
+   # clang does not support -fno-reorder-blocks -fno-schedule-insns, so do not use -O2
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-jsonschema.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-jsonschema.inc
index 1841b58..837d576 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-jsonschema.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-jsonschema.inc
@@ -1,15 +1,37 @@
 SUMMARY = "An implementation of JSON Schema validation for Python"
+HOMEPAGE = "https://github.com/Julian/jsonschema"
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=7a60a81c146ec25599a3e1dabb8610a8"
+LIC_FILES_CHKSUM = "file://COPYING;md5=7a60a81c146ec25599a3e1dabb8610a8 \
+                    file://json/LICENSE;md5=9d4de43111d33570c8fe49b4cb0e01af"
+DEPENDS += "${PYTHON_PN}-vcversioner-native ${PYTHON_PN}-setuptools-scm-native"
+
+FILESEXTRAPATHS_prepend := "${THISDIR}/python-jsonschema:"
+
+SRC_URI_append = " file://0001-setup.cfg-add-non-GPL-format-option.patch"
 
 SRC_URI[md5sum] = "a802ab85600074a726ef6acc4e6a8148"
 SRC_URI[sha256sum] = "2fa0684276b6333ff3c0b1b27081f4b2305f0a36cf702a23db50edb141893c3f"
 
-DEPENDS += "${PYTHON_PN}-vcversioner-native ${PYTHON_PN}-setuptools-scm-native"
+PACKAGECONFIG ??= "format"
+PACKAGECONFIG[format] = ",,,\
+    ${PYTHON_PN}-idna \
+    ${PYTHON_PN}-jsonpointer \
+    ${PYTHON_PN}-webcolors \
+    ${PYTHON_PN}-rfc3987 \
+    ${PYTHON_PN}-strict-rfc3339 \
+"
+PACKAGECONFIG[nongpl] = ",,,\
+    ${PYTHON_PN}-idna \
+    ${PYTHON_PN}-jsonpointer \
+    ${PYTHON_PN}-webcolors \
+    ${PYTHON_PN}-rfc3986-validator \
+    ${PYTHON_PN}-rfc3339-validator \
+"
 
 RDEPENDS_${PN} += " \
     ${PYTHON_PN}-attrs \
     ${PYTHON_PN}-core \
+    ${PYTHON_PN}-datetime \
     ${PYTHON_PN}-importlib-metadata \
     ${PYTHON_PN}-io \
     ${PYTHON_PN}-json \
@@ -18,9 +40,8 @@
     ${PYTHON_PN}-pkgutil \
     ${PYTHON_PN}-pprint \
     ${PYTHON_PN}-pyrsistent \
-    ${PYTHON_PN}-rfc3987 \
     ${PYTHON_PN}-shell \
-    ${PYTHON_PN}-strict-rfc3339 \
+    ${PYTHON_PN}-six \
     ${PYTHON_PN}-unittest \
     ${PYTHON_PN}-setuptools-scm \
 "
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-jsonschema/0001-setup.cfg-add-non-GPL-format-option.patch b/meta-openembedded/meta-python/recipes-devtools/python/python-jsonschema/0001-setup.cfg-add-non-GPL-format-option.patch
new file mode 100644
index 0000000..afc38a3
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-jsonschema/0001-setup.cfg-add-non-GPL-format-option.patch
@@ -0,0 +1,96 @@
+From 8df0332475991884b8e1801d31f9c3e06d06bf9f Mon Sep 17 00:00:00 2001
+From: Nicola Lunghi <nick83ola@gmail.com>
+Date: Thu, 14 Nov 2019 18:58:56 +0000
+Subject: [PATCH] setup.cfg: add non GPL format option
+
+This is a rewrite of the following upstream commits:
+
+ - 10f8a3e Add format validators as separate modules
+ - af37707 non GPL format option
+
+removing all the non necessary bits (tox in particular)
+
+Original author: Nicolas Aimetti <naimetti@yahoo.com.ar>
+
+Upstream-status: Backported. [ to be removed for releases > 3.1.1 ]
+---
+ jsonschema/_format.py | 33 ++++++++++++++++++++++++++++-----
+ setup.cfg             |  6 ++++++
+ 2 files changed, 34 insertions(+), 5 deletions(-)
+
+diff --git a/jsonschema/_format.py b/jsonschema/_format.py
+index aa04090..c967d98 100644
+--- a/jsonschema/_format.py
++++ b/jsonschema/_format.py
+@@ -248,7 +248,26 @@ else:
+ try:
+     import rfc3987
+ except ImportError:
+-    pass
++    try:
++        from rfc3986_validator import validate_rfc3986
++    except ImportError:
++        pass
++    else:
++        @_checks_drafts(name="uri",)
++        def is_uri(instance):
++            if not isinstance(instance, str_types):
++                return True
++            return validate_rfc3986(instance, rule="URI")
++
++        @_checks_drafts(
++            draft6="uri-reference",
++            draft7="uri-reference",
++            raises=ValueError,
++        )
++        def is_uri_reference(instance):
++            if not isinstance(instance, str_types):
++                return True
++            return validate_rfc3986(instance, rule="URI_reference")
+ else:
+     @_checks_drafts(draft7="iri", raises=ValueError)
+     def is_iri(instance):
+@@ -280,15 +299,19 @@ else:
+ 
+ 
+ try:
+-    import strict_rfc3339
++    from strict_rfc3339 import validate_rfc3339
+ except ImportError:
+-    pass
+-else:
++    try:
++        from rfc3339_validator import validate_rfc3339
++    except ImportError:
++        validate_rfc3339 = None
++
++if validate_rfc3339:
+     @_checks_drafts(name="date-time")
+     def is_datetime(instance):
+         if not isinstance(instance, str_types):
+             return True
+-        return strict_rfc3339.validate_rfc3339(instance)
++        return validate_rfc3339(instance)
+ 
+     @_checks_drafts(draft7="time")
+     def is_time(instance):
+diff --git a/setup.cfg b/setup.cfg
+index 74bc4a7..878221c 100644
+--- a/setup.cfg
++++ b/setup.cfg
+@@ -40,6 +40,12 @@ format =
+ 	rfc3987
+ 	strict-rfc3339
+ 	webcolors
++format_nongpl =
++	idna
++	jsonpointer>1.13
++	webcolors
++	rfc3986-validator>0.1.0
++	rfc3339-validator
+ 
+ [options.entry_points]
+ console_scripts = 
+-- 
+2.20.1
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-apply-defaults_0.1.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-apply-defaults_0.1.4.bb
new file mode 100644
index 0000000..8d23678
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-apply-defaults_0.1.4.bb
@@ -0,0 +1,15 @@
+SUMMARY = "Apply values to optional params"
+HOMEPAGE = "https://github.com/bcb/apply_defaults"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=c89120516900f96f4c60d35fdc4c3f15"
+
+PYPI_PACKAGE = "apply_defaults"
+
+SRC_URI[md5sum] = "719abb133f4b46283ebd940fcdf30a78"
+SRC_URI[sha256sum] = "1ce26326a61d8773d38a9726a345c6525a91a6120d7333af79ad792dacb6246c"
+
+inherit pypi setuptools3
+
+RDEPENDS_${PN} += "python3-core"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonrpcserver_4.0.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonrpcserver_4.0.5.bb
new file mode 100644
index 0000000..bf9eb0a
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonrpcserver_4.0.5.bb
@@ -0,0 +1,23 @@
+SUMMARY = "Library to process JSON-RPC requests"
+HOMEPAGE = "https://github.com/bcb/jsonrpcserver"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=c89120516900f96f4c60d35fdc4c3f15"
+
+SRC_URI[md5sum] = "d41e9f6b310cb29b0d8f213ff9d57567"
+SRC_URI[sha256sum] = "240c517f49b0fdd3bfa428c9a7cc581126a0c43eca60d29762da124017d9d9f4"
+
+inherit pypi setuptools3
+
+RDEPENDS_${PN} += "\
+    python3-apply-defaults \
+    python3-asyncio \
+    python3-core \
+    python3-json \
+    python3-jsonschema \
+    python3-logging \
+    python3-netclient \
+    python3-pkgutil \
+    python3-typing \
+"
+
+BBCLASSEXTEND = "native nativesdk"
\ No newline at end of file
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/nginx/nginx.inc b/meta-openembedded/meta-webserver/recipes-httpd/nginx/nginx.inc
index e202e85..0d229ff 100644
--- a/meta-openembedded/meta-webserver/recipes-httpd/nginx/nginx.inc
+++ b/meta-openembedded/meta-webserver/recipes-httpd/nginx/nginx.inc
@@ -93,9 +93,9 @@
             >> ${D}${sysconfdir}/tmpfiles.d/${BPN}.conf
     fi
     install -d ${D}${sysconfdir}/${BPN}
-    ln -snf ${localstatedir}/run/${BPN} ${D}${sysconfdir}/${BPN}/run
+    lnr ${D}${localstatedir}/run/${BPN} ${D}${sysconfdir}/${BPN}/run
     install -d ${D}${NGINX_WWWDIR}
-    mv ${D}/usr/html ${D}${NGINX_WWWDIR}/
+    mv ${D}${exec_prefix}/html ${D}${NGINX_WWWDIR}/
     chown ${NGINX_USER}:www-data -R ${D}${NGINX_WWWDIR}
 
     install -d ${D}${sysconfdir}/init.d