subtree updates

poky: 50d272863d..0b3e371116:
  Alistair Francis (1):
        recipes-bsp/opensbi: Fix the u-boot payload name

  Changqing Li (2):
        update-rc.d: update SRCREV and license checksum
        update-rc.d: support enable/disable options

  Chen Qi (2):
        context.py: avoid skipping tests by meaningless command argument
        oeqa: avoid class setup method to run when skipping the whole class

  Joe Slater (1):
        glib-2.0: Fix CVE-2019-12450

  Jonathan Rajotte (1):
        lttng-tools: update to 2.10.7

  Joseph Reynolds (1):
        dropbear: new feature: disable-weak-ciphers

  Joshua Watt (4):
        perl: Improve ptest package reproducibility
        python3: Reformat sysconfig
        perl: Reproducible build fixes
        bash: Remove .build files for reproducible builds

  Martin Jansa (1):
        gcc-runtime.inc: create the correct directory before creating the symlinks in it

  Ricardo Ribalda Delgado (1):
        go: avoid host contamination by GOCACHE

  Ross Burton (1):
        pigz: bump alternative priority

  Tim Orling (1):
        ptest-packagelists.inc: add libmodule-build-perl-ptest

meta-openembedded: 3b245e4fe8..64974b8779:
  Adrian Bunk (9):
        libauthen-radius-perl: Remove manual RDEPENDS from PN-ptest to PN package
        network-manager-applet: Remove obsolete dbus-glib and libnm-glib dependencies
        ndctl: Remove the unnecessary dependency on virtual/kernel
        tipcutils: Remove the unnecessary dependency on virtual/kernel
        xl2tpd: Remove the old 1.3.6 version
        gpsd: Force using python-scons-native for now
        efibootmgr: Remove, was moved to oe-core
        efivar: Remove, was moved to oe-core
        wireless-regdb: Remove, was moved to oe-core

  Andrey Zhizhikin (1):
        cpuburn-arm: add aarch64 machine and build configuration

  Ankit Navik (1):
        safec: Add Safe C license

  Bartosz Golaszewski (1):
        libgpiod: upgrade to v1.4

  Hongxu Jia (1):
        dracut: fix generated initramfs boot failure under bash 5

  Kai Kang (1):
        xfce4-screensaver: 0.1.4 -> 0.1.5

  Khem Raj (5):
        stressapptest: Fix build with libc++
        stressapptest: Implement reading sysfs and use it if sysconf is not there
        stressapptest: Use git SHA instead of git archive
        gmime: Add recipe
        pidgin-sipe: Depend on gmime

  Maciej Pijanowski (1):
        recipes-benchmark/stressapptest_1.0.9.bb: add recipe

  Mingli Yu (3):
        mariadb: Upgrade to 10.3.16
        mozjs: Fix do_patch error for mips64-n32
        python-lxml: replace -Og with -O for mips64-32

  Naveen Saini (1):
        pm-graph: fix multilib build failure

  Nicola Lunghi (1):
        libp11: No need to delete *.la anymore

  Oleksandr Kravchuk (1):
        openconnect: update to 8.03

  Pascal Bach (3):
        protobuf: 3.6.1 -> 3.8.0
        protobuf-c: add patch for protobuf 3 compatibility
        python3-protobuf, python-protobuf: 3.6.1 -> 3.8.0

  Persian Prince (1):
        blueman_%.bbappend: Avoid PAK archive (application/x-pak)

  Saikiran Madugula (1):
        gitver: Pass git directory argument to gitrev_run

  Tim Orling (1):
        libmodule-build-perl: drop, has moved to oe-core

  Yi Zhao (1):
        snort: upgrade 2.9.11.1 -> 2.9.13

  Zang Ruochen (3):
        python-twisted: upgrade 19.2.0 -> 19.2.1
        python-wrapt: upgrade 1.11.1 -> 1.11.2
        python-certifi: upgrade 2019.3.9 -> 2019.6.16

Change-Id: I0c3385628e0382c56c94fa27ba4d14e301c2e558
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/meta-openembedded/meta-oe/classes/gitver.bbclass b/meta-openembedded/meta-oe/classes/gitver.bbclass
index 07f44c3..cab850c 100644
--- a/meta-openembedded/meta-oe/classes/gitver.bbclass
+++ b/meta-openembedded/meta-oe/classes/gitver.bbclass
@@ -48,7 +48,7 @@
     srcdir = d.getVar("EXTERNALSRC") or d.getVar("S")
     gitdir = os.path.abspath(os.path.join(srcdir, ".git"))
     try:
-        rev = gitrev_run("git rev-list HEAD -1")
+        rev = gitrev_run("git rev-list HEAD -1", gitdir)
         return rev[:7]
     except Exception as exc:
         bb.fatal(str(exc))
diff --git a/meta-openembedded/meta-oe/conf/layer.conf b/meta-openembedded/meta-oe/conf/layer.conf
index 507ac50..31f2f17 100644
--- a/meta-openembedded/meta-oe/conf/layer.conf
+++ b/meta-openembedded/meta-oe/conf/layer.conf
@@ -51,12 +51,6 @@
   phoronix-test-suite->php \
 "
 
-# Depends on ndctl (through nvdimm PACKAGECONFIG) which depends on MACHINE_ARCH kernel
-# and making libblockdev MACHINE_ARCH is not an option as python3-blivet, udisks2, gvfs
-# would be MACHINE_ARCH as well
-SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \
-  libblockdev->ndctl \
-"
 # ttf.inc inherits fontcache which adds fontconfig-utils to RDEPENDS
 SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \
   terminus-font->fontconfig \
