diff --git a/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2/python3.patch b/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2/python3.patch
new file mode 100644
index 0000000..df208cf
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2/python3.patch
@@ -0,0 +1,12 @@
+Use Python 3 instead of Python 2.
+
+Upstream-Status: Pending
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+diff --git a/waf b/waf
+index 6ce2a24..de3c898 100755
+--- a/waf
++++ b/waf
+@@ -1 +1 @@
+-#!/usr/bin/env python
++#!/usr/bin/env python3
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb b/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb
index d590b05..50b553c 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb
@@ -10,12 +10,13 @@
 
 DEPENDS = "libpng jpeg udev"
 
-PV = "20190205+${SRCPV}"
+PV = "20190904+${SRCPV}"
 
 COMPATIBLE_HOST_rpi  = "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '.*-linux*', 'null', d)}"
 
-SRC_URI = "git://github.com/glmark2/glmark2.git;protocol=https"
-SRCREV = "c17fd14505f30d9e4dbad276f7aa956fd21a637b"
+SRC_URI = "git://github.com/glmark2/glmark2.git;protocol=https \
+           file://python3.patch"
+SRCREV = "24a1139dcbfd86bd02065316eaa90559e39374e1"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/gattlib/files/dbus-avoid-strange-chars-from-the-build-dir.patch b/meta-openembedded/meta-oe/recipes-connectivity/gattlib/files/dbus-avoid-strange-chars-from-the-build-dir.patch
new file mode 100644
index 0000000..96e4f8d
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-connectivity/gattlib/files/dbus-avoid-strange-chars-from-the-build-dir.patch
@@ -0,0 +1,70 @@
+From 87df05c3f83c563af76ab00567e7a1ab7a6ebc88 Mon Sep 17 00:00:00 2001
+From: Peter Rosin <peda@axentia.se>
+Date: Sat, 9 Nov 2019 15:42:03 +0100
+Subject: [PATCH] dbus: avoid 'strange' chars from the build dir in #defines
+
+gdbus-codegen uses include guards with the full path dir, and if there
+are "bad" characters, such as '+', this fails miserably. E.g. Yocto has a
+tendency to build in directories named from the Yocto package version and
+that package version containing a '+' are not uncommon, and even the
+standard in certain scenarios such as when using ${SRCPV}.
+
+Avoid the problem of the full path "leaking" into the source by avoiding
+the normal include guards and request "#pragma once" instead.
+
+Signed-off-by: Peter Rosin <peda@axentia.se>
+---
+ dbus/CMakeLists.txt | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/dbus/CMakeLists.txt b/dbus/CMakeLists.txt
+index f5096ce10ecd..013c32239e12 100644
+--- a/dbus/CMakeLists.txt
++++ b/dbus/CMakeLists.txt
+@@ -43,37 +43,37 @@ else()
+ endif()
+ 
+ add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-adaptater1.c
+-                   COMMAND gdbus-codegen --interface-prefix org.bluez.Adapter1. --generate-c-code ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-adaptater1 ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.Adapter1.xml
++                   COMMAND gdbus-codegen --pragma-once --interface-prefix org.bluez.Adapter1. --generate-c-code ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-adaptater1 ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.Adapter1.xml
+                    DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.Adapter1.xml
+                    COMMENT "Generate D-Bus 'org.bluez.Adapter1.xml'"
+                    )
+ 
+ add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-device1.c
+-                   COMMAND gdbus-codegen --interface-prefix org.bluez.Device1. --generate-c-code ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-device1 ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.Device1.xml
++                   COMMAND gdbus-codegen --pragma-once --interface-prefix org.bluez.Device1. --generate-c-code ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-device1 ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.Device1.xml
+                    DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.Device1.xml
+                    COMMENT "Generate D-Bus 'org.bluez.Device1.xml'"
+                    )
+ 
+ add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-gattservice1.c
+-                   COMMAND gdbus-codegen --interface-prefix org.bluez.GattService1. --generate-c-code ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-gattservice1 ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.GattService1.xml
++                   COMMAND gdbus-codegen --pragma-once --interface-prefix org.bluez.GattService1. --generate-c-code ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-gattservice1 ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.GattService1.xml
+                    DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.GattService1.xml
+                    COMMENT "Generate D-Bus 'org.bluez.GattService1.xml'"
+                    )
+ 
+ add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-gattcharacteristic1.c
+-                   COMMAND gdbus-codegen --interface-prefix org.bluez.Characteristic1. --generate-c-code ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-gattcharacteristic1 ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.GattCharacteristic1.xml
++                   COMMAND gdbus-codegen --pragma-once --interface-prefix org.bluez.Characteristic1. --generate-c-code ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-gattcharacteristic1 ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.GattCharacteristic1.xml
+                    DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.GattCharacteristic1.xml
+                    COMMENT "Generate D-Bus 'org.bluez.GattCharacteristic1.xml'"
+                    )
+ 
+ add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-gattdescriptor1.c
+-                   COMMAND gdbus-codegen --interface-prefix org.bluez.Descriptor1. --generate-c-code ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-gattdescriptor1 ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.GattDescriptor1.xml
++                   COMMAND gdbus-codegen --pragma-once --interface-prefix org.bluez.Descriptor1. --generate-c-code ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-gattdescriptor1 ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.GattDescriptor1.xml
+                    DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.GattDescriptor1.xml
+                    COMMENT "Generate D-Bus 'org.bluez.GattDescriptor1.xml'"
+                    )
+ 
+ add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-battery1.c
+-                   COMMAND gdbus-codegen --interface-prefix org.bluez.Battery1. --generate-c-code ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-battery1 ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.Battery1.xml
++                   COMMAND gdbus-codegen --pragma-once --interface-prefix org.bluez.Battery1. --generate-c-code ${CMAKE_CURRENT_BINARY_DIR}/org-bluez-battery1 ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.Battery1.xml
+                    DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${DBUS_BLUEZ_API}/org.bluez.Battery1.xml
+                    COMMENT "Generate D-Bus 'org.bluez.Battery1.xml'"
+                    )
+-- 
+2.11.0
+
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/gattlib/gattlib_git.bb b/meta-openembedded/meta-oe/recipes-connectivity/gattlib/gattlib_git.bb
new file mode 100644
index 0000000..0e6fce9
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-connectivity/gattlib/gattlib_git.bb
@@ -0,0 +1,30 @@
+DESCRIPTION = "Bluetooth library with attribute support"
+SECTION = "libs/network"
+
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://CMakeLists.txt;beginline=1;endline=20;md5=8d5efeb9189b60866baff80ff791bf00"
+
+DEPENDS = "bluez5 glib-2.0"
+DEPENDS += "glib-2.0-native"
+
+PV = "0.2+git${SRCPV}"
+
+SRC_URI = "git://github.com/labapart/gattlib.git"
+SRC_URI += "file://dbus-avoid-strange-chars-from-the-build-dir.patch"
+
+SRCBRANCH = "master"
+SRCREV = "c6a33252221dff904cf277e085e2ce70aced8788"
+
+S = "${WORKDIR}/git"
+
+PACKAGECONFIG[examples] = "-DGATTLIB_BUILD_EXAMPLES=ON,-DGATTLIB_BUILD_EXAMPLES=OFF"
+
+# Set this to force use of DBus API if Bluez version is older than 5.42
+PACKAGECONFIG[force-dbus] = "-DGATTLIB_FORCE_DBUS=TRUE,-DGATTLIB_FORCE_DBUS=FALSE"
+
+EXTRA_OECMAKE += "-DGATTLIB_BUILD_DOCS=OFF"
+
+inherit pkgconfig cmake
+
+FILES_${PN} = "${libdir}/* ${includedir}/*"
+FILES_${PN}-dev = "${includedir}/*"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/libmbim/libmbim_1.20.0.bb b/meta-openembedded/meta-oe/recipes-connectivity/libmbim/libmbim_1.20.2.bb
similarity index 82%
rename from meta-openembedded/meta-oe/recipes-connectivity/libmbim/libmbim_1.20.0.bb
rename to meta-openembedded/meta-oe/recipes-connectivity/libmbim/libmbim_1.20.2.bb
index 17d7847..2c4a59f 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/libmbim/libmbim_1.20.0.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/libmbim/libmbim_1.20.2.bb
@@ -14,5 +14,5 @@
 SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BPN}-${PV}.tar.xz \
            file://clang.patch \
 "
