meta-openembedded: subtree update:98175fd0cc..da393545a2

Aditya.Tayade (1):
      neon: Add ptest

Andreas Müller (9):
      udisks2: upgrade 2.9.1 -> 2.9.2 / replace '_git' by version in recipe-name
      poppler: upgrade 21.02.0 -> 21.03.0
      xfce4-panel: upgrade 4.16.1 -> 4.16.2
      xfce4-cpugraph-plugin: upgrade 1.2.1 -> 1.2.3
      xfce4-time-out-plugin: upgrade 1.1.1 -> 1.1.2
      mousepad: upgrade 0.5.2 -> 0.5.3
      xfce4-panel-profiles: 1.0.12 -> 1.0.13
      thunar: upgrade 4.16.2 -> 4.16.4
      xfce4-taskmanager: upgrade 1.4.0 -> 1.4.2

Andrei Gherzan (6):
      python3-pep8: Fix HOMEPAGE
      python3-mccabe: Fix HOMEPAGE
      python3-ifaddr: Integrate a dependency of pysonos
      python3-pysonos: Integrate the SONOS control HomeAssistant module
      python3-aiohue: Integrate the hue control python module
      packagegroup-meta-python: Add new modules (aiohue, ifaddr, pysonos)

Andrej Valek (1):
      jsoncpp: Upgrade to 1.9.4

Bartosz Golaszewski (11):
      pystemd: satisfy runtime dependencies
      python3-pythonping: new package
      python3-wpa-supplicant: new package
      python3-txdbus: new package
      python3-wpa-supplicant: add runtime dependencies
      python3-wpa-supplicant: fix importing the cli submodule
      python3-wpa-supplicant: replace DESCRIPTION with SUMMARY
      libgpiod: update v1.6.2 -> v1.6.3
      python3-txdbus: add missing runtime dependencies
      python3-jmespath: new package
      python3-docutils: new package

Ben Gampe (1):
      python3-h11: new package

Carlos Rafael Giani (1):
      pipewire: Upgrade to 0.3.24

Changqing Li (2):
      php: allow php as empty
      openldap: upgrade 2.4.57 -> 2.4.58

Clément Péron (2):
      grpc: move grpc plugins to a new grpc-compiler package
      nodejs: 12.20.2 -> 12.21.0

Colin McAllister (1):
      python3-gpsd-py3: Added recipe

Daniel Wagenknecht (1):
      gnome-keyring: set file capabilities in pkg_postinst

Denys Dmytriyenko (1):
      glmark2: also depend on wayland-protocols when wayland distro feature is on

Devon Pringle (1):
      python3-pastedeploy: Add recipe

Fabio Berton (1):
      python3-requests: Support idna version 3.1

INC@Cisco) (2):
      bpftool: remove recipe from blacklist
      bpftool: improve reproducibility

Jan Kaisrlik (1):
      abseil-cpp: reorder content of packages

Joshua Watt (1):
      classes: Add Android sparse image class

Kai Kang (8):
      python3-pillow: 8.1.0 -> 8.1.2
      xfce4-cpufreq-plugin: 1.2.2 -> 1.2.5
      exo: 4.16.0 -> 4.16.1
      xfce4-netload-plugin: 1.3.2 -> 1.4.0
      xfce4-genmon-plugin: 4.1.0 -> 4.1.1
      xfce4-weather-plugin: 0.10.2 -> 0.11.0
      xfce4-systemload-plugin: 1.2.4 -> 1.3.0
      xfce4-taskmanager: 1.4.2 -> 1.5.2

Khem Raj (63):
      nss: Disable Werror
      open-vm-tools: Do not use volatile qualifier
      dconf-editor: Fix build with vala 0.50.4
      libbacktrace: Add recipe
      libleak: Add recipe
      packagegroup-meta-oe: Add libleak to packagegroup-meta-oe-extended
      mongodb: Upgrade to 4.4.4
      packagegroup-meta-python: Add python3-semantic-version
      python3-grpcio: Upgrade to 1.36.1
      python3-grpcio: Fix build on mips and musl
      mpv: Link libatomic on riscv64
      glog: Link with libexecinfo on musl
      musl-nscd: Make lex syntax posix'y
      libbpf: Depend on virtual/kernel:do_shared_workdir
      waf-cross-answers: Add powerpc64le version
      python3-grpcio,python3-grpcio-tools: Disable for ppc64le
      openh264: Disable building for ppc64le
      ufs-utils: Upgrade to 1.9
      libhugetlbfs: Fix ARCH setting for ppc64 LE
      nodejs: Set correct nodejs arch for ppc64le
      libnma: Disbale vapi
      xrdp: Upgrade to 0.9.15
      ply: upgrade to latest
      ply: Disable on ppc64
      ltrace: Fix build on ppc64le/musl
      oprofile: Fix build on musl
      gperftools: Update SRCREV to point to 2.9.1 release
      mongodb: Fix cross build on ppc64le
      abseil-cpp: Fix build on musl and ppc64
      mariadb: Fix build on musl/ppc
      mongodb: Fix build on ppc64le
      breakpad: Upgrade to latest
      ssiapi: Disable for ppc64
      kexec-tools-klibc: Use SITEINFO_BITS to construct includepath
      breakpad: Exclude for ppc64
      python3-grpcio,python3-grpcio-tools: Enable build on ppc64/glibc
      breakpad: Do not fallback to android implementation for getcontext/setcontext on musl
      oprofile: Upgrade to 1.4.0 release
      vboxguestdrivers: Add __divmoddi4 builtin support
      links-x11,links: Upgrade to 2.22
      layers: Drop gatesgarth from LAYERSERIES_COMPAT
      xxhash: Remove recipe
      gsound: Use () instead of {} for makefile variable in gsound_play_VALAFLAGS
      pipewire: Package systemd unit file for pipewire-media-session
      packagegroup-meta-python: Add new package python3-pythonping
      python3-spidev: Remove recipe for 3.2
      python3-werkzeug: Clarify BSD license type
      python3-werkzeug: Delete recipe for 1.0.0
      python3-hexdump: Move cleanup_hexfile into install_append
      cryptsetup: DEPEND on renamed util-linux-libuuid
      tracker-miners: Check for commercial license to enable ffmpeg
      gnome-settings-daemon: Do not generate meson.native
      libb64: Add recipe
      sysdig: Upgrade to 0.27.1
      sysdig: Depend on system libb64
      gimp: Disable vector iconn on rv32/musl
      libcamera: Update the patch to upstreamed one
      flashrom: Add remaining RISCV support
      mpd: Check for commercial in LICENSE_FLAGS_WHITELIST
      mpv: Exclude from world if commercial is not in inclusion list
      sox: Exclude from world if commercial is not in inclusion list
      vlc: Exclude from world if commercial is not in inclusion list
      sox: Remove LICENSE_FLAGS = "commercial"

Leon Anavi (74):
      python3-elementpath: Upgrade 2.1.4 -> 2.2.0
      python3-twisted: Upgrade 20.3.0 -> 21.2.0
      python3-ipython: Upgrade 7.20.0 -> 7.21.0
      python3-yamlloader: Upgrade 0.5.5 -> 1.0.0
      python3-astroid: Upgrade 2.5 -> 2.5.1
      python3-portion: Upgrade 2.1.4 -> 2.1.5
      python3-pandas: Upgrade 1.2.2 -> 1.2.3
      python3-ruamel-yaml: Upgrade 0.16.12 -> 0.16.13
      python3-prettytable: Upgrade 2.0.0 -> 2.1.0
      python3-huey: Upgrade 2.3.0 -> 2.3.1
      python3-pychromecast: Upgrade 8.1.0 -> 9.1.1
      python3-incremental: Upgrade 17.5.0 -> 21.3.0
      python3-waitress: Upgrade 1.4.4 -> 2.0.0
      python3-pako: Upgrade 0.3.0 -> 0.3.1
      python3-pyscaffold: Upgrade 3.3.1 -> 4.0
      python3-croniter: Upgrade 1.0.6 -> 1.0.8
      python3-prompt-toolkit: Upgrade 3.0.16 -> 3.0.17
      python3-pymisp: Upgrade 2.4.138 -> 2.4.140
      python3-jsonpatch: Upgrade 1.31 -> 1.32
      python3-jsonpointer: Upgrade 2.0 -> 2.1
      python3-configargparse: Upgrade 1.3 -> 1.4
      python3-luma-core: Upgrade 2.2.0 -> 2.3.1
      python3-pycodestyle: Upgrade 2.6.0 -> 2.7.0
      python3-bitarray: Upgrade 1.7.0 -> 1.7.1
      python3-alembic: Upgrade 1.5.5 -> 1.5.7
      python3-pyflakes: Upgrade 2.2.0 -> 2.3.0
      python3-autobahn: Upgrade 21.2.2 -> 21.3.1
      python3-pulsectl: Upgrade 21.2.0 -> 21.3.4
      python3-configparser: Upgrade 5.0.1 -> 5.0.2
      python3-defusedxml: Upgrade 0.6.0 -> 0.7.1
      python3-twine: Upgrade 3.3.0 -> 3.4.0
      python3-socketio: Upgrade 5.0.4 -> 5.1.0
      python3-soupsieve: Upgrade 2.2 -> 2.2.1
      python3-cassandra-driver: Upgrade 3.24.0 -> 3.25.0
      python3-urllib3: Upgrade 1.26.3 -> 1.26.4
      python3-bitarray: Upgrade 1.7.1 -> 1.8.0
      python3-pyscaffold: Upgrade 4.0 -> 4.0.1
      python3-flask-migrate: Upgrade 2.6.0 -> 2.7.0
      python3-grpcio-tools: Upgrade 1.35.0 -> 1.36.1
      python3-humanize: Upgrade 3.2.0 -> 3.3.0
      python3-regex: Upgrade 2020.11.13 -> 2021.3.17
      python3-twine: Upgrade 3.4.0 -> 3.4.1
      python3-isort: Upgrade 5.7.0 -> 5.8.0
      python3-sqlalchemy: Upgrade 1.3.23 -> 1.4.2
      python3-scrypt: Upgrade 0.8.6 -> 0.8.17
      python3-colorlog: Upgrade 4.7.2 -> 4.8.0
      python3-croniter: Upgrade 1.0.8 -> 1.0.9
      python3-pyperf: Upgrade 2.1.0 -> 2.2.0
      python3-lazy-object-proxy: Upgrade 1.5.2 -> 1.6.0
      python3-prompt-toolkit: Upgrade 3.0.17 -> 3.0.18
      python3-configshell-fb: Upgrade 1.1.28 -> 1.1.29
      python3-backports-functools-lru-cache: Upgrade 1.6.1 -> 1.6.3
      python3-pytest-helpers-namespace: Upgrade 2019.1.8 -> 2021.3.24
      python3-elementpath: Upgrade 2.2.0 -> 2.2.1
      python3-alembic: Upgrade 1.5.7 -> 1.5.8
      python3-rfc3339-validator: Upgrade 0.1.2 -> 0.1.3
      python3-pyflakes: Upgrade 2.3.0 -> 2.3.1
      python3-pint: Upgrade 0.16.1 -> 0.17
      python3-flask-sqlalchemy: Upgrade 2.4.4 -> 2.5.1
      python3-django: Upgrade 3.1.1 -> 3.1.7
      python3-djangorestframework: Upgrade 3.12.2 -> 3.12.3
      python3-ruamel-yaml: Upgrade 0.16.13 -> 0.17.0
      python3-bitarray: Upgrade 1.8.0 -> 1.8.1
      python3-sqlalchemy: Upgrade 1.4.2 -> 1.4.3
      python3-xmlschema: Upgrade 1.5.1 -> 1.5.3
      python3-croniter: Upgrade 1.0.9 -> 1.0.10
      python3-astroid: Upgrade 2.5.1 -> 2.5.2
      python3-pyroute2: Upgrade 0.5.14 -> 0.5.15
      python3-coverage: Upgrade 5.4 -> 5.5
      python3-gunicorn: Upgrade 20.0.4 -> 20.1.0
      python3-djangorestframework: Upgrade 3.12.3 -> 3.12.4
      python3-ipython: Upgrade 7.21.0 -> 7.22.0
      python3-openpyxl: Upgrade 3.0.6 -> 3.0.7
      python3-ruamel-yaml: Upgrade 0.17.0 -> 0.17.2

Luca Boccassi (3):
      cryptsetup: depend on new util-linux-uuid to break cycle
      dbus-broker: upgrade 26 -> 27
      dbus-broker: upgrade 27 -> 28

Marius Kriegerowski (1):
      tmate: add recipe version 2.4.0

Martin Jansa (11):
      glog: fix searching for Libunwind
      ceres-solver: prevent fetching git hook during do_configure
      packagegroup-meta-oe: include abseil-cpp for all architectures
      packagegroup-meta-oe: include nodejs without meta-python2 conditional
      packagegroup-meta-oe: move the packages depending on meta-python2 to separate packages
      mysql-python, lio-utils, openlmi-tools: add conditional PNBLACKLIST like meta-python2 does
      conf/layer.conf: include .bbappend files in BBFILES_DYNAMIC
      open-vm-tools: move to meta-networking
      packagegroup-meta-{oe,multimedia}: move pipewire to the right packagegroup
      packagegroup-meta-multimedia: include projucer only with x11 in DISTRO_FEATURES
      packagegroup-meta-multimedia: include vlc only with x11 in DISTRO_FEATURES

Matteo Croce (1):
      libbpf: use pkg-config

Michael Vetter (1):
      jasper: upgrade 2.0.25 -> 2.0.26

Ming Liu (1):
      atftp: move atftpd.init from files to atftp subdirectory

Mingli Yu (6):
      geoip: Switch to use the main branch
      geoip-perl: Switch to use the main branch
      bridge-utils: Switch to use the main branch
      netkit-telnet: Update SRC_URI
      quagga: Update SRC_URI
      hostapd: fix CVE-2019-5061

Nisha Parrakat (1):
      neon: use pkg-config instead of xml2-config to configure

Oleksandr Kravchuk (10):
      ipset: update to 7.11
      libnice: update to 0.1.18
      nbdkit: update to 1.25.3
      python3-bitarray: update to 1.7.0
      python3-google-api-python-client: update to 2.0.2
      python3-jsonpatch: update to 1.31
      python3-websocket-client: update to 0.58.0
      python3-robotframework: update to 4.0
      python3-sentry-sdk: update to 1.0.0
      aom: update to 3.0.0

Peace Lee (2):
      guider: Upgrade 3.9.7 -> 3.9.8
      guider: Upgrade 3.9.7 -> 3.9.8

Persian Prince (1):
      tinymembench: Correct PV

Philip Balister (1):
      fftw: Add support for ptest.

Randy MacLeod (6):
      gperftools: upgrade 2.8.1 -> 2.9.1
      zabbix: upgrade 4.4.6 -> 5.2.5
      nss: upgrade 3.60.1 -> 3.62
      xterm: upgrade 362 -> 366
      zstd: remove the recipe since it moved to oe-core
      tclap: upgrade 1.2.2 -> 1.4.0

Ross Burton (3):
      libxmlb: upgrade to 0.3.0
      flashrom: recipe cleanup
      openjpeg: add native/nativesdk class extension

Sakib Sajal (1):
      grpc: upgrade 1.36.1 -> 1.36.2

Sam Van Den Berge (1):
      libiio: fix build when python bindings are enabled

Sana Kazi (1):
      mdns: Whitelisted CVE-2007-0613 for mdns

Stefan Schmidt (2):
      musl-rpmatch_git.bb: add new recipe to provide rpmatch() for musl libc builds
      plymouth_0.9.5.bb: allow building with musl libc

Valentin Longchamp (1):
      libssh: add gcrypt to PACKAGECONFIG

Wang Mingyu (3):
      czmq: Conflict resolution for sha1.h
      python3-lxml: upgrade 4.6.2 -> 4.6.3
      python3-zopeinterface: upgrade 5.2.0 -> 5.3.0

Yann Dirson (1):
      mpv: remove explicit LICENSE_FLAGS

Yi Fan Yu (2):
      librelp: update 1.6.0 -> 1.10.0
      rsyslog: Fix rsyslog systemd service not starting

Yi Zhao (2):
      quagga: do not set PIDFile in service files
      tclap: add pkg-config file

Zang Ruochen (1):
      gtkwave: upgrade 3.3.104 -> 3.3.108

zangrc (15):
      dovecot: upgrade 2.3.13 -> 2.3.14
      fetchmail: upgrade 6.4.16 -> 6.4.17
      dialog: upgrade 1.3-20210117 -> 1.3-20210306
      fio: upgrade 3.25 -> 3.26
      xorriso: upgrade 1.5.3 -> 1.5.5
      iscsi-initiator-utils: upgrade 2.1.3 -> 2.1.4
      mosquitto: upgrade 2.0.8 -> 2.0.9
      nbdkit: upgrade 1.25.3 -> 1.25.4
      wireguard-tools: upgrade 1.0.20210223 -> 1.0.20210315
      wireshark: upgrade 3.4.3 -> 3.4.4
      live555: upgrade 20210129 -> 20210322
      mg: upgrade 20200723 -> 20210314
      nanopb: upgrade 0.4.4 -> 0.4.5
      nss: upgrade 3.62 -> 3.63
      uriparser: upgrade 0.9.4 -> 0.9.5

zhengruoqin (12):
      phpmyadmin: upgrade 5.0.4 -> 5.1.0
      uthash: upgrade 2.2.0 -> 2.3.0
      gd: upgrade 2.3.1 -> 2.3.2
      openocd: upgrade 0.10 -> 0.11
      satyr: upgrade 0.36 -> 0.37
      libcrypt-openssl-guess-perl: upgrade 0.11 -> 0.12
      cryptsetup: upgrade 2.3.4 -> 2.3.5
      glmark2: upgrade 20201114 -> 2021.02
      grpc: upgrade 1.36.2 -> 1.36.3
      dialog: upgrade 1.3-20210306 -> 1.3-20210319
      grpc: upgrade 1.36.3 -> 1.36.4
      libgee: upgrade 0.20.3 -> 0.20.4

Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: I0b18d7c12586e6038d002f02ed87f38e25bc5080
diff --git a/meta-openembedded/meta-filesystems/conf/layer.conf b/meta-openembedded/meta-filesystems/conf/layer.conf
index 343f520..ae93a36 100644
--- a/meta-openembedded/meta-filesystems/conf/layer.conf
+++ b/meta-openembedded/meta-filesystems/conf/layer.conf
@@ -15,4 +15,4 @@
 
 LAYERDEPENDS_filesystems-layer = "core openembedded-layer"
 
-LAYERSERIES_COMPAT_filesystems-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_filesystems-layer = " hardknott"
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils/0001-Replace-u_intXX_t-with-kernel-typedefs.patch b/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils/0001-Replace-u_intXX_t-with-kernel-typedefs.patch
deleted file mode 100644
index e69a3cf..0000000
--- a/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils/0001-Replace-u_intXX_t-with-kernel-typedefs.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From 6cf6f5b9c39dfd0d46f2069c3baeab92ae980367 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 15 Dec 2019 00:58:13 -0800
-Subject: [PATCH] Replace u_intXX_t with kernel typedefs
-
-u_intXX_t requires including sys/types.h which might not work in kernel
-code, if this header is used in a kernel module
-
-Fixes
-| In file included from ufs.c:16:
-| In file included from ./ufs.h:9:
-| ./scsi_bsg_util.h:131:2: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
-|         u_int16_t result;
-|         ^~~~~~~~~
-
-Upstream-Status: Submitted [https://github.com/westerndigitalcorporation/ufs-utils/pull/23]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- scsi_bsg_util.h | 18 +++++++++---------
- 1 file changed, 9 insertions(+), 9 deletions(-)
-
-diff --git a/scsi_bsg_util.h b/scsi_bsg_util.h
-index 3f8a482..497c3ae 100644
---- a/scsi_bsg_util.h
-+++ b/scsi_bsg_util.h
-@@ -121,15 +121,15 @@ struct ufs_bsg_reply {
- #endif /* SCSI_BSG_UFS_H.*/
- 
- struct rpmb_frame {
--	u_int8_t  stuff[196];
--	u_int8_t  key_mac[32];
--	u_int8_t  data[256];
--	u_int8_t  nonce[16];
--	u_int32_t write_counter;
--	u_int16_t addr;
--	u_int16_t block_count;
--	u_int16_t result;
--	u_int16_t req_resp;
-+	__u8  stuff[196];
-+	__u8  key_mac[32];
-+	__u8  data[256];
-+	__u8  nonce[16];
-+	__u32 write_counter;
-+	__u16 addr;
-+	__u16 block_count;
-+	__u16 result;
-+	__u16 req_resp;
- };
- 
- #define BSG_REPLY_SZ (sizeof(struct ufs_bsg_reply))
--- 
-2.24.1
-
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils/0001-Use-asm-type.h-for-kernel-types.patch b/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils/0001-Use-asm-type.h-for-kernel-types.patch
new file mode 100644
index 0000000..08cf870
--- /dev/null
+++ b/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils/0001-Use-asm-type.h-for-kernel-types.patch
@@ -0,0 +1,65 @@
+From 517f841ccac59b0579e706dd768d6c7b1a7e7552 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 12 Mar 2021 10:37:21 -0800
+Subject: [PATCH] Use asm/type.h for kernel types
+
+This ensures that right headers for types is included otherwise it can
+conflict for some platforms e.g. ppc64 where it includes the underlying
+files conditionally
+
+asm/types.h is
+
+if !defined(__SANE_USERSPACE_TYPES__) && defined(__powerpc64__) && !defined(__KERNEL__)
+ include <asm-generic/int-l64.h>
+else
+ include <asm-generic/int-ll64.h>
+endif
+
+Upstream-Status: Submitted [https://github.com/westerndigitalcorporation/ufs-utils/pull/29]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ ufs.h      | 1 -
+ ufs_cmds.h | 2 +-
+ ufs_ffu.c  | 1 -
+ 3 files changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/ufs.h b/ufs.h
+index dc51367..0321c54 100644
+--- a/ufs.h
++++ b/ufs.h
+@@ -4,7 +4,6 @@
+ 
+ #ifndef UFS_H_
+ #define UFS_H_
+-#include <asm-generic/int-ll64.h>
+ #include "ioctl.h"
+ #include "scsi_bsg_util.h"
+ 
+diff --git a/ufs_cmds.h b/ufs_cmds.h
+index 1e7e24d..5c5b045 100644
+--- a/ufs_cmds.h
++++ b/ufs_cmds.h
+@@ -5,7 +5,7 @@
+ #define UFS_CMNDS_H_
+ 
+ #include "options.h"
+-#include <asm-generic/int-ll64.h>
++#include <asm/types.h>
+ 
+ 
+ enum field_width {
+diff --git a/ufs_ffu.c b/ufs_ffu.c
+index 2bcec44..99b479c 100644
+--- a/ufs_ffu.c
++++ b/ufs_ffu.c
+@@ -12,7 +12,6 @@
+ #include <unistd.h>
+ #include <stdint.h>
+ #include <errno.h>
+-#include <asm-generic/int-ll64.h>
+ 
+ #include "ufs.h"
+ #include "ufs_cmds.h"
+-- 
+2.30.2
+
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils_git.bb b/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils_1.9.bb
similarity index 81%
rename from meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils_git.bb
rename to meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils_1.9.bb
index 2358365..e23c764 100644
--- a/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils_git.bb
+++ b/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils_1.9.bb
@@ -2,14 +2,12 @@
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
 
-PV = "1.6+git${SRCPV}"
-
 BRANCH ?= "dev"
 
-SRCREV = "a3cf93b66f4606a46354cf884d24aa966661f848"
+SRCREV = "517c0b01e47d4441cc45be351509fb4c96843d5a"
 
 SRC_URI = "git://github.com/westerndigitalcorporation/ufs-utils.git;protocol=git;branch=${BRANCH} \
-           file://0001-Replace-u_intXX_t-with-kernel-typedefs.patch \
+           file://0001-Use-asm-type.h-for-kernel-types.patch \
 "
 
 UPSTREAM_CHECK_COMMITS = "1"
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/xorriso/xorriso_1.5.3.bb b/meta-openembedded/meta-filesystems/recipes-utils/xorriso/xorriso_1.5.5.bb
similarity index 86%
rename from meta-openembedded/meta-filesystems/recipes-utils/xorriso/xorriso_1.5.3.bb
rename to meta-openembedded/meta-filesystems/recipes-utils/xorriso/xorriso_1.5.5.bb
index 30224c2..75b66d9 100644
--- a/meta-openembedded/meta-filesystems/recipes-utils/xorriso/xorriso_1.5.3.bb
+++ b/meta-openembedded/meta-filesystems/recipes-utils/xorriso/xorriso_1.5.5.bb
@@ -7,8 +7,8 @@
 
 SRC_URI = "http://www.gnu.org/software/${BPN}/${BPN}-${PV}.tar.gz"
 
-SRC_URI[md5sum] = "d6b16763a2ca23eec718cfac1761b40f"
-SRC_URI[sha256sum] = "97a9c9831fa1b053f781f74a17b79327e7402c6163f5c7973453ba881616aeb4"
+SRC_URI[md5sum] = "a5e3dc4e0b92be6837f9ed6cbf7f9df5"
+SRC_URI[sha256sum] = "91663d61bee61ff790b3f6861fdf57c54af0e238ab14f297b55bae8ab5d17684"
 
 PACKAGECONFIG ??= "acl attr zlib bzip2 readline"
 PACKAGECONFIG[acl] = "--enable-libacl,--disable-libacl,acl,"
diff --git a/meta-openembedded/meta-gnome/conf/layer.conf b/meta-openembedded/meta-gnome/conf/layer.conf
index 5e92cdb..ba2d599 100644
--- a/meta-openembedded/meta-gnome/conf/layer.conf
+++ b/meta-openembedded/meta-gnome/conf/layer.conf
@@ -17,7 +17,7 @@
 
 LAYERDEPENDS_gnome-layer = "core openembedded-layer networking-layer"
 
-LAYERSERIES_COMPAT_gnome-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_gnome-layer = " hardknott"
 
 SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += "\
   faenza-icon-theme->gdk-pixbuf \
diff --git a/meta-openembedded/meta-gnome/recipes-connectivity/libnma/libnma_1.8.30.bb b/meta-openembedded/meta-gnome/recipes-connectivity/libnma/libnma_1.8.30.bb
index 3f3cb90..c0a7dd6 100644
--- a/meta-openembedded/meta-gnome/recipes-connectivity/libnma/libnma_1.8.30.bb
+++ b/meta-openembedded/meta-gnome/recipes-connectivity/libnma/libnma_1.8.30.bb
@@ -20,7 +20,8 @@
 
 # go introspection is not supported for mipsn32/riscv32, but vapi needs it
 #
-EXTRA_OEMESON_mipsarchn32_append = " -Dvapi=false"
-EXTRA_OEMESON_riscv32_append = " -Dvapi=false"
+EXTRA_OEMESON_append_mipsarchn32 = " -Dvapi=false"
+EXTRA_OEMESON_append_riscv32 = " -Dvapi=false"
+EXTRA_OEMESON_append_powerpc64le = " -Dvapi=false"
 
 GTKDOC_MESON_OPTION = "gtk_doc"
diff --git a/meta-openembedded/meta-gnome/recipes-gimp/gimp/gimp_2.10.22.bb b/meta-openembedded/meta-gnome/recipes-gimp/gimp/gimp_2.10.22.bb
index 2d75d60..aa5112a 100644
--- a/meta-openembedded/meta-gnome/recipes-gimp/gimp/gimp_2.10.22.bb
+++ b/meta-openembedded/meta-gnome/recipes-gimp/gimp/gimp_2.10.22.bb
@@ -54,6 +54,7 @@
                 --without-wmf"
 
 EXTRA_OECONF_append_libc-musl_mipsarch = " --disable-vector-icons"
+EXTRA_OECONF_append_libc-musl_riscv32 = " --disable-vector-icons"
 EXTRA_OECONF_append_arm = " --disable-vector-icons"
 
 do_configure_append() {
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor/0001-Don-t-alter-or-try-to-write-GtkChild-fields.patch b/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor/0001-Don-t-alter-or-try-to-write-GtkChild-fields.patch
new file mode 100644
index 0000000..7c83ae3
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor/0001-Don-t-alter-or-try-to-write-GtkChild-fields.patch
@@ -0,0 +1,522 @@
+From ba4a39b74067b73c9bed64dad7be3d53e837dd8d Mon Sep 17 00:00:00 2001
+From: Rico Tzschichholz <ricotz@ubuntu.com>
+Date: Sat, 16 Jan 2021 13:26:32 +0100
+Subject: [PATCH] Don't alter or try to write GtkChild fields
+
+See https://gitlab.gnome.org/GNOME/vala/issues/1121
+
+Upstream-Status: Backport [https://github.com/GNOME/dconf-editor/commit/9272e9fb6867e71426bfd0aa5edce5ec39cf0ad4]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ editor/bookmarks-headerbar.vala  |  4 +--
+ editor/bookmarks-list.vala       |  4 +--
+ editor/bookmarks.vala            | 12 +++----
+ editor/delayed-setting-view.vala | 54 ++++++++++++++++----------------
+ editor/overlayed-list.vala       | 38 +++++++++++-----------
+ editor/pathentry.vala            | 24 +++++++-------
+ editor/registry-list.vala        |  6 ++--
+ editor/registry-search.vala      |  6 ++--
+ editor/registry-view.vala        |  2 +-
+ 9 files changed, 75 insertions(+), 75 deletions(-)
+
+diff --git a/editor/bookmarks-headerbar.vala b/editor/bookmarks-headerbar.vala
+index 54848a5..0522c37 100644
+--- a/editor/bookmarks-headerbar.vala
++++ b/editor/bookmarks-headerbar.vala
+@@ -24,7 +24,7 @@ private abstract class BookmarksHeaderBar : BrowserHeaderBar, AdaptativeWidget
+         install_action_entries ();
+ 
+         add_bookmarks_revealer              (out bookmarks_revealer,
+-                                             out bookmarks_button,              ref center_box);
++                                             out bookmarks_button,              center_box);
+         connect_bookmarks_signals ();
+         add_bookmarks_controller            (out bookmarks_controller,          ref this);
+ 
+@@ -58,7 +58,7 @@ private abstract class BookmarksHeaderBar : BrowserHeaderBar, AdaptativeWidget
+     private Bookmarks           bookmarks_button;
+     private BookmarksController bookmarks_controller;
+ 
+-    private static void add_bookmarks_revealer (out Revealer bookmarks_revealer, out Bookmarks bookmarks_button, ref Box center_box)
++    private static void add_bookmarks_revealer (out Revealer bookmarks_revealer, out Bookmarks bookmarks_button, Box center_box)
+     {
+         bookmarks_revealer = new Revealer ();
+         bookmarks_revealer.transition_type = RevealerTransitionType.SLIDE_LEFT;
+diff --git a/editor/bookmarks-list.vala b/editor/bookmarks-list.vala
+index 393973b..c9280d5 100644
+--- a/editor/bookmarks-list.vala
++++ b/editor/bookmarks-list.vala
+@@ -146,10 +146,10 @@ private class BookmarksList : OverlayedList
+ 
+     internal bool create_bookmark_rows (Variant bookmarks_variant)
+     {
+-        _create_bookmark_rows (bookmarks_variant, view_mode, ref main_list_store, ref main_list_box, ref bookmarks_hashtable);
++        _create_bookmark_rows (bookmarks_variant, view_mode, ref main_list_store, main_list_box, ref bookmarks_hashtable);
+         return n_items == 0;
+     }
+-    private static void _create_bookmark_rows (Variant bookmarks_variant, bool view_mode, ref GLib.ListStore main_list_store, ref ListBox main_list_box, ref HashTable<string, Bookmark> bookmarks_hashtable)
++    private static void _create_bookmark_rows (Variant bookmarks_variant, bool view_mode, ref GLib.ListStore main_list_store, ListBox main_list_box, ref HashTable<string, Bookmark> bookmarks_hashtable)
+     {
+         string saved_bookmark_name = "";
+         ListBoxRow? selected_row = main_list_box.get_selected_row ();
+diff --git a/editor/bookmarks.vala b/editor/bookmarks.vala
+index 153af10..d8cea7c 100644
+--- a/editor/bookmarks.vala
++++ b/editor/bookmarks.vala
+@@ -84,7 +84,7 @@ private class Bookmarks : MenuButton
+ 
+     construct
+     {
+-        update_switch_label (ViewType.SEARCH, ViewType.FOLDER, ref switch_label); // init text with "Bookmark this Location"
++        update_switch_label (ViewType.SEARCH, ViewType.FOLDER, switch_label); // init text with "Bookmark this Location"
+ 
+         install_action_entries ();
+ 
+@@ -184,7 +184,7 @@ private class Bookmarks : MenuButton
+ 
+     internal void set_path (ViewType type, string path)
+     {
+-        update_switch_label (current_type, type, ref switch_label);
++        update_switch_label (current_type, type, switch_label);
+ 
+         current_path = path;
+         current_type = type;
+@@ -392,7 +392,7 @@ private class Bookmarks : MenuButton
+     * * Bookmarks management
+     \*/
+ 
+-    private static void update_switch_label (ViewType old_type, ViewType new_type, ref Label switch_label)
++    private static void update_switch_label (ViewType old_type, ViewType new_type, Label switch_label)
+     {
+         if (new_type == ViewType.SEARCH && old_type != ViewType.SEARCH)
+             switch_label.label = bookmark_this_search_text;
+@@ -414,18 +414,18 @@ private class Bookmarks : MenuButton
+         {
+             if (bookmarks_icon.icon_name != "starred-symbolic")
+                 bookmarks_icon.icon_name = "starred-symbolic";
+-            update_switch_state (true, ref bookmarked_switch);
++            update_switch_state (true, bookmarked_switch);
+             bookmarked_switch.set_detailed_action_name ("bookmarks.unbookmark(" + variant.print (true) + ")");
+         }
+         else
+         {
+             if (bookmarks_icon.icon_name != "non-starred-symbolic")
+                 bookmarks_icon.icon_name = "non-starred-symbolic";
+-            update_switch_state (false, ref bookmarked_switch);
++            update_switch_state (false, bookmarked_switch);
+             bookmarked_switch.set_detailed_action_name ("bookmarks.bookmark(" + variant.print (true) + ")");
+         }
+     }
+-    private static void update_switch_state (bool bookmarked, ref Switch bookmarked_switch)
++    private static void update_switch_state (bool bookmarked, Switch bookmarked_switch)
+     {
+         if (bookmarked == bookmarked_switch.active)
+             return;
+diff --git a/editor/delayed-setting-view.vala b/editor/delayed-setting-view.vala
+index add6852..b1f774c 100644
+--- a/editor/delayed-setting-view.vala
++++ b/editor/delayed-setting-view.vala
+@@ -41,24 +41,24 @@ private class DelayedSettingView : OverlayedListRow
+         {
+             // at row creation, key is never ghost
+             _update_dconf_key_current_value (key_value,
+-                                         ref key_value_label,
+-                                         ref key_value_default);
++                                             key_value_label,
++                                             key_value_default);
+ 
+             _update_dconf_key_planned_value (cool_planned_value,
+-                                         ref planned_value_label,
+-                                         ref planned_value_default);
++                                             planned_value_label,
++                                             planned_value_default);
+         }
+         else
+         {
+             _update_gsettings_key_current_value (key_value,
+                                                  has_schema_and_is_default,
+-                                             ref key_value_label,
+-                                             ref key_value_default);
++                                                 key_value_label,
++                                                 key_value_default);
+ 
+             _update_gsettings_key_planned_value (cool_planned_value,
+                                                  (!) cool_default_value,
+-                                             ref planned_value_label,
+-                                             ref planned_value_default);
++                                                 planned_value_label,
++                                                 planned_value_default);
+         }
+     }
+ 
+@@ -74,23 +74,23 @@ private class DelayedSettingView : OverlayedListRow
+ 
+     private static inline void _update_gsettings_key_planned_value (string? cool_planned_value,
+                                                                     string  cool_default_value,
+-                                                                ref Label   planned_value_label,
+-                                                                ref Label   planned_value_default)
++                                                                    Label   planned_value_label,
++                                                                    Label   planned_value_default)
+     {
+         bool is_default = cool_planned_value == null;
+         planned_value_label.label = is_default ? cool_default_value : (!) cool_planned_value;
+-        update_value_default_label (is_default, ref planned_value_default);
++        update_value_default_label (is_default, planned_value_default);
+     }
+ 
+     private static inline void _update_dconf_key_planned_value (string? cool_planned_value,
+-                                                            ref Label   planned_value_label,
+-                                                            ref Label   planned_value_default)
++                                                                Label   planned_value_label,
++                                                                Label   planned_value_default)
+     {
+         if (cool_planned_value == null)
+-            update_labels_dconf_key_erased (ref planned_value_label, ref planned_value_default);
++            update_labels_dconf_key_erased (planned_value_label, planned_value_default);
+         else
+             update_labels_dconf_key_values ((!) cool_planned_value,
+-                                            ref planned_value_label, ref planned_value_default);
++                                            planned_value_label, planned_value_default);
+     }
+ 
+     /*\
+@@ -99,37 +99,37 @@ private class DelayedSettingView : OverlayedListRow
+ 
+     internal void update_gsettings_key_current_value (Variant key_value, bool is_default)
+     {
+-        _update_gsettings_key_current_value (key_value, is_default, ref key_value_label, ref key_value_default);
++        _update_gsettings_key_current_value (key_value, is_default, key_value_label, key_value_default);
+     }
+     private static void _update_gsettings_key_current_value (Variant key_value,
+                                                              bool    is_default,
+-                                                         ref Label   key_value_label,
+-                                                         ref Label   key_value_default)
++                                                             Label   key_value_label,
++                                                             Label   key_value_default)
+     {
+         key_value_label.label = Key.cool_text_value_from_variant (key_value);
+-        update_value_default_label (is_default, ref key_value_default);
++        update_value_default_label (is_default, key_value_default);
+     }
+ 
+     internal void update_dconf_key_current_value (Variant? key_value_or_null)
+     {
+-        _update_dconf_key_current_value (key_value_or_null, ref key_value_label, ref key_value_default);
++        _update_dconf_key_current_value (key_value_or_null, key_value_label, key_value_default);
+     }
+     private static void _update_dconf_key_current_value (Variant? key_value_or_null,
+-                                                     ref Label    key_value_label,
+-                                                     ref Label    key_value_default)
++                                                         Label    key_value_label,
++                                                         Label    key_value_default)
+     {
+         if (key_value_or_null == null)
+-            update_labels_dconf_key_erased (ref key_value_label, ref key_value_default);
++            update_labels_dconf_key_erased (key_value_label, key_value_default);
+         else
+             update_labels_dconf_key_values (Key.cool_text_value_from_variant ((!) key_value_or_null),
+-                                            ref key_value_label, ref key_value_default);
++                                            key_value_label, key_value_default);
+     }
+ 
+     /*\
+     * * common utilities
+     \*/
+ 
+-    private static void update_labels_dconf_key_erased (ref Label value_label, ref Label value_default)
++    private static void update_labels_dconf_key_erased (Label value_label, Label value_default)
+     {
+         value_label.visible = false;
+         /* Translators: displayed in the list of pending changes (could be an in-window panel, or in the popover of the bottom bar); for dconf keys */
+@@ -137,14 +137,14 @@ private class DelayedSettingView : OverlayedListRow
+         value_default.visible = true;
+     }
+ 
+-    private static void update_labels_dconf_key_values (string key_value, ref Label value_label, ref Label value_default)
++    private static void update_labels_dconf_key_values (string key_value, Label value_label, Label value_default)
+     {
+         value_default.visible = false;
+         value_label.label = key_value;  // TODO move Key.cool_text_value_from_variant here?
+         value_label.visible = true;
+     }
+ 
+-    private static void update_value_default_label (bool is_default, ref Label value_default)
++    private static void update_value_default_label (bool is_default, Label value_default)
+     {
+         if (is_default)
+             /* Translators: displayed in the list of pending changes (could be an in-window panel, or in the popover of the bottom bar); for gsettings keys */
+diff --git a/editor/overlayed-list.vala b/editor/overlayed-list.vala
+index 8b0ec51..bcdfc3a 100644
+--- a/editor/overlayed-list.vala
++++ b/editor/overlayed-list.vala
+@@ -89,11 +89,11 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+     internal void set_window_size (AdaptativeWidget.WindowSize new_size)
+     {
+         if (!AdaptativeWidget.WindowSize.is_extra_thin (new_size) && AdaptativeWidget.WindowSize.is_extra_flat (new_size))
+-            set_horizontal (ref main_context, ref edit_mode_box);
++            set_horizontal (ref main_context, edit_mode_box);
+         else
+-            set_vertical (ref main_context, ref edit_mode_box);
++            set_vertical (ref main_context, edit_mode_box);
+     }
+-    private static inline void set_horizontal (ref StyleContext main_context, ref Box edit_mode_box)
++    private static inline void set_horizontal (ref StyleContext main_context, Box edit_mode_box)
+     {
+         main_context.remove_class ("vertical");
+         edit_mode_box.halign = Align.END;
+@@ -102,7 +102,7 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+         edit_mode_box.width_request = 160;
+         main_context.add_class ("horizontal");
+     }
+-    private static inline void set_vertical (ref StyleContext main_context, ref Box edit_mode_box)
++    private static inline void set_vertical (ref StyleContext main_context, Box edit_mode_box)
+     {
+         main_context.remove_class ("horizontal");
+         edit_mode_box.halign = Align.CENTER;
+@@ -118,9 +118,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+ 
+     internal bool next_match ()
+     {
+-        return _next_match (ref main_list_box);
++        return _next_match (main_list_box);
+     }
+-    private static inline bool _next_match (ref ListBox main_list_box)
++    private static inline bool _next_match (ListBox main_list_box)
+     {
+         ListBoxRow? row = main_list_box.get_selected_row ();    // TODO multiple rows and focus-only lists
+         if (row == null)
+@@ -130,7 +130,7 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+ 
+         if (row == null)
+         {
+-            _scroll_bottom (ref main_list_box);
++            _scroll_bottom (main_list_box);
+             return false;
+         }
+         main_list_box.select_row ((!) row);
+@@ -140,9 +140,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+ 
+     internal bool previous_match ()
+     {
+-        return _previous_match (ref main_list_box);
++        return _previous_match (main_list_box);
+     }
+-    private static inline bool _previous_match (ref ListBox main_list_box)
++    private static inline bool _previous_match (ListBox main_list_box)
+     {
+         uint n_items = main_list_box.get_children ().length ();  // FIXME OverlayedList.n_items is unreliable
+         if (n_items == 0)
+@@ -189,9 +189,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+ 
+     protected int [] get_selected_rows_indices ()
+     {
+-        return _get_selected_rows_indices (ref main_list_box);
++        return _get_selected_rows_indices (main_list_box);
+     }
+-    private static inline int [] _get_selected_rows_indices (ref ListBox main_list_box)
++    private static inline int [] _get_selected_rows_indices (ListBox main_list_box)
+     {
+         int [] indices = new int [0];
+         main_list_box.selected_foreach ((_list_box, selected_row) => {
+@@ -205,9 +205,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+ 
+     protected void scroll_top ()
+     {
+-        _scroll_top (ref main_list_box);
++        _scroll_top (main_list_box);
+     }
+-    private static inline void _scroll_top (ref ListBox main_list_box)
++    private static inline void _scroll_top (ListBox main_list_box)
+     {
+         Adjustment adjustment = main_list_box.get_adjustment ();
+         adjustment.set_value (adjustment.get_lower ());
+@@ -215,9 +215,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+ 
+     protected void scroll_bottom ()
+     {
+-        _scroll_bottom (ref main_list_box);
++        _scroll_bottom (main_list_box);
+     }
+-    private static inline void _scroll_bottom (ref ListBox main_list_box)
++    private static inline void _scroll_bottom (ListBox main_list_box)
+     {
+         Adjustment adjustment = main_list_box.get_adjustment ();
+         adjustment.set_value (adjustment.get_upper ());
+@@ -225,9 +225,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+ 
+     internal bool handle_copy_text (out string copy_text)
+     {
+-        return _handle_copy_text (out copy_text, ref main_list_box);
++        return _handle_copy_text (out copy_text, main_list_box);
+     }
+-    private static inline bool _handle_copy_text (out string copy_text, ref ListBox main_list_box)
++    private static inline bool _handle_copy_text (out string copy_text, ListBox main_list_box)
+     {
+         List<weak ListBoxRow> selected_rows = main_list_box.get_selected_rows ();
+         OverlayedListRow row;
+@@ -283,9 +283,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+ 
+     internal SelectionState get_selection_state ()
+     {
+-        return _get_selection_state (ref main_list_box, ref main_list_store);
++        return _get_selection_state (main_list_box, ref main_list_store);
+     }
+-    private static inline SelectionState _get_selection_state (ref ListBox main_list_box, ref GLib.ListStore main_list_store)
++    private static inline SelectionState _get_selection_state (ListBox main_list_box, ref GLib.ListStore main_list_store)
+     {
+         List<weak ListBoxRow> selected_rows = main_list_box.get_selected_rows ();
+         uint n_selected_rows = selected_rows.length ();
+diff --git a/editor/pathentry.vala b/editor/pathentry.vala
+index 5000b21..5c7efc5 100644
+--- a/editor/pathentry.vala
++++ b/editor/pathentry.vala
+@@ -133,9 +133,9 @@ private class PathEntry : Box, AdaptativeWidget
+ 
+     internal void entry_grab_focus_without_selecting ()
+     {
+-        _entry_grab_focus_without_selecting (ref search_entry);
++        _entry_grab_focus_without_selecting (search_entry);
+     }
+-    private static void _entry_grab_focus_without_selecting (ref BrowserEntry search_entry)
++    private static void _entry_grab_focus_without_selecting (BrowserEntry search_entry)
+     {
+         if (search_entry.text_length != 0)
+         {
+@@ -172,36 +172,36 @@ private class PathEntry : Box, AdaptativeWidget
+         requires (search_changed_handler != 0)
+     {
+         SignalHandler.block (search_entry, search_changed_handler);
+-        _prepare (mode, nullable_search, ref current_path, ref search_entry);
++        _prepare (mode, nullable_search, ref current_path, search_entry);
+         SignalHandler.unblock (search_entry, search_changed_handler);
+     }
+ 
+     private static inline void _prepare (SearchMode   mode,
+                                          string?      nullable_search,
+                                      ref string       current_path,
+-                                     ref BrowserEntry search_entry)
++                                         BrowserEntry search_entry)
+     {
+         string search;
+         switch (mode)
+         {
+             case SearchMode.EDIT_PATH_MOVE_END:
+                 search = nullable_search == null ? current_path : (!) nullable_search;
+-                _prepare_move_end (ref search, ref search_entry);
++                _prepare_move_end (ref search, search_entry);
+                 return;
+ 
+             case SearchMode.EDIT_PATH_SELECT_ALL:
+                 search = nullable_search == null ? current_path : (!) nullable_search;
+-                _prepare_search (ref search, ref search_entry);
++                _prepare_search (ref search, search_entry);
+                 return;
+ 
+             case SearchMode.EDIT_PATH_SELECT_LAST_WORD:
+                 search = current_path;
+-                _prepare_select_last_word (ref search, ref search_entry);
++                _prepare_select_last_word (ref search, search_entry);
+                 return;
+ 
+             case SearchMode.SEARCH:
+                 search = "";
+-                _prepare_search (ref search, ref search_entry);
++                _prepare_search (ref search, search_entry);
+                 return;
+ 
+             case SearchMode.UNCLEAR:
+@@ -210,19 +210,19 @@ private class PathEntry : Box, AdaptativeWidget
+         }
+     }
+ 
+-    private static inline void _prepare_move_end (ref string text, ref BrowserEntry search_entry)
++    private static inline void _prepare_move_end (ref string text, BrowserEntry search_entry)
+     {
+         search_entry.text = text;
+-        _entry_grab_focus_without_selecting (ref search_entry);
++        _entry_grab_focus_without_selecting (search_entry);
+     }
+ 
+-    private static inline void _prepare_search (ref string text, ref BrowserEntry search_entry)
++    private static inline void _prepare_search (ref string text, BrowserEntry search_entry)
+     {
+         search_entry.text = text;
+         search_entry.grab_focus ();
+     }
+ 
+-    private static inline void _prepare_select_last_word (ref string current_path, ref BrowserEntry search_entry)
++    private static inline void _prepare_select_last_word (ref string current_path, BrowserEntry search_entry)
+     {
+         search_entry.move_cursor (MovementStep.DISPLAY_LINE_ENDS, -1, false);
+         search_entry.text = current_path;
+diff --git a/editor/registry-list.vala b/editor/registry-list.vala
+index 74b7f99..54aa6fa 100644
+--- a/editor/registry-list.vala
++++ b/editor/registry-list.vala
+@@ -291,9 +291,9 @@ private abstract class RegistryList : Grid, BrowsableView, AdaptativeWidget
+ 
+     internal bool handle_copy_text (out string copy_text) // can compile with "private", but is public 1/2
+     {
+-        return _handle_copy_text (out copy_text, ref key_list_box);
++        return _handle_copy_text (out copy_text, key_list_box);
+     }
+-    private bool _handle_copy_text (out string copy_text, ref ListBox key_list_box)
++    private bool _handle_copy_text (out string copy_text, ListBox key_list_box)
+     {
+         ListBoxRow? selected_row = (ListBoxRow?) key_list_box.get_selected_row ();
+         if (selected_row == null)
+@@ -1138,7 +1138,7 @@ private abstract class RegistryList : Grid, BrowsableView, AdaptativeWidget
+     * * headers
+     \*/
+ 
+-    protected static bool is_first_row (int row_index, ref unowned ListBoxRow? before)
++    protected static bool is_first_row (int row_index, ListBoxRow? before)
+     {
+         bool is_first_row = row_index == 0;
+         if (is_first_row != (before == null))
+diff --git a/editor/registry-search.vala b/editor/registry-search.vala
+index 220583f..eb8e6f2 100644
+--- a/editor/registry-search.vala
++++ b/editor/registry-search.vala
+@@ -48,7 +48,7 @@ private class RegistrySearch : RegistryList
+ 
+     internal bool handle_alt_copy_text (out string copy_text)
+     {
+-        return _handle_alt_copy_text (out copy_text, ref key_list_box);
++        return _handle_alt_copy_text (out copy_text, key_list_box);
+     }
+ 
+     internal void clean ()
+@@ -145,7 +145,7 @@ private class RegistrySearch : RegistryList
+     * * Keyboard calls
+     \*/
+ 
+-    private static bool _handle_alt_copy_text (out string copy_text, ref ListBox key_list_box)
++    private static bool _handle_alt_copy_text (out string copy_text, ListBox key_list_box)
+     {
+         ListBoxRow? selected_row = key_list_box.get_selected_row ();
+         if (selected_row == null)
+@@ -521,7 +521,7 @@ private class RegistrySearch : RegistryList
+     private void update_row_header (ListBoxRow row, ListBoxRow? before)
+     {
+         int row_index = row.get_index ();
+-        if (is_first_row (row_index, ref before))
++        if (is_first_row (row_index, before))
+             return;
+ 
+         if (search_is_path_search)
+diff --git a/editor/registry-view.vala b/editor/registry-view.vala
+index e0ff379..7d9eb1f 100644
+--- a/editor/registry-view.vala
++++ b/editor/registry-view.vala
+@@ -114,7 +114,7 @@ private class RegistryView : RegistryList
+ 
+     private void update_row_header (ListBoxRow row, ListBoxRow? before)
+     {
+-        if (is_first_row (row.get_index (), ref before))
++        if (is_first_row (row.get_index (), before))
+             return;
+         update_row_header_with_context (row, (!) before, modifications_handler.model, /* local search header */ false);
+     }
+-- 
+2.30.1
+
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor_3.38.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor_3.38.2.bb
index 02e604f..776558e 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor_3.38.2.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor_3.38.2.bb
@@ -8,6 +8,8 @@
 
 inherit gnomebase vala gettext gsettings bash-completion
 
+SRC_URI += "file://0001-Don-t-alter-or-try-to-write-GtkChild-fields.patch"
+
 SRC_URI[archive.sha256sum] = "1253dad87e6213fbf313ff9ec9dc4358aa1b10261f28072c1dc0e0997b92f835"
 
 FILES_${PN} += " \
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring_3.36.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring_3.36.0.bb
index 8f318bb..3fc16bb 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring_3.36.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring_3.36.0.bb
@@ -43,10 +43,8 @@
     ${base_libdir}/security/*${SOLIBSDEV} \
     ${libdir}/pkcs11/gnome-keyring-pkcs11.so \
 "
-
 # fix | gnome-keyring-daemon: insufficient process capabilities, unsecure memory might get used
-# This does not make it through pseudo so perform on-target - sigh
-pkg_postinst_ontarget_${PN} () {
-    setcap cap_ipc_lock+ep `which gnome-keyring-daemon`
+pkg_postinst_${PN} () {
+    setcap cap_ipc_lock+ep $D/${bindir}/gnome-keyring-daemon
 }
-RDEPENDS_${PN} += "libcap-bin"
+PACKAGE_WRITE_DEPS += "libcap-native"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_3.36.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_3.36.1.bb
index e14891a..a532ae7 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_3.36.1.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_3.36.1.bb
@@ -29,15 +29,6 @@
 
 UNKNOWN_CONFIGURE_WHITELIST = "introspection"
 
-# allow cross build mixed with build of native tools
-do_write_config_append() {
-    cat >${WORKDIR}/meson.native <<EOF
-[binaries]
-pkgconfig = 'pkg-config-native'
-EOF
-}
-EXTRA_OEMESON = "--native-file ${WORKDIR}/meson.native"
-
 PACKAGECONFIG ??= " \
     cups nm \
     alsa gudev \
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound/0001-Set-vapidir.patch b/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound/0001-Set-vapidir.patch
new file mode 100644
index 0000000..ffccfd5
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound/0001-Set-vapidir.patch
@@ -0,0 +1,28 @@
+From 0a790273aca3ba07dfa6d2f61e3aaa7157c1a3bb Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 20 Mar 2021 09:22:18 -0700
+Subject: [PATCH] Set vapidir
+
+Use parentheses instead of braces, it makes automake and perl happy
+newer perl does not like ${} for VALAFLAGS
+
+Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.30), passed through in regex; marked by <-- HERE in m/^${ <-- HERE abs_top_builddir}/gsound$/ at TOPDIR/build/tmp/work/mips32r2-yoe-linux/gsound/1.0.2-r0/recipe-sysroot-native/usr/bin/automake line 5759.
+autoreconf: error: automake failed with exit status: 255
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ tools/Makefile.am | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+--- a/tools/Makefile.am
++++ b/tools/Makefile.am
+@@ -8,7 +8,7 @@ bin_PROGRAMS = gsound-play
+ gsound_play_SOURCES = gsound-play.vala
+ 
+ gsound_play_VALAFLAGS = \
+-    --vapidir ${abs_top_builddir}/gsound \
++    --vapidir $(abs_top_builddir)/gsound \
+     --pkg gsound \
+     ${NULL}
+ 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound_1.0.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound_1.0.2.bb
index e4478e1..65ee1e1 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound_1.0.2.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound_1.0.2.bb
@@ -9,5 +9,7 @@
 
 inherit gnomebase gettext gobject-introspection vala
 
+SRC_URI += "file://0001-Set-vapidir.patch"
+
 SRC_URI[archive.md5sum] = "c26fd21c21b9ef6533a202a73fab21db"
 SRC_URI[archive.sha256sum] = "bba8ff30eea815037e53bee727bbd5f0b6a2e74d452a7711b819a7c444e78e53"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker-miners_2.3.5.bb b/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker-miners_2.3.5.bb
index 097bcdb..07fa10a 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker-miners_2.3.5.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker-miners_2.3.5.bb
@@ -23,7 +23,7 @@
 UNKNOWN_CONFIGURE_WHITELIST_append = " introspection"
 
 PACKAGECONFIG ??= " \
-    ffmpeg \
+    ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "ffmpeg", "", d)} \
     flac \
     gexiv2 \
     gstreamer \
diff --git a/meta-openembedded/meta-initramfs/conf/layer.conf b/meta-openembedded/meta-initramfs/conf/layer.conf
index 92df579..d1d6693 100644
--- a/meta-openembedded/meta-initramfs/conf/layer.conf
+++ b/meta-openembedded/meta-initramfs/conf/layer.conf
@@ -16,7 +16,7 @@
 BBFILE_PRIORITY_meta-initramfs = "8"
 LAYERDEPENDS_meta-initramfs = "core"
 
-LAYERSERIES_COMPAT_meta-initramfs = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_meta-initramfs = " hardknott"
 
 SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \
   dracut->virtual/kernel \
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc_git.bb b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc_git.bb
index c49b24f..656162f 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc_git.bb
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc_git.bb
@@ -10,7 +10,7 @@
 
 DEPENDS = "zlib xz"
 
-inherit klibc autotools
+inherit klibc autotools siteinfo
 
 SRC_URI = "git://git.kernel.org/pub/scm/utils/kernel/kexec/kexec-tools.git"
 SRCREV = "5750980cdbbc33ef75bfba6660295b932376ce15"
@@ -66,17 +66,8 @@
 
 # fix purgatory/printf.c:2:10: fatal error: limits.h: No such file or directory
 # fix include/limits.h:42:10: fatal error: bitsize/limits.h: No such file or directory
-COMMON_CFLAGS += "-O2 -I${STAGING_DIR_HOST}${libdir}/klibc/include -I${S}/purgatory/include"
-CFLAGS_x86_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits32"
-CFLAGS_x86-64_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits64"
-CFLAGS_arm_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits32"
-CFLAGS_aarch64_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits64"
-CFLAGS_mips_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits32"
-CFLAGS_mipsel_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits32"
-CFLAGS_mips64_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits64"
-CFLAGS_mips64el_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits64"
-CFLAGS_powerpc_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits32"
-
+CFLAGS += "-O2 -I${STAGING_DIR_HOST}${libdir}/klibc/include -I${S}/purgatory/include \
+           -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits${SITEINFO_BITS}"
 
 do_compile_prepend() {
     # Remove the prepackaged config.h from the source tree as it overrides
diff --git a/meta-openembedded/meta-multimedia/conf/layer.conf b/meta-openembedded/meta-multimedia/conf/layer.conf
index a27b97d..6d3de7c 100644
--- a/meta-openembedded/meta-multimedia/conf/layer.conf
+++ b/meta-openembedded/meta-multimedia/conf/layer.conf
@@ -31,4 +31,4 @@
 
 LAYERDEPENDS_multimedia-layer = "core meta-python"
 
-LAYERSERIES_COMPAT_multimedia-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_multimedia-layer = " hardknott"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/aom/aom_2.0.0.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/aom/aom_3.0.0.bb
similarity index 93%
rename from meta-openembedded/meta-multimedia/recipes-multimedia/aom/aom_2.0.0.bb
rename to meta-openembedded/meta-multimedia/recipes-multimedia/aom/aom_3.0.0.bb
index 1ad4577..7ea9b19 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/aom/aom_2.0.0.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/aom/aom_3.0.0.bb
@@ -8,7 +8,7 @@
 
 SRC_URI = "git://aomedia.googlesource.com/aom;protocol=https"
 
-SRCREV = "d1d1226af626a61f7ca664b270dd473b92228984"
+SRCREV = "307ce06ed82d93885ee8ed53e152c9268ac0d98d"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-uvcvideo-Use-auto-variable-to-avoid-range-loop-warni.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-uvcvideo-Use-auto-variable-to-avoid-range-loop-warni.patch
index 4ca412c..cec5fc2 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-uvcvideo-Use-auto-variable-to-avoid-range-loop-warni.patch
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-uvcvideo-Use-auto-variable-to-avoid-range-loop-warni.patch
@@ -1,27 +1,104 @@
-From 767267ef69c001870d41caf9c60dd7fec89b0a13 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 3 Mar 2021 15:11:46 -0800
-Subject: [PATCH] uvcvideo: Use auto variable to avoid range loop warnings
+Delivered-To: raj.khem@gmail.com
+Received: by 2002:a05:620a:20d3:0:0:0:0 with SMTP id f19csp2716715qka;
+        Sat, 27 Mar 2021 19:58:30 -0700 (PDT)
+X-Google-Smtp-Source: ABdhPJwyDnjZqZmFqHVShb/5/RoVkJ4Avv5bcnyuo85vIRR2vJDQF+QBZpQpEWHgx5GuEuwLVSC+
+X-Received: by 2002:a05:6512:22d0:: with SMTP id g16mr12125441lfu.650.1616900310724;
+        Sat, 27 Mar 2021 19:58:30 -0700 (PDT)
+ARC-Seal: i=1; a=rsa-sha256; t=1616900310; cv=none;
+        d=google.com; s=arc-20160816;
+        b=bZlu68tossyE2YcGkt0HzIhqTUroWDT/EgJvAiQBgZ6bPzMJ+wjwWp3LzViqOxiRPQ
+         r0cFyme7CJ9YRf2TLmpjGuv2RPQ+EkrtFdlB7i65nhDrwvBoxt78vF2tUoDgVLL1YrU9
+         wKgHPtBjtDcDveOXKQJH2j5HRwiBjCXlPRBhlSxV8kJPBj//dRaKm0MsxfiW/IgyN1tZ
+         FFxfe4Lk1Awm8ZKAklhdKMly3MFA6IbnjwNcN/84a0R/0+PLu9X8XIR6+CnrfqSgWOBx
+         zsV8p3HuVQTpX7Hhnkiz7PYudHsJJ/7KXeXTP6s9NNnZGu9A6U/E6VOob5BSm9DDIA5z
+         4AnA==
+ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816;
+        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
+         :to:from:dkim-signature;
+        bh=fbAn+wsNks5BGTY34H4T90NDFJaNV4nnt9vc9DBFaWQ=;
+        b=mLZNiQR/CdgcVTAc7OQmK0ZYTVpofG/EOqTIi2NYIYFhanWhatYY9Hx2xwxIp6kQ5R
+         n0uXh5tLth6aPYD09z3YcXYasEIszBKwoNUFjRA85lFm3d5/J2S1wC5rBy25QeCDOg57
+         QdzYrTBX2QGRHGQKauEnX5FLDTT+I53sPa87TyvxUKBS+lTAbJig70KfmL7FJIEWT1ZI
+         CZKCErYFlQTGNnwM0CYVXyHv54D2tA25veHQIJN8KK+XObNWuAY3rYpqKoUpOP4vpSPi
+         MXJWAV4L6NZEShWvwJiC4Zdy2xFzXASX27CAKIsX6T5Rub03grVTg6WVt9bChK1x5jeg
+         A2Yw==
+ARC-Authentication-Results: i=1; mx.google.com;
+       dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=MniKswyT;
+       spf=pass (google.com: domain of laurent.pinchart@ideasonboard.com designates 213.167.242.64 as permitted sender) smtp.mailfrom=laurent.pinchart@ideasonboard.com
+Return-Path: <laurent.pinchart@ideasonboard.com>
+Received: from perceval.ideasonboard.com (perceval.ideasonboard.com. [213.167.242.64])
+        by mx.google.com with ESMTPS id v18si12339470ljj.208.2021.03.27.19.58.30
+        for <raj.khem@gmail.com>
+        (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
+        Sat, 27 Mar 2021 19:58:30 -0700 (PDT)
+Received-SPF: pass (google.com: domain of laurent.pinchart@ideasonboard.com designates 213.167.242.64 as permitted sender) client-ip=213.167.242.64;
+Authentication-Results: mx.google.com;
+       dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=MniKswyT;
+       spf=pass (google.com: domain of laurent.pinchart@ideasonboard.com designates 213.167.242.64 as permitted sender) smtp.mailfrom=laurent.pinchart@ideasonboard.com
+Received: from pendragon.lan (62-78-145-57.bb.dnainternet.fi [62.78.145.57])
+	by perceval.ideasonboard.com (Postfix) with ESMTPSA id 11F12332;
+	Sun, 28 Mar 2021 04:58:28 +0200 (CEST)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;
+	s=mail; t=1616900309;
+	bh=BwCg4h9N9fJysbMT1Yjbazbp7zTImD9mkWJSjCKzCmg=;
+	h=From:To:Cc:Subject:Date:From;
+	b=MniKswyT+aUtPgeMFeLqW6cRMFsPRN4W1XtVDA6pqI0QTSSx5koEuzSfEybjs6Qbp
+	 ZdQar1r5nBIRCg9uq85YoLKoFeT7WN4PrwnRYPwaYGAFHfV44rDrq4RBe3VOIb+85W
+	 tKn4HEzjlFelrImVbeymBsgpVhITveSVH1MdYRsE=
+From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
+To: libcamera-devel@lists.libcamera.org
+Cc: Khem Raj <raj.khem@gmail.com>
+Subject: [PATCH v2] libcamera: pipeline: uvcvideo: Avoid reference to temporary object
+Date: Sun, 28 Mar 2021 05:57:41 +0300
+Message-Id: <20210328025741.30246-1-laurent.pinchart@ideasonboard.com>
+X-Mailer: git-send-email 2.28.1
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
 
-With c++17 loop range bases are defined where copy is obvious since
-iterator returns a copy and not reference, gcc11 will emit a warning
-about this
+From: Khem Raj <raj.khem@gmail.com>
+
+A range-based for loop whose range expression is an array of char
+pointers and range variable declaration is a const reference to a
+std::string creates a temporary string from the char pointer and binds
+the range variable reference to it. This creates a const reference to a
+temporary, which is valid in C++, and extends the lifetime of the
+temporary to the lifetime of the reference.
+
+However, lifetime extension in range-based for loops is considered as a
+sign of a potential issue, as a temporary is created for every
+iteration, which can be costly, and the usage of a reference in the
+range declaration doesn't make it obvious that the code isn't simply
+binding a reference to an existing object. gcc 11, with the
+-Wrange-loop-construct option, flags this:
 
 uvcvideo.cpp:432:33: error: loop variable 'name' of type 'const string&' {aka 'const std::__cxx11::basic_string<cha
 r>&'} binds to a temporary constructed from type 'const char* const' [-Werror=range-loop-construct]
 |   432 |         for (const std::string &name : { "idVendor", "idProduct" }) {
 |       |                                 ^~~~
 
-Therefore making it explicit is better
+To please the compiler, make the range variable a const char *. This may
+bring a tiny performance improvement, as the name is only used once, in
+a location where the compiler can use
 
-Upstream-Status: Submitted [https://lists.libcamera.org/pipermail/libcamera-devel/2021-March/017966.html]
+	operator+(const std::string &, const char *)
+
+instead of
+
+	operator+(const std::string &, const std::string &)
+
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
+
+Use a const char * type instead of auto, and update the commit message
+accordingly.
+
+Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
 ---
  src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
-index 031f96e2..ef23ece7 100644
+index 031f96e28449..b6c6ade5ebaf 100644
 --- a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
 +++ b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
 @@ -429,7 +429,7 @@ std::string PipelineHandlerUVC::generateId(const UVCCameraData *data)
@@ -29,10 +106,12 @@
  	/* Creata a device ID from the USB devices vendor and product ID. */
  	std::string deviceId;
 -	for (const std::string &name : { "idVendor", "idProduct" }) {
-+	for (const auto name : { "idVendor", "idProduct" }) {
++	for (const char *name : { "idVendor", "idProduct" }) {
  		std::ifstream file(path + "/../" + name);
  
  		if (!file.is_open())
 -- 
-2.30.1
+Regards,
+
+Laurent Pinchart
 
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/musicpd/mpd_0.22.6.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/musicpd/mpd_0.22.6.bb
index e91bb5d..b1fa96e 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/musicpd/mpd_0.22.6.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/musicpd/mpd_0.22.6.bb
@@ -2,8 +2,6 @@
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
 
-LICENSE_FLAGS = "${@bb.utils.contains_any('PACKAGECONFIG', ['ffmpeg', 'aac'], 'commercial', '', d)}"
-
 HOMEPAGE ="http://www.musicpd.org"
 
 inherit meson useradd systemd pkgconfig
@@ -28,7 +26,14 @@
 
 EXTRA_OEMESON += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '-Dsystemd=enabled -Dsystemd_system_unit_dir=${systemd_system_unitdir} -Dsystemd_user_unit_dir=${systemd_system_unitdir}', '-Dsystemd=disabled', d)}"
 
-PACKAGECONFIG ??= "aac alsa ao bzip2 daemon ffmpeg fifo flac fluidsynth iso9660 jack libsamplerate httpd mms mpg123 modplug sndfile upnp openal opus oss recorder vorbis wavpack zlib"
+PACKAGECONFIG ??= "${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "aac", "", d)} \
+                   alsa ao bzip2 daemon \
+                   ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "ffmpeg aac", "", d)} \
+                   fifo flac fluidsynth iso9660 \
+                   jack libsamplerate httpd \
+                   mms mpg123 modplug sndfile \
+                   upnp openal opus oss recorder \
+                   vorbis wavpack zlib"
 
 PACKAGECONFIG[aac] = "-Dfaad=enabled,-Dfaad=disabled,faad2"
 PACKAGECONFIG[alsa] = "-Dalsa=enabled,-Dalsa=disabled,alsa-lib"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/openh264/openh264_2.1.1.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/openh264/openh264_2.1.1.bb
index 3988cff..75d5010 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/openh264/openh264_2.1.1.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/openh264/openh264_2.1.1.bb
@@ -23,6 +23,7 @@
 COMPATIBLE_MACHINE_x86-64 = "(.*)"
 COMPATIBLE_MACHINE_mips = "(.*)"
 COMPATIBLE_MACHINE_mips64 = "(.*)"
+COMPATIBLE_MACHINE_powerpc64le = "null"
 
 EXTRA_OEMAKE_armv7a = "ARCH=arm"
 EXTRA_OEMAKE_armv7ve = "ARCH=arm"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb
index 78c7c06..73b852a 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb
@@ -53,7 +53,8 @@
     bigbuckbunny-720p \
     tearsofsteel-1080p \
     schroedinger \
-    projucer \
+    pipewire \
+    ${@bb.utils.contains("DISTRO_FEATURES", "x11", "projucer", "", d)} \
     libcamera \
     ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "libde265 openh264", "", d)} \
     vorbis-tools \
@@ -66,7 +67,7 @@
     openal-soft \
     opusfile \
     libdvdcss \
-    ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "vlc", "", d)} \
+    ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", bb.utils.contains("DISTRO_FEATURES", "x11", "vlc", "", d), "", d)} \
     ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "sox streamripper", "", d)} \
     tinyalsa \
     tremor \
@@ -74,6 +75,7 @@
     ${@bb.utils.contains_any("TRANSLATED_TARGET_ARCH", "i586 x86-64", "x265", "", d)} \
 "
 RDEPENDS_packagegroup-meta-multimedia_remove_libc-musl = "projucer"
+RDEPENDS_packagegroup-meta-multimedia_remove_powerpc64le = "openh264"
 
 RDEPENDS_packagegroup-meta-multimedia-connectivity = "\
     gssdp \
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.22.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.24.bb
similarity index 86%
rename from meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.22.bb
rename to meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.24.bb
index b54be7f..25c87d2 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.22.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.24.bb
@@ -11,7 +11,7 @@
 
 DEPENDS = "dbus"
 
-SRCREV = "22d563720a7f6ba7bdf59950f8c14488d80dfa95"
+SRCREV = "c81d44e8a9497899d01bcc3054b6aa845e7a066e"
 SRC_URI = "git://gitlab.freedesktop.org/pipewire/pipewire.git;branch=master;protocol=https"
 
 S = "${WORKDIR}/git"
@@ -30,24 +30,30 @@
 # For "EVL", look up https://evlproject.org/ . It involves
 # a specially prepared kernel, and is currently unavailable
 # in Yocto.
+#
 # FFmpeg and Vulkan aren't really supported - at the current
 # stage (version 0.3.22), these are just experiments, not
 # actual features.
+#
 # libcamera support currently does not build successfully.
+#
 # systemd user service files are disabled because per-user
 # PipeWire instances aren't really something that makes
 # much sense in an embedded environment. A system-wide
 # instance does.
+#
+# manpage generation requires xmltoman, which is not available.
 EXTRA_OEMESON += " \
-    -Daudiotestsrc=true \
-    -Devl=false \
-    -Dsystemd-user-service=false \
-    -Dtests=false \
+    -Daudiotestsrc=enabled \
+    -Devl=disabled \
+    -Dsystemd-user-service=disabled \
+    -Dtests=disabled \
     -Dudevrulesdir=${nonarch_base_libdir}/udev/rules.d/ \
-    -Dvideotestsrc=true \
-    -Dffmpeg=false \
-    -Dvulkan=false \
-    -Dlibcamera=false \
+    -Dvideotestsrc=enabled \
+    -Dffmpeg=disabled \
+    -Dvulkan=disabled \
+    -Dlibcamera=disabled \
+    -Dman=disabled \
 "
 
 PACKAGECONFIG ??= "\
@@ -62,18 +68,17 @@
 # is why these two are marked in their respective packageconfigs
 # as being in conflict.
 
-PACKAGECONFIG[alsa] = "-Dalsa=true,-Dalsa=false,alsa-lib udev"
-PACKAGECONFIG[bluez] = "-Dbluez5=true,-Dbluez5=false,bluez5 sbc"
-PACKAGECONFIG[docs] = "-Ddocs=true,-Ddocs=false,doxygen"
-PACKAGECONFIG[gstreamer] = "-Dgstreamer=true,-Dgstreamer=false,glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base"
-PACKAGECONFIG[jack] = "-Djack=true,-Djack=false,jack,,,pipewire-jack"
-PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false,libxml-parser-perl-native"
+PACKAGECONFIG[alsa] = "-Dalsa=enabled,-Dalsa=disabled,alsa-lib udev"
+PACKAGECONFIG[bluez] = "-Dbluez5=enabled,-Dbluez5=disabled,bluez5 sbc"
+PACKAGECONFIG[docs] = "-Ddocs=enabled,-Ddocs=disabled,doxygen-native"
+PACKAGECONFIG[gstreamer] = "-Dgstreamer=enabled,-Dgstreamer=disabled,glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base"
+PACKAGECONFIG[jack] = "-Djack=enabled,-Djack=disabled,jack,,,pipewire-jack"
 PACKAGECONFIG[sdl2] = "-Dsdl2=enabled,-Dsdl2=disabled,virtual/libsdl2"
 PACKAGECONFIG[sndfile] = "-Dsndfile=enabled,-Dsndfile=disabled,libsndfile1"
-PACKAGECONFIG[systemd] = "-Dsystemd=true -Dsystemd-system-service=true ,-Dsystemd=false -Dsystemd-system-service=false,systemd"
-PACKAGECONFIG[v4l2] = "-Dv4l2=true,-Dv4l2=false,udev"
-PACKAGECONFIG[pipewire-alsa] = "-Dpipewire-alsa=true,-Dpipewire-alsa=false,alsa-lib"
-PACKAGECONFIG[pipewire-jack] = "-Dpipewire-jack=true -Dlibjack-path=${libdir}/${PW_MODULE_SUBDIR}/jack,-Dpipewire-jack=false,jack,,,jack"
+PACKAGECONFIG[systemd] = "-Dsystemd=enabled -Dsystemd-system-service=enabled ,-Dsystemd=disabled -Dsystemd-system-service=disabled,systemd"
+PACKAGECONFIG[v4l2] = "-Dv4l2=enabled,-Dv4l2=disabled,udev"
+PACKAGECONFIG[pipewire-alsa] = "-Dpipewire-alsa=enabled,-Dpipewire-alsa=disabled,alsa-lib"
+PACKAGECONFIG[pipewire-jack] = "-Dpipewire-jack=enabled -Dlibjack-path=${libdir}/${PW_MODULE_SUBDIR}/jack,-Dpipewire-jack=disabled,jack,,,jack"
 
 PACKAGESPLITFUNCS_prepend = " split_dynamic_packages "
 PACKAGESPLITFUNCS_append = " set_dynamic_metapkg_rdepends "
@@ -240,9 +245,11 @@
 
 # Example session manager. Not intended for use in production.
 CONFFILES_${PN}-media-session = "${sysconfdir}/pipewire/media-session.d/*"
+SYSTEMD_SERVICE_${PN}-media-session = "pipewire-media-session.service"
 FILES_${PN}-media-session = " \
     ${bindir}/pipewire-media-session \
     ${sysconfdir}/pipewire/media-session.d/* \
+    ${systemd_system_unitdir}/pipewire-media-session.service \
 "
 RPROVIDES_${PN}-media-session = "virtual/pipewire-sessionmanager"
 
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/sox/sox_14.4.2.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/sox/sox_14.4.2.bb
index 21fddd1..2d6e913 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/sox/sox_14.4.2.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/sox/sox_14.4.2.bb
@@ -6,9 +6,6 @@
 
 DEPENDS = "libpng ffmpeg libsndfile1"
 
-# While this item does not require it, it depends on ffmpeg which does
-LICENSE_FLAGS = "commercial"
-
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'alsa pulseaudio', d)} \
                    magic \
 "
@@ -38,3 +35,5 @@
 SRC_URI[sha256sum] = "b45f598643ffbd8e363ff24d61166ccec4836fea6d3888881b8df53e3bb55f6c"
 
 inherit autotools pkgconfig
+
+EXCLUDE_FROM_WORLD = "${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "0", "1", d)}"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.12.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.12.bb
index c0074aa..cb796a0 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.12.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.12.bb
@@ -16,9 +16,6 @@
 LDFLAGS_append_riscv64 = " -latomic"
 LDFLAGS_append_riscv32 = " -latomic"
 
-# While this item does not require it, it depends on ffmpeg which does
-LICENSE_FLAGS = "commercial"
-
 SRC_URI = "http://download.videolan.org/pub/videolan/${BPN}/${PV}/${BP}.tar.xz \
            file://0001-make-opencv-configurable.patch \
            file://0002-use-vorbisidec.patch \
@@ -134,3 +131,4 @@
 
 INSANE_SKIP_${PN} = "dev-so"
 
+EXCLUDE_FROM_WORLD = "${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "0", "1", d)}"
diff --git a/meta-openembedded/meta-networking/conf/layer.conf b/meta-openembedded/meta-networking/conf/layer.conf
index c28c7bd..968b216 100644
--- a/meta-openembedded/meta-networking/conf/layer.conf
+++ b/meta-openembedded/meta-networking/conf/layer.conf
@@ -17,7 +17,7 @@
 LAYERDEPENDS_networking-layer += "openembedded-layer"
 LAYERDEPENDS_networking-layer += "meta-python"
 
-LAYERSERIES_COMPAT_networking-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_networking-layer = " hardknott"
 
 LICENSE_PATH += "${LAYERDIR}/licenses"
 
diff --git a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-powerpc64le.txt b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-powerpc64le.txt
new file mode 100644
index 0000000..7a443cc
--- /dev/null
+++ b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-powerpc64le.txt
@@ -0,0 +1,41 @@
+Checking uname sysname type: "Linux"
+Checking uname version type: "# Wed May 20 10:34:39 UTC 2015"
+Checking simple C program: "hello world"
+rpath library support: OK
+-Wl,--version-script support: OK
+Checking getconf LFS_CFLAGS: NO
+Checking correct behavior of strtoll: NO
+Checking for working strptime: OK
+Checking for C99 vsnprintf: "1"
+Checking for HAVE_SHARED_MMAP: OK
+Checking for HAVE_MREMAP: OK
+Checking for HAVE_SECURE_MKSTEMP: OK
+Checking for HAVE_IFACE_GETIFADDRS: NO
+Checking for HAVE_IFACE_IFCONF: NO
+Checking for HAVE_IFACE_IFREQ: NO
+Checking for large file support without additional flags: OK
+Checking for HAVE_INCOHERENT_MMAP: NO
+Checking value of NSIG: "65"
+Checking value of _NSIG: "65"
+Checking value of SIGRTMAX: "64"
+Checking value of SIGRTMIN: "34"
+Checking whether the WRFILE -keytab is supported: OK
+Checking for kernel change notify support: OK
+Checking for Linux kernel oplocks: OK
+Checking for kernel share modes: OK
+Checking whether POSIX capabilities are available: OK
+Checking if can we convert from CP850 to UCS-2LE: (255, "")
+Checking if can we convert from IBM850 to UCS-2LE: (255, "")
+Checking if can we convert from UTF-8 to UCS-2LE: OK
+vfs_fileid checking for statfs() and struct statfs.f_fsid: OK
+Checking whether we can use Linux thread-specific credentials: OK
+Checking whether fcntl locking is available: OK
+Checking for the maximum value of the 'time_t' type: OK
+Checking whether the realpath function allows a NULL argument: OK
+Checking for ftruncate extend: OK
+getcwd takes a NULL argument: OK
+Checking for small off_t: NO
+Checking whether blkcnt_t is 32 bit: NO
+Checking whether blkcnt_t is 64 bit: OK
+Checking whether fcntl lock supports open file description locks: OK
+Checking for a 64-bit host to support lmdb: OK
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_2.0.8.bb b/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_2.0.9.bb
similarity index 95%
rename from meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_2.0.8.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_2.0.9.bb
index 03a829f..97a3801 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_2.0.8.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_2.0.9.bb
@@ -19,8 +19,8 @@
            file://1571.patch \
 "
 
-SRC_URI[md5sum] = "542c30f32c4473b7c50dc2e4a1424cf6"
-SRC_URI[sha256sum] = "b15da8fc4edcb91d554e1259e220ea0173ef639ceaa4b465e06feb7e125b84bf"
+SRC_URI[md5sum] = "b77cee4ee6f0d32ca8816a58167e8b1d"
+SRC_URI[sha256sum] = "1b8553ef64a1cf5e4f4cfbe098330ae612adccd3d37f35b2db6f6fab501b01d4"
 
 inherit systemd update-rc.d useradd cmake
 
diff --git a/meta-openembedded/meta-networking/recipes-daemons/atftp/files/atftpd.init b/meta-openembedded/meta-networking/recipes-daemons/atftp/atftp/atftpd.init
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-daemons/atftp/files/atftpd.init
rename to meta-openembedded/meta-networking/recipes-daemons/atftp/atftp/atftpd.init
diff --git a/meta-openembedded/meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.1.3.bb b/meta-openembedded/meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.1.4.bb
similarity index 98%
rename from meta-openembedded/meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.1.3.bb
rename to meta-openembedded/meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.1.4.bb
index 4a9cf9d..8a3dd01 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.1.3.bb
+++ b/meta-openembedded/meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.1.4.bb
@@ -12,7 +12,7 @@
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
 
-SRCREV ?= "34e3ffb194f6fa3028c0eb2ff57e7db2d1026771"
+SRCREV ?= "095f59ca464220eae285de6b5f2ee31185a6a84c"
 
 SRC_URI = "git://github.com/open-iscsi/open-iscsi \
            file://0001-Makefile-Do-not-set-Werror.patch \
diff --git a/meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.10.bb b/meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.11.bb
similarity index 86%
rename from meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.10.bb
rename to meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.11.bb
index b724233..693aa90 100644
--- a/meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.10.bb
+++ b/meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.11.bb
@@ -10,7 +10,7 @@
 DEPENDS = "libtool libmnl"
 
 SRC_URI = "http://ftp.netfilter.org/pub/ipset/${BP}.tar.bz2"
-SRC_URI[sha256sum] = "b24906ba43e2fe322bd41863476761d749a4bddf5ce4c2265ba04b03bc7e9cf6"
+SRC_URI[sha256sum] = "3151baad30f1d9e317b2ab4f2f5aa7a9f7b4dc11fcf8fe73acd0dc0b5dbabf7d"
 
 inherit autotools pkgconfig module-base
 
diff --git a/meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-tools_1.0.20210223.bb b/meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-tools_1.0.20210315.bb
similarity index 91%
rename from meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-tools_1.0.20210223.bb
rename to meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-tools_1.0.20210315.bb
index 4af7e3e..f02303e 100644
--- a/meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-tools_1.0.20210223.bb
+++ b/meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-tools_1.0.20210315.bb
@@ -1,6 +1,6 @@
 require wireguard.inc
 
-SRCREV = "6d3b876492298d0e311053567ecd7084972a8bc8"
+SRCREV = "622408872fd6f3a58e98e88d39d30e98968314fa"
 SRC_URI = "git://git.zx2c4.com/wireguard-tools"
 
 inherit bash-completion systemd pkgconfig
diff --git a/meta-openembedded/meta-networking/recipes-netkit/netkit-telnet/netkit-telnet_0.17.bb b/meta-openembedded/meta-networking/recipes-netkit/netkit-telnet/netkit-telnet_0.17.bb
index 08dd532..c05d0fd 100644
--- a/meta-openembedded/meta-networking/recipes-netkit/netkit-telnet/netkit-telnet_0.17.bb
+++ b/meta-openembedded/meta-networking/recipes-netkit/netkit-telnet/netkit-telnet_0.17.bb
@@ -5,7 +5,7 @@
 LICENSE = "BSD-4-Clause"
 LIC_FILES_CHKSUM = "file://telnet/telnet.cc;beginline=2;endline=3;md5=780868e7b566313e70cb701560ca95ef"
 
-SRC_URI = "http://ftp.linux.org.uk/pub/linux/Networking/netkit/${BP}.tar.gz \
+SRC_URI = "${DEBIAN_MIRROR}/main/n/netkit-telnet/netkit-telnet_${PV}.orig.tar.gz \
            file://To-aviod-buffer-overflow-in-telnet.patch \
            file://Warning-fix-in-the-step-of-install.patch \
            file://telnet-xinetd \
diff --git a/meta-openembedded/meta-networking/recipes-protocols/mdns/mdns_1310.40.42.bb b/meta-openembedded/meta-networking/recipes-protocols/mdns/mdns_1310.40.42.bb
index 445ed87..60bc26b 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/mdns/mdns_1310.40.42.bb
+++ b/meta-openembedded/meta-networking/recipes-protocols/mdns/mdns_1310.40.42.bb
@@ -27,6 +27,19 @@
 
 CVE_PRODUCT = "apple:mdnsresponder"
 
+# CVE-2007-0613 is not applicable as it only affects Apple products
+# i.e. ichat,mdnsresponder, instant message framework and MacOS.
+# Also, https://www.exploit-db.com/exploits/3230 shows the part of code
+# affected by CVE-2007-0613 which is not preset in upstream source code.
+# Hence, CVE-2007-0613 does not affect other Yocto implementations and
+# is not reported for other distros can be marked whitelisted.
+# Links:
+# https://vulmon.com/vulnerabilitydetails?qid=CVE-2007-0613
+# https://www.incibe-cert.es/en/early-warning/vulnerabilities/cve-2007-0613
+# https://security-tracker.debian.org/tracker/CVE-2007-0613
+# https://vulmon.com/vulnerabilitydetails?qid=CVE-2007-0613
+CVE_CHECK_WHITELIST += "CVE-2007-0613"
+
 PARALLEL_MAKE = ""
 
 S = "${WORKDIR}/mDNSResponder-${PV}/mDNSPosix"
diff --git a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/bgpd.service b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/bgpd.service
index c1021fb..818b59c 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/bgpd.service
+++ b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/bgpd.service
@@ -7,7 +7,6 @@
 [Service]
 Type=forking
 EnvironmentFile=-@SYSCONFDIR@/default/quagga
-PIDFile=/run/quagga/bgpd.pid
 ExecStart=@SBINDIR@/bgpd -d $bgpd_options -f @SYSCONFDIR@/quagga/bgpd.conf
 ExecStopPost=@base_bindir@/rm -rf /run/quagga/bgpd.pid
 Restart=on-abort
diff --git a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospf6d.service b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospf6d.service
index 99d0e6d..50645fe 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospf6d.service
+++ b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospf6d.service
@@ -7,7 +7,6 @@
 [Service]
 Type=forking
 EnvironmentFile=-@SYSCONFDIR@/default/quagga
-PIDFile=/run/quagga/ospf6d.pid
 ExecStart=@SBINDIR@/ospf6d -d $ospf6d_options -f @SYSCONFDIR@/quagga/ospf6d.conf
 ExecStopPost=@base_bindir@/rm -rf /run/quagga/ospf6d.pid
 Restart=on-abort
diff --git a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospfd.service b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospfd.service
index fe8343b..2cab1cd 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospfd.service
+++ b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospfd.service
@@ -7,7 +7,6 @@
 [Service]
 Type=forking
 EnvironmentFile=-@SYSCONFDIR@/default/quagga
-PIDFile=/run/quagga/ospfd.pid
 ExecStart=@SBINDIR@/ospfd -d $ospfd_options -f @SYSCONFDIR@/quagga/ospfd.conf
 ExecStopPost=@base_bindir@/rm -rf /run/quagga/ospfd.pid
 Restart=on-abort
diff --git a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripd.service b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripd.service
index 7af65ca..2c82431 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripd.service
+++ b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripd.service
@@ -7,7 +7,6 @@
 [Service]
 Type=forking
 EnvironmentFile=-@SYSCONFDIR@/default/quagga
-PIDFile=/run/quagga/ripd.pid
 ExecStart=@SBINDIR@/ripd -d $ripd_options -f @SYSCONFDIR@/quagga/ripd.conf
 ExecStopPost=@base_bindir@/rm -rf /run/quagga/ripd.pid
 Restart=on-abort
diff --git a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripngd.service b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripngd.service
index 9305f86..c3555b3 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripngd.service
+++ b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripngd.service
@@ -7,7 +7,6 @@
 [Service]
 Type=forking
 EnvironmentFile=-@SYSCONFDIR@/default/quagga
-PIDFile=/run/quagga/ripngd.pid
 ExecStart=@SBINDIR@/ripngd -d $ripngd_options -f @SYSCONFDIR@/quagga/ripngd.conf
 ExecStopPost=@base_bindir@/rm -rf /run/quagga/ripngd.pid
 Restart=on-abort
diff --git a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/zebra.service b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/zebra.service
index e34af72..9186041 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/zebra.service
+++ b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/zebra.service
@@ -7,7 +7,6 @@
 [Service]
 Type=forking
 EnvironmentFile=-@SYSCONFDIR@/default/quagga
-PIDFile=/run/quagga/zebra.pid
 ExecStartPre=@BASE_SBINDIR@/ip route flush proto zebra
 ExecStart=@SBINDIR@/zebra -d $zebra_options -f @SYSCONFDIR@/quagga/zebra.conf
 ExecStopPost=@base_bindir@/rm -rf /run/quagga/zebra.pid
diff --git a/meta-openembedded/meta-networking/recipes-protocols/quagga/quagga.inc b/meta-openembedded/meta-networking/recipes-protocols/quagga/quagga.inc
index 6df7242..3b7a425 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/quagga/quagga.inc
+++ b/meta-openembedded/meta-networking/recipes-protocols/quagga/quagga.inc
@@ -20,7 +20,7 @@
 # the "ip" command from busybox is not sufficient (flush by protocol flushes all routes)
 RDEPENDS_${PN} += "iproute2"
 
-SRC_URI = "${SAVANNAH_GNU_MIRROR}/quagga/quagga-${PV}.tar.gz; \
+SRC_URI = "https://github.com/Quagga/quagga/releases/download/quagga-${PV}/quagga-${PV}.tar.gz \
            file://quagga.init \
            file://quagga.default \
            file://watchquagga.init \
diff --git a/meta-openembedded/meta-networking/recipes-support/bridge-utils/bridge-utils_1.7.bb b/meta-openembedded/meta-networking/recipes-support/bridge-utils/bridge-utils_1.7.bb
index 3692323..cf71858 100644
--- a/meta-openembedded/meta-networking/recipes-support/bridge-utils/bridge-utils_1.7.bb
+++ b/meta-openembedded/meta-networking/recipes-support/bridge-utils/bridge-utils_1.7.bb
@@ -8,7 +8,7 @@
 SRCREV = "ab8a2cc330253321be7bc69dea88bfaa3d48415e"
 
 SRC_URI = "\
-    git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/bridge-utils.git \
+    git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/bridge-utils.git;branch=main \
     file://kernel-headers.patch \
     file://0005-build-don-t-ignore-CFLAGS-from-environment.patch \
     file://0006-libbridge-Modifying-the-AR-to-cross-toolchain.patch \
diff --git a/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.13.bb b/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.14.bb
similarity index 95%
rename from meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.13.bb
rename to meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.14.bb
index c78d283..c0f2863 100644
--- a/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.13.bb
+++ b/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.14.bb
@@ -12,8 +12,8 @@
            file://0001-not-check-pandoc.patch \
            "
 
-SRC_URI[md5sum] = "f512bf1a4dac9ac994fddfb6bc5068ff"
-SRC_URI[sha256sum] = "a3f875b80ec11a452480690108660030978c94fa8e796ad6d943a874b496f1c4"
+SRC_URI[md5sum] = "2f03532cec3280ae45a101a7a55ccef5"
+SRC_URI[sha256sum] = "c8b3d7f3af1e558a3ff0f970309d4013a4d3ce136f8c02a53a3b05f345b9a34a"
 
 DEPENDS = "openssl xz zlib bzip2 libcap icu libtirpc bison-native"
 CFLAGS += "-I${STAGING_INCDIR}/tirpc"
diff --git a/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.16.bb b/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.17.bb
similarity index 90%
rename from meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.16.bb
rename to meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.17.bb
index 71163c8..7c513f6 100644
--- a/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.16.bb
+++ b/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.17.bb
@@ -12,7 +12,7 @@
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz \
            "
-SRC_URI[sha256sum] = "044b9a0ac03afbae7744979defe3e2e32e39141bca68fd0c8deda2ed40884fb9"
+SRC_URI[sha256sum] = "a41bcdf11b41aa0682b259aee4717c617c15dadd43fa008b2ed38b770f4d50c6"
 
 inherit autotools gettext python3-dir python3native
 
diff --git a/meta-openembedded/meta-networking/recipes-support/geoip/geoip-perl_1.51.bb b/meta-openembedded/meta-networking/recipes-support/geoip/geoip-perl_1.51.bb
index ed5c3a9..944c005 100644
--- a/meta-openembedded/meta-networking/recipes-support/geoip/geoip-perl_1.51.bb
+++ b/meta-openembedded/meta-networking/recipes-support/geoip/geoip-perl_1.51.bb
@@ -11,7 +11,7 @@
 
 S = "${WORKDIR}/git"
 SRCREV = "4cdfdc38eca237c19c22a8b90490446ce6d970fa"
-SRC_URI = "git://github.com/maxmind/geoip-api-perl.git;protocol=https; \
+SRC_URI = "git://github.com/maxmind/geoip-api-perl.git;branch=main \
     file://run-ptest \
 "
 
diff --git a/meta-openembedded/meta-networking/recipes-support/geoip/geoip_1.6.12.bb b/meta-openembedded/meta-networking/recipes-support/geoip/geoip_1.6.12.bb
index 4271c2e..143100e 100644
--- a/meta-openembedded/meta-networking/recipes-support/geoip/geoip_1.6.12.bb
+++ b/meta-openembedded/meta-networking/recipes-support/geoip/geoip_1.6.12.bb
@@ -10,7 +10,7 @@
 
 GEOIP_DATABASE_VERSION = "20181205"
 
-SRC_URI = "git://github.com/maxmind/geoip-api-c.git \
+SRC_URI = "git://github.com/maxmind/geoip-api-c.git;branch=main \
            http://sources.openembedded.org/GeoIP.dat.${GEOIP_DATABASE_VERSION}.gz;apply=no;name=GeoIP-dat; \
            http://sources.openembedded.org/GeoIPv6.dat.${GEOIP_DATABASE_VERSION}.gz;apply=no;name=GeoIPv6-dat; \
            http://sources.openembedded.org/GeoLiteCity.dat.${GEOIP_DATABASE_VERSION}.gz;apply=no;name=GeoLiteCity-dat; \
diff --git a/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_git.bb b/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_1.25.4.bb
similarity index 82%
rename from meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_git.bb
rename to meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_1.25.4.bb
index a63e49e..37f6a8b 100644
--- a/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_git.bb
+++ b/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_1.25.4.bb
@@ -7,14 +7,12 @@
 
 HOMEPAGE = "https://github.com/libguestfs/nbdkit"
 LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=4332a97808994cf2133a65b6c6f33eaf"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=f9dcc2d8acdde215fa4bd6ac12bb14f0"
 
 SRC_URI = "git://github.com/libguestfs/nbdkit.git;protocol=https \
-           file://0001-server-Fix-build-when-printf-is-a-macro.patch \
 "
 
-PV = "1.19.6+git${SRCPV}"
-SRCREV = "257561bc9f2f01eb9f21686bcec4b863d17a26c4"
+SRCREV = "7b04baeb1858fa04f5f4e0d6f2d23bef706e80da"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-GitHub-Issue-367.-Remove-references-to-deprecated-G_.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-GitHub-Issue-367.-Remove-references-to-deprecated-G_.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-GitHub-Issue-367.-Remove-references-to-deprecated-G_.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-GitHub-Issue-367.-Remove-references-to-deprecated-G_.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-hgfsmounter-Makefile.am-support-usrmerge.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-hgfsmounter-Makefile.am-support-usrmerge.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-hgfsmounter-Makefile.am-support-usrmerge.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-hgfsmounter-Makefile.am-support-usrmerge.patch
diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-pollGtk-Drop-volatile-qualifier.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-pollGtk-Drop-volatile-qualifier.patch
new file mode 100644
index 0000000..adc6571
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-pollGtk-Drop-volatile-qualifier.patch
@@ -0,0 +1,32 @@
+From 7bd280f3cc07208760759c98bbfbac3f9d28f77c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 5 Mar 2021 08:58:29 -0800
+Subject: [PATCH] pollGtk: Drop volatile qualifier
+
+glib-2.0 has changed the function interfaces as well and do not expect
+it to be volatile. GCC 11 complains about it
+
+glib/gatomic.h:112:5: error: argument 2 of '__atomic_load' discards 'volatile' qualifier [-Werror=incompatible-pointer-types]
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ open-vm-tools/lib/pollGtk/pollGtk.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/open-vm-tools/lib/pollGtk/pollGtk.c b/open-vm-tools/lib/pollGtk/pollGtk.c
+index 6d95bf01..a941e7a7 100644
+--- a/open-vm-tools/lib/pollGtk/pollGtk.c
++++ b/open-vm-tools/lib/pollGtk/pollGtk.c
+@@ -1473,7 +1473,7 @@ PollGtkBasicCallback(gpointer data) // IN: The eventEntry
+ void
+ Poll_InitGtk(void)
+ {
+-   static volatile gsize inited = 0;
++   static gsize inited = 0;
+ 
+    static const PollImpl gtkImpl =
+    {
+-- 
+2.30.1
+
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-utilBacktrace-Ignore-Warray-bounds.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-utilBacktrace-Ignore-Warray-bounds.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-utilBacktrace-Ignore-Warray-bounds.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-utilBacktrace-Ignore-Warray-bounds.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-add-include-sys-sysmacros.h.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-add-include-sys-sysmacros.h.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-add-include-sys-sysmacros.h.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-add-include-sys-sysmacros.h.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0003-Use-configure-test-for-struct-timespec.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0003-Use-configure-test-for-struct-timespec.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0003-Use-configure-test-for-struct-timespec.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0003-Use-configure-test-for-struct-timespec.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0004-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0004-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0004-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0004-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0006-Use-configure-test-for-sys-stat.h-include.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0006-Use-configure-test-for-sys-stat.h-include.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0006-Use-configure-test-for-sys-stat.h-include.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0006-Use-configure-test-for-sys-stat.h-include.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0007-Fix-subdir-objects-configure-error.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0007-Fix-subdir-objects-configure-error.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0007-Fix-subdir-objects-configure-error.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0007-Fix-subdir-objects-configure-error.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0008-include-poll.h-instead-of-sys-poll.h.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0008-include-poll.h-instead-of-sys-poll.h.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0008-include-poll.h-instead-of-sys-poll.h.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0008-include-poll.h-instead-of-sys-poll.h.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0009-Rename-poll.h-to-vm_poll.h.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0009-Rename-poll.h-to-vm_poll.h.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0009-Rename-poll.h-to-vm_poll.h.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0009-Rename-poll.h-to-vm_poll.h.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0010-use-posix-strerror_r-unless-on-gnu-libc-system.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0010-use-posix-strerror_r-unless-on-gnu-libc-system.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0010-use-posix-strerror_r-unless-on-gnu-libc-system.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0010-use-posix-strerror_r-unless-on-gnu-libc-system.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0011-Use-uintmax_t-for-handling-rlim_t.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0011-Use-uintmax_t-for-handling-rlim_t.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0011-Use-uintmax_t-for-handling-rlim_t.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0011-Use-uintmax_t-for-handling-rlim_t.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0012-Use-off64_t-instead-of-__off64_t.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0012-Use-off64_t-instead-of-__off64_t.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0012-Use-off64_t-instead-of-__off64_t.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0012-Use-off64_t-instead-of-__off64_t.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0013-misc-Do-not-print-NULL-string-into-logs.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0013-misc-Do-not-print-NULL-string-into-logs.patch
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0013-misc-Do-not-print-NULL-string-into-logs.patch
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0013-misc-Do-not-print-NULL-string-into-logs.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/tools.conf b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/tools.conf
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/tools.conf
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/tools.conf
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools_11.0.1.bb b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools_11.0.1.bb
similarity index 94%
rename from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools_11.0.1.bb
rename to meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools_11.0.1.bb
index 34a81d2..832fab1 100644
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools_11.0.1.bb
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools_11.0.1.bb
@@ -43,6 +43,7 @@
     file://0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch;patchdir=.. \
     file://0001-utilBacktrace-Ignore-Warray-bounds.patch;patchdir=.. \
     file://0001-hgfsmounter-Makefile.am-support-usrmerge.patch;patchdir=.. \
+    file://0001-pollGtk-Drop-volatile-qualifier.patch;patchdir=.. \
 "
 
 SRCREV = "d3edfd142a81096f9f58aff17d84219b457f4987"
@@ -110,7 +111,6 @@
 INITSCRIPT_PARAMS_${PN} = "start 90 2 3 4 5 . stop 60 0 1 6 ."
 
 python() {
-    if 'networking-layer' not in d.getVar('BBFILE_COLLECTIONS').split() or \
-        'filesystems-layer' not in d.getVar('BBFILE_COLLECTIONS').split():
-        raise bb.parse.SkipRecipe('Requires meta-networking and meta-filesystems to be present.')
+    if 'filesystems-layer' not in d.getVar('BBFILE_COLLECTIONS').split():
+        raise bb.parse.SkipRecipe('Requires meta-filesystems to be present to provide fuse.')
 }
diff --git a/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.3.bb b/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.4.bb
similarity index 96%
rename from meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.3.bb
rename to meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.4.bb
index e730b18..b75f418 100644
--- a/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.3.bb
+++ b/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.4.bb
@@ -19,7 +19,7 @@
 
 UPSTREAM_CHECK_URI = "https://1.as.dl.wireshark.org/src"
 
-SRC_URI[sha256sum] = "f467cc77f0fc73fce0b854cdbc292f132d4879fca69d417eccad5f967fbf262b"
+SRC_URI[sha256sum] = "729cd11e9715c600e5ad74ca472bacf8af32c20902192d5f2b271268511d4d29"
 
 PE = "1"
 
diff --git a/meta-openembedded/meta-oe/classes/image_types_sparse.bbclass b/meta-openembedded/meta-oe/classes/image_types_sparse.bbclass
new file mode 100644
index 0000000..1459f80
--- /dev/null
+++ b/meta-openembedded/meta-oe/classes/image_types_sparse.bbclass
@@ -0,0 +1,16 @@
+inherit image_types
+
+CONVERSIONTYPES += "sparse"
+CONVERSION_CMD_sparse() {
+    in="${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
+    out="${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.sparse"
+    case "${type}" in
+        ext*)
+            ext2simg "$in" "$out"
+            ;;
+        *)
+            img2simg "$in" "$out"
+            ;;
+    esac
+}
+CONVERSION_DEPENDS_sparse = "android-tools-native"
diff --git a/meta-openembedded/meta-oe/conf/layer.conf b/meta-openembedded/meta-oe/conf/layer.conf
index 3de3015..d3aeaba 100644
--- a/meta-openembedded/meta-oe/conf/layer.conf
+++ b/meta-openembedded/meta-oe/conf/layer.conf
@@ -26,10 +26,14 @@
 # only activates content when identified layers are present,
 # to ensure yocto compatibility check pass
 BBFILES_DYNAMIC += " \
-meta-python:${LAYERDIR}/dynamic-layers/meta-python/recipes-*/*/*.bb \
-networking-layer:${LAYERDIR}/dynamic-layers/networking-layer/recipes-*/*/*.bb \
-gnome-layer:${LAYERDIR}/dynamic-layers/gnome-layer/recipes-*/*/*.bb \
-perl-layer:${LAYERDIR}/dynamic-layers/perl-layer/recipes-*/*/*.bb \
+    meta-python:${LAYERDIR}/dynamic-layers/meta-python/recipes-*/*/*.bb \
+    meta-python:${LAYERDIR}/dynamic-layers/meta-python/recipes-*/*/*.bbappend \
+    networking-layer:${LAYERDIR}/dynamic-layers/networking-layer/recipes-*/*/*.bb \
+    networking-layer:${LAYERDIR}/dynamic-layers/networking-layer/recipes-*/*/*.bbappend \
+    gnome-layer:${LAYERDIR}/dynamic-layers/gnome-layer/recipes-*/*/*.bb \
+    gnome-layer:${LAYERDIR}/dynamic-layers/gnome-layer/recipes-*/*/*.bbappend \
+    perl-layer:${LAYERDIR}/dynamic-layers/perl-layer/recipes-*/*/*.bb \
+    perl-layer:${LAYERDIR}/dynamic-layers/perl-layer/recipes-*/*/*.bbappend \
 "
 
 # This should only be incremented on significant changes that will
@@ -38,7 +42,7 @@
 
 LAYERDEPENDS_openembedded-layer = "core"
 
-LAYERSERIES_COMPAT_openembedded-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_openembedded-layer = " hardknott"
 
 LICENSE_PATH += "${LAYERDIR}/licenses"
 
diff --git a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/disable_runtime_check.patch b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/disable_runtime_check.patch
new file mode 100644
index 0000000..78ebba8
--- /dev/null
+++ b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/disable_runtime_check.patch
@@ -0,0 +1,17 @@
+Lets use cached result for this otherwise runtime test, on qemuppc64
+when this test is run using gcc11, it returns 1, since we dont worry
+about older compilers here, we can cache the result and use it here
+
+Upstream-Status: Inappropriate [Cross-compile specific]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/SConstruct
++++ b/SConstruct
+@@ -3904,7 +3904,7 @@ def doConfigure(myenv):
+ 
+         conf.AddTest('CheckAltivecVbpermqOutput', CheckAltivecVbpermqOutput)
+ 
+-        outputIndex = next((idx for idx in [0,1] if conf.CheckAltivecVbpermqOutput(idx)), None)
++        outputIndex = 1
+         if outputIndex is not None:
+             conf.env.SetConfigHeaderDefine("MONGO_CONFIG_ALTIVEC_VEC_VBPERMQ_OUTPUT_INDEX", outputIndex)
+         else:
diff --git a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/ppc64_ARCH_BITS.patch b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/ppc64_ARCH_BITS.patch
new file mode 100644
index 0000000..471d562
--- /dev/null
+++ b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/ppc64_ARCH_BITS.patch
@@ -0,0 +1,18 @@
+Subject: [PATCH] stacktrace: Define ARCH_BITS for ppc64
+
+src/mongo/util/stacktrace_somap.cpp:89:2: error: #error Unknown target architecture.
+stacktrace_somap.cpp:92:33: error: 'ELFCLASSARCH_BITS' was not declared in this scope
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/src/mongo/util/stacktrace_somap.cpp
++++ b/src/mongo/util/stacktrace_somap.cpp
+@@ -81,7 +81,7 @@ void addUnameToSoMap(BSONObjBuilder* soM
+ 
+ #if defined(__ELF_NATIVE_CLASS)  // determine ARCH_BITS
+ #define ARCH_BITS __ELF_NATIVE_CLASS
+-#elif defined(__x86_64__) || defined(__aarch64__)
++#elif defined(__x86_64__) || defined(__aarch64__)  || defined(__powerpc64__)
+ #define ARCH_BITS 64
+ #elif defined(__i386__) || defined(__arm__)
+ #define ARCH_BITS 32
diff --git a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb_git.bb b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb_git.bb
index d0c4eba..b78255a 100644
--- a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb_git.bb
+++ b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb_git.bb
@@ -11,9 +11,9 @@
 
 inherit scons dos2unix siteinfo python3native systemd useradd
 
-PV = "4.4.1"
-#v4.4.1
-SRCREV = "ad91a93a5a31e175f5cbf8c69561e788bbc55ce1"
+PV = "4.4.4"
+#v4.4.4
+SRCREV = "8db30a63db1a9d84bdcad0c83369623f708e0397"
 SRC_URI = "git://github.com/mongodb/mongo.git;branch=v4.4 \
            file://0001-kms-message-bump-libmongocrypto-to-v1.0.4.patch \
            file://0001-Tell-scons-to-use-build-settings-from-environment-va.patch \
@@ -28,6 +28,8 @@
            file://0001-Fix-compilation-with-fno-common.patch \
            file://0001-stacktrace-Define-ARCH_BITS-for-x86.patch \
            file://0001-include-needed-c-header.patch \
+           file://disable_runtime_check.patch \
+           file://ppc64_ARCH_BITS.patch \
            "
 SRC_URI_append_libc-musl ="\
            file://0001-Mark-one-of-strerror_r-implementation-glibc-specific.patch \
@@ -56,12 +58,15 @@
 PACKAGECONFIG[shell] = ",--js-engine=none,,"
 PACKAGECONFIG[system-pcre] = "--use-system-pcre,,libpcre,"
 
+MONGO_ARCH ?= "${HOST_ARCH}"
+MONGO_ARCH_powerpc64le = "ppc64le"
+
 EXTRA_OESCONS = "PREFIX=${prefix} \
                  DESTDIR=${D} \
                  LIBPATH=${STAGING_LIBDIR} \
                  LINKFLAGS='${LDFLAGS}' \
                  CXXFLAGS='${CXXFLAGS}' \
-                 TARGET_ARCH=${TARGET_ARCH} \
+                 TARGET_ARCH=${MONGO_ARCH} \
                  MONGO_VERSION=${PV} \
                  OBJCOPY=${OBJCOPY} \
                  --ssl \
@@ -116,5 +121,3 @@
 CONFFILES_${PN} = "${sysconfdir}/mongod.conf"
 
 SYSTEMD_SERVICE_${PN} = "mongod.service"
-
-
diff --git a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-devtools/nanopb/nanopb_0.4.4.bb b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-devtools/nanopb/nanopb_0.4.5.bb
similarity index 93%
rename from meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-devtools/nanopb/nanopb_0.4.4.bb
rename to meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-devtools/nanopb/nanopb_0.4.5.bb
index 19db89b..b2f8db9 100644
--- a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-devtools/nanopb/nanopb_0.4.4.bb
+++ b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-devtools/nanopb/nanopb_0.4.5.bb
@@ -5,7 +5,7 @@
 DEPENDS = "protobuf-native"
 
 SRC_URI = "git://github.com/nanopb/nanopb.git"
-SRCREV = "2b48a361786dfb1f63d229840217a93aae064667"
+SRCREV = "c9124132a604047d0ef97a09c0e99cd9bed2c818"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-core/packagegroups/packagegroup-meta-oe.bbappend b/meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-core/packagegroups/packagegroup-meta-oe.bbappend
index b39a4d6..09c478e 100644
--- a/meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-core/packagegroups/packagegroup-meta-oe.bbappend
+++ b/meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-core/packagegroups/packagegroup-meta-oe.bbappend
@@ -1,3 +1,6 @@
 RDEPENDS_packagegroup-meta-oe-devtools += "\
     valijson \
 "
+
+RDEPENDS_packagegroup-meta-oe-support_append_x86 = "${@bb.utils.contains('BBFILE_COLLECTIONS', 'filesystems-layer', ' open-vm-tools', '', d)}"
+RDEPENDS_packagegroup-meta-oe-support_append_x86-64 = "${@bb.utils.contains('BBFILE_COLLECTIONS', 'filesystems-layer', ' open-vm-tools', '', d)}"
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.25.bb b/meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.26.bb
similarity index 96%
rename from meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.25.bb
rename to meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.26.bb
index 6ab7ab7..6f2464e 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.25.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.26.bb
@@ -22,7 +22,7 @@
 PACKAGECONFIG ??= "${PACKAGECONFIG_NUMA}"
 PACKAGECONFIG[numa] = ",--disable-numa,numactl"
 
-SRCREV = "fd80924b22fef6ce0d5580724d91490347445f90"
+SRCREV = "267b164c372d57145880f365bab8d8a52bf8baa7"
 SRC_URI = "git://git.kernel.dk/fio.git \
 "
 
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/0003-fix-precision-handling-bugs.patch b/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/0003-fix-precision-handling-bugs.patch
deleted file mode 100644
index af88f6c..0000000
--- a/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/0003-fix-precision-handling-bugs.patch
+++ /dev/null
@@ -1,138 +0,0 @@
-From 90e837ffd1ff5c9add1074d69de23e58a3a4810e Mon Sep 17 00:00:00 2001
-From: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
-Date: Wed, 11 Nov 2020 09:26:03 -0500
-Subject: [PATCH 1/3] terrain: Fix precision bug in light rendering
-
-Resulting in overly bright rendering when mediump is implemented as
-fp16.
-
-Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
----
- data/shaders/terrain.frag | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/data/shaders/terrain.frag b/data/shaders/terrain.frag
-index 84d085c..58f17ea 100644
---- a/data/shaders/terrain.frag
-+++ b/data/shaders/terrain.frag
-@@ -67,7 +67,12 @@ void main() {
-     vec3 pointSpecular = vec3( 0.0 );
-     for ( int i = 0; i < MAX_POINT_LIGHTS; i ++ ) {
-         vec4 lPosition = viewMatrix * vec4( pointLightPosition[ i ], 1.0 );
-+#ifdef GL_FRAGMENT_PRECISION_HIGH
-+        // should be highp for correct behaviour if mediump is implemented as fp16
-+        highp vec3 lVector = lPosition.xyz + vViewPosition.xyz;
-+#else
-         vec3 lVector = lPosition.xyz + vViewPosition.xyz;
-+#endif
-         float lDistance = 1.0;
-         if ( pointLightDistance[ i ] > 0.0 )
-             lDistance = 1.0 - min( ( length( lVector ) / pointLightDistance[ i ] ), 1.0 );
-
-From 1edd76fda77edabd49d713912aee49b8360c86c3 Mon Sep 17 00:00:00 2001
-From: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
-Date: Wed, 11 Nov 2020 09:49:52 -0500
-Subject: [PATCH 2/3] terrain: Fix precision handling in noise shader
-
-Another overflow resulting in infinity in mediump. Note this bug is
-masked if the driver clamps infinity to MAX_FLOAT, but it's still our
-bug.
-
-Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
----
- data/shaders/terrain-noise.frag | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/data/shaders/terrain-noise.frag b/data/shaders/terrain-noise.frag
-index 7fea5c0..9535e58 100644
---- a/data/shaders/terrain-noise.frag
-+++ b/data/shaders/terrain-noise.frag
-@@ -17,7 +17,13 @@ uniform float time;
- uniform MEDIUMP vec2 uvScale;
- varying vec2 vUv;
- 
-+#ifdef GL_FRAGMENT_PRECISION_HIGH
-+// x should be passed as highp since the intermediate multiplications can
-+// overflow with mediump
-+vec4 permute(highp vec4 x)
-+#else
- vec4 permute(vec4 x)
-+#endif
- {
-     return mod(((x * 34.0) + 1.0) * x, 289.0);
- }
-
-From e866cc633ffc450e5358b2742f32ca360e4f3f12 Mon Sep 17 00:00:00 2001
-From: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
-Date: Wed, 11 Nov 2020 09:35:21 -0500
-Subject: [PATCH 3/3] loop,function,conditionals: Fix mediump overflow
-
-The multiplication can produce infinity.
-
-Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
----
- data/shaders/conditionals.frag | 9 ++++++++-
- data/shaders/function.frag     | 9 ++++++++-
- data/shaders/loop.frag         | 9 ++++++++-
- 3 files changed, 24 insertions(+), 3 deletions(-)
-
-diff --git a/data/shaders/conditionals.frag b/data/shaders/conditionals.frag
-index 3bd2507..e902263 100644
---- a/data/shaders/conditionals.frag
-+++ b/data/shaders/conditionals.frag
-@@ -2,7 +2,14 @@ varying vec4 dummy;
- 
- void main(void)
- {
--    float d = fract(gl_FragCoord.x * gl_FragCoord.y * 0.0001);
-+#ifdef GL_FRAGMENT_PRECISION_HIGH
-+    // should be declared highp since the multiplication can overflow in
-+    // mediump, particularly if mediump is implemented as fp16
-+    highp vec2 FragCoord = gl_FragCoord.xy;
-+#else
-+    vec2 FragCoord = gl_FragCoord.xy;
-+#endif
-+    float d = fract(FragCoord.x * FragCoord.y * 0.0001);
- 
- $MAIN$
- 
-diff --git a/data/shaders/function.frag b/data/shaders/function.frag
-index 3e3c74f..9d0230e 100644
---- a/data/shaders/function.frag
-+++ b/data/shaders/function.frag
-@@ -8,7 +8,14 @@ $PROCESS$
- 
- void main(void)
- {
--    float d = fract(gl_FragCoord.x * gl_FragCoord.y * 0.0001);
-+#ifdef GL_FRAGMENT_PRECISION_HIGH
-+    // should be declared highp since the multiplication can overflow in
-+    // mediump, particularly if mediump is implemented as fp16
-+    highp vec2 FragCoord = gl_FragCoord.xy;
-+#else
-+    vec2 FragCoord = gl_FragCoord.xy;
-+#endif
-+    float d = fract(FragCoord.x * FragCoord.y * 0.0001);
- 
- $MAIN$
- 
-diff --git a/data/shaders/loop.frag b/data/shaders/loop.frag
-index 31ae23e..9a6afd2 100644
---- a/data/shaders/loop.frag
-+++ b/data/shaders/loop.frag
-@@ -3,7 +3,14 @@ uniform int FragmentLoops;
- 
- void main(void)
- {
--    float d = fract(gl_FragCoord.x * gl_FragCoord.y * 0.0001);
-+#ifdef GL_FRAGMENT_PRECISION_HIGH
-+    // should be declared highp since the multiplication can overflow in
-+    // mediump, particularly if mediump is implemented as fp16
-+    highp vec2 FragCoord = gl_FragCoord.xy;
-+#else
-+    vec2 FragCoord = gl_FragCoord.xy;
-+#endif
-+    float d = fract(FragCoord.x * FragCoord.y * 0.0001);
- 
- $MAIN$
- 
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 a5872f4..f5e719a 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb
@@ -9,17 +9,16 @@
                     file://COPYING.SGI;beginline=5;md5=269cdab4af6748677acce51d9aa13552"
 
 DEPENDS = "libpng jpeg udev"
-DEPENDS_append = " ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland-native', '', d)}"
+DEPENDS_append = " ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland-native wayland-protocols', '', d)}"
 
-PV = "20201114+${SRCPV}"
+PV = "2021.02+${SRCPV}"
 
 SRC_URI = " \
     git://github.com/glmark2/glmark2.git;protocol=https \
     file://0001-fix-dispmanx-build.patch \
     file://0002-run-dispmanx-fullscreen.patch \
-    file://0003-fix-precision-handling-bugs.patch \
     "
-SRCREV = "784aca755a469b144acf3cae180b6e613b7b057a"
+SRCREV = "4b2bbe803576d48f08367aa5441740f9319c21e7"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb b/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb
index fa63316..aa9eb02 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb
@@ -39,7 +39,7 @@
 LIBHUGETLBFS_ARCH = "${TARGET_ARCH}"
 LIBHUGETLBFS_ARCH_powerpc = "ppc"
 LIBHUGETLBFS_ARCH_powerpc64 = "ppc64"
-LIBHUGETLBFS_ARCH_powerpc64le = "ppc64"
+LIBHUGETLBFS_ARCH_powerpc64le = "ppc64le"
 EXTRA_OEMAKE = "'ARCH=${LIBHUGETLBFS_ARCH}' 'OPT=${CFLAGS}' 'CC=${CC}' ${LIBARGS} BUILDTYPE=NATIVEONLY V=2"
 PARALLEL_MAKE = ""
 CFLAGS += "-fexpensive-optimizations -frename-registers -fomit-frame-pointer -g0"
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb b/meta-openembedded/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb
index 2ce10f9..0607da8 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb
@@ -6,7 +6,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://main.c;endline=22;md5=879b9bbb60851454885b5fa47eb6b345"
 
-PV = "0.4.0+git${SRCPV}"
+PV = "0.4.9+git${SRCPV}"
 
 SRCREV = "a2cf6d7e382e3aea1eb39173174d9fa28cad15f3"
 SRC_URI = "git://github.com/ssvb/tinymembench.git \
diff --git a/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-Makefile-Check-for-last-line-only-from-preprocessed-.patch b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-Makefile-Check-for-last-line-only-from-preprocessed-.patch
deleted file mode 100644
index 7a8be83..0000000
--- a/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-Makefile-Check-for-last-line-only-from-preprocessed-.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 3c078497e506bd6acb406da5cde7ce20e8896353 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 23 Jul 2020 14:13:59 -0700
-Subject: [PATCH] Makefile: Check for last line only from preprocessed output
-
-This started to fail with glibc 2.32 since glibc added additional
-attributes to functions in signal.h therefore existing regexp started to
-fail as it is not able to handle these functions e.g.
-
-extern int siginterrupt (int __sig, int __interrupt) __attribute__ ((__nothrow__ , __leaf__))
-  __attribute__ ((__deprecated__ ("Use sigaction with SA_RESTART instead")));
-
-grep -v '^\#' | grep '"' | cut -f 2 -d'"'
-bit outside of fd_set selected
-Use sigaction with SA_RESTART instead
-arm
-
-So changing it to
-tail -1 | grep '"' | cut -f 2 -d'"'
-arm
-
-Produces the expected result, this was hidden until now
-
-Upstream-Status: Submitted [https://review.coreboot.org/c/flashrom/+/43770]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Change-Id: I123a046e142d54632f12d54e2aa09b0928c02b91
----
- Makefile | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 803529f..3795681 100644
---- a/Makefile
-+++ b/Makefile
-@@ -106,7 +106,7 @@ endif
- # IMPORTANT: The following line must be placed before TARGET_OS is ever used
- # (of course), but should come after any lines setting CC because the line
- # below uses CC itself.
--override TARGET_OS := $(strip $(call debug_shell,$(CC) $(CPPFLAGS) -E os.h 2>/dev/null | grep -v '^\#' | grep '"' | cut -f 2 -d'"'))
-+override TARGET_OS := $(strip $(call debug_shell,$(CC) $(CPPFLAGS) -E os.h 2>/dev/null | tail -1 | grep '"' | cut -f 2 -d'"'))
- 
- ifeq ($(TARGET_OS), Darwin)
- override CPPFLAGS += -I/opt/local/include -I/usr/local/include
-@@ -460,8 +460,8 @@ endif
- # IMPORTANT: The following line must be placed before ARCH is ever used
- # (of course), but should come after any lines setting CC because the line
- # below uses CC itself.
--override ARCH := $(strip $(call debug_shell,$(CC) $(CPPFLAGS) -E archtest.c 2>/dev/null | grep -v '^\#' | grep '"' | cut -f 2 -d'"'))
--override ENDIAN := $(strip $(call debug_shell,$(CC) $(CPPFLAGS) -E endiantest.c 2>/dev/null | grep -v '^\#'))
-+override ARCH := $(strip $(call debug_shell,$(CC) $(CPPFLAGS) -E archtest.c 2>/dev/null | tail -1 | grep '"' | cut -f 2 -d'"'))
-+override ENDIAN := $(strip $(call debug_shell,$(CC) $(CPPFLAGS) -E endiantest.c 2>/dev/null | tail -1))
- 
- # Disable the internal programmer on unsupported architectures (everything but x86 and mipsel)
- ifneq ($(ARCH)-little, $(filter $(ARCH),x86 mips)-$(ENDIAN))
--- 
-2.27.0
-
diff --git a/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-flashrom-Mark-RISCV-as-non-memory-mapped-I-O-archite.patch b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-flashrom-Mark-RISCV-as-non-memory-mapped-I-O-archite.patch
new file mode 100644
index 0000000..e481c5a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-flashrom-Mark-RISCV-as-non-memory-mapped-I-O-archite.patch
@@ -0,0 +1,44 @@
+From 2c777126765b4095bf481d5cfe4a21470374d940 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 30 Mar 2021 15:12:09 -0700
+Subject: [PATCH] flashrom: Mark RISCV as non memory-mapped I/O architecture
+
+Upstream-Status: Submitted [https://review.coreboot.org/c/flashrom/+/51960]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Change-Id: I55c4e8529d36f0850dd56441c3fb8602c5d889fd
+---
+ Makefile   | 2 +-
+ hwaccess.h | 4 ++++
+ 2 files changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 6d37d55..203e04b 100644
+--- a/Makefile
++++ b/Makefile
+@@ -559,7 +559,7 @@ endif
+ # Disable all drivers needing raw access (memory, PCI, port I/O) on
+ # architectures with unknown raw access properties.
+ # Right now those architectures are alpha hppa m68k sh s390
+-ifneq ($(ARCH),$(filter $(ARCH),x86 mips ppc arm sparc arc))
++ifneq ($(ARCH),$(filter $(ARCH),x86 mips ppc arm sparc arc riscv))
+ ifeq ($(CONFIG_RAYER_SPI), yes)
+ UNSUPPORTED_FEATURES += CONFIG_RAYER_SPI=yes
+ else
+diff --git a/hwaccess.h b/hwaccess.h
+index 5602c15..e79988a 100644
+--- a/hwaccess.h
++++ b/hwaccess.h
+@@ -295,6 +295,10 @@ int libpayload_wrmsr(int addr, msr_t msr);
+ 
+ /* Non memory mapped I/O is not supported on ARC. */
+ 
++#elif IS_RISCV
++
++/* Non memory mapped I/O is not supported on RISCV. */
++
+ #else
+ 
+ #error Unknown architecture, please check if it supports PCI port IO.
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-typecast-enum-conversions-explicitly.patch b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-typecast-enum-conversions-explicitly.patch
index 7ac5365..f2302db 100644
--- a/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-typecast-enum-conversions-explicitly.patch
+++ b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-typecast-enum-conversions-explicitly.patch
@@ -1,69 +1,45 @@
-From 8a236330f2af56bde21e9f69208ea3e59f529f0c Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 15 Mar 2020 17:02:30 -0700
-Subject: [PATCH] typecast enum conversions explicitly
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@arm.com>
 
-clang complains like below
+From 3a0c1966e4c66f91e6e8551e906b6db38002acb4 Mon Sep 17 00:00:00 2001
+From: Angel Pons <th3fanbus@gmail.com>
+Date: Wed, 27 May 2020 12:15:51 +0200
+Subject: [PATCH] libflashrom.c: Use casts on enum conversions
 
-libflashrom.c:191:43: error: implicit conversion from enumeration type 'const enum test_state' to different enumeration type 'enum flashrom_test_state' [-Werror,-Wenum-conversion]
-                        supported_boards[i].working = binfo[i].working;
-                                                    ~ ~~~~~~~~~^~~~~~~
-libflashrom.c:229:46: error: implicit conversion from enumeration type 'const enum test_state' to different enumeration type 'enum flashrom_test_state' [-Werror,-Wenum-conversion]
-                        supported_chipsets[i].status = chipset[i].status;
-                                                     ~ ~~~~~~~~~~~^~~~~~
+This allows flashrom to build with GCC 10.
 
-However these enums are exactly same so they can be typecasted
-
-libflashrom.h
-
-/** @ingroup flashrom-query */
-enum flashrom_test_state {
-        FLASHROM_TESTED_OK  = 0,
-        FLASHROM_TESTED_NT  = 1,
-        FLASHROM_TESTED_BAD = 2,
-        FLASHROM_TESTED_DEP = 3,
-        FLASHROM_TESTED_NA  = 4,
-};
-
-flash.h
-
-enum test_state {
-          OK = 0,
-          NT = 1, /* Not tested */
-          BAD,    /* Known to not work */
-          DEP,    /* Support depends on configuration (e.g. Intel flash descriptor) */
-          NA,     /* Not applicable (e.g. write support on ROM chips) */
-  };
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Change-Id: I2166cdf3681452631ef8e980face2924e9a6c81a
+Signed-off-by: Angel Pons <th3fanbus@gmail.com>
+Reviewed-on: https://review.coreboot.org/c/flashrom/+/41775
+Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
+Reviewed-by: HAOUAS Elyes <ehaouas@noos.fr>
 ---
- libflashrom.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
+ libflashrom.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
 
 diff --git a/libflashrom.c b/libflashrom.c
-index 0dec22e..7956685 100644
+index ab7e364..c20d9c7 100644
 --- a/libflashrom.c
 +++ b/libflashrom.c
-@@ -188,7 +188,7 @@ struct flashrom_board_info *flashrom_supported_boards(void)
+@@ -188,7 +188,8 @@ struct flashrom_board_info *flashrom_supported_boards(void)
  		for (; i < boards_known_size; ++i) {
  			supported_boards[i].vendor = binfo[i].vendor;
  			supported_boards[i].name = binfo[i].name;
 -			supported_boards[i].working = binfo[i].working;
-+			supported_boards[i].working = (enum flashrom_test_state)binfo[i].working;
++			supported_boards[i].working =
++				(enum flashrom_test_state) binfo[i].working;
  		}
  	} else {
  		msg_gerr("Memory allocation error!\n");
-@@ -226,7 +226,7 @@ struct flashrom_chipset_info *flashrom_supported_chipsets(void)
+@@ -226,7 +227,8 @@ struct flashrom_chipset_info *flashrom_supported_chipsets(void)
  			supported_chipsets[i].chipset = chipset[i].device_name;
  			supported_chipsets[i].vendor_id = chipset[i].vendor_id;
  			supported_chipsets[i].chipset_id = chipset[i].device_id;
 -			supported_chipsets[i].status = chipset[i].status;
-+			supported_chipsets[i].status = (enum flashrom_test_state)chipset[i].status;
++			supported_chipsets[i].status =
++				(enum flashrom_test_state) chipset[i].status;
  	  }
  	} else {
  		msg_gerr("Memory allocation error!\n");
 -- 
 2.25.1
-
diff --git a/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/meson-fixes.patch b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/meson-fixes.patch
new file mode 100644
index 0000000..e45236e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/meson-fixes.patch
@@ -0,0 +1,68 @@
+Add a ftdi option alongside USB and PCI to control the external dependency, and
+ensure that the build is successful in all combinations of options.
+
+Upstream-Status: Pending
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+diff --git a/meson.build b/meson.build
+index 375089c..0df9d69 100644
+--- a/meson.build
++++ b/meson.build
+@@ -91,6 +91,8 @@ else
+   config_digilent_spi = false
+   config_developerbox_spi = false
+   config_pickit2_spi = false
++  config_stlinkv3_spi = false
++  config_usbblaster_spi = false
+ endif
+ 
+ # some programmers require libpci
+@@ -118,6 +120,21 @@ else
+   config_satasii = false
+ endif
+ 
++# some programmers require libftdi
++if get_option('ftdi')
++  deps += dependency('libftdi1')
++else
++  config_ft2232_spi = false
++  config_usbblaster_spi = false
++endif
++
++if not (target_machine.cpu_family() == 'x86' or target_machine.cpu_family() == 'x86_64')
++  config_satamv = false
++  config_nic3com = false
++  config_rayer_spi = false
++  config_nicrealtek = false
++endif
++
+ # set defines for configured programmers
+ if config_atahpt
+   srcs += 'atahpt.c'
+@@ -163,7 +180,6 @@ endif
+ if config_ft2232_spi
+   srcs += 'ft2232_spi.c'
+   cargs += '-DCONFIG_FT2232_SPI=1'
+-  deps += dependency('libftdi1')
+   cargs += '-DHAVE_FT232H=1'
+ endif
+ if config_gfxnvidia
+@@ -216,6 +232,7 @@ endif
+ if config_nicintel
+   srcs += 'nicintel.c'
+   cargs += '-DCONFIG_NICINTEL=1'
++  need_raw_access = true
+ endif
+ if config_nicintel_eeprom
+   srcs += 'nicintel_eeprom.c'
+diff --git a/meson_options.txt b/meson_options.txt
+index ea87311..b6b842d 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -1,5 +1,6 @@
+ option('pciutils', type : 'boolean', value : true, description : 'use pciutils')
+ option('usb', type : 'boolean', value : true, description : 'use libusb1')
++option('ftdi', type : 'boolean', value : true, description : 'use libftdi')
+ 
+ option('config_atahpt', type : 'boolean', value : false, description : 'Highpoint (HPT) ATA/RAID controllers')
+ option('config_atapromise', type : 'boolean', value : false, description : 'Promise ATA controller')
diff --git a/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom_1.2.bb b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom_1.2.bb
index 66ae34a..145a3ca 100644
--- a/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom_1.2.bb
+++ b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom_1.2.bb
@@ -1,21 +1,21 @@
 DESCRIPTION = "flashrom is a utility for identifying, reading, writing, verifying and erasing flash chips"
-LICENSE = "GPLv2"
+LICENSE = "GPLv2+"
 HOMEPAGE = "http://flashrom.org"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-DEPENDS = "pciutils libusb libusb-compat"
-
 SRC_URI = "https://download.flashrom.org/releases/flashrom-v${PV}.tar.bz2 \
            file://0001-typecast-enum-conversions-explicitly.patch \
-           file://0001-Makefile-Check-for-last-line-only-from-preprocessed-.patch \
+           file://meson-fixes.patch \
+           file://0001-flashrom-Mark-RISCV-as-non-memory-mapped-I-O-archite.patch \
            "
 SRC_URI[md5sum] = "7f8e4b87087eb12ecee0fcc5445b4956"
 SRC_URI[sha256sum] = "e1f8d95881f5a4365dfe58776ce821dfcee0f138f75d0f44f8a3cd032d9ea42b"
 
 S = "${WORKDIR}/flashrom-v${PV}"
 
-inherit pkgconfig
+inherit meson pkgconfig
 
-do_install() {
-    oe_runmake PREFIX=${prefix} DESTDIR=${D} install
-}
+PACKAGECONFIG ??= "pci usb ftdi"
+PACKAGECONFIG[pci] = "-Dpciutils=true,-Dpciutils=false,pciutils"
+PACKAGECONFIG[usb] = "-Dusb=true,-Dusb=false,libusb"
+PACKAGECONFIG[ftdi] = "-Dftdi=true,-Dftdi=false,libftdi"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2019-5061.patch b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2019-5061.patch
new file mode 100644
index 0000000..9214615
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2019-5061.patch
@@ -0,0 +1,854 @@
+From 018edec9b2bd3db20605117c32ff79c1e625c432 Mon Sep 17 00:00:00 2001
+From: Jouni Malinen <j@w1.fi>
+Date: Wed, 11 Sep 2019 12:34:28 +0300
+Subject: [PATCH] Remove IAPP functionality from hostapd
+
+IEEE Std 802.11F-2003 was withdrawn in 2006 and as such it has not been
+maintained nor is there any expectation of the withdrawn trial-use
+recommended practice to be maintained in the future. Furthermore,
+implementation of IAPP in hostapd was not complete, i.e., only parts of
+the recommended practice were included. The main item of some real use
+long time ago was the Layer 2 Update frame to update bridges when a STA
+roams within an ESS, but that functionality has, in practice, been moved
+to kernel drivers to provide better integration with the networking
+stack.
+
+CVE: CVE-2019-5061
+
+Upstream-Status: Backport
+
+Signed-off-by: Jouni Malinen <j@w1.fi>
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ hostapd/Android.mk                        |   5 -
+ hostapd/Makefile                          |   5 -
+ hostapd/android.config                    |   3 -
+ hostapd/config_file.c                     |   3 +-
+ hostapd/defconfig                         |   3 -
+ hostapd/hostapd.conf                      |   6 -
+ hostapd/main.c                            |   3 -
+ src/ap/Makefile                           |   2 -
+ src/ap/ap_config.h                        |   4 -
+ src/ap/hostapd.c                          |  14 -
+ src/ap/hostapd.h                          |   2 -
+ src/ap/iapp.c                             | 542 ----------------------
+ src/ap/iapp.h                             |  39 --
+ src/utils/wpa_debug.h                     |   1 -
+ 14 files changed, 1 insertion(+), 633 deletions(-)
+ delete mode 100644 src/ap/iapp.c
+ delete mode 100644 src/ap/iapp.h
+
+diff --git a/hostapd/Android.mk b/hostapd/Android.mk
+index 3183323ef..a87ac8144 100644
+--- a/hostapd/Android.mk
++++ b/hostapd/Android.mk
+@@ -205,11 +205,6 @@ endif
+ 
+ L_CFLAGS += -DCONFIG_CTRL_IFACE -DCONFIG_CTRL_IFACE_UNIX
+ 
+-ifdef CONFIG_IAPP
+-L_CFLAGS += -DCONFIG_IAPP
+-OBJS += src/ap/iapp.c
+-endif
+-
+ ifdef CONFIG_RSN_PREAUTH
+ L_CFLAGS += -DCONFIG_RSN_PREAUTH
+ CONFIG_L2_PACKET=y
+diff --git a/hostapd/Makefile b/hostapd/Makefile
+index f7f4c785b..42bb9e4c8 100644
+--- a/hostapd/Makefile
++++ b/hostapd/Makefile
+@@ -248,11 +248,6 @@ ifndef CONFIG_NO_CTRL_IFACE
+ CFLAGS += -DCONFIG_CTRL_IFACE
+ endif
+ 
+-ifdef CONFIG_IAPP
+-CFLAGS += -DCONFIG_IAPP
+-OBJS += ../src/ap/iapp.o
+-endif
+-
+ ifdef CONFIG_RSN_PREAUTH
+ CFLAGS += -DCONFIG_RSN_PREAUTH
+ CONFIG_L2_PACKET=y
+diff --git a/hostapd/android.config b/hostapd/android.config
+index efe252332..e2e6c7821 100644
+--- a/hostapd/android.config
++++ b/hostapd/android.config
+@@ -38,9 +38,6 @@ CONFIG_DRIVER_NL80211_QCA=y
+ # Driver interface for no driver (e.g., RADIUS server only)
+ #CONFIG_DRIVER_NONE=y
+ 
+-# IEEE 802.11F/IAPP
+-#CONFIG_IAPP=y
+-
+ # WPA2/IEEE 802.11i RSN pre-authentication
+ #CONFIG_RSN_PREAUTH=y
+ 
+diff --git a/hostapd/config_file.c b/hostapd/config_file.c
+index 680f17ee0..0d340d252 100644
+--- a/hostapd/config_file.c
++++ b/hostapd/config_file.c
+@@ -2712,8 +2712,7 @@ static int hostapd_config_fill(struct hostapd_config *conf,
+ 		bss->eapol_key_index_workaround = atoi(pos);
+ #ifdef CONFIG_IAPP
+ 	} else if (os_strcmp(buf, "iapp_interface") == 0) {
+-		bss->ieee802_11f = 1;
+-		os_strlcpy(bss->iapp_iface, pos, sizeof(bss->iapp_iface));
++		wpa_printf(MSG_INFO, "DEPRECATED: iapp_interface not used");
+ #endif /* CONFIG_IAPP */
+ 	} else if (os_strcmp(buf, "own_ip_addr") == 0) {
+ 		if (hostapd_parse_ip_addr(pos, &bss->own_ip_addr)) {
+diff --git a/hostapd/defconfig b/hostapd/defconfig
+index b1fb56c3b..1a3d9f9ba 100644
+--- a/hostapd/defconfig
++++ b/hostapd/defconfig
+@@ -44,9 +44,6 @@ CONFIG_LIBNL32=y
+ # Driver interface for no driver (e.g., RADIUS server only)
+ #CONFIG_DRIVER_NONE=y
+ 
+-# IEEE 802.11F/IAPP
+-CONFIG_IAPP=y
+-
+ # WPA2/IEEE 802.11i RSN pre-authentication
+ CONFIG_RSN_PREAUTH=y
+ 
+diff --git a/hostapd/hostapd.conf b/hostapd/hostapd.conf
+index 6c96a760a..a3c698480 100644
+--- a/hostapd/hostapd.conf
++++ b/hostapd/hostapd.conf
+@@ -41,7 +41,6 @@ interface=wlan0
+ # bit 2 (4) = RADIUS
+ # bit 3 (8) = WPA
+ # bit 4 (16) = driver interface
+-# bit 5 (32) = IAPP
+ # bit 6 (64) = MLME
+ #
+ # Levels (minimum value for logged events):
+@@ -1243,11 +1242,6 @@ eap_server=0
+ # Whether to enable ERP on the EAP server.
+ #eap_server_erp=1
+ 
+-##### IEEE 802.11f - Inter-Access Point Protocol (IAPP) #######################
+-
+-# Interface to be used for IAPP broadcast packets
+-#iapp_interface=eth0
+-
+ 
+ ##### RADIUS client configuration #############################################
+ # for IEEE 802.1X with external Authentication Server, IEEE 802.11
+diff --git a/hostapd/main.c b/hostapd/main.c
+index 08896ffe2..8bfe24281 100644
+--- a/hostapd/main.c
++++ b/hostapd/main.c
+@@ -81,9 +81,6 @@ static void hostapd_logger_cb(void *ctx, const u8 *addr, unsigned int module,
+ 	case HOSTAPD_MODULE_DRIVER:
+ 		module_str = "DRIVER";
+ 		break;
+-	case HOSTAPD_MODULE_IAPP:
+-		module_str = "IAPP";
+-		break;
+ 	case HOSTAPD_MODULE_MLME:
+ 		module_str = "MLME";
+ 		break;
+diff --git a/src/ap/Makefile b/src/ap/Makefile
+index bd3f33b77..54e48a0dd 100644
+--- a/src/ap/Makefile
++++ b/src/ap/Makefile
+@@ -18,7 +18,6 @@ CFLAGS += -DCONFIG_IEEE80211R_AP
+ CFLAGS += -DCONFIG_WPS
+ CFLAGS += -DCONFIG_PROXYARP
+ CFLAGS += -DCONFIG_IPV6
+-CFLAGS += -DCONFIG_IAPP
+ CFLAGS += -DCONFIG_AIRTIME_POLICY
+ 
+ LIB_OBJS= \
+@@ -41,7 +40,6 @@ LIB_OBJS= \
+ 	hostapd.o \
+ 	hs20.o \
+ 	hw_features.o \
+-	iapp.o \
+ 	ieee802_11_auth.o \
+ 	ieee802_11.o \
+ 	ieee802_11_ht.o \
+diff --git a/src/ap/ap_config.h b/src/ap/ap_config.h
+index e219160b0..17eb0682b 100644
+--- a/src/ap/ap_config.h
++++ b/src/ap/ap_config.h
+@@ -325,10 +325,6 @@ struct hostapd_bss_config {
+ 	int erp_send_reauth_start;
+ 	char *erp_domain;
+ 
+-	int ieee802_11f; /* use IEEE 802.11f (IAPP) */
+-	char iapp_iface[IFNAMSIZ + 1]; /* interface used with IAPP broadcast
+-					* frames */
+-
+ 	enum macaddr_acl {
+ 		ACCEPT_UNLESS_DENIED = 0,
+ 		DENY_UNLESS_ACCEPTED = 1,
+diff --git a/src/ap/hostapd.c b/src/ap/hostapd.c
+index ef988b634..bf7b1f89e 100644
+--- a/src/ap/hostapd.c
++++ b/src/ap/hostapd.c
+@@ -28,7 +28,6 @@
+ #include "accounting.h"
+ #include "ap_list.h"
+ #include "beacon.h"
+-#include "iapp.h"
+ #include "ieee802_1x.h"
+ #include "ieee802_11_auth.h"
+ #include "vlan_init.h"
+@@ -361,8 +360,6 @@ static void hostapd_free_hapd_data(struct hostapd_data *hapd)
+ 	hapd->beacon_set_done = 0;
+ 
+ 	wpa_printf(MSG_DEBUG, "%s(%s)", __func__, hapd->conf->iface);
+-	iapp_deinit(hapd->iapp);
+-	hapd->iapp = NULL;
+ 	accounting_deinit(hapd);
+ 	hostapd_deinit_wpa(hapd);
+ 	vlan_deinit(hapd);
+@@ -1296,13 +1293,6 @@ static int hostapd_setup_bss(struct hostapd_data *hapd, int first)
+ 		return -1;
+ 	}
+ 
+-	if (conf->ieee802_11f &&
+-	    (hapd->iapp = iapp_init(hapd, conf->iapp_iface)) == NULL) {
+-		wpa_printf(MSG_ERROR, "IEEE 802.11F (IAPP) initialization "
+-			   "failed.");
+-		return -1;
+-	}
+-
+ #ifdef CONFIG_INTERWORKING
+ 	if (gas_serv_init(hapd)) {
+ 		wpa_printf(MSG_ERROR, "GAS server initialization failed");
+@@ -3056,10 +3046,6 @@ void hostapd_new_assoc_sta(struct hostapd_data *hapd, struct sta_info *sta,
+ 	hostapd_prune_associations(hapd, sta->addr);
+ 	ap_sta_clear_disconnect_timeouts(hapd, sta);
+ 
+-	/* IEEE 802.11F (IAPP) */
+-	if (hapd->conf->ieee802_11f)
+-		iapp_new_station(hapd->iapp, sta);
+-
+ #ifdef CONFIG_P2P
+ 	if (sta->p2p_ie == NULL && !sta->no_p2p_set) {
+ 		sta->no_p2p_set = 1;
+diff --git a/src/ap/hostapd.h b/src/ap/hostapd.h
+index 5b859b8a9..2358d1664 100644
+--- a/src/ap/hostapd.h
++++ b/src/ap/hostapd.h
+@@ -179,8 +179,6 @@ struct hostapd_data {
+ 	u64 acct_session_id;
+ 	struct radius_das_data *radius_das;
+ 
+-	struct iapp_data *iapp;
+-
+ 	struct hostapd_cached_radius_acl *acl_cache;
+ 	struct hostapd_acl_query_data *acl_queries;
+ 
+diff --git a/src/ap/iapp.c b/src/ap/iapp.c
+deleted file mode 100644
+index 2556da30c..000000000
+--- a/src/ap/iapp.c
++++ /dev/null
+@@ -1,542 +0,0 @@
+-/*
+- * hostapd / IEEE 802.11F-2003 Inter-Access Point Protocol (IAPP)
+- * Copyright (c) 2002-2007, Jouni Malinen <j@w1.fi>
+- *
+- * This software may be distributed under the terms of the BSD license.
+- * See README for more details.
+- *
+- * Note: IEEE 802.11F-2003 was a experimental use specification. It has expired
+- * and IEEE has withdrawn it. In other words, it is likely better to look at
+- * using some other mechanism for AP-to-AP communication than extending the
+- * implementation here.
+- */
+-
+-/* TODO:
+- * Level 1: no administrative or security support
+- *	(e.g., static BSSID to IP address mapping in each AP)
+- * Level 2: support for dynamic mapping of BSSID to IP address
+- * Level 3: support for encryption and authentication of IAPP messages
+- * - add support for MOVE-notify and MOVE-response (this requires support for
+- *   finding out IP address for previous AP using RADIUS)
+- * - add support for Send- and ACK-Security-Block to speedup IEEE 802.1X during
+- *   reassociation to another AP
+- * - implement counters etc. for IAPP MIB
+- * - verify endianness of fields in IAPP messages; are they big-endian as
+- *   used here?
+- * - RADIUS connection for AP registration and BSSID to IP address mapping
+- * - TCP connection for IAPP MOVE, CACHE
+- * - broadcast ESP for IAPP ADD-notify
+- * - ESP for IAPP MOVE messages
+- * - security block sending/processing
+- * - IEEE 802.11 context transfer
+- */
+-
+-#include "utils/includes.h"
+-#include <net/if.h>
+-#include <sys/ioctl.h>
+-#include <netpacket/packet.h>
+-
+-#include "utils/common.h"
+-#include "utils/eloop.h"
+-#include "common/ieee802_11_defs.h"
+-#include "hostapd.h"
+-#include "ap_config.h"
+-#include "ieee802_11.h"
+-#include "sta_info.h"
+-#include "iapp.h"
+-
+-
+-#define IAPP_MULTICAST "224.0.1.178"
+-#define IAPP_UDP_PORT 3517
+-#define IAPP_TCP_PORT 3517
+-
+-struct iapp_hdr {
+-	u8 version;
+-	u8 command;
+-	be16 identifier;
+-	be16 length;
+-	/* followed by length-6 octets of data */
+-} __attribute__ ((packed));
+-
+-#define IAPP_VERSION 0
+-
+-enum IAPP_COMMAND {
+-	IAPP_CMD_ADD_notify = 0,
+-	IAPP_CMD_MOVE_notify = 1,
+-	IAPP_CMD_MOVE_response = 2,
+-	IAPP_CMD_Send_Security_Block = 3,
+-	IAPP_CMD_ACK_Security_Block = 4,
+-	IAPP_CMD_CACHE_notify = 5,
+-	IAPP_CMD_CACHE_response = 6,
+-};
+-
+-
+-/* ADD-notify - multicast UDP on the local LAN */
+-struct iapp_add_notify {
+-	u8 addr_len; /* ETH_ALEN */
+-	u8 reserved;
+-	u8 mac_addr[ETH_ALEN];
+-	be16 seq_num;
+-} __attribute__ ((packed));
+-
+-
+-/* Layer 2 Update frame (802.2 Type 1 LLC XID Update response) */
+-struct iapp_layer2_update {
+-	u8 da[ETH_ALEN]; /* broadcast */
+-	u8 sa[ETH_ALEN]; /* STA addr */
+-	be16 len; /* 6 */
+-	u8 dsap; /* null DSAP address */
+-	u8 ssap; /* null SSAP address, CR=Response */
+-	u8 control;
+-	u8 xid_info[3];
+-} __attribute__ ((packed));
+-
+-
+-/* MOVE-notify - unicast TCP */
+-struct iapp_move_notify {
+-	u8 addr_len; /* ETH_ALEN */
+-	u8 reserved;
+-	u8 mac_addr[ETH_ALEN];
+-	u16 seq_num;
+-	u16 ctx_block_len;
+-	/* followed by ctx_block_len bytes */
+-} __attribute__ ((packed));
+-
+-
+-/* MOVE-response - unicast TCP */
+-struct iapp_move_response {
+-	u8 addr_len; /* ETH_ALEN */
+-	u8 status;
+-	u8 mac_addr[ETH_ALEN];
+-	u16 seq_num;
+-	u16 ctx_block_len;
+-	/* followed by ctx_block_len bytes */
+-} __attribute__ ((packed));
+-
+-enum {
+-	IAPP_MOVE_SUCCESSFUL = 0,
+-	IAPP_MOVE_DENIED = 1,
+-	IAPP_MOVE_STALE_MOVE = 2,
+-};
+-
+-
+-/* CACHE-notify */
+-struct iapp_cache_notify {
+-	u8 addr_len; /* ETH_ALEN */
+-	u8 reserved;
+-	u8 mac_addr[ETH_ALEN];
+-	u16 seq_num;
+-	u8 current_ap[ETH_ALEN];
+-	u16 ctx_block_len;
+-	/* ctx_block_len bytes of context block followed by 16-bit context
+-	 * timeout */
+-} __attribute__ ((packed));
+-
+-
+-/* CACHE-response - unicast TCP */
+-struct iapp_cache_response {
+-	u8 addr_len; /* ETH_ALEN */
+-	u8 status;
+-	u8 mac_addr[ETH_ALEN];
+-	u16 seq_num;
+-} __attribute__ ((packed));
+-
+-enum {
+-	IAPP_CACHE_SUCCESSFUL = 0,
+-	IAPP_CACHE_STALE_CACHE = 1,
+-};
+-
+-
+-/* Send-Security-Block - unicast TCP */
+-struct iapp_send_security_block {
+-	u8 iv[8];
+-	u16 sec_block_len;
+-	/* followed by sec_block_len bytes of security block */
+-} __attribute__ ((packed));
+-
+-
+-/* ACK-Security-Block - unicast TCP */
+-struct iapp_ack_security_block {
+-	u8 iv[8];
+-	u8 new_ap_ack_authenticator[48];
+-} __attribute__ ((packed));
+-
+-
+-struct iapp_data {
+-	struct hostapd_data *hapd;
+-	u16 identifier; /* next IAPP identifier */
+-	struct in_addr own, multicast;
+-	int udp_sock;
+-	int packet_sock;
+-};
+-
+-
+-static void iapp_send_add(struct iapp_data *iapp, u8 *mac_addr, u16 seq_num)
+-{
+-	char buf[128];
+-	struct iapp_hdr *hdr;
+-	struct iapp_add_notify *add;
+-	struct sockaddr_in addr;
+-
+-	/* Send IAPP ADD-notify to remove possible association from other APs
+-	 */
+-
+-	hdr = (struct iapp_hdr *) buf;
+-	hdr->version = IAPP_VERSION;
+-	hdr->command = IAPP_CMD_ADD_notify;
+-	hdr->identifier = host_to_be16(iapp->identifier++);
+-	hdr->length = host_to_be16(sizeof(*hdr) + sizeof(*add));
+-
+-	add = (struct iapp_add_notify *) (hdr + 1);
+-	add->addr_len = ETH_ALEN;
+-	add->reserved = 0;
+-	os_memcpy(add->mac_addr, mac_addr, ETH_ALEN);
+-
+-	add->seq_num = host_to_be16(seq_num);
+-	
+-	os_memset(&addr, 0, sizeof(addr));
+-	addr.sin_family = AF_INET;
+-	addr.sin_addr.s_addr = iapp->multicast.s_addr;
+-	addr.sin_port = htons(IAPP_UDP_PORT);
+-	if (sendto(iapp->udp_sock, buf, (char *) (add + 1) - buf, 0,
+-		   (struct sockaddr *) &addr, sizeof(addr)) < 0)
+-		wpa_printf(MSG_INFO, "sendto[IAPP-ADD]: %s", strerror(errno));
+-}
+-
+-
+-static void iapp_send_layer2_update(struct iapp_data *iapp, u8 *addr)
+-{
+-	struct iapp_layer2_update msg;
+-
+-	/* Send Level 2 Update Frame to update forwarding tables in layer 2
+-	 * bridge devices */
+-
+-	/* 802.2 Type 1 Logical Link Control (LLC) Exchange Identifier (XID)
+-	 * Update response frame; IEEE Std 802.2-1998, 5.4.1.2.1 */
+-
+-	os_memset(msg.da, 0xff, ETH_ALEN);
+-	os_memcpy(msg.sa, addr, ETH_ALEN);
+-	msg.len = host_to_be16(6);
+-	msg.dsap = 0; /* NULL DSAP address */
+-	msg.ssap = 0x01; /* NULL SSAP address, CR Bit: Response */
+-	msg.control = 0xaf; /* XID response lsb.1111F101.
+-			     * F=0 (no poll command; unsolicited frame) */
+-	msg.xid_info[0] = 0x81; /* XID format identifier */
+-	msg.xid_info[1] = 1; /* LLC types/classes: Type 1 LLC */
+-	msg.xid_info[2] = 1 << 1; /* XID sender's receive window size (RW)
+-				   * FIX: what is correct RW with 802.11? */
+-
+-	if (send(iapp->packet_sock, &msg, sizeof(msg), 0) < 0)
+-		wpa_printf(MSG_INFO, "send[L2 Update]: %s", strerror(errno));
+-}
+-
+-
+-/**
+- * iapp_new_station - IAPP processing for a new STA
+- * @iapp: IAPP data
+- * @sta: The associated station
+- */
+-void iapp_new_station(struct iapp_data *iapp, struct sta_info *sta)
+-{
+-	u16 seq = 0; /* TODO */
+-
+-	if (iapp == NULL)
+-		return;
+-
+-	/* IAPP-ADD.request(MAC Address, Sequence Number, Timeout) */
+-	hostapd_logger(iapp->hapd, sta->addr, HOSTAPD_MODULE_IAPP,
+-		       HOSTAPD_LEVEL_DEBUG, "IAPP-ADD.request(seq=%d)", seq);
+-	iapp_send_layer2_update(iapp, sta->addr);
+-	iapp_send_add(iapp, sta->addr, seq);
+-
+-	/* TODO: If this was reassociation:
+-	 * IAPP-MOVE.request(MAC Address, Sequence Number, Old AP,
+-	 *                   Context Block, Timeout)
+-	 * TODO: Send IAPP-MOVE to the old AP; Map Old AP BSSID to
+-	 * IP address */
+-}
+-
+-
+-static void iapp_process_add_notify(struct iapp_data *iapp,
+-				    struct sockaddr_in *from,
+-				    struct iapp_hdr *hdr, int len)
+-{
+-	struct iapp_add_notify *add = (struct iapp_add_notify *) (hdr + 1);
+-	struct sta_info *sta;
+-
+-	if (len != sizeof(*add)) {
+-		wpa_printf(MSG_INFO, "Invalid IAPP-ADD packet length %d (expected %lu)",
+-			   len, (unsigned long) sizeof(*add));
+-		return;
+-	}
+-
+-	sta = ap_get_sta(iapp->hapd, add->mac_addr);
+-
+-	/* IAPP-ADD.indication(MAC Address, Sequence Number) */
+-	hostapd_logger(iapp->hapd, add->mac_addr, HOSTAPD_MODULE_IAPP,
+-		       HOSTAPD_LEVEL_INFO,
+-		       "Received IAPP ADD-notify (seq# %d) from %s:%d%s",
+-		       be_to_host16(add->seq_num),
+-		       inet_ntoa(from->sin_addr), ntohs(from->sin_port),
+-		       sta ? "" : " (STA not found)");
+-
+-	if (!sta)
+-		return;
+-
+-	/* TODO: could use seq_num to try to determine whether last association
+-	 * to this AP is newer than the one advertised in IAPP-ADD. Although,
+-	 * this is not really a reliable verification. */
+-
+-	hostapd_logger(iapp->hapd, add->mac_addr, HOSTAPD_MODULE_IAPP,
+-		       HOSTAPD_LEVEL_DEBUG,
+-		       "Removing STA due to IAPP ADD-notify");
+-	ap_sta_disconnect(iapp->hapd, sta, NULL, 0);
+-}
+-
+-
+-/**
+- * iapp_receive_udp - Process IAPP UDP frames
+- * @sock: File descriptor for the socket
+- * @eloop_ctx: IAPP data (struct iapp_data *)
+- * @sock_ctx: Not used
+- */
+-static void iapp_receive_udp(int sock, void *eloop_ctx, void *sock_ctx)
+-{
+-	struct iapp_data *iapp = eloop_ctx;
+-	int len, hlen;
+-	unsigned char buf[128];
+-	struct sockaddr_in from;
+-	socklen_t fromlen;
+-	struct iapp_hdr *hdr;
+-
+-	/* Handle incoming IAPP frames (over UDP/IP) */
+-
+-	fromlen = sizeof(from);
+-	len = recvfrom(iapp->udp_sock, buf, sizeof(buf), 0,
+-		       (struct sockaddr *) &from, &fromlen);
+-	if (len < 0) {
+-		wpa_printf(MSG_INFO, "iapp_receive_udp - recvfrom: %s",
+-			   strerror(errno));
+-		return;
+-	}
+-
+-	if (from.sin_addr.s_addr == iapp->own.s_addr)
+-		return; /* ignore own IAPP messages */
+-
+-	hostapd_logger(iapp->hapd, NULL, HOSTAPD_MODULE_IAPP,
+-		       HOSTAPD_LEVEL_DEBUG,
+-		       "Received %d byte IAPP frame from %s%s\n",
+-		       len, inet_ntoa(from.sin_addr),
+-		       len < (int) sizeof(*hdr) ? " (too short)" : "");
+-
+-	if (len < (int) sizeof(*hdr))
+-		return;
+-
+-	hdr = (struct iapp_hdr *) buf;
+-	hlen = be_to_host16(hdr->length);
+-	hostapd_logger(iapp->hapd, NULL, HOSTAPD_MODULE_IAPP,
+-		       HOSTAPD_LEVEL_DEBUG,
+-		       "RX: version=%d command=%d id=%d len=%d\n",
+-		       hdr->version, hdr->command,
+-		       be_to_host16(hdr->identifier), hlen);
+-	if (hdr->version != IAPP_VERSION) {
+-		wpa_printf(MSG_INFO, "Dropping IAPP frame with unknown version %d",
+-			   hdr->version);
+-		return;
+-	}
+-	if (hlen > len) {
+-		wpa_printf(MSG_INFO, "Underflow IAPP frame (hlen=%d len=%d)",
+-			   hlen, len);
+-		return;
+-	}
+-	if (hlen < len) {
+-		wpa_printf(MSG_INFO, "Ignoring %d extra bytes from IAPP frame",
+-			   len - hlen);
+-		len = hlen;
+-	}
+-
+-	switch (hdr->command) {
+-	case IAPP_CMD_ADD_notify:
+-		iapp_process_add_notify(iapp, &from, hdr, len - sizeof(*hdr));
+-		break;
+-	case IAPP_CMD_MOVE_notify:
+-		/* TODO: MOVE is using TCP; so move this to TCP handler once it
+-		 * is implemented.. */
+-		/* IAPP-MOVE.indication(MAC Address, New BSSID,
+-		 * Sequence Number, AP Address, Context Block) */
+-		/* TODO: process */
+-		break;
+-	default:
+-		wpa_printf(MSG_INFO, "Unknown IAPP command %d", hdr->command);
+-		break;
+-	}
+-}
+-
+-
+-struct iapp_data * iapp_init(struct hostapd_data *hapd, const char *iface)
+-{
+-	struct ifreq ifr;
+-	struct sockaddr_ll addr;
+-	int ifindex;
+-	struct sockaddr_in *paddr, uaddr;
+-	struct iapp_data *iapp;
+-	struct ip_mreqn mreq;
+-	int reuseaddr = 1;
+-
+-	iapp = os_zalloc(sizeof(*iapp));
+-	if (iapp == NULL)
+-		return NULL;
+-	iapp->hapd = hapd;
+-	iapp->udp_sock = iapp->packet_sock = -1;
+-
+-	/* TODO:
+-	 * open socket for sending and receiving IAPP frames over TCP
+-	 */
+-
+-	iapp->udp_sock = socket(PF_INET, SOCK_DGRAM, 0);
+-	if (iapp->udp_sock < 0) {
+-		wpa_printf(MSG_INFO, "iapp_init - socket[PF_INET,SOCK_DGRAM]: %s",
+-			   strerror(errno));
+-		iapp_deinit(iapp);
+-		return NULL;
+-	}
+-
+-	os_memset(&ifr, 0, sizeof(ifr));
+-	os_strlcpy(ifr.ifr_name, iface, sizeof(ifr.ifr_name));
+-	if (ioctl(iapp->udp_sock, SIOCGIFINDEX, &ifr) != 0) {
+-		wpa_printf(MSG_INFO, "iapp_init - ioctl(SIOCGIFINDEX): %s",
+-			   strerror(errno));
+-		iapp_deinit(iapp);
+-		return NULL;
+-	}
+-	ifindex = ifr.ifr_ifindex;
+-
+-	if (ioctl(iapp->udp_sock, SIOCGIFADDR, &ifr) != 0) {
+-		wpa_printf(MSG_INFO, "iapp_init - ioctl(SIOCGIFADDR): %s",
+-			   strerror(errno));
+-		iapp_deinit(iapp);
+-		return NULL;
+-	}
+-	paddr = (struct sockaddr_in *) &ifr.ifr_addr;
+-	if (paddr->sin_family != AF_INET) {
+-		wpa_printf(MSG_INFO, "IAPP: Invalid address family %i (SIOCGIFADDR)",
+-			   paddr->sin_family);
+-		iapp_deinit(iapp);
+-		return NULL;
+-	}
+-	iapp->own.s_addr = paddr->sin_addr.s_addr;
+-
+-	if (ioctl(iapp->udp_sock, SIOCGIFBRDADDR, &ifr) != 0) {
+-		wpa_printf(MSG_INFO, "iapp_init - ioctl(SIOCGIFBRDADDR): %s",
+-			   strerror(errno));
+-		iapp_deinit(iapp);
+-		return NULL;
+-	}
+-	paddr = (struct sockaddr_in *) &ifr.ifr_addr;
+-	if (paddr->sin_family != AF_INET) {
+-		wpa_printf(MSG_INFO, "Invalid address family %i (SIOCGIFBRDADDR)",
+-			   paddr->sin_family);
+-		iapp_deinit(iapp);
+-		return NULL;
+-	}
+-	inet_aton(IAPP_MULTICAST, &iapp->multicast);
+-
+-	os_memset(&uaddr, 0, sizeof(uaddr));
+-	uaddr.sin_family = AF_INET;
+-	uaddr.sin_port = htons(IAPP_UDP_PORT);
+-
+-	if (setsockopt(iapp->udp_sock, SOL_SOCKET, SO_REUSEADDR, &reuseaddr,
+-		       sizeof(reuseaddr)) < 0) {
+-		wpa_printf(MSG_INFO,
+-			   "iapp_init - setsockopt[UDP,SO_REUSEADDR]: %s",
+-			   strerror(errno));
+-		/*
+-		 * Ignore this and try to continue. This is fine for single
+-		 * BSS cases, but may fail if multiple BSSes enable IAPP.
+-		 */
+-	}
+-
+-	if (bind(iapp->udp_sock, (struct sockaddr *) &uaddr,
+-		 sizeof(uaddr)) < 0) {
+-		wpa_printf(MSG_INFO, "iapp_init - bind[UDP]: %s",
+-			   strerror(errno));
+-		iapp_deinit(iapp);
+-		return NULL;
+-	}
+-
+-	os_memset(&mreq, 0, sizeof(mreq));
+-	mreq.imr_multiaddr = iapp->multicast;
+-	mreq.imr_address.s_addr = INADDR_ANY;
+-	mreq.imr_ifindex = 0;
+-	if (setsockopt(iapp->udp_sock, SOL_IP, IP_ADD_MEMBERSHIP, &mreq,
+-		       sizeof(mreq)) < 0) {
+-		wpa_printf(MSG_INFO, "iapp_init - setsockopt[UDP,IP_ADD_MEMBERSHIP]: %s",
+-			   strerror(errno));
+-		iapp_deinit(iapp);
+-		return NULL;
+-	}
+-
+-	iapp->packet_sock = socket(PF_PACKET, SOCK_RAW, htons(ETH_P_ALL));
+-	if (iapp->packet_sock < 0) {
+-		wpa_printf(MSG_INFO, "iapp_init - socket[PF_PACKET,SOCK_RAW]: %s",
+-			   strerror(errno));
+-		iapp_deinit(iapp);
+-		return NULL;
+-	}
+-
+-	os_memset(&addr, 0, sizeof(addr));
+-	addr.sll_family = AF_PACKET;
+-	addr.sll_ifindex = ifindex;
+-	if (bind(iapp->packet_sock, (struct sockaddr *) &addr,
+-		 sizeof(addr)) < 0) {
+-		wpa_printf(MSG_INFO, "iapp_init - bind[PACKET]: %s",
+-			   strerror(errno));
+-		iapp_deinit(iapp);
+-		return NULL;
+-	}
+-
+-	if (eloop_register_read_sock(iapp->udp_sock, iapp_receive_udp,
+-				     iapp, NULL)) {
+-		wpa_printf(MSG_INFO, "Could not register read socket for IAPP");
+-		iapp_deinit(iapp);
+-		return NULL;
+-	}
+-
+-	wpa_printf(MSG_INFO, "IEEE 802.11F (IAPP) using interface %s", iface);
+-
+-	/* TODO: For levels 2 and 3: send RADIUS Initiate-Request, receive
+-	 * RADIUS Initiate-Accept or Initiate-Reject. IAPP port should actually
+-	 * be openned only after receiving Initiate-Accept. If Initiate-Reject
+-	 * is received, IAPP is not started. */
+-
+-	return iapp;
+-}
+-
+-
+-void iapp_deinit(struct iapp_data *iapp)
+-{
+-	struct ip_mreqn mreq;
+-
+-	if (iapp == NULL)
+-		return;
+-
+-	if (iapp->udp_sock >= 0) {
+-		os_memset(&mreq, 0, sizeof(mreq));
+-		mreq.imr_multiaddr = iapp->multicast;
+-		mreq.imr_address.s_addr = INADDR_ANY;
+-		mreq.imr_ifindex = 0;
+-		if (setsockopt(iapp->udp_sock, SOL_IP, IP_DROP_MEMBERSHIP,
+-			       &mreq, sizeof(mreq)) < 0) {
+-			wpa_printf(MSG_INFO, "iapp_deinit - setsockopt[UDP,IP_DEL_MEMBERSHIP]: %s",
+-				   strerror(errno));
+-		}
+-
+-		eloop_unregister_read_sock(iapp->udp_sock);
+-		close(iapp->udp_sock);
+-	}
+-	if (iapp->packet_sock >= 0) {
+-		eloop_unregister_read_sock(iapp->packet_sock);
+-		close(iapp->packet_sock);
+-	}
+-	os_free(iapp);
+-}
+diff --git a/src/ap/iapp.h b/src/ap/iapp.h
+deleted file mode 100644
+index c22118342..000000000
+--- a/src/ap/iapp.h
++++ /dev/null
+@@ -1,39 +0,0 @@
+-/*
+- * hostapd / IEEE 802.11F-2003 Inter-Access Point Protocol (IAPP)
+- * Copyright (c) 2002-2005, Jouni Malinen <j@w1.fi>
+- *
+- * This software may be distributed under the terms of the BSD license.
+- * See README for more details.
+- */
+-
+-#ifndef IAPP_H
+-#define IAPP_H
+-
+-struct iapp_data;
+-
+-#ifdef CONFIG_IAPP
+-
+-void iapp_new_station(struct iapp_data *iapp, struct sta_info *sta);
+-struct iapp_data * iapp_init(struct hostapd_data *hapd, const char *iface);
+-void iapp_deinit(struct iapp_data *iapp);
+-
+-#else /* CONFIG_IAPP */
+-
+-static inline void iapp_new_station(struct iapp_data *iapp,
+-				    struct sta_info *sta)
+-{
+-}
+-
+-static inline struct iapp_data * iapp_init(struct hostapd_data *hapd,
+-					   const char *iface)
+-{
+-	return NULL;
+-}
+-
+-static inline void iapp_deinit(struct iapp_data *iapp)
+-{
+-}
+-
+-#endif /* CONFIG_IAPP */
+-
+-#endif /* IAPP_H */
+diff --git a/src/utils/wpa_debug.h b/src/utils/wpa_debug.h
+index 1fe0b7db7..c94c4391f 100644
+--- a/src/utils/wpa_debug.h
++++ b/src/utils/wpa_debug.h
+@@ -305,7 +305,6 @@ void hostapd_logger_register_cb(hostapd_logger_cb_func func);
+ #define HOSTAPD_MODULE_RADIUS		0x00000004
+ #define HOSTAPD_MODULE_WPA		0x00000008
+ #define HOSTAPD_MODULE_DRIVER		0x00000010
+-#define HOSTAPD_MODULE_IAPP		0x00000020
+ #define HOSTAPD_MODULE_MLME		0x00000040
+ 
+ enum hostapd_logger_level {
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.9.bb b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.9.bb
index 68dc123..1f38eee 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.9.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.9.bb
@@ -12,6 +12,7 @@
     file://init \
     file://hostapd.service \
     file://CVE-2019-16275.patch \
+    file://CVE-2019-5061.patch \
 "
 
 SRC_URI[md5sum] = "f188fc53a495fe7af3b6d77d3c31dee8"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix/0001-Fix-configure.ac.patch b/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix/0001-Fix-configure.ac.patch
index af14a1a..97339d3 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix/0001-Fix-configure.ac.patch
+++ b/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix/0001-Fix-configure.ac.patch
@@ -1,5 +1,7 @@
 uname can not get version of kernel correctly while cross compile
 
+Upstream-Status: Inappropriate [configuration]
+
 Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
 ---
  configure.ac | 2 +-
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix/CVE-2020-15803.patch b/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix/CVE-2020-15803.patch
deleted file mode 100644
index 2eec4bf..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix/CVE-2020-15803.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 4943334fd9bf7dffd49f9e86251ad40b3efe2135 Mon Sep 17 00:00:00 2001
-From: Wang Mingyu <wangmy@cn.fujitsu.com>
-Date: Fri, 11 Dec 2020 17:02:20 +0900
-Subject: [PATCH] Fix bug for CVE-2020-15803
-
-Signed-off-by: Wang Mingyu <wangmy@cn.fujitsu.com>
----
- frontends/php/include/classes/html/CIFrame.php | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/frontends/php/include/classes/html/CIFrame.php b/frontends/php/include/classes/html/CIFrame.php
-index 32220cd..70f2ab5 100644
---- a/frontends/php/include/classes/html/CIFrame.php
-+++ b/frontends/php/include/classes/html/CIFrame.php
-@@ -29,6 +29,7 @@ class CIFrame extends CTag {
- 		$this->setHeight($height);
- 		$this->setScrolling($scrolling);
- 		$this->setId($id);
-+		$this->setSandbox();
- 	}
- 
- 	public function setSrc($value = null) {
-@@ -69,4 +70,10 @@ class CIFrame extends CTag {
- 		$this->setAttribute('scrolling', $value);
- 		return $this;
- 	}
-+
-+	private function setSandbox() {
-+		if (ZBX_IFRAME_SANDBOX !== false) {
-+			$this->setAttribute('sandbox', ZBX_IFRAME_SANDBOX);
-+		}
-+	}
- }
--- 
-2.25.1
-
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_4.4.6.bb b/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_5.2.5.bb
similarity index 88%
rename from meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_4.4.6.bb
rename to meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_5.2.5.bb
index 98a3187..2bbfec9 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_4.4.6.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_5.2.5.bb
@@ -23,14 +23,13 @@
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
-SRC_URI = "http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/${PV}/${BPN}-${PV}.tar.gz \
+SRC_URI = "https://cdn.zabbix.com/zabbix/sources/stable/5.2/${BPN}-${PV}.tar.gz \
     file://0001-Fix-configure.ac.patch \
     file://zabbix-agent.service \
-    file://CVE-2020-15803.patch \
 "
 
-SRC_URI[md5sum] = "e666539220be93b1af38e40f5fbb1f79"
-SRC_URI[sha256sum] = "22bb28e667424ad4688f47732853f4241df0e78a7607727b043d704ba726ae0e"
+SRC_URI[md5sum] = "e90822716c5c241890f6fed1588b5451"
+SRC_URI[sha256sum] = "ce0d9745a8b9154e87d6906edd0fce7b7ec298acd34a0543ea53d1a5f2f14bc5"
 
 inherit autotools-brokensep linux-kernel-base pkgconfig systemd useradd
 
@@ -58,7 +57,8 @@
     --with-zlib \
     --with-libpthread \
     --with-libevent \
-    --with-libpcre \
+    --with-libpcre=${STAGING_EXECPREFIXDIR} \
+    --with-iconv=${STAGING_EXECPREFIXDIR} \
 "
 CFLAGS_append = " -lldap -llber -pthread"
 
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/zeromq/czmq_4.2.1.bb b/meta-openembedded/meta-oe/recipes-connectivity/zeromq/czmq_4.2.1.bb
index e742d2a..e6a4bc4 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/zeromq/czmq_4.2.1.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/zeromq/czmq_4.2.1.bb
@@ -30,3 +30,7 @@
 
 BBCLASSEXTEND = "nativesdk"
 
+do_install_append() {
+        mkdir -p ${D}/${includedir}/${BPN}
+        mv ${D}/${includedir}/sha1.h ${D}/${includedir}/${BPN}/.
+}
diff --git a/meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker_26.bb b/meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker_28.bb
similarity index 92%
rename from meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker_26.bb
rename to meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker_28.bb
index 5517883..a35f5c6 100644
--- a/meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker_26.bb
+++ b/meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker_28.bb
@@ -7,7 +7,7 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=7b486c2338d225a1405d979ed2c15ce8"
 
 SRC_URI = "https://github.com/bus1/dbus-broker/releases/download/v${PV}/dbus-broker-${PV}.tar.xz"
-SRC_URI[sha256sum] = "6a6ab82fc398d4bc31b315f4e1c08f17509e4a1969f1cc77a5706db8923c74e1"
+SRC_URI[sha256sum] = "abb8b54434faeeb6bf59a70ebf0732e851a50bd922995ba5928e8c28c18b05ea"
 
 UPSTREAM_CHECK_URI = "https://github.com/bus1/${BPN}/releases"
 
diff --git a/meta-openembedded/meta-oe/recipes-core/musl-rpmatch/musl-rpmatch_git.bb b/meta-openembedded/meta-oe/recipes-core/musl-rpmatch/musl-rpmatch_git.bb
new file mode 100644
index 0000000..553003f
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-core/musl-rpmatch/musl-rpmatch_git.bb
@@ -0,0 +1,12 @@
+SUMMARY = "Implementation of rpmatch(3) for musl libc."
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://COPYING;md5=81a81bf31abecc50c20862fc8a716329"
+
+SRC_URI = "gitsm://github.com/pullmoll/musl-rpmatch.git;protocol=https"
+
+PV = "1.0+git${SRCPV}"
+SRCREV = "46267b154987d3e1f25d3a75423faa62bb5ee342"
+
+inherit autotools
+
+S = "${WORKDIR}/git"
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 94830e2..4eb2e8c 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
@@ -8,12 +8,15 @@
     packagegroup-meta-oe \
     packagegroup-meta-oe-benchmarks \
     packagegroup-meta-oe-connectivity \
+    packagegroup-meta-oe-connectivity-python2 \
     packagegroup-meta-oe-core \
     packagegroup-meta-oe-crypto \
     packagegroup-meta-oe-bsp \
     packagegroup-meta-oe-dbs \
+    packagegroup-meta-oe-dbs-python2 \
     packagegroup-meta-oe-devtools \
     packagegroup-meta-oe-extended \
+    packagegroup-meta-oe-extended-python2 \
     packagegroup-meta-oe-kernel \
     packagegroup-meta-oe-multimedia \
     packagegroup-meta-oe-navigation \
@@ -21,6 +24,7 @@
     packagegroup-meta-oe-shells \
     packagegroup-meta-oe-security \
     packagegroup-meta-oe-support \
+    packagegroup-meta-oe-support-python2 \
     packagegroup-meta-oe-test \
     ${@bb.utils.contains("DISTRO_FEATURES", "x11", "packagegroup-meta-oe-gnome", "", d)} \
     ${@bb.utils.contains("DISTRO_FEATURES", "x11", "packagegroup-meta-oe-graphics", "", d)} \
@@ -32,11 +36,14 @@
     packagegroup-meta-oe-benchmarks \
     packagegroup-meta-oe-bsp \
     packagegroup-meta-oe-connectivity \
+    ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "packagegroup-meta-oe-connectivity-python2", "", d)} \
     packagegroup-meta-oe-core \
     packagegroup-meta-oe-crypto \
     packagegroup-meta-oe-dbs \
+    ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "packagegroup-meta-oe-dbs-python2", "", d)} \
     packagegroup-meta-oe-devtools \
     packagegroup-meta-oe-extended \
+    ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "packagegroup-meta-oe-extended-python2", "", d)} \
     packagegroup-meta-oe-kernel \
     packagegroup-meta-oe-multimedia \
     packagegroup-meta-oe-navigation \
@@ -44,6 +51,7 @@
     packagegroup-meta-oe-security \
     packagegroup-meta-oe-shells \
     packagegroup-meta-oe-support \
+    ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "packagegroup-meta-oe-support-python2", "", d)} \
     packagegroup-meta-oe-test \
     ${@bb.utils.contains("DISTRO_FEATURES", "x11", "packagegroup-meta-oe-gnome", "", d)} \
     ${@bb.utils.contains("DISTRO_FEATURES", "x11", "packagegroup-meta-oe-graphics", "", d)} \
@@ -145,7 +153,6 @@
     ser2net \
     smstools3 \
     telepathy-glib \
-    ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "telepathy-idle", "", d)} \
     thrift \
     usbmuxd \
     wifi-test-suite \
@@ -156,6 +163,10 @@
 
 RDEPENDS_packagegroup-meta-oe-connectivity_append_libc-glibc = " wvstreams wvdial"
 
+RDEPENDS_packagegroup-meta-oe-connectivity-python2 = "\
+    ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "telepathy-idle", "", d)} \
+"
+
 # dracut needs dracut
 RDEPENDS_packagegroup-meta-oe-core = "\
     ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "dbus-broker", "", d)} \
@@ -201,7 +212,6 @@
     leveldb \
     libdbi \
     mariadb \
-    ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "mysql-python", "", d)} \
     postgresql \
     psqlodbc \
     rocksdb \
@@ -209,6 +219,10 @@
     sqlite \
 "
 
+RDEPENDS_packagegroup-meta-oe-dbs-python2 ="\
+    ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", bb.utils.contains('I_SWEAR_TO_MIGRATE_TO_PYTHON3', 'yes', 'mysql-python', '', d), "", d)} \
+"
+
 RDEPENDS_packagegroup-meta-oe-devtools ="\
     abseil-cpp \
     apitrace \
@@ -263,7 +277,7 @@
     mpich \
     msgpack-c \
     mercurial \
-    ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "nodejs", "", d)} \
+    nodejs \
     openocd \
     pax-utils \
     ipc-run \
@@ -300,12 +314,11 @@
 RDEPENDS_packagegroup-meta-oe-devtools_remove_mips64 = "luajit nodejs"
 RDEPENDS_packagegroup-meta-oe-devtools_remove_mips64el = "luajit nodejs"
 RDEPENDS_packagegroup-meta-oe-devtools_remove_powerpc = "android-tools breakpad lshw luajit uftrace"
-RDEPENDS_packagegroup-meta-oe-devtools_remove_powerpc64 = "android-tools lshw luajit uftrace"
-RDEPENDS_packagegroup-meta-oe-devtools_remove_powerpc64le = "android-tools lshw luajit uftrace"
+RDEPENDS_packagegroup-meta-oe-devtools_remove_powerpc64 = "android-tools breakpad lshw luajit ply uftrace"
+RDEPENDS_packagegroup-meta-oe-devtools_remove_powerpc64le = "android-tools breakpad lshw luajit ply uftrace"
 RDEPENDS_packagegroup-meta-oe-devtools_remove_riscv64 = "breakpad concurrencykit heaptrack lshw ltrace luajit nodejs ply uftrace"
 RDEPENDS_packagegroup-meta-oe-devtools_remove_riscv32 = "breakpad concurrencykit heaptrack lshw ltrace luajit nodejs ply uftrace"
-RDEPENDS_packagegroup-meta-oe-devtools_remove_aarch64 = "${@bb.utils.contains("TUNE_FEATURES", "crypto", "", "abseil-cpp", d)} concurrencykit"
-RDEPENDS_packagegroup-meta-oe-devtools_remove_x86-64 = "${@bb.utils.contains("TUNE_FEATURES", "corei7", "", "abseil-cpp", d)}"
+RDEPENDS_packagegroup-meta-oe-devtools_remove_aarch64 = "concurrencykit"
 RDEPENDS_packagegroup-meta-oe-devtools_remove_x86 = "ply"
 
 RDEPENDS_packagegroup-meta-oe-extended ="\
@@ -338,6 +351,7 @@
      hiredis \
      hplip \
      hwloc \
+     libleak \
      libuio \
      ${@bb.utils.contains("DISTRO_FEATURES", "x11", "libwmf", "", d)} \
      lprng \
@@ -347,7 +361,6 @@
      jansson \
      nana \
      nicstat \
-     ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "openlmi-tools", "", d)} \
      ${@bb.utils.contains("DISTRO_FEATURES", "pam", "openwsman", "", d)} \
      p7zip \
      isomd5sum \
@@ -402,6 +415,7 @@
      snappy \
      tipcutils \
      tiptop \
+     tmate \
      tmux \
      triggerhappy \
      upm \
@@ -422,8 +436,12 @@
 RDEPENDS_packagegroup-meta-oe-extended_remove_powerpc = "upm mraa minifi-cpp"
 RDEPENDS_packagegroup-meta-oe-extended_remove_powerpc64 = "upm mraa minifi-cpp"
 RDEPENDS_packagegroup-meta-oe-extended_remove_powerpc64le = "upm mraa"
-RDEPENDS_packagegroup-meta-oe-extended_remove_riscv64 = "upm mraa sysdig tiptop"
-RDEPENDS_packagegroup-meta-oe-extended_remove_riscv32 = "upm mraa sysdig tiptop"
+RDEPENDS_packagegroup-meta-oe-extended_remove_riscv64 = "upm libleak mraa sysdig tiptop"
+RDEPENDS_packagegroup-meta-oe-extended_remove_riscv32 = "upm libleak mraa sysdig tiptop"
+
+RDEPENDS_packagegroup-meta-oe-extended-python2 ="\
+    ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", bb.utils.contains('I_SWEAR_TO_MIGRATE_TO_PYTHON3', 'yes', 'openlmi-tools', '', d), "", d)} \
+"
 
 RDEPENDS_packagegroup-meta-oe-gnome ="\
     atkmm \
@@ -607,12 +625,12 @@
     trace-cmd \
 "
 RDEPENDS_packagegroup-meta-oe-kernel_append_x86 = " intel-speed-select ipmiutil pm-graph turbostat"
-RDEPENDS_packagegroup-meta-oe-kernel_append_x86-64 = " intel-speed-select ipmiutil kpatch pm-graph turbostat"
+RDEPENDS_packagegroup-meta-oe-kernel_append_x86-64 = " intel-speed-select ipmiutil kpatch pm-graph turbostat bpftool"
 RDEPENDS_packagegroup-meta-oe-kernel_append_poerpc64 = " libpfm4"
 
 # Kernel-selftest does not build with 5.8 and its exluded from build too so until its fixed remove it
 RDEPENDS_packagegroup-meta-oe-kernel_remove = "kernel-selftest"
-RDEPENDS_packagegroup-meta-oe-kernel_remove_libc-musl = "crash intel-speed-select kernel-selftest minicoredumper turbostat"
+RDEPENDS_packagegroup-meta-oe-kernel_remove_libc-musl = "bpftool crash intel-speed-select kernel-selftest minicoredumper turbostat"
 
 RDEPENDS_packagegroup-meta-oe-kernel_remove_mipsarch = "makedumpfile"
 RDEPENDS_packagegroup-meta-oe-kernel_remove_mips64 = "crash"
@@ -653,7 +671,6 @@
     libvpx \
     ${@bb.utils.contains("DISTRO_FEATURES", "x11", "xsp", "", d)} \
     ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "mpv", "", d)} \
-    pipewire \
     ${@bb.utils.contains("DISTRO_FEATURES", "x11", "pavucontrol", "", d)} \
     libopusenc \
 "
@@ -803,7 +820,6 @@
     libusbg \
     libutempter \
     ${@bb.utils.contains("DISTRO_FEATURES", "x11", "links-x11", "links", d)} \
-    ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "lio-utils", "", d)} \
     log4c \
     log4cpp \
     nspr \
@@ -879,7 +895,6 @@
     unixodbc \
     daemonize \
     upower \
-    xxhash \
     unicode-ucd \
     xdelta3 \
     uriparser \
@@ -897,13 +912,19 @@
 RDEPENDS_packagegroup-meta-oe-support_append_armv7a = " ne10"
 RDEPENDS_packagegroup-meta-oe-support_append_armv7ve = " ne10"
 RDEPENDS_packagegroup-meta-oe-support_append_aarch64 = " ne10"
-RDEPENDS_packagegroup-meta-oe-support_append_x86 = " mcelog mce-inject mce-test open-vm-tools vboxguestdrivers"
-RDEPENDS_packagegroup-meta-oe-support_append_x86-64 = " mcelog mce-inject mce-test open-vm-tools vboxguestdrivers"
+RDEPENDS_packagegroup-meta-oe-support_append_x86 = " mcelog mce-inject mce-test vboxguestdrivers"
+RDEPENDS_packagegroup-meta-oe-support_append_x86-64 = " mcelog mce-inject mce-test vboxguestdrivers"
+
+RDEPENDS_packagegroup-meta-oe-support-python2 ="\
+    ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", bb.utils.contains('I_SWEAR_TO_MIGRATE_TO_PYTHON3', 'yes', 'lio-utils', '', d), "", d)} \
+"
+
 RDEPENDS_packagegroup-meta-oe-support_remove_arm ="numactl"
 RDEPENDS_packagegroup-meta-oe-support_remove_mipsarch = "gperftools"
 RDEPENDS_packagegroup-meta-oe-support_remove_riscv64 = "gperftools uim"
 RDEPENDS_packagegroup-meta-oe-support_remove_riscv32 = "gperftools uim"
 RDEPENDS_packagegroup-meta-oe-support_remove_powerpc = "ssiapi"
+RDEPENDS_packagegroup-meta-oe-support_remove_powerpc64le = "ssiapi"
 
 RDEPENDS_packagegroup-meta-oe-test ="\
     bats \
diff --git a/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.5.bb b/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.5.bb
index 04106fc..11fb30d 100644
--- a/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.5.bb
+++ b/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.5.bb
@@ -13,6 +13,7 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
 
 DEPENDS = "libcap libpng cairo dbus udev"
+DEPENDS_append_libc-musl = " musl-rpmatch"
 PROVIDES = "virtual/psplash"
 RPROVIDES_${PN} = "virtual-psplash virtual-psplash-support"
 
@@ -42,6 +43,8 @@
 
 inherit autotools pkgconfig systemd gettext
 
+LDFLAGS_append_libc-musl = " -lrpmatch"
+
 do_install_append() {
     # Remove /var/run from package as plymouth will populate it on startup
     rm -fr "${D}${localstatedir}/run"
diff --git a/meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.3.4.bb b/meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.3.5.bb
similarity index 95%
rename from meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.3.4.bb
rename to meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.3.5.bb
index b9a6b71..0da9a26 100644
--- a/meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.3.4.bb
+++ b/meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.3.5.bb
@@ -13,7 +13,7 @@
     json-c \
     libdevmapper \
     popt \
-    util-linux \
+    util-linux-libuuid \
 "
 
 RDEPENDS_${PN} = " \
@@ -21,8 +21,8 @@
 "
 
 SRC_URI = "${KERNELORG_MIRROR}/linux/utils/${BPN}/v${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}/${BP}.tar.xz"
-SRC_URI[md5sum] = "911272e73181fdc850bb4d25103a9f83"
-SRC_URI[sha256sum] = "9d16eebb96b53b514778e813019b8dd15fea9fec5aafde9fae5febf59df83773"
+SRC_URI[md5sum] = "408620e0df577ec04108ec0bc2b91dee"
+SRC_URI[sha256sum] = "ced9946f444d132536daf92fc8aca4277638a3c2d96e20540b2bae4d36fd70c1"
 
 inherit autotools gettext pkgconfig
 
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc
index 27eede6..1fbcb71 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc
@@ -22,6 +22,8 @@
            file://0001-innobase-Define-__NR_futex-if-it-does-not-exist.patch \
            file://0001-stacktrace-t.c-make-the-test-conditional.patch \
           "
+SRC_URI_append_libc-musl = " file://ppc-remove-glibc-dep.patch"
+
 SRC_URI[sha256sum] = "eb4824f6f2c532cd3fc6a6bce7bf78ea7c6b949f8bdd07656b2c84344e757be8"
 
 UPSTREAM_CHECK_URI = "https://github.com/MariaDB/server/releases"
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/ppc-remove-glibc-dep.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/ppc-remove-glibc-dep.patch
new file mode 100644
index 0000000..1ca86bc
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/ppc-remove-glibc-dep.patch
@@ -0,0 +1,50 @@
+Remove glibc specific function dependencies
+
+Sourced from: https://git.alpinelinux.org/aports/tree/main/mariadb/ppc-remove-glibc-dep.patch
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/include/my_cpu.h
++++ b/include/my_cpu.h
+@@ -24,17 +24,16 @@
+ */
+ 
+ #ifdef _ARCH_PWR8
+-#include <sys/platform/ppc.h>
+ /* Very low priority */
+-#define HMT_very_low() __ppc_set_ppr_very_low()
++#define HMT_very_low() asm volatile("or 31,31,31")
+ /* Low priority */
+-#define HMT_low() __ppc_set_ppr_low()
++#define HMT_low() asm volatile ("or 1,1,1")
+ /* Medium low priority */
+-#define HMT_medium_low() __ppc_set_ppr_med_low()
++#define HMT_medium_low() asm volatile ("or 6,6,6")
+ /* Medium priority */
+-#define HMT_medium() __ppc_set_ppr_med()
++#define HMT_medium() asm volatile ("or 2,2,2")
+ /* Medium high priority */
+-#define HMT_medium_high() __ppc_set_ppr_med_high()
++#define HMT_medium_high() asm volatile("or 5,5,5")
+ /* High priority */
+ #define HMT_high() asm volatile("or 3,3,3")
+ #else
+@@ -81,7 +80,7 @@ static inline void MY_RELAX_CPU(void)
+   __asm__ __volatile__ ("pause");
+ #endif
+ #elif defined(_ARCH_PWR8)
+-  __ppc_get_timebase();
++  __builtin_ppc_get_timebase();
+ #elif defined __GNUC__ && (defined __arm__ || defined __aarch64__)
+   /* Mainly, prevent the compiler from optimizing away delay loops */
+   __asm__ __volatile__ ("":::"memory");
+--- a/storage/tokudb/PerconaFT/portability/toku_time.h
++++ b/storage/tokudb/PerconaFT/portability/toku_time.h
+@@ -124,7 +124,7 @@ static inline tokutime_t toku_time_now(v
+     __asm __volatile__ ("mrs %[rt], cntvct_el0" : [rt] "=r" (result));
+     return result;
+ #elif defined(__powerpc__)
+-    return __ppc_get_timebase();
++    return __builtin_ppc_get_timebase();
+ #else
+ #error No timer implementation for this platform
+ #endif
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mysql-python_1.2.5.bb b/meta-openembedded/meta-oe/recipes-dbs/mysql/mysql-python_1.2.5.bb
index 4617da8..43fc690 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mysql-python_1.2.5.bb
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mysql-python_1.2.5.bb
@@ -16,6 +16,8 @@
 
 S = "${WORKDIR}/${SRCNAME}-${PV}"
 
+PNBLACKLIST[mysql-python] ?= "${@bb.utils.contains('I_SWEAR_TO_MIGRATE_TO_PYTHON3', 'yes', '', 'python2 is out of support for long time, read https://www.python.org/doc/sunset-python-2/ https://python3statement.org/ and if you really have to temporarily use this, then set I_SWEAR_TO_MIGRATE_TO_PYTHON3 to "yes"', d)}"
+
 inherit ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "setuptools", "", d)}
 
 python() {
diff --git a/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/abseil-ppc-fixes.patch b/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/abseil-ppc-fixes.patch
new file mode 100644
index 0000000..ee0c254
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/abseil-ppc-fixes.patch
@@ -0,0 +1,94 @@
+An all-in-one patch that fixes several issues:
+
+1) UnscaledCycleClock not fully implemented for ppc*-musl (disabled on musl)
+2) powerpc stacktrace implementation only works on glibc (disabled on musl)
+3) powerpc stacktrace implementation has ppc64 assumptions (fixed)
+4) examine_stack.cpp makes glibc assumptions on powerpc (fixed)
+
+Sourced from void linux
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/absl/base/internal/unscaledcycleclock.cc
++++ b/absl/base/internal/unscaledcycleclock.cc
+@@ -20,7 +20,7 @@
+ #include <intrin.h>
+ #endif
+ 
+-#if defined(__powerpc__) || defined(__ppc__)
++#if (defined(__powerpc__) || defined(__ppc__)) && defined(__GLIBC__)
+ #ifdef __GLIBC__
+ #include <sys/platform/ppc.h>
+ #elif defined(__FreeBSD__)
+@@ -59,7 +59,7 @@ double UnscaledCycleClock::Frequency() {
+   return base_internal::NominalCPUFrequency();
+ }
+ 
+-#elif defined(__powerpc__) || defined(__ppc__)
++#elif (defined(__powerpc__) || defined(__ppc__)) && defined(__GLIBC__)
+ 
+ int64_t UnscaledCycleClock::Now() {
+ #ifdef __GLIBC__
+--- a/absl/base/internal/unscaledcycleclock.h
++++ b/absl/base/internal/unscaledcycleclock.h
+@@ -46,7 +46,7 @@
+ 
+ // The following platforms have an implementation of a hardware counter.
+ #if defined(__i386__) || defined(__x86_64__) || defined(__aarch64__) || \
+-  defined(__powerpc__) || defined(__ppc__) || \
++  ((defined(__powerpc__) || defined(__ppc__)) && defined(__GLIBC__)) || \
+   defined(_M_IX86) || defined(_M_X64)
+ #define ABSL_HAVE_UNSCALED_CYCLECLOCK_IMPLEMENTATION 1
+ #else
+--- a/absl/debugging/internal/examine_stack.cc
++++ b/absl/debugging/internal/examine_stack.cc
+@@ -27,6 +27,10 @@
+ #include <csignal>
+ #include <cstdio>
+ 
++#if defined(__powerpc__)
++#include <asm/ptrace.h>
++#endif
++
+ #include "absl/base/attributes.h"
+ #include "absl/base/internal/raw_logging.h"
+ #include "absl/base/macros.h"
+@@ -55,8 +59,10 @@ void* GetProgramCounter(void* vuc) {
+     return reinterpret_cast<void*>(context->uc_mcontext.pc);
+ #elif defined(__powerpc64__)
+     return reinterpret_cast<void*>(context->uc_mcontext.gp_regs[32]);
+-#elif defined(__powerpc__)
++#elif defined(__powerpc__) && defined(__GLIBC__)
+     return reinterpret_cast<void*>(context->uc_mcontext.regs->nip);
++#elif defined(__powerpc__)
++    return reinterpret_cast<void*>(((struct pt_regs *)context->uc_regs)->nip);
+ #elif defined(__riscv)
+     return reinterpret_cast<void*>(context->uc_mcontext.__gregs[REG_PC]);
+ #elif defined(__s390__) && !defined(__s390x__)
+--- a/absl/debugging/internal/stacktrace_config.h
++++ b/absl/debugging/internal/stacktrace_config.h
+@@ -64,7 +64,7 @@
+ #elif defined(__i386__) || defined(__x86_64__)
+ #define ABSL_STACKTRACE_INL_HEADER \
+   "absl/debugging/internal/stacktrace_x86-inl.inc"
+-#elif defined(__ppc__) || defined(__PPC__)
++#elif (defined(__ppc__) || defined(__PPC__)) && defined(__GLIBC__)
+ #define ABSL_STACKTRACE_INL_HEADER \
+   "absl/debugging/internal/stacktrace_powerpc-inl.inc"
+ #elif defined(__aarch64__)
+--- a/absl/debugging/internal/stacktrace_powerpc-inl.inc
++++ b/absl/debugging/internal/stacktrace_powerpc-inl.inc
+@@ -130,8 +130,13 @@ static void **NextStackFrame(void **old_
+         StacktracePowerPCGetLR(new_sp) == kernel_sigtramp_rt64_address) {
+       const ucontext_t* signal_context =
+           reinterpret_cast<const ucontext_t*>(uc);
++#if defined(__powerpc64__)
+       void **const sp_before_signal =
+           reinterpret_cast<void**>(signal_context->uc_mcontext.gp_regs[PT_R1]);
++#else
++      void **const sp_before_signal =
++          reinterpret_cast<void**>(signal_context->uc_mcontext.uc_regs->gregs[PT_R1]);
++#endif
+       // Check that alleged sp before signal is nonnull and is reasonably
+       // aligned.
+       if (sp_before_signal != nullptr &&
diff --git a/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb b/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb
index 9557c93..903b7b4 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb
@@ -13,6 +13,7 @@
 SRC_URI = "git://github.com/abseil/abseil-cpp;branch=${BRANCH}         \
            file://0001-absl-always-use-asm-sgidefs.h.patch             \
            file://0002-Remove-maes-option-from-cross-compilation.patch \
+           file://abseil-ppc-fixes.patch \
           "
 
 S = "${WORKDIR}/git"
@@ -28,7 +29,6 @@
                 "
 
 BBCLASSEXTEND = "native nativesdk"
-ALLOW_EMPTY_${PN} = "1"
 
-FILES_${PN} = "${libdir}/libabsl_*.so ${libdir}/cmake"
-FILES_${PN}-dev = "${includedir}"
+FILES_${PN} = "${libdir}/libabsl_*.so"
+FILES_${PN}-dev = "${includedir} ${libdir}/cmake"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Remove-HAVE_GETCONTEXT-check-to-add-local-implementa.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Remove-HAVE_GETCONTEXT-check-to-add-local-implementa.patch
new file mode 100644
index 0000000..d7a5c06
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Remove-HAVE_GETCONTEXT-check-to-add-local-implementa.patch
@@ -0,0 +1,54 @@
+From 70441611d4e8200d9d16dfed493873b8c1bb57c5 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 15 Mar 2021 11:33:38 -0700
+Subject: [PATCH] Remove HAVE_GETCONTEXT check to add local implementation
+
+On musl getcontext/setcontext APIs are implemented in libucontext which
+can be used
+
+Upstream-Status: Inappropriate [Musl Specific]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile.am | 12 ------------
+ 1 file changed, 12 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index ee7454e4..69700192 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -187,10 +187,6 @@ src_client_linux_libbreakpad_client_a_SOURCES = \
+ 	src/common/linux/linux_libc_support.cc \
+ 	src/common/linux/memory_mapped_file.cc \
+ 	src/common/linux/safe_readlink.cc
+-if !HAVE_GETCONTEXT
+-src_client_linux_libbreakpad_client_a_SOURCES += \
+-	src/common/linux/breakpad_getcontext.S
+-endif
+ endif LINUX_HOST
+ 
+ if !DISABLE_PROCESSOR
+@@ -508,10 +504,6 @@ src_client_linux_linux_client_unittest_shlib_SOURCES = \
+ 	src/processor/minidump.cc \
+ 	src/processor/pathname_stripper.cc \
+ 	src/processor/proc_maps_linux.cc
+-if !HAVE_GETCONTEXT
+-src_client_linux_linux_client_unittest_shlib_SOURCES += \
+-	src/common/linux/breakpad_getcontext.S
+-endif
+ 
+ src_client_linux_linux_client_unittest_shlib_CPPFLAGS = \
+ 	$(AM_CPPFLAGS) $(TEST_CFLAGS)
+@@ -541,10 +533,6 @@ src_client_linux_linux_client_unittest_shlib_LDADD = \
+ 	src/common/string_conversion.o \
+ 	$(TEST_LIBS) \
+ 	$(PTHREAD_CFLAGS) $(PTHREAD_LIBS)
+-if !HAVE_GETCONTEXT
+-src_client_linux_linux_client_unittest_shlib_SOURCES += \
+-	src/common/linux/breakpad_getcontext_unittest.cc
+-endif
+ if ANDROID_HOST
+ src_client_linux_linux_client_unittest_shlib_LDFLAGS += \
+ 	-llog -lm
+-- 
+2.30.2
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Turn-off-sign-compare-for-musl-libc.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Turn-off-sign-compare-for-musl-libc.patch
index 33bae1a..6b8d011 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Turn-off-sign-compare-for-musl-libc.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Turn-off-sign-compare-for-musl-libc.patch
@@ -13,11 +13,9 @@
  src/client/linux/crash_generation/crash_generation_server.cc | 10 ++++++++++
  1 file changed, 10 insertions(+)
 
-diff --git a/src/client/linux/crash_generation/crash_generation_server.cc b/src/client/linux/crash_generation/crash_generation_server.cc
-index 2596afde..2faeb9e5 100644
 --- a/src/client/linux/crash_generation/crash_generation_server.cc
 +++ b/src/client/linux/crash_generation/crash_generation_server.cc
-@@ -230,8 +230,18 @@ CrashGenerationServer::ClientEvent(short revents)
+@@ -230,8 +230,18 @@ CrashGenerationServer::ClientEvent(short
    // Walk the control payload and extract the file descriptor and validated pid.
    pid_t crashing_pid = -1;
    int signal_fd = -1;
@@ -28,7 +26,7 @@
 +  #pragma clang diagnostic push
 +  #pragma clang diagnostic ignored "-Wsign-compare"
 +#endif
-   for (struct cmsghdr *hdr = CMSG_FIRSTHDR(&msg); hdr;
+   for (struct cmsghdr* hdr = CMSG_FIRSTHDR(&msg); hdr;
         hdr = CMSG_NXTHDR(&msg, hdr)) {
 +#ifndef __GLIBC__
 +  #pragma clang diagnostic pop
@@ -36,6 +34,3 @@
      if (hdr->cmsg_level != SOL_SOCKET)
        continue;
      if (hdr->cmsg_type == SCM_RIGHTS) {
--- 
-2.14.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-disable-calls-to-getcontext-with-musl.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-disable-calls-to-getcontext-with-musl.patch
deleted file mode 100644
index 466abe5..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-disable-calls-to-getcontext-with-musl.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 57ecf7205feedd23f901e1bb9d193787e559e433 Mon Sep 17 00:00:00 2001
-From: Andre McCurdy <armccurdy@gmail.com>
-Date: Tue, 23 Jan 2018 15:13:26 -0800
-Subject: [PATCH] disable calls to getcontext() with musl
-
-Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
----
- src/client/linux/handler/exception_handler.cc | 17 +++++++++++++++++
- 1 file changed, 17 insertions(+)
-
---- a/src/client/linux/handler/exception_handler.cc
-+++ b/src/client/linux/handler/exception_handler.cc
-@@ -490,7 +490,19 @@ bool ExceptionHandler::SimulateSignalDel
-   siginfo.si_code = SI_USER;
-   siginfo.si_pid = getpid();
-   ucontext_t context;
-+#if defined(__GLIBC__)
-   getcontext(&context);
-+#else
-+  // Extreme hack: Allow musl builds to compile - but don't expect them to work.
-+  // Although musl provides a definition for getcontext() in ucontext.h (which
-+  // enough to build libbreakpad_client) musl does not provide a corresponding
-+  // getcontext() function, so builds will fail when attempting to link anything
-+  // with libbreakpad_client. Disabling calls to getcontext() is a temporary
-+  // hack. The real fix is probably to enable Breakpad's own implementation of
-+  // getcontext() when building for musl (it's currently only enabled when
-+  // building for Android).
-+  memset (&context, 0, sizeof(context));
-+#endif
-   return HandleSignal(sig, &siginfo, &context);
- }
- 
-@@ -675,9 +687,14 @@ bool ExceptionHandler::WriteMinidump() {
-   sys_prctl(PR_SET_DUMPABLE, 1, 0, 0, 0);
- 
-   CrashContext context;
-+#if defined(__GLIBC__)
-   int getcontext_result = getcontext(&context.context);
-   if (getcontext_result)
-     return false;
-+#else
-+  // Extreme hack - see comments above.
-+  memset (&context.context, 0, sizeof(context.context));
-+#endif
- 
- #if defined(__i386__)
-   // In CPUFillFromUContext in minidumpwriter.cc the stack pointer is retrieved
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-include-sys-reg.h-to-get-__WORDSIZE-on-musl-libc.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-include-sys-reg.h-to-get-__WORDSIZE-on-musl-libc.patch
index 4583d60..3dc55cf 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-include-sys-reg.h-to-get-__WORDSIZE-on-musl-libc.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-include-sys-reg.h-to-get-__WORDSIZE-on-musl-libc.patch
@@ -7,22 +7,20 @@
  src/common/linux/elf_core_dump.h | 1 +
  1 file changed, 1 insertion(+)
 
-Index: git/src/common/linux/elf_core_dump.h
-===================================================================
---- git.orig/src/common/linux/elf_core_dump.h
-+++ git/src/common/linux/elf_core_dump.h
-@@ -33,10 +33,13 @@
+--- a/src/common/linux/elf_core_dump.h
++++ b/src/common/linux/elf_core_dump.h
+@@ -33,10 +33,14 @@
  #ifndef COMMON_LINUX_ELF_CORE_DUMP_H_
  #define COMMON_LINUX_ELF_CORE_DUMP_H_
  
 +#include <config.h>
  #include <elf.h>
+ #include <limits.h>
  #include <link.h>
  #include <stddef.h>
--
 +#ifdef HAVE_SYS_REG_H
 +#include <sys/reg.h>
 +#endif
+ 
  #include "common/memory_range.h"
  
- namespace google_breakpad {
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-Use-_fpstate-instead-of-_libc_fpstate-on-linux.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-Use-_fpstate-instead-of-_libc_fpstate-on-linux.patch
deleted file mode 100644
index 6c097cd2..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-Use-_fpstate-instead-of-_libc_fpstate-on-linux.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From 0ba1b3e35e7c743b670bedc3e90001dfb868df10 Mon Sep 17 00:00:00 2001
-From: Felix Janda <felix.janda@posteo.de>
-Date: Sun, 1 Feb 2015 13:45:51 +0100
-Subject: [PATCH 2/6] Use _fpstate instead of _libc_fpstate on linux
-
-glibc defines both. musl libc only the former.
----
- src/client/linux/dump_writer_common/ucontext_reader.cc | 4 ++--
- src/client/linux/dump_writer_common/ucontext_reader.h  | 2 +-
- src/client/linux/minidump_writer/minidump_writer.h     | 2 +-
- 3 files changed, 4 insertions(+), 4 deletions(-)
-
-Index: git/src/client/linux/dump_writer_common/ucontext_reader.cc
-===================================================================
---- git.orig/src/client/linux/dump_writer_common/ucontext_reader.cc
-+++ git/src/client/linux/dump_writer_common/ucontext_reader.cc
-@@ -49,7 +49,7 @@ uintptr_t UContextReader::GetInstruction
- }
- 
- void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
--                                    const struct _libc_fpstate* fp) {
-+                                    const struct _fpstate* fp) {
-   const greg_t* regs = uc->uc_mcontext.gregs;
- 
-   out->context_flags = MD_CONTEXT_X86_FULL |
-@@ -97,7 +97,7 @@ uintptr_t UContextReader::GetInstruction
- }
- 
- void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
--                                    const struct _libc_fpstate* fpregs) {
-+                                    const struct _fpstate* fpregs) {
-   const greg_t* regs = uc->uc_mcontext.gregs;
- 
-   out->context_flags = MD_CONTEXT_AMD64_FULL;
-Index: git/src/client/linux/dump_writer_common/ucontext_reader.h
-===================================================================
---- git.orig/src/client/linux/dump_writer_common/ucontext_reader.h
-+++ git/src/client/linux/dump_writer_common/ucontext_reader.h
-@@ -50,7 +50,7 @@ struct UContextReader {
-   //   info: the collection of register structures.
- #if defined(__i386__) || defined(__x86_64)
-   static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
--                             const struct _libc_fpstate* fp);
-+                             const struct _fpstate* fp);
- #elif defined(__aarch64__)
-   static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
-                              const struct fpsimd_context* fpregs);
-Index: git/src/client/linux/minidump_writer/minidump_writer.h
-===================================================================
---- git.orig/src/client/linux/minidump_writer/minidump_writer.h
-+++ git/src/client/linux/minidump_writer/minidump_writer.h
-@@ -48,7 +48,7 @@ class ExceptionHandler;
- #if defined(__aarch64__)
- typedef struct fpsimd_context fpstate_t;
- #elif !defined(__ARM_EABI__) && !defined(__mips__)
--typedef struct _libc_fpstate fpstate_t;
-+typedef struct _fpstate fpstate_t;
- #endif
- 
- // These entries store a list of memory regions that the client wants included
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-sys-signal.h-is-a-nonportable-alias-for-signal.h.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-sys-signal.h-is-a-nonportable-alias-for-signal.h.patch
deleted file mode 100644
index cfd9a9b..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-sys-signal.h-is-a-nonportable-alias-for-signal.h.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 15582e19c2545d5ffe8ff07f957d0ed602aeca74 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 14 Sep 2017 23:15:09 -0700
-Subject: [PATCH 2/5] <sys/signal.h> is a nonportable alias for <signal.h>
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/client/linux/handler/exception_handler.cc | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/client/linux/handler/exception_handler.cc b/src/client/linux/handler/exception_handler.cc
-index 05936d28..cca023fd 100644
---- a/src/client/linux/handler/exception_handler.cc
-+++ b/src/client/linux/handler/exception_handler.cc
-@@ -78,7 +78,7 @@
- #include <sys/wait.h>
- #include <unistd.h>
- 
--#include <sys/signal.h>
-+#include <signal.h>
- #include <sys/ucontext.h>
- #include <sys/user.h>
- #include <ucontext.h>
--- 
-2.14.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0003-Dont-include-stab.h.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0003-Dont-include-stab.h.patch
index 2593ea9..76b2088 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0003-Dont-include-stab.h.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0003-Dont-include-stab.h.patch
@@ -10,10 +10,8 @@
  src/common/stabs_reader_unittest.cc |  1 -
  3 files changed, 11 insertions(+), 3 deletions(-)
 
-Index: git/src/common/stabs_reader.cc
-===================================================================
---- git.orig/src/common/stabs_reader.cc
-+++ git/src/common/stabs_reader.cc
+--- a/src/common/stabs_reader.cc
++++ b/src/common/stabs_reader.cc
 @@ -34,7 +34,9 @@
  #include "common/stabs_reader.h"
  
@@ -24,10 +22,8 @@
  #include <string.h>
  
  #include <string>
-Index: git/src/common/stabs_reader.h
-===================================================================
---- git.orig/src/common/stabs_reader.h
-+++ git/src/common/stabs_reader.h
+--- a/src/common/stabs_reader.h
++++ b/src/common/stabs_reader.h
 @@ -58,6 +58,30 @@
  #elif defined(HAVE_A_OUT_H)
  #include <a.out.h>
@@ -59,10 +55,8 @@
  
  #include <string>
  #include <vector>
-Index: git/src/common/stabs_reader_unittest.cc
-===================================================================
---- git.orig/src/common/stabs_reader_unittest.cc
-+++ git/src/common/stabs_reader_unittest.cc
+--- a/src/common/stabs_reader_unittest.cc
++++ b/src/common/stabs_reader_unittest.cc
 @@ -33,7 +33,9 @@
  
  #include <assert.h>
@@ -73,16 +67,14 @@
  #include <stdarg.h>
  #include <stdlib.h>
  #include <string.h>
-Index: git/configure.ac
-===================================================================
---- git.orig/configure.ac
-+++ git/configure.ac
+--- a/configure.ac
++++ b/configure.ac
 @@ -72,7 +72,7 @@ AC_ARG_ENABLE(m32,
  AC_HEADER_STDC
  AC_SYS_LARGEFILE
  AX_PTHREAD
--AC_CHECK_HEADERS([a.out.h sys/random.h])
-+AC_CHECK_HEADERS([a.out.h stab.h sys/random.h])
- AC_CHECK_FUNCS([arc4random getrandom])
- 
- AX_CXX_COMPILE_STDCXX(11, noext, mandatory)
+-AC_CHECK_HEADERS([a.out.h sys/mman.h sys/random.h])
++AC_CHECK_HEADERS([a.out.h stab.h sys/mman.h sys/random.h])
+ AC_CHECK_FUNCS([arc4random getcontext getrandom memfd_create])
+ AM_CONDITIONAL([HAVE_GETCONTEXT], [test "x$ac_cv_func_getcontext" = xyes])
+ AM_CONDITIONAL([HAVE_MEMFD_CREATE], [test "x$ac_cv_func_memfd_create" = xyes])
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch
index 525a155..5892cfa 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch
@@ -9,35 +9,33 @@
  src/common/dwarf/elf_reader.cc | 1 +
  1 file changed, 1 insertion(+)
 
-Index: git/src/common/dwarf/elf_reader.cc
-===================================================================
---- git.orig/src/common/dwarf/elf_reader.cc
-+++ git/src/common/dwarf/elf_reader.cc
-@@ -29,10 +29,13 @@
- #ifndef _GNU_SOURCE
+--- a/src/common/dwarf/elf_reader.cc
++++ b/src/common/dwarf/elf_reader.cc
+@@ -30,12 +30,16 @@
  #define _GNU_SOURCE  // needed for pread()
  #endif
--
+ 
 +#include <config.h>
- #include <sys/types.h>
- #include <sys/stat.h>
+ #include <fcntl.h>
+ #include <limits.h>
+ #include <string.h>
  #include <sys/mman.h>
+ #include <sys/stat.h>
+ #include <sys/types.h>
 +#ifdef HAVE_SYS_REG_H
 +#include <sys/reg.h>
 +#endif
  #include <unistd.h>
- #include <fcntl.h>
- #include <string.h>
-Index: git/configure.ac
-===================================================================
---- git.orig/configure.ac
-+++ git/configure.ac
+ 
+ #include <algorithm>
+--- a/configure.ac
++++ b/configure.ac
 @@ -72,7 +72,7 @@ AC_ARG_ENABLE(m32,
  AC_HEADER_STDC
  AC_SYS_LARGEFILE
  AX_PTHREAD
--AC_CHECK_HEADERS([a.out.h stab.h sys/random.h])
-+AC_CHECK_HEADERS([a.out.h stab.h sys/random.h sys/reg.h])
- AC_CHECK_FUNCS([arc4random getrandom])
- 
- AX_CXX_COMPILE_STDCXX(11, noext, mandatory)
+-AC_CHECK_HEADERS([a.out.h stab.h sys/mman.h sys/random.h])
++AC_CHECK_HEADERS([a.out.h stab.h sys/mman.h sys/random.h sys/reg.h])
+ AC_CHECK_FUNCS([arc4random getcontext getrandom memfd_create])
+ AM_CONDITIONAL([HAVE_GETCONTEXT], [test "x$ac_cv_func_getcontext" = xyes])
+ AM_CONDITIONAL([HAVE_MEMFD_CREATE], [test "x$ac_cv_func_memfd_create" = xyes])
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/mips_asm_sgidefs.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/mips_asm_sgidefs.patch
index 19bb560..96f5f48 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/mips_asm_sgidefs.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/mips_asm_sgidefs.patch
@@ -1,12 +1,9 @@
-Index: lss/linux_syscall_support.h
-===================================================================
---- lss.orig/linux_syscall_support.h
-+++ lss/linux_syscall_support.h
-@@ -118,21 +118,13 @@ extern "C" {
- #include <endian.h>
+--- a/linux_syscall_support.h
++++ b/linux_syscall_support.h
+@@ -119,14 +119,7 @@ extern "C" {
  
  #ifdef __mips__
--/* Include definitions of the ABI currently in use.                          */
+ /* Include definitions of the ABI currently in use.                          */
 -#ifdef __ANDROID__
 -/* Android doesn't have sgidefs.h, but does have asm/sgidefs.h,
 - * which has the definitions we need.
@@ -18,10 +15,3 @@
  #endif
  #endif
  
- /* The Android NDK's <sys/stat.h> #defines these macros as aliases
-  * to their non-64 counterparts. To avoid naming conflict, remove them. */
--#ifdef __ANDROID__
-+#if defined(__ANDROID__) || (defined(__linux__) && !defined(__glibc__))
-   /* These are restored by the corresponding #pragma pop_macro near
-    * the end of this file. */
- # pragma push_macro("stat64")
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
index daf262e..81955f4 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
@@ -6,11 +6,13 @@
 DESCRIPTION = "Breakpad is a library and tool suite that allows you to distribute an application to users with compiler-provided debugging information removed, record crashes in compact \"minidump\" files, send them back to your server, and produce C and C++ stack traces from these minidumps. "
 HOMEPAGE = "https://code.google.com/p/google-breakpad/"
 LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=56c24a43c81c3af6fcf590851931489e"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=8bb274ebd1901085fd71a8d8afe8831b"
 SECTION = "libs"
 
 inherit autotools
 
+DEPENDS_append_libc-musl = " libucontext"
+
 BBCLASSEXTEND = "native"
 
 PE = "2"
@@ -19,27 +21,25 @@
 
 SRCREV_FORMAT = "breakpad_gtest_protobuf_lss_gyp"
 
-SRCREV_breakpad = "0c0e24f709288a129d665ec27d6f089189318385"
+SRCREV_breakpad = "8b22babdf894e5aa98b2dbbe103f7e3856a71944"
 #v1.10.0
-SRCREV_gtest = "5ec7f0c4a113e2f18ac2c6cc7df51ad6afc24081"
+SRCREV_gtest = "4fe018038f87675c083d0cfb6a6b57c274fb1753"
 SRCREV_protobuf = "cb6dd4ef5f82e41e06179dcd57d3b1d9246ad6ac"
-SRCREV_lss = "8048ece6c16c91acfe0d36d1d3cc0890ab6e945c"
+SRCREV_lss = "fd00dbbd0c06a309c657d89e9430143b179ff6db"
 SRCREV_gyp = "324dd166b7c0b39d513026fa52d6280ac6d56770"
 
-SRC_URI = "git://github.com/google/breakpad;name=breakpad \
+SRC_URI = "git://github.com/google/breakpad;name=breakpad;branch=main \
            git://github.com/google/googletest.git;destsuffix=git/src/testing/gtest;name=gtest \
-           git://github.com/google/protobuf.git;destsuffix=git/src/third_party/protobuf/protobuf;name=protobuf \
-           git://chromium.googlesource.com/linux-syscall-support;protocol=https;destsuffix=git/src/third_party/lss;name=lss \
+           git://github.com/protocolbuffers/protobuf.git;destsuffix=git/src/third_party/protobuf/protobuf;name=protobuf \
+           git://chromium.googlesource.com/linux-syscall-support;protocol=https;branch=main;destsuffix=git/src/third_party/lss;name=lss \
            git://chromium.googlesource.com/external/gyp;protocol=https;destsuffix=git/src/tools/gyp;name=gyp \
            file://0001-include-sys-reg.h-to-get-__WORDSIZE-on-musl-libc.patch \
            file://0003-Fix-conflict-between-musl-libc-dirent.h-and-lss.patch \
            file://0001-Turn-off-sign-compare-for-musl-libc.patch \
-           file://0002-sys-signal.h-is-a-nonportable-alias-for-signal.h.patch \
            file://0003-Dont-include-stab.h.patch \
            file://0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch \
-           file://0002-Use-_fpstate-instead-of-_libc_fpstate-on-linux.patch \
            file://mcontext.patch \
-           file://0001-disable-calls-to-getcontext-with-musl.patch \
+           file://0001-Remove-HAVE_GETCONTEXT-check-to-add-local-implementa.patch \
            file://0001-lss-Match-syscalls-to-match-musl.patch;patchdir=src/third_party/lss \
            file://mips_asm_sgidefs.patch;patchdir=src/third_party/lss \
            file://0001-Do-not-add-stack-pointer-to-clobber-list.patch;patchdir=src/third_party/lss \
@@ -47,8 +47,11 @@
 S = "${WORKDIR}/git"
 
 CXXFLAGS += "-D_GNU_SOURCE"
+LDFLAGS_append_libc-musl = " -lucontext"
 
 COMPATIBLE_HOST_powerpc = "null"
+COMPATIBLE_HOST_powerpc64 = "null"
+COMPATIBLE_HOST_powerpc64le = "null"
 COMPATIBLE_HOST_riscv64 = "null"
 COMPATIBLE_HOST_riscv32 = "null"
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.1.bb b/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.4.bb
similarity index 93%
rename from meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.1.bb
rename to meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.4.bb
index 358ec80..03de499 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.1.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.4.bb
@@ -10,8 +10,13 @@
 DEPENDS_append_class-target = " googletest grpc-native "
 DEPENDS_append_class-nativesdk = " grpc-native "
 
+PACKAGE_BEFORE_PN = "${PN}-compiler"
+
+RDEPENDS_${PN}-compiler = "${PN}"
+RDEPENDS_${PN}-dev += "${PN}-compiler"
+
 S = "${WORKDIR}/git"
-SRCREV_grpc = "3b7f86e3516746c5f0db1947e0d65e94159bcb12"
+SRCREV_grpc = "3e53dbe8213137d2c731ecd4d88ebd2948941d75"
 BRANCH = "v1.36.x"
 SRC_URI = "git://github.com/grpc/grpc.git;protocol=https;name=grpc;branch=${BRANCH} \
            "
@@ -72,4 +77,4 @@
 
 SYSROOT_DIRS_BLACKLIST_append_class-target = " ${baselib}/cmake/grpc"
 
-FILES_${PN}-dev += "${bindir}"
+FILES_${PN}-compiler += "${bindir}"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.7.bb b/meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.8.bb
similarity index 77%
rename from meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.7.bb
rename to meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.8.bb
index 88fad93..6277c41 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.7.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.8.bb
@@ -1,4 +1,4 @@
-SUMMARY = "runtime performance analyzer"
+SUMMARY = "performance analyzer"
 HOMEPAGE = "https://github.com/iipeace/guider"
 BUGTRACKER = "https://github.com/iipeace/guider/issues"
 AUTHOR = "Peace Lee <ipeace5@gmail.com>"
@@ -6,10 +6,10 @@
 LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=2c1c00f9d3ed9e24fa69b932b7e7aff2"
 
-PV = "3.9.7+git${SRCPV}"
+PV = "3.9.8+git${SRCPV}"
 
 SRC_URI = "git://github.com/iipeace/${BPN}"
-SRCREV = "459b5189a46023fc98e19888b196bdc2674022fd"
+SRCREV = "a502cd93b13235b7539557a91328de00b7c51bc3"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.3.bb b/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.4.bb
similarity index 82%
rename from meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.3.bb
rename to meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.4.bb
index e41907d..a02ff4a 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.3.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.4.bb
@@ -13,13 +13,13 @@
 
 PE = "1"
 
-SRCREV = "6aba23f4a8628d599a9ef7fa4811c4ff6e4070e2"
+SRCREV = "9059f5cad030ba11d37818847443a53918c327b1"
 SRC_URI = "git://github.com/open-source-parsers/jsoncpp"
 
 S = "${WORKDIR}/git"
 
 inherit cmake
 
-EXTRA_OECMAKE += "-DBUILD_SHARED_LIBS=ON -DJSONCPP_WITH_TESTS=OFF"
+EXTRA_OECMAKE += "-DBUILD_SHARED_LIBS=ON -DBUILD_OBJECT_LIBS=OFF -DJSONCPP_WITH_TESTS=OFF"
 
 BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.3.bb b/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.4.bb
similarity index 77%
rename from meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.3.bb
rename to meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.4.bb
index 576eff6..832254a 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.3.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.4.bb
@@ -18,5 +18,5 @@
     done
 }
 
-SRC_URI[archive.md5sum] = "e574b3952b93d219b5ec7c74c5892c33"
-SRC_URI[archive.sha256sum] = "d0b5edefc88cbca5f1709d19fa62aef490922c6577a14ac4e7b085507911a5de"
+SRC_URI[archive.md5sum] = "4d7d6f1f8054f1b3466c752ac2e50946"
+SRC_URI[archive.sha256sum] = "524c1bf390f9cdda4fbd9a47b269980dc64ab5280f0801b53bc69d782c72de0e"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/add_ppc64le.patch b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/add_ppc64le.patch
new file mode 100644
index 0000000..dff61b1
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/add_ppc64le.patch
@@ -0,0 +1,39 @@
+--- a/sysdeps/linux-gnu/ppc/ptrace.h
++++ b/sysdeps/linux-gnu/ppc/ptrace.h
+@@ -18,4 +18,5 @@
+  * 02110-1301 USA
+  */
+ 
++#include <asm/ptrace.h>
+ #include <sys/ptrace.h>
+--- a/sysdeps/linux-gnu/ppc/regs.c
++++ b/sysdeps/linux-gnu/ppc/regs.c
+@@ -23,11 +23,14 @@
+ 
+ #include "config.h"
+ 
++#include <string.h>
+ #include <sys/types.h>
+ #include <sys/ptrace.h>
+ #include <asm/ptrace.h>
+ #include <errno.h>
++#ifdef HAVE_ERROR_H
+ #include <error.h>
++#endif
+ 
+ #include "proc.h"
+ #include "common.h"
+@@ -49,8 +52,11 @@ get_instruction_pointer(struct process *
+ void
+ set_instruction_pointer(struct process *proc, void *addr)
+ {
+-	if (ptrace(PTRACE_POKEUSER, proc->pid, sizeof(long)*PT_NIP, addr) != 0)
+-		error(0, errno, "set_instruction_pointer");
++	if (ptrace(PTRACE_POKEUSER, proc->pid, sizeof(long)*PT_NIP, addr) != 0){
++		report_global_error("%s: set_instruction_pointer",
++			strerror(errno));
++		exit(1);
++	}
+ }
+ 
+ void *
diff --git a/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
index 5710943..17264ce 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
@@ -30,6 +30,8 @@
            file://0001-Bug-fix-for-data-type-length-judgment.patch \
            file://0001-ensure-the-struct-pointers-are-null-initilized.patch \
            "
+SRC_URI_append_libc-musl = " file://add_ppc64le.patch"
+
 S = "${WORKDIR}/git"
 
 inherit autotools
diff --git a/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd/0001-nsswitch.y-Replace-empty-bison-extension.patch b/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd/0001-nsswitch.y-Replace-empty-bison-extension.patch
new file mode 100644
index 0000000..67c8b1b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd/0001-nsswitch.y-Replace-empty-bison-extension.patch
@@ -0,0 +1,50 @@
+From 82e51fb8ba2640b318826ef4e17b0f5c09c8dded Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 8 Mar 2021 20:10:18 -0800
+Subject: [PATCH] nsswitch.y: Replace %empty bison extension
+
+POSIX compliant yacc do not understand %empty therefore replace it with
+/* empty */
+
+https://github.com/pikhq/musl-nscd/issues/13
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/nsswitch.y | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/nsswitch.y b/src/nsswitch.y
+index 107073b..0b7c71e 100644
+--- a/src/nsswitch.y
++++ b/src/nsswitch.y
+@@ -38,7 +38,7 @@ top:
+ 	;
+ 
+ file:
+-	%empty {
++	/* empty */ {
+ 		list_init(&$$);
+ 	}
+ 	| file line {
+@@ -88,7 +88,7 @@ modifier:
+ 	;
+ 
+ modifiers:
+-	%empty {
++	/* empty */ {
+ 		memcpy($$, default_actions, sizeof($$));
+ 	}
+ 	| modifiers modifier {
+@@ -112,7 +112,7 @@ item:
+ 	;
+ 
+ list:
+-	%empty {
++	/* empty */ {
+ 		list_init(&$$);
+ 	}
+ 	| list item {
+-- 
+2.30.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd_git.bb b/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd_git.bb
index 83125a1..6af7ab9 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd_git.bb
@@ -15,6 +15,7 @@
 SRC_URI = "git://github.com/pikhq/musl-nscd \
            file://0001-Fix-build-under-GCC-fno-common.patch \
            file://0001-configure-Check-for-flex-if-lex-is-not-found.patch \
+           file://0001-nsswitch.y-Replace-empty-bison-extension.patch \
           "
 
 UPSTREAM_CHECK_COMMITS = "1"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.20.2.bb b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.21.0.bb
similarity index 97%
rename from meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.20.2.bb
rename to meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.21.0.bb
index 6acc36b..3a2822c 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.20.2.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.21.0.bb
@@ -26,7 +26,7 @@
 SRC_URI_append_class-target = " \
            file://0002-Using-native-binaries.patch \
            "
-SRC_URI[sha256sum] = "961ad600f0706c396390ebc7767fb01d5e3792a5022dc2e7774796756eec6d3c"
+SRC_URI[sha256sum] = "052f37ace6f569b513b5a1154b2a45d3c4d8b07d7d7c807b79f1566db61e979d"
 
 S = "${WORKDIR}/node-v${PV}"
 
@@ -39,7 +39,7 @@
     if   re.match('i.86$', a): return 'ia32'
     elif re.match('x86_64$', a): return 'x64'
     elif re.match('aarch64$', a): return 'arm64'
-    elif re.match('(powerpc64|ppc64le)$', a): return 'ppc64'
+    elif re.match('(powerpc64|powerpc64le)$', a): return 'ppc64'
     elif re.match('powerpc$', a): return 'ppc'
     return a
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd_git.bb b/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd_git.bb
index 05e06a2..85add50 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd_git.bb
@@ -12,12 +12,12 @@
 "
 
 SRCREV_FORMAT = "openocd"
-SRCREV_openocd = "d46f28c2ea2611f5fbbc679a5eed253d3dcd2fe3"
+SRCREV_openocd = "f342aac0845a69d591ad39a025d74e9c765f6420"
 SRCREV_git2cl = "8373c9f74993e218a08819cbcdbab3f3564bbeba"
 SRCREV_jimtcl = "0aa0fb4e3a38d38a49de9eb585d93d63a370dcf6"
 SRCREV_libjaylink = "9aa7a5957c07bb6e862fc1a6d3153d109c7407e4"
 
-PV = "0.10+gitr${SRCPV}"
+PV = "0.11+gitr${SRCPV}"
 S = "${WORKDIR}/git"
 
 inherit pkgconfig autotools-brokensep gettext
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.9.bb b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.9.bb
index f8a8755..e19d5dd 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.9.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.9.bb
@@ -214,6 +214,8 @@
 RDEPENDS_${PN}-modphp = "${PN} apache2"
 RDEPENDS_${PN}-opcache = "${PN}"
 
+ALLOW_EMPTY_${PN} = "1"
+
 INITSCRIPT_PACKAGES = "${PN}-fpm"
 inherit update-rc.d
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/ply/ply_git.bb b/meta-openembedded/meta-oe/recipes-devtools/ply/ply_git.bb
index 7d693b3..b1327ef 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/ply/ply_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/ply/ply_git.bb
@@ -5,11 +5,13 @@
 
 DEPENDS += "bison-native"
 
+PV = "2.1.1+git${SRCPV}"
+
 SRC_URI = "git://github.com/iovisor/ply"
-SRCREV = "aa5b9ac31307ec1acece818be334ef801c802a12"
+SRCREV = "e25c9134b856cc7ffe9f562ff95caf9487d16b59"
 
 S = "${WORKDIR}/git"
 
 inherit autotools-brokensep
 
-COMPATIBLE_HOST = "(x86_64.*|aarch64.*|arm.*|powerpc.*)-linux"
+COMPATIBLE_HOST = "(x86_64.*|aarch64.*|arm.*|powerpc)-linux"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/tclap/files/0001-tclap-add-pkg-config-file.patch b/meta-openembedded/meta-oe/recipes-devtools/tclap/files/0001-tclap-add-pkg-config-file.patch
new file mode 100644
index 0000000..58c9aec
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/tclap/files/0001-tclap-add-pkg-config-file.patch
@@ -0,0 +1,50 @@
+From 9d47d2fd45c455339759dbfe9a0d6fd24b0a0fa1 Mon Sep 17 00:00:00 2001
+From: Yi Zhao <yi.zhao@windriver.com>
+Date: Wed, 24 Mar 2021 15:39:36 +0800
+Subject: [PATCH] tclap: add pkg-config file
+
+The tclap switched from autotools to CMake in 1.4.0 and drop the
+pkg-config file tclap.pc. Some projects (e.g. ima-inspect) still require
+it. So add it back.
+
+Upstream-Status: Pending
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ CMakeLists.txt | 5 +++++
+ tclap.pc.in    | 7 +++++++
+ 2 files changed, 12 insertions(+)
+ create mode 100644 tclap.pc.in
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c2c9a26..b56eac7 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -25,6 +25,11 @@ install(FILES "${PROJECT_BINARY_DIR}/tclap/TCLAPConfig.h"
+   DESTINATION include/tclap
+   )
+ 
++configure_file(${CMAKE_CURRENT_SOURCE_DIR}/tclap.pc.in
++  ${CMAKE_CURRENT_BINARY_DIR}/tclap.pc @ONLY)
++install(FILES ${CMAKE_CURRENT_BINARY_DIR}/tclap.pc
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
++
+ add_subdirectory(docs)
+ add_subdirectory(examples)
+ add_subdirectory(tests)
+diff --git a/tclap.pc.in b/tclap.pc.in
+new file mode 100644
+index 0000000..ef51c94
+--- /dev/null
++++ b/tclap.pc.in
+@@ -0,0 +1,7 @@
++prefix=@CMAKE_INSTALL_PREFIX@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
++
++Name: tclap
++Description: Templatized C++ Command Line Parser
++Version: @PROJECT_VERSION@
++Cflags: -I${includedir}
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap/Makefile.am-disable-docs.patch b/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap/Makefile.am-disable-docs.patch
deleted file mode 100644
index 358cbef..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap/Makefile.am-disable-docs.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From c209ed0e7ffca32fe3714bad9cc54bdb00c286bb Mon Sep 17 00:00:00 2001
-From: Ting Liu <b28495@freescale.com>
-Date: Mon, 15 Apr 2013 16:28:37 +0800
-Subject: [PATCH] Makefile.am: disable docs
-
-Upstream-Status: Inappropriate [OE specific]
-
-docs need some generating tool (for example, doxygen) from host which may
-be not available. Disable it to avoid build issue.
-
-Signed-off-by: Ting Liu <b28495@freescale.com>
----
- Makefile.am |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 0a6ebc9..6b42f41 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -1,7 +1,7 @@
- 
- ACLOCAL_AMFLAGS = -I config
- 
--SUBDIRS = include examples docs tests msc config
-+SUBDIRS = include examples tests msc config
- 
- pkgconfigdir = $(libdir)/pkgconfig
- pkgconfig_DATA = $(PACKAGE).pc
--- 
-1.7.5
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.2.2.bb b/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.2.2.bb
deleted file mode 100644
index bba8d5c..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.2.2.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SUMMARY = "Templatized C++ Command Line Parser"
-HOMEPAGE = "http://tclap.sourceforge.net/"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=0ca8b9c5c5445cfa7af7e78fd27e60ed"
-
-SRCREV = "ec3ddcfe41b0544a4551a57439b6b3682fe31479"
-SRC_URI = "git://git.code.sf.net/p/tclap/code;branch=1.2 \
-    file://Makefile.am-disable-docs.patch \
-"
-
-S = "${WORKDIR}/git"
-inherit autotools
-
-ALLOW_EMPTY_${PN} = "1"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.4.0.bb b/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.4.0.bb
new file mode 100644
index 0000000..7c8224b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.4.0.bb
@@ -0,0 +1,23 @@
+SUMMARY = "Templatized C++ Command Line Parser"
+HOMEPAGE = "http://tclap.sourceforge.net/"
+DESCRIPTION = "TCLAP is a small, flexible library that provides a simple interface \
+for defining and accessing command line arguments. It was intially inspired by the \
+user friendly CLAP libary. The difference is that this library is templatized, so \
+the argument class is type independent. Type independence avoids identical-except-for-type \
+objects, such as IntArg, FloatArg, and StringArg. While the library is not strictly \
+compliant with the GNU or POSIX standards, it is close. \
+"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5c64b2e8cc50917b2744a90950faa7cd"
+
+SRCREV = "799a8b1f99818e39fee19d0601030770af1221e1"
+SRC_URI = "git://git.code.sf.net/p/tclap/code;branch=1.4 \
+           file://0001-tclap-add-pkg-config-file.patch \
+"
+
+S = "${WORKDIR}/git"
+inherit cmake
+
+ALLOW_EMPTY_${PN} = "1"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210117.bb b/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210319.bb
similarity index 88%
rename from meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210117.bb
rename to meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210319.bb
index 4f49fb9..5f16561 100644
--- a/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210117.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210319.bb
@@ -10,8 +10,8 @@
 
 SRC_URI = "ftp://ftp.invisible-island.net/${BPN}/${BP}.tgz \
           "
-SRC_URI[md5sum] = "c27db8bb67f71ee32ab1b54a3b3cebc3"
-SRC_URI[sha256sum] = "3c1ed08f44bcf6f159f2aa6fde765db94e8997b3eefb49d8b4c86691693c43e1"
+SRC_URI[md5sum] = "45a28836769d52c00c800fa3226c530d"
+SRC_URI[sha256sum] = "42c6c2b35dd6d1c6cf231238e3bd6d3b7af53fc279a1af547ab9890044d46652"
 
 # hardcoded here for use in dialog-static recipe
 S = "${WORKDIR}/dialog-${PV}"
diff --git a/meta-openembedded/meta-oe/recipes-extended/libbacktrace/libbacktrace_git.bb b/meta-openembedded/meta-oe/recipes-extended/libbacktrace/libbacktrace_git.bb
new file mode 100644
index 0000000..1f3cb97
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/libbacktrace/libbacktrace_git.bb
@@ -0,0 +1,30 @@
+# Copyright (C) 2021 Khem Raj <raj.khem@gmail.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+SUMMARY = "A C library that may be linked into a C/C++ program to produce symbolic backtraces"
+HOMEPAGE = "https://github.com/ianlancetaylor/libbacktrace"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=24b5b3feec63c4be0975e1fea5100440"
+
+DEPENDS += "libunwind"
+
+SRC_URI = "git://github.com/ianlancetaylor/libbacktrace;protocol=https"
+
+PV = "1.0+git${SRCPV}"
+SRCREV = "4f57c999716847e45505b3df170150876b545088"
+
+S = "${WORKDIR}/git"
+
+inherit autotools
+
+EXTR_OECONF += "--with-system-libunwind"
+
+CFLAGS += "-fPIC"
+
+do_configure() {
+    oe_runconf
+}
+
+# libunwind does not support RISCV yet
+COMPATIBLE_HOST_riscv64 = "null"
+COMPATIBLE_HOST_riscv32 = "null"
diff --git a/meta-openembedded/meta-oe/recipes-extended/libleak/libleak/0001-respect-environment-variables.patch b/meta-openembedded/meta-oe/recipes-extended/libleak/libleak/0001-respect-environment-variables.patch
new file mode 100644
index 0000000..bbdfa3c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/libleak/libleak/0001-respect-environment-variables.patch
@@ -0,0 +1,25 @@
+From ea3f11a7846ad27926c6eacc0534914f4873504f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 5 Mar 2021 19:30:09 -0800
+Subject: [PATCH] respect environment variables
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 1d70f17..c7e726e 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,5 +1,5 @@
+-CFLAGS = -g -O2 -Wall -fPIC -Ilibwuya
+-LDFLAGS = -Llibwuya
++CFLAGS += -g -O2 -Wall -fPIC -Ilibwuya
++LDFLAGS += -Llibwuya
+ 
+ libleak.so: libleak.o
+ 	CFLAGS='-fPIC' make -C libwuya
+-- 
+2.30.1
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/libleak/libleak_git.bb b/meta-openembedded/meta-oe/recipes-extended/libleak/libleak_git.bb
new file mode 100644
index 0000000..309553c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/libleak/libleak_git.bb
@@ -0,0 +1,38 @@
+# Copyright (C) 2021 Khem Raj <raj.khem@gmail.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+SUMMARY = "libleak detects memory leak by hooking memory functions (e.g. malloc) by LD_PRELOAD"
+HOMEPAGE = "https://github.com/WuBingzheng/libleak"
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://README.md;beginline=18;endline=21;md5=de4f705f12cdedbe452b2c3524572b03"
+
+DEPENDS += "libbacktrace"
+
+SRC_URI = "gitsm://github.com/WuBingzheng/libleak;protocol=https \
+           file://0001-respect-environment-variables.patch \
+          "
+
+PV = "1.0+git${SRCPV}"
+SRCREV = "ea2bb608ae25701692269a37d39d77e966b887ac"
+
+S = "${WORKDIR}/git"
+
+do_configure () {
+	:
+}
+
+do_compile () {
+	oe_runmake
+}
+
+do_install () {
+	install -Dm 0755 ${B}/libleak.so ${D}${libdir}/libleak.so
+}
+
+FILES_SOLIBSDEV = ""
+
+FILES_${PN} += "${libdir}/libleak.so"
+
+# libunwind does not support RISCV yet
+COMPATIBLE_HOST_riscv64 = "null"
+COMPATIBLE_HOST_riscv32 = "null"
diff --git a/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-tools_0.10.5.bb b/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-tools_0.10.5.bb
index 04f82d2..6009cd0 100644
--- a/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-tools_0.10.5.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-tools_0.10.5.bb
@@ -7,6 +7,8 @@
 
 inherit ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "setuptools", "", d)}
 
+PNBLACKLIST[openlmi-tools] ?= "${@bb.utils.contains('I_SWEAR_TO_MIGRATE_TO_PYTHON3', 'yes', '', 'python2 is out of support for long time, read https://www.python.org/doc/sunset-python-2/ https://python3statement.org/ and if you really have to temporarily use this, then set I_SWEAR_TO_MIGRATE_TO_PYTHON3 to "yes"', d)}"
+
 DEPENDS = "python-native python-pywbem-native python-m2crypto python-pywbem"
 
 SRC_URI = "http://fedorahosted.org/released/${BPN}/${BP}.tar.gz \
diff --git a/meta-openembedded/meta-oe/recipes-extended/rsyslog/librelp_1.6.0.bb b/meta-openembedded/meta-oe/recipes-extended/rsyslog/librelp_1.10.0.bb
similarity index 70%
rename from meta-openembedded/meta-oe/recipes-extended/rsyslog/librelp_1.6.0.bb
rename to meta-openembedded/meta-oe/recipes-extended/rsyslog/librelp_1.10.0.bb
index f3933f9..6a1f880 100644
--- a/meta-openembedded/meta-oe/recipes-extended/rsyslog/librelp_1.6.0.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/rsyslog/librelp_1.10.0.bb
@@ -6,10 +6,10 @@
 
 DEPENDS = "gmp nettle libidn zlib gnutls openssl"
 
-SRC_URI = "git://github.com/rsyslog/librelp.git;protocol=https \
+SRC_URI = "git://github.com/rsyslog/librelp.git;protocol=https;branch=stable \
 "
 
-SRCREV = "fe366f3770320cbe76bac7e84b26a48491d14531"
+SRCREV = "9e749453d51d602d8159717f8a7c27971dcb4c6c"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig/0001-Fix-build-with-musl-backtrace-APIs-are-glibc-specifi.patch b/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig/0001-Fix-build-with-musl-backtrace-APIs-are-glibc-specifi.patch
deleted file mode 100644
index cb80611..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig/0001-Fix-build-with-musl-backtrace-APIs-are-glibc-specifi.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 290703a5d21f34ea5ec23efc815a9f4df241e7e8 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 23 Oct 2015 00:33:32 -0700
-Subject: [PATCH] Fix build with musl, backtrace() APIs are glibc specific
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- userspace/libsinsp/utils.cpp | 4 +++-
- userspace/libsinsp/utils.h   | 2 +-
- 2 files changed, 4 insertions(+), 2 deletions(-)
-
---- a/userspace/libsinsp/utils.cpp
-+++ b/userspace/libsinsp/utils.cpp
-@@ -22,7 +22,7 @@ limitations under the License.
- #include <limits.h>
- #include <stdlib.h>
- #include <sys/time.h>
--#ifndef CYGWING_AGENT
-+#if !defined(CYGWING_AGENT) || defined(__GLIBC__)
- #include <execinfo.h>
- #endif
- #include <unistd.h>
-@@ -780,6 +780,7 @@ bool sinsp_utils::glob_match(const char
- 
- #ifndef CYGWING_AGENT
- #ifndef _WIN32
-+#ifdef __GLIBC__
- void sinsp_utils::bt(void)
- {
- 	static const char start[] = "BACKTRACE ------------";
-@@ -801,6 +802,7 @@ void sinsp_utils::bt(void)
- 
- 	free(bt_syms);
- }
-+#endif // Glibc
- #endif // _WIN32
- #endif // CYGWING_AGENT
- 
---- a/userspace/libsinsp/utils.h
-+++ b/userspace/libsinsp/utils.h
-@@ -104,7 +104,7 @@ public:
- 
- 	static bool glob_match(const char *pattern, const char *string);
- 
--#ifndef _WIN32
-+#if not defined(_WIN32) && defined(__GLIBC__)
- 	//
- 	// Print the call stack
- 	//
diff --git a/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig/fix-uint64-const.patch b/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig/fix-uint64-const.patch
deleted file mode 100644
index 5c75629..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig/fix-uint64-const.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Fix x86 build
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
---- a/userspace/libsinsp/cgroup_limits.cpp
-+++ b/userspace/libsinsp/cgroup_limits.cpp
-@@ -9,7 +9,7 @@ namespace {
- // This reports extremely large values (e.g. almost-but-not-quite 9EiB as set by k8s) as unlimited.
- // Note: we use the same maximum value for cpu shares/quotas as well; the typical values are much lower
- // and so should never exceed CGROUP_VAL_MAX either
--constexpr const int64_t CGROUP_VAL_MAX = (1UL << 42u) - 1;
-+constexpr const int64_t CGROUP_VAL_MAX = (1ULL << 42u) - 1;
- 
- /**
-  * \brief Read a single int64_t value from cgroupfs
diff --git a/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig_git.bb b/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig_git.bb
index 04a022a..d9da190 100644
--- a/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig_git.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig_git.bb
@@ -15,24 +15,21 @@
 JIT_riscv64 = ""
 JIT_riscv32 = ""
 
-DEPENDS += "lua${JIT} zlib c-ares grpc-native grpc curl ncurses jsoncpp tbb jq openssl elfutils protobuf protobuf-native jq-native"
+DEPENDS += "libb64 lua${JIT} zlib c-ares grpc-native grpc curl ncurses jsoncpp tbb jq openssl elfutils protobuf protobuf-native jq-native"
 RDEPENDS_${PN} = "bash"
 
 SRC_URI = "git://github.com/draios/sysdig.git;branch=dev \
            file://0001-fix-build-with-LuaJIT-2.1-betas.patch \
-           file://0001-Fix-build-with-musl-backtrace-APIs-are-glibc-specifi.patch \
-           file://fix-uint64-const.patch \
            file://aarch64.patch \
           "
-SRCREV = "8daeef8da752c5f07f439391bc20c5948eb11470"
-PV = "0.26.6"
+SRCREV = "67833b2aca06bd9d11cff7cb29f04fbf4ef96cad"
+PV = "0.27.1"
 
 S = "${WORKDIR}/git"
 
 EXTRA_OECMAKE = "\
                 -DBUILD_DRIVER=OFF \
                 -DUSE_BUNDLED_DEPS=OFF \
-                -DUSE_BUNDLED_B64=ON \
                 -DCREATE_TEST_TARGETS=OFF \
                 -DDIR_ETC=${sysconfdir} \
                 -DLUA_INCLUDE_DIR=${STAGING_INCDIR}/luajit-2.1 \
diff --git a/meta-openembedded/meta-oe/recipes-extended/tmate/tmate_2.4.0.bb b/meta-openembedded/meta-oe/recipes-extended/tmate/tmate_2.4.0.bb
new file mode 100644
index 0000000..df534dd
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/tmate/tmate_2.4.0.bb
@@ -0,0 +1,17 @@
+SUMMARY = "Instant terminal sharing"
+DESCRIPTION = "Tmate is a fork of tmux. It provides an instant pairing solution."
+AUTHOR = "Marius Kriegerowski <marius.kriegerowski@gmail.com>"
+HOMEPAGE = "https://tmate.io/"
+LICENSE = "ISC"
+LIC_FILES_CHKSUM = "file://COPYING;md5=f7d9aab84ec6567139a4755c48d147fb"
+
+DEPENDS_append = " libevent libssh msgpack-c ncurses"
+SRC_URI = "\
+    git://github.com/tmate-io/tmate.git;protocol=https \
+"
+
+SRCREV = "5e00bfa5e137e76c81888727712ced2b3fd99f5b"
+
+S = "${WORKDIR}/git"
+
+inherit pkgconfig autotools
diff --git a/meta-openembedded/meta-oe/recipes-extended/zstd/zstd/0001-Fix-legacy-build-after-2103.patch b/meta-openembedded/meta-oe/recipes-extended/zstd/zstd/0001-Fix-legacy-build-after-2103.patch
deleted file mode 100644
index c701554..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/zstd/zstd/0001-Fix-legacy-build-after-2103.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 93cec0c1d6d0be8dd3a9d01d3e7f2099f1728df7 Mon Sep 17 00:00:00 2001
-From: Orivej Desh <orivej@gmx.fr>
-Date: Fri, 22 May 2020 12:48:02 +0000
-Subject: [PATCH] Fix legacy build after #2103
-
-Upstream-Status: Backport
-Signed-of-by: Alex Kiernan <alex.kiernan@gmail.com>
----
- lib/legacy/zstd_v04.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/legacy/zstd_v04.c b/lib/legacy/zstd_v04.c
-index 56bf45222498..19fda8980abf 100644
---- a/lib/legacy/zstd_v04.c
-+++ b/lib/legacy/zstd_v04.c
-@@ -74,7 +74,7 @@ extern "C" {
- /*-*************************************
- *  Debug
- ***************************************/
--#include "debug.h"
-+#include "../common/debug.h"
- #ifndef assert
- #  define assert(condition) ((void)0)
- #endif
--- 
-2.17.1
-
diff --git a/meta-openembedded/meta-oe/recipes-extended/zstd/zstd_1.4.5.bb b/meta-openembedded/meta-oe/recipes-extended/zstd/zstd_1.4.5.bb
deleted file mode 100644
index d0cc625..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/zstd/zstd_1.4.5.bb
+++ /dev/null
@@ -1,39 +0,0 @@
-SUMMARY = "Zstandard - Fast real-time compression algorithm"
-DESCRIPTION = "Zstandard is a fast lossless compression algorithm, targeting \
-real-time compression scenarios at zlib-level and better compression ratios. \
-It's backed by a very fast entropy stage, provided by Huff0 and FSE library."
-HOMEPAGE = "http://www.zstd.net/"
-SECTION = "console/utils"
-
-LICENSE = "BSD-3-Clause & GPLv2"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=c7f0b161edbe52f5f345a3d1311d0b32 \
-                    file://COPYING;md5=39bba7d2cf0ba1036f2a6e2be52fe3f0"
-
-inherit lib_package
-
-SRC_URI = "git://github.com/facebook/zstd.git;nobranch=1 \
-           file://0001-Fix-legacy-build-after-2103.patch \
-           "
-
-SRCREV = "b706286adbba780006a47ef92df0ad7a785666b6"
-UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
-
-S = "${WORKDIR}/git"
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[lz4] = "HAVE_LZ4=1,HAVE_LZ4=0,lz4"
-PACKAGECONFIG[lzma] = "HAVE_LZMA=1,HAVE_LZMA=0,xz"
-PACKAGECONFIG[zlib] = "HAVE_ZLIB=1,HAVE_ZLIB=0,zlib"
-
-# See programs/README.md for how to use this
-ZSTD_LEGACY_SUPPORT ??= "4"
-
-do_compile () {
-    oe_runmake ${PACKAGECONFIG_CONFARGS} ZSTD_LEGACY_SUPPORT=${ZSTD_LEGACY_SUPPORT}
-}
-
-do_install () {
-    oe_runmake install 'DESTDIR=${D}'
-}
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.1.15.bb b/meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.3.0.bb
similarity index 90%
rename from meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.1.15.bb
rename to meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.3.0.bb
index c545993..d677d24 100644
--- a/meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.1.15.bb
+++ b/meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.3.0.bb
@@ -6,7 +6,7 @@
     git://github.com/hughsie/libxmlb.git \
     file://run-ptest \
 "
-SRCREV = "ee4aafdd97844f1c73021a4978a43460f0835d5c"
+SRCREV = "8f2f28eda419dbe31cb1a9aa022f0ca9d30ecb6a"
 S = "${WORKDIR}/git"
 
 inherit gobject-introspection gtk-doc meson ptest-gnome
diff --git a/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.104.bb b/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.108.bb
similarity index 85%
rename from meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.104.bb
rename to meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.108.bb
index 6c22f0e..d9b6886 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.104.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.108.bb
@@ -7,8 +7,8 @@
 
 SRC_URI = "http://gtkwave.sourceforge.net/${BP}.tar.gz"
 
-SRC_URI[md5sum] = "23879689ecf7e2cdd2cd5a91c5c601da"
-SRC_URI[sha256sum] = "d20dd1a9307b908439c68122a9f81d3ff434a6bfa5439f0cb01398fec650894f"
+SRC_URI[md5sum] = "dd40f09f44d7aed937e63c29b63cd3af"
+SRC_URI[sha256sum] = "ece447340442e7ad029713789552e8392b75dd3808c882ac5193d42fce55eb3b"
 
 inherit pkgconfig autotools gettext texinfo mime mime-xdg
 DEPENDS += "tcl tk gperf-native bzip2 xz pango zlib gtk+ gdk-pixbuf glib-2.0"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/jasper/jasper_2.0.25.bb b/meta-openembedded/meta-oe/recipes-graphics/jasper/jasper_2.0.26.bb
similarity index 92%
rename from meta-openembedded/meta-oe/recipes-graphics/jasper/jasper_2.0.25.bb
rename to meta-openembedded/meta-oe/recipes-graphics/jasper/jasper_2.0.26.bb
index 0bad670..de28af8 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/jasper/jasper_2.0.25.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/jasper/jasper_2.0.26.bb
@@ -4,7 +4,7 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=a80440d1d8f17d041c71c7271d6e06eb"
 
 SRC_URI = "git://github.com/jasper-software/jasper.git;protocol=https"
-SRCREV = "9092dcb7f7680204ef523c73eb6132162b4358e3"
+SRCREV = "5083b949f0caa5bc6257cd81162a33c15bf8a1d1"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg_2.4.0.bb b/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg_2.4.0.bb
index 8e264bf..62aa4b4 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg_2.4.0.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg_2.4.0.bb
@@ -19,3 +19,5 @@
 EXTRA_OECMAKE += "-DOPENJPEG_INSTALL_LIB_DIR=${@d.getVar('baselib').replace('/', '')}"
 
 FILES_${PN} += "${libdir}/openjpeg*"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_362.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_366.bb
similarity index 91%
rename from meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_362.bb
rename to meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_366.bb
index 2bbcd92..969159b 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_362.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_366.bb
@@ -8,8 +8,8 @@
            file://0001-Add-configure-time-check-for-setsid.patch \
           "
 
-SRC_URI[md5sum] = "ee6710bbbe18000236c6e6d7b55b54d5"
-SRC_URI[sha256sum] = "1d4ffe226fa8f021859bbc3007788ff63a46a31242d9bd9a7bd7ebe24e81aca2"
+SRC_URI[sha256sum] = "858b2885963fe97e712739066aadc1baeba2b33a0016303a7fec7d38bc73bf6e"
+
 PACKAGECONFIG ?= ""
 PACKAGECONFIG[xft] = "--enable-freetype,--disable-freetype,libxft fontconfig freetype-native"
 
diff --git a/meta-openembedded/meta-oe/recipes-kernel/bpftool/bpftool.bb b/meta-openembedded/meta-oe/recipes-kernel/bpftool/bpftool.bb
index 1758430..f0696db 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/bpftool/bpftool.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/bpftool/bpftool.bb
@@ -9,12 +9,22 @@
 
 do_populate_lic[depends] += "virtual/kernel:do_patch"
 
-EXTRA_OEMAKE = "V=1 -C ${S}/tools/bpf/bpftool O=${B} CROSS=${TARGET_PREFIX} CC="${CC}" LD="${LD}" AR=${AR} ARCH=${ARCH}"
+EXTRA_OEMAKE = "\
+    V=1 \
+    -C ${S}/tools/bpf/bpftool \
+    O=${B} \
+    CROSS=${TARGET_PREFIX} \
+    CC="${CC} ${DEBUG_PREFIX_MAP} -fdebug-prefix-map=${STAGING_KERNEL_DIR}=${KERNEL_SRC_PATH}" \
+    LD="${LD}" \
+    AR=${AR} \
+    ARCH=${ARCH} \
+"
 
 SECURITY_CFLAGS = ""
 
 do_configure[depends] += "virtual/kernel:do_shared_workdir"
 
+COMPATIBLE_HOST = "(x86_64).*-linux"
 COMPATIBLE_HOST_libc-musl = 'null'
 
 do_compile() {
@@ -32,4 +42,3 @@
 }
 
 B = "${WORKDIR}/${BPN}-${PV}"
-PNBLACKLIST[bpftool] ?= "Needs forward porting to kernel 5.2+"
diff --git a/meta-openembedded/meta-oe/recipes-kernel/libbpf/libbpf_0.3.bb b/meta-openembedded/meta-oe/recipes-kernel/libbpf/libbpf_0.3.bb
index 5714ddb..57e8376 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/libbpf/libbpf_0.3.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/libbpf/libbpf_0.3.bb
@@ -10,6 +10,8 @@
 
 DEPENDS = "zlib elfutils"
 
+do_compile[depends] += "virtual/kernel:do_shared_workdir"
+
 SRC_URI = "git://github.com/libbpf/libbpf.git;protocol=https"
 SRCREV = "051a4009f94d5633a8f734ca4235f0a78ee90469"
 
@@ -23,6 +25,8 @@
 
 EXTRA_OEMAKE += "DESTDIR=${D} LIBDIR=${libdir}"
 
+inherit pkgconfig
+
 do_compile() {
 	if grep -q "CONFIG_BPF_SYSCALL=y" ${STAGING_KERNEL_BUILDDIR}/.config
 	then
@@ -40,5 +44,3 @@
 		bbnote "no files to install"
 	fi
 }
-
-BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Fix-build-with-musl.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Fix-build-with-musl.patch
new file mode 100644
index 0000000..6119122
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Fix-build-with-musl.patch
@@ -0,0 +1,55 @@
+From 5ed9bda8baf7465172a99ff86ed7f46397b06c7f Mon Sep 17 00:00:00 2001
+From: Andrew Savchenko <bircoph@gmail.com>
+Date: Sat, 5 Sep 2020 14:41:30 +0300
+Subject: [PATCH 01/10] Fix build with musl
+
+--Signature=_Sat__5_Sep_2020_14_41_30_+0300_B.qpPPwu83bbA.32
+Content-Type: text/plain; charset=US-ASCII
+Content-Disposition: inline
+Content-Transfer-Encoding: quoted-printable
+
+When musl is used instead of glibc, oprofile build fails because it
+uses glibc-specific FTW extension: FTW_ACTIONRETVAL for custom
+__delete_old_previous_sample_data return codes and FTW_STOP,
+FTW_CONTINUE for such return codes. Musl supports only POSIX ftw, so
+build fails.
+
+However, this extension is not really needed by oprofile, because
+FTW_SKIP_* are not used and {FTW_STOP,FTW_CONTINUE} can be handled
+by standard return codes {1,0} (more precisely standard defines
+{!0,0}, but in glibc FTW_STOP = 1, so I keep this value).
+
+Upstream-Status: Backport [https://sourceforge.net/p/oprofile/oprofile/ci/5ed9bda8baf7465172a99ff86ed7f46397b06c7f/]
+Signed-off-by: Andrew Savchenko <bircoph@gmail.com>
+---
+ pe_profiling/operf.cpp | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/pe_profiling/operf.cpp b/pe_profiling/operf.cpp
+index 06a0ea3c..00834409 100644
+--- a/pe_profiling/operf.cpp
++++ b/pe_profiling/operf.cpp
+@@ -860,9 +860,9 @@ static int __delete_old_previous_sample_data(const char *fpath,
+ {
+ 	if (remove(fpath)) {
+ 		perror("sample data removal error");
+-		return FTW_STOP;
++		return 1;
+ 	} else {
+-		return FTW_CONTINUE;
++		return 0;
+ 	}
+ }
+ 
+@@ -897,7 +897,7 @@ static void convert_sample_data(void)
+ 		return;
+ 
+ 	if (!operf_options::append) {
+-                int flags = FTW_DEPTH | FTW_ACTIONRETVAL;
++		int flags = FTW_DEPTH;
+ 		errno = 0;
+ 		if (nftw(previous_sampledir.c_str(), __delete_old_previous_sample_data, 32, flags) !=0 &&
+ 				errno != ENOENT) {
+-- 
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Use-new-bfd-APIs-from-2.34.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Use-new-bfd-APIs-from-2.34.patch
deleted file mode 100644
index faf56d1..0000000
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Use-new-bfd-APIs-from-2.34.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-From 34745fb066a266ae6bbb15d08466d4d2cb6a2110 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 20 Feb 2020 08:11:04 -0800
-Subject: [PATCH] Use new bfd APIs from 2.34+
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- libutil++/bfd_support.cpp | 10 +++++-----
- opjitconv/create_bfd.c    |  6 +++---
- 2 files changed, 8 insertions(+), 8 deletions(-)
-
-diff --git a/libutil++/bfd_support.cpp b/libutil++/bfd_support.cpp
-index fa904839..e53a1530 100644
---- a/libutil++/bfd_support.cpp
-+++ b/libutil++/bfd_support.cpp
-@@ -137,7 +137,7 @@ static bool get_build_id(bfd * ibfd, unsigned char * build_id)
- 		}
- 	}
- 
--	bfd_size_type buildid_sect_size = bfd_section_size(ibfd, sect);
-+	bfd_size_type buildid_sect_size = bfd_section_size(sect);
- 	char * contents = (char *) xmalloc(buildid_sect_size);
- 	errno = 0;
- 	if (!bfd_get_section_contents(ibfd, sect,
-@@ -188,7 +188,7 @@ bool get_debug_link_info(bfd * ibfd, string & filename, unsigned long & crc32)
- 	if (sect == NULL)
- 		return false;
- 	
--	bfd_size_type debuglink_size = bfd_section_size(ibfd, sect);  
-+	bfd_size_type debuglink_size = bfd_section_size(sect);  
- 	char * contents = (char *) xmalloc(debuglink_size);
- 	cverb << vbfd
- 	      << ".gnu_debuglink section has size " << debuglink_size << endl;
-@@ -346,7 +346,7 @@ void fixup_linenr(bfd * abfd, asection * section, asymbol ** syms,
- 	// first restrict the search on a sensible range of vma, 16 is
- 	// an intuitive value based on epilog code look
- 	size_t max_search = 16;
--	size_t section_size = bfd_section_size(abfd, section);
-+	size_t section_size = bfd_section_size(section);
- 	if (pc + max_search > section_size)
- 		max_search = section_size - pc;
- 
-@@ -819,10 +819,10 @@ find_nearest_line(bfd_info const & b, op_bfd_symbol const & sym,
- 	else
- 		pc = (sym.value() + offset) - sym.filepos();
- 
--	if ((bfd_get_section_flags(abfd, section) & SEC_ALLOC) == 0)
-+	if ((bfd_section_flags(section) & SEC_ALLOC) == 0)
- 		goto fail;
- 
--	if (pc >= bfd_section_size(abfd, section))
-+	if (pc >= bfd_section_size(section))
- 		goto fail;
- 
- 	ret = bfd_find_nearest_line(abfd, section, syms, pc, &cfilename,
-diff --git a/opjitconv/create_bfd.c b/opjitconv/create_bfd.c
-index 48db143b..5c0e9152 100644
---- a/opjitconv/create_bfd.c
-+++ b/opjitconv/create_bfd.c
-@@ -86,12 +86,12 @@ asection * create_section(bfd * abfd, char const * section_name,
- 		bfd_perror("bfd_make_section");
- 		goto error;
- 	}
--	bfd_set_section_vma(abfd, section, vma);
--	if (bfd_set_section_size(abfd, section, size) == FALSE) {
-+	bfd_set_section_vma(section, vma);
-+	if (bfd_set_section_size(section, size) == FALSE) {
- 		bfd_perror("bfd_set_section_size");
- 		goto error;
- 	}
--	if (bfd_set_section_flags(abfd, section, flags) == FALSE) {
-+	if (bfd_set_section_flags(section, flags) == FALSE) {
- 		bfd_perror("bfd_set_section_flags");
- 		goto error;
- 	}
--- 
-2.25.1
-
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0002-Fix-configure-when-bin-sh-is-not-bash.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0002-Fix-configure-when-bin-sh-is-not-bash.patch
new file mode 100644
index 0000000..2ffdc8a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0002-Fix-configure-when-bin-sh-is-not-bash.patch
@@ -0,0 +1,40 @@
+From 91bedd280b8a3fb4665db627559abba960be4212 Mon Sep 17 00:00:00 2001
+From: Andrew Savchenko <bircoph@gmail.com>
+Date: Sat, 5 Sep 2020 14:40:07 +0300
+Subject: [PATCH 02/10] Fix configure when /bin/sh is not bash
+
+--Signature=_Sat__5_Sep_2020_14_40_08_+0300_w+XY/NnD8_G.Kd1s
+Content-Type: text/plain; charset=US-ASCII
+Content-Disposition: inline
+Content-Transfer-Encoding: quoted-printable
+
+When /bin/sh used by autoconf is not bash, e.g. dash, configure
+fails because it uses bash-specific equality operator "==".
+
+Fix this problem by replacing "==" with POSIX "=" which is
+sufficient for test where it is being used.
+
+Upstream-Status: Backport [https://sourceforge.net/p/oprofile/oprofile/ci/91bedd280b8a3fb4665db627559abba960be4212/]
+Signed-off-by: Andrew Savchenko <bircoph@gmail.com>
+---
+ configure.ac | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 05609f6e..f5fcd17d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -466,8 +466,8 @@ AX_COPY_IF_CHANGE(doc/xsl/catalog-1.xml, doc/xsl/catalog.xml)
+ 
+ if ! test "x$enable_account_check" = "xyes"; then
+ 	:
+-elif test "`getent passwd oprofile 2>/dev/null`" == "" || \
+-     test "`getent group oprofile 2>/dev/null`" == ""; then
++elif test "`getent passwd oprofile 2>/dev/null`" = "" || \
++     test "`getent group oprofile 2>/dev/null`" = ""; then
+ 	if test `id -u` != "0"; then
+ 		echo "Warning: The user account 'oprofile:oprofile' does not exist on the system."
+ 		echo "         To profile JITed code, this special user account must exist."
+-- 
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0003-Define-the-C-preprocessor-variable-to-improve-reprod.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0003-Define-the-C-preprocessor-variable-to-improve-reprod.patch
new file mode 100644
index 0000000..923c39a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0003-Define-the-C-preprocessor-variable-to-improve-reprod.patch
@@ -0,0 +1,30 @@
+From 864e02eab12cdc523b2dcd3f7b87a27abc16eefc Mon Sep 17 00:00:00 2001
+From: Viktor Kleinik <vkleinik@cisco.com>
+Date: Sun, 7 Mar 2021 17:07:44 +0000
+Subject: [PATCH 03/10] Define the C preprocessor variable to improve reproducibility
+
+Define the C preprocessor variable BUILD_DATE, which can be used
+as source for reproducible build date in case when
+SOURCE_DATE_EPOCH environment variable is set.
+
+Upstream-Status: Backport [https://sourceforge.net/p/oprofile/oprofile/ci/864e02eab12cdc523b2dcd3f7b87a27abc16eefc/]
+Signed-off-by: Viktor Kleinik <vkleinik@cisco.com>
+---
+ configure.ac | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/configure.ac b/configure.ac
+index f5fcd17d..dc447f89 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -31,6 +31,7 @@ if test -n "$SOURCE_DATE_EPOCH" ; then
+ fi
+ dnl for the man page
+ DATE="`date $dateopt '+%a %d %B %Y'`"
++AC_DEFINE_UNQUOTED([BUILD_DATE], ["$DATE"], [Use reproducible build date])
+ AC_SUBST(DATE)
+ 
+ # Since we should not permanently alter user environment variables, we'll
+-- 
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0004-Use-BUILD_DATE-to-improve-reproducibility.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0004-Use-BUILD_DATE-to-improve-reproducibility.patch
new file mode 100644
index 0000000..0fcca2b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0004-Use-BUILD_DATE-to-improve-reproducibility.patch
@@ -0,0 +1,63 @@
+From 7bef5b905abe36adfd4e4cc16bc830376f50e8f6 Mon Sep 17 00:00:00 2001
+From: Viktor Kleinik <vkleinik@cisco.com>
+Date: Sun, 7 Mar 2021 17:22:26 +0000
+Subject: [PATCH 04/10] Use BUILD_DATE to improve reproducibility
+
+The C preprocessor variable BUILD_DATE contains the actual
+build date or some reproducible value. It depends on whether
+SOURCE_DATE_EPOCH environment variable was set previously or not.
+In this way, reproducibility can be improved when needed.
+
+Upstream-Status: Backport [https://sourceforge.net/p/oprofile/oprofile/ci/864e02eab12cdc523b2dcd3f7b87a27abc16eefc/]
+Signed-off-by: Viktor Kleinik <vkleinik@cisco.com>
+---
+ libutil/op_version.c   | 2 +-
+ pe_counting/ocount.cpp | 4 ++--
+ pe_profiling/operf.cpp | 4 ++--
+ 3 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/libutil/op_version.c b/libutil/op_version.c
+index 99a844e4..a257e9c4 100644
+--- a/libutil/op_version.c
++++ b/libutil/op_version.c
+@@ -19,6 +19,6 @@ void show_version(char const * app_name)
+ {
+ 	/* Do not change the version format: it is documented in html doc */
+ 	printf("%s: " PACKAGE " " VERSION " compiled on "
+-	       __DATE__ " " __TIME__ "\n", app_name);
++	       BUILD_DATE "\n", app_name);
+ 	exit(EXIT_SUCCESS);
+ }
+diff --git a/pe_counting/ocount.cpp b/pe_counting/ocount.cpp
+index 2470745d..ae89fe61 100644
+--- a/pe_counting/ocount.cpp
++++ b/pe_counting/ocount.cpp
+@@ -660,8 +660,8 @@ static int _process_ocount_and_app_args(int argc, char * const argv[])
+ 			__print_usage_and_exit(NULL);
+ 			break;
+ 		case 'v':
+-			cout << argv[0] << ": " << PACKAGE << " " << VERSION << " compiled on " << __DATE__
+-			     << " " << __TIME__ << endl;
++			cout << argv[0] << ": " << PACKAGE << " " << VERSION << " compiled on "
++			     << BUILD_DATE << endl;
+ 			exit(EXIT_SUCCESS);
+ 			break;
+ 		default:
+diff --git a/pe_profiling/operf.cpp b/pe_profiling/operf.cpp
+index 00834409..f0f9c209 100644
+--- a/pe_profiling/operf.cpp
++++ b/pe_profiling/operf.cpp
+@@ -1342,8 +1342,8 @@ static int _process_operf_and_app_args(int argc, char * const argv[])
+ 			__print_usage_and_exit(NULL);
+ 			break;
+ 		case 'v':
+-			cout << argv[0] << ": " << PACKAGE << " " << VERSION << " compiled on " << __DATE__
+-			     << " " << __TIME__ << endl;
++			cout << argv[0] << ": " << PACKAGE << " " << VERSION << " compiled on "
++			     << BUILD_DATE << endl;
+ 			exit(EXIT_SUCCESS);
+ 			break;
+ 		default:
+-- 
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-NIOS2-architecture.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0005-Add-rmb-definition-for-NIOS2-architecture.patch
similarity index 72%
rename from meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-NIOS2-architecture.patch
rename to meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0005-Add-rmb-definition-for-NIOS2-architecture.patch
index ae8562a..0fd850f 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-NIOS2-architecture.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0005-Add-rmb-definition-for-NIOS2-architecture.patch
@@ -1,19 +1,20 @@
-From 34b0d9b1a32fb404a30327a7ae8931c7c75583bf Mon Sep 17 00:00:00 2001
+From 3539d2ab392d3a3eecffeddac989016063b23713 Mon Sep 17 00:00:00 2001
 From: Marek Vasut <marex@denx.de>
 Date: Tue, 9 Feb 2016 02:00:29 +0100
-Subject: [PATCH] Add rmb() definition for NIOS2 architecture
+Subject: [PATCH 05/10] Add rmb() definition for NIOS2 architecture
 
 Signed-off-by: Marek Vasut <marex@denx.de>
 Upstream-Status: Submitted [ http://marc.info/?l=oprofile-list&m=145501915931874&w=2 ]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
 ---
  libperf_events/operf_utils.h | 5 +++++
  1 file changed, 5 insertions(+)
 
 diff --git a/libperf_events/operf_utils.h b/libperf_events/operf_utils.h
-index 32954cc..8270e53 100644
+index 8afdbc22..8e17213e 100644
 --- a/libperf_events/operf_utils.h
 +++ b/libperf_events/operf_utils.h
-@@ -178,6 +178,11 @@ void op_release_resources(void);
+@@ -173,6 +173,11 @@ void op_release_resources(void);
  #define cpu_relax()	asm volatile("" ::: "memory")
  #endif
  
@@ -26,5 +27,5 @@
  #include <asm/unistd.h>
  #define rmb()		__insn_mf()
 -- 
-2.7.0
+2.31.0
 
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-replace-sym_iterator-0-with-sym_iterator.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0006-replace-sym_iterator-0-with-sym_iterator.patch
similarity index 96%
rename from meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-replace-sym_iterator-0-with-sym_iterator.patch
rename to meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0006-replace-sym_iterator-0-with-sym_iterator.patch
index 5fd23f8..a8371f0 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-replace-sym_iterator-0-with-sym_iterator.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0006-replace-sym_iterator-0-with-sym_iterator.patch
@@ -1,7 +1,7 @@
-From b7c1a2e2b0f4657fe291324ca409224f3321c9ff Mon Sep 17 00:00:00 2001
+From b126134f68f4a5bd826141be68337ac15a7c2c04 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Tue, 12 Feb 2019 11:58:34 -0800
-Subject: [PATCH] replace (sym_iterator)0 with sym_iterator()
+Subject: [PATCH 06/10] replace (sym_iterator)0 with sym_iterator()
 
 clang/libc++ find this error
 
@@ -20,7 +20,7 @@
  1 file changed, 13 insertions(+), 13 deletions(-)
 
 diff --git a/libpp/xml_utils.cpp b/libpp/xml_utils.cpp
-index 3de41e5..f45d3ae 100644
+index 3de41e58..f45d3ae2 100644
 --- a/libpp/xml_utils.cpp
 +++ b/libpp/xml_utils.cpp
 @@ -73,7 +73,7 @@ void dump_symbol(string const & prefix, sym_iterator it, bool want_nl = true)
@@ -127,5 +127,5 @@
  		string module = get_image_name((*it)->image_name,
  			image_name_storage::int_filename, extra_found_images);
 -- 
-2.20.1
+2.31.0
 
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0007-oprofile-doesn-t-want-GNU-levels-of-automake-strictn.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0007-oprofile-doesn-t-want-GNU-levels-of-automake-strictn.patch
new file mode 100644
index 0000000..5f9ff1b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0007-oprofile-doesn-t-want-GNU-levels-of-automake-strictn.patch
@@ -0,0 +1,23 @@
+From fd35c343e67ca47f76d0769fce2881d5f7a027a9 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 18 Mar 2021 00:48:34 -0700
+Subject: [PATCH 07/10] oprofile doesn't want GNU-levels of automake strictness
+ so tell it to be "foreign".
+
+Upstream-Status: Pending
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -13,7 +13,7 @@ AC_PREREQ(2.13)
+ 
+ AC_INIT([OProfile], [1.4.0])
+ AC_CONFIG_SRCDIR([libop/op_config.h])
+-AM_INIT_AUTOMAKE
++AM_INIT_AUTOMAKE([foreign])
+ AC_CONFIG_HEADERS(config.h)
+ 
+ AC_CHECK_DECLS([basename], [], [], [[#include <libgen.h>]])
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0008-include-linux-limits.h-for-MAX_INPUT.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0008-include-linux-limits.h-for-MAX_INPUT.patch
new file mode 100644
index 0000000..32e79a0
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0008-include-linux-limits.h-for-MAX_INPUT.patch
@@ -0,0 +1,30 @@
+From 33e945f31fee2d74a392eb79025c9477e12b590d Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 18 Mar 2021 00:49:48 -0700
+Subject: [PATCH 08/10] include linux/limits.h for MAX_INPUT
+
+Fixes
+op_pe_utils.cpp:533:19: error: 'MAX_INPUT' was not declared in this scope
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ libpe_utils/op_pe_utils.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/libpe_utils/op_pe_utils.cpp b/libpe_utils/op_pe_utils.cpp
+index 1ca4ce3a..c5d16a56 100644
+--- a/libpe_utils/op_pe_utils.cpp
++++ b/libpe_utils/op_pe_utils.cpp
+@@ -11,6 +11,7 @@
+  *
+  */
+ 
++#include <linux/limits.h>
+ #include <linux/perf_event.h>
+ #include <dirent.h>
+ #include <stdio.h>
+-- 
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/oprofile-cross-compile-tests.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0009-Prevent-running-check-tests-on-host-if-cross-compili.patch
similarity index 79%
rename from meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/oprofile-cross-compile-tests.patch
rename to meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0009-Prevent-running-check-tests-on-host-if-cross-compili.patch
index aefa954..e47882c 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/oprofile-cross-compile-tests.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0009-Prevent-running-check-tests-on-host-if-cross-compili.patch
@@ -1,4 +1,7 @@
-Prevent running check tests on host if cross compiling
+From 3a942cfd7d2e92667313e189930f7d1733cf40d4 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 18 Mar 2021 00:59:20 -0700
+Subject: [PATCH 09/10] Prevent running check tests on host if cross compiling
 
 This patch enables running the 'make check' tests on the target
 in a cross-compiled environment. If not cross-compiling, then 'make
@@ -18,12 +21,21 @@
 Upstream-Status: Pending
 
 Signed-off-by: Dave Lerner <dave.lerner@windriver.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac                | 1 +
+ libdb/tests/Makefile.am     | 2 ++
+ libop/tests/Makefile.am     | 2 ++
+ libregex/tests/Makefile.am  | 2 ++
+ libutil++/tests/Makefile.am | 4 ++++
+ libutil/tests/Makefile.am   | 2 ++
+ 6 files changed, 13 insertions(+)
 
 diff --git a/configure.ac b/configure.ac
-index 41ece64..ce5a16f 100644
+index 520b18ed..108a84e4 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -392,6 +392,7 @@ AC_ARG_ENABLE(account-check,
+@@ -386,6 +386,7 @@ AC_ARG_ENABLE(account-check,
  	enable_account_check=$enableval, enable_account_check=yes)
  
  AM_CONDITIONAL(CHECK_ACCOUNT, test "x$enable_account_check" = "xyes")
@@ -32,7 +44,7 @@
  AC_SUBST(OP_CFLAGS)
  AC_SUBST(OP_CXXFLAGS)
 diff --git a/libdb/tests/Makefile.am b/libdb/tests/Makefile.am
-index 8a69003..d820090 100644
+index 8a69003f..c933baf6 100644
 --- a/libdb/tests/Makefile.am
 +++ b/libdb/tests/Makefile.am
 @@ -13,4 +13,6 @@ check_PROGRAMS = db_test
@@ -43,7 +55,7 @@
  TESTS = ${check_PROGRAMS}
 +endif
 diff --git a/libop/tests/Makefile.am b/libop/tests/Makefile.am
-index 8a79eb5..6d417c4 100644
+index 8a79eb5d..6b90e997 100644
 --- a/libop/tests/Makefile.am
 +++ b/libop/tests/Makefile.am
 @@ -33,4 +33,6 @@ load_events_files_tests_LDADD = ${COMMON_LIBS}
@@ -54,7 +66,7 @@
  TESTS = ${check_PROGRAMS} utf8_checker.sh
 +endif
 diff --git a/libregex/tests/Makefile.am b/libregex/tests/Makefile.am
-index 6f19838..1d176f9 100644
+index 6f19838f..43e84946 100644
 --- a/libregex/tests/Makefile.am
 +++ b/libregex/tests/Makefile.am
 @@ -18,4 +18,6 @@ java_test_LDADD = \
@@ -65,7 +77,7 @@
  TESTS = ${check_PROGRAMS}
 +endif
 diff --git a/libutil++/tests/Makefile.am b/libutil++/tests/Makefile.am
-index 51af031..a01ea2d 100644
+index 51af0313..dd63fbe2 100644
 --- a/libutil++/tests/Makefile.am
 +++ b/libutil++/tests/Makefile.am
 @@ -1,7 +1,9 @@
@@ -86,7 +98,7 @@
  TESTS = ${check_PROGRAMS}
 +endif
 diff --git a/libutil/tests/Makefile.am b/libutil/tests/Makefile.am
-index dfcd6ec..e8831b5 100644
+index dfcd6eca..d8b51892 100644
 --- a/libutil/tests/Makefile.am
 +++ b/libutil/tests/Makefile.am
 @@ -12,4 +12,6 @@ file_tests_LDADD = ../libutil.a
@@ -96,3 +108,6 @@
 +if ! CROSS_COMPILE
  TESTS = ${check_PROGRAMS}
 +endif
+-- 
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/root-home-dir.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0010-oprofile-Determine-the-root-home-directory-dynamical.patch
similarity index 76%
rename from meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/root-home-dir.patch
rename to meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0010-oprofile-Determine-the-root-home-directory-dynamical.patch
index 3eaf6a7..03ee515 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/root-home-dir.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0010-oprofile-Determine-the-root-home-directory-dynamical.patch
@@ -1,4 +1,7 @@
-oprofile: Determine the root home directory dynamically
+From 60fb7579bac738809b1776dbcd95ccacf7413c57 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 18 Mar 2021 01:02:49 -0700
+Subject: [PATCH 10/10] oprofile: Determine the root home directory dynamically
 
 This commit detects the root home directory dynamically with changes to
 the oprofile gui app source.
@@ -11,27 +14,13 @@
 Upstream-Status: Inappropriate [OE specific]
 
 Signed-off-by: Dave Lerner <dave.lerner@windriver.com>
+---
+ doc/oprofile.xml | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
 
-Index: oprofile-1.0.0/doc/oprofile.html
-===================================================================
---- oprofile-1.0.0.orig/doc/oprofile.html	2014-11-03 17:55:31.511034857 +0000
-+++ oprofile-1.0.0/doc/oprofile.html	2014-11-03 17:57:26.415037988 +0000
-@@ -1563,8 +1563,8 @@
- 		<span class="emphasis"><em>must</em></span> stop it in a controlled manner in order to process
- 		the profile data it has collected.  Use <code class="code">kill -SIGINT &lt;operf-PID&gt;</code>
- 		for this purpose. It is recommended that when running <span class="command"><strong>operf</strong></span>
--		with this option, your current working directory should be <code class="filename">/root</code> or a subdirectory
--		of <code class="filename">/root</code> to avoid storing sample data files in locations accessible by regular users.
-+		with this option, your current working directory should be <code class="filename">~root</code> or a subdirectory
-+		of <code class="filename">~root</code> to avoid storing sample data files in locations accessible by regular users.
- 		</p>
-               </dd>
-               <dt>
-Index: oprofile-1.0.0/doc/oprofile.xml
-===================================================================
---- oprofile-1.0.0.orig/doc/oprofile.xml	2014-11-03 17:55:31.515034857 +0000
-+++ oprofile-1.0.0/doc/oprofile.xml	2014-11-03 17:58:03.719039005 +0000
-@@ -654,8 +654,8 @@
+--- a/doc/oprofile.xml
++++ b/doc/oprofile.xml
+@@ -647,8 +647,8 @@ Following is a description of the <comma
  		<emphasis>must</emphasis> stop it in a controlled manner in order to process
  		the profile data it has collected.  Use <code>kill -SIGINT &lt;operf-PID&gt;</code>
  		for this purpose. It is recommended that when running <command>operf</command>
@@ -42,3 +31,16 @@
  		</para></listitem>
  	</varlistentry>
  	<varlistentry>
+--- a/doc/oprofile.html
++++ b/doc/oprofile.html
+@@ -1552,8 +1552,8 @@ Following is a description of the <span
+ 		<span class="emphasis"><em>must</em></span> stop it in a controlled manner in order to process
+ 		the profile data it has collected.  Use <code class="code">kill -SIGINT &lt;operf-PID&gt;</code>
+ 		for this purpose. It is recommended that when running <span class="command"><strong>operf</strong></span>
+-		with this option, your current working directory should be <code class="filename">/root</code> or a subdirectory
+-		of <code class="filename">/root</code> to avoid storing sample data files in locations accessible by regular users.
++		with this option, your current working directory should be <code class="filename">~root</code> or a subdirectory
++		of <code class="filename">~root</code> to avoid storing sample data files in locations accessible by regular users.
+ 		</p>
+               </dd>
+               <dt>
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/automake-foreign.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/automake-foreign.patch
deleted file mode 100644
index b9bb6c5..0000000
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/automake-foreign.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-oprofile doesn't want GNU-levels of automake strictness so tell it to be "foreign".
-
-Upstream-Status: Pending
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-diff --git a/configure.ac b/configure.ac
-index 5740585..cf6c316 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -16 +16 @@ AC_CONFIG_SRCDIR([libop/op_config.h])
--AM_INIT_AUTOMAKE
-+AM_INIT_AUTOMAKE([foreign])
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/musl.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/musl.patch
deleted file mode 100644
index 51db408..0000000
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/musl.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-Fix glibc-isms so that oprofile builds with musl.
-
-Patch taken from openwrt (https://github.com/openwrt-mirror/openwrt/blob/master/package/devel/oprofile/patches/100-musl.patch)
-
-Upstream-Status: Pending
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
---- a/pe_profiling/operf.cpp
-+++ b/pe_profiling/operf.cpp
-@@ -857,11 +857,14 @@ static int __delete_old_previous_sample_
-                                 int tflag  __attribute__((unused)),
-                                 struct FTW *ftwbuf __attribute__((unused)))
- {
-+	int err;
-+
- 	if (remove(fpath)) {
-+		err = errno;
- 		perror("sample data removal error");
--		return FTW_STOP;
-+		return err;
- 	} else {
--		return FTW_CONTINUE;
-+		return 0;
- 	}
- }
- 
-@@ -896,7 +899,7 @@ static void convert_sample_data(void)
- 		return;
- 
- 	if (!operf_options::append) {
--                int flags = FTW_DEPTH | FTW_ACTIONRETVAL;
-+                int flags = FTW_DEPTH;
- 		errno = 0;
- 		if (nftw(previous_sampledir.c_str(), __delete_old_previous_sample_data, 32, flags) !=0 &&
- 				errno != ENOENT) {
---- a/libop/op_events.c
-+++ b/libop/op_events.c
-@@ -83,7 +83,7 @@ static int parse_hex(char const * str)
- static u64 parse_long_hex(char const * str)
- {
- 	u64 value;
--	if (sscanf(str, "%Lx", &value) != 1)
-+	if (sscanf(str, "0x%llx", &value) != 1)
- 		parse_error("expected long hexadecimal value");
- 
- 	fflush(stderr);
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.3.0.bb b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.3.0.bb
deleted file mode 100644
index 8242a83..0000000
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.3.0.bb
+++ /dev/null
@@ -1,13 +0,0 @@
-require oprofile.inc
-
-COMPATIBLE_HOST_riscv64 = "null"
-COMPATIBLE_HOST_riscv32 = "null"
-
-DEPENDS_append_powerpc64 = " libpfm4"
-DEPENDS_append_powerpc64le = " libpfm4"
-
-SRC_URI[md5sum] = "bd998df5521ebedae31e71cd3fb6200b"
-SRC_URI[sha256sum] = "95ded8bde1ec39922f0af015981a67aec63e025a501e4dc04cd65d38f73647e6"
-
-S = "${WORKDIR}/oprofile-${PV}"
-
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile.inc b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.4.0.bb
similarity index 67%
rename from meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile.inc
rename to meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.4.0.bb
index 0e1e2ed..7a18446 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile.inc
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.4.0.bb
@@ -11,28 +11,31 @@
 SECTION = "devel"
 
 DEPENDS = "popt binutils"
-RDEPENDS_${PN} = "binutils-symlinks"
+DEPENDS_append_powerpc64 = " libpfm4"
+DEPENDS_append_powerpc64le = " libpfm4"
 
-FILES_${PN} = "${bindir} ${libdir}/${BPN}/lib*${SOLIBS} ${datadir}/${BPN}"
-FILES_${PN}-dev += "${libdir}/${BPN}/lib*${SOLIBSDEV} ${libdir}/${BPN}/lib*.la"
-FILES_${PN}-staticdev += "${libdir}/${BPN}/lib*.a"
+COMPATIBLE_HOST_riscv64 = "null"
+COMPATIBLE_HOST_riscv32 = "null"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \
            file://acinclude.m4 \
-           file://automake-foreign.patch \
-           file://oprofile-cross-compile-tests.patch \
            file://run-ptest \
-           file://root-home-dir.patch \
-           file://0001-Add-rmb-definition-for-NIOS2-architecture.patch \
-           file://0001-replace-sym_iterator-0-with-sym_iterator.patch \
-           file://0001-Use-new-bfd-APIs-from-2.34.patch \
+           file://0001-Fix-build-with-musl.patch \
+           file://0002-Fix-configure-when-bin-sh-is-not-bash.patch \
+           file://0003-Define-the-C-preprocessor-variable-to-improve-reprod.patch \
+           file://0004-Use-BUILD_DATE-to-improve-reproducibility.patch \
+           file://0005-Add-rmb-definition-for-NIOS2-architecture.patch \
+           file://0006-replace-sym_iterator-0-with-sym_iterator.patch \
+           file://0007-oprofile-doesn-t-want-GNU-levels-of-automake-strictn.patch \
+           file://0008-include-linux-limits.h-for-MAX_INPUT.patch \
+           file://0009-Prevent-running-check-tests-on-host-if-cross-compili.patch \
+           file://0010-oprofile-Determine-the-root-home-directory-dynamical.patch \
 "
+SRC_URI[sha256sum] = "7ba06f99d7c188389d20d1d5e53ee690c7733f87aa9af62bd664fa0ca235a412"
+
 UPSTREAM_CHECK_REGEX = "oprofile-(?P<pver>\d+(\.\d+)+)/"
 UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/oprofile/files/oprofile/"
 
-SRC_URI_append_libc-musl = " file://musl.patch \
-"
-
 inherit autotools pkgconfig ptest
 
 EXTRA_OECONF = "--with-kernel=${STAGING_DIR_HOST}${prefix} --without-x ac_cv_prog_XSLTPROC="
@@ -64,3 +67,9 @@
 	cp ${S}/libutil++/tests/file_manip_tests.cpp \
 		libutil++/tests/file_manip_tests.o ${D}${PTEST_PATH}/libutil++/tests
 }
+
+RDEPENDS_${PN} = "binutils-symlinks"
+
+FILES_${PN} = "${bindir} ${libdir}/${BPN}/lib*${SOLIBS} ${datadir}/${BPN}"
+FILES_${PN}-dev += "${libdir}/${BPN}/lib*${SOLIBSDEV} ${libdir}/${BPN}/lib*.la"
+FILES_${PN}-staticdev += "${libdir}/${BPN}/lib*.a"
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210129.bb b/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210322.bb
similarity index 96%
rename from meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210129.bb
rename to meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210322.bb
index 1e7a674..8913385 100644
--- a/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210129.bb
+++ b/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210322.bb
@@ -16,7 +16,7 @@
 # only latest live version stays on http://www.live555.com/liveMedia/public/, add mirror for older
 MIRRORS += "http://www.live555.com/liveMedia/public/ http://download.videolan.org/contrib/live555/ \n"
 
-SRC_URI[sha256sum] = "85ab8d4337d414482586089b6f64fc39af64ff4be5b51976b54b0e10dceb333b"
+SRC_URI[sha256sum] = "b451c7ded8becbfa239e8f4fbe69784413270fb4c5e9b2e74269247dc3dd2e59"
 
 S = "${WORKDIR}/live"
 
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb b/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb
index 973a978..171eef7 100644
--- a/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb
+++ b/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb
@@ -12,9 +12,6 @@
 LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://LICENSE.GPL;md5=91f1cb870c1cc2d31351a4d2595441cb"
 
-# While this item does not require it, it depends on ffmpeg which does
-LICENSE_FLAGS = "commercial"
-
 SRCREV_mpv = "70b991749df389bcc0a4e145b5687233a03b4ed7"
 SRC_URI = " \
     git://github.com/mpv-player/mpv;name=mpv \
@@ -26,6 +23,8 @@
 
 inherit waf pkgconfig mime-xdg
 
+LDFLAGS_append_riscv64 = " -latomic"
+
 LUA ?= "lua"
 LUA_mips64  = ""
 LUA_aarch64  = ""
@@ -112,3 +111,4 @@
     ${datadir}/zsh \
     ${datadir}/bash-completion \
     "
+EXCLUDE_FROM_WORLD = "${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "0", "1", d)}"
diff --git a/meta-openembedded/meta-oe/recipes-support/ceres-solver/ceres-solver_2.0.0.bb b/meta-openembedded/meta-oe/recipes-support/ceres-solver/ceres-solver_2.0.0.bb
index 28d0868..7feba4a 100644
--- a/meta-openembedded/meta-oe/recipes-support/ceres-solver/ceres-solver_2.0.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/ceres-solver/ceres-solver_2.0.0.bb
@@ -13,6 +13,14 @@
 
 inherit cmake
 
+do_configure_prepend() {
+    # otherwise https://github.com/ceres-solver/ceres-solver/blob/0b748597889f460764f6c980a00c6f502caa3875/cmake/AddGerritCommitHook.cmake#L68
+    # will try to fetch https://ceres-solver-review.googlesource.com/tools/hooks/commit-msg durind do_configure
+    # which sometimes gets stuck (as there is no TIMEOUT set in DOWNLOAD)
+    # and we really don't need Gerrit's Change-Id tags when just building this
+    touch ${S}/.git/hooks/commit-msg
+}
+
 # We don't want path to eigen3 in ceres-solver RSS to be
 # used by components which use CeresConfig.cmake from their
 # own RSS
diff --git a/meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.1.16.bb b/meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.1.18.bb
similarity index 66%
rename from meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.1.16.bb
rename to meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.1.18.bb
index 7bd6478..f3e7b8b 100644
--- a/meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.1.16.bb
+++ b/meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.1.18.bb
@@ -9,18 +9,21 @@
 "
 
 SRC_URI = "http://nice.freedesktop.org/releases/libnice-${PV}.tar.gz"
-SRC_URI[md5sum] = "5ad936c43d3c6d33117b2c64982f2fd9"
-SRC_URI[sha256sum] = "06b678066f94dde595a4291588ed27acd085ee73775b8c4e8399e28c01eeefdf"
+SRC_URI[sha256sum] = "5eabd25ba2b54e817699832826269241abaa1cf78f9b240d1435f936569273f4"
 
 DEPENDS = "glib-2.0 gnutls"
 
-PACKAGECONFIG ??= "gstreamer1.0"
-PACKAGECONFIG[gupnp] = "--enable-gupnp,--disable-gupnp,gupnp-igd"
-PACKAGECONFIG[gstreamer1.0] = "--with-gstreamer,--without-gstreamer,gstreamer1.0 gstreamer1.0-plugins-base"
+PACKAGECONFIG[gupnp] = "-Dgupnp=enabled,-Dgupnp=disabled,gupnp"
+PACKAGECONFIG[gstreamer] = "-Dgstreamer=enabled,-Dgstreamer=disabled,gstreamer1.0"
+PACKAGECONFIG[introspection] = "-Dintrospection=enabled,-Dintrospection=disabled,"
 
-inherit autotools pkgconfig gtk-doc gobject-introspection
+EXTRA_OEMESON = "-Dgstreamer=disabled"
 
-EXTRA_OECONF += "--without-gstreamer-0.10"
+GTKDOC_MESON_OPTION = "gtk_doc"
+GTKDOC_MESON_ENABLE_FLAG = "enabled"
+GTKDOC_MESON_DISABLE_FLAG = "disabled"
+
+inherit meson gtk-doc gobject-introspection
 
 FILES_${PN} += "${libdir}/gstreamer-1.0/*.so"
 FILES_${PN}-dev += "${libdir}/gstreamer-1.0/*.la"
diff --git a/meta-openembedded/meta-oe/recipes-support/fftw/fftw/club-libtool.patch b/meta-openembedded/meta-oe/recipes-support/fftw/fftw/club-libtool.patch
new file mode 100644
index 0000000..d4a1ef8
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/fftw/fftw/club-libtool.patch
@@ -0,0 +1,9 @@
+--- ./tests/Makefile.am.orig	2021-03-23 11:45:12.756371739 -0400
++++ ./tests/Makefile.am	2021-03-23 11:46:43.224132851 -0400
+@@ -1,5 +1,5 @@
+ AM_CPPFLAGS = -I $(top_srcdir)
+-noinst_PROGRAMS = bench
++bin_PROGRAMS = bench@PREC_SUFFIX@
+ EXTRA_DIST = check.pl README
+ 
+ if THREADS
diff --git a/meta-openembedded/meta-oe/recipes-support/fftw/fftw/install-bench.patch b/meta-openembedded/meta-oe/recipes-support/fftw/fftw/install-bench.patch
new file mode 100644
index 0000000..ef570b1
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/fftw/fftw/install-bench.patch
@@ -0,0 +1,41 @@
+--- ./tests/Makefile.am.orig	2021-03-23 11:45:12.756371739 -0400
++++ ./tests/Makefile.am	2021-03-23 19:29:19.692180793 -0400
+@@ -1,21 +1,21 @@
+ AM_CPPFLAGS = -I $(top_srcdir)
+-noinst_PROGRAMS = bench
++bin_PROGRAMS = bench@PREC_SUFFIX@
+ EXTRA_DIST = check.pl README
+ 
+ if THREADS
+-bench_CFLAGS = $(PTHREAD_CFLAGS)
++bench@PREC_SUFFIX@_CFLAGS = $(PTHREAD_CFLAGS)
+ if !COMBINED_THREADS
+ LIBFFTWTHREADS = $(top_builddir)/threads/libfftw3@PREC_SUFFIX@_threads.la
+ endif
+ else
+ if OPENMP
+-bench_CFLAGS = $(OPENMP_CFLAGS)
++bench@PREC_SUFFIX@_CFLAGS = $(OPENMP_CFLAGS)
+ LIBFFTWTHREADS = $(top_builddir)/threads/libfftw3@PREC_SUFFIX@_omp.la
+ endif
+ endif
+ 
+-bench_SOURCES = bench.c hook.c fftw-bench.c fftw-bench.h
+-bench_LDADD = $(LIBFFTWTHREADS)				\
++bench@PREC_SUFFIX@_SOURCES = bench.c hook.c fftw-bench.c fftw-bench.h
++bench@PREC_SUFFIX@_LDADD = $(LIBFFTWTHREADS)				\
+ $(top_builddir)/libfftw3@PREC_SUFFIX@.la		\
+ $(top_builddir)/libbench2/libbench2.a $(THREADLIBS)
+ 
+--- ./tools/Makefile.am.orig	2021-03-24 08:22:31.845581620 -0400
++++ ./tools/Makefile.am	2021-03-24 08:24:26.454053573 -0400
+@@ -24,7 +24,7 @@
+ endif
+ 
+ fftw@PREC_SUFFIX@_wisdom_SOURCES = fftw-wisdom.c
+-fftw@PREC_SUFFIX@_wisdom_LDADD = $(top_builddir)/tests/bench-bench.o	\
+-$(top_builddir)/tests/bench-fftw-bench.o $(LIBFFTWTHREADS)	\
++fftw@PREC_SUFFIX@_wisdom_LDADD = $(top_builddir)/tests/bench@PREC_SUFFIX@-bench.o	\
++$(top_builddir)/tests/bench@PREC_SUFFIX@-fftw-bench.o $(LIBFFTWTHREADS)	\
+ $(top_builddir)/libfftw3@PREC_SUFFIX@.la			\
+ $(top_builddir)/libbench2/libbench2.a $(THREADLIBS)
diff --git a/meta-openembedded/meta-oe/recipes-support/fftw/fftw/run-ptest b/meta-openembedded/meta-oe/recipes-support/fftw/fftw/run-ptest
new file mode 100644
index 0000000..6d8dd96
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/fftw/fftw/run-ptest
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+cd fftw
+/usr/bin/perl -w ./check.pl  -r -c=30 -v `pwd`/bench
+fftw_result=$?
+cd ../fftwf
+/usr/bin/perl -w ./check.pl  -r -c=30 -v `pwd`/benchf
+fftwf_result=$?
+cd ../fftwl
+/usr/bin/perl -w ./check.pl  -r -c=30 -v `pwd`/benchl
+fftwl_result=$?
+
+echo -n "fftw  test result:"
+if [ $fftw_result  = "0" ]; then
+	echo PASSED
+else
+	echo FAILED
+fi
+echo -n "fftwf test result:"
+if [ $fftwf_result = "0" ]; then
+	echo PASSED
+else
+	echo FAILED
+fi
+echo -n "fftwl test result:"
+if [ $fftwl_result = "0" ]; then
+	echo PASSED
+else
+	echo FAILED
+fi
diff --git a/meta-openembedded/meta-oe/recipes-support/fftw/fftw_3.3.8.bb b/meta-openembedded/meta-oe/recipes-support/fftw/fftw_3.3.8.bb
index d9e0ea3..de175d6 100644
--- a/meta-openembedded/meta-oe/recipes-support/fftw/fftw_3.3.8.bb
+++ b/meta-openembedded/meta-oe/recipes-support/fftw/fftw_3.3.8.bb
@@ -6,11 +6,13 @@
 SRC_URI = " \
     http://www.fftw.org/fftw-${PV}.tar.gz \
     file://0001-NEON-autodetection-segfaults-assume-neon-present.patch \
+    file://install-bench.patch \
+    file://run-ptest \
 "
 SRC_URI[md5sum] = "8aac833c943d8e90d51b697b27d4384d"
 SRC_URI[sha256sum] = "6113262f6e92c5bd474f2875fa1b01054c4ad5040f6b0da7c03c98821d9ae303"
 
-inherit autotools pkgconfig
+inherit autotools pkgconfig ptest
 
 # we had multiple recipes in the past
 PROVIDES = "fftwl fftwf"
@@ -65,6 +67,22 @@
     done
 }
 
+do_install_ptest() {
+    for lib in fftw fftwl fftwf; do
+        install -d ${D}${PTEST_PATH}/$lib
+        install -m 0755 ${S}/tests/check.pl ${D}${PTEST_PATH}/$lib
+        cd ${WORKDIR}/build-$lib
+        if [ $lib = "fftw" ]; then
+            mv ${D}${bindir}/bench ${D}${PTEST_PATH}/$lib
+        fi
+        if [ $lib = "fftwl" ]; then
+            mv ${D}${bindir}/benchl ${D}${PTEST_PATH}/$lib
+        fi
+        if [ $lib = "fftwf" ]; then
+            mv ${D}${bindir}/benchf ${D}${PTEST_PATH}/$lib
+        fi
+    done
+}
 
 PACKAGES =+ "libfftw libfftwl libfftwf"
 FILES_libfftw = "${libdir}/libfftw3.so.* ${libdir}/libfftw3_*.so.*"
@@ -79,5 +97,7 @@
 
 FILES_${PN}-dev += "${libdir}/cmake"
 RDEPENDS_${PN}-dev = "libfftw libfftwl libfftwf"
+RDEPENDS_${PN}-ptest += "perl"
+RDEPENDS_${PN}-ptest_remove = "fftw"
 
 BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-support/gd/gd_2.3.1.bb b/meta-openembedded/meta-oe/recipes-support/gd/gd_2.3.2.bb
similarity index 96%
rename from meta-openembedded/meta-oe/recipes-support/gd/gd_2.3.1.bb
rename to meta-openembedded/meta-oe/recipes-support/gd/gd_2.3.2.bb
index 60abe73..3789641 100644
--- a/meta-openembedded/meta-oe/recipes-support/gd/gd_2.3.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/gd/gd_2.3.2.bb
@@ -16,7 +16,7 @@
 SRC_URI = "git://github.com/libgd/libgd.git;branch=master \
           "
 
-SRCREV = "75ef79c9b013fb5eafd92710b3867827682fd52d"
+SRCREV = "2e40f55bfb460fc9d8cbcd290a0c9eb908d5af7e"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/glog/glog/0001-Find-Libunwind-during-configure.patch b/meta-openembedded/meta-oe/recipes-support/glog/glog/0001-Find-Libunwind-during-configure.patch
index 577007a..4c0861c 100644
--- a/meta-openembedded/meta-oe/recipes-support/glog/glog/0001-Find-Libunwind-during-configure.patch
+++ b/meta-openembedded/meta-oe/recipes-support/glog/glog/0001-Find-Libunwind-during-configure.patch
@@ -109,10 +109,11 @@
  install (EXPORT glog-targets NAMESPACE glog:: DESTINATION
 --- a/glog-config.cmake.in
 +++ b/glog-config.cmake.in
-@@ -8,4 +8,6 @@ include (CMakeFindDependencyMacro)
+@@ -8,4 +8,7 @@ include (CMakeFindDependencyMacro)
  
  @gflags_DEPENDENCY@
  
++list (APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}")
 +find_dependency (Libunwind)
 +
  include ("${CMAKE_CURRENT_LIST_DIR}/glog-targets.cmake")
diff --git a/meta-openembedded/meta-oe/recipes-support/glog/glog/libexecinfo.patch b/meta-openembedded/meta-oe/recipes-support/glog/glog/libexecinfo.patch
new file mode 100644
index 0000000..ae46d32
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/glog/glog/libexecinfo.patch
@@ -0,0 +1,29 @@
+Link libexecinfo if its found, this is needed for musl based systems
+
+Fixes
+ld: libglog.so.0.4.0: undefined reference to `backtrace'
+| collect2: error: ld returned 1 exit status
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -115,6 +115,7 @@ check_cxx_compiler_flag (-Wunnamed-type-
+ check_symbol_exists (snprintf stdio.h HAVE_SNPRINTF)
+ 
+ check_library_exists (dbghelp UnDecorateSymbolName "" HAVE_DBGHELP)
++check_library_exists (execinfo backtrace "" HAVE_EXECINFO)
+ 
+ find_package(Libunwind)
+ 
+@@ -471,6 +472,10 @@ if (Libunwind_FOUND)
+   target_link_libraries (glog PUBLIC unwind)
+ endif (Libunwind_FOUND)
+ 
++if (HAVE_EXECINFO)
++  target_link_libraries (glog PUBLIC execinfo)
++endif (HAVE_EXECINFO)
++
+ if (HAVE_DBGHELP)
+    target_link_libraries (glog PUBLIC dbghelp)
+ endif (HAVE_DBGHELP)
diff --git a/meta-openembedded/meta-oe/recipes-support/glog/glog_0.4.0.bb b/meta-openembedded/meta-oe/recipes-support/glog/glog_0.4.0.bb
index 8dc84e4..6b101ef 100644
--- a/meta-openembedded/meta-oe/recipes-support/glog/glog_0.4.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/glog/glog_0.4.0.bb
@@ -9,6 +9,7 @@
 SRC_URI = " \
     git://github.com/google/glog.git;nobranch=1 \
     file://0001-Find-Libunwind-during-configure.patch \
+    file://libexecinfo.patch \
 "
 
 SRCREV = "96a2f23dca4cc7180821ca5f32e526314395d26a"
@@ -20,8 +21,11 @@
 PACKAGECONFIG ?= "shared unwind"
 PACKAGECONFIG_remove_riscv64 = "unwind"
 PACKAGECONFIG_remove_riscv32 = "unwind"
+PACKAGECONFIG_append_libc-musl_riscv64 = " execinfo"
+PACKAGECONFIG_append_libc-musl_riscv32 = " execinfo"
 
 PACKAGECONFIG[unwind] = "-DWITH_UNWIND=ON,-DWITH_UNWIND=OFF,libunwind,libunwind"
+PACKAGECONFIG[execinfo] = ",,libexecinfo"
 PACKAGECONFIG[shared] = "-DBUILD_SHARED_LIBS=ON,-DBUILD_SHARED_LIBS=OFF,,"
 
 do_configure_append() {
diff --git a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-disbale-heap-checkers-and-debug-allocator-on-musl.patch b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-disbale-heap-checkers-and-debug-allocator-on-musl.patch
index ab3ceb9..e3e857f 100644
--- a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-disbale-heap-checkers-and-debug-allocator-on-musl.patch
+++ b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-disbale-heap-checkers-and-debug-allocator-on-musl.patch
@@ -11,11 +11,9 @@
  configure.ac | 2 ++
  1 file changed, 2 insertions(+)
 
-diff --git a/configure.ac b/configure.ac
-index 70b49a3..8154c5c 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -51,6 +51,8 @@ case "$host" in
+@@ -53,6 +53,8 @@ case "$host" in
     *-cygwin*) default_enable_heap_checker=no; default_enable_cpu_profiler=no;;
     *-freebsd*) default_enable_heap_checker=no;;
     *-darwin*) default_enable_heap_checker=no;;
@@ -23,4 +21,4 @@
 +            default_enable_debugalloc=no; default_enable_libunwind=no;
  esac
  
- # Currently only backtrace works on s390.
+ # Currently only backtrace works on s390 and OSX.
diff --git a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-fix-build-with-musl-libc.patch b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-fix-build-with-musl-libc.patch
index cb4ead3..baaaa4b 100644
--- a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-fix-build-with-musl-libc.patch
+++ b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-fix-build-with-musl-libc.patch
@@ -10,13 +10,11 @@
  src/malloc_hook_mmap_linux.h | 6 +++++-
  1 file changed, 5 insertions(+), 1 deletion(-)
 
-diff --git a/src/malloc_hook_mmap_linux.h b/src/malloc_hook_mmap_linux.h
-index e2efb05..66b3110 100644
 --- a/src/malloc_hook_mmap_linux.h
 +++ b/src/malloc_hook_mmap_linux.h
-@@ -46,6 +46,10 @@
- #include <errno.h>
- #include "base/linux_syscall_support.h"
+@@ -45,6 +45,10 @@
+ #include <sys/syscall.h>
+ #include <unistd.h>
  
 +#ifndef __GLIBC__
 +typedef off64_t   __off64_t;
@@ -25,7 +23,7 @@
  // The x86-32 case and the x86-64 case differ:
  // 32b has a mmap2() syscall, 64b does not.
  // 64b and 32b have different calling conventions for mmap().
-@@ -175,7 +179,7 @@ extern "C" void* mmap64(void *start, size_t length, int prot, int flags,
+@@ -175,7 +179,7 @@ extern "C" void* mmap64(void *start, siz
    return result;
  }
  
@@ -34,6 +32,3 @@
  
  extern "C" void* mmap(void *start, size_t length, int prot, int flags,
                        int fd, off_t offset) __THROW {
--- 
-2.17.1
-
diff --git a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-profile-handler-Specify-libc-specific-thread_id.patch b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-profile-handler-Specify-libc-specific-thread_id.patch
deleted file mode 100644
index 4029a69..0000000
--- a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-profile-handler-Specify-libc-specific-thread_id.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 0a504852ed6e56620d1df26b503c4aa2b5b74760 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 31 Oct 2020 16:12:36 -0700
-Subject: [PATCH] profile-handler: Specify libc specific thread_id
-
-We need to know internal _sigev_un is glibc specific, add an else for
-musl case
-
-Fixes build issue
-../git/src/profile-handler.cc:275:8: error: no member named '_sigev_un' in 'sigevent'
-  sevp._sigev_un._tid = sys_gettid();
-  ~~~~ ^
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/profile-handler.cc | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/src/profile-handler.cc b/src/profile-handler.cc
-index 7fdcb69..5867118 100644
---- a/src/profile-handler.cc
-+++ b/src/profile-handler.cc
-@@ -272,7 +272,11 @@ static void StartLinuxThreadTimer(int timer_type, int signal_number,
-   struct itimerspec its;
-   memset(&sevp, 0, sizeof(sevp));
-   sevp.sigev_notify = SIGEV_THREAD_ID;
-+#ifdef __GLIBC__
-   sevp._sigev_un._tid = sys_gettid();
-+#else
-+  sevp.sigev_notify_thread_id = sys_gettid();
-+#endif
-   sevp.sigev_signo = signal_number;
-   clockid_t clock = CLOCK_THREAD_CPUTIME_ID;
-   if (timer_type == ITIMER_REAL) {
--- 
-2.29.2
-
diff --git a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/disable_libunwind_aarch64.patch b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/disable_libunwind_aarch64.patch
index c3c5784..15eacc8 100644
--- a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/disable_libunwind_aarch64.patch
+++ b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/disable_libunwind_aarch64.patch
@@ -12,11 +12,9 @@
  configure.ac | 5 +++++
  1 file changed, 5 insertions(+)
 
-diff --git a/configure.ac b/configure.ac
-index 8154c5c..063b260 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -69,6 +69,11 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM(, [return __PPC64__])],
+@@ -76,6 +76,11 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM(, [re
                    [default_enable_libunwind=yes
                     default_tcmalloc_pagesize=8])
  
diff --git a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/ppc-musl.patch b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/ppc-musl.patch
new file mode 100644
index 0000000..4cf182a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/ppc-musl.patch
@@ -0,0 +1,66 @@
+Compatibility fixes for musl.
+
+--- a/m4/pc_from_ucontext.m4
++++ b/m4/pc_from_ucontext.m4
+@@ -34,6 +34,7 @@ AC_DEFUN([AC_PC_FROM_UCONTEXT],
+    pc_fields="$pc_fields uc_mcontext.arm_pc"           # Linux (arm arch 5)
+    pc_fields="$pc_fields uc_mcontext.cr0_hi"           # Linux (e2k)
+    pc_fields="$pc_fields uc_mcontext.gp_regs[[PT_NIP]]"  # Suse SLES 11 (ppc64)
++   pc_fields="$pc_fields uc_mcontext.gregs[[PT_NIP]]"
+    pc_fields="$pc_fields uc_mcontext.mc_eip"           # FreeBSD (i386)
+    pc_fields="$pc_fields uc_mcontext.mc_srr0"          # FreeBSD (powerpc, powerpc64)
+    pc_fields="$pc_fields uc_mcontext.mc_rip"           # FreeBSD (x86_64 [untested])
+@@ -77,7 +78,8 @@ AC_DEFUN([AC_PC_FROM_UCONTEXT],
+                         pc_field_found=true)
+        elif test "x$ac_cv_header_ucontext_h" = xyes; then
+          AC_TRY_COMPILE([#define _GNU_SOURCE 1
+-                         #include <ucontext.h>],
++                         #include <ucontext.h>
++                         #include <asm/ptrace.h>],
+                         [ucontext_t u; return u.$pc_field == 0;],
+                         AC_DEFINE_UNQUOTED(PC_FROM_UCONTEXT, $pc_field,
+                                            How to access the PC from a struct ucontext)
+--- a/src/getpc.h
++++ b/src/getpc.h
+@@ -68,6 +68,9 @@
+ typedef ucontext ucontext_t;
+ #endif
+ 
++#if defined(__powerpc__) && !defined(PT_NIP)
++#define PT_NIP 32
++#endif
+ 
+ // Take the example where function Foo() calls function Bar().  For
+ // many architectures, Bar() is responsible for setting up and tearing
+--- a/src/stacktrace_powerpc-linux-inl.h
++++ b/src/stacktrace_powerpc-linux-inl.h
+@@ -186,7 +186,7 @@ static int GET_STACK_TRACE_OR_FRAMES {
+           ucontext_t uc;
+         // We don't care about the rest, since the IP value is at 'uc' field.
+         } *sigframe = reinterpret_cast<signal_frame_64*>(current);
+-        result[n] = (void*) sigframe->uc.uc_mcontext.gp_regs[PT_NIP];
++        result[n] = (void*) sigframe->uc.uc_mcontext.gp_regs[32];
+       }
+ #else
+       if (sigtramp32_vdso && (sigtramp32_vdso == current->return_addr)) {
+@@ -196,7 +196,7 @@ static int GET_STACK_TRACE_OR_FRAMES {
+           mcontext_t mctx;
+           // We don't care about the rest, since IP value is at 'mctx' field.
+         } *sigframe = reinterpret_cast<signal_frame_32*>(current);
+-        result[n] = (void*) sigframe->mctx.gregs[PT_NIP];
++        result[n] = (void*) sigframe->mctx.gregs[32];
+       } else if (sigtramp32_rt_vdso && (sigtramp32_rt_vdso == current->return_addr)) {
+         struct rt_signal_frame_32 {
+           char dummy[64 + 16];
+@@ -204,7 +204,11 @@ static int GET_STACK_TRACE_OR_FRAMES {
+           ucontext_t uc;
+           // We don't care about the rest, since IP value is at 'uc' field.A
+         } *sigframe = reinterpret_cast<rt_signal_frame_32*>(current);
++#if defined(__GLIBC__)
+         result[n] = (void*) sigframe->uc.uc_mcontext.uc_regs->gregs[PT_NIP];
++#else
++        result[n] = (void*) sigframe->uc.uc_mcontext.gregs[32];
++#endif
+       }
+ #endif
+ 
diff --git a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/sgidef.patch b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/sgidef.patch
index 10274a6..b01cba3 100644
--- a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/sgidef.patch
+++ b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/sgidef.patch
@@ -10,8 +10,6 @@
  src/base/linux_syscall_support.h | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
-diff --git a/src/base/linux_syscall_support.h b/src/base/linux_syscall_support.h
-index 70431ca..b23ca59 100644
 --- a/src/base/linux_syscall_support.h
 +++ b/src/base/linux_syscall_support.h
 @@ -164,7 +164,7 @@ extern "C" {
diff --git a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.8.1.bb b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.9.1.bb
similarity index 72%
rename from meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.8.1.bb
rename to meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.9.1.bb
index 2a38608..bf8cb90 100644
--- a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.8.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.9.1.bb
@@ -1,18 +1,26 @@
 SUMMARY = "Fast, multi-threaded malloc() and nifty performance analysis tools"
 HOMEPAGE = "https://github.com/gperftools/gperftools"
+DESCRIPTION = "The gperftools, previously called google-perftools, package contains some \
+utilities to improve and analyze the performance of C++ programs. \
+Included are an optimized thread-caching malloc() and cpu and heap profiling utilities. \
+"
+
 LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "file://COPYING;md5=762732742c73dc6c7fbe8632f06c059a"
 
-SRCREV = "d8eb315fb18f6fb0d6efa923401f166343727bc6"
+DEPENDS_append_libc-musl = " libucontext"
+
+SRCREV = "f7c6fb6c8e99d6b1b725e5994373bcd19ffdf8fd"
 SRC_URI = "git://github.com/gperftools/gperftools \
            file://0001-Support-Atomic-ops-on-clang.patch \
            file://0001-fix-build-with-musl-libc.patch \
            file://0001-disbale-heap-checkers-and-debug-allocator-on-musl.patch \
            file://disable_libunwind_aarch64.patch \
            file://sgidef.patch \
-           file://0001-profile-handler-Specify-libc-specific-thread_id.patch \
            "
 
+SRC_URI_append_libc-musl = " file://ppc-musl.patch"
+
 inherit autotools
 
 S = "${WORKDIR}/git"
@@ -31,6 +39,7 @@
 ARM_INSTRUCTION_SET_armv5 = "arm"
 ARM_INSTRUCTION_SET_toolchain-clang_arm = "arm"
 
+EXTRA_OECONF_append_libc-musl_powerpc64le = " --disable-cpu-profiler --disable-heap-profiler --disable-heap-checker"
 PACKAGECONFIG ?= "libunwind static"
 PACKAGECONFIG_remove_arm_libc-musl = "libunwind"
 PACKAGECONFIG_remove_riscv64 = "libunwind"
@@ -44,7 +53,14 @@
 
 # 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} += " \
+    binutils \
+    curl \
+    perl-module-carp \
+    perl-module-cwd \
+    perl-module-getopt-long \
+    perl-module-overloading \
+    perl-module-posix \
+"
 
 RDEPENDS_${PN} += "libtcmalloc-minimal (= ${EXTENDPKGV})"
-
diff --git a/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0001-example-Do-not-run-the-tests.patch b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0001-example-Do-not-run-the-tests.patch
new file mode 100644
index 0000000..ea3ddfb
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0001-example-Do-not-run-the-tests.patch
@@ -0,0 +1,27 @@
+From 68f66d1583be670eb8d5f3f38dbd5dd1d63b733c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Mar 2021 21:41:04 -0700
+Subject: [PATCH] example: Do not run the tests
+
+Upstream-Status: Inappropritate [Cross-compile specific]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ examples/Makefile | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/examples/Makefile b/examples/Makefile
+index d9667a5..554b346 100644
+--- a/examples/Makefile
++++ b/examples/Makefile
+@@ -33,11 +33,8 @@ depend: $(SOURCES)
+ 	makedepend -f- $(CFLAGS) $(SOURCES) 2> /dev/null 1> depend
+ 
+ test-c-example1: c-example1
+-	./c-example1
+ 
+ test-c-example2: c-example2
+-	./c-example2 loremgibson.txt encoded.txt decoded.txt
+-	diff -q loremgibson.txt decoded.txt
+ 
+ test: test-c-example1 test-c-example2
+ 
diff --git a/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0002-use-BUFSIZ-as-buffer-size.patch b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0002-use-BUFSIZ-as-buffer-size.patch
new file mode 100644
index 0000000..10ec8e1
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0002-use-BUFSIZ-as-buffer-size.patch
@@ -0,0 +1,57 @@
+From ee03e265804a07a0da5028b86960031bd7ab86b2 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Mar 2021 22:01:13 -0700
+Subject: [PATCH] use BUFSIZ as buffer size
+
+Author: Jakub Wilk <jwilk@debian.org>
+Bug: http://sourceforge.net/tracker/?func=detail&atid=785907&aid=3591336&group_id=152942
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ include/b64/decode.h | 3 ++-
+ include/b64/encode.h | 3 ++-
+ 2 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/include/b64/decode.h b/include/b64/decode.h
+index 12b16ea..e9019f3 100644
+--- a/include/b64/decode.h
++++ b/include/b64/decode.h
+@@ -8,6 +8,7 @@ For details, see http://sourceforge.net/projects/libb64
+ #ifndef BASE64_DECODE_H
+ #define BASE64_DECODE_H
+ 
++#include <cstdio>
+ #include <iostream>
+ 
+ namespace base64
+@@ -22,7 +23,7 @@ namespace base64
+ 		base64_decodestate _state;
+ 		int _buffersize;
+ 
+-		decoder(int buffersize_in = BUFFERSIZE)
++		decoder(int buffersize_in = BUFSIZ)
+ 		: _buffersize(buffersize_in)
+ 		{}
+ 
+diff --git a/include/b64/encode.h b/include/b64/encode.h
+index 5d807d9..e7a7035 100644
+--- a/include/b64/encode.h
++++ b/include/b64/encode.h
+@@ -8,6 +8,7 @@ For details, see http://sourceforge.net/projects/libb64
+ #ifndef BASE64_ENCODE_H
+ #define BASE64_ENCODE_H
+ 
++#include <cstdio>
+ #include <iostream>
+ 
+ namespace base64
+@@ -22,7 +23,7 @@ namespace base64
+ 		base64_encodestate _state;
+ 		int _buffersize;
+ 
+-		encoder(int buffersize_in = BUFFERSIZE)
++		encoder(int buffersize_in = BUFSIZ)
+ 		: _buffersize(buffersize_in)
+ 		{}
+ 
diff --git a/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0003-fix-integer-overflows.patch b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0003-fix-integer-overflows.patch
new file mode 100644
index 0000000..8854bb6
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0003-fix-integer-overflows.patch
@@ -0,0 +1,77 @@
+From 7b30fbc3d47dfaf38d8ce8b8949a69d2984dac76 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Mar 2021 22:06:03 -0700
+Subject: [PATCH] fix integer overflows
+
+Author: Jakub Wilk <jwilk@debian.org>
+Bug: http://sourceforge.net/tracker/?func=detail&aid=3591129&group_id=152942&atid=785907
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/cdecode.c | 15 ++++++++-------
+ 1 file changed, 8 insertions(+), 7 deletions(-)
+
+diff --git a/src/cdecode.c b/src/cdecode.c
+index a6c0a42..4e47e9f 100644
+--- a/src/cdecode.c
++++ b/src/cdecode.c
+@@ -9,10 +9,11 @@ For details, see http://sourceforge.net/projects/libb64
+ 
+ int base64_decode_value(char value_in)
+ {
+-	static const char decoding[] = {62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-2,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51};
++	static const signed char decoding[] = {62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-2,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51};
+ 	static const char decoding_size = sizeof(decoding);
++	if (value_in < 43) return -1;
+ 	value_in -= 43;
+-	if (value_in < 0 || value_in >= decoding_size) return -1;
++	if (value_in > decoding_size) return -1;
+ 	return decoding[(int)value_in];
+ }
+ 
+@@ -26,7 +27,7 @@ int base64_decode_block(const char* code_in, const int length_in, char* plaintex
+ {
+ 	const char* codechar = code_in;
+ 	char* plainchar = plaintext_out;
+-	char fragment;
++	int fragment;
+ 	
+ 	*plainchar = state_in->plainchar;
+ 	
+@@ -42,7 +43,7 @@ int base64_decode_block(const char* code_in, const int length_in, char* plaintex
+ 					state_in->plainchar = *plainchar;
+ 					return plainchar - plaintext_out;
+ 				}
+-				fragment = (char)base64_decode_value(*codechar++);
++				fragment = base64_decode_value(*codechar++);
+ 			} while (fragment < 0);
+ 			*plainchar    = (fragment & 0x03f) << 2;
+ 	case step_b:
+@@ -53,7 +54,7 @@ int base64_decode_block(const char* code_in, const int length_in, char* plaintex
+ 					state_in->plainchar = *plainchar;
+ 					return plainchar - plaintext_out;
+ 				}
+-				fragment = (char)base64_decode_value(*codechar++);
++				fragment = base64_decode_value(*codechar++);
+ 			} while (fragment < 0);
+ 			*plainchar++ |= (fragment & 0x030) >> 4;
+ 			*plainchar    = (fragment & 0x00f) << 4;
+@@ -65,7 +66,7 @@ int base64_decode_block(const char* code_in, const int length_in, char* plaintex
+ 					state_in->plainchar = *plainchar;
+ 					return plainchar - plaintext_out;
+ 				}
+-				fragment = (char)base64_decode_value(*codechar++);
++				fragment = base64_decode_value(*codechar++);
+ 			} while (fragment < 0);
+ 			*plainchar++ |= (fragment & 0x03c) >> 2;
+ 			*plainchar    = (fragment & 0x003) << 6;
+@@ -77,7 +78,7 @@ int base64_decode_block(const char* code_in, const int length_in, char* plaintex
+ 					state_in->plainchar = *plainchar;
+ 					return plainchar - plaintext_out;
+ 				}
+-				fragment = (char)base64_decode_value(*codechar++);
++				fragment = base64_decode_value(*codechar++);
+ 			} while (fragment < 0);
+ 			*plainchar++   |= (fragment & 0x03f);
+ 		}
diff --git a/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0004-Fix-off-by-one-error.patch b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0004-Fix-off-by-one-error.patch
new file mode 100644
index 0000000..e19dbad
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0004-Fix-off-by-one-error.patch
@@ -0,0 +1,26 @@
+From 8144fd9e02bd5ccd1e080297b19a1e9eb4d3ff96 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Mar 2021 22:07:15 -0700
+Subject: [PATCH] Fix off by one error
+
+Launchpad bug #1501176 reported by William McCall on 2015-09-30
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/cdecode.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/cdecode.c b/src/cdecode.c
+index 4e47e9f..45da4e1 100644
+--- a/src/cdecode.c
++++ b/src/cdecode.c
+@@ -13,7 +13,7 @@ int base64_decode_value(char value_in)
+ 	static const char decoding_size = sizeof(decoding);
+ 	if (value_in < 43) return -1;
+ 	value_in -= 43;
+-	if (value_in > decoding_size) return -1;
++	if (value_in >= decoding_size) return -1;
+ 	return decoding[(int)value_in];
+ }
+ 
diff --git a/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0005-make-overriding-CFLAGS-possible.patch b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0005-make-overriding-CFLAGS-possible.patch
new file mode 100644
index 0000000..e93015e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0005-make-overriding-CFLAGS-possible.patch
@@ -0,0 +1,40 @@
+From a7914d5ffee6ffdfb3f2b8ebcc22c8367d078301 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Mar 2021 22:08:43 -0700
+Subject: [PATCH] make overriding CFLAGS possible
+
+Author: Jakub Wilk <jwilk@debian.org>
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ base64/Makefile | 2 +-
+ src/Makefile    | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/base64/Makefile b/base64/Makefile
+index 30a2c5c..783a248 100644
+--- a/base64/Makefile
++++ b/base64/Makefile
+@@ -3,7 +3,7 @@ BINARIES = base64
+ # Build flags (uncomment one)
+ #############################
+ # Release build flags
+-CFLAGS += -O3
++CFLAGS ?= -O3
+ #############################
+ # Debug build flags
+ #CFLAGS += -g
+diff --git a/src/Makefile b/src/Makefile
+index 28b2382..48801fc 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -3,7 +3,7 @@ LIBRARIES = libb64.a
+ # Build flags (uncomment one)
+ #############################
+ # Release build flags
+-CFLAGS += -O3
++CFLAGS ?= -O3
+ #############################
+ # Debug build flags
+ #CFLAGS += -g
diff --git a/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0006-do-not-export-the-CHARS_PER_LINE-variable.patch b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0006-do-not-export-the-CHARS_PER_LINE-variable.patch
new file mode 100644
index 0000000..9ba08c8
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0006-do-not-export-the-CHARS_PER_LINE-variable.patch
@@ -0,0 +1,27 @@
+From a1b9bb4af819ed389675f16e4a521efeda4cc3f3 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Mar 2021 22:10:48 -0700
+Subject: [PATCH] do not export the CHARS_PER_LINE variable
+
+The library exports a variable named "CHARS_PER_LINE". This is a generic name that could conflict with a name in user's code.
+Please either rename the variable or make it static.
+
+Upstream-Status: Submitted [http://sourceforge.net/tracker/?func=detail&aid=3591420&group_id=152942&atid=785907]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/cencode.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/cencode.c b/src/cencode.c
+index 03ba5b6..3df62a8 100644
+--- a/src/cencode.c
++++ b/src/cencode.c
+@@ -7,7 +7,7 @@ For details, see http://sourceforge.net/projects/libb64
+ 
+ #include <b64/cencode.h>
+ 
+-const int CHARS_PER_LINE = 72;
++static const int CHARS_PER_LINE = 72;
+ 
+ void base64_init_encodestate(base64_encodestate* state_in)
+ {
diff --git a/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0007-initialize-encoder-decoder-state-in-the-constructors.patch b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0007-initialize-encoder-decoder-state-in-the-constructors.patch
new file mode 100644
index 0000000..fdf8339
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0007-initialize-encoder-decoder-state-in-the-constructors.patch
@@ -0,0 +1,44 @@
+From c1ba44d83cc7d9d756cfb063717852eae9d03328 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Mar 2021 22:12:41 -0700
+Subject: [PATCH] initialize encoder/decoder state in the constructors
+
+Author: Jakub Wilk <jwilk@debian.org>
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ include/b64/decode.h | 4 +++-
+ include/b64/encode.h | 4 +++-
+ 2 files changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/include/b64/decode.h b/include/b64/decode.h
+index e9019f3..aefb7bc 100644
+--- a/include/b64/decode.h
++++ b/include/b64/decode.h
+@@ -25,7 +25,9 @@ namespace base64
+ 
+ 		decoder(int buffersize_in = BUFSIZ)
+ 		: _buffersize(buffersize_in)
+-		{}
++		{
++			base64_init_decodestate(&_state);
++		}
+ 
+ 		int decode(char value_in)
+ 		{
+diff --git a/include/b64/encode.h b/include/b64/encode.h
+index e7a7035..33848b3 100644
+--- a/include/b64/encode.h
++++ b/include/b64/encode.h
+@@ -25,7 +25,9 @@ namespace base64
+ 
+ 		encoder(int buffersize_in = BUFSIZ)
+ 		: _buffersize(buffersize_in)
+-		{}
++		{
++			base64_init_encodestate(&_state);
++		}
+ 
+ 		int encode(char value_in)
+ 		{
diff --git a/meta-openembedded/meta-oe/recipes-support/libb64/libb64_1.2.1.bb b/meta-openembedded/meta-oe/recipes-support/libb64/libb64_1.2.1.bb
new file mode 100644
index 0000000..64a34fe
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libb64/libb64_1.2.1.bb
@@ -0,0 +1,39 @@
+SUMMARY = "Base64 Encoding/Decoding Routines"
+DESCRIPTION = "base64 encoding/decoding library - runtime library \
+libb64 is a library of ANSI C routines for fast encoding/decoding data into \
+and from a base64-encoded format"
+HOMEPAGE = "http://libb64.sourceforge.net/"
+LICENSE = "PD"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=ce551aad762074c7ab618a0e07a8dca3"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}/${BP}.zip \
+           file://0001-example-Do-not-run-the-tests.patch \
+           file://0002-use-BUFSIZ-as-buffer-size.patch \
+           file://0003-fix-integer-overflows.patch \
+           file://0004-Fix-off-by-one-error.patch \
+           file://0005-make-overriding-CFLAGS-possible.patch \
+           file://0006-do-not-export-the-CHARS_PER_LINE-variable.patch \
+           file://0007-initialize-encoder-decoder-state-in-the-constructors.patch \
+           "
+SRC_URI[sha256sum] = "20106f0ba95cfd9c35a13c71206643e3fb3e46512df3e2efb2fdbf87116314b2"
+
+PARALLEL_MAKE = ""
+
+CFLAGS += "-fPIC"
+
+do_configure () {
+    :
+}
+
+do_compile () {
+    oe_runmake
+    ${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,${BPN}.so.0 src/*.o -o src/${BPN}.so.0
+}
+
+do_install () {
+    install -d ${D}${includedir}/b64
+    install -Dm 0644 ${B}/src/libb64.a ${D}${libdir}/libb64.a
+    install -Dm 0644 ${B}/src/libb64.so.0 ${D}${libdir}/libb64.so.0
+    ln -s libb64.so.0 ${D}${libdir}/libb64.so
+    install -Dm 0644 ${S}/include/b64/*.h ${D}${includedir}/b64/
+}
diff --git a/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.6.2.bb b/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.6.3.bb
similarity index 90%
rename from meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.6.2.bb
rename to meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.6.3.bb
index c6c262b..d9c2517 100644
--- a/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.6.2.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.6.3.bb
@@ -8,8 +8,8 @@
            file://run-ptest \
 "
 
-SRC_URI[md5sum] = "4765470becb619fead3cdaeac61b9a77"
-SRC_URI[sha256sum] = "c601e71846f5ab140c83bc757fdd62a4fda24a9cee39cc5e99c96ec2bf1b06a9"
+SRC_URI[md5sum] = "28e79f6f70fee1da9079558d8b7b3736"
+SRC_URI[sha256sum] = "841be9d788f00bab08ef22c4be5c39866f0e46cb100a3ae49ed816ac9c5dddc7"
 
 inherit autotools pkgconfig python3native ptest
 
diff --git a/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb b/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb
index b308bde..00c016d 100644
--- a/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb
@@ -12,13 +12,15 @@
 
 S = "${WORKDIR}/git"
 
-inherit cmake python3native systemd
+DISTUTILS_SETUP_PATH ?= "${B}/bindings/python/"
 
 DEPENDS = " \
     flex-native bison-native libaio \
     ${@bb.utils.contains('DISTRO_FEATURES', 'zeroconf', 'avahi', '', d)} \
 "
 
+inherit cmake python3native systemd setuptools3
+
 EXTRA_OECMAKE = " \
     -DCMAKE_BUILD_TYPE=RelWithDebInfo \
     -DUDEV_RULES_INSTALL_DIR=${nonarch_base_libdir}/udev/rules.d \
@@ -31,8 +33,6 @@
 PACKAGECONFIG[network_backend] = "-DWITH_NETWORK_BACKEND=ON,-DWITH_NETWORK_BACKEND=OFF,libxml2"
 PACKAGECONFIG[libiio-python3] = "-DPYTHON_BINDINGS=ON,-DPYTHON_BINDINGS=OFF"
 
-inherit ${@bb.utils.contains('PACKAGECONFIG', 'libiio-python3', 'distutils3-base', '', d)}
-
 PACKAGES =+ "${PN}-iiod ${PN}-tests ${PN}-${PYTHON_PN}"
 
 RDEPENDS_${PN}-${PYTHON_PN} = "${PN} ${PYTHON_PN}-ctypes ${PYTHON_PN}-stringold"
@@ -46,3 +46,23 @@
 
 SYSTEMD_PACKAGES = "${PN}-iiod"
 SYSTEMD_SERVICE_${PN}-iiod = "iiod.service"
+
+# Explicitly define do_configure, do_compile and do_install because both cmake and setuptools3 have
+# EXPORT_FUNCTIONS do_configure do_compile do_install
+do_configure() {
+    cmake_do_configure
+}
+
+do_compile() {
+    if ${@bb.utils.contains('PACKAGECONFIG', 'libiio-python3', 'true', 'false', d)}; then
+        distutils3_do_compile
+    fi
+    cmake_do_compile
+}
+
+do_install() {
+    if ${@bb.utils.contains('PACKAGECONFIG', 'libiio-python3', 'true', 'false', d)}; then
+        distutils3_do_install
+    fi
+    cmake_do_install
+}
diff --git a/meta-openembedded/meta-oe/recipes-support/libssh/libssh_0.8.9.bb b/meta-openembedded/meta-oe/recipes-support/libssh/libssh_0.8.9.bb
index 39ed8a8..2aff2c8 100644
--- a/meta-openembedded/meta-oe/recipes-support/libssh/libssh_0.8.9.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libssh/libssh_0.8.9.bb
@@ -4,7 +4,7 @@
 LICENSE = "LGPLv2.1"
 LIC_FILES_CHKSUM = "file://COPYING;md5=dabb4958b830e5df11d2b0ed8ea255a0"
 
-DEPENDS = "zlib openssl libgcrypt"
+DEPENDS = "zlib openssl"
 
 SRC_URI = "git://git.libssh.org/projects/libssh.git;branch=stable-0.8"
 SRCREV = "04685a74df9ce1db1bc116a83a0da78b4f4fa1f8"
@@ -13,13 +13,13 @@
 
 inherit cmake
 
-PACKAGECONFIG ??=""
+PACKAGECONFIG ??= "gcrypt"
 PACKAGECONFIG[gssapi] = "-DWITH_GSSAPI=1, -DWITH_GSSAPI=0, krb5, "
+PACKAGECONFIG[gcrypt] = "-DWITH_GCRYPT=1, -DWITH_GCRYPT=0, libgcrypt, "
 
 ARM_INSTRUCTION_SET_armv5 = "arm"
 
 EXTRA_OECMAKE = " \
-    -DWITH_GCRYPT=1 \
     -DWITH_PCAP=1 \
     -DWITH_SFTP=1 \
     -DWITH_ZLIB=1 \
diff --git a/meta-openembedded/meta-oe/recipes-support/links/links-x11_2.20.2.bb b/meta-openembedded/meta-oe/recipes-support/links/links-x11_2.20.2.bb
deleted file mode 100644
index 645fe3b..0000000
--- a/meta-openembedded/meta-oe/recipes-support/links/links-x11_2.20.2.bb
+++ /dev/null
@@ -1,53 +0,0 @@
-# FIXME: the LIC_FILES_CHKSUM values have been updated by 'devtool upgrade'.
-# The following is the difference between the old and the new license text.
-# Please update the LICENSE value if needed, and summarize the changes in
-# the commit message via 'License-Update:' tag.
-# (example: 'License-Update: copyright years updated.')
-#
-# The changes:
-#
-# --- COPYING
-# +++ COPYING
-# @@ -293,7 +293,7 @@
-#      <one line to give the program's name and a brief idea of what it does.>
-#      Copyright (C) <year>  <name of author>
-#  
-# -    on, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USAThis program is free software; you can redistribute it and/or modify
-# +    This program is free software; you can redistribute it and/or modify
-#      it under the terms of the GNU General Public License as published by
-#      the Free Software Foundation; either version 2 of the License, or
-#      (at your option) any later version.
-# 
-#
-
-require links.inc
-
-DEPENDS += "virtual/libx11"
-RCONFLICTS_${PN} = "links"
-
-inherit features_check
-# depends on virtual/libx11
-REQUIRED_DISTRO_FEATURES = "x11"
-
-SRC_URI += " file://links2.desktop \
-             http://www.xora.org.uk/oe/links2.png;name=icon"
-
-S = "${WORKDIR}/links-${PV}"
-
-EXTRA_OECONF = "--enable-graphics \
-                --with-ssl=${STAGING_LIBDIR}/.. --with-libjpeg \
-                --without-libtiff --without-svgalib --without-fb \
-                --without-directfb --without-pmshell --without-atheos \
-                --with-x --without-gpm"
-
-do_install_append() {
-    install -d ${D}/${datadir}/applications
-    install -m 0644 ${WORKDIR}/links2.desktop ${D}/${datadir}/applications
-    install -d ${D}/${datadir}/pixmaps
-    install -m 0644 ${WORKDIR}/links2.png ${D}/${datadir}/pixmaps
-}
-
-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-x11_2.22.bb b/meta-openembedded/meta-oe/recipes-support/links/links-x11_2.22.bb
new file mode 100644
index 0000000..563984c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/links/links-x11_2.22.bb
@@ -0,0 +1,29 @@
+require links.inc
+
+DEPENDS += "virtual/libx11"
+RCONFLICTS_${PN} = "links"
+
+inherit features_check
+# depends on virtual/libx11
+REQUIRED_DISTRO_FEATURES = "x11"
+
+SRC_URI += " file://links2.desktop \
+             http://www.xora.org.uk/oe/links2.png;name=icon"
+
+SRC_URI[sha256sum] = "0364986b3a7f1e8e3171bea362b53f71e1dd3360a8842d66fdc65580ebc2084d"
+SRC_URI[icon.sha256sum] = "eddcd8b8c8698aa621d1a453943892d77b72ed492e0d14e0dbac5c6a57e52f47"
+
+S = "${WORKDIR}/links-${PV}"
+
+EXTRA_OECONF = "--enable-graphics \
+                --with-ssl=${STAGING_LIBDIR}/.. --with-libjpeg \
+                --without-libtiff --without-svgalib --without-fb \
+                --without-directfb --without-pmshell --without-atheos \
+                --with-x --without-gpm"
+
+do_install_append() {
+    install -d ${D}/${datadir}/applications
+    install -m 0644 ${WORKDIR}/links2.desktop ${D}/${datadir}/applications
+    install -d ${D}/${datadir}/pixmaps
+    install -m 0644 ${WORKDIR}/links2.png ${D}/${datadir}/pixmaps
+}
diff --git a/meta-openembedded/meta-oe/recipes-support/links/links_2.21.bb b/meta-openembedded/meta-oe/recipes-support/links/links_2.22.bb
similarity index 68%
rename from meta-openembedded/meta-oe/recipes-support/links/links_2.21.bb
rename to meta-openembedded/meta-oe/recipes-support/links/links_2.22.bb
index b6048c1..2bfc9ae 100644
--- a/meta-openembedded/meta-oe/recipes-support/links/links_2.21.bb
+++ b/meta-openembedded/meta-oe/recipes-support/links/links_2.22.bb
@@ -8,8 +8,5 @@
                 --without-libtiff --without-svgalib --with-fb \
                 --without-directfb --without-pmshell --without-atheos \
                 --without-x"
-
-SRC_URI[md5sum] = "b88a46733d6932442ed8a6b751aac6b4"
-SRC_URI[sha256sum] = "285eed8591c7781ec26213df82786665aaa1b9286782e8a7a1a7e2a6e1630d63"
-SRC_URI[icon.md5sum] = "477e8787927c634614bac01b44355a33"
+SRC_URI[sha256sum] = "0364986b3a7f1e8e3171bea362b53f71e1dd3360a8842d66fdc65580ebc2084d"
 SRC_URI[icon.sha256sum] = "eddcd8b8c8698aa621d1a453943892d77b72ed492e0d14e0dbac5c6a57e52f47"
diff --git a/meta-openembedded/meta-oe/recipes-support/lio-utils/lio-utils_4.1.bb b/meta-openembedded/meta-oe/recipes-support/lio-utils/lio-utils_4.1.bb
index 0fb4a6e..4891fd1 100644
--- a/meta-openembedded/meta-oe/recipes-support/lio-utils/lio-utils_4.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/lio-utils/lio-utils_4.1.bb
@@ -55,6 +55,8 @@
     install -m 755 ${S}/conf/lio_start.default ${D}/etc/target/lio_start.sh
 }
 
+PNBLACKLIST[lio-utils] ?= "${@bb.utils.contains('I_SWEAR_TO_MIGRATE_TO_PYTHON3', 'yes', '', 'python2 is out of support for long time, read https://www.python.org/doc/sunset-python-2/ https://python3statement.org/ and if you really have to temporarily use this, then set I_SWEAR_TO_MIGRATE_TO_PYTHON3 to "yes"', d)}"
+
 RDEPENDS_${PN} += "python-stringold python-subprocess python-shell \
     python-datetime python-textutils python-crypt python-netclient python-email \
     bash"
diff --git a/meta-openembedded/meta-oe/recipes-support/mg/mg_20200723.bb b/meta-openembedded/meta-oe/recipes-support/mg/mg_20210314.bb
similarity index 94%
rename from meta-openembedded/meta-oe/recipes-support/mg/mg_20200723.bb
rename to meta-openembedded/meta-oe/recipes-support/mg/mg_20210314.bb
index b73f937..9275dd2 100644
--- a/meta-openembedded/meta-oe/recipes-support/mg/mg_20200723.bb
+++ b/meta-openembedded/meta-oe/recipes-support/mg/mg_20210314.bb
@@ -5,7 +5,7 @@
 DEPENDS = "ncurses libbsd"
 SECTION = "console/editors"
 
-SRCREV = "60fa3582f5f735b9d43825f5bdcc4ea5f0740f91"
+SRCREV = "598f7a028f01f85f0dee0e798753bccf93233add"
 SRC_URI = "git://github.com/hboetes/mg \
            file://0001-fileio-Include-sys-param.h-for-MAXNAMLEN.patch \
            file://0002-fileio-Define-DEFFILEMODE-if-platform-is-missing.patch \
diff --git a/meta-openembedded/meta-oe/recipes-support/neon/neon/fix-package-check-for-libxml2.patch b/meta-openembedded/meta-oe/recipes-support/neon/neon/fix-package-check-for-libxml2.patch
new file mode 100644
index 0000000..92a05c0
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/neon/neon/fix-package-check-for-libxml2.patch
@@ -0,0 +1,50 @@
+neon: Change the neon configure to use pkg-config instead of xml2-config
+
+xml2-config is broken for neon
+if packageconfig libxml2, webdav, zlib is enabled for neon
+we get the following configure error in the yocto build
+
+| configure: WebDAV support is enabled
+| checking for xml2-config... xml2-config
+| ERROR: /usr/bin/xml2-config should not be used, use an alternative such as pkg-config
+| ERROR: /usr/bin/xml2-config should not be used, use an alternative such as pkg-config
+| ERROR: /usr/bin/xml2-config should not be used, use an alternative such as pkg-config
+| checking libxml/xmlversion.h usability... no
+| checking libxml/xmlversion.h presence... no
+| checking for libxml/xmlversion.h... no
+| configure: error: could not find parser.h, libxml installation problem?
+| WARNING: exit code 1 from a shell command.
+
+The patch lets configure use pkg-config
+
+Upstream-Status: inappropriate
+(Upstream suggests to use latest 0.31 as per the discussion
+https://github.com/notroj/neon/discussions/47)
+
+Signed-off-by: Nisha Parrakat <Nisha.Parrakat@kpit.com>
+--- a/macros/neon-xml-parser.m4        2008-07-19 23:52:35.000000000 +0200
++++ b/macros/neon-xml-parser.m4        2021-02-15 23:56:59.202751257 +0100
+@@ -44,17 +44,17 @@
+
+ dnl Find libxml2: run $1 if found, else $2
+ AC_DEFUN([NE_XML_LIBXML2], [
+-AC_CHECK_PROG(XML2_CONFIG, xml2-config, xml2-config)
++AC_CHECK_PROG(XML2_CONFIG, pkg-config, pkg-config)
+ if test -n "$XML2_CONFIG"; then
+-    neon_xml_parser_message="libxml `$XML2_CONFIG --version`"
+     AC_DEFINE(HAVE_LIBXML, 1, [Define if you have libxml])
+-    # xml2-config in some versions erroneously includes -I/include
+-    # in the --cflags output.
+-    CPPFLAGS="$CPPFLAGS `$XML2_CONFIG --cflags | sed 's| -I/include||g'`"
+-    NEON_LIBS="$NEON_LIBS `$XML2_CONFIG --libs | sed 's|-L/usr/lib ||g'`"
++    PKG_CHECK_MODULES(XML, libxml-2.0 >= 2.4)
++    AC_MSG_NOTICE([libxmlfound CFlags : , ${XML_CFLAGS}])
++    CPPFLAGS="$CPPFLAGS ${XML_CFLAGS}"
++    NEON_LIBS="$NEON_LIBS ${XML_LIBS}"
+     AC_CHECK_HEADERS(libxml/xmlversion.h libxml/parser.h,,[
+       AC_MSG_ERROR([could not find parser.h, libxml installation problem?])])
+     neon_xml_parser=libxml2
++    neon_xml_parser_message="libxml2"
+ else
+     $1
+ fi
diff --git a/meta-openembedded/meta-oe/recipes-support/neon/neon/run-ptest b/meta-openembedded/meta-oe/recipes-support/neon/neon/run-ptest
new file mode 100644
index 0000000..602084a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/neon/neon/run-ptest
@@ -0,0 +1,25 @@
+#!/bin/sh
+
+set -eux
+
+rm -f debug.log child.log
+
+ulimit -c unlimited
+ulimit -t 120
+
+cd test
+echo foobar > foobar.txt
+
+BASIC_TESTS="auth basic redirect request session socket string-tests \
+             stubs uri-tests util-tests"
+DAV_TESTS="acl3744 lock oldacl props xml xmlreq"
+for t in $BASIC_TESTS $DAV_TESTS
+do
+    echo "Running $t..."
+    if "./$t"
+    then
+        echo "PASS:$t"
+    else
+        echo "FAIL:$t"
+    fi
+done
diff --git a/meta-openembedded/meta-oe/recipes-support/neon/neon_0.30.2.bb b/meta-openembedded/meta-oe/recipes-support/neon/neon_0.30.2.bb
index 00b79f6..2639c92 100644
--- a/meta-openembedded/meta-oe/recipes-support/neon/neon_0.30.2.bb
+++ b/meta-openembedded/meta-oe/recipes-support/neon/neon_0.30.2.bb
@@ -7,12 +7,14 @@
 
 SRC_URI = "${DEBIAN_MIRROR}/main/n/neon27/neon27_${PV}.orig.tar.gz \
            file://pkgconfig.patch \
+           file://fix-package-check-for-libxml2.patch \
+           file://run-ptest \
           "
 
 SRC_URI[md5sum] = "e28d77bf14032d7f5046b3930704ef41"
 SRC_URI[sha256sum] = "db0bd8cdec329b48f53a6f00199c92d5ba40b0f015b153718d1b15d3d967fbca"
 
-inherit autotools binconfig-disabled lib_package pkgconfig
+inherit autotools binconfig-disabled lib_package pkgconfig ptest
 
 # Enable gnutls or openssl, not both
 PACKAGECONFIG ?= "expat gnutls libproxy webdav zlib"
@@ -33,6 +35,18 @@
     oe_runmake -C test
 }
 
+do_install_ptest(){
+    BASIC_TESTS="auth basic redirect request session socket string-tests \
+                 stubs uri-tests util-tests"
+    DAV_TESTS="acl3744 lock oldacl props xml xmlreq"
+    mkdir "${D}${PTEST_PATH}/test"
+    for i in ${BASIC_TESTS} ${DAV_TESTS}
+    do
+        install -m 0755 "${B}/test/${i}" \
+        "${D}${PTEST_PATH}/test"
+    done
+}
+
 BINCONFIG = "${bindir}/neon-config"
 
 BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-support/nss/nss/nss-fix-nsinstall-build.patch b/meta-openembedded/meta-oe/recipes-support/nss/nss/nss-fix-nsinstall-build.patch
index fbfa828..224a5d2 100644
--- a/meta-openembedded/meta-oe/recipes-support/nss/nss/nss-fix-nsinstall-build.patch
+++ b/meta-openembedded/meta-oe/recipes-support/nss/nss/nss-fix-nsinstall-build.patch
@@ -15,7 +15,7 @@
 multilib build options. Just clean the ARCHFLAG and LDFLAGS to fix this
 error.
 
-Upstream-Status: Pending
+Upstream-Status: Inappropriate [configuration]
 
 Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
 ===================================================
diff --git a/meta-openembedded/meta-oe/recipes-support/nss/nss_3.60.1.bb b/meta-openembedded/meta-oe/recipes-support/nss/nss_3.63.bb
similarity index 97%
rename from meta-openembedded/meta-oe/recipes-support/nss/nss_3.60.1.bb
rename to meta-openembedded/meta-oe/recipes-support/nss/nss_3.63.bb
index 0d668ba..ab2c43d 100644
--- a/meta-openembedded/meta-oe/recipes-support/nss/nss_3.60.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/nss/nss_3.63.bb
@@ -32,7 +32,7 @@
            file://nss-fix-nsinstall-build.patch \
            file://0001-freebl-add-a-configure-option-to-disable-ARM-HW-cryp.patch \
            "
-SRC_URI[sha256sum] = "2051c20b61112df24bad533ac37f6c66c1bc0d6ea70bb9d9cad102d20324279d"
+SRC_URI[sha256sum] = "182d2fef629102ae9423aabf2c192242b565cf5098e82c5a26cf70c5e4ea2221"
 
 UPSTREAM_CHECK_URI = "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_Releases"
 UPSTREAM_CHECK_REGEX = "NSS_(?P<pver>.+)_release_notes"
@@ -121,7 +121,8 @@
     fi
 
     export NSS_DISABLE_GTESTS=1
-
+    # see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99420
+    export NSS_ENABLE_WERROR=0
     # We can modify CC in the environment, but if we set it via an
     # argument to make, nsinstall, a host program, will also build with it!
     #
diff --git a/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.57.bb b/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.58.bb
similarity index 98%
rename from meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.57.bb
rename to meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.58.bb
index 7c04600..c5274aa 100644
--- a/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.57.bb
+++ b/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.58.bb
@@ -25,8 +25,8 @@
     file://remove-user-host-pwd-from-version.patch \
 "
 
-SRC_URI[md5sum] = "e3349456c3a66e5e6155be7ddc3f042c"
-SRC_URI[sha256sum] = "c7ba47e1e6ecb5b436f3d43281df57abeffa99262141aec822628bc220f6b45a"
+SRC_URI[md5sum] = "c203d735ba69976e5b28dc39006f29b5"
+SRC_URI[sha256sum] = "57b59254be15d0bf6a9ab3d514c1c05777b02123291533134a87c94468f8f47b"
 
 DEPENDS = "util-linux groff-native"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.02.0.bb b/meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.03.0.bb
similarity index 95%
rename from meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.02.0.bb
rename to meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.03.0.bb
index c85fbf2..52aa170 100644
--- a/meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.02.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.03.0.bb
@@ -7,7 +7,7 @@
            file://0001-Do-not-overwrite-all-our-build-flags.patch \
            file://basename-include.patch \
            "
-SRC_URI[sha256sum] = "5c14759c99891e6e472aced6d5f0ff1dacf85d80cd9026d365c55c653edf792c"
+SRC_URI[sha256sum] = "fd51ead4aac1d2f4684fa6e7b0ec06f0233ed21667e720a4e817e4455dd63d27"
 
 DEPENDS = "fontconfig zlib cairo lcms glib-2.0"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/satyr/satyr_0.36.bb b/meta-openembedded/meta-oe/recipes-support/satyr/satyr_0.37.bb
similarity index 94%
rename from meta-openembedded/meta-oe/recipes-support/satyr/satyr_0.36.bb
rename to meta-openembedded/meta-oe/recipes-support/satyr/satyr_0.37.bb
index b6988ba..4630eb0 100644
--- a/meta-openembedded/meta-oe/recipes-support/satyr/satyr_0.36.bb
+++ b/meta-openembedded/meta-oe/recipes-support/satyr/satyr_0.37.bb
@@ -10,7 +10,7 @@
 SRC_URI = "git://github.com/abrt/satyr.git \
            file://0002-fix-compile-failure-against-musl-C-library.patch \
 "
-SRCREV = "a1f232b7dbca7ff787076fcfb63ce7d7fb15b753"
+SRCREV = "4a7d0a31cdeee23bb13739f57926188a795bdf25"
 S = "${WORKDIR}/git"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
diff --git a/meta-openembedded/meta-oe/recipes-support/ssiapi/ssiapi_1.3.0.bb b/meta-openembedded/meta-oe/recipes-support/ssiapi/ssiapi_1.3.0.bb
index ce46cf5..9a0da83 100644
--- a/meta-openembedded/meta-oe/recipes-support/ssiapi/ssiapi_1.3.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/ssiapi/ssiapi_1.3.0.bb
@@ -36,3 +36,4 @@
 RDEPENDS_${PN} += "mdadm"
 
 COMPATIBLE_HOST_powerpc = 'null'
+COMPATIBLE_HOST_powerpc64le = 'null'
diff --git a/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_git.bb b/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_2.9.2.bb
similarity index 89%
rename from meta-openembedded/meta-oe/recipes-support/udisks/udisks2_git.bb
rename to meta-openembedded/meta-oe/recipes-support/udisks/udisks2_2.9.2.bb
index 196198c..f9e1274 100644
--- a/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_git.bb
+++ b/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_2.9.2.bb
@@ -17,11 +17,8 @@
 
 RDEPENDS_${PN} = "acl"
 
-SRC_URI = " \
-    git://github.com/storaged-project/udisks.git;branch=master \
-"
-PV = "2.9.1"
-SRCREV = "95444ab6bf2b8d8c205b540dded4029fcb15f91b"
+SRC_URI = "git://github.com/storaged-project/udisks.git;branch=master"
+SRCREV = "da6d9480fefeb0ffdf8a84626b5096827d8d7030"
 S = "${WORKDIR}/git"
 
 CVE_PRODUCT = "udisks"
diff --git a/meta-openembedded/meta-oe/recipes-support/uriparser/uriparser_0.9.4.bb b/meta-openembedded/meta-oe/recipes-support/uriparser/uriparser_0.9.5.bb
similarity index 83%
rename from meta-openembedded/meta-oe/recipes-support/uriparser/uriparser_0.9.4.bb
rename to meta-openembedded/meta-oe/recipes-support/uriparser/uriparser_0.9.5.bb
index d02cf5d..f506223 100644
--- a/meta-openembedded/meta-oe/recipes-support/uriparser/uriparser_0.9.4.bb
+++ b/meta-openembedded/meta-oe/recipes-support/uriparser/uriparser_0.9.5.bb
@@ -5,7 +5,7 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=fcc5a53146c2401f4b4f6a3bdf3f0168"
 
 SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/${BP}/${BP}.tar.gz"
-SRC_URI[sha256sum] = "095e8a358a9ccbbef9d1f10d40495ca0fcb3d4490a948ba6449b213a66e08ef0"
+SRC_URI[sha256sum] = "1987466a798becb5441a491d29e762ab1a4817a525f82ef239e3d38f85605a77"
 
 UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/uthash/uthash_2.2.0.bb b/meta-openembedded/meta-oe/recipes-support/uthash/uthash_2.3.0.bb
similarity index 90%
rename from meta-openembedded/meta-oe/recipes-support/uthash/uthash_2.2.0.bb
rename to meta-openembedded/meta-oe/recipes-support/uthash/uthash_2.3.0.bb
index 4ec7bc2..ca8a3c0 100644
--- a/meta-openembedded/meta-oe/recipes-support/uthash/uthash_2.2.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/uthash/uthash_2.3.0.bb
@@ -8,8 +8,8 @@
 HOMEPAGE = "https://troydhanson.github.io/uthash/"
 SECTION = "base"
 LICENSE = "BSD-1-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=6891c324eb59289db33bac74d4cbb0d4"
-SRCREV = "66e2668795d0aaf4977523f828e548470a680c33"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=736712b5904dd42f8678df7172bc5f2b"
+SRCREV = "e493aa90a2833b4655927598f169c31cfcdf7861"
 
 SRC_URI = "\
     git://github.com/troydhanson/${BPN}.git \
diff --git a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/add__divmoddi4.patch b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/add__divmoddi4.patch
new file mode 100644
index 0000000..8dd30a2
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/add__divmoddi4.patch
@@ -0,0 +1,36 @@
+add __divmoddi4 builtin
+
+GCC 11 will generate it in code
+
+void foo(unsigned char *u8Second, unsigned int *u32Nanosecond, long long timeSpec)
+{
+    long long i64Div;
+    int i32Div;
+    int i32Rem;
+    i64Div = timeSpec;
+    i32Rem = (int)(i64Div % 1000000000);
+    i64Div /= 1000000000;
+    *u32Nanosecond = i32Rem;
+    i32Rem = (int)(i64Div % 60);
+    *u8Second = i32Rem;
+}
+
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/src/VBox/Runtime/common/math/gcc/divdi3.c
++++ b/src/VBox/Runtime/common/math/gcc/divdi3.c
+@@ -68,3 +68,12 @@ __divdi3(a, b)
+ 		uq = - uq;
+ 	return uq;
+ }
++
++quad_t
++__divmoddi4(quad_t a, quad_t b, quad_t* rem)
++{
++	quad_t d = __divdi3(a,b);
++	*rem = a - (d*b);
++	return d;
++}
++
diff --git a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.18.bb b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.18.bb
index d620e98..1def1a3 100644
--- a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.18.bb
+++ b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.18.bb
@@ -14,6 +14,7 @@
 SRC_URI = "http://download.virtualbox.org/virtualbox/${PV}/${VBOX_NAME}.tar.bz2 \
     file://Makefile.utils \
     file://kernel-5.10.patch \
+    file://add__divmoddi4.patch \
 "
 SRC_URI[md5sum] = "c61001386eb3822ab8f06d688a82e84b"
 SRC_URI[sha256sum] = "108d42b9b391b7a332a33df1662cf7b0e9d9a80f3079d16288d8b9487f427d40"
diff --git a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-Fixed-compiler-warnings-about-snprintf-truncations.patch b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-Fixed-compiler-warnings-about-snprintf-truncations.patch
deleted file mode 100644
index 5b9315c..0000000
--- a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-Fixed-compiler-warnings-about-snprintf-truncations.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 9de23a9199d26e64ab6b5be2bb74f260200b2dc5 Mon Sep 17 00:00:00 2001
-From: matt335672 <30179339+matt335672@users.noreply.github.com>
-Date: Fri, 21 Aug 2020 12:20:31 +0100
-Subject: [PATCH] Fixed compiler warnings about snprintf truncations
-
-Upstream-Status: Backport [https://github.com/neutrinolabs/xrdp/pull/1659]
----
- common/log.c | 4 +---
- 1 file changed, 1 insertion(+), 3 deletions(-)
-
-diff --git a/common/log.c b/common/log.c
-index 4a0bd2f3..8686789d 100644
---- a/common/log.c
-+++ b/common/log.c
-@@ -555,9 +555,7 @@ log_message(const enum logLevels lvl, const char *msg, ...)
-     now_t = time(&now_t);
-     now = localtime(&now_t);
- 
--    snprintf(buff, 21, "[%.4d%.2d%.2d-%.2d:%.2d:%.2d] ", now->tm_year + 1900,
--             now->tm_mon + 1, now->tm_mday, now->tm_hour, now->tm_min,
--             now->tm_sec);
-+    strftime(buff, 21, "[%Y%m%d-%H:%M:%S] ", now);
- 
-     internal_log_lvl2str(lvl, buff + 20);
- 
--- 
-2.29.2
-
diff --git a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch
new file mode 100644
index 0000000..c06aa7b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch
@@ -0,0 +1,22 @@
+From 5958db649855bfb2ada7c0ed22a00f839b9a1161 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 12 Mar 2021 21:40:35 -0800
+Subject: [PATCH] arch: Define NO_NEED_ALIGN on ppc64
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ common/arch.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/common/arch.h
++++ b/common/arch.h
+@@ -84,7 +84,7 @@ typedef int bool_t;
+ #define NEED_ALIGN
+ #elif defined(__x86__) || defined(__x86_64__) || \
+       defined(__AMD64__) || defined(_M_IX86) || defined (_M_AMD64) || \
+-      defined(__i386__) || defined(__aarch64__) || \
++      defined(__i386__) || defined(__aarch64__) || defined(__powerpc64__) || \
+       defined(__riscv)
+ #define NO_NEED_ALIGN
+ #else
diff --git a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-correct-the-location-of-errno.h.patch b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-correct-the-location-of-errno.h.patch
deleted file mode 100644
index b06077b..0000000
--- a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-correct-the-location-of-errno.h.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From c8d3df40ece7d659ccc8212b18de916d28f4398a Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 22 Dec 2020 23:10:52 -0800
-Subject: [PATCH] correct the location of errno.h
-
-Fixes build on musl
-
-Upstream-Status: Submitted [https://github.com/neutrinolabs/xrdp/pull/1761]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- sesman/chansrv/sound.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/sesman/chansrv/sound.c b/sesman/chansrv/sound.c
-index b0480d33..45e17307 100644
---- a/sesman/chansrv/sound.c
-+++ b/sesman/chansrv/sound.c
-@@ -23,7 +23,7 @@
- #include <stdio.h>
- #include <sys/types.h>
- #include <sys/socket.h>
--#include <sys/errno.h>
-+#include <errno.h>
- #include <signal.h>
- #include <sys/un.h>
- 
--- 
-2.29.2
-
diff --git a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-riscv-doesn-t-require-pointers-to-be-aligned.patch b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-riscv-doesn-t-require-pointers-to-be-aligned.patch
deleted file mode 100644
index 4cd26df..0000000
--- a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-riscv-doesn-t-require-pointers-to-be-aligned.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 229206aa5e55a6e26a074a54a1b50139ab794b36 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 22 Dec 2020 23:01:13 -0800
-Subject: [PATCH] riscv doesn't require pointers to be aligned
-
-Upstream-Status: Submitted [https://github.com/neutrinolabs/xrdp/pull/1761]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- common/arch.h | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/common/arch.h b/common/arch.h
-index ccccfa5a..8c2ac1a4 100644
---- a/common/arch.h
-+++ b/common/arch.h
-@@ -84,7 +84,8 @@ typedef int bool_t;
- #define NEED_ALIGN
- #elif defined(__x86__) || defined(__x86_64__) || \
-       defined(__AMD64__) || defined(_M_IX86) || defined (_M_AMD64) || \
--      defined(__i386__) || defined(__aarch64__)
-+      defined(__i386__) || defined(__aarch64__) || \
-+      defined(__riscv)
- #define NO_NEED_ALIGN
- #else
- #warning unknown arch
--- 
-2.29.2
-
diff --git a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.14.bb b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.15.bb
similarity index 92%
rename from meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.14.bb
rename to meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.15.bb
index 078e23c..039ba1a 100644
--- a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.14.bb
+++ b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.15.bb
@@ -14,11 +14,9 @@
            file://xrdp.sysconfig \
            file://0001-Added-req_distinguished_name-in-etc-xrdp-openssl.con.patch \
            file://0001-Fix-the-compile-error.patch \
-           file://0001-riscv-doesn-t-require-pointers-to-be-aligned.patch \
-           file://0001-correct-the-location-of-errno.h.patch \
-           file://0001-Fixed-compiler-warnings-about-snprintf-truncations.patch \
+           file://0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch \
            "
-SRCREV = "1469d659dbccd6d042ac44f0afc4e1309788dc9d"
+SRCREV = "f24b7b7988140b18202908654db3289659303772"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/xxhash/xxhash_0.8.0.bb b/meta-openembedded/meta-oe/recipes-support/xxhash/xxhash_0.8.0.bb
deleted file mode 100644
index e437d4d..0000000
--- a/meta-openembedded/meta-oe/recipes-support/xxhash/xxhash_0.8.0.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-SUMMARY = "Extremely fast non-cryptographic hash algorithm"
-DESCRIPTION = "xxHash is an extremely fast non-cryptographic hash algorithm, \
-working at speeds close to RAM limits."
-HOMEPAGE = "http://www.xxhash.com/"
-LICENSE = "BSD-2-Clause & GPL-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=b335320506abb0505437e39295e799cb"
-
-SRC_URI = "git://github.com/Cyan4973/xxHash.git;branch=release;protocol=git"
-UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
-
-SRCREV = "94e5f23e736f2bb67ebdf90727353e65344f9fc0"
-
-S = "${WORKDIR}/git"
-
-do_compile () {
-	oe_runmake all
-}
-
-do_install () {
-	oe_runmake DESTDIR=${D} install
-}
diff --git a/meta-openembedded/meta-perl/conf/layer.conf b/meta-openembedded/meta-perl/conf/layer.conf
index 2209d3d..87bb91f 100644
--- a/meta-openembedded/meta-perl/conf/layer.conf
+++ b/meta-openembedded/meta-perl/conf/layer.conf
@@ -15,4 +15,4 @@
 
 LAYERDEPENDS_perl-layer = "core openembedded-layer"
 
-LAYERSERIES_COMPAT_perl-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_perl-layer = " hardknott"
diff --git a/meta-openembedded/meta-perl/recipes-perl/libcrypt/libcrypt-openssl-guess-perl_0.11.bb b/meta-openembedded/meta-perl/recipes-perl/libcrypt/libcrypt-openssl-guess-perl_0.12.bb
similarity index 85%
rename from meta-openembedded/meta-perl/recipes-perl/libcrypt/libcrypt-openssl-guess-perl_0.11.bb
rename to meta-openembedded/meta-perl/recipes-perl/libcrypt/libcrypt-openssl-guess-perl_0.12.bb
index 57df78b..6f35e39 100644
--- a/meta-openembedded/meta-perl/recipes-perl/libcrypt/libcrypt-openssl-guess-perl_0.11.bb
+++ b/meta-openembedded/meta-perl/recipes-perl/libcrypt/libcrypt-openssl-guess-perl_0.12.bb
@@ -5,8 +5,8 @@
 
 SRC_URI = "http://www.cpan.org/modules/by-module/Crypt/Crypt-OpenSSL-Guess-${PV}.tar.gz "
 
-SRC_URI[md5sum] = "e768fe2c07826b0ac9ea604c79f93032"
-SRC_URI[sha256sum] = "aa6b18e38cb852cbad80a58cd90c395b40819d4d01e0ab37e7703149094d7167"
+SRC_URI[md5sum] = "9e86baf96828a38c967003a5e66f0c39"
+SRC_URI[sha256sum] = "0a18d18768cf42b49b15c9dea626199dc74346bbbc76acd3d817b9c1d2bd471d"
 
 DEPENDS += "openssl"
 
diff --git a/meta-openembedded/meta-python/conf/layer.conf b/meta-openembedded/meta-python/conf/layer.conf
index 321d0da..ab66ffd 100644
--- a/meta-openembedded/meta-python/conf/layer.conf
+++ b/meta-openembedded/meta-python/conf/layer.conf
@@ -14,6 +14,6 @@
 
 LAYERDEPENDS_meta-python = "core (>= 12) openembedded-layer"
 
-LAYERSERIES_COMPAT_meta-python = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_meta-python = " hardknott"
 
 LICENSE_PATH += "${LAYERDIR}/licenses"
diff --git a/meta-openembedded/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb b/meta-openembedded/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb
index 635dee1..0418b59 100644
--- a/meta-openembedded/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb
+++ b/meta-openembedded/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb
@@ -21,6 +21,7 @@
     python3-aiofiles \
     python3-aiohttp \
     python3-aiohttp-jinja2 \
+    python3-aiohue \
     python3-alembic \
     python3-ansi2html \
     python3-ansicolors \
@@ -103,6 +104,7 @@
     python3-djangorestframework \
     python3-dnspython \
     python3-docopt \
+    python3-docutils \
     python3-dominate \
     python3-dt-schema \
     python3-dynamic-dispatch \
@@ -143,6 +145,7 @@
     python3-gmqtt \
     python3-gnupg \
     python3-google-api-python-client \
+    python3-gpsd-py3 \
     python3-graphviz \
     python3-greenlet \
     python3-greenstalk \
@@ -150,6 +153,7 @@
     python3-grpcio-tools \
     python3-gsocketpool \
     python3-gunicorn \
+    python3-h11 \
     python3-h2 \
     python3-h5py \
     python3-haversine \
@@ -167,6 +171,7 @@
     python3-idna \
     python3-idna \
     python3-idna-ssl \
+    python3-ifaddr \
     python3-imageio \
     python3-incremental \
     python3-inflection \
@@ -185,6 +190,7 @@
     python3-jdatetime \
     python3-jdcal \
     python3-jedi \
+    python3-jmespath \
     python3-jsmin \
     python3-jsonpatch \
     python3-jsonpath-rw \
@@ -248,6 +254,7 @@
     python3-parse-type \
     python3-parso \
     python3-passlib \
+    python3-pastedeploy \
     python3-pathtools3 \
     python3-pep8 \
     python3-periphery \
@@ -320,6 +327,7 @@
     python3-pyscaffold \
     python3-pyserial \
     python3-pysocks \
+    python3-pysonos \
     python3-pystache \
     python3-pystemd \
     python3-pytest-asyncio \
@@ -329,6 +337,7 @@
     python3-pytest-runner \
     python3-pytest-tempdir \
     python3-pytest-timeout \
+    python3-pythonping \
     python3-python-vlc \
     python3-pytoml \
     python3-pytun \
@@ -361,6 +370,7 @@
     python3-scrypt \
     python3-sdnotify \
     python3-semver \
+    python3-semantic-version \
     python3-send2trash \
     python3-sentry-sdk \
     python3-serpent \
@@ -405,6 +415,7 @@
     python3-twitter \
     python3-twofish \
     python3-txaio \
+    python3-txdbus \
     python3-txws \
     python3-typed-ast \
     python3-typeguard \
@@ -444,6 +455,7 @@
     python3-zopeinterface \
     telepathy-python3 \
 "
+RDEPENDS_packagegroup-meta-python3_remove_libc-musl_powerpc64le = "python3-grpcio python3-grpcio-tools"
 
 RDEPENDS_packagegroup-meta-python3-ptest = "\
     python3-cryptography-ptest \
@@ -507,6 +519,7 @@
     python3-uritemplate-ptest \
     python3-webcolors-ptest \
     python3-whoosh-ptest \
+    python3-wpa-supplicant \
     python3-xlrd-ptest \
     python3-xmltodict-ptest \
     python3-xxhash-ptest \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-aiohue_2.2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-aiohue_2.2.0.bb
new file mode 100644
index 0000000..a2a7363
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-aiohue_2.2.0.bb
@@ -0,0 +1,12 @@
+DESCRIPTION = "Asynchronous library to control Philips Hue"
+HOMEPAGE = "https://pypi.org/project/aiohue/"
+SECTION = "devel/python"
+LICENSE = "Apache-2.0"
+# No license file available but the license is specified in PKG-INFO and setup.py.
+LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=7145f7cdd263359b62d342a02f005515"
+
+SRC_URI[sha256sum] = "35696d04d6eb0328b7031ea3c0a3cfe5d83dfcf62f920522e4767d165c6bc529"
+
+inherit pypi setuptools3
+
+RDEPENDS_${PN} += "${PYTHON_PN}-aiohttp"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.5.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.5.8.bb
similarity index 78%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.5.5.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.5.8.bb
index 92b691e..fdf0d36 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.5.5.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.5.8.bb
@@ -4,7 +4,7 @@
 
 inherit pypi setuptools3
 
-SRC_URI[sha256sum] = "df0028c19275a2cff137e39617a39cdcdbd1173733b87b6bfa257b7c0860213b"
+SRC_URI[sha256sum] = "e27fd67732c97a1c370c33169ef4578cf96436fa0e7dcfaeeef4a917d0737d56"
 
 PYPI_PACKAGE = "alembic"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.5.2.bb
similarity index 89%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.5.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.5.2.bb
index f69d850..9302775 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.5.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.5.2.bb
@@ -4,7 +4,7 @@
 LICENSE = "LGPL-2.1"
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
 
-SRC_URI[sha256sum] = "b31c92f545517dcc452f284bc9c044050862fbe6d93d2b3de4a215a6b384bf0d"
+SRC_URI[sha256sum] = "6b0ed1af831570e500e2437625979eaa3b36011f66ddfc4ce930128610258ca9"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_21.2.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_21.3.1.bb
similarity index 86%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_21.2.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_21.3.1.bb
index cc3773f..daa66ec 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_21.2.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_21.3.1.bb
@@ -3,7 +3,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=97c0bda20ad1d845c6369c0e47a1cd98"
 
-SRC_URI[sha256sum] = "bf7a9d302a34d0f719d43c57f65ca1f2f5c982dd6ea0c11e1e190ef6f43710fe"
+SRC_URI[sha256sum] = "e126c1f583e872fb59e79d36977cfa1f2d0a8a79f90ae31f406faae7664b8e03"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-backports-functools-lru-cache_1.6.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-backports-functools-lru-cache_1.6.3.bb
similarity index 72%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-backports-functools-lru-cache_1.6.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-backports-functools-lru-cache_1.6.3.bb
index e967958..0d232dc 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-backports-functools-lru-cache_1.6.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-backports-functools-lru-cache_1.6.3.bb
@@ -2,12 +2,11 @@
 HOMEPAGE = "https://github.com/jaraco/backports.functools_lru_cache"
 SECTION = "devel/python"
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=a33f38bbf47d48c70fe0d40e5f77498e"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=7a7126e068206290f3fe9f8d6c713ea6"
 
 PYPI_PACKAGE = "backports.functools_lru_cache"
 
-SRC_URI[md5sum] = "103000b21a8e683647e2ce41929f2a9d"
-SRC_URI[sha256sum] = "8fde5f188da2d593bd5bc0be98d9abc46c95bb8a9dde93429570192ee6cc2d4a"
+SRC_URI[sha256sum] = "d84e126e2a29e4fde8931ff8131240bbf30a0e7dbcc3897a8dbd8ea5ac11419c"
 
 DEPENDS += "${PYTHON_PN}-setuptools-scm-native"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_1.6.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_1.8.1.bb
similarity index 77%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_1.6.3.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_1.8.1.bb
index 16beab5..9bb5f28 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_1.6.3.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_1.8.1.bb
@@ -3,7 +3,7 @@
 LICENSE = "PSF"
 LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=2ad702cdcd49e8d2ac01d7e7d0810d2d"
 
-SRC_URI[sha256sum] = "ae27ce4bef4f35b4cc2c0b0d9cf02ed49eee567c23d70cb5066ad215f9b62b3c"
+SRC_URI[sha256sum] = "e02f79fba7a470d438eb39017d503498faaf760b17b6b46af1a9de12fd58d311"
 
 inherit setuptools3 pypi
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-cassandra-driver_3.24.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-cassandra-driver_3.25.0.bb
similarity index 85%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-cassandra-driver_3.24.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-cassandra-driver_3.25.0.bb
index 5628290..a1941bf 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-cassandra-driver_3.24.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-cassandra-driver_3.25.0.bb
@@ -8,8 +8,7 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=2ee41112a44fe7014dce33e26468ba93"
 SRCNAME = "cassandra-driver"
 
-SRC_URI[md5sum] = "c31bc29989d8b0c7524a38b0e38c8bfb"
-SRC_URI[sha256sum] = "83ec8d9a5827ee44bb1c0601a63696a8a9086beaf0151c8255556299246081bd"
+SRC_URI[sha256sum] = "8ad7d7c090eb1cac6110b3bfc1fd2d334ac62f415aac09350ebb8d241b7aa7ee"
 
 DISTUTILS_BUILD_ARGS += " \
     --no-libev \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-colorlog_4.7.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-colorlog_4.8.0.bb
similarity index 75%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-colorlog_4.7.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-colorlog_4.8.0.bb
index c9754ed..6f9b8d4 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-colorlog_4.7.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-colorlog_4.8.0.bb
@@ -7,4 +7,4 @@
 
 PYPI_PACKAGE = "colorlog"
 
-SRC_URI[sha256sum] = "18d05b616438a75762d7d214b9ec3b05d274466c9f3ddd92807e755840c88251"
+SRC_URI[sha256sum] = "59b53160c60902c405cdec28d38356e09d40686659048893e026ecbd589516b1"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-configargparse_1.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-configargparse_1.4.bb
similarity index 84%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-configargparse_1.3.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-configargparse_1.4.bb
index aac58de..393f138 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-configargparse_1.3.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-configargparse_1.4.bb
@@ -3,7 +3,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=da746463714cc35999ed9a42339f2943"
 
-SRC_URI[sha256sum] = "0428b975ab6c48bb101ccb732e1b5cb616296e28268e032aa806f32b647a1cc1"
+SRC_URI[sha256sum] = "abef9ff44fb0091f0e3bb2ee7e5b26a02b5b62d45408a5272a9bd461f5b59b4b"
 
 PYPI_PACKAGE = "ConfigArgParse"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-configparser_5.0.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-configparser_5.0.2.bb
similarity index 78%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-configparser_5.0.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-configparser_5.0.2.bb
index b78de58..87cdd09 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-configparser_5.0.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-configparser_5.0.2.bb
@@ -5,8 +5,7 @@
 
 LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=10;endline=10;md5=23f9ad5cad3d8cc0336e2a5d8a87e1fa"
 
-SRC_URI[md5sum] = "5faf185693cd21d83f6a3bc01b5733fa"
-SRC_URI[sha256sum] = "005c3b102c96f4be9b8f40dafbd4997db003d07d1caa19f37808be8031475f2a"
+SRC_URI[sha256sum] = "85d5de102cfe6d14a5172676f09d19c465ce63d6019cf0a4ef13385fc535e828"
 
 DEPENDS += "${PYTHON_PN}-setuptools-scm-native ${PYTHON_PN}-toml-native"
 inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-configshell-fb_1.1.28.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-configshell-fb_1.1.29.bb
similarity index 91%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-configshell-fb_1.1.28.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-configshell-fb_1.1.29.bb
index 2d9ec07..70e67a1 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-configshell-fb_1.1.28.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-configshell-fb_1.1.29.bb
@@ -7,7 +7,7 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=1dece7821bf3fd70fe1309eaa37d52a2"
 
 SRC_URI = "git://github.com/open-iscsi/configshell-fb.git;protocol=https;branch=master"
-SRCREV = "da8f0cef114e7343a7ae96ff1db7c8c574f819be"
+SRCREV = "d74a33b69f688ed9b8b28033835303604639d4eb"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-coverage_5.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-coverage_5.5.bb
similarity index 71%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-coverage_5.4.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-coverage_5.5.bb
index 4ea9b6a..c780a63 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-coverage_5.4.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-coverage_5.5.bb
@@ -3,7 +3,7 @@
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2ee41112a44fe7014dce33e26468ba93"
 
-SRC_URI[sha256sum] = "6d2e262e5e8da6fa56e774fb8e2643417351427604c2b177f8e8c5f75fc928ca"
+SRC_URI[sha256sum] = "ebe78fe9a0e874362175b02371bdfbee64d8edc42a044253ddf4ee7d3c15212c"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-croniter_1.0.6.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-croniter_1.0.10.bb
similarity index 77%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-croniter_1.0.6.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-croniter_1.0.10.bb
index d3b6fa1..6cd87fe 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-croniter_1.0.6.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-croniter_1.0.10.bb
@@ -5,7 +5,7 @@
 
 PYPI_PACKAGE = "croniter"
 
-SRC_URI[sha256sum] = "e79bcc9681d2345e71360241aebe19ed6c5475fec40cc59a7998fe1a2ca568d0"
+SRC_URI[sha256sum] = "364c48e393060295c3161588a6556d5c890b5c34299973c393adbe4488ca1ecb"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-defusedxml_0.6.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-defusedxml_0.7.1.bb
similarity index 68%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-defusedxml_0.6.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-defusedxml_0.7.1.bb
index d041d0e..f48c429 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-defusedxml_0.6.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-defusedxml_0.7.1.bb
@@ -5,7 +5,6 @@
 LICENSE = "PSF"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=056fea6a4b395a24d0d278bf5c80249e"
 
-SRC_URI[md5sum] = "a59741f675c4cba649de40a99f732897"
-SRC_URI[sha256sum] = "f684034d135af4c6cbb949b8a4d2ed61634515257a67299e5f940fbaa34377f5"
+SRC_URI[sha256sum] = "1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69"
 
 inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-django_3.1.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-django_3.1.1.bb
deleted file mode 100644
index ed6513d..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-django_3.1.1.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-require python-django.inc
-inherit setuptools3
-
-SRC_URI[md5sum] = "d5e894fb3c46064e84e9dc68a08a46d0"
-SRC_URI[sha256sum] = "59c8125ca873ed3bdae9c12b146fbbd6ed8d0f743e4cf5f5817af50c51f1fc2f"
-
-RDEPENDS_${PN} += "\
-    ${PYTHON_PN}-sqlparse \
-"
-
-# Set DEFAULT_PREFERENCE so that the LTS version of django is built by
-# default. To build the 3.x branch, 
-# PREFERRED_VERSION_python3-django = "3.1.1" can be added to local.conf
-DEFAULT_PREFERENCE = "-1"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-django_3.1.7.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-django_3.1.7.bb
new file mode 100644
index 0000000..d22bd14
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-django_3.1.7.bb
@@ -0,0 +1,13 @@
+require python-django.inc
+inherit setuptools3
+
+SRC_URI[sha256sum] = "32ce792ee9b6a0cbbec340123e229ac9f765dff8c2a4ae9247a14b2ba3a365a7"
+
+RDEPENDS_${PN} += "\
+    ${PYTHON_PN}-sqlparse \
+"
+
+# Set DEFAULT_PREFERENCE so that the LTS version of django is built by
+# default. To build the 3.x branch, 
+# PREFERRED_VERSION_python3-django = "3.1.7" can be added to local.conf
+DEFAULT_PREFERENCE = "-1"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-djangorestframework_3.12.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-djangorestframework_3.12.4.bb
similarity index 71%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-djangorestframework_3.12.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-djangorestframework_3.12.4.bb
index 6742b87..417e367 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-djangorestframework_3.12.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-djangorestframework_3.12.4.bb
@@ -5,8 +5,8 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE.md;md5=7879a5a716147a784f7e524c9cf103c1"
 
-SRC_URI[md5sum] = "e70d58ee2f83f11d4efe33162bb8af3b"
-SRC_URI[sha256sum] = "0898182b4737a7b584a2c73735d89816343369f259fea932d90dc78e35d8ac33"
+SRC_URI[sha256sum] = "f747949a8ddac876e879190df194b925c177cdeb725a099db1460872f7c0a7f2"
+
 PYPI_PACKAGE = "djangorestframework"
 
 inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-docutils_0.16.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-docutils_0.16.bb
new file mode 100644
index 0000000..44b7320
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-docutils_0.16.bb
@@ -0,0 +1,10 @@
+SUMMARY = "Docutils is a modular system for processing documentation into useful formats"
+HOMEPAGE = "https://pypi.org/project/docutils/"
+SECTION = "devel/python"
+LICENSE = "BSD-2-Clause & GPL-2.0 & Python-2.0"
+LIC_FILES_CHKSUM = "file://COPYING.txt;md5=7a4646907ab9083c826280b19e103106"
+
+SRC_URI[md5sum] = "9ccb6f332e23360f964de72c8ea5f0ed"
+SRC_URI[sha256sum] = "7d4e999cca74a52611773a42912088078363a30912e8822f7a3d38043b767573"
+
+inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-elementpath_2.1.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-elementpath_2.2.1.bb
similarity index 82%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-elementpath_2.1.4.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-elementpath_2.2.1.bb
index 10aa17d..b0a7339 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-elementpath_2.1.4.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-elementpath_2.2.1.bb
@@ -3,7 +3,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=5dbb7fb7d72da3921202dd7b995d3ecf"
 
-SRC_URI[sha256sum] = "326643aca7beff0864d022cd591736b8550a70fccafd67a89198166baed1c2c4"
+SRC_URI[sha256sum] = "c7b996c5624926f329f4379fbcffd5787629e08b2f8d7159d23525e9243ba637"
 
 PYPI_PACKAGE = "elementpath"
 inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-migrate_2.6.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-migrate_2.7.0.bb
similarity index 79%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-flask-migrate_2.6.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-flask-migrate_2.7.0.bb
index 810f0eb..1bf0dfa 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-migrate_2.6.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-migrate_2.7.0.bb
@@ -2,7 +2,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=3b69377f79f3f48c661701236d5a6a85"
 
-SRC_URI[sha256sum] = "8626af845e6071ef80c70b0dc16d373f761c981f0ad61bb143a529cab649e725"
+SRC_URI[sha256sum] = "ae2f05671588762dd83a21d8b18c51fe355e86783e24594995ff8d7380dffe38"
 
 PYPI_PACKAGE = "Flask-Migrate"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-sqlalchemy_2.4.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-sqlalchemy_2.5.1.bb
similarity index 67%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-flask-sqlalchemy_2.4.4.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-flask-sqlalchemy_2.5.1.bb
index 2755c7d..3ca0227 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-sqlalchemy_2.4.4.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-sqlalchemy_2.5.1.bb
@@ -2,8 +2,7 @@
 LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=ffeffa59c90c9c4a033c7574f8f3fb75"
 
-SRC_URI[md5sum] = "63a522cb82a75292dc8bc77b6d26187a"
-SRC_URI[sha256sum] = "bfc7150eaf809b1c283879302f04c42791136060c6eeb12c0c6674fb1291fae5"
+SRC_URI[sha256sum] = "2bda44b43e7cacb15d4e05ff3cc1f8bc97936cc464623424102bfc2c35e95912"
 
 PYPI_PACKAGE = "Flask-SQLAlchemy"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_1.12.8.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_2.0.2.bb
similarity index 62%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_1.12.8.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_2.0.2.bb
index 1774f96..38aa349 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_1.12.8.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_2.0.2.bb
@@ -1,8 +1,9 @@
-SUMMARY = "The Google API Client for Python is a client library for accessing the Plus, Moderator, and many other Google APIs."
+SUMMARY = "The Google API Client for Python is a client library for accessing the Plus, \
+Moderator, and many other Google APIs."
 HOMEPAGE = "https://github.com/googleapis/google-api-python-client"
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=94023d14f6b58272fd885e4e3f2f08b3"
 
-SRC_URI[sha256sum] = "f3b9684442eec2cfe9f9bb48e796ef919456b82142c7528c5fd527e5224f08bb"
+SRC_URI[sha256sum] = "48686cceb0dc8cb8b9ee1920ad7c0d9b499ef4fca0ca51c1c69f1e462a628011"
 
 inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-gpsd-py3_0.3.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-gpsd-py3_0.3.0.bb
new file mode 100644
index 0000000..35485ba
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-gpsd-py3_0.3.0.bb
@@ -0,0 +1,16 @@
+DESCRIPTION = "This is a library for polling gpsd in Python3"
+HOMEPAGE = "https://github.com/MartijnBraam/gpsd-py3"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://setup.py;beginline=10;endline=10;md5=c2d9994c57f0444e39f1dab19af50254"
+SRC_URI[md5sum] = "041ce56e8879e2104b4d54c8119cd529"
+SRC_URI[sha256sum] = "2908d3bd78dfb6720ecfe22f97e139b5a4a198f38df3a77215cf644a33513192"
+
+PYPI_PACKAGE = "gpsd-py3"
+
+inherit pypi setuptools3
+
+CLEANBROKEN = "1"
+
+RDEPENDS_${PN} += " \
+    python3 \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.35.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.36.1.bb
similarity index 68%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.35.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.36.1.bb
index 12b00cf..da571d3 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.35.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.36.1.bb
@@ -11,8 +11,12 @@
 
 SRC_URI += "file://0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch"
 
-SRC_URI[sha256sum] = "9e2a41cba9c5a20ae299d0fdd377fe231434fa04cbfbfb3807293c6ec10b03cf"
+SRC_URI[sha256sum] = "80ef584f7b917f575e4b8f2ec59cd4a4d98c2046e801a735f3136b05742a36a6"
 
 RDEPENDS_${PN} = "${PYTHON_PN}-grpcio"
 
 BBCLASSEXTEND = "native nativesdk"
+
+# Needs abseil-cpp which does not build for ppc64le/musl
+COMPATIBLE_HOST_libc-musl_powerpc64le = "null"
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/0001-absl-always-use-asm-sgidefs.h.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/0001-absl-always-use-asm-sgidefs.h.patch
new file mode 100644
index 0000000..be516ca
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/0001-absl-always-use-asm-sgidefs.h.patch
@@ -0,0 +1,33 @@
+From 8f21fdfb83b0fa844a9f1f03a86a9ca46642d85e Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 9 Apr 2020 13:06:27 -0700
+Subject: [PATCH 1/2] absl: always use <asm/sgidefs.h>
+
+Fixes mips/musl build, since sgidefs.h is not present on all C libraries
+but on linux asm/sgidefs.h is there and contains same definitions, using
+that makes it portable.
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ third_party/abseil-cpp/absl/base/internal/direct_mmap.h | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+--- a/third_party/abseil-cpp/absl/base/internal/direct_mmap.h
++++ b/third_party/abseil-cpp/absl/base/internal/direct_mmap.h
+@@ -41,13 +41,9 @@
+ 
+ #ifdef __mips__
+ // Include definitions of the ABI currently in use.
+-#ifdef __BIONIC__
+-// Android doesn't have sgidefs.h, but does have asm/sgidefs.h, which has the
++// bionic/musl C libs don't have sgidefs.h, but do have asm/sgidefs.h, which has the
+ // definitions we need.
+ #include <asm/sgidefs.h>
+-#else
+-#include <sgidefs.h>
+-#endif  // __BIONIC__
+ #endif  // __mips__
+ 
+ // SYS_mmap and SYS_munmap are not defined in Android.
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/mips_bigendian.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/mips_bigendian.patch
new file mode 100644
index 0000000..343f25a
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/mips_bigendian.patch
@@ -0,0 +1,15 @@
+--- a/third_party/boringssl-with-bazel/src/include/openssl/base.h
++++ b/third_party/boringssl-with-bazel/src/include/openssl/base.h
+@@ -102,10 +102,10 @@ extern "C" {
+ #elif (defined(__PPC__) || defined(__powerpc__))
+ #define OPENSSL_32_BIT
+ #define OPENSSL_PPC
+-#elif defined(__MIPSEL__) && !defined(__LP64__)
++#elif defined(__mips__) && !defined(__LP64__)
+ #define OPENSSL_32_BIT
+ #define OPENSSL_MIPS
+-#elif defined(__MIPSEL__) && defined(__LP64__)
++#elif defined(__mips__) && defined(__LP64__)
+ #define OPENSSL_64_BIT
+ #define OPENSSL_MIPS64
+ #elif defined(__riscv)
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/ppc-boringssl-support.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/ppc-boringssl-support.patch
index dadd3da..5c9be44 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/ppc-boringssl-support.patch
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/ppc-boringssl-support.patch
@@ -12,6 +12,6 @@
 +#elif (defined(__PPC__) || defined(__powerpc__))
 +#define OPENSSL_32_BIT
 +#define OPENSSL_PPC
- #elif defined(__mips__) && !defined(__LP64__)
+ #elif defined(__MIPSEL__) && !defined(__LP64__)
  #define OPENSSL_32_BIT
  #define OPENSSL_MIPS
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/riscv64_support.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/riscv64_support.patch
index 7e071ae..350c67d 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/riscv64_support.patch
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/riscv64_support.patch
@@ -5,7 +5,7 @@
 --- a/third_party/boringssl-with-bazel/src/include/openssl/base.h
 +++ b/third_party/boringssl-with-bazel/src/include/openssl/base.h
 @@ -108,6 +108,14 @@ extern "C" {
- #elif defined(__mips__) && defined(__LP64__)
+ #elif defined(__MIPSEL__) && defined(__LP64__)
  #define OPENSSL_64_BIT
  #define OPENSSL_MIPS64
 +#elif defined(__riscv)
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio_1.35.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio_1.36.1.bb
similarity index 79%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio_1.35.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio_1.36.1.bb
index 2c137f6..13cef53 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio_1.35.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio_1.36.1.bb
@@ -10,8 +10,10 @@
 SRC_URI_append_class-target = " file://ppc-boringssl-support.patch \
                                 file://riscv64_support.patch \
                                 file://boring_ssl.patch \
+                                file://mips_bigendian.patch \
+                                file://0001-absl-always-use-asm-sgidefs.h.patch \
 "
-SRC_URI[sha256sum] = "7bd0ebbb14dde78bf66a1162efd29d3393e4e943952e2f339757aa48a184645c"
+SRC_URI[sha256sum] = "a66ea59b20f3669df0f0c6a3bd57b985e5b2d1dcf3e4c29819bb8dc232d0fd38"
 
 RDEPENDS_${PN} = "${PYTHON_PN}-protobuf \
                   ${PYTHON_PN}-setuptools \
@@ -41,3 +43,7 @@
 BBCLASSEXTEND = "native nativesdk"
 
 CCACHE_DISABLE = "1"
+
+# needs vdso support
+COMPATIBLE_HOST_libc-musl_powerpc64le = "null"
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-gunicorn_20.0.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-gunicorn_20.1.0.bb
similarity index 74%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-gunicorn_20.0.4.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-gunicorn_20.1.0.bb
index 23aafd6..22fe495 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-gunicorn_20.0.4.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-gunicorn_20.1.0.bb
@@ -3,8 +3,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=f75f3fb94cdeab1d607e2adaa6077752"
 
-SRC_URI[md5sum] = "543669fcbb5739ee2af77184c5e571a1"
-SRC_URI[sha256sum] = "1904bb2b8a43658807108d59c3f3d56c2b6121a701161de0ddf9ad140073c626"
+SRC_URI[sha256sum] = "e0a968b5ba15f8a328fdfd7ab1fcb5af4470c28aaf7e55df02a99bc13138e6e8"
 
 inherit pypi setuptools3 ptest
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-h11_0.12.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-h11_0.12.0.bb
new file mode 100644
index 0000000..4cd0d4d
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-h11_0.12.0.bb
@@ -0,0 +1,8 @@
+SUMMARY = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1"
+HOMEPAGE = "https://github.com/python-hyper/h11"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=f5501d19c3116f4aaeef89369f458693"
+
+inherit pypi setuptools3
+
+SRC_URI[sha256sum] = "47222cb6067e4a307d535814917cd98fd0a57b6788ce715755fa2b6c28b56042"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-hexdump_3.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-hexdump_3.3.bb
index cb04e17..5325048 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-hexdump_3.3.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-hexdump_3.3.bb
@@ -19,9 +19,7 @@
 
 BBCLASSEXTEND = "native nativesdk"
 
-do_cleanup_hexfile() {
+do_install_append() {
     rm ${D}${datadir}/data/hexfile.bin
     rmdir ${D}${datadir}/data ${D}${datadir}
 }
-
-addtask cleanup_hexfile before do_package after do_install
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-huey_2.3.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-huey_2.3.0.bb
deleted file mode 100644
index f70a349..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-huey_2.3.0.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-SUMMARY = "a little task queue for python"
-SECTION = "devel/python"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=5cac039fcc82f01141cc170b48f315d4"
-
-PYPI_PACKAGE = "huey"
-
-SRC_URI[md5sum] = "aa9f2a8f54cb68c62690c5e28589f49c"
-SRC_URI[sha256sum] = "76978840a875607cd77c283c4ebf3ea5071b2ec06a1ac428d63be0d88f1e7070"
-
-inherit pypi setuptools3
-
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-huey_2.3.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-huey_2.3.1.bb
new file mode 100644
index 0000000..d8141c8
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-huey_2.3.1.bb
@@ -0,0 +1,11 @@
+SUMMARY = "a little task queue for python"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=5cac039fcc82f01141cc170b48f315d4"
+
+PYPI_PACKAGE = "huey"
+
+SRC_URI[sha256sum] = "de9b6d0fd59794378fe05813d302be68038044ef3b68274b84ca8d285e20f803"
+
+inherit pypi setuptools3
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-humanize_3.2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-humanize_3.3.0.bb
similarity index 79%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-humanize_3.2.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-humanize_3.3.0.bb
index 646e20f..3d54cf0 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-humanize_3.2.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-humanize_3.3.0.bb
@@ -4,7 +4,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENCE;md5=4ecc42519e84f6f3e23529464df7bd1d"
 
-SRC_URI[sha256sum] = "ab69004895689951b79f2ae4fdd6b8127ff0c180aff107856d5d98119a33f026"
+SRC_URI[sha256sum] = "8bf7abd672b867f38b8b04593829b85b9b6199a61ef6586bf3629cc06458ff35"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-ifaddr_0.1.7.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-ifaddr_0.1.7.bb
new file mode 100644
index 0000000..4fff7d1
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-ifaddr_0.1.7.bb
@@ -0,0 +1,10 @@
+DESCRIPTION = "Cross-platform network interface and IP address enumeration \
+library"
+HOMEPAGE = "https://pypi.org/project/ifaddr/"
+LICENSE = "MIT"
+
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=8debe8d42320ec0ff24665319b625a5e"
+
+SRC_URI[sha256sum] = "1f9e8a6ca6f16db5a37d3356f07b6e52344f6f9f7e806d618537731669eb1a94"
+
+inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-incremental_17.5.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-incremental_21.3.0.bb
similarity index 82%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-incremental_17.5.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-incremental_21.3.0.bb
index 568ba19..ff8fab3 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-incremental_17.5.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-incremental_21.3.0.bb
@@ -3,8 +3,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=6ca9b07f08e2c72d48c74d363d1e0e15"
 
-SRC_URI[md5sum] = "602746e0d438e075a5a9e0678140bba2"
-SRC_URI[sha256sum] = "7b751696aaf36eebfab537e458929e194460051ccad279c72b755a167eebd4b3"
+SRC_URI[sha256sum] = "02f5de5aff48f6b9f665d99d48bfc7ec03b6e3943210de7cfc88856d755d6f57"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-ipython_7.20.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-ipython_7.22.0.bb
similarity index 88%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-ipython_7.20.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-ipython_7.22.0.bb
index 42795b9..7bc0d1d 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-ipython_7.20.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-ipython_7.22.0.bb
@@ -6,7 +6,7 @@
 
 PYPI_PACKAGE = "ipython"
 
-SRC_URI[sha256sum] = "1923af00820a8cf58e91d56b89efc59780a6e81363b94464a0f17c039dffff9e"
+SRC_URI[sha256sum] = "9c900332d4c5a6de534b4befeeb7de44ad0cc42e8327fa41b7685abde58cec74"
 
 RDEPENDS_${PN} = "\
     ${PYTHON_PN}-setuptools \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-isort_5.7.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-isort_5.8.0.bb
similarity index 81%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-isort_5.7.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-isort_5.8.0.bb
index 9f234ee..36de825 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-isort_5.7.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-isort_5.8.0.bb
@@ -4,7 +4,7 @@
 SECTION = "devel/python"
 LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=6;endline=6;md5=8227180126797a0148f94f483f3e1489"
 
-SRC_URI[sha256sum] = "c729845434366216d320e936b8ad6f9d681aab72dc7cbc2d51bedc3582f3ad1e"
+SRC_URI[sha256sum] = "0a943902919f65c5684ac4e0154b1ad4fac6dcaa5d9f3426b732f1c8b5419be6"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-jmespath_0.10.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-jmespath_0.10.0.bb
new file mode 100644
index 0000000..46976d1
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-jmespath_0.10.0.bb
@@ -0,0 +1,12 @@
+SUMMARY = "JMESPath (pronounced 'james path') allows you to declaratively specify how to extract elements from a JSON document."
+HOMEPAGE = "https://pypi.org/project/jmespath/"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2683790f5fabb41a3f75b70558799eb4"
+
+SRC_URI[md5sum] = "65bdcb5fa5bcf1cc710ffa508e78e408"
+SRC_URI[sha256sum] = "b85d0567b8666149a93172712e68920734333c0ce7e89b78b3e987f71e5ed4f9"
+
+inherit pypi setuptools3
+
+RDEPENDS_${PN} += "python3-math python3-json python3-numbers"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpatch_1.28.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpatch_1.28.bb
deleted file mode 100644
index cef2049..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpatch_1.28.bb
+++ /dev/null
@@ -1,10 +0,0 @@
-SUMMARY  = "Appling JSON patches in Python 2.6+ and 3.x"
-HOMEPAGE = "https://github.com/stefankoegl/python-json-patch"
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://COPYING;md5=32b15c843b7a329130f4e266a281ebb3"
-
-inherit pypi setuptools3
-
-SRC_URI[sha256sum] = "e930adc932e4d36087dbbf0f22e1ded32185dfb20662f2e3dd848677a5295a14"
-
-RDEPENDS_${PN} += "${PYTHON_PN}-json ${PYTHON_PN}-jsonpointer ${PYTHON_PN}-netclient ${PYTHON_PN}-stringold"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpatch_1.32.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpatch_1.32.bb
new file mode 100644
index 0000000..0c86240
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpatch_1.32.bb
@@ -0,0 +1,15 @@
+SUMMARY  = "Appling JSON patches in Python 2.6+ and 3.x"
+HOMEPAGE = "https://github.com/stefankoegl/python-json-patch"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://COPYING;md5=32b15c843b7a329130f4e266a281ebb3"
+
+inherit pypi setuptools3
+
+SRC_URI[sha256sum] = "b6ddfe6c3db30d81a96aaeceb6baf916094ffa23d7dd5fa2c13e13f8b6e600c2"
+
+RDEPENDS_${PN} += " \
+    ${PYTHON_PN}-json \
+    ${PYTHON_PN}-jsonpointer \
+    ${PYTHON_PN}-netclient \
+    ${PYTHON_PN}-stringold \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpointer_2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpointer_2.1.bb
similarity index 77%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpointer_2.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpointer_2.1.bb
index 68bfe97..a4cc05c 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpointer_2.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpointer_2.1.bb
@@ -5,8 +5,7 @@
 
 inherit pypi ptest setuptools3
 
-SRC_URI[md5sum] = "741b98d0e693b08b5e44e0a9da5a7bb7"
-SRC_URI[sha256sum] = "c192ba86648e05fdae4f08a17ec25180a9aef5008d973407b581798a83975362"
+SRC_URI[sha256sum] = "5a34b698db1eb79ceac454159d3f7c12a451a91f6334a4f638454327b7a89962"
 
 RDEPENDS_${PN} += " \
     ${PYTHON_PN}-json \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-lazy-object-proxy_1.5.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-lazy-object-proxy_1.6.0.bb
similarity index 77%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-lazy-object-proxy_1.5.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-lazy-object-proxy_1.6.0.bb
index 3ff7a12..700c70e 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-lazy-object-proxy_1.5.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-lazy-object-proxy_1.6.0.bb
@@ -6,6 +6,6 @@
 
 DEPENDS += "${PYTHON_PN}-setuptools-scm-native"
 
-SRC_URI[sha256sum] = "5944a9b95e97de1980c65f03b79b356f30a43de48682b8bdd90aa5089f0ec1f4"
+SRC_URI[sha256sum] = "489000d368377571c6f982fba6497f2aa13c6d1facc40660963da62f5c379726"
 
 inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-luma-core_2.2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-luma-core_2.3.1.bb
similarity index 68%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-luma-core_2.2.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-luma-core_2.3.1.bb
index b181e09..47efe8a 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-luma-core_2.2.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-luma-core_2.3.1.bb
@@ -2,11 +2,11 @@
 DESCRIPTION = "A component library to support SBC display drivers"
 HOMEPAGE = "https://github.com/rm-hull/luma.core"
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=db07e3d471938ea7d7fd2135f88ac9a1"
+LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=3b1d500f5911ec7522f1f790d616e0ee"
 
 inherit pypi setuptools3
 
-SRC_URI[sha256sum] = "62a24518d3aa084d75206a19056eb8aa71b5a3d0c159d2e95b388cb3150a7b1c"
+SRC_URI[sha256sum] = "f293f5fff8946eea62af3a5d5d7da55c37d2b64aac6c9c90180a385da9f7d003"
 
 CLEANBROKEN = "1"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.6.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.6.3.bb
similarity index 95%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.6.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.6.3.bb
index f7aed6d..cefe1ba 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.6.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.6.3.bb
@@ -18,7 +18,7 @@
 
 DEPENDS += "libxml2 libxslt"
 
-SRC_URI[sha256sum] = "cd11c7e8d21af997ee8079037fff88f16fda188a9776eb4b81c7e4c9c0a7d7fc"
+SRC_URI[sha256sum] = "39b78571b3b30645ac77b95f7c69d1bffc4cf8c3b157c435a34da72e78c82468"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-mccabe_0.6.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-mccabe_0.6.1.bb
index 63a9e35..b366f04 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-mccabe_0.6.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-mccabe_0.6.1.bb
@@ -1,5 +1,5 @@
 DESCRIPTION = "McCabe checker, plugin for flake8"
-HOMEPAGE = "https://github.com/dreamhost/cliff"
+HOMEPAGE = "https://github.com/PyCQA/mccabe"
 SECTION = "devel/python"
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=a489dc62bacbdad3335c0f160a974f0f"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-openpyxl_3.0.6.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-openpyxl_3.0.7.bb
similarity index 87%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-openpyxl_3.0.6.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-openpyxl_3.0.7.bb
index d4781ee..b326321 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-openpyxl_3.0.6.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-openpyxl_3.0.7.bb
@@ -9,6 +9,6 @@
 
 inherit pypi setuptools3
 
-SRC_URI[sha256sum] = "b229112b46e158b910a5d1b270b212c42773d39cab24e8db527f775b82afc041"
+SRC_URI[sha256sum] = "6456a3b472e1ef0facb1129f3c6ef00713cebf62e736cd7a75bcc3247432f251"
 
 RDEPENDS_${PN} += "${PYTHON_PN}-compression ${PYTHON_PN}-io ${PYTHON_PN}-pprint ${PYTHON_PN}-shell ${PYTHON_PN}-jdcal ${PYTHON_PN}-et-xmlfile"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pako_0.3.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pako_0.3.1.bb
similarity index 75%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pako_0.3.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pako_0.3.1.bb
index 3eacd0b..1930d86 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pako_0.3.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pako_0.3.1.bb
@@ -3,7 +3,7 @@
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=e23fadd6ceef8c618fc1c65191d846fa"
 
-SRC_URI[sha256sum] = "eabd1c121d6701069d1a10132f197ee2b5f4e75a3d68a93b07f69214ab0ff9c7"
+SRC_URI[sha256sum] = "c033a073bb818ca336ae1fccba2655bd60dfe77744f85d4517abd3160d72231f"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pandas_1.2.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pandas_1.2.3.bb
similarity index 88%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pandas_1.2.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pandas_1.2.3.bb
index 7529237..8c36c21 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pandas_1.2.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pandas_1.2.3.bb
@@ -6,7 +6,7 @@
 LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=c2a8f987b2ce77c368c6b3e1b5b10774"
 
-SRC_URI[sha256sum] = "14ed84b463e9b84c8ff9308a79b04bf591ae3122a376ee0f62c68a1bd917a773"
+SRC_URI[sha256sum] = "df6f10b85aef7a5bb25259ad651ad1cc1d6bb09000595cab47e718cbac250b1d"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pastedeploy_2.1.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pastedeploy_2.1.1.bb
new file mode 100644
index 0000000..47508e2
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pastedeploy_2.1.1.bb
@@ -0,0 +1,21 @@
+SUMMARY = "Load, configure, and compose WSGI applications and servers"
+HOMEPAGE = "https://pylonsproject.org/"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://license.txt;md5=1798f29d55080c60365e6283cb49779c"
+
+inherit pypi
+PYPI_PACKAGE = "PasteDeploy"
+
+SRC_URI[sha256sum] = "6dead6ab9823a85d585ef27f878bc647f787edb9ca8da0716aa9f1261b464817"
+
+S = "${WORKDIR}/PasteDeploy-${PV}"
+
+inherit setuptools3
+
+# Uncomment this line to enable all the optional features.
+#PACKAGECONFIG ?= "paste docs"
+PACKAGECONFIG[paste] = ",,,python3-paste"
+PACKAGECONFIG[docs] = ",,,python3-sphinx python3-pylons-sphinx-themes"
+
+DEPENDS= "python3 python3-setuptools-scm-native python3-pytest-runner-native"
+RDEPENDS_${PN} += "python3-core  python3-misc python3-netclient python3-pkgutil python3-setuptools python3-threading python3-core"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pep8_1.7.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pep8_1.7.1.bb
index 8291281..e8587c8 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pep8_1.7.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pep8_1.7.1.bb
@@ -1,5 +1,5 @@
 DESCRIPTION = "Python style guide checker"
-HOMEPAGE = "https://github.com/dreamhost/cliff"
+HOMEPAGE = "https://github.com/PyCQA/pycodestyle"
 SECTION = "devel/python"
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://README.rst;md5=d8ebbbe831259ce010179d2f310b0f3e"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_8.1.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_8.1.2.bb
similarity index 93%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_8.1.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_8.1.2.bb
index 6397459..a1b4f90 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_8.1.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_8.1.2.bb
@@ -9,7 +9,7 @@
            file://0001-support-cross-compiling.patch \
            file://0001-explicitly-set-compile-options.patch \
 "
-SRCREV ?= "fcc42e0d344146ee9d265d1f43c094ce5a0ec4cf"
+SRCREV ?= "88bd672dafad68b419ea29bef941dfa17f941038"
 
 inherit setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pint_0.16.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pint_0.17.bb
similarity index 82%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pint_0.16.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pint_0.17.bb
index d966595..9a47490 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pint_0.16.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pint_0.17.bb
@@ -10,8 +10,7 @@
 
 inherit pypi ptest setuptools3
 
-SRC_URI[md5sum] = "d4a7bbdf505dee964eb1e5e6e7f80c34"
-SRC_URI[sha256sum] = "d43a2e9ae003164978b60fdf8cd920d8581e1a5991df8dded29b00f4850ec83a"
+SRC_URI[sha256sum] = "f4d0caa713239e6847a7c6eefe2427358566451fe56497d533f21fb590a3f313"
 
 DEPENDS += "python3-setuptools-scm-native"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-portion_2.1.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-portion_2.1.5.bb
similarity index 76%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-portion_2.1.4.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-portion_2.1.5.bb
index d08d3e7..0fa107c 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-portion_2.1.4.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-portion_2.1.5.bb
@@ -7,6 +7,6 @@
 
 inherit pypi setuptools3
 
-SRC_URI[sha256sum] = "58b2792e6e9837a2d55a97d459b940c90fb08b5fba774f524e9359727c80e7b4"
+SRC_URI[sha256sum] = "ed62fd1450336026f55c7d40b92b7159efd81d1420c778dd1b592bb634b14b4c"
 
 BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-prettytable_2.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-prettytable_2.1.0.bb
similarity index 90%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-prettytable_2.0.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-prettytable_2.1.0.bb
index 3563bfa..fe72062 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-prettytable_2.0.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-prettytable_2.1.0.bb
@@ -3,7 +3,7 @@
 LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "file://COPYING;md5=c9a6829fcd174d9535b46211917c7671"
 
-SRC_URI[sha256sum] = "e37acd91976fe6119172771520e58d1742c8479703489321dc1d9c85e7259922"
+SRC_URI[sha256sum] = "5882ed9092b391bb8f6e91f59bcdbd748924ff556bb7c634089d5519be87baa0"
 
 do_install_append() {
     perm_files=`find "${D}${PYTHON_SITEPACKAGES_DIR}/" -name "*.txt" -o -name "PKG-INFO"`
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-prompt-toolkit_3.0.16.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-prompt-toolkit_3.0.18.bb
similarity index 86%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-prompt-toolkit_3.0.16.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-prompt-toolkit_3.0.18.bb
index 2a377d6..3662875 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-prompt-toolkit_3.0.16.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-prompt-toolkit_3.0.18.bb
@@ -3,7 +3,7 @@
 LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=b2cde7da89f0c1f3e49bf968d00d554f"
 
-SRC_URI[sha256sum] = "0fa02fa80363844a4ab4b8d6891f62dd0645ba672723130423ca4037b80c1974"
+SRC_URI[sha256sum] = "e1b4f11b9336a28fa11810bc623c357420f69dfdb6d2dac41ca2c21a55c033bc"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pulsectl_21.2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pulsectl_21.3.4.bb
similarity index 83%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pulsectl_21.2.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pulsectl_21.3.4.bb
index c99a550..a4455ee 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pulsectl_21.2.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pulsectl_21.3.4.bb
@@ -3,7 +3,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://COPYING;md5=f1d10048469ff90123263eb5e214061d"
 
-SRC_URI[sha256sum] = "282be9ad1a9add961f0bbafa8e19723ac397a2eec5e14fb8cd6c51ff29962715"
+SRC_URI[sha256sum] = "faa8b9336237565990298f20870e13dd1678a4586847ca5a7ff2abf10752f356"
 
 RDEPENDS_${PN} += "pulseaudio"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_8.1.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_9.1.1.bb
similarity index 75%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_8.1.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_9.1.1.bb
index 7b2b514..3d0b84c 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_8.1.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_9.1.1.bb
@@ -3,7 +3,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=b1dbd4e85f47b389bdadee9c694669f5"
 
-SRC_URI[sha256sum] = "df0295f653cee752de38cf8ef09f13ad9782c53924dfbaa191ca62bd5e1dce14"
+SRC_URI[sha256sum] = "ab9da1d2ef424b1fc755f6436f545a56056ec6de24075e93f369eac8eb821837"
 
 PYPI_PACKAGE = "PyChromecast"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pycodestyle_2.6.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pycodestyle_2.7.0.bb
similarity index 66%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pycodestyle_2.6.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pycodestyle_2.7.0.bb
index 4ad1f54..611abca 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pycodestyle_2.6.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pycodestyle_2.7.0.bb
@@ -4,8 +4,7 @@
 SECTION = "devel/python"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=a8546d0e77f416fb05a26acd89c8b3bd"
 
-SRC_URI[md5sum] = "e2fcdace728267d5fa3aa98e08ee40db"
-SRC_URI[sha256sum] = "c58a7d2815e0e8d7972bf1803331fb0152f867bd89adf8a01dfd55085434192e"
+SRC_URI[sha256sum] = "c389c1d06bf7904078ca03399a4816f974a1d590090fecea0c63ec26ebaf1cef"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyflakes_2.2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyflakes_2.3.1.bb
similarity index 71%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pyflakes_2.2.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pyflakes_2.3.1.bb
index 911cf4e..69680dd 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyflakes_2.2.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyflakes_2.3.1.bb
@@ -3,8 +3,7 @@
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=690c2d09203dc9e07c4083fc45ea981f"
 
-SRC_URI[md5sum] = "48b1c29732ca810a70cba0e6d0531169"
-SRC_URI[sha256sum] = "35b2d75ee967ea93b55750aa9edbbf72813e06a66ba54438df2cfac9e3c27fc8"
+SRC_URI[sha256sum] = "f5bc8ecabc05bb9d291eb5203d6810b49040f6ff446a756326104746cc00c1db"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pymisp_2.4.138.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pymisp_2.4.140.bb
similarity index 91%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pymisp_2.4.138.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pymisp_2.4.140.bb
index eb7bea8..32e6736 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pymisp_2.4.138.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pymisp_2.4.140.bb
@@ -4,7 +4,7 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=a3639cf5780f71b125d3e9d1dc127c20"
 
 SRC_URI = "git://github.com/MISP/PyMISP.git;protocol=https;branch=main"
-SRCREV = "9316420dc028a1ffc541986fc08793e669f2165e"
+SRCREV = "39a7b8242f0d3022276d417ec334bb46b890ff23"
 S = "${WORKDIR}/git"
 
 inherit setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyperf_2.1.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyperf_2.2.0.bb
similarity index 89%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pyperf_2.1.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pyperf_2.2.0.bb
index b57ea16..70676b0 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyperf_2.1.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyperf_2.2.0.bb
@@ -13,7 +13,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://COPYING;md5=78bc2e6e87c8c61272937b879e6dc2f8"
 
-SRC_URI[sha256sum] = "1257d673d89fdcdbaec8077afeb365e7a94739c1b263572b09403cac25708ad3"
+SRC_URI[sha256sum] = "498bb4d1fe21350c2b7c1aa8bb3eae9c9979358d0b66327954bc66839fcba8b6"
 
 DEPENDS += "${PYTHON_PN}-six-native"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyroute2_0.5.14.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyroute2_0.5.15.bb
similarity index 85%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pyroute2_0.5.14.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pyroute2_0.5.15.bb
index 84397b6..ca168b1 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyroute2_0.5.14.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyroute2_0.5.15.bb
@@ -3,8 +3,7 @@
 LIC_FILES_CHKSUM = "file://LICENSE.GPL.v2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
                     file://LICENSE.Apache.v2;md5=34281e312165f843a2b7d1f114fe65ce"
 
-SRC_URI[md5sum] = "6bde3624a6f22bdfb630bb54243a0d1d"
-SRC_URI[sha256sum] = "774c5ecf05fe40f0f601a7ab33c19ca0b24f00bf4a094e58deaa5333b7ca49b5"
+SRC_URI[sha256sum] = "d730eff091dd5b2b78282bc82ebe6888e7ee4d70b79468b1da58d99fc1a2a2fc"
 
 inherit setuptools3 pypi ptest
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyscaffold_3.3.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyscaffold_4.0.1.bb
similarity index 85%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pyscaffold_3.3.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pyscaffold_4.0.1.bb
index 9bebced..b0f8f3e 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyscaffold_3.3.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyscaffold_4.0.1.bb
@@ -12,6 +12,6 @@
 
 PYPI_PACKAGE = "PyScaffold"
 
-SRC_URI[sha256sum] = "1c3a2b76e60319b6ffc2a8b54e240382109c6241576bf0a47ea476c7194f6a69"
+SRC_URI[sha256sum] = "8fd7b2bdbfc7f7758a66d66cbf796af338e40d69fd4f7b4ddb9996c38add1dbe"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pysonos_0.0.40.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pysonos_0.0.40.bb
new file mode 100644
index 0000000..dbfa0df
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pysonos_0.0.40.bb
@@ -0,0 +1,15 @@
+DESCRIPTION = "A SoCo fork with fixes for Home Assistant "
+HOMEPAGE = "https://pypi.org/project/pysonos/"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=07b0e2ca9ac77cd65cd4edf2e13367ea"
+
+SRC_URI[sha256sum] = "3fed94dffbca5807d39d000d1415fe8d7dfc1032ba92a33d0b577eb2e98a81f3"
+
+inherit pypi setuptools3
+
+RDEPENDS_${PN} += "\
+	${PYTHON_PN}-ifaddr \
+	${PYTHON_PN}-requests \
+	${PYTHON_PN}-xmltodict \
+	"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pystemd_0.8.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pystemd_0.8.0.bb
index e09b633..6f302fa 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pystemd_0.8.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pystemd_0.8.0.bb
@@ -6,6 +6,7 @@
 SRC_URI[sha256sum] = "cac2e42043ab28d43adf33dab493c6a3cf8a99794f824ae8af6d9cd6458b9972"
 
 DEPENDS = "systemd"
+RDEPENDS_${PN} += "python3-xml python3-pprint"
 REQUIRED_DISTRO_FEATURES = "systemd"
 
 inherit pypi setuptools3 features_check
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-helpers-namespace_2019.1.8.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-helpers-namespace_2021.3.24.bb
similarity index 64%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-helpers-namespace_2019.1.8.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-helpers-namespace_2021.3.24.bb
index b3aced4..9211ac3 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-helpers-namespace_2019.1.8.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-helpers-namespace_2021.3.24.bb
@@ -2,13 +2,17 @@
 HOMEPAGE = "https://github.com/saltstack/pytest-helpers-namespace"
 SECTION = "devel/python"
 LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://PKG-INFO;md5=cc99508c43d9d14fd51c7fac622ffd23"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=440a4cdb311cd7ad181efb4cba06d562"
 
-SRC_URI[md5sum] = "04ec1d8750f9b154e782a47cf8b30736"
-SRC_URI[sha256sum] = "4eff23a19f92410c0166f6dffbfa8901d3e14a80e97d70cd08428b6d597771ce"
+SRC_URI[sha256sum] = "188df5a7c52390fa27d6cd2f18e74d64a2ef0b9fb6e12f15fdf5a95f4813d25f"
 
 inherit pypi setuptools3
 
+DEPENDS += "\
+    ${PYTHON_PN}-wheel-native \
+    ${PYTHON_PN}-pip-native \
+"
+
 RDEPENDS_${PN} += " \
     ${PYTHON_PN}-pytest \
 "
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pythonping_1.0.16.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pythonping_1.0.16.bb
new file mode 100644
index 0000000..5affb93
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pythonping_1.0.16.bb
@@ -0,0 +1,12 @@
+SUMMARY = "PythonPing is simple way to ping in Python."
+HOMEPAGE = "https://pypi.org/project/pythonping/"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://setup.py;beginline=12;endline=12;md5=2d33c00f47720c7e35e1fdb4b9fab027"
+
+SRC_URI[md5sum] = "9b505ad8a5b8a6a8e57ccf75098ea364"
+SRC_URI[sha256sum] = "d025c8b25952580dea47bc241421e17a5a97f97f50098e1096dd10d845d0f156"
+
+inherit pypi setuptools3
+
+RDEPENDS_${PN} += "python3-io"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2020.11.13.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2021.3.17.bb
similarity index 77%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2020.11.13.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2021.3.17.bb
index b5f7143..a3cb804 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2020.11.13.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2021.3.17.bb
@@ -5,6 +5,6 @@
 
 inherit pypi setuptools3
 
-SRC_URI[sha256sum] = "83d6b356e116ca119db8e7c6fc2983289d87b27b3fac238cfe5dca529d884562"
+SRC_URI[sha256sum] = "4b8a1fb724904139149a43e172850f35aa6ea97fb0545244dc0b805e0154ed68"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-requests/setup.py-Support-idna-version-3.1.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-requests/setup.py-Support-idna-version-3.1.patch
new file mode 100644
index 0000000..2633224
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-requests/setup.py-Support-idna-version-3.1.patch
@@ -0,0 +1,40 @@
+From fc45beed40a86c8fc38fc430765c1c5d2c9961c2 Mon Sep 17 00:00:00 2001
+From: Fabio Berton <fabio.berton@ossystems.com.br>
+Date: Thu, 4 Mar 2021 09:26:48 -0300
+Subject: [PATCH] setup.py: Support idna version 3.1
+Organization: O.S. Systems Software LTDA.
+
+Change idna required version to use python3-idna recipe that currently
+is on version 3.1.
+
+Without this change python-request doesn't work as the idna version
+doesn't match the required versions. When bump python-request recipe,
+verify if the upstream project bumped the idna version and drop this
+patch.
+
+As this recipe was tested with python3-idna_3.1 don't allow higher
+versions.
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
+---
+ setup.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/setup.py b/setup.py
+index 7ba4b2a2..9d3b973e 100755
+--- a/setup.py
++++ b/setup.py
+@@ -43,7 +43,7 @@ packages = ['requests']
+ 
+ requires = [
+     'chardet>=3.0.2,<5',
+-    'idna>=2.5,<3',
++    'idna>=2.5,<3.2',
+     'urllib3>=1.21.1,<1.27',
+     'certifi>=2017.4.17'
+ 
+-- 
+2.30.1
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-requests_2.25.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-requests_2.25.1.bb
index 6af8365..cea8fd5 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-requests_2.25.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-requests_2.25.1.bb
@@ -3,6 +3,8 @@
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=34400b68072d710fecd0a2940a0d1658"
 
+SRC_URI += "file://setup.py-Support-idna-version-3.1.patch"
+
 SRC_URI[sha256sum] = "27973dd4a904a4f13b263a19c866c13b92a39ed1c964655f025f3f8d3d75b804"
 
 inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-rfc3339-validator_0.1.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-rfc3339-validator_0.1.3.bb
similarity index 76%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-rfc3339-validator_0.1.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-rfc3339-validator_0.1.3.bb
index e226e11..a07a094 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-rfc3339-validator_0.1.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-rfc3339-validator_0.1.3.bb
@@ -5,8 +5,7 @@
 
 FILESEXTRAPATHS_prepend := "${THISDIR}/python-rfc3339-validator:"
 
-SRC_URI[md5sum] = "2c233007189d5ef21046cb2afac51a96"
-SRC_URI[sha256sum] = "c9659c3183488a1875c4d327c9873d9e92c54cdcd69dfbfae7546ad8b27baf9a"
+SRC_URI[sha256sum] = "7a578aa0740e9ee2b48356fe1f347139190c4c72e27f303b3617054efd15df32"
 
 PYPI_PACKAGE = "rfc3339_validator"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-robotframework_3.2.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-robotframework_4.0.bb
similarity index 86%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-robotframework_3.2.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-robotframework_4.0.bb
index 10f031c..6cb8643 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-robotframework_3.2.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-robotframework_4.0.bb
@@ -12,8 +12,8 @@
 inherit pypi setuptools3
 
 PYPI_PACKAGE_EXT = "zip"
-SRC_URI[md5sum] = "ac6b77c223821856e8ac077acf5a7c1d"
-SRC_URI[sha256sum] = "a0786a916d0572bd9d6afe26e95c6021e3df5dcafa0ece6b302e36366e58c24e"
+
+SRC_URI[sha256sum] = "a02a6f4af3b0830e4396058694c333cb63eb47f50acf6723be34f0f7a4d73ad7"
 
 RDEPENDS_${PN} += " \
     ${PYTHON_PN}-shell \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-ruamel-yaml_0.16.12.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-ruamel-yaml_0.17.2.bb
similarity index 62%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-ruamel-yaml_0.16.12.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-ruamel-yaml_0.17.2.bb
index 7593ce7..6f15d1e 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-ruamel-yaml_0.16.12.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-ruamel-yaml_0.17.2.bb
@@ -2,7 +2,7 @@
 AUTHOR = "Anthon van der Neut"
 
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=60afc0a1bb0501c0c555cabe78bba022"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=fa0a51dfb461e2f803969e0f3fa71dfe"
 
 PYPI_PACKAGE = "ruamel.yaml"
 
@@ -10,8 +10,7 @@
 
 BBCLASSEXTEND = "native nativesdk"
 
-SRC_URI[md5sum] = "c7e4b216d9554d80be42011b448b7c61"
-SRC_URI[sha256sum] = "076cc0bc34f1966d920a49f18b52b6ad559fbe656a0748e3535cf7b3f29ebf9e"
+SRC_URI[sha256sum] = "8f1e15421668b9edf30ed02899f5f81aff9808a4271935776f61a99a569a13da"
 
 do_install_prepend() {
     export RUAMEL_NO_PIP_INSTALL_CHECK=1
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-scrypt_0.8.17.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-scrypt_0.8.17.bb
new file mode 100644
index 0000000..bcd5891
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-scrypt_0.8.17.bb
@@ -0,0 +1,23 @@
+DESCRIPTION = "Bindings for the scrypt key derivation function library"
+LICENSE = "BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=2ddf47d0ff1849bce3257ccbc1fd275c"
+HOMEPAGE="https://github.com/holgern/py-scrypt"
+
+SRC_URI += "file://0001-py-scrypt-remove-the-hard-coded-include-paths.patch"
+
+SRC_URI[sha256sum] = "25b5075f2238be93af1cd574540a5ea01b8547f9b678aa72d22fce22577475ec"
+
+inherit pypi ptest setuptools3 dos2unix
+
+SRC_URI += " \
+    file://run-ptest \
+"
+
+RDEPENDS_${PN}-ptest += " \
+    ${PYTHON_PN}-pytest \
+"
+
+do_install_ptest() {
+    install -d ${D}${PTEST_PATH}/tests
+    cp -rf ${S}/scrypt/tests/* ${D}${PTEST_PATH}/tests/
+}
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-scrypt_0.8.6.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-scrypt_0.8.6.bb
deleted file mode 100644
index 7588fc5..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-scrypt_0.8.6.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-DESCRIPTION = "Bindings for the scrypt key derivation function library"
-LICENSE = "BSD-2-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=168ff75417f75a83e63c8875292d44dc"
-HOMEPAGE="https://bitbucket.org/mhallin/py-scrypt/overview"
-
-SRC_URI += "file://0001-py-scrypt-remove-the-hard-coded-include-paths.patch"
-
-SRC_URI[md5sum] = "ae8e3263aa31b040c1f9c7f1e1843a56"
-SRC_URI[sha256sum] = "f8239b2d47fa1d40bc27efd231dc7083695d10c1c2ac51a99380360741e0362d"
-
-inherit pypi ptest setuptools3
-
-SRC_URI += " \
-    file://run-ptest \
-"
-
-RDEPENDS_${PN}-ptest += " \
-    ${PYTHON_PN}-pytest \
-"
-
-do_install_ptest() {
-    install -d ${D}${PTEST_PATH}/tests
-    cp -rf ${S}/tests/* ${D}${PTEST_PATH}/tests/
-}
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_0.20.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_1.0.0.bb
similarity index 80%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_0.20.3.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_1.0.0.bb
index 13ba1e6..22b9f55 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_0.20.3.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_1.0.0.bb
@@ -5,7 +5,8 @@
 LICENSE = "BSD-2-Clause"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=0c79f8d3c91fc847350efd28bfe0a341"
 
-SRC_URI[sha256sum] = "4ae8d1ced6c67f1c8ea51d82a16721c166c489b76876c9f2c202b8a50334b237"
+SRC_URI[sha256sum] = "71de00c9711926816f750bc0f57ef2abbcb1bfbdf5378c601df7ec978f44857a"
 
 PYPI_PACKAGE = "sentry-sdk"
+
 inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.0.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.1.0.bb
similarity index 88%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.0.4.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.1.0.bb
index 70db342..8cf6a96 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.0.4.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.1.0.bb
@@ -9,7 +9,7 @@
 
 PYPI_PACKAGE = "python-socketio"
 
-SRC_URI[sha256sum] = "f53fd0d5bd9f75a70492062f4ae6195ab5d34d67a29024d740f25e468392893e"
+SRC_URI[sha256sum] = "338cc29abb6f3ca14c88f1f8d05ed27c690df4648f62062b299f92625bbf7093"
 
 PACKAGECONFIG ?= "asyncio_client client"
 PACKAGECONFIG[asyncio_client] = ",,,${PYTHON_PN}-aiohttp ${PYTHON_PN}-websockets"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-soupsieve_2.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-soupsieve_2.2.1.bb
similarity index 85%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-soupsieve_2.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-soupsieve_2.2.1.bb
index 9507f60..93ef04f 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-soupsieve_2.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-soupsieve_2.2.1.bb
@@ -4,7 +4,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE.md;md5=33c3a77def9b3ad83e01c65bdcc1af67"
 
-SRC_URI[sha256sum] = "407fa1e8eb3458d1b5614df51d9651a1180ea5fedf07feb46e45d7e25e6d6cdd"
+SRC_URI[sha256sum] = "052774848f448cf19c7e959adf5566904d525f33a3f8b6ba6f6f8f26ec7de0cc"
 
 inherit pypi setuptools3 ptest
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-spidev_3.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-spidev_3.2.bb
deleted file mode 100644
index 6567959..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-spidev_3.2.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SUMMARY = "Python bindings for Linux SPI access through spidev"
-DESCRIPTION = "This project contains a python module for interfacing with SPI\
-devices from user space via the spidev linux kernel driver.\
-This is a modified version of the code originally found\
-[here](http://elk.informatik.fh-augsburg.de/da/da-49/trees/pyap7k/lang/py-spi)\
-All code is GPLv2 licensed unless explicitly stated otherwise."
-HOMEPAGE = "http://github.com/doceme/py-spidev"
-SECTION = "devel/python"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://LICENSE.md;md5=54bdb9022ebb75ab68399cdaab97da60"
-SRCNAME = "spidev"
-
-SRC_URI[md5sum] = "f601676f1bb48b9aa3b3897f95216365"
-SRC_URI[sha256sum] = "09d2b5122f0dd79910713a11f9a0020f71537224bf829916def4fffc0ea59456"
-
-inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-sqlalchemy_1.3.23.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-sqlalchemy_1.4.3.bb
similarity index 84%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-sqlalchemy_1.3.23.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-sqlalchemy_1.4.3.bb
index d962ea7..8cff18d 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-sqlalchemy_1.3.23.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-sqlalchemy_1.4.3.bb
@@ -4,7 +4,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=3359ed561ac16aaa25b6c6eff84df595"
 
-SRC_URI[sha256sum] = "6fca33672578666f657c131552c4ef8979c1606e494f78cd5199742dfb26918b"
+SRC_URI[sha256sum] = "a719b80b41a900bbcec3cc248616394ebd134043ce5e62185270d785d8a184d3"
 
 PYPI_PACKAGE = "SQLAlchemy"
 inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-twine_3.3.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-twine_3.4.1.bb
similarity index 77%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-twine_3.3.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-twine_3.4.1.bb
index 0bc1999..111366d 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-twine_3.3.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-twine_3.4.1.bb
@@ -3,7 +3,7 @@
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=a3d1106b253a8d50dd82a4202a045b4c"
 
-SRC_URI[sha256sum] = "fcffa8fc37e8083a5be0728371f299598870ee1eccc94e9a25cef7b1dcfa8297"
+SRC_URI[sha256sum] = "a56c985264b991dc8a8f4234eb80c5af87fa8080d0c224ad8f2cd05a2c22e83b"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_20.3.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_21.2.0.bb
similarity index 97%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_20.3.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_21.2.0.bb
index 697725f..e0f1a8c 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_20.3.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_21.2.0.bb
@@ -5,13 +5,11 @@
 
 #twisted/topfiles/NEWS:655: - Relicensed: Now under the MIT license, rather than LGPL.
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=27ac6d9597237e7e76282edd7a40cd68"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e33c411c0b86b1f3ca299091ed51ca31"
 
-SRC_URI[sha256sum] = "d72c55b5d56e176563b91d11952d13b01af8725c623e498db5507b6614fc1e10"
-SRC_URI[md5sum] = "fc16d575730db7d0cddd09fc35af3eea"
+SRC_URI[sha256sum] = "77544a8945cf69b98d2946689bbe0c75de7d145cdf11f391dd487eae8fc95a12"
 
 PYPI_PACKAGE = "Twisted"
-PYPI_PACKAGE_EXT = "tar.bz2"
 
 inherit pypi setuptools3
 
@@ -201,6 +199,7 @@
 ${libdir}/${PYTHON_DIR}/site-packages/twisted/logger/ \
 ${libdir}/${PYTHON_DIR}/site-packages/twisted/_threads/ \
 ${libdir}/${PYTHON_DIR}/site-packages/twisted/positioning/ \
+${libdir}/${PYTHON_DIR}/site-packages/twisted/py.typed \
 "
 
 FILES_${PN}-mail = " \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-txdbus_1.1.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-txdbus_1.1.2.bb
new file mode 100644
index 0000000..cf2c98b
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-txdbus_1.1.2.bb
@@ -0,0 +1,13 @@
+SUMMARY = "A native Python implementation of the DBus protocol for Twisted applications."
+AUTHOR = "Tom Cocagne"
+HOMEPAGE = "https://pypi.org/project/txdbus/"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://README.rst;beginline=32;endline=32;md5=2141358b0bce85fc45216ba91735ad50"
+
+SRC_URI[md5sum] = "d397357dee78750385f92ca9c6c1f063"
+SRC_URI[sha256sum] = "8375a5fb68a12054f0def91af800c821fb2232949337756ed975f88d8ea2bc97"
+
+inherit pypi setuptools3
+
+RDEPENDS_${PN} += "python3-six python3-twisted"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-urllib3_1.26.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-urllib3_1.26.4.bb
similarity index 86%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-urllib3_1.26.3.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-urllib3_1.26.4.bb
index 739cf24..0a31fb1 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-urllib3_1.26.3.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-urllib3_1.26.4.bb
@@ -3,7 +3,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=c2823cb995439c984fd62a973d79815c"
 
-SRC_URI[sha256sum] = "de3eedaad74a2683334e282005cd8d7f22f4d55fa690a2a1020a416cb0a47e73"
+SRC_URI[sha256sum] = "e7b021f7241115872f92f43c6508082facffbd1c048e3c6e2bb9c2a157e28937"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-waitress_1.4.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-waitress_2.0.0.bb
similarity index 71%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-waitress_1.4.4.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-waitress_2.0.0.bb
index 3e207de..490dcee 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-waitress_1.4.4.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-waitress_2.0.0.bb
@@ -6,7 +6,6 @@
 LICENSE = "ZPL-2.1"
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=78ccb3640dc841e1baecb3e27a6966b2"
 
-SRC_URI[md5sum] = "079c3c4902b1cb5d0a917276ee70f1df"
-SRC_URI[sha256sum] = "1bb436508a7487ac6cb097ae7a7fe5413aefca610550baf58f0940e51ecfb261"
+SRC_URI[sha256sum] = "69e1f242c7f80273490d3403c3976f3ac3b26e289856936d1f620ed48f321897"
 
 inherit setuptools3 pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-websocket-client_0.57.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-websocket-client_0.58.0.bb
similarity index 61%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-websocket-client_0.57.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-websocket-client_0.58.0.bb
index aaa92f3..a5d7d90 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-websocket-client_0.57.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-websocket-client_0.58.0.bb
@@ -4,13 +4,13 @@
 This provide the low level APIs for WebSocket. All APIs \
 are the synchronous functions."
 HOMEPAGE = "https://github.com/websocket-client/websocket-client"
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=c4c4a98fbc4836b81c8c64d6ecb01fc1"
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=c96ca6c1de8adc025adfada81d06fba5"
 
-SRC_URI[md5sum] = "8061820da5e1de26a6a1a6996d4eebd5"
-SRC_URI[sha256sum] = "d735b91d6d1692a6a181f2a8c9e0238e5f6373356f561bb9dc4c7af36f452010"
+SRC_URI[sha256sum] = "63509b41d158ae5b7f67eb4ad20fecbb4eee99434e73e140354dc3ff8e09716f"
 
 PYPI_PACKAGE = "websocket_client"
+
 inherit pypi setuptools3
 
 RDEPENDS_${PN} = "\
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_1.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_1.0.0.bb
deleted file mode 100644
index 3e4374e..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_1.0.0.bb
+++ /dev/null
@@ -1,50 +0,0 @@
-SUMMARY = "The Swiss Army knife of Python web development"
-DESCRIPTION = "\
-Werkzeug started as simple collection of various utilities for WSGI \
-applications and has become one of the most advanced WSGI utility modules. \
-It includes a powerful debugger, full featured request and response objects, \
-HTTP utilities to handle entity tags, cache control headers, HTTP dates, \
-cookie handling, file uploads, a powerful URL routing system and a bunch \
-of community contributed addon modules."
-HOMEPAGE = "http://werkzeug.pocoo.org/"
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=5dc88300786f1c214c1e9827a5229462"
-
-SRC_URI[md5sum] = "305f75c4a88c96dcdc5654bf2d01bc05"
-SRC_URI[sha256sum] = "169ba8a33788476292d04186ab33b01d6add475033dfc07215e6d219cc077096"
-
-PYPI_PACKAGE = "Werkzeug"
-
-inherit pypi setuptools3
-
-CLEANBROKEN = "1"
-
-PACKAGES =+ "${PN}-tests"
-FILES_${PN}-tests+= " \
-    ${PYTHON_SITEPACKAGES_DIR}/werkzeug/test* \
-    ${PYTHON_SITEPACKAGES_DIR}/werkzeug/__pycache__/test* \
-    ${PYTHON_SITEPACKAGES_DIR}/werkzeug/contrib/test* \
-    ${PYTHON_SITEPACKAGES_DIR}/werkzeug/contrib/__pycache__/test* \
-"
-
-RDEPENDS_${PN} += " \
-    ${PYTHON_PN}-datetime \
-    ${PYTHON_PN}-difflib \
-    ${PYTHON_PN}-email \
-    ${PYTHON_PN}-html \
-    ${PYTHON_PN}-io \
-    ${PYTHON_PN}-json \
-    ${PYTHON_PN}-misc \
-    ${PYTHON_PN}-netclient \
-    ${PYTHON_PN}-netserver \
-    ${PYTHON_PN}-numbers \
-    ${PYTHON_PN}-pkgutil \
-    ${PYTHON_PN}-pprint \
-    ${PYTHON_PN}-threading \
-    ${PYTHON_PN}-unixadmin \
-"
-
-RDEPENDS_${PN}-tests = " \
-    ${PN} \
-    ${PYTHON_PN}-unittest \
-"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_1.0.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_1.0.1.bb
index 58735c1..8af0fef 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_1.0.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_1.0.1.bb
@@ -7,7 +7,7 @@
 cookie handling, file uploads, a powerful URL routing system and a bunch \
 of community contributed addon modules."
 HOMEPAGE = "http://werkzeug.pocoo.org/"
-LICENSE = "BSD"
+LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=5dc88300786f1c214c1e9827a5229462"
 
 PYPI_PACKAGE = "Werkzeug"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-wpa-supplicant/0001-cli-drop-the-second-argument-from-click.argument-dec.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-wpa-supplicant/0001-cli-drop-the-second-argument-from-click.argument-dec.patch
new file mode 100644
index 0000000..59aaa7e
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-wpa-supplicant/0001-cli-drop-the-second-argument-from-click.argument-dec.patch
@@ -0,0 +1,127 @@
+From 49b133d84e7a1471bf51d8d005b1ba8b78c37724 Mon Sep 17 00:00:00 2001
+From: Bartosz Golaszewski <brgl@bgdev.pl>
+Date: Sat, 20 Mar 2021 20:59:54 +0100
+Subject: [PATCH] cli: drop the second argument from @click.argument()
+ decorator
+
+@click.argument no longer takes two positional arguments.
+
+Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
+---
+Upstream-Status: Pending
+
+ wpa_supplicant/cli.py | 28 ++++++++++++++--------------
+ 1 file changed, 14 insertions(+), 14 deletions(-)
+
+diff --git a/wpa_supplicant/cli.py b/wpa_supplicant/cli.py
+index bad5b5b..1fb322d 100644
+--- a/wpa_supplicant/cli.py
++++ b/wpa_supplicant/cli.py
+@@ -81,7 +81,7 @@ def root(ctx, debug):
+ 
+ 
+ @root.group()
+-@click.argument('ifname', 'e.g. wlan0')
++@click.argument('ifname')
+ @click.pass_context
+ def interface(ctx, ifname):
+     """Access fi.w1.wpa_supplicant1.Interface object"""
+@@ -101,7 +101,7 @@ def interface_p2p_device():
+ 
+ 
+ @root.group()
+-@click.argument('ifname', 'e.g. wlan0')
++@click.argument('ifname')
+ @click.option('--ssid', default=None, help='Look at scan results for BSS examples')
+ @click.option('--bssid', default=None, help='Look at scan results for BSS examples')
+ @click.pass_context
+@@ -149,7 +149,7 @@ def persistent_group():
+ # fi.w1.wpa_supplicant1 API
+ #
+ @root.command()
+-@click.argument('ifname', 'e.g. wlan0')
++@click.argument('ifname')
+ @click.option('--bridge_if_name', default=None, help='Bridge to control, e.g., br0')
+ @click.option('--driver', default=None, help='e.g. nl80211')
+ @click.option('--config_file', default=None, help='Config file path')
+@@ -161,7 +161,7 @@ def create_interface(ifname, bridge_if_name, driver, config_file):
+ 
+ 
+ @root.command()
+-@click.argument('ifname', 'e.g. wlan0')
++@click.argument('ifname')
+ def remove_interface(ifname):
+     """Method: Deregisters a wireless interface from wpa_supplicant"""
+     with supplicant() as supp:
+@@ -170,7 +170,7 @@ def remove_interface(ifname):
+ 
+ 
+ @root.command()
+-@click.argument('ifname', 'e.g. wlan0')
++@click.argument('ifname')
+ def get_interface(ifname):
+     """Method: Returns a D-Bus path to an object related to an interface which wpa_supplicant already controls"""
+     with supplicant() as supp:
+@@ -178,7 +178,7 @@ def get_interface(ifname):
+ 
+ 
+ @root.command(name='get')
+-@click.argument('name', 'Name of property (case sensitive)')
++@click.argument('name')
+ def root_get(name):
+     """Method: Get Property (case sensitive)"""
+     with supplicant() as supp:
+@@ -186,8 +186,8 @@ def root_get(name):
+ 
+ 
+ @root.command(name='set')
+-@click.argument('name', 'Name of property (case sensitive)')
+-@click.argument('value', 'Value to be set')
++@click.argument('name')
++@click.argument('value')
+ def root_set(name, value):
+     """Method: Set Property (case sensitive)"""
+     with supplicant() as supp:
+@@ -217,7 +217,7 @@ def disconnect(ctx):
+ 
+ 
+ @interface.command(name='get')
+-@click.argument('name', 'Name of property (case sensitive)')
++@click.argument('name')
+ @click.pass_context
+ def interface_get(ctx, name):
+     """Method: Get Property (case sensitive)"""
+@@ -227,8 +227,8 @@ def interface_get(ctx, name):
+ 
+ 
+ @interface.command(name='set')
+-@click.argument('name', 'Name of property (case sensitive)')
+-@click.argument('value', 'Value to be set')
++@click.argument('name')
++@click.argument('value')
+ @click.pass_context
+ def interface_set(ctx, name, value):
+     """Method: Set Property (case sensitive)"""
+@@ -241,7 +241,7 @@ def interface_set(ctx, name, value):
+ # fi.w1.wpa_supplicant1.BSS API
+ #
+ @bss.command(name='get')
+-@click.argument('name', 'Name of property (case sensitive)')
++@click.argument('name')
+ @click.pass_context
+ def bss_get(ctx, name):
+     """Method: Get Property (case sensitive)"""
+@@ -261,8 +261,8 @@ def bss_get(ctx, name):
+ 
+ 
+ @bss.command(name='set')
+-@click.argument('name', 'Name of property (case sensitive)')
+-@click.argument('value', 'Value to be set')
++@click.argument('name')
++@click.argument('value')
+ @click.pass_context
+ def bss_set(ctx, name, value):
+     """Method: Set Property (case sensitive)"""
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-wpa-supplicant_0.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-wpa-supplicant_0.2.bb
new file mode 100644
index 0000000..2309bec
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-wpa-supplicant_0.2.bb
@@ -0,0 +1,16 @@
+SUMMARY = "Python interface to the wpa_supplicant D-Bus interface"
+HOMEPAGE = "https://pypi.org/project/wpa_supplicant/"
+SECTION = "devel/python"
+LICENSE = "MPL-2.0"
+LIC_FILES_CHKSUM = "file://README.md;beginline=171;endline=199;md5=462586bcbebd12f5d0ac443be0ed3d91"
+
+SRC_URI[md5sum] = "c21c7841f5e03ff709a0564b2e094010"
+SRC_URI[sha256sum] = "3ad0f40a696763bb0f4d4dec5b51f6b53ccfeb7c16ebb5897349303045f94776"
+
+SRC_URI += "file://0001-cli-drop-the-second-argument-from-click.argument-dec.patch"
+
+PYPI_PACKAGE = "wpa_supplicant"
+
+inherit pypi setuptools3
+
+RDEPENDS_${PN} += "python3-twisted python3-click python3-txdbus"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-xmlschema_1.5.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-xmlschema_1.5.3.bb
similarity index 83%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-xmlschema_1.5.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-xmlschema_1.5.3.bb
index bdb1597..3f9c063 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-xmlschema_1.5.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-xmlschema_1.5.3.bb
@@ -3,7 +3,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=47489cb18c469474afeb259ed1d4832f"
 
-SRC_URI[sha256sum] = "c4c72b457865f46394bb23525b4e233d6537d9e97b8c6144a6cda2d5ef0d6688"
+SRC_URI[sha256sum] = "a7db4c8ae2afa28654d15fcbf5d7f22f0441b5611e50426426e5418f369b5c79"
 
 PYPI_PACKAGE = "xmlschema"
 inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-yamlloader_0.5.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-yamlloader_1.0.0.bb
similarity index 66%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-yamlloader_0.5.5.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-yamlloader_1.0.0.bb
index dbf84d4..a2483a6 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-yamlloader_0.5.5.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-yamlloader_1.0.0.bb
@@ -3,8 +3,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=6831ef36faa29329bce2420c5356f97e"
 
-SRC_URI[md5sum] = "2e0750ace81235f750c072833d79c4c3"
-SRC_URI[sha256sum] = "dcab5f16b39bb03d10dda4cd4f30c943675ec4c7771807fc67e7f1bb319bf4c8"
+SRC_URI[sha256sum] = "e96dc3dc6895d814c330c054c966d993fc81ef1dbf5a30a4bdafeb256359e058"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_5.2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_5.3.0.bb
similarity index 89%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_5.2.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_5.3.0.bb
index 48bb80d..5da5a88 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_5.2.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_5.3.0.bb
@@ -5,7 +5,7 @@
 PYPI_PACKAGE = "zope.interface"
 
 inherit pypi setuptools3
-SRC_URI[sha256sum] = "8251f06a77985a2729a8bdbefbae79ee78567dddc3acbd499b87e705ca59fe24"
+SRC_URI[sha256sum] = "b18a855f8504743e0a2d8b75d008c7720d44e4c76687e13f959e35d9a13eb397"
 
 PACKAGES =. "${PN}-test "
 
diff --git a/meta-openembedded/meta-webserver/conf/layer.conf b/meta-openembedded/meta-webserver/conf/layer.conf
index d95d328..7bb4978 100644
--- a/meta-openembedded/meta-webserver/conf/layer.conf
+++ b/meta-openembedded/meta-webserver/conf/layer.conf
@@ -17,7 +17,7 @@
 
 LAYERDEPENDS_webserver = "core openembedded-layer"
 
-LAYERSERIES_COMPAT_webserver = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_webserver = " hardknott"
 
 LICENSE_PATH += "${LAYERDIR}/licenses"
 
diff --git a/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.0.4.bb b/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.1.0.bb
similarity index 88%
rename from meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.0.4.bb
rename to meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.1.0.bb
index 43fed10..cbb5bd9 100644
--- a/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.0.4.bb
+++ b/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.1.0.bb
@@ -4,15 +4,15 @@
 LICENSE = "GPLv2 & LGPLv3 & MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
                     file://vendor/tecnickcom/tcpdf/LICENSE.TXT;md5=dd6470bbcd3436ca317f82d34abaf688 \
-                    file://js/vendor/jquery/MIT-LICENSE.txt;md5=e43aa437a6a1ba421653bd5034333bf9 \
+                    file://js/vendor/jquery/MIT-LICENSE.txt;md5=75308107741f7dcdc39127209c7e3fc8 \
 "
 
 SRC_URI = "https://files.phpmyadmin.net/phpMyAdmin/${PV}/phpMyAdmin-${PV}-all-languages.tar.xz \
            file://apache.conf \
 "
 
-SRC_URI[md5sum] = "38c6b9f38e4aeb68a2840d5903dd00c5"
-SRC_URI[sha256sum] = "1578c1a08e594da4f4f62e676ccbdbd17784c3de769b094ba42c35bf05c057db"
+SRC_URI[md5sum] = "4587343e706c5434adf91c396b418731"
+SRC_URI[sha256sum] = "aa8ccf357f672012384df34e1c2bc70147476761c8458a0dad6233497e142c68"
 
 UPSTREAM_CHECK_URI = "https://www.phpmyadmin.net/downloads/"
 UPSTREAM_CHECK_REGEX = "phpMyAdmin-(?P<pver>\d+(\.\d+)+)-all-languages.tar.xz"
diff --git a/meta-openembedded/meta-xfce/conf/layer.conf b/meta-openembedded/meta-xfce/conf/layer.conf
index 5674ab5..b1240b0 100644
--- a/meta-openembedded/meta-xfce/conf/layer.conf
+++ b/meta-openembedded/meta-xfce/conf/layer.conf
@@ -19,7 +19,7 @@
 LAYERDEPENDS_xfce-layer += "meta-python"
 LAYERDEPENDS_xfce-layer += "networking-layer"
 
-LAYERSERIES_COMPAT_xfce-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_xfce-layer = " hardknott"
 
 SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += "\
   openzone->gdk-pixbuf \
diff --git a/meta-openembedded/meta-xfce/recipes-apps/mousepad/mousepad_0.5.2.bb b/meta-openembedded/meta-xfce/recipes-apps/mousepad/mousepad_0.5.3.bb
similarity index 80%
rename from meta-openembedded/meta-xfce/recipes-apps/mousepad/mousepad_0.5.2.bb
rename to meta-openembedded/meta-xfce/recipes-apps/mousepad/mousepad_0.5.3.bb
index a7e9685..1fba679 100644
--- a/meta-openembedded/meta-xfce/recipes-apps/mousepad/mousepad_0.5.2.bb
+++ b/meta-openembedded/meta-xfce/recipes-apps/mousepad/mousepad_0.5.3.bb
@@ -7,7 +7,7 @@
 
 inherit xfce-app gsettings mime-xdg
 
-SRC_URI[sha256sum] = "30adc5631a4e551df7b3e17ddc1d10e9980080f96518dedccc32170cb18efb8e"
+SRC_URI[sha256sum] = "e7208bb9e96a1525d3358a64f9cdd165005078e84e81984a953a2a03491fcaa8"
 
 FILES_${PN} += " \
     ${datadir}/glib-2.0/schemas \
diff --git a/meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles/0001-Makefile.in.in-remove-bashisms.patch b/meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles/0001-Makefile.in.in-remove-bashisms.patch
deleted file mode 100644
index 9738f1a..0000000
--- a/meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles/0001-Makefile.in.in-remove-bashisms.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-Makefile.in.in: remove bashisms
-
-The brace expansion is bash specific and fails with dash.
-
-Upstream-Status: Pending [No permission to folk repo and create pull request]
-
-https://gitlab.xfce.org/apps/xfce4-panel-profiles
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
----
- Makefile.in.in | 15 ++++++++++++----
- 1 file changed, 11 insertions(+), 4 deletions(-)
-
-diff --git a/Makefile.in.in b/Makefile.in.in
-index 73338f4..e08b218 100644
---- a/Makefile.in.in
-+++ b/Makefile.in.in
-@@ -73,8 +73,11 @@ install: all xfce4-panel-profiles.1
- 
- 	install -d $(DESTDIR)/$(MANDIR)/man1
- 	install xfce4-panel-profiles.1 $(DESTDIR)/$(MANDIR)/man1
--	
--	install -d $(DESTDIR)/$(PREFIX)/share/icons/hicolor/{128x128,48x48,16x16,scalable}/apps
-+
-+	install -d $(DESTDIR)/$(PREFIX)/share/icons/hicolor/128x128/apps
-+	install -d $(DESTDIR)/$(PREFIX)/share/icons/hicolor/48x48/apps
-+	install -d $(DESTDIR)/$(PREFIX)/share/icons/hicolor/16x16/apps
-+	install -d $(DESTDIR)/$(PREFIX)/share/icons/hicolor/scalable/apps
- 	install data/icons/128x128/org.xfce.PanelProfiles.png $(DESTDIR)/$(PREFIX)/share/icons/hicolor/128x128/apps
- 	install data/icons/48x48/org.xfce.PanelProfiles.png $(DESTDIR)/$(PREFIX)/share/icons/hicolor/48x48/apps
- 	install data/icons/16x16/org.xfce.PanelProfiles.png $(DESTDIR)/$(PREFIX)/share/icons/hicolor/16x16/apps
-@@ -86,7 +89,9 @@ uninstall:
- 	rm -rf $(DESTDIR)/$(DOCDIR)
- 	# FIXME: Uninstall locales
- 	rm -f $(DESTDIR)/$(PREFIX)/bin/$(APPNAME)
--	rm -rf $(DESTDIR)/$(PREFIX)/share/icons/hicolor/{128x128,48x48,16x16}/apps/org.xfce.PanelProfiles.png
-+	rm -rf $(DESTDIR)/$(PREFIX)/share/icons/hicolor/128x128/apps
-+	rm -rf $(DESTDIR)/$(PREFIX)/share/icons/hicolor/48x48/apps
-+	rm -rf $(DESTDIR)/$(PREFIX)/share/icons/hicolor/16x16/apps
- 	rm -rf $(DESTDIR)/$(PREFIX)/share/icons/hicolor/scalable/apps/org.xfce.PanelProfiles.svg
- 
- distcheck: all
-@@ -106,7 +112,9 @@ clean:
- 	rm -f bin/$(APPNAME)
- 	rm -f data/metainfo/org.xfce.PanelProfiles.appdata.xml
- 	rm -f data/layouts/*.tar.bz2
--	rm -f data/icons/{128x128,48x48,16x16}/org.xfce.panelprofiles.png
-+	rm -f data/icons/128x128/org.xfce.panelprofiles.png
-+	rm -f data/icons/48x48/org.xfce.panelprofiles.png
-+	rm -f data/icons/16x16/org.xfce.panelprofiles.png
- 	rm -f data/icons/scalable/org.xfce.panelprofiles.svg
- 	rm -f org.xfce.PanelProfiles.desktop
- 	rm -f Makefile.in
--- 
-2.25.1
-
diff --git a/meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles_1.0.12.bb b/meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles_1.0.13.bb
similarity index 83%
rename from meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles_1.0.12.bb
rename to meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles_1.0.13.bb
index 34162d3..bb9e50e 100644
--- a/meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles_1.0.12.bb
+++ b/meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles_1.0.13.bb
@@ -11,9 +11,8 @@
 
 SRC_URI = "http://archive.xfce.org/src/apps/${BPN}/1.0/${BP}.tar.bz2 \
            file://not-create-link-to-locale.patch \
-           file://0001-Makefile.in.in-remove-bashisms.patch \
            "
-SRC_URI[sha256sum] = "246e459d2d2f3f524968440ed7fddb2a891567ebc05f10a800f7f5821b3452a7"
+SRC_URI[sha256sum] = "bc387c13f94109422dc72b0fcb919b0dc11619ba589d03e492252b0d2513b170"
 
 do_configure() {
     # special configure - no autotools...
diff --git a/meta-openembedded/meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_1.4.0.bb b/meta-openembedded/meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_1.4.0.bb
deleted file mode 100644
index d41ee89..0000000
--- a/meta-openembedded/meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_1.4.0.bb
+++ /dev/null
@@ -1,9 +0,0 @@
-SUMMARY = "Easy to use task manager"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-inherit xfce-app
-
-DEPENDS += "gtk+3 cairo libwnck libxmu xfce4-dev-tools-native"
-
-SRC_URI[sha256sum] = "655684ddfc15fc09071f78f9fce5439d20bbd2d80ecfc5ba0a08fb38313e7d43"
diff --git a/meta-openembedded/meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_1.5.2.bb b/meta-openembedded/meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_1.5.2.bb
new file mode 100644
index 0000000..e0da70d
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_1.5.2.bb
@@ -0,0 +1,9 @@
+SUMMARY = "Easy to use task manager"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+
+inherit xfce-app
+
+DEPENDS += "gtk+3 cairo libwnck libxfce4ui libxmu xfce4-dev-tools-native"
+
+SRC_URI[sha256sum] = "bd25143f47a29000b4148874863dffa521b1a37cb01dbc026f423ea3160f9a35"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch b/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch
deleted file mode 100644
index ae8bc52..0000000
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch
+++ /dev/null
@@ -1,121 +0,0 @@
-From f86486e128f62ed5a531163535d11f0aa0268928 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-Date: Sun, 5 May 2019 20:45:26 +0200
-Subject: [PATCH] Fix memory-leak and reduce cpu-load slightly
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-* when setting font remove old css provider befor setting new
-  -> fix memory leak
-* do call cpufreq_label_set_font only on init and when font was changed
-  -> reduce cpu-load
-
-Fixes https://bugzilla.xfce.org/show_bug.cgi?id=15218
-
-Upstream-Status: Submitted [1]
-
-[1] https://bugzilla.xfce.org/attachment.cgi?id=8492
-
-Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
-
----
- panel-plugin/xfce4-cpufreq-configure.c |  4 ++++
- panel-plugin/xfce4-cpufreq-plugin.c    | 13 +++++++++++--
- panel-plugin/xfce4-cpufreq-plugin.h    |  2 ++
- 3 files changed, 17 insertions(+), 2 deletions(-)
-
-diff --git a/panel-plugin/xfce4-cpufreq-configure.c b/panel-plugin/xfce4-cpufreq-configure.c
-index 1205fc9..48e72ff 100644
---- a/panel-plugin/xfce4-cpufreq-configure.c
-+++ b/panel-plugin/xfce4-cpufreq-configure.c
-@@ -85,7 +85,10 @@ button_fontname_update(GtkWidget *button, gboolean update_plugin)
-   }
- 
-   if (update_plugin)
-+  {
-+    cpufreq_label_set_font ();
-     cpufreq_update_plugin (TRUE);
-+  }
- }
- 
- 
-@@ -155,6 +158,7 @@ button_fontcolor_clicked (GtkWidget *button, void *data)
-   gtk_color_chooser_get_rgba (GTK_COLOR_CHOOSER (button), color);
-   cpuFreq->options->fontcolor = gdk_rgba_to_string (color);
-   g_free (color);
-+  cpufreq_label_set_font ();
-   cpufreq_update_plugin (TRUE);
- }
- 
-diff --git a/panel-plugin/xfce4-cpufreq-plugin.c b/panel-plugin/xfce4-cpufreq-plugin.c
-index e886121..8d7c9e5 100644
---- a/panel-plugin/xfce4-cpufreq-plugin.c
-+++ b/panel-plugin/xfce4-cpufreq-plugin.c
-@@ -44,6 +44,7 @@ cpufreq_label_set_font (void)
- {
-   gchar *css = NULL, *css_font = NULL, *css_color = NULL;
-   GtkCssProvider *provider;
-+  GtkStyleContext *context;
-   PangoFontDescription *font;
- 
-   if (G_UNLIKELY (cpuFreq->label == NULL))
-@@ -76,11 +77,17 @@ cpufreq_label_set_font (void)
-   if (css)
-   {
-     provider = gtk_css_provider_new ();
-+    context = GTK_STYLE_CONTEXT (gtk_widget_get_style_context (GTK_WIDGET (cpuFreq->label)));
-+
-+    if (currentProvider)
-+      gtk_style_context_remove_provider (context, currentProvider);
- 
-     gtk_css_provider_load_from_data (provider, css, -1, NULL);
-     gtk_style_context_add_provider (
--      GTK_STYLE_CONTEXT (gtk_widget_get_style_context (GTK_WIDGET (cpuFreq->label))),
-+      context,
-       GTK_STYLE_PROVIDER (provider), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
-+
-+    currentProvider = provider;
-   }
- 
-   g_free (css);
-@@ -420,7 +427,6 @@ cpufreq_update_plugin (gboolean reset_label_size)
- 
-   if (cpuFreq->layout_changed)
-   {
--    cpufreq_label_set_font ();
-     cpufreq_widgets_layout ();
-   }
- 
-@@ -601,6 +607,7 @@ cpufreq_widgets (void)
- 
-   gtk_widget_show_all (cpuFreq->button);
- 
-+  cpufreq_label_set_font ();
-   cpufreq_update_plugin (TRUE);
- }
- 
-@@ -775,6 +782,8 @@ cpufreq_construct (XfcePanelPlugin *plugin)
- {
-   xfce_textdomain (GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR, "UTF-8");
- 
-+  currentProvider = NULL;
-+
-   cpuFreq = g_new0 (CpuFreqPlugin, 1);
-   cpuFreq->options = g_new0 (CpuFreqPluginOptions, 1);
-   cpuFreq->plugin = plugin;
-diff --git a/panel-plugin/xfce4-cpufreq-plugin.h b/panel-plugin/xfce4-cpufreq-plugin.h
-index a6895e4..6338698 100644
---- a/panel-plugin/xfce4-cpufreq-plugin.h
-+++ b/panel-plugin/xfce4-cpufreq-plugin.h
-@@ -95,6 +95,8 @@ typedef struct
- 
- extern CpuFreqPlugin *cpuFreq;
- 
-+GtkCssProvider *currentProvider;
-+
- G_BEGIN_DECLS
- 
- void
----
-2.20.1
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch b/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch
deleted file mode 100644
index 95605f8..0000000
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-Fix build with -fno-common
-
-Part of Patch from https://src.fedoraproject.org/rpms/xfce4-cpufreq-plugin/raw/master/f/xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Refresh for xfce4-cpufreq-plugin 1.2.2.
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
-
----
- panel-plugin/xfce4-cpufreq-plugin.c | 1 +
- panel-plugin/xfce4-cpufreq-plugin.h | 2 +-
- 2 files changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/panel-plugin/xfce4-cpufreq-plugin.c b/panel-plugin/xfce4-cpufreq-plugin.c
-index 1e33492..ce9e302 100644
---- a/panel-plugin/xfce4-cpufreq-plugin.c
-+++ b/panel-plugin/xfce4-cpufreq-plugin.c
-@@ -38,6 +38,7 @@
- #endif /* __linux__ */
- 
- CpuFreqPlugin *cpuFreq;
-+GtkCssProvider *currentProvider;
- 
- void
- cpufreq_label_set_font (void)
-diff --git a/panel-plugin/xfce4-cpufreq-plugin.h b/panel-plugin/xfce4-cpufreq-plugin.h
-index 8cd0d33..7dbccef 100644
---- a/panel-plugin/xfce4-cpufreq-plugin.h
-+++ b/panel-plugin/xfce4-cpufreq-plugin.h
-@@ -95,7 +95,7 @@ typedef struct
- 
- extern CpuFreqPlugin *cpuFreq;
- 
--GtkCssProvider *currentProvider;
-+extern GtkCssProvider *currentProvider;
- 
- G_BEGIN_DECLS
- 
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.2.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.2.bb
deleted file mode 100644
index 3b7b9ec..0000000
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.2.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-SUMMARY = "Panel plugin to display frequency of all cpus"
-HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-cpufreq-plugin"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=1f6f1c0be32491a0c8d2915607a28f36"
-
-inherit xfce-panel-plugin
-
-SRC_URI[sha256sum] = "500f04b8d857c96da8c8c7a4eecba30a903d0fce6e35a05e674529e43b47e498"
-
-SRC_URI += "file://0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch \
-            file://xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch \
-           "
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.5.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.5.bb
new file mode 100644
index 0000000..8fef520
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.5.bb
@@ -0,0 +1,8 @@
+SUMMARY = "Panel plugin to display frequency of all cpus"
+HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-cpufreq-plugin"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=1f6f1c0be32491a0c8d2915607a28f36"
+
+inherit xfce-panel-plugin
+
+SRC_URI[sha256sum] = "f8bd728de2d33e7ab30c682716b1cac4776b9884ce48b03fd7c32c9b24b13498"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpugraph/xfce4-cpugraph-plugin_1.2.1.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/cpugraph/xfce4-cpugraph-plugin_1.2.3.bb
similarity index 75%
rename from meta-openembedded/meta-xfce/recipes-panel-plugins/cpugraph/xfce4-cpugraph-plugin_1.2.1.bb
rename to meta-openembedded/meta-xfce/recipes-panel-plugins/cpugraph/xfce4-cpugraph-plugin_1.2.3.bb
index ebcdc21..0895e72 100644
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpugraph/xfce4-cpugraph-plugin_1.2.1.bb
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/cpugraph/xfce4-cpugraph-plugin_1.2.3.bb
@@ -5,4 +5,4 @@
 
 inherit xfce-panel-plugin
 
-SRC_URI[sha256sum] = "615adf9abd91417a44319d8e4dadc6012fa22a3778f2f379717512dcb7ef924a"
+SRC_URI[sha256sum] = "fb0cccd9a678136256edd0f04f945e611ab0aa912837f57413ef3bb0f515608c"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/genmon/xfce4-genmon-plugin_4.1.0.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/genmon/xfce4-genmon-plugin_4.1.1.bb
similarity index 79%
rename from meta-openembedded/meta-xfce/recipes-panel-plugins/genmon/xfce4-genmon-plugin_4.1.0.bb
rename to meta-openembedded/meta-xfce/recipes-panel-plugins/genmon/xfce4-genmon-plugin_4.1.1.bb
index a51c52f..9a6d4b1 100644
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/genmon/xfce4-genmon-plugin_4.1.0.bb
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/genmon/xfce4-genmon-plugin_4.1.1.bb
@@ -5,4 +5,4 @@
 
 inherit xfce-panel-plugin
 
-SRC_URI[sha256sum] = "d1256b4b47545c7bdb16842b21eaf3ac167be443e8f2f1093cf4209e65c84e7d"
+SRC_URI[sha256sum] = "b2119fd0ff19fa293b97ec97b0de8e241799e08b86218515167c568bd9b50135"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/netload/xfce4-netload-plugin_1.3.2.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/netload/xfce4-netload-plugin_1.4.0.bb
similarity index 72%
rename from meta-openembedded/meta-xfce/recipes-panel-plugins/netload/xfce4-netload-plugin_1.3.2.bb
rename to meta-openembedded/meta-xfce/recipes-panel-plugins/netload/xfce4-netload-plugin_1.4.0.bb
index 13e7b1d..b30543b 100644
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/netload/xfce4-netload-plugin_1.3.2.bb
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/netload/xfce4-netload-plugin_1.4.0.bb
@@ -6,5 +6,4 @@
 inherit xfce-panel-plugin
 
 SRC_URI = "http://archive.xfce.org/src/panel-plugins/${BPN}/${@'${PV}'[0:3]}/${BPN}-${PV}.tar.bz2"
-SRC_URI[md5sum] = "ae4652711812a77a58c3dc96650a74dc"
-SRC_URI[sha256sum] = "22e40425cfe1e07b01fe275b1afddc7c788af34d9c2c7e2842166963cb41215d"
+SRC_URI[sha256sum] = "6c76260e101790754dd93255ec979accd97d21a21da85d8edcd6c7b01ddcd70c"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/systemload/xfce4-systemload-plugin_1.2.4.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/systemload/xfce4-systemload-plugin_1.3.0.bb
similarity index 79%
rename from meta-openembedded/meta-xfce/recipes-panel-plugins/systemload/xfce4-systemload-plugin_1.2.4.bb
rename to meta-openembedded/meta-xfce/recipes-panel-plugins/systemload/xfce4-systemload-plugin_1.3.0.bb
index b966711..e6a5ec0 100644
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/systemload/xfce4-systemload-plugin_1.2.4.bb
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/systemload/xfce4-systemload-plugin_1.3.0.bb
@@ -7,4 +7,4 @@
 
 DEPENDS += "upower"
 
-SRC_URI[sha256sum] = "0531b8df923cba3be8d064cb8b638b954df74915e5a447228999517847789835"
+SRC_URI[sha256sum] = "1148f8e90cc53cae9b3aa32e10df4bd9fdc2f06db09d8429f88fbdd874fc171d"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/time-out/xfce4-time-out-plugin_1.1.1.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/time-out/xfce4-time-out-plugin_1.1.2.bb
similarity index 67%
rename from meta-openembedded/meta-xfce/recipes-panel-plugins/time-out/xfce4-time-out-plugin_1.1.1.bb
rename to meta-openembedded/meta-xfce/recipes-panel-plugins/time-out/xfce4-time-out-plugin_1.1.2.bb
index f4ef3f6..185e9bc 100644
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/time-out/xfce4-time-out-plugin_1.1.1.bb
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/time-out/xfce4-time-out-plugin_1.1.2.bb
@@ -6,5 +6,4 @@
 
 inherit xfce-panel-plugin
 
-SRC_URI[md5sum] = "3087b3248e427822613e5583784b0ac0"
-SRC_URI[sha256sum] = "194dbeb8751d8aaedf3850a7a9c770f09d32316a99683cde34d7d0fc5bdba31d"
+SRC_URI[sha256sum] = "3dd8eba694ff3ba5c25bd7f5cd70dc22175fb2c0a759213f05ab8f0e629d82d4"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/weather/xfce4-weather-plugin_0.10.2.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/weather/xfce4-weather-plugin_0.11.0.bb
similarity index 80%
rename from meta-openembedded/meta-xfce/recipes-panel-plugins/weather/xfce4-weather-plugin_0.10.2.bb
rename to meta-openembedded/meta-xfce/recipes-panel-plugins/weather/xfce4-weather-plugin_0.11.0.bb
index 4045230..45b4386 100644
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/weather/xfce4-weather-plugin_0.10.2.bb
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/weather/xfce4-weather-plugin_0.11.0.bb
@@ -7,6 +7,6 @@
 
 DEPENDS += "libsoup-2.4 dbus-glib upower"
 
-SRC_URI[sha256sum] = "9017790b92953090c849b17b357b42fa8c562bf0e25af2fd2e5f53cfebc662c6"
+SRC_URI[sha256sum] = "e3242ea951d51bc0fded1d02a4f1f662bec16a1fb10c855f71bda6541a1153fc"
 
 FILES_${PN} += "${datadir}/xfce4/weather"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_4.16.0.bb b/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_4.16.1.bb
similarity index 88%
rename from meta-openembedded/meta-xfce/recipes-xfce/exo/exo_4.16.0.bb
rename to meta-openembedded/meta-xfce/recipes-xfce/exo/exo_4.16.1.bb
index 5b91b8b..a49b18c 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_4.16.0.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_4.16.1.bb
@@ -14,7 +14,7 @@
     file://configure.patch \
 "
 
-SRC_URI[sha256sum] = "1975b00eed9a8aa1f899eab2efaea593731c19138b83fdff2f13bdca5275bacc"
+SRC_URI[sha256sum] = "528dac256315ffc2a4a53b3b421979327962121989886e3cf920aeff9912b53b"
 
 # Note: python bindings did not work in oe-dev and are about to be moved to
 # pyxfce see http://comments.gmane.org/gmane.comp.desktop.xfce.devel.version4/19560
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_4.16.2.bb b/meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_4.16.4.bb
similarity index 89%
rename from meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_4.16.2.bb
rename to meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_4.16.4.bb
index 6b1a6b4..e5fd5ff 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_4.16.2.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_4.16.4.bb
@@ -8,7 +8,7 @@
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
-SRC_URI[sha256sum] = "67a90b98c436192f9aa6cd18a22a089e713007864aebfa65f36f121c86ba7add"
+SRC_URI[sha256sum] = "d51a2018c1ba7dcc420e7a84d85cc17a58f26fb1c80ee4c15e689a49f10425f9"
 
 PACKAGECONFIG ??= ""
 PACKAGECONFIG[pcre] = "--enable-pcre,--disable-pcre,libpcre"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.16.1.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.16.2.bb
similarity index 93%
rename from meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.16.1.bb
rename to meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.16.2.bb
index b92ebde..7e54022 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.16.1.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.16.2.bb
@@ -8,7 +8,7 @@
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
-SRC_URI[sha256sum] = "fa099bc6be6592dbb828747a473c2e1b0e7f85afd945a98002b475bb6f975991"
+SRC_URI[sha256sum] = "8634166e6f14318daec363f7e2371d49b98986f9bce313a7dd1554f30b48b5cf"
 SRC_URI += " \
     file://0001-windowmenu-do-not-display-desktop-icon-when-no-windo.patch \
     file://0002-use-lxdm-to-replace-dm-tool.patch \