diff --git a/meta-openembedded/meta-oe/licenses/safec b/meta-openembedded/meta-oe/licenses/safec
new file mode 100644
index 0000000..2bf1e63
--- /dev/null
+++ b/meta-openembedded/meta-oe/licenses/safec
@@ -0,0 +1,26 @@
+Safe C Library
+
+Copyright (C) 2012, 2013 Cisco Systems
+Copyright (C) 2017 Reini Urban
+All rights reserved.
+
+Permission is hereby granted, free of charge, to any person
+obtaining a copy of this software and associated documentation
+files (the "Software"), to deal in the Software without
+restriction, including without limitation the rights to use,
+copy, modify, merge, publish, distribute, sublicense, and/or
+sell copies of the Software, and to permit persons to whom the
+Software is furnished to do so, subject to the following
+conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT.  IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb b/meta-openembedded/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb
index 6189da3..b21212a 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb
@@ -18,21 +18,35 @@
 S = "${WORKDIR}/git"
 
 do_compile() {
-    ${CC} ${CFLAGS} ${LDFLAGS} burn.S -o burn
-    ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a7.S -o burn-a7
-    ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a8.S -o burn-a8
-    ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a9.S -o burn-a9
-    ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a53.S -o burn-a53
-    ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-krait.S -o burn-krait
+
+    # If the arch is set to ARM 64-bit -  we only produce and ship burn-a53 version.
+    # In case of ARM 32-bit - we would build all variants, since burn-a53 supports both
+    # 32 and 64-bit builds
+    if ${@bb.utils.contains('TUNE_FEATURES', 'aarch64', 'true', 'false', d)}; then
+        ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a53.S -o burn-a53
+    else
+        ${CC} ${CFLAGS} ${LDFLAGS} burn.S -o burn
+        ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a7.S -o burn-a7
+        ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a8.S -o burn-a8
+        ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a9.S -o burn-a9
+        ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a53.S -o burn-a53
+        ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-krait.S -o burn-krait
+    fi
 }
 
 do_install() {
     install -d ${D}${bindir}
-    for f in burn burn-a7 burn-a8 burn-a9 burn-a53 burn-krait; do
-        install -m 0755 $f ${D}${bindir}/$f
-    done
+
+    if ${@bb.utils.contains('TUNE_FEATURES', 'aarch64', 'true', 'false', d)}; then
+        install -m 0755 burn-a53 ${D}${bindir}
+    else
+        for f in burn burn-a7 burn-a8 burn-a9 burn-a53 burn-krait; do
+            install -m 0755 $f ${D}${bindir}/$f
+        done
+    fi
 }
 
 COMPATIBLE_MACHINE ?= "(^$)"
 COMPATIBLE_MACHINE_armv7a = "(.*)"
 COMPATIBLE_MACHINE_armv7ve = "(.*)"