-SRC_URI[md5sum] = "b5506db07fb2a0b118e0d6e59b3d5b8f"
-SRC_URI[sha256sum] = "2cf7c6c7aa9e962a589f61bff2766035b61792ef961131a21fcbbe043f91a866"
+SRC_URI[md5sum] = "988a6a7fd4a2f4e08c098992180e5b02"
+SRC_URI[sha256sum] = "550fb69e5e57f7646f8eb9ed8d24e44ea869ad846be9c162893f12e43528059b"
diff --git a/meta-openembedded/meta-oe/recipes-core/emlog/emlog.inc b/meta-openembedded/meta-oe/recipes-core/emlog/emlog.inc
new file mode 100644
index 0000000..9a0f9ba
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-core/emlog/emlog.inc
@@ -0,0 +1,13 @@
+DESCRIPTION = "emlog is a Linux kernel module that makes it easy to access the \
+most recent (and only the most recent) output from a process"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+
+SRC_URI = "git://github.com/nicupavel/emlog.git;protocol=http"
+SRCREV = "aee53e8dee862f35291242ba41b0ca88010f6c71"
+
+S = "${WORKDIR}/git"
+
+EXTRA_OEMAKE += " \
+    CFLAGS='${TARGET_CFLAGS}' \
+"
diff --git a/meta-openembedded/meta-oe/recipes-core/emlog/emlog/Drop-use-of-error-h.patch b/meta-openembedded/meta-oe/recipes-core/emlog/emlog/Drop-use-of-error-h.patch
new file mode 100644
index 0000000..6bfc44c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-core/emlog/emlog/Drop-use-of-error-h.patch
@@ -0,0 +1,113 @@
+From 41de28a92297f4cb0c5a8d7356cde9190176947b Mon Sep 17 00:00:00 2001
+From: Fabio Berton <fabio.berton@ossystems.com.br>
+Date: Thu, 14 Mar 2019 19:54:27 -0300
+Subject: [PATCH] Drop use of error.h
+Organization: O.S. Systems Software LTDA.
+
+The error.h does not work with musl and this project being embedded
+friendly it makes sense to avoid glibc-specific code.
+
+Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
+Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
+---
+ mkemlog.c | 29 ++++++++++++++---------------
+ 1 file changed, 14 insertions(+), 15 deletions(-)
+
+diff --git a/mkemlog.c b/mkemlog.c
+index e3354ed..7bcdfce 100644
+--- a/mkemlog.c
++++ b/mkemlog.c
+@@ -21,7 +21,6 @@
+ #include <unistd.h>
+ #include <fcntl.h>
+ #include <stdlib.h>
+-#include <error.h>
+ #include <errno.h>
+
+ #define EMLOG_DEVICE "/dev/emlog"
+@@ -40,16 +39,16 @@ int main(int argc, char** argv) {
+     FILE *max_size_file = NULL;
+     uid_t uid = -1;
+     if (argc < 2 || argc > 5) {
+-        error(1 ,0, USAGE);
++        fprintf(stderr, USAGE);
+     }
+     file = argv[1];
+
+     max_size_file = fopen("/sys/module/emlog/parameters/emlog_max_size", "r");
+     if (max_size_file == NULL)
+-        error(1, errno, "Emlog module not loaded\n");
++        fprintf(stderr, "Emlog module not loaded\n");
+     rc = fscanf(max_size_file, "%d", &emlog_max_size);
+     if (rc != 1)
+-        error(1, errno, "Unable to get emlog max size\n");
++        fprintf(stderr, "Unable to get emlog max size\n");
+     fclose(max_size_file);
+     max_size_file = NULL;
+     if (argc > 2 ) {
+@@ -57,13 +56,13 @@ int main(int argc, char** argv) {
+         number = argv[2];
+         size_of_buffer = strtol(number, &end_of_number, 10);
+         if (errno) {
+-            error(1, errno, "Invalid size provided\n" USAGE);
++            fprintf(stderr, "Invalid size provided\n" USAGE);
+         }
+         if (end_of_number == number) {
+-            error(1, 0, "Invalid size provided\n" USAGE);
++            fprintf(stderr, "Invalid size provided\n" USAGE);
+         }
+         if (size_of_buffer < 1 || size_of_buffer > emlog_max_size) {
+-            error(1, 0, "Invalid size provided must be a value between 1 and %d\n" USAGE, emlog_max_size);
++            fprintf(stderr, "Invalid size provided must be a value between 1 and %d\n" USAGE, emlog_max_size);
+         }
+     }
+     if (argc > 3 ) {
+@@ -71,10 +70,10 @@ int main(int argc, char** argv) {
+         number = argv[3];
+         mode = strtol(number, &end_of_number, 8);
+         if (errno) {
+-            error(1, errno, "Invalid mode provided\n" USAGE);
++            fprintf(stderr, "Invalid mode provided\n" USAGE);
+         }
+         if (end_of_number == number || S_IFMT & mode) {
+-            error(1, 0, "Invalid mode provided\n" USAGE);
++            fprintf(stderr, "Invalid mode provided\n" USAGE);
+         }
+     }
+     if (argc > 4 ) {
+@@ -82,27 +81,27 @@ int main(int argc, char** argv) {
+         number = argv[4];
+         uid = strtol(number, &end_of_number, 10);
+         if (errno) {
+-            error(1, errno, "Invalid uid provided\n" USAGE);
++            fprintf(stderr, "Invalid uid provided\n" USAGE);
+         }
+         if (end_of_number == number) {
+-            error(1, 0, "Invalid uid provided\n" USAGE);
++            fprintf(stderr, "Invalid uid provided\n" USAGE);
+         }
+     }
+     rc = stat(EMLOG_DEVICE, &emlog_stat);
+     if (rc == -1) {
+-        error(1, errno, "stat: " EMLOG_DEVICE);
++        fprintf(stderr, "stat: " EMLOG_DEVICE);
+     }
+     if (!S_ISCHR(emlog_stat.st_mode)) {
+-        error(1, 0, EMLOG_DEVICE " is not a valid emlog device\n");
++        fprintf(stderr, EMLOG_DEVICE " is not a valid emlog device\n");
+     }
+     rc = mknod(file, mode | S_IFCHR, makedev(major(emlog_stat.st_rdev),size_of_buffer));
+     if (rc == -1) {
+-        error(1, errno, "mknod: %s", file);
++        fprintf(stderr, "mknod: %s", file);
+     }
+     if (uid != -1) {
+         rc = chown(file, uid, -1);
+         if (rc == -1) {
+-            error(1, errno, "chown: %s", file);
++            fprintf(stderr, "chown: %s", file);
+         }
+     }
+     printf("Log device %s created with buffer size of %d KiB\n", file, size_of_buffer);
+--
+2.20.1
diff --git a/meta-openembedded/meta-oe/recipes-core/emlog/emlog/emlog.initd b/meta-openembedded/meta-oe/recipes-core/emlog/emlog/emlog.initd
new file mode 100644
index 0000000..361cf80
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-core/emlog/emlog/emlog.initd
@@ -0,0 +1,25 @@
+#!/bin/sh
+PATH=/sbin:/usr/sbin:/bin:/usr/bin
+
+[ -r /etc/default/emlog ] && . /etc/default/emlog
+
+do_start() {
+    :
+}
+
+do_stop() {
+    nbcat /dev/emlog > /data/emlog
+}
+
+case "$1" in
+    start)
+	    do_start || exit $?
+	    ;;
+    stop)
+	    do_stop || exit $?
+	    ;;
+    *)
+	    echo "Usage: $0 {stop}" >&2
+	    exit 3
+	    ;;
+esac
diff --git a/meta-openembedded/meta-oe/recipes-core/emlog/emlog_git.bb b/meta-openembedded/meta-oe/recipes-core/emlog/emlog_git.bb
new file mode 100644
index 0000000..63d1247
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-core/emlog/emlog_git.bb
@@ -0,0 +1,22 @@
+require ${BPN}.inc
+
+SRC_URI += "file://${BPN}.initd"
+
+SRC_URI_append_libc-musl = " file://Drop-use-of-error-h.patch"
+
+inherit update-rc.d
+
+INITSCRIPT_NAME = "${BPN}"
+
+do_compile() {
+    oe_runmake nbcat
+    oe_runmake mkemlog
+}
+
+do_install() {
+   install -Dm 0755 ${WORKDIR}/${BPN}.initd ${D}${sysconfdir}/init.d/${BPN}
+   install -Dm 0755 ${S}/nbcat ${D}${bindir}/nbcat
+   install -Dm 0755 ${S}/mkemlog ${D}${bindir}/mkemlog
+}
+
+RDEPENDS_${PN} += "kernel-module-emlog"
diff --git a/meta-openembedded/meta-oe/recipes-core/emlog/kernel-module-emlog_git.bb b/meta-openembedded/meta-oe/recipes-core/emlog/kernel-module-emlog_git.bb
new file mode 100644
index 0000000..51f7226
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-core/emlog/kernel-module-emlog_git.bb
@@ -0,0 +1,12 @@
+require emlog.inc
+
+inherit module
+
+EXTRA_OEMAKE += " \
+    KDIR=${STAGING_KERNEL_DIR} \
+    KVER=${KERNEL_VERSION} \
+"
+
+do_compile() {
+    oe_runmake modules
+}
diff --git a/meta-openembedded/meta-oe/recipes-core/mdbus2/mdbus2_git.bb b/meta-openembedded/meta-oe/recipes-core/mdbus2/mdbus2_git.bb
new file mode 100644
index 0000000..82f2cf8
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-core/mdbus2/mdbus2_git.bb
@@ -0,0 +1,16 @@
+SUMMARY = "Mickey's DBus Introspection and Interaction Utility V2"
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=ebb5c50ab7cab4baeffba14977030c07"
+
+DEPENDS = "readline"
+
+PV = "2.3.3+git${SRCPV}"
+
+SRC_URI = "git://github.com/freesmartphone/mdbus.git;protocol=http"
+SRCREV = "28202692d0b441000f4ddb8f347f72d1355021aa"
+
+S = "${WORKDIR}/git"
+
+inherit autotools vala
+
+EXTRA_OECONF += "--enable-vala"
diff --git a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
index 1f0a7b9..310de53 100644
--- a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
+++ b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
@@ -257,7 +257,7 @@
     "
 
 RDEPENDS_packagegroup-meta-oe-support_remove_arm ="numactl"
-RDEPENDS_packagegroup-meta-oe-support_remove_mipsarch_libc-glibc = "gperftools"
+RDEPENDS_packagegroup-meta-oe-support_remove_mipsarch = "gperftools"
 
 RDEPENDS_packagegroup-meta-oe-support-egl ="\
     freerdp libnice opencv \
diff --git a/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb/0001-Makefile-Fix-parallel-build.patch b/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb/0001-Makefile-Fix-parallel-build.patch
deleted file mode 100644
index 3135d4d..0000000
--- a/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb/0001-Makefile-Fix-parallel-build.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From c85978e77725ef233543370d24e23f853f449170 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 21 Sep 2017 17:47:02 -0700
-Subject: [PATCH] Makefile: Fix parallel build
-
-Sometimes mkdir $(SHARED_OUTDIR)/db races with compiler which is
-creating .o file in the same directory $(SHARED_OUTDIR)/db/db_bench.o
-
-Fixes error like
-
-| mkdir out-static
-| mkdir out-shared/db
-| Assembler messages:
-| Fatal error: can't create out-shared/db/db_bench.o: No such file or directory
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Submitted
-
- Makefile | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index f7cc7d7..51a0bcd 100644
---- a/Makefile
-+++ b/Makefile
-@@ -386,6 +386,7 @@ $(STATIC_OUTDIR)/write_batch_test:db/write_batch_test.cc $(STATIC_LIBOBJECTS) $(
- $(STATIC_OUTDIR)/memenv_test:$(STATIC_OUTDIR)/helpers/memenv/memenv_test.o $(STATIC_OUTDIR)/libmemenv.a $(STATIC_OUTDIR)/libleveldb.a $(TESTHARNESS)
- 	$(XCRUN) $(CXX) $(LDFLAGS) $(STATIC_OUTDIR)/helpers/memenv/memenv_test.o $(STATIC_OUTDIR)/libmemenv.a $(STATIC_OUTDIR)/libleveldb.a $(TESTHARNESS) -o $@ $(LIBS)
- 
-+$(SHARED_OUTDIR)/db/db_bench.o: | $(SHARED_OUTDIR)/db
- $(SHARED_OUTDIR)/db_bench:$(SHARED_OUTDIR)/db/db_bench.o $(SHARED_LIBS) $(TESTUTIL)
- 	$(XCRUN) $(CXX) $(LDFLAGS) $(CXXFLAGS) $(PLATFORM_SHARED_CFLAGS) $(SHARED_OUTDIR)/db/db_bench.o $(TESTUTIL) $(SHARED_OUTDIR)/$(SHARED_LIB3) -o $@ $(LIBS)
- 
diff --git a/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb/0001-build_detect_platform-Check-for-__SSE4_2__.patch b/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb/0001-build_detect_platform-Check-for-__SSE4_2__.patch
deleted file mode 100644
index 8f93cb3..0000000
--- a/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb/0001-build_detect_platform-Check-for-__SSE4_2__.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 5fd0918df2bb30e8f3edb2ee895d178edbf26f40 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 4 Sep 2017 22:38:03 -0700
-Subject: [PATCH 1/2] build_detect_platform: Check for __SSE4_2__
-
-just using -msse4.2 is not enough, especially with clang
-where it may accept -msse4.2 even during cross compiling
-for say arm, however the difference is that builtin defines
-wont be defined.
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Pending
-
- build_detect_platform | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-Index: git/build_detect_platform
-===================================================================
---- git.orig/build_detect_platform
-+++ git/build_detect_platform
-@@ -224,13 +224,13 @@ EOF
-     rm -f $CXXOUTPUT 2>/dev/null
- 
-     # Test if gcc SSE 4.2 is supported
--    $CXX $CXXFLAGS -x c++ - -o $CXXOUTPUT -msse4.2 2>/dev/null  <<EOF
-+    $CXX $CXXFLAGS -Werror -x c++ - -o $CXXOUTPUT -msse4.2 -dD -E 2>/dev/null  <<EOF
-       int main() {}
- EOF
-+    eval fgrep __SSE4_2__ $CXXOUTPUT >/dev/null 2>&1
-     if [ "$?" = 0 ]; then
-         PLATFORM_SSEFLAGS="-msse4.2"
-     fi
--
-     rm -f $CXXOUTPUT 2>/dev/null
- fi
- 
diff --git a/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb/0002-makefile-build-SHARED_MEMENVLIB.patch b/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb/0002-makefile-build-SHARED_MEMENVLIB.patch
deleted file mode 100644
index fc708b2..0000000
--- a/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb/0002-makefile-build-SHARED_MEMENVLIB.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 1ed8cec1fcf666904bb3ebd29fc85e235b72d122 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 4 Sep 2017 22:40:49 -0700
-Subject: [PATCH 2/2] makefile: build SHARED_MEMENVLIB
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Pending
-
- Makefile | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index f7cc7d7..cb42278 100644
---- a/Makefile
-+++ b/Makefile
-@@ -126,12 +126,12 @@ SHARED_VERSION_MINOR = 20
- SHARED_LIB1 = libleveldb.$(PLATFORM_SHARED_EXT)
- SHARED_LIB2 = $(SHARED_LIB1).$(SHARED_VERSION_MAJOR)
- SHARED_LIB3 = $(SHARED_LIB1).$(SHARED_VERSION_MAJOR).$(SHARED_VERSION_MINOR)
--SHARED_LIBS = $(SHARED_OUTDIR)/$(SHARED_LIB1) $(SHARED_OUTDIR)/$(SHARED_LIB2) $(SHARED_OUTDIR)/$(SHARED_LIB3)
-+SHARED_LIBS = $(SHARED_OUTDIR)/$(SHARED_LIB1) $(SHARED_OUTDIR)/$(SHARED_LIB2) $(SHARED_OUTDIR)/$(SHARED_LIB3) $(SHARED_MEMENVLIB)
- $(SHARED_OUTDIR)/$(SHARED_LIB1): $(SHARED_OUTDIR)/$(SHARED_LIB3)
- 	ln -fs $(SHARED_LIB3) $(SHARED_OUTDIR)/$(SHARED_LIB1)
- $(SHARED_OUTDIR)/$(SHARED_LIB2): $(SHARED_OUTDIR)/$(SHARED_LIB3)
- 	ln -fs $(SHARED_LIB3) $(SHARED_OUTDIR)/$(SHARED_LIB2)
--SHARED_MEMENVLIB = $(SHARED_OUTDIR)/libmemenv.a
-+SHARED_MEMENVLIB = $(SHARED_OUTDIR)/libmemenv.$(PLATFORM_SHARED_EXT).$(SHARED_VERSION_MAJOR).$(SHARED_VERSION_MINOR)
- endif
- 
- $(SHARED_OUTDIR)/$(SHARED_LIB3): $(SHARED_LIBOBJECTS)
-@@ -294,7 +294,7 @@ endif
- 
- $(SHARED_MEMENVLIB):$(SHARED_MEMENVOBJECTS)
- 	rm -f $@
--	$(AR) -rs $@ $(SHARED_MEMENVOBJECTS)
-+	$(CXX) $(LDFLAGS) $(PLATFORM_SHARED_LDFLAGS)$(basename $(notdir $(SHARED_MEMENVLIB))) $(SHARED_MEMENVOBJECTS) -o $(SHARED_MEMENVLIB) $(LIBS)
- 
- $(STATIC_OUTDIR)/db_bench:db/db_bench.cc $(STATIC_LIBOBJECTS) $(TESTUTIL)
- 	$(CXX) $(LDFLAGS) $(CXXFLAGS) db/db_bench.cc $(STATIC_LIBOBJECTS) $(TESTUTIL) -o $@ $(LIBS)
--- 
-2.14.1
-
diff --git a/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb/run-ptest b/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb/run-ptest
new file mode 100644
index 0000000..9ae70c1
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb/run-ptest
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+for test in *_test; do
+    if ./${test}; then
+        echo "PASS: ${test}"
+    else
+        echo "FAIL: ${test}"
+    fi
+done
+
diff --git a/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb_1.22.bb b/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb_1.22.bb
new file mode 100644
index 0000000..b597ef1
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb_1.22.bb
@@ -0,0 +1,33 @@
+SUMMARY = "LevelDB is a fast key-value storage library"
+DESCRIPTION = "LevelDB is a fast key-value storage library that provides an ordered mapping from string keys to string values"
+HOMEPAGE = "https://github.com/google/leveldb"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=92d1b128950b11ba8495b64938fc164d"
+
+SRC_URI = "git://github.com/google/${BPN}.git \
+           file://run-ptest"
+
+SRCREV = "78b39d68c15ba020c0d60a3906fb66dbf1697595"
+S = "${WORKDIR}/git"
+
+inherit cmake ptest
+
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[benchmarks] = "-DLEVELDB_BUILD_BENCHMARKS=ON,-DLEVELDB_BUILD_BENCHMARKS=OFF,sqlite"
+PACKAGECONFIG[snappy] = ",,snappy"
+PACKAGECONFIG[tcmalloc] = ",,gperftools"
+
+EXTRA_OECMAKE = "-DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_SHARED_LIBS=ON -DCMAKE_SKIP_RPATH=ON \
+                 -DLEVELDB_BUILD_TESTS=${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'ON', 'OFF', d)}"
+
+do_install_append() {
+    install -D -m 0755 ${B}/leveldbutil ${D}${bindir}/leveldbutil
+}
+
+do_install_ptest() {
+    install -m 0755 ${B}/*_test ${D}${PTEST_PATH}
+}
+
+# Do not try to build lib32-leveldb for mips64, but allow libn32-leveldb.
+#
+COMPATIBLE_HOST_mipsarcho32_pn-lib32-leveldb = "null"
diff --git a/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb_git.bb b/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb_git.bb
deleted file mode 100644
index 908ad3e..0000000
--- a/meta-openembedded/meta-oe/recipes-dbs/leveldb/leveldb_git.bb
+++ /dev/null
@@ -1,41 +0,0 @@
-SUMMARY = "LevelDB is a fast key-value storage library"
-DESCRIPTION = "LevelDB is a fast key-value storage library that provides an ordered mapping from string keys to string values"
-HOMEPAGE = "http://leveldb.googlecode.com"
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=92d1b128950b11ba8495b64938fc164d"
-
-SRCREV = "a53934a3ae1244679f812d998a4f16f2c7f309a6"
-PV = "1.20+git${SRCPV}"
-
-SRC_URI = "git://github.com/google/${BPN}.git \
-           file://0001-build_detect_platform-Check-for-__SSE4_2__.patch \
-           file://0002-makefile-build-SHARED_MEMENVLIB.patch \
-           file://0001-Makefile-Fix-parallel-build.patch \
-           "
-
-S = "${WORKDIR}/git"
-
-inherit utils
-
-do_compile() {
-    # do not use oe_runmake. oe_runmake pass to make compilation arguments and override
-    # leveldb makefile variable CFLAGS and broke leveldb build.
-    CFLAGS="${CFLAGS}" make ${PARALLEL_MAKE}|| die
-}
-
-do_install() {
-    install -d ${D}${libdir} ${D}${bindir} ${D}${includedir}/leveldb
-    oe_libinstall -C ${B}/out-shared libleveldb ${D}${libdir}
-    oe_libinstall -C ${S}/out-static libleveldb ${D}${libdir}
-    oe_libinstall -C ${S}/out-static libmemenv ${D}${libdir}
-    install -m 0755 ${B}/out-shared/db_bench ${D}${bindir}
-    install -m 0755 ${B}/out-static/*_test ${D}${bindir}
-    install -m 644 ${S}/include/leveldb/*.h ${D}${includedir}/leveldb/
-}
-
-PACKAGES =+ "${PN}-ptest"
-FILES_${PN}-ptest = "${bindir}"
-
-# Do not try to build lib32-leveldb for mips64, but allow libn32-leveldb.
-#
-COMPATIBLE_HOST_mipsarcho32_pn-lib32-leveldb = "null"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/kconfig-frontends/kconfig-frontends_4.11.0.1.bb b/meta-openembedded/meta-oe/recipes-devtools/kconfig-frontends/kconfig-frontends_4.11.0.1.bb
index fae80a7..ec959d2 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/kconfig-frontends/kconfig-frontends_4.11.0.1.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/kconfig-frontends/kconfig-frontends_4.11.0.1.bb
@@ -11,7 +11,7 @@
 LICENSE = "GPL-2.0"
 LIC_FILES_CHKSUM = "file://COPYING;md5=9b8cf60ff39767ff04b671fca8302408"
 SECTION = "devel"
-DEPENDS += "ncurses flex bison gperf-native bison-native"
+DEPENDS += "ncurses flex-native gperf-native bison-native"
 RDEPENDS_${PN} += "python3 bash"
 SRC_URI = "git://gitlab.com/ymorin/kconfig-frontends.git;protocol=https;branch=4.11.x \
 	   file://0001-Makefile-ensure-frontends-exits-before-writing-into-.patch \
diff --git a/meta-openembedded/meta-oe/recipes-devtools/mercurial/mercurial_4.6.1.bb b/meta-openembedded/meta-oe/recipes-devtools/mercurial/mercurial_4.6.1.bb
deleted file mode 100644
index 13710aa..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/mercurial/mercurial_4.6.1.bb
+++ /dev/null
@@ -1,31 +0,0 @@
-SUMMARY = "The Mercurial distributed SCM"
-HOMEPAGE = "http://mercurial.selenic.com/"
-SECTION = "console/utils"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-DEPENDS = "python python-native"
-DEPENDS_class-native = "python-native"
-RDEPENDS_${PN} = "python python-modules"
-
-inherit python-dir
-
-SRC_URI = "https://www.mercurial-scm.org/release/${BP}.tar.gz"
-SRC_URI[md5sum] = "f9b2e4a3b5901ef744fa3abe4196e97e"
-SRC_URI[sha256sum] = "89fa8ecbc8aa6e48e98f9803a1683ba91367124295dba2407b28c34ca621108d"
-
-S = "${WORKDIR}/mercurial-${PV}"
-
-BBCLASSEXTEND = "native"
-
-EXTRA_OEMAKE = "STAGING_LIBDIR=${STAGING_LIBDIR} STAGING_INCDIR=${STAGING_INCDIR} \
-    PREFIX=${prefix}"
-
-do_configure_append () {
-    sed -i -e 's:PYTHON=python:PYTHON=${STAGING_BINDIR_NATIVE}/python-native/python:g' ${S}/Makefile
-}
-
-do_install () {
-    oe_runmake -e install-bin DESTDIR=${D} PREFIX=${prefix}
-}
-
-FILES_${PN} += "${PYTHON_SITEPACKAGES_DIR}"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/mercurial/mercurial_5.2.bb b/meta-openembedded/meta-oe/recipes-devtools/mercurial/mercurial_5.2.bb
new file mode 100644
index 0000000..0fec4d1
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/mercurial/mercurial_5.2.bb
@@ -0,0 +1,35 @@
+SUMMARY = "The Mercurial distributed SCM"
+HOMEPAGE = "http://mercurial.selenic.com/"
+SECTION = "console/utils"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+DEPENDS = "python3 python3-native"
+RDEPENDS_${PN} = "python3 python3-modules"
+
+inherit python3native
+
+SRC_URI = "https://www.mercurial-scm.org/release/${BP}.tar.gz"
+SRC_URI[md5sum] = "9ba9d59157c002db8d8cab680de08eb5"
+SRC_URI[sha256sum] = "ff030e923f03ee15c91191996fcb099bfcfa60c7df263be227f67b6a65d36194"
+
+S = "${WORKDIR}/mercurial-${PV}"
+
+BBCLASSEXTEND = "native"
+
+export LDSHARED="${CCLD} -shared"
+
+EXTRA_OEMAKE = "STAGING_LIBDIR=${STAGING_LIBDIR} STAGING_INCDIR=${STAGING_INCDIR} \
+    PREFIX=${prefix}"
+
+do_configure_append () {
+    sed -i -e 's:PYTHON?=python:PYTHON=python3:g' ${S}/Makefile
+}
+
+do_install () {
+    oe_runmake -e install-bin DESTDIR=${D} PREFIX=${prefix}
+    sed -i -e 's:${STAGING_BINDIR_NATIVE}/python3-native/python3:${USRBINPATH}/env python3:g' ${D}${bindir}/hg
+}
+
+FILES_${PN} += "${PYTHON_SITEPACKAGES_DIR}"
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/jpnevulator/jpnevulator_git.bb b/meta-openembedded/meta-oe/recipes-extended/jpnevulator/jpnevulator_git.bb
new file mode 100644
index 0000000..d2819f7
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/jpnevulator/jpnevulator_git.bb
@@ -0,0 +1,19 @@
+SUMMARY = "A handy serial sniffer"
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=892f569a555ba9c07a568a7c0c4fa63a"
+
+PV = "2.3.4+git${SRCPV}"
+
+SRC_URI = "git://github.com/snarlistic/jpnevulator.git;protocol=http"
+SRCREV = "97438ecbd52fbc01540221bc590f8388a43c74e0"
+
+S = "${WORKDIR}/git"
+
+do_compile() {
+	oe_runmake
+}
+
+do_install() {
+	oe_runmake install 'DESTDIR=${D}'
+}
+
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7577.patch b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7577.patch
index 92e40ae..63680b8 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7577.patch
+++ b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7577.patch
@@ -47,10 +47,17 @@
 Upstream-Status: Backport
 Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
 
-diff -r a6e3d2f5183e -r 416136310b88 src/audio/SDL_wave.c
---- a/src/audio/SDL_wave.c	Mon Jun 10 08:50:59 2019 -0700
-+++ b/src/audio/SDL_wave.c	Mon Jun 10 08:54:11 2019 -0700
-@@ -115,7 +115,7 @@
+Refresh CVE-2019-7577.patch as it can't be applyed when using PATCHTOOL = "patch".
+Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
+---
+ src/audio/SDL_wave.c | 17 ++++++++++++++++-
+ 1 file changed, 16 insertions(+), 1 deletion(-)
+
+diff --git a/src/audio/SDL_wave.c b/src/audio/SDL_wave.c
+index b4ad6c7..0bcf7e2 100644
+--- a/src/audio/SDL_wave.c
++++ b/src/audio/SDL_wave.c
+@@ -115,7 +115,7 @@ static Sint32 MS_ADPCM_nibble(struct MS_ADPCM_decodestate *state,
  static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
  {
  	struct MS_ADPCM_decodestate *state[2];
@@ -59,7 +66,7 @@
  	Sint32 encoded_len, samplesleft;
  	Sint8 nybble, stereo;
  	Sint16 *coeff[2];
-@@ -124,6 +124,7 @@
+@@ -124,6 +124,7 @@ static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
  	/* Allocate the proper sized output buffer */
  	encoded_len = *audio_len;
  	encoded = *audio_buf;
@@ -67,7 +74,7 @@
  	freeable = *audio_buf;
  	*audio_len = (encoded_len/MS_ADPCM_state.wavefmt.blockalign) * 
  				MS_ADPCM_state.wSamplesPerBlock*
-@@ -141,6 +142,7 @@
+@@ -141,10 +142,14 @@ static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
  	state[1] = &MS_ADPCM_state.state[stereo];
  	while ( encoded_len >= MS_ADPCM_state.wavefmt.blockalign ) {
  		/* Grab the initial information for this block */
@@ -75,34 +82,6 @@
  		state[0]->hPredictor = *encoded++;
  		if ( stereo ) {
  			state[1]->hPredictor = *encoded++;
-@@ -188,6 +190,8 @@
- 		samplesleft = (MS_ADPCM_state.wSamplesPerBlock-2)*
- 					MS_ADPCM_state.wavefmt.channels;
- 		while ( samplesleft > 0 ) {
-+			if (encoded + 1 > encoded_end) goto too_short;
-+
- 			nybble = (*encoded)>>4;
- 			new_sample = MS_ADPCM_nibble(state[0],nybble,coeff[0]);
- 			decoded[0] = new_sample&0xFF;
-@@ -209,6 +213,10 @@
- 	}
- 	SDL_free(freeable);
- 	return(0);
-+too_short:
-+	SDL_SetError("Too short chunk for a MS ADPCM decoder");
-+	SDL_free(freeable);
-+	return(-1);
- }
- 
- struct IMA_ADPCM_decodestate {
-
-
-diff -r 416136310b88 -r faf9abbcfb5f src/audio/SDL_wave.c
---- a/src/audio/SDL_wave.c	Mon Jun 10 08:54:11 2019 -0700
-+++ b/src/audio/SDL_wave.c	Mon Jun 10 08:54:29 2019 -0700
-@@ -147,6 +147,9 @@
- 		if ( stereo ) {
- 			state[1]->hPredictor = *encoded++;
  		}
 +		if (state[0]->hPredictor >= 7 || state[1]->hPredictor >= 7) {
 +			goto invalid_predictor;
@@ -110,10 +89,23 @@
  		state[0]->iDelta = ((encoded[1]<<8)|encoded[0]);
  		encoded += sizeof(Sint16);
  		if ( stereo ) {
-@@ -217,6 +220,10 @@
- 	SDL_SetError("Too short chunk for a MS ADPCM decoder");
+@@ -188,6 +193,8 @@ static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
+ 		samplesleft = (MS_ADPCM_state.wSamplesPerBlock-2)*
+ 					MS_ADPCM_state.wavefmt.channels;
+ 		while ( samplesleft > 0 ) {
++			if (encoded + 1 > encoded_end) goto too_short;
++
+ 			nybble = (*encoded)>>4;
+ 			new_sample = MS_ADPCM_nibble(state[0],nybble,coeff[0]);
+ 			decoded[0] = new_sample&0xFF;
+@@ -209,6 +216,14 @@ static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
+ 	}
  	SDL_free(freeable);
- 	return(-1);
+ 	return(0);
++too_short:
++	SDL_SetError("Too short chunk for a MS ADPCM decoder");
++	SDL_free(freeable);
++	return(-1);
 +invalid_predictor:
 +	SDL_SetError("Invalid predictor value for a MS ADPCM decoder");
 +	SDL_free(freeable);
@@ -121,3 +113,6 @@
  }
  
  struct IMA_ADPCM_decodestate {
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-oe/recipes-graphics/stalonetray/stalonetray_0.8.3.bb b/meta-openembedded/meta-oe/recipes-graphics/stalonetray/stalonetray_0.8.3.bb
new file mode 100644
index 0000000..8851729
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/stalonetray/stalonetray_0.8.3.bb
@@ -0,0 +1,14 @@
+SUMMARY = "Stand-alone system tray"
+DESCRIPTION = "Stalonetray is a stand-alone freedesktop.org and KDE system tray"
+SECTION = "x11/graphics"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+
+DEPENDS = "virtual/libx11"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2"
+
+SRC_URI[md5sum] = "ae95dbbacc2620e032acea8abab8c9ef"
+SRC_URI[sha256sum] = "36548a588b2d466913423245dda6ffb6313132cd0cec635a117d37b3dab5fd4c"
+
+inherit autotools
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid/0001-wscript-add-pthread-library-dependency-to-fix-linkin.patch b/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid/0001-wscript-add-pthread-library-dependency-to-fix-linkin.patch
deleted file mode 100644
index d17d311..0000000
--- a/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid/0001-wscript-add-pthread-library-dependency-to-fix-linkin.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 488dc9b00239976caac6bd9ed76b38d9d1659dd9 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
-Date: Tue, 4 Oct 2016 23:44:49 +0200
-Subject: [PATCH] wscript: add pthread library dependency to fix linking
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Stolen from [1]
-
-[1] http://pkgs.fedoraproject.org/cgit/rpms/a2jmidid.git/tree/a2jmidid-linking.patch
-
-Upstream-Status: Pending
-
-Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
----
- wscript | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/wscript b/wscript
-index 664625b..66a532a 100644
---- a/wscript
-+++ b/wscript
-@@ -67,6 +67,7 @@ def configure(conf):
-         conf.env['DBUS_ENABLED'] = False
- 
-     conf.env['LIB_DL'] = ['dl']
-+    conf.env['LIB_PTHREAD'] = ['pthread']
- 
-     #conf.check_header('expat.h', mandatory=True)
-     #conf.env['LIB_EXPAT'] = ['expat']
-@@ -152,7 +153,7 @@ def build(bld):
- 
-     prog.includes = '.' # make waf dependency tracking work
-     prog.target = 'a2jmidid'
--    prog.uselib = 'ALSA JACK DL'
-+    prog.uselib = 'ALSA JACK DL PTHREAD'
-     if bld.env()['DBUS_ENABLED']:
-         prog.uselib += " DBUS-1"
-     prog = bld.create_obj('cc', 'program')
--- 
-2.5.5
-
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid/0002-aarch64.patch b/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid/0002-aarch64.patch
deleted file mode 100644
index b344f54..0000000
--- a/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid/0002-aarch64.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-Consider compiler define for aarch64
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Upstream-Status:Pending
-
-Index: a2jmidid-8/sigsegv.c
-===================================================================
---- a2jmidid-8.orig/sigsegv.c
-+++ a2jmidid-8/sigsegv.c
-@@ -91,18 +91,18 @@ static void signal_segv(int signum, sigi
-     a2j_error("info.si_errno = %d", info->si_errno);
-     a2j_error("info.si_code  = %d (%s)", info->si_code, si_codes[info->si_code]);
-     a2j_error("info.si_addr  = %p", info->si_addr);
--#if !defined(__alpha__) && !defined(__ia64__) && !defined(__FreeBSD_kernel__) && !defined(__arm__) && !defined(__hppa__) && !defined(__sh__)
-+#if !defined(__alpha__) && !defined(__ia64__) && !defined(__FreeBSD_kernel__) && !defined(__arm__) && !defined(__hppa__) && !defined(__sh__) && !defined(__aarch64__)
-     for(i = 0; i < NGREG; i++)
-         a2j_error("reg[%02d]       = 0x" REGFORMAT, i,
- #if defined(__powerpc__)
-                 ucontext->uc_mcontext.uc_regs[i]
--#elif defined(__sparc__) && defined(__arch64__)
-+#elif defined(__sparc__) || defined(__arch64__)
-                 ucontext->uc_mcontext.mc_gregs[i]
- #else
-                 ucontext->uc_mcontext.gregs[i]
- #endif
-                 );
--#endif /* alpha, ia64, kFreeBSD, arm, hppa */
-+#endif /* alpha, ia64, kFreeBSD, arm, hppa aarch64 */
- 
- #if defined(SIGSEGV_STACK_X86) || defined(SIGSEGV_STACK_IA64)
- # if defined(SIGSEGV_STACK_IA64)
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid/riscv_ucontext.patch b/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid/riscv_ucontext.patch
index 23618f1..af6612e 100644
--- a/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid/riscv_ucontext.patch
+++ b/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid/riscv_ucontext.patch
@@ -12,13 +12,13 @@
 +#if !defined(__alpha__) && !defined(__ia64__) && !defined(__FreeBSD_kernel__) && !defined(__arm__) && !defined(__hppa__) && !defined(__sh__) && !defined(__aarch64__) && !defined(__riscv)
      for(i = 0; i < NGREG; i++)
          a2j_error("reg[%02d]       = 0x" REGFORMAT, i,
- #if defined(__powerpc__)
-@@ -102,7 +102,7 @@ static void signal_segv(int signum, sigi
+ #if defined(__powerpc__) && !defined(__powerpc64__)
+@@ -104,7 +104,7 @@ static void signal_segv(int signum, sigi
                  ucontext->uc_mcontext.gregs[i]
  #endif
                  );
--#endif /* alpha, ia64, kFreeBSD, arm, hppa aarch64 */
-+#endif /* alpha, ia64, kFreeBSD, arm, hppa aarch64 riscv */
+-#endif /* alpha, ia64, kFreeBSD, arm, hppa, aarch64 */
++#endif /* alpha, ia64, kFreeBSD, arm, hppa, aarch64 riscv */
  
  #if defined(SIGSEGV_STACK_X86) || defined(SIGSEGV_STACK_IA64)
  # if defined(SIGSEGV_STACK_IA64)
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid_8.bb b/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid_8.bb
deleted file mode 100644
index a0aa412..0000000
--- a/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid_8.bb
+++ /dev/null
@@ -1,32 +0,0 @@
-SUMMARY = "a2jmidid is daemon for exposing ALSA sequencer applications as JACK MIDI"
-SECTION = "libs/multimedia"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = " \
-    file://gpl2.txt;md5=751419260aa954499f7abaabaa882bbe \
-"
-
-DEPENDS = "alsa-lib jack dbus"
-DEPENDS_append_libc-musl = " libexecinfo"
-
-SRC_URI = " \
-    http://download.gna.org/${BPN}/${BPN}-${PV}.tar.bz2 \
-    file://0001-wscript-add-pthread-library-dependency-to-fix-linkin.patch \
-    file://0002-aarch64.patch \
-    file://riscv_ucontext.patch \
-"
-SRC_URI[md5sum] = "9cf4edbc3ad2ddeeaf6c8c1791ff3ddd"
-SRC_URI[sha256sum] = "2a9635f62aabc59edb54ada07048dd47e896b90caff94bcee710d3582606f55f"
-
-inherit waf pkgconfig
-
-LDFLAGS_append_libc-musl = " -lexecinfo"
-
-export LINKFLAGS="${LDFLAGS}"
-
-do_configure() {
-    sed -i 's|/usr/bin/.*python$|/usr/bin/env python2|' ${S}/a2j_control ${S}/waf ${S}/wscript
-    (cd ${B} && ${S}/waf configure --prefix=${prefix} ${WAF_EXTRA_CONF} ${EXTRA_OECONF})
-}
-
-FILES_${PN} += "${datadir}/dbus-1/services"
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid_9.bb b/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid_9.bb
new file mode 100644
index 0000000..5fffe77
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid_9.bb
@@ -0,0 +1,28 @@
+SUMMARY = "a2jmidid is daemon for exposing ALSA sequencer applications as JACK MIDI"
+SECTION = "libs/multimedia"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = " \
+    file://LICENSE;md5=751419260aa954499f7abaabaa882bbe \
+"
+
+DEPENDS = "alsa-lib jack dbus"
+DEPENDS_append_libc-musl = " libexecinfo"
+
+SRCREV = "de37569c926c5886768f892c019e3f0468615038"
+SRC_URI = " \
+    git://github.com/linuxaudio/a2jmidid;protocol=https \
+    file://riscv_ucontext.patch \
+"
+
+S = "${WORKDIR}/git"
+
+inherit meson pkgconfig
+
+EXTRA_OEMESON = "-Db_lto=false"
+
+LDFLAGS_append_libc-musl = " -lexecinfo"
+
+export LINKFLAGS="${LDFLAGS}"
+
+FILES_${PN} += "${datadir}/dbus-1/services"
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/jack/jack_git.bb b/meta-openembedded/meta-oe/recipes-multimedia/jack/jack_1.19.14.bb
similarity index 87%
rename from meta-openembedded/meta-oe/recipes-multimedia/jack/jack_git.bb
rename to meta-openembedded/meta-oe/recipes-multimedia/jack/jack_1.19.14.bb
index 9f7d5b0..cebc952 100644
--- a/meta-openembedded/meta-oe/recipes-multimedia/jack/jack_git.bb
+++ b/meta-openembedded/meta-oe/recipes-multimedia/jack/jack_1.19.14.bb
@@ -15,8 +15,8 @@
 DEPENDS = "libsamplerate0 libsndfile1 readline"
 
 SRC_URI = "git://github.com/jackaudio/jack2.git"
-SRCREV = "37250ff470277f9947fbf3ba738f943053e30525"
-PV = "1.9.13"
+SRCREV = "b54a09bf7ef760d81fdb8544ad10e45575394624"
+
 S = "${WORKDIR}/git"
 
 inherit waf pkgconfig
@@ -30,6 +30,12 @@
 # portaudio is for windows builds only
 EXTRA_OECONF = "--portaudio=no"
 
+do_install_append() {
+	if ! ${@bb.utils.contains('PACKAGECONFIG', 'dbus', True, False, d)}; then
+		rm -f ${D}${bindir}/jack_control
+	fi
+}
+
 PACKAGES =+ "libjack jack-server jack-utils"
 
 RDEPENDS_jack-dev_remove = "${PN} (= ${EXTENDPKGV})"
@@ -42,4 +48,4 @@
 "
 FILES_jack-utils = "${bindir}/*"
 
-FILES_${PN}-doc += " ${datadir}/jack-audio-connection-kit/reference/html/* "
+FILES_${PN}-doc += " ${datadir}/jack-audio-connection-kit/reference/html/*"
diff --git a/meta-openembedded/meta-oe/recipes-shells/mksh/mksh_56.bb b/meta-openembedded/meta-oe/recipes-shells/mksh/mksh_57.bb
similarity index 74%
rename from meta-openembedded/meta-oe/recipes-shells/mksh/mksh_56.bb
rename to meta-openembedded/meta-oe/recipes-shells/mksh/mksh_57.bb
index e4eb542..7e9c18e 100644
--- a/meta-openembedded/meta-oe/recipes-shells/mksh/mksh_56.bb
+++ b/meta-openembedded/meta-oe/recipes-shells/mksh/mksh_57.bb
@@ -3,14 +3,14 @@
 SECTION = "base/shell"
 
 LICENSE = "${@bb.utils.contains("TCLIBC", "glibc", "MirOS & ISC", "MirOS", d)}"
-LIC_FILES_CHKSUM = "file://main.c;beginline=6;endline=25;md5=7204fec4d12912f2a13fe8745bc356f9 \
+LIC_FILES_CHKSUM = "file://main.c;beginline=6;endline=26;md5=0651e575e39d1a3e884562e25d491fc7 \
                     file://strlcpy.c;beginline=1;endline=17;md5=d953f28f0c43ee29e238ec9bc15df2a0 \
                    "
 
-SRC_URI = "http://www.mirbsd.org/MirOS/dist/mir/mksh/mksh-R56c.tgz"
+SRC_URI = "http://www.mirbsd.org/MirOS/dist/mir/mksh/mksh-R57.tgz"
 
-SRC_URI[md5sum] = "4799a9ac6d55871d79ba66713d928663"
-SRC_URI[sha256sum] = "dd86ebc421215a7b44095dc13b056921ba81e61b9f6f4cdab08ca135d02afb77"
+SRC_URI[md5sum] = "4d2686535252ea6a57bdec531498239a"
+SRC_URI[sha256sum] = "3d101154182d52ae54ef26e1360c95bc89c929d28859d378cc1c84f3439dbe75"
 
 inherit update-alternatives
 
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 731c835..ee34ace 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
@@ -35,5 +35,10 @@
 
 PACKAGE_BEFORE_PN += "libtcmalloc-minimal"
 FILES_libtcmalloc-minimal = "${libdir}/libtcmalloc_minimal*${SOLIBS} ${libdir}/libtcmalloc_minimal_debug*${SOLIBS}"
+
+# pprof tool requires Getopt::long and POSIX perl5 modules.
+# Also runs `objdump` on each cpuprofile data file
+RDEPENDS_${PN} += "binutils perl-module-getopt-long perl-module-posix"
+
 RDEPENDS_${PN} += "libtcmalloc-minimal (= ${EXTENDPKGV})"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/gsoap/gsoap/0001-Fix-out-of-tree-builds.patch b/meta-openembedded/meta-oe/recipes-support/gsoap/gsoap/0001-Fix-out-of-tree-builds.patch
deleted file mode 100644
index 5ceb4bf..0000000
--- a/meta-openembedded/meta-oe/recipes-support/gsoap/gsoap/0001-Fix-out-of-tree-builds.patch
+++ /dev/null
@@ -1,178 +0,0 @@
-From 8a10b6bd556426616e93f15639f369defbeca33f Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 14 Aug 2017 11:58:58 -0700
-Subject: [PATCH] Fix out of tree builds
-
-When build dir is not same as sourcedir then the build failed due
-to use of $(srcdir) variable which assumes source = build therefore
-replace that with top_srcdir
-
-Additionally move the conditional addition of sources to Makefile.am
-instead of adding it in configure.ac, since then we can use top_srcdir
-variable to access those sources too otherwise its not possible to
-specify the right dir for these sources
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Submitted[https://sourceforge.net/p/gsoap2/patches/171/]
-
- configure.ac                          |  5 +++--
- gsoap/Makefile.am                     | 14 +++++++-------
- gsoap/samples/autotest/Makefile.am    |  8 ++++----
- gsoap/samples/databinding/Makefile.am |  8 ++++----
- gsoap/wsdl/Makefile.am                | 15 +++++++++------
- 5 files changed, 27 insertions(+), 23 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 0631c18..c36e696 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -265,7 +265,7 @@ if test "x$with_openssl" = "xyes"; then
-     WSDL2H_EXTRA_FLAGS="-DWITH_OPENSSL -DWITH_GZIP"
-     # an ugly hack to get httpda and smdevp plugins to conditionally
-     # compile with wsdl2h when OPENSSL is available
--    WSDL2H_EXTRA_LIBS="${WSDL2H_EXTRA_LIBS} ../plugin/httpda.c ../plugin/smdevp.c ../plugin/threads.c -lssl -lcrypto -lz"
-+    WSDL2H_EXTRA_LIBS="${WSDL2H_EXTRA_LIBS} -lssl -lcrypto -lz"
-     SAMPLE_INCLUDES=
-     SAMPLE_SSL_LIBS="-lssl -lcrypto -lz"
-     WSDL2H_SOAP_CPP_LIB="libgsoapssl++.a"
-@@ -289,12 +289,13 @@ else
-   SAMPLE_INCLUDES=
-   WSDL2H_SOAP_CPP_LIB="libgsoap++.a"
- fi
-+AM_CONDITIONAL(WITH_OPENSSL, test "x$with_openssl" = "xyes" -a "x$with_gnutls" != "xyes")
-+AC_SUBST(WITH_OPENSSL)
- AC_SUBST(WSDL2H_EXTRA_FLAGS)
- AC_SUBST(WSDL2H_EXTRA_LIBS)
- AC_SUBST(SAMPLE_INCLUDES)
- AC_SUBST(SAMPLE_SSL_LIBS)
- AC_SUBST(WSDL2H_SOAP_CPP_LIB)
--
- # enable the compile of the samples
- AC_ARG_ENABLE(samples,
- [  --enable-samples	  enable compile for the gsoap samples],
-diff --git a/gsoap/Makefile.am b/gsoap/Makefile.am
-index 7273b82..9c0c89f 100644
---- a/gsoap/Makefile.am
-+++ b/gsoap/Makefile.am
-@@ -13,26 +13,26 @@ AM_CXXFLAGS = $(SOAPCPP2_DEBUG) -D$(platform)
- AM_CFLAGS = $(SOAPCPP2_DEBUG) -D$(platform)
- 
- # Install all soapcpp2 and wsdl2h files into ${prefix}/share/gsoap
--nobase_pkgdata_DATA = $(srcdir)/import/* $(srcdir)/plugin/* $(srcdir)/WS/* $(srcdir)/custom/* $(srcdir)/extras/*
-+nobase_pkgdata_DATA = $(top_srcdir)/gsoap/import/* $(top_srcdir)/gsoap/plugin/* $(top_srcdir)/gsoap/WS/* $(top_srcdir)/gsoap/custom/* $(top_srcdir)/gsoap/extras/*
- 
- ## we cannot build stdsoap2.o from 2 different sources (stdsoap2.cpp and stdsoap2.c), so we need an intermediate target:
- stdsoap2_ck.c: stdsoap2.cpp
--	$(LN_S) -f $(srcdir)/stdsoap2.cpp stdsoap2_ck.c
-+	$(LN_S) -f $(top_srcdir)/gsoap/stdsoap2.cpp stdsoap2_ck.c
- 
- stdsoap2_cpp.cpp: stdsoap2.cpp
--	$(LN_S) -f $(srcdir)/stdsoap2.cpp stdsoap2_cpp.cpp
-+	$(LN_S) -f $(top_srcdir)/gsoap/stdsoap2.cpp stdsoap2_cpp.cpp
- 
- stdsoap2_ck_cpp.cpp: stdsoap2.cpp
--	$(LN_S) -f $(srcdir)/stdsoap2.cpp stdsoap2_ck_cpp.cpp
-+	$(LN_S) -f $(top_srcdir)/gsoap/stdsoap2.cpp stdsoap2_ck_cpp.cpp
- 
- stdsoap2_ssl.c: stdsoap2.cpp
--	$(LN_S) -f $(srcdir)/stdsoap2.cpp stdsoap2_ssl.c
-+	$(LN_S) -f $(top_srcdir)/gsoap/stdsoap2.cpp stdsoap2_ssl.c
- 
- stdsoap2_ssl_cpp.cpp: stdsoap2.cpp
--	$(LN_S) -f $(srcdir)/stdsoap2.cpp stdsoap2_ssl_cpp.cpp
-+	$(LN_S) -f $(top_srcdir)/gsoap/stdsoap2.cpp stdsoap2_ssl_cpp.cpp
- ## do the same fo dom.cpp since we want to link it into the cpp libs and dom.c into the c libs
- dom_cpp.cpp: dom.cpp
--	$(LN_S) -f $(srcdir)/dom.cpp dom_cpp.cpp
-+	$(LN_S) -f $(top_srcdir)/gsoap/dom.cpp dom_cpp.cpp
- 
- lib_LIBRARIES = libgsoap.a libgsoap++.a libgsoapck.a libgsoapck++.a libgsoapssl.a libgsoapssl++.a
- 
-diff --git a/gsoap/samples/autotest/Makefile.am b/gsoap/samples/autotest/Makefile.am
-index 36adf51..61e514c 100644
---- a/gsoap/samples/autotest/Makefile.am
-+++ b/gsoap/samples/autotest/Makefile.am
-@@ -6,13 +6,13 @@
- AUTOMAKE_OPTIONS = subdir-objects foreign 1.4
- 
- CPPFLAGS=-I$(top_srcdir)/gsoap -I$(top_srcdir)/gsoap/plugin
--AM_LDFLAGS=$(CPPFLAGS) -I$(srcdir) -L$(srcdir)
-+AM_LDFLAGS=$(CPPFLAGS) -I$(top_srcdir)/gsoap/samples/autotest -L$(top_srcdir)/gsoap/samples/autotest
- SOAP=$(top_srcdir)/gsoap/src/soapcpp2$(EXEEXT)
- WSDL=$(top_srcdir)/gsoap/wsdl/wsdl2h$(EXEEXT)
--WSDL_FLAGS=-d -P -t $(srcdir)/typemap.dat
-+WSDL_FLAGS=-d -P -t $(top_srcdir)/gsoap/samples/autotest/typemap.dat
- SOAP_FLAGS=-SL -T -I$(top_srcdir)/gsoap/import -I$(top_srcdir)/gsoap/custom
--WSDLINPUT=$(srcdir)/examples.wsdl
--SOAPHEADER=$(srcdir)/examples.h
-+WSDLINPUT=$(top_srcdir)/gsoap/samples/autotest/examples.wsdl
-+SOAPHEADER=$(top_srcdir)/gsoap/samples/autotest/examples.h
- SOAP_CPP_SRC=soapC.cpp soapServer.cpp
- SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.a
- 
-diff --git a/gsoap/samples/databinding/Makefile.am b/gsoap/samples/databinding/Makefile.am
-index 892d4fd..86ad482 100644
---- a/gsoap/samples/databinding/Makefile.am
-+++ b/gsoap/samples/databinding/Makefile.am
-@@ -6,13 +6,13 @@
- AUTOMAKE_OPTIONS = subdir-objects foreign 1.4
- 
- CPPFLAGS=$(SAMPLE_INCLUDES) -I$(top_srcdir)/gsoap -I$(top_srcdir)/gsoap/plugin
--AM_LDFLAGS=$(AM_CPPFLAGS) -I$(srcdir) -L$(srcdir)
-+AM_LDFLAGS=$(AM_CPPFLAGS) -I$(top_srcdir)/gsoap/samples/databinding -L$(top_srcdir)/gsoap/samples/databinding
- SOAP=$(top_srcdir)/gsoap/src/soapcpp2$(EXEEXT)
- WSDL=$(top_srcdir)/gsoap/wsdl/wsdl2h$(EXEEXT)
--WSDL_FLAGS=-g -t $(srcdir)/addresstypemap.dat
-+WSDL_FLAGS=-g -t $(top_srcdir)/gsoap/samples/databinding/addresstypemap.dat
- SOAP_FLAGS=-0 -CS -p address -I$(top_srcdir)/gsoap/import
--WSDLINPUT=$(srcdir)/address.xsd
--SOAPHEADER=$(srcdir)/address.h
-+WSDLINPUT=$(top_srcdir)/gsoap/samples/databinding/address.xsd
-+SOAPHEADER=$(top_srcdir)/gsoap/samples/databinding/address.h
- SOAP_CPP_SRC=addressC.cpp
- SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.a
- 
-diff --git a/gsoap/wsdl/Makefile.am b/gsoap/wsdl/Makefile.am
-index b8da5db..9f2aefa 100644
---- a/gsoap/wsdl/Makefile.am
-+++ b/gsoap/wsdl/Makefile.am
-@@ -6,14 +6,14 @@
- AUTOMAKE_OPTIONS = foreign 1.4
- 
- # INCLUDES=-I$(top_srcdir)/gsoap
--# AM_LDFLAGS=$(INCLUDES) -I$(srcdir) -L$(srcdir)
--AM_LDFLAGS=-L$(srcdir) -I$(top_srcdir)/gsoap -I$(top_srcdir)/gsoap/plugin
-+# AM_LDFLAGS=$(INCLUDES) -I$(top_srcdir)/gsoap/wsdl -L$(top_srcdir)/gsoap/wsdl
-+AM_LDFLAGS=-L$(top_srcdir)/gsoap/wsdl -I$(top_srcdir)/gsoap -I$(top_srcdir)/gsoap/plugin
- AM_CPPFLAGS=-I$(top_srcdir)/gsoap -I$(top_srcdir)/gsoap/plugin
- SOAP=$(top_builddir)/gsoap/src/soapcpp2$(EXEEXT)
- SOAP_CPP_LIB=$(top_builddir)/gsoap/$(WSDL2H_SOAP_CPP_LIB)
- SOAP_CPP_SRC=wsdlC.cpp
--SOAPHEADER=$(srcdir)/wsdl.h
--SOAP_FLAGS=-SC -pwsdl -I$(srcdir) -I$(top_srcdir)/gsoap/import
-+SOAPHEADER=$(top_srcdir)/gsoap/wsdl/wsdl.h
-+SOAP_FLAGS=-SC -pwsdl -I$(top_srcdir)/gsoap/wsdl -I$(top_srcdir)/gsoap/import
- BUILT_SOURCES=$(SOAP_CPP_SRC)
- # WSDL2H_EXTRA_FLAGS=-DWITH_OPENSSL -DWITH_GZIP # defined in configure.in
- # WSDL2H_EXTRA_LIBS=-lssl -lcrypto -lz # defined in configure.in
-@@ -24,11 +24,14 @@ $(SOAP_CPP_SRC) : $(SOAPHEADER)
- #LIBS=
- 
- bin_PROGRAMS=wsdl2h
--
-+if WITH_OPENSSL
-+wsdl2h_LDADD=$(SOAP_CPP_LIB) $(top_srcdir)/gsoap/plugin/httpda.c $(top_srcdir)/gsoap/plugin/smdevp.c $(top_srcdir)/gsoap/plugin/threads.c $(WSDL2H_EXTRA_LIBS)
-+else
-+wsdl2h_LDADD=$(SOAP_CPP_LIB) $(WSDL2H_EXTRA_LIBS)
-+endif
- wsdl2h_CFLAGS=$(C_DEBUG_FLAGS) $(SOAPCPP2_NO_C_LOCALE) $(WSDL2H_EXTRA_FLAGS)
- wsdl2h_CXXFLAGS=$(C_DEBUG_FLAGS) $(SOAPCPP2_NO_C_LOCALE) $(WSDL2H_EXTRA_FLAGS) $(WSDL2H_IMPORTPATH)
- wsdl2h_CPPFLAGS=$(AM_CPPFLAGS) $(SOAPCPP2_NONAMESPACES) -D$(platform)
- wsdl2h_SOURCES=wsdl2h.cpp wsdl.cpp wadl.cpp schema.cpp types.cpp service.cpp soap.cpp mime.cpp wsp.cpp bpel.cpp $(SOAP_CPP_SRC)
--wsdl2h_LDADD=$(SOAP_CPP_LIB) $(WSDL2H_EXTRA_LIBS)
- 
- CLEANFILES= *~ *C.cpp *H.h *Stub.h *.nsmap
--- 
-2.14.1
-
diff --git a/meta-openembedded/meta-oe/recipes-support/gsoap/gsoap/0001-stdgsoap2-Fix-build-with-musl.patch b/meta-openembedded/meta-oe/recipes-support/gsoap/gsoap/0001-stdgsoap2-Fix-build-with-musl.patch
deleted file mode 100644
index 571cbe5..0000000
--- a/meta-openembedded/meta-oe/recipes-support/gsoap/gsoap/0001-stdgsoap2-Fix-build-with-musl.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From db260fbc7af4c73c997c485a0c69c61594a0e59c Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 30 Aug 2017 19:48:50 -0700
-Subject: [PATCH] stdgsoap2: Fix build with musl
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- gsoap/stdsoap2.c   | 2 +-
- gsoap/stdsoap2.cpp | 4 ++--
- gsoap/stdsoap2.h   | 2 +-
- 3 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/gsoap/stdsoap2.c b/gsoap/stdsoap2.c
-index 58e9df4..62389e1 100644
---- a/gsoap/stdsoap2.c
-+++ b/gsoap/stdsoap2.c
-@@ -4462,7 +4462,7 @@ tcp_gethost(struct soap *soap, const char *addr, struct in_addr *inaddr)
-       return soap->error = SOAP_EOM;
-     return SOAP_OK;
-   }
--#if defined(__GLIBC__) || (defined(HAVE_GETHOSTBYNAME_R) && (defined(FREEBSD) || defined(__FreeBSD__))) || defined(__ANDROID__)
-+#if defined(LINUX) || (defined(HAVE_GETHOSTBYNAME_R) && (defined(FREEBSD) || defined(__FreeBSD__))) || defined(__ANDROID__)
-   if (gethostbyname_r(addr, &hostent, soap->buf, sizeof(soap->buf), &host, &soap->errnum) < 0)
-     host = NULL;
- #elif defined(_AIX43) || ((defined(TRU64) || defined(HP_UX)) && defined(HAVE_GETHOSTBYNAME_R))
-diff --git a/gsoap/stdsoap2.cpp b/gsoap/stdsoap2.cpp
-index 58e9df4..b637161 100644
---- a/gsoap/stdsoap2.cpp
-+++ b/gsoap/stdsoap2.cpp
-@@ -4462,7 +4462,7 @@ tcp_gethost(struct soap *soap, const char *addr, struct in_addr *inaddr)
-       return soap->error = SOAP_EOM;
-     return SOAP_OK;
-   }
--#if defined(__GLIBC__) || (defined(HAVE_GETHOSTBYNAME_R) && (defined(FREEBSD) || defined(__FreeBSD__))) || defined(__ANDROID__)
-+#if defined(LINUX) || (defined(HAVE_GETHOSTBYNAME_R) && (defined(FREEBSD) || defined(__FreeBSD__))) || defined(__ANDROID__)
-   if (gethostbyname_r(addr, &hostent, soap->buf, sizeof(soap->buf), &host, &soap->errnum) < 0)
-     host = NULL;
- #elif defined(_AIX43) || ((defined(TRU64) || defined(HP_UX)) && defined(HAVE_GETHOSTBYNAME_R))
-@@ -19658,7 +19658,7 @@ soap_strerror(struct soap *soap)
-   {
- #ifndef WIN32
- # ifdef HAVE_STRERROR_R
--#  if defined(_GNU_SOURCE) && !defined(__ANDROID__)
-+#  if defined(_GNU_SOURCE) && !defined(__ANDROID__) && defined(__GLIBC__)
-     return strerror_r(err, soap->msgbuf, sizeof(soap->msgbuf)); /* GNU-specific */
- #  else
-     strerror_r(err, soap->msgbuf, sizeof(soap->msgbuf)); /* XSI-compliant */
-diff --git a/gsoap/stdsoap2.h b/gsoap/stdsoap2.h
-index 07a3952..c6ace4c 100644
---- a/gsoap/stdsoap2.h
-+++ b/gsoap/stdsoap2.h
-@@ -947,7 +947,7 @@ extern "C" {
- # endif
- #elif defined(SOCKLEN_T)
- # define SOAP_SOCKLEN_T SOCKLEN_T
--#elif defined(__socklen_t_defined) || defined(_SOCKLEN_T) || defined(CYGWIN) || defined(FREEBSD) || defined(__FreeBSD__) || defined(OPENBSD) || defined(__QNX__) || defined(QNX) || defined(OS390) || defined(__ANDROID__) || defined(_XOPEN_SOURCE)
-+#elif defined(__socklen_t_defined) || defined(_SOCKLEN_T) || defined(CYGWIN) || defined(FREEBSD) || defined(__FreeBSD__) || defined(OPENBSD) || defined(__QNX__) || defined(QNX) || defined(OS390) || defined(__ANDROID__) || defined(_XOPEN_SOURCE) || defined (LINUX)
- # define SOAP_SOCKLEN_T socklen_t
- #elif defined(IRIX) || defined(WIN32) || defined(__APPLE__) || defined(SUN_OS) || defined(OPENSERVER) || defined(TRU64) || defined(VXWORKS)
- # define SOAP_SOCKLEN_T int
--- 
-2.14.1
-
diff --git a/meta-openembedded/meta-oe/recipes-support/gsoap/gsoap_2.8.51.bb b/meta-openembedded/meta-oe/recipes-support/gsoap/gsoap_2.8.95.bb
similarity index 81%
rename from meta-openembedded/meta-oe/recipes-support/gsoap/gsoap_2.8.51.bb
rename to meta-openembedded/meta-oe/recipes-support/gsoap/gsoap_2.8.95.bb
index 36530d2..22a0498 100644
--- a/meta-openembedded/meta-oe/recipes-support/gsoap/gsoap_2.8.51.bb
+++ b/meta-openembedded/meta-oe/recipes-support/gsoap/gsoap_2.8.95.bb
@@ -6,11 +6,9 @@
                     file://GPLv2_license.txt;md5=a33672dbe491b6517750a0389063508b"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}2/${BPN}_${PV}.zip \
-           file://0001-Fix-out-of-tree-builds.patch \
-           file://0001-stdgsoap2-Fix-build-with-musl.patch \
            "
-SRC_URI[md5sum] = "212951d6e1435bb51fa4320f458809ea"
-SRC_URI[sha256sum] = "3e7bb24a9e492f5cb86daca34054c9787152f1d7b70add36b789d03816d5ffa1"
+SRC_URI[md5sum] = "88031646018d60857f21246962d10011"
+SRC_URI[sha256sum] = "fe07aa152cd946ef8ebd3f87653f14c1d38efe7c6e6fce8c6f773c4814f79baf"
 
 inherit autotools
 
diff --git a/meta-openembedded/meta-oe/recipes-support/htop/files/0001-Ask-for-python3-specifically.patch b/meta-openembedded/meta-oe/recipes-support/htop/files/0001-Ask-for-python3-specifically.patch
new file mode 100644
index 0000000..6153bde
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/htop/files/0001-Ask-for-python3-specifically.patch
@@ -0,0 +1,26 @@
+From 08aca4816cc798fce58b6235c26585a0063fa8af Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 26 Nov 2019 10:43:49 -0800
+Subject: [PATCH] Ask for python3 specifically
+
+python2 is on its way out
+
+Upstream-Status: Submitted [https://github.com/hishamhm/htop/pull/968]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ scripts/MakeHeader.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/scripts/MakeHeader.py b/scripts/MakeHeader.py
+index 7c48fdd..7a7586d 100755
+--- a/scripts/MakeHeader.py
++++ b/scripts/MakeHeader.py
+@@ -1,4 +1,4 @@
+-#!/usr/bin/env python
++#!/usr/bin/env python3
+ import os, sys, string, io
+ try:
+    from StringIO import StringIO
+-- 
+2.24.0
+
diff --git a/meta-openembedded/meta-oe/recipes-support/htop/htop_2.2.0.bb b/meta-openembedded/meta-oe/recipes-support/htop/htop_2.2.0.bb
index 01c856d..64eb0c5 100644
--- a/meta-openembedded/meta-oe/recipes-support/htop/htop_2.2.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/htop/htop_2.2.0.bb
@@ -7,7 +7,9 @@
 DEPENDS = "ncurses"
 
 SRC_URI = "http://hisham.hm/htop/releases/${PV}/${BP}.tar.gz \
-           file://0001-Use-pkg-config.patch"
+           file://0001-Use-pkg-config.patch \
+           file://0001-Ask-for-python3-specifically.patch \
+           "
 SRC_URI[md5sum] = "0d816b6beed31edc75babcfbf863ffa8"
 SRC_URI[sha256sum] = "d9d6826f10ce3887950d709b53ee1d8c1849a70fa38e91d5896ad8cbc6ba3c57"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.67.bb b/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.68.bb
similarity index 86%
rename from meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.67.bb
rename to meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.68.bb
index c400462..f5569de 100644
--- a/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.67.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.68.bb
@@ -8,8 +8,8 @@
 
 SRC_URI = "${GNU_MIRROR}/libmicrohttpd/${BPN}-${PV}.tar.gz \
 "
-SRC_URI[md5sum] = "e28e04e3d3eca62f5754efb844d17812"
-SRC_URI[sha256sum] = "7e1f852723d099d4827d7ebde4d02dd00fd8da62149526fdb9fae058c5a60495"
+SRC_URI[md5sum] = "1c3ca3bf92dfc680538b4186c58a9bd0"
+SRC_URI[sha256sum] = "c5716e2a2899abc9e16c8fa7a1a58da88f81aca96a0b7e68a5d4d89e21610b61"
 
 inherit autotools lib_package pkgconfig gettext
 
diff --git a/meta-openembedded/meta-oe/recipes-support/libssh2/files/CVE-2019-17498.patch b/meta-openembedded/meta-oe/recipes-support/libssh2/files/CVE-2019-17498.patch
new file mode 100644
index 0000000..0010800
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libssh2/files/CVE-2019-17498.patch
@@ -0,0 +1,131 @@
+From dedcbd106f8e52d5586b0205bc7677e4c9868f9c Mon Sep 17 00:00:00 2001
+From: Will Cosgrove <will@panic.com>
+Date: Fri, 30 Aug 2019 09:57:38 -0700
+Subject: [PATCH] packet.c: improve message parsing (#402)
+
+* packet.c: improve parsing of packets
+
+file: packet.c
+
+notes:
+Use _libssh2_get_string API in SSH_MSG_DEBUG/SSH_MSG_DISCONNECT. Additional uint32 bounds check in SSH_MSG_GLOBAL_REQUEST.
+
+Upstream-Status: Backport
+CVE: CVE-2019-17498
+Signed-off-by: Li Zhou <li.zhou@windriver.com>
+---
+ src/packet.c | 68 ++++++++++++++++++++++------------------------------
+ 1 file changed, 29 insertions(+), 39 deletions(-)
+
+diff --git a/src/packet.c b/src/packet.c
+index 38ab629..2e01bfc 100644
+--- a/src/packet.c
++++ b/src/packet.c
+@@ -419,8 +419,8 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
+                     size_t datalen, int macstate)
+ {
+     int rc = 0;
+-    char *message = NULL;
+-    char *language = NULL;
++    unsigned char *message = NULL;
++    unsigned char *language = NULL;
+     size_t message_len = 0;
+     size_t language_len = 0;
+     LIBSSH2_CHANNEL *channelp = NULL;
+@@ -472,33 +472,23 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
+ 
+         case SSH_MSG_DISCONNECT:
+             if(datalen >= 5) {
+-                size_t reason = _libssh2_ntohu32(data + 1);
++                uint32_t reason = 0;
++                struct string_buf buf;
++                buf.data = (unsigned char *)data;
++                buf.dataptr = buf.data;
++                buf.len = datalen;
++                buf.dataptr++; /* advance past type */
+ 
+-                if(datalen >= 9) {
+-                    message_len = _libssh2_ntohu32(data + 5);
++                _libssh2_get_u32(&buf, &reason);
++                _libssh2_get_string(&buf, &message, &message_len);
++                _libssh2_get_string(&buf, &language, &language_len);
+ 
+-                    if(message_len < datalen-13) {
+-                        /* 9 = packet_type(1) + reason(4) + message_len(4) */
+-                        message = (char *) data + 9;
+-
+-                        language_len =
+-                            _libssh2_ntohu32(data + 9 + message_len);
+-                        language = (char *) data + 9 + message_len + 4;
+-
+-                        if(language_len > (datalen-13-message_len)) {
+-                            /* bad input, clear info */
+-                            language = message = NULL;
+-                            language_len = message_len = 0;
+-                        }
+-                    }
+-                    else
+-                        /* bad size, clear it */
+-                        message_len = 0;
+-                }
+                 if(session->ssh_msg_disconnect) {
+-                    LIBSSH2_DISCONNECT(session, reason, message,
+-                                       message_len, language, language_len);
++                    LIBSSH2_DISCONNECT(session, reason, (const char *)message,
++                                       message_len, (const char *)language,
++                                       language_len);
+                 }
++
+                 _libssh2_debug(session, LIBSSH2_TRACE_TRANS,
+                                "Disconnect(%d): %s(%s)", reason,
+                                message, language);
+@@ -539,24 +529,24 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
+                 int always_display = data[1];
+ 
+                 if(datalen >= 6) {
+-                    message_len = _libssh2_ntohu32(data + 2);
+-
+-                    if(message_len <= (datalen - 10)) {
+-                        /* 6 = packet_type(1) + display(1) + message_len(4) */
+-                        message = (char *) data + 6;
+-                        language_len = _libssh2_ntohu32(data + 6 +
+-                                                        message_len);
+-
+-                        if(language_len <= (datalen - 10 - message_len))
+-                            language = (char *) data + 10 + message_len;
+-                    }
++                    struct string_buf buf;
++                    buf.data = (unsigned char *)data;
++                    buf.dataptr = buf.data;
++                    buf.len = datalen;
++                    buf.dataptr += 2; /* advance past type & always display */
++
++                    _libssh2_get_string(&buf, &message, &message_len);
++                    _libssh2_get_string(&buf, &language, &language_len);
+                 }
+ 
+                 if(session->ssh_msg_debug) {
+-                    LIBSSH2_DEBUG(session, always_display, message,
+-                                  message_len, language, language_len);
++                    LIBSSH2_DEBUG(session, always_display,
++                                  (const char *)message,
++                                  message_len, (const char *)language,
++                                  language_len);
+                 }
+             }
++
+             /*
+              * _libssh2_debug will actually truncate this for us so
+              * that it's not an inordinate about of data
+@@ -579,7 +569,7 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
+                 uint32_t len = 0;
+                 unsigned char want_reply = 0;
+                 len = _libssh2_ntohu32(data + 1);
+-                if(datalen >= (6 + len)) {
++                if((len <= (UINT_MAX - 6)) && (datalen >= (6 + len))) {
+                     want_reply = data[5 + len];
+                     _libssh2_debug(session,
+                                    LIBSSH2_TRACE_CONN,
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-support/libssh2/libssh2_1.9.0.bb b/meta-openembedded/meta-oe/recipes-support/libssh2/libssh2_1.9.0.bb
index 25e0af3..185ea11 100644
--- a/meta-openembedded/meta-oe/recipes-support/libssh2/libssh2_1.9.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libssh2/libssh2_1.9.0.bb
@@ -7,8 +7,9 @@
 LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "file://COPYING;md5=c5cf34fc0acb44b082ef50ef5e4354ca"
 
-SRC_URI = "http://www.libssh2.org/download/${BP}.tar.gz"
-
+SRC_URI = "http://www.libssh2.org/download/${BP}.tar.gz \
+           file://CVE-2019-17498.patch \
+"
 SRC_URI[md5sum] = "1beefafe8963982adc84b408b2959927"
 SRC_URI[sha256sum] = "d5fb8bd563305fd1074dda90bd053fb2d29fc4bce048d182f96eaa466dfadafd"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/links/links-x11_2.16.bb b/meta-openembedded/meta-oe/recipes-support/links/links-x11_2.20.2.bb
similarity index 92%
rename from meta-openembedded/meta-oe/recipes-support/links/links-x11_2.16.bb
rename to meta-openembedded/meta-oe/recipes-support/links/links-x11_2.20.2.bb
index 90fa200..645fe3b 100644
--- a/meta-openembedded/meta-oe/recipes-support/links/links-x11_2.16.bb
+++ b/meta-openembedded/meta-oe/recipes-support/links/links-x11_2.20.2.bb
@@ -47,7 +47,7 @@
     install -m 0644 ${WORKDIR}/links2.png ${D}/${datadir}/pixmaps
 }
 
-SRC_URI[md5sum] = "645fb0c0294e4c3268f94d307d394ffb"
-SRC_URI[sha256sum] = "82f03038d5e050a65681b9888762af41c40fd42dec7e59a8d630bfb0ee134a3f"
+SRC_URI[md5sum] = "ee39e612249440d0497535d0dafc3c0e"
+SRC_URI[sha256sum] = "4b4f07d0e6261118d1365a5a5bfa31e1eafdbd280cfae6f0e9eedfea51a2f424"
 SRC_URI[icon.md5sum] = "477e8787927c634614bac01b44355a33"
 SRC_URI[icon.sha256sum] = "eddcd8b8c8698aa621d1a453943892d77b72ed492e0d14e0dbac5c6a57e52f47"
diff --git a/meta-openembedded/meta-oe/recipes-support/links/links_2.16.bb b/meta-openembedded/meta-oe/recipes-support/links/links_2.20.2.bb
similarity index 77%
rename from meta-openembedded/meta-oe/recipes-support/links/links_2.16.bb
rename to meta-openembedded/meta-oe/recipes-support/links/links_2.20.2.bb
index 19ea7a6..1a36291 100644
--- a/meta-openembedded/meta-oe/recipes-support/links/links_2.16.bb
+++ b/meta-openembedded/meta-oe/recipes-support/links/links_2.20.2.bb
@@ -9,7 +9,7 @@
                 --without-directfb --without-pmshell --without-atheos \
                 --without-x"
 
-SRC_URI[md5sum] = "645fb0c0294e4c3268f94d307d394ffb"
-SRC_URI[sha256sum] = "82f03038d5e050a65681b9888762af41c40fd42dec7e59a8d630bfb0ee134a3f"
+SRC_URI[md5sum] = "ee39e612249440d0497535d0dafc3c0e"
+SRC_URI[sha256sum] = "4b4f07d0e6261118d1365a5a5bfa31e1eafdbd280cfae6f0e9eedfea51a2f424"
 SRC_URI[icon.md5sum] = "477e8787927c634614bac01b44355a33"
 SRC_URI[icon.sha256sum] = "eddcd8b8c8698aa621d1a453943892d77b72ed492e0d14e0dbac5c6a57e52f47"
diff --git a/meta-openembedded/meta-oe/recipes-support/p910nd/p910nd_0.95.bb b/meta-openembedded/meta-oe/recipes-support/p910nd/p910nd_0.97.bb
similarity index 80%
rename from meta-openembedded/meta-oe/recipes-support/p910nd/p910nd_0.95.bb
rename to meta-openembedded/meta-oe/recipes-support/p910nd/p910nd_0.97.bb
index 5ebbb29..45aa0d4 100644
--- a/meta-openembedded/meta-oe/recipes-support/p910nd/p910nd_0.95.bb
+++ b/meta-openembedded/meta-oe/recipes-support/p910nd/p910nd_0.97.bb
@@ -9,8 +9,8 @@
 SRC_URI = "${SOURCEFORGE_MIRROR}/p910nd/p910nd-${PV}.tar.bz2 \
            file://fix-var-lock.patch"
 
-SRC_URI[md5sum] = "c7ac6afdf7730ac8387a8e87198d4491"
-SRC_URI[sha256sum] = "7d78642c86dc247fbdef1ff85c56629dcdc6b2a457c786420299e284fffcb029"
+SRC_URI[md5sum] = "69461a6c54dca0b13ecad5b83864b43e"
+SRC_URI[sha256sum] = "4ac980a3ae24babae6f70f0a692625ece03a4a92c357fbb10d2e368386c3c26f"
 
 do_compile () {
     ${CC} ${LDFLAGS} -o p910nd p910nd.c
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin/use_py3.patch b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin/use_py3.patch
new file mode 100644
index 0000000..c7b4163
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin/use_py3.patch
@@ -0,0 +1,20 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -1488,7 +1488,7 @@ AC_ARG_WITH([python],
+ 
+ if test "x$enable_dbus" = "xyes" || test "x$enable_consoleui" = "xyes" ; then
+ 	if test -z "$PYTHON" -o "x$PYTHON" = "xyes"; then
+-		AC_PATH_PROG([PYTHON], [python], [no])
++		AC_PATH_PROG([PYTHON], [python3], [no])
+ 	fi
+ 
+ 	if test x"$PYTHON" = x"no" ; then
+@@ -1568,7 +1568,7 @@ dnl Check for Python headers (currently
+ dnl (Thanks to XChat)
+ if test "x$enable_consoleui" = "xyes" -a ! -z "$PYTHON" -a x"$PYTHON" != x"no" ; then
+         AC_MSG_CHECKING(for Python compile flags)
+-        PKG_CHECK_MODULES(PY, python, [
++        PKG_CHECK_MODULES(PY, python3, [
+                 AC_SUBST(PY_CFLAGS)
+                 AC_SUBST(PY_LIBS)
+         ], [
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.13.0.bb b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.13.0.bb
index b094ba2..fdc79e8 100644
--- a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.13.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.13.0.bb
@@ -2,15 +2,16 @@
 SECTION = "x11/network"
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-DEPENDS = "python virtual/libintl intltool-native libxml2 gconf glib-2.0-native"
+DEPENDS = "python3 virtual/libintl intltool-native libxml2 gconf glib-2.0-native"
 
-inherit autotools gettext pkgconfig gconf perlnative
+inherit autotools gettext pkgconfig gconf perlnative python3native
 
 SRC_URI = "\
     ${SOURCEFORGE_MIRROR}/pidgin/pidgin-${PV}.tar.bz2 \
     file://sanitize-configure.ac.patch \
     file://purple-OE-branding-25.patch \
     file://pidgin-cross-python-265.patch \
+    file://use_py3.patch \
 "
 
 SRC_URI[md5sum] = "423403494fe1951e47cc75231f743bb0"
diff --git a/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng.inc b/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng.inc
index 3aba447..8e53689 100644
--- a/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng.inc
+++ b/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng.inc
@@ -27,7 +27,7 @@
 
 UPSTREAM_CHECK_URI = "https://github.com/balabit/syslog-ng/releases"
 
-inherit autotools gettext systemd pkgconfig update-rc.d
+inherit autotools gettext systemd pkgconfig update-rc.d multilib_header
 
 EXTRA_OECONF = " \
     --enable-dynamic-linking \
@@ -103,6 +103,8 @@
     else
         install ${WORKDIR}/syslog-ng.conf.sysvinit ${D}${sysconfdir}/${BPN}/${BPN}.conf
     fi
+
+    oe_multilib_header syslog-ng/syslog-ng-config.h
 }
 
 FILES_${PN} += "${datadir}/include/scl/ ${datadir}/xsd ${datadir}/tools ${systemd_unitdir}/system/multi-user.target.wants/*"
diff --git a/meta-openembedded/meta-oe/recipes-test/googletest/googletest_git.bb b/meta-openembedded/meta-oe/recipes-test/googletest/googletest_git.bb
index e1df9b6..b675ea0 100644
--- a/meta-openembedded/meta-oe/recipes-test/googletest/googletest_git.bb
+++ b/meta-openembedded/meta-oe/recipes-test/googletest/googletest_git.bb
@@ -5,6 +5,8 @@
 LIC_FILES_CHKSUM = "file://googlemock/LICENSE;md5=cbbd27594afd089daa160d3a16dd515a \
                     file://googletest/LICENSE;md5=cbbd27594afd089daa160d3a16dd515a"
 
+PV = "1.10.0"
+
 PROVIDES += "gmock gtest"
 
 S = "${WORKDIR}/git"