+COMPATIBLE_MACHINE_aarch64 = "(.*)"
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/stressapptest/stressapptest/libcplusplus-compat.patch b/meta-openembedded/meta-oe/recipes-benchmark/stressapptest/stressapptest/libcplusplus-compat.patch
new file mode 100644
index 0000000..f5e7da3
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-benchmark/stressapptest/stressapptest/libcplusplus-compat.patch
@@ -0,0 +1,28 @@
+Fix compile on sytems using libc++ instead of libstdc++
+
+libc++ does not really implement __gnu_cxx namespace and it
+compiles fine without this namespace, therefore detect libc++
+and if it is used them exclude this namespace 
+
+See https://github.com/stressapptest/stressapptest/issues/47
+
+Fixes
+
+./sattypes.h:33:17: error: expected namespace name
+using namespace __gnu_cxx; //NOLINT
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- stressapptest-1.0.9.orig/src/sattypes.h
++++ stressapptest-1.0.9/src/sattypes.h
+@@ -30,7 +30,9 @@
+ #include "stressapptest_config_android.h"  // NOLINT
+ #else
+ #include "stressapptest_config.h"  // NOLINT
++#ifndef _LIBCPP_VERSION
+ using namespace __gnu_cxx;  //NOLINT
++#endif  // _LIBCPP_VERSION
+ #endif  // __ANDROID__
+ using namespace std;
+
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/stressapptest/stressapptest/read_sysfs_for_cachesize.patch b/meta-openembedded/meta-oe/recipes-benchmark/stressapptest/stressapptest/read_sysfs_for_cachesize.patch
new file mode 100644
index 0000000..8c251ae
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-benchmark/stressapptest/stressapptest/read_sysfs_for_cachesize.patch
@@ -0,0 +1,72 @@
+sysconf params like _SC_LEVEL1_DCACHE_LINESIZE are not universally
+implemented, therefore check for them being available, if not there
+then read the sysfs directly to get the value
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/src/sat.cc
++++ b/src/sat.cc
+@@ -1482,15 +1482,47 @@ int Sat::CpuCount() {
+   return sysconf(_SC_NPROCESSORS_CONF);
+ }
+ 
++int Sat::ReadInt(const char *filename, int *value) {
++  char line[64];
++  int fd = open(filename, O_RDONLY), err = -1;
++
++  if (fd < 0)
++    return -1;
++  if (read(fd, line, sizeof(line)) > 0) {
++    *value = atoi(line);
++    err = 0;
++  }
++
++  close(fd);
++  return err;
++}
++
+ // Return the worst case (largest) cache line size of the various levels of
+ // cache actually prsent in the machine.
+ int Sat::CacheLineSize() {
+-  int max_linesize = sysconf(_SC_LEVEL1_DCACHE_LINESIZE);
+-  int linesize = sysconf(_SC_LEVEL2_CACHE_LINESIZE);
++  int max_linesize, linesize;
++#ifdef _SC_LEVEL1_DCACHE_LINESIZE
++  max_linesize = sysconf(_SC_LEVEL1_DCACHE_LINESIZE);
++#else
++  ReadInt("/sys/devices/system/cpu/cpu0/cache/index0/coherency_line_size", &max_linesize);
++#endif
++#ifdef _SC_LEVEL2_DCACHE_LINESIZE
++  linesize = sysconf(_SC_LEVEL2_DCACHE_LINESIZE);
++#else
++  ReadInt("/sys/devices/system/cpu/cpu0/cache/index1/coherency_line_size", &linesize);
++#endif
+   if (linesize > max_linesize) max_linesize = linesize;
+-  linesize = sysconf(_SC_LEVEL3_CACHE_LINESIZE);
++#ifdef _SC_LEVEL3_DCACHE_LINESIZE
++  linesize = sysconf(_SC_LEVEL3_DCACHE_LINESIZE);
++#else
++  ReadInt("/sys/devices/system/cpu/cpu0/cache/index2/coherency_line_size", &linesize);
++#endif
+   if (linesize > max_linesize) max_linesize = linesize;
+-  linesize = sysconf(_SC_LEVEL4_CACHE_LINESIZE);
++#ifdef _SC_LEVEL4_DCACHE_LINESIZE
++  linesize = sysconf(_SC_LEVEL4_DCACHE_LINESIZE);
++#else
++  ReadInt("/sys/devices/system/cpu/cpu0/cache/index3/coherency_line_size", &linesize);
++#endif
+   if (linesize > max_linesize) max_linesize = linesize;
+   return max_linesize;
+ }
+--- a/src/sat.h
++++ b/src/sat.h
+@@ -136,7 +136,8 @@ class Sat {
+   int CpuCount();
+   // Return the worst-case (largest) cache line size of the system.
+   int CacheLineSize();
+-
++  // Read int values from kernel file system e.g. sysfs
++  int ReadInt(const char *filename, int *value);
+   // Collect error counts from threads.
+   int64 GetTotalErrorCount();
+ 
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/stressapptest/stressapptest_1.0.9.bb b/meta-openembedded/meta-oe/recipes-benchmark/stressapptest/stressapptest_1.0.9.bb
new file mode 100644
index 0000000..a2966e9
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-benchmark/stressapptest/stressapptest_1.0.9.bb
@@ -0,0 +1,21 @@
+SUMMARY = "Stressful Application Test"
+DESCRIPTION = "Stressful Application Test (or stressapptest, its unix name) \
+ is a memory interface test. It tries to maximize randomized traffic to memory \
+ from processor and I/O, with the intent of creating a realistic high load \
+ situation in order to test the existing hardware devices in a computer. \
+"
+HOMEPAGE = "https://github.com/stressapptest/stressapptest"
+SECTION = "benchmark"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=55ea9d559f985fb4834317d8ed6b9e58"
+
+SRCREV = "fb72e5e5f0879231f38e0e826a98a6ca2d1ca38e"
+
+SRC_URI = "git://github.com/stressapptest/stressapptest \
+           file://libcplusplus-compat.patch \
+           file://read_sysfs_for_cachesize.patch \
+          "
+
+S = "${WORKDIR}/git"
+
+inherit autotools
diff --git a/meta-openembedded/meta-oe/recipes-bsp/efibootmgr/efibootmgr_17.bb b/meta-openembedded/meta-oe/recipes-bsp/efibootmgr/efibootmgr_17.bb
deleted file mode 100644
index 4edb2e6..0000000
--- a/meta-openembedded/meta-oe/recipes-bsp/efibootmgr/efibootmgr_17.bb
+++ /dev/null
@@ -1,28 +0,0 @@
-DESCRIPTION = "Linux user-space application to modify the EFI Boot Manager."
-SUMMARY = "EFI Boot Manager"
-HOMEPAGE = "https://github.com/rhinstaller/efibootmgr"
-SECTION = "base"
-
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"
-
-DEPENDS = "pciutils zlib efivar"
-
-COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux"
-
-SRCREV = "e067160ecef8208e1944002e5d50b275733211fb"
-SRC_URI = "git://github.com/rhinstaller/efibootmgr.git;protocol=https \
-           file://0001-remove-extra-decl.patch \
-          "
-S = "${WORKDIR}/git"
-
-inherit pkgconfig
-
-EXTRA_OEMAKE = "'EFIDIR=/' 'CC=${CC}' 'CFLAGS=${CFLAGS} -I${S}/src/include `pkg-config --cflags efivar`'"
-
-CFLAGS_append_toolchain-clang = " -Wno-error"
-do_install () {
-    install -D -p -m0755 ${B}/src/efibootmgr ${D}/${sbindir}/efibootmgr
-}
-
-CLEANBROKEN = "1"
diff --git a/meta-openembedded/meta-oe/recipes-bsp/efibootmgr/files/0001-remove-extra-decl.patch b/meta-openembedded/meta-oe/recipes-bsp/efibootmgr/files/0001-remove-extra-decl.patch
deleted file mode 100644
index 42f3a81..0000000
--- a/meta-openembedded/meta-oe/recipes-bsp/efibootmgr/files/0001-remove-extra-decl.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 99b578501643377e0b1994b2a068b790d189d5ad Mon Sep 17 00:00:00 2001
-From: Peter Jones <pjones@redhat.com>
-Date: Wed, 13 Jun 2018 09:41:01 -0400
-Subject: [PATCH] remove extra decl
-
-Signed-off-by: Peter Jones <pjones@redhat.com>
-
-Upstream-Status: Backport [git://github.com/rhinstaller/efibootmgr.git]
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
----
- src/efibootmgr.c | 3 ---
- 1 file changed, 3 deletions(-)
-
-diff --git a/src/efibootmgr.c b/src/efibootmgr.c
-index de38f01..4e1a680 100644
---- a/src/efibootmgr.c
-+++ b/src/efibootmgr.c
-@@ -1536,9 +1536,6 @@ parse_opts(int argc, char **argv)
- 					       "invalid numeric value %s\n",
- 					       optarg);
- 			}
--                        /* XXX efivar-36 accidentally doesn't have a public
--                         * header for this */
--			extern int efi_set_verbose(int verbosity, FILE *errlog);
- 			efi_set_verbose(opts.verbose - 2, stderr);
- 			break;
- 		case 'V':
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar/0001-efivar-fix-for-cross-compile.patch b/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
deleted file mode 100644
index 251e50c..0000000
--- a/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From a9115d9e6f0f62d6bb735ce3698858d1f89f8d73 Mon Sep 17 00:00:00 2001
-From: Kai Kang <kai.kang@windriver.com>
-Date: Fri, 25 Sep 2015 18:14:31 +0800
-Subject: [PATCH] efivar: fix for cross compile
-
-It builds and calls elf file makeguids to generate a header file which
-doesn't work for cross compile. Fix it.
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
-
-Upstream-Status: Pending
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
----
- src/Makefile | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/Makefile b/src/Makefile
-index 0c16597..dcc7fc8 100644
---- a/src/Makefile
-+++ b/src/Makefile
-@@ -40,8 +40,8 @@ abicheck : $(patsubst %.so,%.abicheck,$(LIBTARGETS))
- ./guid-symbols.c : include/efivar/efivar-guids.h
- ./guids.bin : include/efivar/efivar-guids.h
- ./names.bin : include/efivar/efivar-guids.h
--include/efivar/efivar-guids.h : makeguids guids.txt
--	./makeguids guids.txt guids.bin names.bin \
-+include/efivar/efivar-guids.h : guids.txt
-+	makeguids guids.txt guids.bin names.bin \
- 		guid-symbols.c include/efivar/efivar-guids.h
- 
- makeguids : CPPFLAGS+=-DEFIVAR_BUILD_ENVIRONMENT
diff --git a/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar/0004-fix-unknow-option-for-gold-linker.patch b/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar/0004-fix-unknow-option-for-gold-linker.patch
deleted file mode 100644
index 96d0c6b..0000000
--- a/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar/0004-fix-unknow-option-for-gold-linker.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From b3d35e7dd27a755df5acbe050837885914dbb28b Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Tue, 10 May 2016 11:34:50 -0400
-Subject: [PATCH]  fix unknow option for gold linker
-
-- Revert the following patch, since oe-core work with gcc 5
-...
-commit 3055a3797f16693dfdd855fa68bc57fd900dc408
-Author: Peter Jones <pjones@redhat.com>
-Date:   Mon Feb 15 14:15:40 2016 -0500
-
-    Make gcc.specs work with gcc 6 / binutils 2.26
-
-    Apparently binutils 2.26 gets real picky about "ld -PIC" vs "ld -fPIC".
-
-    Signed-off-by: Peter Jones <pjones@redhat.com>
-...
-
-- Remove unknown option '--add-needed'
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- gcc.specs | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: git/gcc.specs
-===================================================================
---- git.orig/gcc.specs
-+++ git/gcc.specs
-@@ -14,4 +14,4 @@
- + %{!shared:%{!static:%{!r:-pie}}} %{static:-Wl,-no-fatal-warnings -Wl,-static -static -Wl,-z,relro,-z,now}
- 
- *link:
--+ %{!static:--fatal-warnings} --no-undefined-version --no-allow-shlib-undefined --add-needed -z now --build-id %{!static:%{!shared:-pie}} %{shared:-z relro} %{static:%<pie}
-++ %{!static:--fatal-warnings} --no-undefined-version --no-allow-shlib-undefined -z now --build-id %{!static:%{!shared:-pie}} %{shared:-z relro} %{static:%<pie}
diff --git a/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar/allow-multi-definitions-for-native.patch b/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar/allow-multi-definitions-for-native.patch
deleted file mode 100644
index 043b07a..0000000
--- a/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar/allow-multi-definitions-for-native.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From c10368b397483a2fc7b493c099d8416d902f8cd8 Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Tue, 31 Jul 2018 14:18:35 +0800
-Subject: [PATCH] allow multi definitions for native
-
-Upstream-Status: Pending
-
-It fails to create .so file when build efivar-native:
-
-| lib.o:(*IND*+0x0): multiple definition of `efi_set_variable'
-| lib.o:lib.c:(.text+0xa0): first defined here
-
-Add link option '-z muldefs' to fix it.
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- Make.rules | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/Make.rules b/Make.rules
-index 042585b..257ba45 100644
---- a/Make.rules
-+++ b/Make.rules
-@@ -20,6 +20,7 @@ include $(TOPDIR)/Make.version
- 	$(CCLD) $(ccldflags) $(CPPFLAGS) $(SOFLAGS) \
- 	  -Wl,-soname,$@.1 \
- 	  -Wl,--version-script=$(MAP) \
-+	  -Wl,-z,muldefs \
- 	  -o $@ $^ $(LDLIBS)
- 	ln -vfs $@ $@.1
- 
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar_37.bb b/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar_37.bb
deleted file mode 100644
index 4b458de..0000000
--- a/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar_37.bb
+++ /dev/null
@@ -1,43 +0,0 @@
-SUMMARY = "Tools to manipulate UEFI variables"
-DESCRIPTION = "efivar provides a simple command line interface to the UEFI variable facility"
-HOMEPAGE = "https://github.com/rhinstaller/efivar"
-
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6626bb1e20189cfa95f2c508ba286393"
-
-DEPENDS = "popt"
-DEPENDS_append_class-target = " efivar-native"
-
-inherit pkgconfig
-
-COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux"
-
-SRCREV = "c1d6b10e1ed4ba2be07f385eae5bceb694478a10"
-SRC_URI = "git://github.com/rhinstaller/efivar.git \
-           file://allow-multi-definitions-for-native.patch \
-           "
-SRC_URI_append_class-target = " file://0001-efivar-fix-for-cross-compile.patch \
-                                ${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', 'file://0004-fix-unknow-option-for-gold-linker.patch', '', d)} \
-                              "
-
-S = "${WORKDIR}/git"
-
-do_compile_prepend() {
-    sed -i -e s:-Werror::g ${S}/gcc.specs
-}
-
-do_compile_class-native() {
-    oe_runmake -C src makeguids CC_FOR_BUILD="${BUILD_CC}"
-}
-
-do_install() {
-    oe_runmake install DESTDIR=${D}
-}
-
-do_install_class-native() {
-    install -D -m 0755 ${B}/src/makeguids ${D}${bindir}/makeguids
-}
-
-BBCLASSEXTEND = "native"
-
-RRECOMMENDS_${PN}_class-target = "kernel-module-efivarfs"
diff --git a/meta-openembedded/meta-oe/recipes-core/ndctl/ndctl_v63.bb b/meta-openembedded/meta-oe/recipes-core/ndctl/ndctl_v63.bb
index 61e5302..2f299b1 100644
--- a/meta-openembedded/meta-oe/recipes-core/ndctl/ndctl_v63.bb
+++ b/meta-openembedded/meta-oe/recipes-core/ndctl/ndctl_v63.bb
@@ -13,15 +13,12 @@
 SRCREV = "cb2d678dd6d286dd96d31548c32449a8b883ae32"
 SRC_URI = "git://github.com/pmem/ndctl.git"
 
-DEPENDS = "virtual/kernel kmod udev json-c"
+DEPENDS = "kmod udev json-c"
 
 S = "${WORKDIR}/git"
 
 EXTRA_OECONF += "--enable-test --enable-destructive --disable-docs"
 
-# Depends on MACHINE_ARCH kernel
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-
 PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd','',d)}"
 PACKAGECONFIG[systemd] = "--with-systemd, --without-systemd, systemd"
 
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.3.15.bb b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.3.16.bb
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.3.15.bb
rename to meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.3.16.bb
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc
index eed23d2..9a398b3 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc
@@ -2,9 +2,9 @@
 HOMEPAGE = "http://mariadb.org"
 SECTION = "libs"
 LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b1becf0cfa3366e0f4d854d1d264f311"
 
-SRC_URI = "https://downloads.mariadb.org/interstitial/${BPN}-${PV}/source/${BPN}-${PV}.tar.gz \
+SRC_URI = "https://downloads.mariadb.com/MariaDB/${BPN}-${PV}/source/${BPN}-${PV}.tar.gz \
            file://my.cnf \
            file://mysqld.service \
            file://install_db.service \
@@ -19,8 +19,8 @@
            file://clang_version_header_conflict.patch \
            file://fix-arm-atomic.patch \
           "
-SRC_URI[md5sum] = "08edd8b5060a181e6dd3c6aac23218cd"
-SRC_URI[sha256sum] = "27f391a54d544f93850d4edfb3ef1b4cf24f8e27e61e51727b0e7d31bb4d6968"
+SRC_URI[md5sum] = "11220d0b94c5c24caa2e1e9eaba38e31"
+SRC_URI[sha256sum] = "39e9723eaf620afd99b0925b2c2a5a50a89110ba50040adf14cce7cf89e5e21b"
 
 UPSTREAM_CHECK_URI = "https://github.com/MariaDB/server/releases"
 
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.3.15.bb b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.3.16.bb
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.3.15.bb
rename to meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.3.16.bb
diff --git a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c/protobuf3-compatibility.patch b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c/protobuf3-compatibility.patch
new file mode 100644
index 0000000..3591495
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c/protobuf3-compatibility.patch
@@ -0,0 +1,55 @@
+From 7456d1621223d425b8a3fd74e435a79c046169fb Mon Sep 17 00:00:00 2001
+From: Robert Edmonds <edmonds@users.noreply.github.com>
+Date: Wed, 10 Apr 2019 20:47:48 -0400
+Subject: [PATCH] t/generated-code2/cxx-generate-packed-data.cc: Fix build
+ failure on newer protobuf
+
+ Upstream-Status: Backport [https://github.com/protobuf-c/protobuf-c/pull/369]
+
+google::protobuf::Message::Reflection has been removed in newer versions
+of protobuf. The replacement is google::protobuf::Reflection.
+
+protobuf in commit 779f61c6a3ce02a119e28e802f229e61b69b9046 ("Integrate
+recent changes from google3.", from August 2008) changed the following
+in message.h:
+
+    @@ -336,7 +337,8 @@ class LIBPROTOBUF_EXPORT Message {
+
+       // Introspection ---------------------------------------------------
+
+    -  class Reflection;  // Defined below.
+    +  // Typedef for backwards-compatibility.
+    +  typedef google::protobuf::Reflection Reflection;
+
+The "typedef for backwards-compatibility" apparently lasted ten years
+until protobuf commit 6bbe197e9c1b6fc38cbdc45e3bf83fa7ced792a3
+("Down-integrate from google3.", from August 2018) which finally removed
+the typedef:
+
+    @@ -327,8 +344,6 @@ class LIBPROTOBUF_EXPORT Message : public MessageLite {
+
+       // Introspection ---------------------------------------------------
+
+    -  // Typedef for backwards-compatibility.
+    -  typedef google::protobuf::Reflection Reflection;
+
+This commit updates the only use of this typedef (in the test suite) to
+directly refer to the replacement, google::protobuf::Reflection. This
+fixes the build failure in the test suite.
+---
+ t/generated-code2/cxx-generate-packed-data.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/t/generated-code2/cxx-generate-packed-data.cc b/t/generated-code2/cxx-generate-packed-data.cc
+index 4fd3e25..0865d2e 100644
+--- a/t/generated-code2/cxx-generate-packed-data.cc
++++ b/t/generated-code2/cxx-generate-packed-data.cc
+@@ -998,7 +998,7 @@ static void dump_test_packed_repeated_enum (void)
+ static void dump_test_unknown_fields (void)
+ {
+   EmptyMess mess;
+-  const google::protobuf::Message::Reflection *reflection = mess.GetReflection();
++  const google::protobuf::Reflection *reflection = mess.GetReflection();
+   google::protobuf::UnknownFieldSet *fs = reflection->MutableUnknownFields(&mess);
+
+ #if GOOGLE_PROTOBUF_VERSION >= 2001000
diff --git a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c_1.3.1.bb b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c_1.3.1.bb
index 7ef0300..1d17823 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c_1.3.1.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c_1.3.1.bb
@@ -15,7 +15,9 @@
 PV .= "+git${SRCPV}"
 SRCREV = "269771b4b45d3aba04e59569f53600003db8d9ff"
 
-SRC_URI = "git://github.com/protobuf-c/protobuf-c.git"
+SRC_URI = "git://github.com/protobuf-c/protobuf-c.git \
+           file://protobuf3-compatibility.patch \
+          "
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf/0001-Added-stubs-map_util.h-to-list-of-installed-headers.patch b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf/0001-Added-stubs-map_util.h-to-list-of-installed-headers.patch
new file mode 100644
index 0000000..a160e5e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf/0001-Added-stubs-map_util.h-to-list-of-installed-headers.patch
@@ -0,0 +1,52 @@
+From ea6e776e50971c89ad2293046b6ae2a6a9753c56 Mon Sep 17 00:00:00 2001
+From: Adam Cozzette <acozzette@google.com>
+Date: Thu, 6 Jun 2019 10:29:58 -0700
+Subject: [PATCH] Added stubs/map_util.h to list of installed headers
+
+This should fix issue #6186. I also had to remove a couple unnecessary
+const keywords in map_util.h because the no_warning_test was showing
+errors about those.
+
+Upstream-Status: Submitted [https://github.com/protocolbuffers/protobuf/pull/6223]
+---
+ src/Makefile.am                      | 1 +
+ src/google/protobuf/stubs/map_util.h | 4 ++--
+ 2 files changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index be18ba76..1689e221 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -72,6 +72,7 @@ nobase_include_HEADERS =                                         \
+   google/protobuf/stubs/hash.h                                   \
+   google/protobuf/stubs/logging.h                                \
+   google/protobuf/stubs/macros.h                                 \
++  google/protobuf/stubs/map_util.h                               \
+   google/protobuf/stubs/mutex.h                                  \
+   google/protobuf/stubs/once.h                                   \
+   google/protobuf/stubs/platform_macros.h                        \
+diff --git a/src/google/protobuf/stubs/map_util.h b/src/google/protobuf/stubs/map_util.h
+index 2313e1f5..b04d9d46 100644
+--- a/src/google/protobuf/stubs/map_util.h
++++ b/src/google/protobuf/stubs/map_util.h
+@@ -620,7 +620,7 @@ bool UpdateReturnCopy(Collection* const collection,
+ // twice. Unlike UpdateReturnCopy this also does not come with the issue of an
+ // undefined previous* in case new data was inserted.
+ template <class Collection>
+-typename Collection::value_type::second_type* const
++typename Collection::value_type::second_type*
+ InsertOrReturnExisting(Collection* const collection,
+                        const typename Collection::value_type& vt) {
+   std::pair<typename Collection::iterator, bool> ret = collection->insert(vt);
+@@ -633,7 +633,7 @@ InsertOrReturnExisting(Collection* const collection,
+
+ // Same as above, except for explicit key and data.
+ template <class Collection>
+-typename Collection::value_type::second_type* const
++typename Collection::value_type::second_type*
+ InsertOrReturnExisting(
+     Collection* const collection,
+     const typename Collection::value_type::first_type& key,
+--
+2.11.0
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.6.1.bb b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.8.0.bb
similarity index 93%
rename from meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.6.1.bb
rename to meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.8.0.bb
index cf72d9c..476d1e3 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.6.1.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.8.0.bb
@@ -10,13 +10,12 @@
 DEPENDS = "zlib"
 DEPENDS_append_class-target = " protobuf-native"
 
-PV .= "+git${SRCPV}"
+SRCREV = "09745575a923640154bcf307fba8aedff47f240a"
 
-SRCREV = "48cb18e5c419ddd23d9badcfe4e9df7bde1979b2"
-
-SRC_URI = "git://github.com/google/protobuf.git;branch=3.6.x \
+SRC_URI = "git://github.com/google/protobuf.git;branch=3.8.x \
            file://run-ptest \
            file://0001-protobuf-fix-configure-error.patch \
+           file://0001-Added-stubs-map_util.h-to-list-of-installed-headers.patch \
 "
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/0001-fix-compiling-failure-on-mips64-n32-bsp.patch b/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/0001-fix-compiling-failure-on-mips64-n32-bsp.patch
index a36478b..b882d76 100644
--- a/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/0001-fix-compiling-failure-on-mips64-n32-bsp.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/0001-fix-compiling-failure-on-mips64-n32-bsp.patch
@@ -1,6 +1,6 @@
-From 5ad700c92224193bfc789f7d53af38fc6f8b8904 Mon Sep 17 00:00:00 2001
+From f2f8be496c8e34b4d909b688a95c6f8565201081 Mon Sep 17 00:00:00 2001
 From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Thu, 19 Jul 2018 17:31:35 +0800
+Date: Wed, 19 Jun 2019 14:30:44 +0800
 Subject: [PATCH] fix compiling failure on mips64-n32 bsp
 
 - Tweak mips64-n32 with mips32
@@ -16,15 +16,18 @@
 Upstream-Status: Inappropriate [oe specific]
 
 Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
 ---
  build/moz.configure/init.configure                | 5 ++++-
  js/src/jit/mips-shared/Architecture-mips-shared.h | 4 +++-
  python/mozbuild/mozbuild/configure/constants.py   | 2 +-
  3 files changed, 8 insertions(+), 3 deletions(-)
 
+diff --git a/build/moz.configure/init.configure b/build/moz.configure/init.configure
+index 648ac2d..d0bcaf8 100644
 --- a/build/moz.configure/init.configure
 +++ b/build/moz.configure/init.configure
-@@ -650,7 +650,10 @@ def split_triplet(triplet, allow_unknown
+@@ -650,7 +650,10 @@ def split_triplet(triplet, allow_unknown=False):
          canonical_cpu = 'mips32'
          endianness = 'little' if 'el' in cpu else 'big'
      elif cpu in ('mips64', 'mips64el'):
@@ -36,26 +39,30 @@
          endianness = 'little' if 'el' in cpu else 'big'
      elif cpu.startswith('aarch64'):
          canonical_cpu = 'aarch64'
+diff --git a/js/src/jit/mips-shared/Architecture-mips-shared.h b/js/src/jit/mips-shared/Architecture-mips-shared.h
+index e95ffd4..caf83f7 100644
 --- a/js/src/jit/mips-shared/Architecture-mips-shared.h
 +++ b/js/src/jit/mips-shared/Architecture-mips-shared.h
-@@ -26,6 +26,8 @@
- #define USES_O32_ABI
- #elif (defined(_MIPS_SIM) && (_MIPS_SIM == _ABI64)) || defined(JS_SIMULATOR_MIPS64)
+@@ -28,6 +28,8 @@
+ #elif (defined(_MIPS_SIM) && (_MIPS_SIM == _ABI64)) || \
+     defined(JS_SIMULATOR_MIPS64)
  #define USES_N64_ABI
 +#elif (defined(_MIPS_SIM) && (_MIPS_SIM == _ABIN32))
 +#define USES_N32_ABI
  #else
  #error "Unsupported ABI"
  #endif
-@@ -93,7 +95,7 @@ class Registers
-         ta1 = t5,
-         ta2 = t6,
-         ta3 = t7,
+@@ -94,7 +96,7 @@ class Registers {
+     ta1 = t5,
+     ta2 = t6,
+     ta3 = t7,
 -#elif defined(USES_N64_ABI)
 +#elif defined(USES_N64_ABI) || defined(USES_N32_ABI)
-         a4 = r8,
-         a5 = r9,
-         a6 = r10,
+     a4 = r8,
+     a5 = r9,
+     a6 = r10,
+diff --git a/python/mozbuild/mozbuild/configure/constants.py b/python/mozbuild/mozbuild/configure/constants.py
+index 1067b6a..e0f0405 100644
 --- a/python/mozbuild/mozbuild/configure/constants.py
 +++ b/python/mozbuild/mozbuild/configure/constants.py
 @@ -90,8 +90,8 @@ CPU_preprocessor_checks = OrderedDict((
@@ -68,3 +75,6 @@
      ('sh4', '__sh__'),
  ))
  
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils_git.bb b/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils_git.bb
index 54ed043..054e0ac 100644
--- a/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils_git.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils_git.bb
@@ -10,10 +10,6 @@
 SRCREV = "7ab2211b87414ba240b0b2e4af219c1057c9cf9a"
 PV = "2.2.0+git${SRCPV}"
 
-DEPENDS="virtual/kernel"
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-
 inherit autotools pkgconfig
 
 DEPENDS += "libdaemon"
diff --git a/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph/0001-Makefile-fix-multilib-build-failure.patch b/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph/0001-Makefile-fix-multilib-build-failure.patch
new file mode 100644
index 0000000..56981d9
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph/0001-Makefile-fix-multilib-build-failure.patch
@@ -0,0 +1,89 @@
+From 50cea8fd3c07ab27da6edce865a49339f16f3b57 Mon Sep 17 00:00:00 2001
+From: Naveen Saini <naveen.kumar.saini@intel.com>
+Date: Tue, 18 Jun 2019 17:10:15 +0800
+Subject: [PATCH] Makefile: fix multilib build failure
+
+Upstream-Status: Inappropriate [oe specific]
+
+Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
+---
+ Makefile | 50 +++++++++++++++++++++++++++-----------------------
+ 1 file changed, 27 insertions(+), 23 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 8455415..4aa0786 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,30 +1,34 @@
+ # SPDX-License-Identifier: GPL-2.0
+ PREFIX		?= /usr
+ DESTDIR		?=
++BASELIB		?=
+ 
+ all:
+ 	@echo "Nothing to build"
+ 
++clean:
++	@echo "Nothing to clean"
++
+ install : uninstall
+-	install -d  $(DESTDIR)$(PREFIX)/lib/pm-graph
+-	install sleepgraph.py $(DESTDIR)$(PREFIX)/lib/pm-graph
+-	install bootgraph.py $(DESTDIR)$(PREFIX)/lib/pm-graph
+-	install -d  $(DESTDIR)$(PREFIX)/lib/pm-graph/config
+-	install -m 644 config/cgskip.txt $(DESTDIR)$(PREFIX)/lib/pm-graph/config
+-	install -m 644 config/freeze-callgraph.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
+-	install -m 644 config/freeze.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
+-	install -m 644 config/freeze-dev.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
+-	install -m 644 config/standby-callgraph.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
+-	install -m 644 config/standby.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
+-	install -m 644 config/standby-dev.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
+-	install -m 644 config/suspend-callgraph.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
+-	install -m 644 config/suspend.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
+-	install -m 644 config/suspend-dev.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
+-	install -m 644 config/suspend-x2-proc.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
++	install -d  $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph
++	install sleepgraph.py $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph
++	install bootgraph.py $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph
++	install -d  $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph/config
++	install -m 644 config/cgskip.txt $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph/config
++	install -m 644 config/freeze-callgraph.cfg $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph/config
++	install -m 644 config/freeze.cfg $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph/config
++	install -m 644 config/freeze-dev.cfg $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph/config
++	install -m 644 config/standby-callgraph.cfg $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph/config
++	install -m 644 config/standby.cfg $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph/config
++	install -m 644 config/standby-dev.cfg $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph/config
++	install -m 644 config/suspend-callgraph.cfg $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph/config
++	install -m 644 config/suspend.cfg $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph/config
++	install -m 644 config/suspend-dev.cfg $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph/config
++	install -m 644 config/suspend-x2-proc.cfg $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph/config
+ 
+ 	install -d  $(DESTDIR)$(PREFIX)/bin
+-	ln -s ../lib/pm-graph/bootgraph.py $(DESTDIR)$(PREFIX)/bin/bootgraph
+-	ln -s ../lib/pm-graph/sleepgraph.py $(DESTDIR)$(PREFIX)/bin/sleepgraph
++	ln -s ../$(BASELIB)/pm-graph/bootgraph.py $(DESTDIR)$(PREFIX)/bin/bootgraph
++	ln -s ../$(BASELIB)/pm-graph/sleepgraph.py $(DESTDIR)$(PREFIX)/bin/sleepgraph
+ 
+ 	install -d  $(DESTDIR)$(PREFIX)/share/man/man8
+ 	install bootgraph.8 $(DESTDIR)$(PREFIX)/share/man/man8
+@@ -37,11 +41,11 @@ uninstall :
+ 	rm -f $(DESTDIR)$(PREFIX)/bin/bootgraph
+ 	rm -f $(DESTDIR)$(PREFIX)/bin/sleepgraph
+ 
+-	rm -f $(DESTDIR)$(PREFIX)/lib/pm-graph/config/*
+-	if [ -d $(DESTDIR)$(PREFIX)/lib/pm-graph/config ] ; then \
+-		rmdir $(DESTDIR)$(PREFIX)/lib/pm-graph/config; \
++	rm -f $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph/config/*
++	if [ -d $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph/config ] ; then \
++		rmdir $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph/config; \
+ 	fi;
+-	rm -f $(DESTDIR)$(PREFIX)/lib/pm-graph/*
+-	if [ -d $(DESTDIR)$(PREFIX)/lib/pm-graph ] ; then \
+-		rmdir $(DESTDIR)$(PREFIX)/lib/pm-graph; \
++	rm -f $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph/*
++	if [ -d $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph ] ; then \
++		rmdir $(DESTDIR)$(PREFIX)/$(BASELIB)/pm-graph; \
+ 	fi;
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph_5.3.bb b/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph_5.3.bb
index de2d46d..ea12e05 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph_5.3.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph_5.3.bb
@@ -6,11 +6,12 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e"
 
 SRCREV = "5be9a16547234cef5aca8bfaccd920490ea1cfa7"
-SRC_URI = "git://github.com/intel/pm-graph.git"
+SRC_URI = "git://github.com/intel/pm-graph.git \
+           file://0001-Makefile-fix-multilib-build-failure.patch"
 S = "${WORKDIR}/git"
 
 COMPATIBLE_HOST='(i.86|x86_64).*'
-EXTRA_OEMAKE = "PREFIX=${prefix} DESTDIR=${D}"
+EXTRA_OEMAKE = "PREFIX=${prefix} DESTDIR=${D} BASELIB=${baselib}"
 
 do_install() {
         oe_runmake install
diff --git a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.17.bb b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.17.bb
index 131e849..7752e76 100644
--- a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.17.bb
+++ b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.17.bb
@@ -5,6 +5,10 @@
 DEPENDS = "dbus dbus-glib ncurses python libusb1 chrpath-replacement-native pps-tools"
 PROVIDES = "virtual/gpsd"
 
+# SConstruct in gpsd does not yet support Python 3
+DEPENDS += "python-scons-native"
+DEPENDS_remove = "python3-scons-native"
+
 EXTRANATIVEPATH += "chrpath-native"
 
 SRC_URI = "${SAVANNAH_GNU_MIRROR}/${BPN}/${BP}.tar.gz \
diff --git a/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.3.bb b/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.4.bb
similarity index 69%
rename from meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.3.bb
rename to meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.4.bb
index ffa2b9f..71a45ed 100644
--- a/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.3.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.4.bb
@@ -2,14 +2,14 @@
 
 DEPENDS += "autoconf-archive-native"
 
-SRC_URI[md5sum] = "9f7530a5d56f070ba0af78d6ba077973"
-SRC_URI[sha256sum] = "6ec837f23e8f2196e5976dec4ac81403170830075e7f33ede1394eaf67f2e962"
+SRC_URI[md5sum] = "bd52d764017215a30e2f014d2081dc3e"
+SRC_URI[sha256sum] = "ebde83aaf14be3abd33e7a90faa487a2ee231e242897afe7fdefb765386b3c8b"
 
 # enable tools and cxx bindings
 PACKAGECONFIG ?= "cxx tools"
 
 PACKAGECONFIG[cxx] = "--enable-bindings-cxx,--disable-bindings-cxx"
-PACKAGECONFIG[tests] = "--enable-tests --enable-install-tests,--disable-tests --disable-install-tests,kmod udev"
+PACKAGECONFIG[tests] = "--enable-tests,--disable-tests,kmod udev"
 
 PACKAGECONFIG[python3] = "--enable-bindings-python,--disable-bindings-python,python3"
 inherit ${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3native', '', d)}
diff --git a/meta-openembedded/meta-oe/recipes-support/libp11/libp11_0.4.10.bb b/meta-openembedded/meta-oe/recipes-support/libp11/libp11_0.4.10.bb
index c72df6d..b40223e 100644
--- a/meta-openembedded/meta-oe/recipes-support/libp11/libp11_0.4.10.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libp11/libp11_0.4.10.bb
@@ -19,7 +19,6 @@
 EXTRA_OECONF = "--disable-static"
 
 do_install_append () {
-    rm -rf ${D}${libdir}/*.la
     rm -rf ${D}${docdir}/${BPN}
 }
 
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/gmime/iconv-detect.h b/meta-openembedded/meta-oe/recipes-support/pidgin/gmime/iconv-detect.h
new file mode 100644
index 0000000..714cb5a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/pidgin/gmime/iconv-detect.h
@@ -0,0 +1,5 @@
+/* This is an auto-generated header, DO NOT EDIT! */
+
+#define ICONV_ISO_INT_FORMAT "iso-%u-%u"
+#define ICONV_ISO_STR_FORMAT "iso-%u-%s"
+#define ICONV_10646 "iso-10646"
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/gmime/nodolt.patch b/meta-openembedded/meta-oe/recipes-support/pidgin/gmime/nodolt.patch
new file mode 100644
index 0000000..1f9bdd3
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/pidgin/gmime/nodolt.patch
@@ -0,0 +1,10 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -150,7 +150,6 @@ AC_EXEEXT
+ AC_PROG_LIBTOOL
+ dnl when using libtool 2.x create libtool early, because it's used in configure
+ m4_ifdef([LT_OUTPUT], [LT_OUTPUT])
+-DOLT
+ 
+ dnl Checks for header files.
+ AC_CHECK_HEADERS(sys/mman.h)
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/gmime_3.2.3.bb b/meta-openembedded/meta-oe/recipes-support/pidgin/gmime_3.2.3.bb
new file mode 100644
index 0000000..8c6f0b0
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/pidgin/gmime_3.2.3.bb
@@ -0,0 +1,23 @@
+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 gnome autotools gobject-introspection
+
+SRC_URI += "file://iconv-detect.h \
+            file://nodolt.patch"
+
+SRC_URI[archive.md5sum] = "69ae21a0b1df966a7d39a9431856ac81"
+SRC_URI[archive.sha256sum] = "6a0875eeb552ab447dd54853a68ced62217d863631048737dd97eaa2713e7311"
+
+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_1.24.0.bb b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe_1.24.0.bb
index beae281..7632fd2 100644
--- a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe_1.24.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe_1.24.0.bb
@@ -3,7 +3,7 @@
 LICENSE = "GPLv2.0"
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
 
-DEPENDS = "pidgin intltool-native glib-2.0-native"
+DEPENDS = "pidgin gmime intltool-native glib-2.0-native"
 
 inherit pkgconfig
 inherit autotools
@@ -19,7 +19,7 @@
 PACKAGECONFIG[openssl] = "--enable-openssl=yes,--enable-openssl=no,openssl"
 PACKAGECONFIG[krb5] = "--with-krb5=yes,--with-krb5=no,krb5"
 #PACKAGECONFIG[voice_and_video] = "--with-vv=yes,--with-vv=no,libnice gstreamer"
-PACKAGECONFIG[telepathy] = "--enable-telepathy=yes,--enable-telepathy=no,telepathy-glib gmime"
+PACKAGECONFIG[telepathy] = "--enable-telepathy=yes,--enable-telepathy=no,telepathy-glib"
 #PACKAGECONFIG[gssapi_only] = "--enable-gssapi-only=yes,--enable-gssapi-only=no,krb5"
 PACKAGECONFIG[debug] = "--enable-debug=yes,--enable-debug=no,valgrind"