meta-openembedded: subtree update:da393545a2..08c0280b7c

Andreas Müller (8):
      networkmanager-openvpn: Fix packageing
      mousepad: upgrade 0.5.3 -> 0.5.4
      xfce4-battery-plugin: upgrade 1.1.3 -> 1.1.4
      gigolo: upgrade 0.5.1 -> 0.5.2
      thunar: upgrade 4.16.4 -> 4.16.6
      poppler: upgrade 21.03.0 -> 21.04.0
      catfish: add python3-dbus to RDEPENDS
      fluidsynth: upgrade 2.1.7 -> 2.2.0

Andrew Geissler (1):
      nodejs: ppc64le machine support

Awais Belal (1):
      libnet-ssleay-perl: add rdep on perl-module-autoloader

Hermes Zhang (1):
      gpsd: backport d-bus message time patch from upstream

Hongxu Jia (1):
      debootstrap: 1.0.67 -> 1.0.123

Kamil Dziezyk (1):
      bats: upgrade 1.1.0 -> 1.3.0

Kartikey Rameshbhai Parmar (1):
      fluidsynth: update SRC_URI to remove non-existing 2.1.x branch

Khem Raj (12):
      mariadb: Fix build on newer 32bit architectures
      iwd: Upgade to 1.13
      libmanette: Add recipe
      pidgin-sipe: Fix build with glib-2.0 >= 2.68
      gjs: Fix build with gcc11
      poppler: Backport patches to fix build with glib-2.0 2.68+ and GCC11
      opencv: Upgrade to 5.4.2
      Revert "iwd: Upgade to 1.13"
      core-image-minimal-xfce: Use graphical.target as default
      tbb: Fix build with musl
      vnstat: Disable install parallism to fix a potential install race
      open-vm-tools: Fix build with gcc 11

Leon Anavi (57):
      python3-sqlalchemy: Upgrade 1.4.3 -> 1.4.4
      python3-bitarray: Upgrade 1.8.1 -> 1.8.2
      python3-httplib2: Upgrade 0.19.0 -> 0.19.1
      python3-parso: Upgrade 0.8.1 -> 0.8.2
      python3-matplotlib: Upgrade 3.3.4 -> 3.4.1
      python3-pyroute2: Upgrade 0.5.15 -> 0.5.16
      python3-h5py: Upgrade 3.1.0 -> 3.2.1
      python3-cheetah: Upgrade 3.2.6 -> 3.2.6.post1
      python3-google-api-python-client: Upgrade 2.0.2 -> 2.1.0
      python3-xlsxwriter: Upgrade 1.3.7 -> 1.3.8
      python3-pymisp: Upgrade 2.4.140 -> 2.4.141
      python3-tqdm: Upgrade 4.58.0 -> 4.59.0
      python3-contextlib2: Upgrade 0.6.0 -> 0.6.0.post1
      python3-typeguard: Upgrade 2.11.1 -> 2.12.0
      python3-decorator: Upgrade 4.4.2 -> 5.0.1
      python3-pillow: Upgrade 8.1.2 -> 8.2.0
      python3-aiohttp: Upgrade 3.7.4 -> 3.7.4.post0
      python3-networkx: Upgrade 2.5 -> 2.5.1
      python3-pysonos: Upgrade 0.0.40 -> 0.0.41
      python3-docutils: Upgrade 0.16 -> 0.17
      python3-bitarray: Upgrade 1.8.2 -> 1.9.0
      python3-regex: Upgrade 2021.3.17 -> 2021.4.4
      python3-sqlalchemy: Upgrade 1.4.4 -> 1.4.5
      python3-pychromecast: Upgrade 9.1.1 -> 9.1.2
      python3-decorator: Upgrade 5.0.1 -> 5.0.5
      python3-pymisp: Upgrade 2.4.141 -> 2.4.141.1
      python3-pyroute2: Upgrade 0.5.16 -> 0.5.17
      python3-transitions: Upgrade 0.8.7 -> 0.8.8
      python3-sqlalchemy: Upgrade 1.4.5 -> 1.4.6
      python3-bitarray: Upgrade 1.9.0 -> 1.9.1
      python3-pysonos: Upgrade 0.0.41 -> 0.0.42
      python3-django: Upgrade 3.1.7 -> 3.2
      python3-tqdm: Upgrade 4.59.0 -> 4.60.0
      python3-xmlschema: Upgrade 1.5.3 -> 1.6.0
      python3-ruamel-yaml: Upgrade 0.17.2 -> 0.17.4
      python3-croniter: Upgrade 1.0.10 -> 1.0.11
      python3-decorator: Upgrade 5.0.5 -> 5.0.6
      python3-grpcio-tools: Upgrade 1.36.1 -> 1.37.0
      python3-speedtest-cli: Upgrade 2.1.2 -> 2.1.3
      python3-python-vlc: Upgrade 3.0.11115 -> 3.0.12117
      python3-robotframework: Upgrade 4.0 -> 4.0.1
      python3-grpcio: Upgrade 1.36.1 -> 1.37.0
      python3-cerberus: Upgrade 1.3.2 -> 1.3.3
      python3-humanize: Upgrade 3.3.0 -> 3.4.0
      python3-monotonic: Upgrade 1.5 -> 1.6
      python3-sqlalchemy: Upgrade 1.4.6 -> 1.4.7
      python3-typed-ast: Upgrade 1.4.2 -> 1.4.3
      python3-backports-functools-lru-cache: Upgrade 1.6.3 -> 1.6.4
      python3-xmlschema: Upgrade 1.6.0 -> 1.6.1
      python3-pyroute2: Upgrade 0.5.17 -> 0.5.18
      python3-sympy: Upgrade 1.7.1 -> 1.8
      python3-pandas: Upgrade 1.2.3 -> 1.2.4
      python3-humanize: Upgrade 3.4.0 -> 3.4.1
      python3-decorator: Upgrade 5.0.6 -> 5.0.7
      python3-colorlog: Upgrade 4.8.0 -> 5.0.1
      python3-google-api-python-client: Upgrade 2.1.0 -> 2.2.0
      python3-croniter: Upgrade 1.0.11 -> 1.0.12

Martin Jansa (13):
      packagegroup-meta-oe: include glfw, icewm, geis only with x11 in DISTRO_FEATURES
      phonet-utils: remove
      packagegroup-meta-oe: use 4 spaces for identation
      telepathy-glib: respect GI_DATA_ENABLED when enabling vala-bindings
      uml-utilities: fix installed-vs-shipped with usrmerge
      libsmi: use /bin/sh instead of ${base_bindir}/sh to silence QA error with usrmerge
      libyui: switch to libyui-old repo which still has this SRCREV
      libyui(-ncurses): upgrade to 4.1.1, libyui repo was rewritten completely
      android-tools: use PN instead of BPN in RDEPENDS
      pidgin-sipe: fix g_memdup2 changes to be backwards compatible with glib-1.67
      pidgin: upgrade to 2.14.2
      opencv: fetch wechat_qrcode files used by dnn PACKAGECONFIG
      opencv: link sfm module with Glog

Mingli Yu (2):
      freeradius: Upgrade to 3.0.21
      hostapd: fix CVE-2021-0326 and CVE-2021-27803

Naveen Saini (2):
      tbb: upgrade 2020.3 -> 2021.2.0
      ocl-icd: upgrade 2.2.14 -> 2.3.0

Randy MacLeod (2):
      doxygen: Upgrade 1.8.20 -> 1.9.1
      open-vm-tools: upgrade 11.0.1 -> 11.2.5

Ross Burton (1):
      fwts: upgrade to 21.03.00

Stefan Ghinea (1):
      hostapd: fix CVE-2021-30004

Vinicius Aquino (1):
      networkmanager: upgrade 1.28.0 -> 1.30.2

Vinícius Ossanes Aquino (2):
      modemmanager: upgrade 1.14.10 -> 1.16.2
      libqmi: upgrade 1.26.6 -> 1.28.2

Yi Fan Yu (2):
      rsyslog: fix some of the ptests
      redis: upgrade 6.0.9 -> 6.2.1

hasan.men (2):
      librdkafka: Add initial recipe v1.6.1
      libcppkafka: Add initial recipe for cppkafka wrapper

persianpros (5):
      PEP8 double aggressive E701, E70 and E502
      PEP8 double aggressive E20 and E211
      PEP8 double aggressive E22, E224, E241, E242 and E27
      PEP8 double aggressive E301 ~ E306
      PEP8 double aggressive W291 ~ W293 and W391

wangmy (2):
      mariadb: upgrade 10.5.8 -> 10.5.9
      uftrace: Fix error on aarch64 when binutils update to 2.35.1

zangrc (14):
      gnome-autoar: upgrade 0.2.4 -> 0.3.1
      emacs: upgrade 27.1 -> 27.2
      fbgrab: upgrade 1.4 -> 1.5
      ostree: upgrade 2020.8 -> 2021.1
      zabbix: upgrade 5.2.5 -> 5.2.6
      libxaw: upgrade 1.0.13 -> 1.0.14
      mosquitto: upgrade 2.0.9 -> 2.0.10
      nbdkit: upgrade 1.25.4 -> 1.25.5
      stunnel: upgrade 5.58 -> 5.59
      usbredir: upgrade 0.8.0 -> 0.9.0
      hwdata: upgrade 0.345 -> 0.346
      live555: upgrade 20210322 -> 20210406
      rabbitmq-c: upgrade 0.10.0 -> 0.11.0
      xterm: upgrade 366 -> 367

zhengruoqin (7):
      fetchmail: upgrade 6.4.17 -> 6.4.18
      lldpd: upgrade 1.0.4 -> 1.0.8
      networkmanager-openvpn: upgrade 1.8.12 -> 1.8.14
      snort: upgrade 2.9.17 -> 2.9.17.1
      python3-absl: upgrade 0.10.0 -> 0.12.0
      python3-astroid: upgrade 2.5.2 -> 2.5.3
      python3-bitarray: upgrade 1.9.1 -> 1.9.2

Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: I1f0f809aeda70e82140fec5e3310cbf89c760ad4
diff --git a/meta-openembedded/meta-oe/lib/oeqa/selftest/cases/meta_oe_sources.py b/meta-openembedded/meta-oe/lib/oeqa/selftest/cases/meta_oe_sources.py
index b17c795..c5a9a27 100644
--- a/meta-openembedded/meta-oe/lib/oeqa/selftest/cases/meta_oe_sources.py
+++ b/meta-openembedded/meta-oe/lib/oeqa/selftest/cases/meta_oe_sources.py
@@ -6,6 +6,7 @@
 from oeqa.selftest.case import OESelftestTestCase
 from oeqa.utils.commands import runCmd, bitbake, get_bb_var, get_bb_vars
 
+
 class MetaOESourceMirroring(OESelftestTestCase):
     # Can we download everything from the OpenEmbedded Sources Mirror over http only
     def test_oe_source_mirror(self):
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-0326.patch b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-0326.patch
new file mode 100644
index 0000000..54c405b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-0326.patch
@@ -0,0 +1,43 @@
+From 947272febe24a8f0ea828b5b2f35f13c3821901e Mon Sep 17 00:00:00 2001
+From: Jouni Malinen <jouni@codeaurora.org>
+Date: Mon, 9 Nov 2020 11:43:12 +0200
+Subject: [PATCH] P2P: Fix copying of secondary device types for P2P group
+ client
+
+Parsing and copying of WPS secondary device types list was verifying
+that the contents is not too long for the internal maximum in the case
+of WPS messages, but similar validation was missing from the case of P2P
+group information which encodes this information in a different
+attribute. This could result in writing beyond the memory area assigned
+for these entries and corrupting memory within an instance of struct
+p2p_device. This could result in invalid operations and unexpected
+behavior when trying to free pointers from that corrupted memory.
+
+CVE: CVE-2021-0326
+
+Upstream-Status: Backport
+
+Credit to OSS-Fuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=27269
+Fixes: e57ae6e19edf ("P2P: Keep track of secondary device types for peers")
+Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ src/p2p/p2p.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/p2p/p2p.c b/src/p2p/p2p.c
+index 74b7b52ae..5cbfc217f 100644
+--- a/src/p2p/p2p.c
++++ b/src/p2p/p2p.c
+@@ -453,6 +453,8 @@ static void p2p_copy_client_info(struct p2p_device *dev,
+ 	dev->info.config_methods = cli->config_methods;
+ 	os_memcpy(dev->info.pri_dev_type, cli->pri_dev_type, 8);
+ 	dev->info.wps_sec_dev_type_list_len = 8 * cli->num_sec_dev_types;
++	if (dev->info.wps_sec_dev_type_list_len > WPS_SEC_DEV_TYPE_MAX_LEN)
++		dev->info.wps_sec_dev_type_list_len = WPS_SEC_DEV_TYPE_MAX_LEN;
+ 	os_memcpy(dev->info.wps_sec_dev_type_list, cli->sec_dev_types,
+ 		  dev->info.wps_sec_dev_type_list_len);
+ }
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-27803.patch b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-27803.patch
new file mode 100644
index 0000000..fedff76
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-27803.patch
@@ -0,0 +1,54 @@
+From 8460e3230988ef2ec13ce6b69b687e941f6cdb32 Mon Sep 17 00:00:00 2001
+From: Jouni Malinen <jouni@codeaurora.org>
+Date: Tue, 8 Dec 2020 23:52:50 +0200
+Subject: [PATCH] P2P: Fix a corner case in peer addition based on PD Request
+
+p2p_add_device() may remove the oldest entry if there is no room in the
+peer table for a new peer. This would result in any pointer to that
+removed entry becoming stale. A corner case with an invalid PD Request
+frame could result in such a case ending up using (read+write) freed
+memory. This could only by triggered when the peer table has reached its
+maximum size and the PD Request frame is received from the P2P Device
+Address of the oldest remaining entry and the frame has incorrect P2P
+Device Address in the payload.
+
+Fix this by fetching the dev pointer again after having called
+p2p_add_device() so that the stale pointer cannot be used.
+
+CVE: CVE-2021-27803
+
+Upstream-Status: Backport
+
+Fixes: 17bef1e97a50 ("P2P: Add peer entry based on Provision Discovery Request")
+Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
+---
+ src/p2p/p2p_pd.c | 12 +++++-------
+ 1 file changed, 5 insertions(+), 7 deletions(-)
+
+diff --git a/src/p2p/p2p_pd.c b/src/p2p/p2p_pd.c
+index 3994ec03f..05fd59349 100644
+--- a/src/p2p/p2p_pd.c
++++ b/src/p2p/p2p_pd.c
+@@ -595,14 +595,12 @@ void p2p_process_prov_disc_req(struct p2p_data *p2p, const u8 *sa,
+ 			goto out;
+ 		}
+ 
++		dev = p2p_get_device(p2p, sa);
+ 		if (!dev) {
+-			dev = p2p_get_device(p2p, sa);
+-			if (!dev) {
+-				p2p_dbg(p2p,
+-					"Provision Discovery device not found "
+-					MACSTR, MAC2STR(sa));
+-				goto out;
+-			}
++			p2p_dbg(p2p,
++				"Provision Discovery device not found "
++				MACSTR, MAC2STR(sa));
++			goto out;
+ 		}
+ 	} else if (msg.wfd_subelems) {
+ 		wpabuf_free(dev->info.wfd_subelems);
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-30004.patch b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-30004.patch
new file mode 100644
index 0000000..e2540fc
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-30004.patch
@@ -0,0 +1,123 @@
+From a0541334a6394f8237a4393b7372693cd7e96f15 Mon Sep 17 00:00:00 2001
+From: Jouni Malinen <j@w1.fi>
+Date: Sat, 13 Mar 2021 18:19:31 +0200
+Subject: [PATCH] ASN.1: Validate DigestAlgorithmIdentifier parameters
+
+The supported hash algorithms do not use AlgorithmIdentifier parameters.
+However, there are implementations that include NULL parameters in
+addition to ones that omit the parameters. Previous implementation did
+not check the parameters value at all which supported both these cases,
+but did not reject any other unexpected information.
+
+Use strict validation of digest algorithm parameters and reject any
+unexpected value when validating a signature. This is needed to prevent
+potential forging attacks.
+
+Signed-off-by: Jouni Malinen <j@w1.fi>
+
+Upstream-Status: Backport
+CVE: CVE-2021-30004
+
+Reference to upstream patch:
+[https://w1.fi/cgit/hostap/commit/?id=a0541334a6394f8237a4393b7372693cd7e96f15]
+
+Signed-off-by: Stefan Ghinea <stefan.ghinea@windriver.com>
+---
+ src/tls/pkcs1.c  | 21 +++++++++++++++++++++
+ src/tls/x509v3.c | 20 ++++++++++++++++++++
+ 2 files changed, 41 insertions(+)
+
+diff --git a/src/tls/pkcs1.c b/src/tls/pkcs1.c
+index 141ac50..e09db07 100644
+--- a/src/tls/pkcs1.c
++++ b/src/tls/pkcs1.c
+@@ -240,6 +240,8 @@ int pkcs1_v15_sig_ver(struct crypto_public_key *pk,
+ 		os_free(decrypted);
+ 		return -1;
+ 	}
++	wpa_hexdump(MSG_MSGDUMP, "PKCS #1: DigestInfo",
++		    hdr.payload, hdr.length);
+ 
+ 	pos = hdr.payload;
+ 	end = pos + hdr.length;
+@@ -261,6 +263,8 @@ int pkcs1_v15_sig_ver(struct crypto_public_key *pk,
+ 		os_free(decrypted);
+ 		return -1;
+ 	}
++	wpa_hexdump(MSG_MSGDUMP, "PKCS #1: DigestAlgorithmIdentifier",
++		    hdr.payload, hdr.length);
+ 	da_end = hdr.payload + hdr.length;
+ 
+ 	if (asn1_get_oid(hdr.payload, hdr.length, &oid, &next)) {
+@@ -269,6 +273,23 @@ int pkcs1_v15_sig_ver(struct crypto_public_key *pk,
+ 		os_free(decrypted);
+ 		return -1;
+ 	}
++	wpa_hexdump(MSG_MSGDUMP, "PKCS #1: Digest algorithm parameters",
++		    next, da_end - next);
++
++	/*
++	 * RFC 5754: The correct encoding for the SHA2 algorithms would be to
++	 * omit the parameters, but there are implementation that encode these
++	 * as a NULL element. Allow these two cases and reject anything else.
++	 */
++	if (da_end > next &&
++	    (asn1_get_next(next, da_end - next, &hdr) < 0 ||
++	     !asn1_is_null(&hdr) ||
++	     hdr.payload + hdr.length != da_end)) {
++		wpa_printf(MSG_DEBUG,
++			   "PKCS #1: Unexpected digest algorithm parameters");
++		os_free(decrypted);
++		return -1;
++	}
+ 
+ 	if (!asn1_oid_equal(&oid, hash_alg)) {
+ 		char txt[100], txt2[100];
+diff --git a/src/tls/x509v3.c b/src/tls/x509v3.c
+index 1bd5aa0..bf2289f 100644
+--- a/src/tls/x509v3.c
++++ b/src/tls/x509v3.c
+@@ -1834,6 +1834,7 @@ int x509_check_signature(struct x509_certificate *issuer,
+ 		os_free(data);
+ 		return -1;
+ 	}
++	wpa_hexdump(MSG_MSGDUMP, "X509: DigestInfo", hdr.payload, hdr.length);
+ 
+ 	pos = hdr.payload;
+ 	end = pos + hdr.length;
+@@ -1855,6 +1856,8 @@ int x509_check_signature(struct x509_certificate *issuer,
+ 		os_free(data);
+ 		return -1;
+ 	}
++	wpa_hexdump(MSG_MSGDUMP, "X509: DigestAlgorithmIdentifier",
++		    hdr.payload, hdr.length);
+ 	da_end = hdr.payload + hdr.length;
+ 
+ 	if (asn1_get_oid(hdr.payload, hdr.length, &oid, &next)) {
+@@ -1862,6 +1865,23 @@ int x509_check_signature(struct x509_certificate *issuer,
+ 		os_free(data);
+ 		return -1;
+ 	}
++	wpa_hexdump(MSG_MSGDUMP, "X509: Digest algorithm parameters",
++		    next, da_end - next);
++
++	/*
++	 * RFC 5754: The correct encoding for the SHA2 algorithms would be to
++	 * omit the parameters, but there are implementation that encode these
++	 * as a NULL element. Allow these two cases and reject anything else.
++	 */
++	if (da_end > next &&
++	    (asn1_get_next(next, da_end - next, &hdr) < 0 ||
++	     !asn1_is_null(&hdr) ||
++	     hdr.payload + hdr.length != da_end)) {
++		wpa_printf(MSG_DEBUG,
++			   "X509: Unexpected digest algorithm parameters");
++		os_free(data);
++		return -1;
++	}
+ 
+ 	if (x509_sha1_oid(&oid)) {
+ 		if (signature->oid.oid[6] != 5 /* sha-1WithRSAEncryption */) {
+-- 
+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 1f38eee..e586018 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
@@ -13,6 +13,9 @@
     file://hostapd.service \
     file://CVE-2019-16275.patch \
     file://CVE-2019-5061.patch \
+    file://CVE-2021-0326.patch \
+    file://CVE-2021-27803.patch \
+    file://CVE-2021-30004.patch \
 "
 
 SRC_URI[md5sum] = "f188fc53a495fe7af3b6d77d3c31dee8"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.26.6.bb b/meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.28.2.bb
similarity index 89%
rename from meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.26.6.bb
rename to meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.28.2.bb
index 6d60a67..9be48b7 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.26.6.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.28.2.bb
@@ -14,7 +14,7 @@
 
 SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BPN}-${PV}.tar.xz"
 
-SRC_URI[sha256sum] = "a71963bb1097a42665287e40a9a36f95b8f9d6d6a4b7a5de22d660328af97cb9"
+SRC_URI[sha256sum] = "8c8c3ee719874d2529bce9b35b028fe435b36f003979a360d3ad0938449db783"
 
 PACKAGECONFIG ??= "udev mbim"
 PACKAGECONFIG[udev] = ",--without-udev,libgudev"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.14.10.bb b/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.16.2.bb
similarity index 94%
rename from meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.14.10.bb
rename to meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.16.2.bb
index 2045e2a..d1ba8e4 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.14.10.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.16.2.bb
@@ -12,7 +12,7 @@
 DEPENDS = "glib-2.0 libgudev intltool-native libxslt-native"
 
 SRC_URI = "http://www.freedesktop.org/software/ModemManager/ModemManager-${PV}.tar.xz"
-SRC_URI[sha256sum] = "4ea60b375a761e17e7bb095bca894579ed0e8e33b273dc698b5cbe03947f357f"
+SRC_URI[sha256sum] = "efa9a963499e0885f3f163096d433334143c4937545134ecd682e0157fa591e3"
 S = "${WORKDIR}/ModemManager-${PV}"
 
 PACKAGECONFIG ??= "mbim qmi \
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/phonet-utils/phonet-utils/0001-Include-limits.h-for-PATH_MAX.patch b/meta-openembedded/meta-oe/recipes-connectivity/phonet-utils/phonet-utils/0001-Include-limits.h-for-PATH_MAX.patch
deleted file mode 100644
index 8bb7e5a..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/phonet-utils/phonet-utils/0001-Include-limits.h-for-PATH_MAX.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From f7ad9a4471cee2324f216a0d82ba8097ec746c56 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 15 Jul 2017 11:48:12 -0700
-Subject: [PATCH] Include limits.h for PATH_MAX
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/pnstat.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/pnstat.c b/src/pnstat.c
-index 661a5bc..76068e6 100644
---- a/src/pnstat.c
-+++ b/src/pnstat.c
-@@ -35,6 +35,7 @@
- #include <dirent.h>
- #include <unistd.h>
- #include <netinet/tcp.h>
-+#include <limits.h>
- 
- struct fd
- {
--- 
-2.13.3
-
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/phonet-utils/phonet-utils_git.bb b/meta-openembedded/meta-oe/recipes-connectivity/phonet-utils/phonet-utils_git.bb
deleted file mode 100644
index 3c59995..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/phonet-utils/phonet-utils_git.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-SUMMARY = "This small package provides a few command line tools for Linux Phonet"
-HOMEPAGE = ""
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-SRC_URI = "git://gitorious.org/meego-cellular/phonet-utils.git;branch=master \
-           file://0001-Include-limits.h-for-PATH_MAX.patch \
-           "
-PR = "r2"
-S = "${WORKDIR}/git"
-SRCREV = "4acfa720fd37d178a048fc2be17180137d4a70ea"
-PV = "0.0.0+gitr${SRCPV}"
-
-inherit autotools-brokensep
-
-FILES_${PN} += "${base_libdir}/udev/rules.d/85-phonet-utils.rules"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/rabbitmq-c/rabbitmq-c_0.10.0.bb b/meta-openembedded/meta-oe/recipes-connectivity/rabbitmq-c/rabbitmq-c_0.11.0.bb
similarity index 88%
rename from meta-openembedded/meta-oe/recipes-connectivity/rabbitmq-c/rabbitmq-c_0.10.0.bb
rename to meta-openembedded/meta-oe/recipes-connectivity/rabbitmq-c/rabbitmq-c_0.11.0.bb
index 2ef6b18..0cfd225 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/rabbitmq-c/rabbitmq-c_0.10.0.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/rabbitmq-c/rabbitmq-c_0.11.0.bb
@@ -4,8 +4,8 @@
 LICENSE = "MIT"
 
 SRC_URI = "git://github.com/alanxz/rabbitmq-c.git"
-# v0.10.0-master
-SRCREV = "ffe918a5fcef72038a88054dca3c56762b1953d4"
+# v0.11.0-master
+SRCREV = "a64c08c68aff34d49a2ac152f04988cd921084f9"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb b/meta-openembedded/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb
index 2b05c61..4d4e841 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb
@@ -12,7 +12,9 @@
 
 inherit autotools pkgconfig gettext gobject-introspection vala
 
-EXTRA_OECONF = "--enable-vala-bindings"
+# Respect GI_DATA_ENABLED value when enabling vala-bindings:
+# configure: error: GObject-Introspection must be enabled for Vala bindings
+EXTRA_OECONF = "${@bb.utils.contains('GI_DATA_ENABLED', 'True', '--enable-vala-bindings', '--disable-vala-bindings', d)}"
 
 FILES_${PN} += "${datadir}/telepathy \
                 ${datadir}/dbus-1"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_5.2.5.bb b/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_5.2.6.bb
similarity index 94%
rename from meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_5.2.5.bb
rename to meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_5.2.6.bb
index 2bbfec9..37bb9a2 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_5.2.5.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_5.2.6.bb
@@ -28,8 +28,8 @@
     file://zabbix-agent.service \
 "
 
-SRC_URI[md5sum] = "e90822716c5c241890f6fed1588b5451"
-SRC_URI[sha256sum] = "ce0d9745a8b9154e87d6906edd0fce7b7ec298acd34a0543ea53d1a5f2f14bc5"
+SRC_URI[md5sum] = "31dab3535a1fa212f5724902727f6d4d"
+SRC_URI[sha256sum] = "76cb704f2a04fbc87bb3eff44fa71339c355d467f7bbd8fb53f8927c760e1680"
 
 inherit autotools-brokensep linux-kernel-base pkgconfig systemd useradd
 
diff --git a/meta-openembedded/meta-oe/recipes-core/opencl/ocl-icd_git.bb b/meta-openembedded/meta-oe/recipes-core/opencl/ocl-icd_2.3.0.bb
similarity index 84%
rename from meta-openembedded/meta-oe/recipes-core/opencl/ocl-icd_git.bb
rename to meta-openembedded/meta-oe/recipes-core/opencl/ocl-icd_2.3.0.bb
index 2e43939..d94e4c2 100644
--- a/meta-openembedded/meta-oe/recipes-core/opencl/ocl-icd_git.bb
+++ b/meta-openembedded/meta-oe/recipes-core/opencl/ocl-icd_2.3.0.bb
@@ -7,8 +7,7 @@
 
 SRC_URI = "git://github.com/OCL-dev/ocl-icd.git;protocol=https"
 
-PV = "2.2.14+git${SRCPV}"
-SRCREV = "109694ef2686fe25538c05f3c856912f8ef571a9"
+SRCREV = "59c098b6b1f97a339e3e5308499aee6538ecea40"
 
 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 4eb2e8c..59908e2 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
@@ -146,7 +146,6 @@
     obexftp \
     packagegroup-tools-bluetooth \
     paho-mqtt-c \
-    phonet-utils \
     rabbitmq-c \
     rfkill \
     rtorrent \
@@ -192,7 +191,7 @@
     usleep \
     dbus-cxx \
 "
-RDEPENDS_packagegroup-meta-oe-core_append_libc-glibc = " glfw"
+RDEPENDS_packagegroup-meta-oe-core_append_libc-glibc = " ${@bb.utils.contains("DISTRO_FEATURES", "x11 opengl", "glfw", "", d)}"
 RDEPENDS_packagegroup-meta-oe-core_remove_riscv64 = "safec"
 RDEPENDS_packagegroup-meta-oe-core_remove_riscv32 = "safec"
 
@@ -322,109 +321,109 @@
 RDEPENDS_packagegroup-meta-oe-devtools_remove_x86 = "ply"
 
 RDEPENDS_packagegroup-meta-oe-extended ="\
-     bitwise \
+    bitwise \
     ${@bb.utils.contains("DISTRO_FEATURES", "x11 wayland opengl", "boinc-client", "", d)} \
-     brotli \
-     byacc \
-     cmpi-bindings \
-     collectd \
-     cfengine-masterfiles \
-     cfengine \
-     ddrescue \
-     dialog \
-     enscript \
-     ${@bb.utils.contains("DISTRO_FEATURES", "x11", "gnuplot", "", d)} \
-     dlt-daemon \
-     docopt.cpp \
-     iotop \
-     dumb-init \
-     konkretcmpi \
-     figlet \
-     libcec \
-     libdivecomputer \
-     fluentbit \
-     ${@bb.utils.contains("DISTRO_FEATURES", "x11", "libgxim", "", d)} \
-     liblognorm \
-     libmodbus \
-     haveged \
-     hexedit \
-     hiredis \
-     hplip \
-     hwloc \
-     libleak \
-     libuio \
-     ${@bb.utils.contains("DISTRO_FEATURES", "x11", "libwmf", "", d)} \
-     lprng \
-     icewm \
-     md5deep \
-     indent \
-     jansson \
-     nana \
-     nicstat \
-     ${@bb.utils.contains("DISTRO_FEATURES", "pam", "openwsman", "", d)} \
-     p7zip \
-     isomd5sum \
-     jpnevulator \
-     ${@bb.utils.contains("DISTRO_FEATURES", "polkit", "polkit-group-rule-datetime polkit-group-rule-network polkit", "", d)} \
-     rarpd \
-     redis \
-     libfastjson \
-     librelp \
-     sblim-cmpi-devel \
-     sblim-sfc-common \
-     ${@bb.utils.contains("DISTRO_FEATURES", "pam", "sblim-sfcb ", "", d)} \
-     sblim-sfcc \
-     libblockdev \
-     sgpio \
-     smartmontools \
-     can-utils \
-     canutils \
-     libsocketcan \
-     libconfig \
-     linuxconsole \
-     uml-utilities \
-     libidn \
-     libqb \
-     wipe \
-     libzip \
-     zram \
-     libplist \
-     libusbmuxd \
-     liblockfile \
-     liblogging \
-     libnss-nisplus \
-     libpwquality \
-     ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "libreport", "", d)} \
-     libserialport \
-     libstatgrab \
-     lockfile-progs \
-     logwatch \
-     mailx \
-     mraa \
-     ostree \
-     ${@bb.utils.contains("DISTRO_FEATURES", "pam", "pam-plugin-ccreds pam-plugin-ldapdb pam-ssh-agent-auth", "", d)} \
-     pegtl \
-     libfile-fnmatch-perl \
-     rrdtool \
-     sanlock \
-     scsirastools \
-     sedutil \
-     libsigrok \
-     libsigrokdecode \
-     sigrok-cli \
-     snappy \
-     tipcutils \
-     tiptop \
-     tmate \
-     tmux \
-     triggerhappy \
-     upm \
-     vlock \
-     volume-key \
-     wxwidgets \
-     zlog \
-     zstd \
-     redis-plus-plus \
+    brotli \
+    byacc \
+    cmpi-bindings \
+    collectd \
+    cfengine-masterfiles \
+    cfengine \
+    ddrescue \
+    dialog \
+    enscript \
+    ${@bb.utils.contains("DISTRO_FEATURES", "x11", "gnuplot", "", d)} \
+    dlt-daemon \
+    docopt.cpp \
+    iotop \
+    dumb-init \
+    konkretcmpi \
+    figlet \
+    libcec \
+    libdivecomputer \
+    fluentbit \
+    ${@bb.utils.contains("DISTRO_FEATURES", "x11", "libgxim", "", d)} \
+    liblognorm \
+    libmodbus \
+    haveged \
+    hexedit \
+    hiredis \
+    hplip \
+    hwloc \
+    libleak \
+    libuio \
+    ${@bb.utils.contains("DISTRO_FEATURES", "x11", "libwmf", "", d)} \
+    lprng \
+    ${@bb.utils.contains("DISTRO_FEATURES", "x11", "icewm", "", d)} \
+    md5deep \
+    indent \
+    jansson \
+    nana \
+    nicstat \
+    ${@bb.utils.contains("DISTRO_FEATURES", "pam", "openwsman", "", d)} \
+    p7zip \
+    isomd5sum \
+    jpnevulator \
+    ${@bb.utils.contains("DISTRO_FEATURES", "polkit", "polkit-group-rule-datetime polkit-group-rule-network polkit", "", d)} \
+    rarpd \
+    redis \
+    libfastjson \
+    librelp \
+    sblim-cmpi-devel \
+    sblim-sfc-common \
+    ${@bb.utils.contains("DISTRO_FEATURES", "pam", "sblim-sfcb ", "", d)} \
+    sblim-sfcc \
+    libblockdev \
+    sgpio \
+    smartmontools \
+    can-utils \
+    canutils \
+    libsocketcan \
+    libconfig \
+    linuxconsole \
+    uml-utilities \
+    libidn \
+    libqb \
+    wipe \
+    libzip \
+    zram \
+    libplist \
+    libusbmuxd \
+    liblockfile \
+    liblogging \
+    libnss-nisplus \
+    libpwquality \
+    ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "libreport", "", d)} \
+    libserialport \
+    libstatgrab \
+    lockfile-progs \
+    logwatch \
+    mailx \
+    mraa \
+    ostree \
+    ${@bb.utils.contains("DISTRO_FEATURES", "pam", "pam-plugin-ccreds pam-plugin-ldapdb pam-ssh-agent-auth", "", d)} \
+    pegtl \
+    libfile-fnmatch-perl \
+    rrdtool \
+    sanlock \
+    scsirastools \
+    sedutil \
+    libsigrok \
+    libsigrokdecode \
+    sigrok-cli \
+    snappy \
+    tipcutils \
+    tiptop \
+    tmate \
+    tmux \
+    triggerhappy \
+    upm \
+    vlock \
+    volume-key \
+    wxwidgets \
+    zlog \
+    zstd \
+    redis-plus-plus \
 "
 RDEPENDS_packagegroup-meta-oe-extended_append_libc-musl = " libexecinfo"
 RDEPENDS_packagegroup-meta-oe-extended_append_x86-64 = " pmdk libx86-1"
@@ -712,7 +711,6 @@
     ace-cloud-editor \
     frame \
     ${@bb.utils.contains("DISTRO_FEATURES", "x11", "geis", "", d)} \
-    geis \
     grail \
     asio \
     augeas \
@@ -762,7 +760,7 @@
     ccid \
     zchunk \
     libgpiod \
-    libgpiod \
+    libmanette \
     ckermit \
     libcereal \
     daemontools \
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.5.8.bb b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.5.9.bb
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.5.8.bb
rename to meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.5.9.bb
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc
index 1fbcb71..9833b28 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc
@@ -20,11 +20,12 @@
            file://fix-arm-atomic.patch \
            file://0001-Fix-library-LZ4-lookup.patch \
            file://0001-innobase-Define-__NR_futex-if-it-does-not-exist.patch \
-           file://0001-stacktrace-t.c-make-the-test-conditional.patch \
+           file://0001-aio_linux-Check-if-syscall-exists-before-using-it.patch \
+           file://sys_futex.patch \
           "
 SRC_URI_append_libc-musl = " file://ppc-remove-glibc-dep.patch"
 
-SRC_URI[sha256sum] = "eb4824f6f2c532cd3fc6a6bce7bf78ea7c6b949f8bdd07656b2c84344e757be8"
+SRC_URI[sha256sum] = "40ab19aeb8de141fdc188cf2251213c9e7351bee4d0cd29db704fae68d1068cf"
 
 UPSTREAM_CHECK_URI = "https://github.com/MariaDB/server/releases"
 
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-aio_linux-Check-if-syscall-exists-before-using-it.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-aio_linux-Check-if-syscall-exists-before-using-it.patch
new file mode 100644
index 0000000..a2f7812
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-aio_linux-Check-if-syscall-exists-before-using-it.patch
@@ -0,0 +1,43 @@
+From 5d9a869a72420cf0bb08b6aa93e980df90bdcf2e Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 3 Apr 2021 12:02:36 -0700
+Subject: [PATCH] aio_linux: Check if syscall exists before using it
+
+Return -ENOSYS if not implememented, fixes build on arches like RISCV32
+Fixes
+tpool/aio_linux.cc:63:20: error: '__NR_io_getevents' was not declared in this scope; did you mean 'io_getevents'?
+   63 |   int ret= syscall(__NR_io_getevents, reinterpret_cast<long>(ctx),
+      |                    ^~~~~~~~~~~~~~~~~
+      |                    io_getevents
+
+Upstream-Staus: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ tpool/aio_linux.cc | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/tpool/aio_linux.cc b/tpool/aio_linux.cc
+index d9aa8be2..d8a87a8f 100644
+--- a/tpool/aio_linux.cc
++++ b/tpool/aio_linux.cc
+@@ -59,6 +59,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111 - 1301 USA*/
+ */
+ static int my_getevents(io_context_t ctx, long min_nr, long nr, io_event *ev)
+ {
++#ifdef __NR_io_getevents
+   int saved_errno= errno;
+   int ret= syscall(__NR_io_getevents, reinterpret_cast<long>(ctx),
+                    min_nr, nr, ev, 0);
+@@ -68,6 +69,9 @@ static int my_getevents(io_context_t ctx, long min_nr, long nr, io_event *ev)
+     errno= saved_errno;
+   }
+   return ret;
++#else
++  return -ENOSYS;
++#endif
+ }
+ #endif
+ 
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-stacktrace-t.c-make-the-test-conditional.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-stacktrace-t.c-make-the-test-conditional.patch
deleted file mode 100644
index d8f672d..0000000
--- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-stacktrace-t.c-make-the-test-conditional.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 966cbeb309f867ff4ac8e7f4462be4780e421700 Mon Sep 17 00:00:00 2001
-From: Mingli Yu <mingli.yu@windriver.com>
-Date: Mon, 25 Jan 2021 19:01:06 -0800
-Subject: [PATCH] stacktrace-t.c: make the test conditional
-
-Fixes:
-/prj/tmp/work/cortexa57-poky-linux-musl/mariadb/10.5.8-r0/recipe-sysroot-native/usr/bin/aarch64-poky-linux-musl/../../libexec/aarch64-poky-linux-musl/gcc/aarch64-poky-linux-musl/10.2.0/ld.bfd: /usr/src/debug/mariadb/10.5.8-r0/mariadb-10.5.8/unittest/mysys/stacktrace-t.c:36: undefined reference to `my_safe_print_str'
-
-Upstream-Status: Submitted [https://jira.mariadb.org/browse/MDEV-24131]
-
-Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
----
- unittest/mysys/stacktrace-t.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/unittest/mysys/stacktrace-t.c b/unittest/mysys/stacktrace-t.c
-index 8fa0db15b36..d8408f80d76 100644
---- a/unittest/mysys/stacktrace-t.c
-+++ b/unittest/mysys/stacktrace-t.c
-@@ -29,6 +29,7 @@ void test_my_safe_print_str()
-   memcpy(b_stack, "LEGAL", 6);
-   memcpy(b_bss, "LEGAL", 6);
- 
-+#ifdef HAVE_STACKTRACE
- #ifndef __SANITIZE_ADDRESS__
-   fprintf(stderr, "\n===== stack =====\n");
-   my_safe_print_str(b_stack, 65535);
-@@ -48,6 +49,7 @@ void test_my_safe_print_str()
-   fprintf(stderr, "\n===== (const char*) 1 =====\n");
-   my_safe_print_str((const char*)1, 5);
- #endif /*__SANITIZE_ADDRESS__*/
-+#endif /*HAVE_STACKTRACE*/
- 
-   free(b_heap);
- 
--- 
-2.17.1
-
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/c11_atomics.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/c11_atomics.patch
index 32c9818..1c76ab3 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/c11_atomics.patch
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/c11_atomics.patch
@@ -17,10 +17,10 @@
  3 files changed, 27 insertions(+), 1 deletion(-)
 
 diff --git a/configure.cmake b/configure.cmake
-index bb3ad43..2ff4f19 100644
+index 4fc324a9..23a2ea91 100644
 --- a/configure.cmake
 +++ b/configure.cmake
-@@ -861,7 +861,25 @@ int main()
+@@ -862,7 +862,25 @@ int main()
    long long int *ptr= &var;
    return (int)__atomic_load_n(ptr, __ATOMIC_SEQ_CST);
  }"
@@ -48,10 +48,10 @@
  IF(WITH_VALGRIND)
    SET(HAVE_valgrind 1)
 diff --git a/mysys/CMakeLists.txt b/mysys/CMakeLists.txt
-index 6a3a1ef..e306ae7 100644
+index 6aab788f..91b9c393 100644
 --- a/mysys/CMakeLists.txt
 +++ b/mysys/CMakeLists.txt
-@@ -140,6 +140,10 @@ TARGET_LINK_LIBRARIES(mysys dbug strings ${ZLIB_LIBRARY}
+@@ -154,6 +154,10 @@ TARGET_LINK_LIBRARIES(mysys dbug strings ${ZLIB_LIBRARY}
   ${LIBNSL} ${LIBM} ${LIBRT} ${CMAKE_DL_LIBS} ${LIBSOCKET} ${LIBEXECINFO})
  DTRACE_INSTRUMENT(mysys)
  
@@ -63,10 +63,10 @@
    TARGET_LINK_LIBRARIES(mysys bfd)  
  ENDIF(HAVE_BFD_H)
 diff --git a/sql/CMakeLists.txt b/sql/CMakeLists.txt
-index 4978d01..883a930 100644
+index b9cd418f..d42e5017 100644
 --- a/sql/CMakeLists.txt
 +++ b/sql/CMakeLists.txt
-@@ -220,6 +220,10 @@ ELSE()
+@@ -222,6 +222,10 @@ ELSE()
    SET(MYSQLD_SOURCE main.cc ${DTRACE_PROBES_ALL})
  ENDIF()
  
@@ -74,9 +74,9 @@
 +  TARGET_LINK_LIBRARIES(sql atomic)
 +ENDIF()
 +
- IF(MSVC)
+ IF(MSVC OR CMAKE_SYSTEM_NAME MATCHES AIX)
    SET(libs_to_export_symbols sql mysys dbug strings)
    # Create shared library of already compiled object
 -- 
-2.17.1
+2.25.1
 
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/sys_futex.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/sys_futex.patch
new file mode 100644
index 0000000..3277a3e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/sys_futex.patch
@@ -0,0 +1,22 @@
+ Use SYS_futex for syscall
+
+glibc defines SYS_futex and on newer 32bit CPUs like RISCV-32, arc there
+is no 32bit time_t therefore define SYS_futex in terms of SYS_futex_time64
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/storage/innobase/include/ib0mutex.h
++++ b/storage/innobase/include/ib0mutex.h
+@@ -150,6 +150,12 @@ private:
+ #include <linux/futex.h>
+ #include <sys/syscall.h>
+ 
++/** Newer 32bit CPUs eg. RISCV-32 are defaulting to 64bit time_t from get go and
++ therefore do not define __NR_futex */
++#if !defined(SYS_futex) && defined(SYS_futex_time64)
++# define SYS_futex SYS_futex_time64
++#endif
++
+ /** Mutex implementation that used the Linux futex. */
+ template <template <typename> class Policy>
+ struct TTASFutexMutex {
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.5.8.bb b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.5.9.bb
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.5.8.bb
rename to meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.5.9.bb
diff --git a/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb b/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb
index d93a7f7..e899234 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb
@@ -160,8 +160,8 @@
 
 PACKAGES =+ "${PN}-fstools ${PN}-adbd"
 
-RDEPENDS_${BPN}-adbd = "${BPN}-conf"
-RDEPENDS_${BPN}-fstools = "bash"
+RDEPENDS_${PN}-adbd = "${PN}-conf"
+RDEPENDS_${PN}-fstools = "bash"
 
 FILES_${PN}-adbd = "\
     ${bindir}/adbd \
diff --git a/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/0001-support-to-override-usr-sbin-and-usr-share.patch b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/0001-support-to-override-usr-sbin-and-usr-share.patch
new file mode 100644
index 0000000..12dd238
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/0001-support-to-override-usr-sbin-and-usr-share.patch
@@ -0,0 +1,41 @@
+From 87d0174e8d56e7458dc94f05f82ab7a67a5cf7d0 Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Thu, 8 Apr 2021 14:06:05 +0800
+Subject: [PATCH 1/2] support to override /usr/sbin and /usr/share
+
+Upstream-Status: Submitted [https://salsa.debian.org/installer-team/debootstrap/-/merge_requests/55]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ Makefile | 12 +++++++-----
+ 1 file changed, 7 insertions(+), 5 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 8516803..a2d8c00 100644
+--- a/Makefile
++++ b/Makefile
+@@ -5,14 +5,16 @@ all:
+ 
+ clean:
+ 
+-DSDIR=$(DESTDIR)/usr/share/debootstrap
++datadir ?= "/usr/share"
++sbindir ?= "/usr/sbin"
++DSDIR=$(DESTDIR)${datadir}/debootstrap
+ install:
+ 	mkdir -p $(DSDIR)/scripts
+-	mkdir -p $(DESTDIR)/usr/sbin
++	mkdir -p $(DESTDIR)$(sbindir)
+ 
+ 	cp -a scripts/* $(DSDIR)/scripts/
+ 	install -o root -g root -m 0644 functions $(DSDIR)/
+ 
+-	sed 's/@VERSION@/$(VERSION)/g' debootstrap >$(DESTDIR)/usr/sbin/debootstrap
+-	chown root:root $(DESTDIR)/usr/sbin/debootstrap
+-	chmod 0755 $(DESTDIR)/usr/sbin/debootstrap
++	sed 's/@VERSION@/$(VERSION)/g' debootstrap >$(DESTDIR)$(sbindir)/debootstrap
++	chown root:root $(DESTDIR)$(sbindir)/debootstrap
++	chmod 0755 $(DESTDIR)$(sbindir)/debootstrap
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/0002-support-to-override-usr-bin-arch-test.patch b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/0002-support-to-override-usr-bin-arch-test.patch
new file mode 100644
index 0000000..69329df
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/0002-support-to-override-usr-bin-arch-test.patch
@@ -0,0 +1,47 @@
+From f0420b201f2fb5286ccf5657faa6b38cd2680e10 Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Thu, 8 Apr 2021 14:08:06 +0800
+Subject: [PATCH 2/2] support to override /usr/bin/arch-test
+
+Upstream-Status: Submitted [https://salsa.debian.org/installer-team/debootstrap/-/merge_requests/55]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ debootstrap | 12 ++++++++----
+ 1 file changed, 8 insertions(+), 4 deletions(-)
+
+diff --git a/debootstrap b/debootstrap
+index 9b9e58d..a3cf3af 100755
+--- a/debootstrap
++++ b/debootstrap
+@@ -51,6 +51,10 @@ INRELEASE_PATH=""
+ DEF_MIRROR="http://deb.debian.org/debian"
+ DEF_HTTPS_MIRROR="https://deb.debian.org/debian"
+ 
++if [ -z "$ARCH_TEST" ]; then
++	ARCH_TEST="/usr/bin/arch-test"
++fi
++
+ # set $CONTAINER
+ detect_container
+ 
+@@ -645,12 +649,12 @@ fi
+ 
+ ###########################################################################
+ 
+-if [ -x /usr/bin/arch-test ] && am_doing_phase second_stage; then
++if [ -x ${ARCH_TEST} ] && am_doing_phase second_stage; then
+ 	if doing_variant fakechroot; then
+-		ret=0; arch-test "$ARCH" || ret=$?
++		ret=0; ${ARCH_TEST} "$ARCH" || ret=$?
+ 	# Avoid failure with old arch-test package
+-	elif arch-test --version > /dev/null 2>&1; then
+-		ret=0; arch-test -c "$TARGET" "$ARCH" || ret=$?
++	elif ${ARCH_TEST} --version > /dev/null 2>&1; then
++		ret=0; ${ARCH_TEST} -c "$TARGET" "$ARCH" || ret=$?
+ 	else
+ 		ret=3
+ 	fi
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/devices.tar.gz b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/devices.tar.gz
deleted file mode 100644
index 20eaba3..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/devices.tar.gz
+++ /dev/null
Binary files differ
diff --git a/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.123.bb b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.123.bb
new file mode 100644
index 0000000..bb43456
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.123.bb
@@ -0,0 +1,23 @@
+SUMMARY = "Install a Debian system into a subdirectory"
+HOMEPAGE = "https://wiki.debian.org/Debootstrap"
+SECTION = "devel"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://debian/copyright;md5=1e68ced6e1689d4cd9dac75ff5225608"
+
+SRC_URI  = "\
+    http://http.debian.net/debian/pool/main/d/debootstrap/debootstrap_${PV}.tar.gz \
+    file://0001-support-to-override-usr-sbin-and-usr-share.patch \
+    file://0002-support-to-override-usr-bin-arch-test.patch \
+"
+
+SRC_URI[md5sum] = "b959c7ac01839e9b96a733d27b19e59e"
+SRC_URI[sha256sum] = "5e5a8147ecdd6be0eea5ac4d6ed8192cc653e93f744dd3306c9b1cc51d6ca328"
+
+S = "${WORKDIR}/debootstrap"
+
+fakeroot do_install() {
+    oe_runmake 'DESTDIR=${D}' install
+    chown -R root:root ${D}${datadir}/debootstrap
+}
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.67.bb b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.67.bb
deleted file mode 100644
index 8472aca..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.67.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-SUMMARY = "Install a Debian system into a subdirectory"
-HOMEPAGE = "https://wiki.debian.org/Debootstrap"
-SECTION = "devel"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://debian/copyright;md5=1e68ced6e1689d4cd9dac75ff5225608"
-
-inherit pkgconfig
-
-SRC_URI  = "\
-    http://http.debian.net/debian/pool/main/d/debootstrap/debootstrap_1.0.67.tar.gz \
-    file://devices.tar.gz;unpack=0 \
-"
-
-SRC_URI[md5sum] = "eacabfe2e45415af60b1d74c3a23418a"
-SRC_URI[sha256sum] = "0a12e0a2bbff185d47711a716b1f2734856100e8784361203e834fed0cffa51b"
-
-S = "${WORKDIR}/${BP}"
-
-# All Makefile does is creation of devices.tar.gz, which fails in OE build, we use
-# static devices.tar.gz as work around
-# | NOTE: make -j 8 -e MAKEFLAGS=
-# | rm -rf dev
-# | mkdir -p dev
-# | chown 0:0 dev
-# | chown: changing ownership of `dev': Operation not permitted
-# | make: *** [devices.tar.gz] Error 1
-# | WARNING: exit code 1 from a shell command.
-do_compile_prepend() {
-    cp ${WORKDIR}/devices.tar.gz ${B}
-}
-
-do_install() {
-    oe_runmake 'DESTDIR=${D}' install
-    chown -R root:root ${D}${datadir}/debootstrap
-}
diff --git a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-build-don-t-look-for-Iconv.patch b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-build-don-t-look-for-Iconv.patch
index c86dc16..6906efd 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-build-don-t-look-for-Iconv.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-build-don-t-look-for-Iconv.patch
@@ -8,6 +8,7 @@
 C library. We don't need this check in meta-openembedded.
 
 Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
+Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
 
 Upstream-status: Inappropriate
 - upstream doxygen must build on many architectures, this change is
@@ -17,10 +18,10 @@
  1 file changed, 4 deletions(-)
 
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 45c2f2c1..22cf0144 100644
+index 06b9696f..f30b46b8 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -92,10 +92,6 @@ if (sqlite3)
+@@ -117,10 +117,6 @@ if (sqlite3)
    endif()
  endif()
  
@@ -28,9 +29,9 @@
 -include_directories(${ICONV_INCLUDE_DIR})
 -
 -
- #set(DOXYDOCS ${CMAKE_SOURCE_DIR}/doc CACHE INTERNAL "Path to doxygen docs")
+ #set(DOXYDOCS ${PROJECT_SOURCE_DIR}/doc CACHE INTERNAL "Path to doxygen docs")
  set(DOXYDOCS ${PROJECT_BINARY_DIR}/doc)
  set(ENV{DOXYGEN_DOCDIR} ${DOXYDOCS})
 -- 
-2.17.1
+2.27.0
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/doxygen-native-only-check-python3.patch b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/doxygen-native-only-check-python3.patch
index 53f8888..9d1a5a9 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/doxygen-native-only-check-python3.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/doxygen-native-only-check-python3.patch
@@ -1,4 +1,4 @@
-From aa833cf56c5cc2e87a1d91881eb2286beb34e417 Mon Sep 17 00:00:00 2001
+From 7aeee92c752f8a4b2524ed6a41d60c1a3ca8bf2d Mon Sep 17 00:00:00 2001
 From: Leon Anavi <leon.anavi@konsulko.com>
 Date: Wed, 26 Aug 2020 10:52:10 +0300
 Subject: [PATCH] doxygen: Fix Python issues for doxygen-native
@@ -32,25 +32,28 @@
 
 This patch is only needded by doxygen-native.
 
+Updated to apply to release 1.9.1.
+
 Upstream-Status: Inappropriate[oe specific]
 
 Co-Authored-By: Kai Kang <kai.kang@windriver.com>
 Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
+Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
 ---
  CMakeLists.txt                  |  2 +-
  addon/doxywizard/CMakeLists.txt |  6 +++---
  doc/CMakeLists.txt              |  6 +++---
  examples/CMakeLists.txt         |  4 ++--
  libmscgen/CMakeLists.txt        |  2 +-
- src/CMakeLists.txt              | 12 ++++++------
+ src/CMakeLists.txt              | 10 +++++-----
  testing/CMakeLists.txt          |  4 ++--
- 7 files changed, 18 insertions(+), 18 deletions(-)
+ 7 files changed, 17 insertions(+), 17 deletions(-)
 
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 35e6a0c2..9aaebbdf 100644
+index f30b46b8..50f211c8 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -100,7 +100,7 @@ else ()
+@@ -101,7 +101,7 @@ else ()
  endif ()
  
  find_program(DOT NAMES dot)
@@ -60,50 +63,50 @@
  find_package(BISON REQUIRED)
  if (BISON_VERSION VERSION_LESS 2.7)
 diff --git a/addon/doxywizard/CMakeLists.txt b/addon/doxywizard/CMakeLists.txt
-index 6aacd8b6..fa197e9e 100644
+index a6f65f8d..d163aa5b 100644
 --- a/addon/doxywizard/CMakeLists.txt
 +++ b/addon/doxywizard/CMakeLists.txt
 @@ -58,7 +58,7 @@ set_source_files_properties(${GENERATED_SRC_WIZARD}/settings.h PROPERTIES GENERA
  
  # generate version.cpp
  add_custom_command(
--    COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/version.py ${VERSION} > ${GENERATED_SRC_WIZARD}/version.cpp
-+    COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/version.py ${VERSION} > ${GENERATED_SRC_WIZARD}/version.cpp
-     DEPENDS ${CMAKE_SOURCE_DIR}/VERSION ${CMAKE_SOURCE_DIR}/src/version.py
+-    COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/version.py ${VERSION} > ${GENERATED_SRC_WIZARD}/version.cpp
++    COMMAND ${Python3_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/version.py ${VERSION} > ${GENERATED_SRC_WIZARD}/version.cpp
+     DEPENDS ${PROJECT_SOURCE_DIR}/VERSION ${PROJECT_SOURCE_DIR}/src/version.py
      OUTPUT ${GENERATED_SRC_WIZARD}/version.cpp
  )
 @@ -66,7 +66,7 @@ set_source_files_properties(${GENERATED_SRC_WIZARD}/version.cpp PROPERTIES GENER
  
  # generate configdoc.cpp
  add_custom_command(
--COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/configgen.py -wiz ${CMAKE_SOURCE_DIR}/src/config.xml > ${GENERATED_SRC_WIZARD}/configdoc.cpp
-+COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/configgen.py -wiz ${CMAKE_SOURCE_DIR}/src/config.xml > ${GENERATED_SRC_WIZARD}/configdoc.cpp
- OUTPUT ${GENERATED_SRC_WIZARD}/configdoc.cpp
+-    COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/configgen.py -wiz ${PROJECT_SOURCE_DIR}/src/config.xml > ${GENERATED_SRC_WIZARD}/configdoc.cpp
++    COMMAND ${Python3_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/configgen.py -wiz ${PROJECT_SOURCE_DIR}/src/config.xml > ${GENERATED_SRC_WIZARD}/configdoc.cpp
+     DEPENDS  ${PROJECT_SOURCE_DIR}/src/configgen.py ${PROJECT_SOURCE_DIR}/src/config.xml
+     OUTPUT ${GENERATED_SRC_WIZARD}/configdoc.cpp
  )
- set_source_files_properties(${GENERATED_SRC_WIZARD}/configdoc.cpp PROPERTIES GENERATED 1)
-@@ -74,7 +74,7 @@ set_source_files_properties(${GENERATED_SRC_WIZARD}/configdoc.cpp PROPERTIES GEN
- set(LEX_FILES config_doxyw) 
+@@ -75,7 +75,7 @@ set_source_files_properties(${GENERATED_SRC_WIZARD}/configdoc.cpp PROPERTIES GEN
+ set(LEX_FILES config_doxyw)
  foreach(lex_file ${LEX_FILES})
      add_custom_command(
--	    COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/addon/doxywizard/${lex_file}.l > ${GENERATED_SRC_WIZARD}/${lex_file}.l.h
-+	    COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/addon/doxywizard/${lex_file}.l > ${GENERATED_SRC_WIZARD}/${lex_file}.l.h
-         DEPENDS ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/addon/doxywizard/${lex_file}.l
- 	OUTPUT  ${GENERATED_SRC_WIZARD}/${lex_file}.l.h
+-        COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/scan_states.py ${PROJECT_SOURCE_DIR}/addon/doxywizard/${lex_file}.l > ${GENERATED_SRC_WIZARD}/${lex_file}.l.h
++        COMMAND ${Python3_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/scan_states.py ${PROJECT_SOURCE_DIR}/addon/doxywizard/${lex_file}.l > ${GENERATED_SRC_WIZARD}/${lex_file}.l.h
+         DEPENDS ${PROJECT_SOURCE_DIR}/src/scan_states.py ${PROJECT_SOURCE_DIR}/addon/doxywizard/${lex_file}.l
+         OUTPUT  ${GENERATED_SRC_WIZARD}/${lex_file}.l.h
      )
 diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
-index a094c570..8a757c20 100644
+index f2d177ed..22a4d602 100644
 --- a/doc/CMakeLists.txt
 +++ b/doc/CMakeLists.txt
-@@ -132,7 +132,7 @@ configure_file(${CMAKE_SOURCE_DIR}/doc/doxyindexer.1      ${PROJECT_BINARY_DIR}/
+@@ -163,7 +163,7 @@ configure_file(${PROJECT_SOURCE_DIR}/doc/doxyindexer.1      ${PROJECT_BINARY_DIR
  
  # doc/language.doc (see tag Doxyfile:INPUT)
  add_custom_command(
--        COMMAND ${PYTHON_EXECUTABLE} translator.py ${CMAKE_SOURCE_DIR}
-+        COMMAND ${Python3_EXECUTABLE} translator.py ${CMAKE_SOURCE_DIR}
-         DEPENDS ${CMAKE_SOURCE_DIR}/doc/maintainers.txt ${CMAKE_SOURCE_DIR}/doc/language.tpl ${PROJECT_BINARY_DIR}/doc/translator.py ${LANG_FILES}
+-        COMMAND ${PYTHON_EXECUTABLE} translator.py ${PROJECT_SOURCE_DIR}
++        COMMAND ${Python3_EXECUTABLE} translator.py ${PROJECT_SOURCE_DIR}
+         DEPENDS ${PROJECT_SOURCE_DIR}/doc/maintainers.txt ${PROJECT_SOURCE_DIR}/doc/language.tpl ${PROJECT_BINARY_DIR}/doc/translator.py ${LANG_FILES}
          OUTPUT language.doc
          WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/doc
-@@ -141,7 +141,7 @@ set_source_files_properties(language.doc PROPERTIES GENERATED 1)
+@@ -172,7 +172,7 @@ set_source_files_properties(language.doc PROPERTIES GENERATED 1)
  
  # doc/config.doc (see tag Doxyfile:INPUT)
  add_custom_command(
@@ -112,7 +115,7 @@
          DEPENDS ${TOP}/src/config.xml ${TOP}/src/configgen.py
          OUTPUT config.doc
          WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/doc/
-@@ -192,7 +192,7 @@ add_custom_target(docs_chm
+@@ -223,7 +223,7 @@ add_custom_target(docs_chm
      COMMAND ${CMAKE_COMMAND} -E echo "    for file in files:" >> ${PROJECT_BINARY_DIR}/chm/doxygen_manual_examples_chm.py
      COMMAND ${CMAKE_COMMAND} -E echo "        if file.endswith('.html') or file.endswith('.png') or file.endswith('.css') or file.endswith('.gif'):" >> ${PROJECT_BINARY_DIR}/chm/doxygen_manual_examples_chm.py
      COMMAND ${CMAKE_COMMAND} -E echo "            print(os.path.join(root, file))" >> ${PROJECT_BINARY_DIR}/chm/doxygen_manual_examples_chm.py
@@ -122,42 +125,42 @@
      COMMAND ${CMAKE_COMMAND} -E rename ${PROJECT_BINARY_DIR}/chm/index.chm ${PROJECT_BINARY_DIR}/chm/doxygen_manual.chm
          DEPENDS ${PROJECT_BINARY_DIR}/doc/language.doc ${PROJECT_BINARY_DIR}/doc/config.doc
 diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
-index 3f1c79b8..d5866ee1 100644
+index 194b4271..248b8076 100644
 --- a/examples/CMakeLists.txt
 +++ b/examples/CMakeLists.txt
-@@ -51,7 +51,7 @@ foreach (f_inp  ${BASIC_EXAMPLES})
-         string(REGEX REPLACE ":.*" "" f ${f_inp})
-     add_custom_command(
+@@ -54,7 +54,7 @@ foreach (f_inp  ${BASIC_EXAMPLES})
+         COMMAND ${CMAKE_COMMAND} -E make_directory ${PROJECT_BINARY_DIR}/html/examples/${f}
+         COMMAND ${CMAKE_COMMAND} -E make_directory ${PROJECT_BINARY_DIR}/latex/examples/${f}
  	COMMAND ${EXECUTABLE_OUTPUT_PATH}/doxygen ${f}.cfg
--        COMMAND ${PYTHON_EXECUTABLE}  ${TOP}/examples/strip_example.py  < ${PROJECT_BINARY_DIR}/html/examples/${f}/latex/refman.tex > ${PROJECT_BINARY_DIR}/html/examples/${f}/latex/refman_doc.tex
-+        COMMAND ${Python3_EXECUTABLE}  ${TOP}/examples/strip_example.py  < ${PROJECT_BINARY_DIR}/html/examples/${f}/latex/refman.tex > ${PROJECT_BINARY_DIR}/html/examples/${f}/latex/refman_doc.tex
+-        COMMAND ${PYTHON_EXECUTABLE}  ${TOP}/examples/strip_example.py  < ${PROJECT_BINARY_DIR}/latex/examples/${f}/latex/refman.tex > ${PROJECT_BINARY_DIR}/latex/examples/${f}/latex/refman_doc.tex
++        COMMAND ${Python3_EXECUTABLE}  ${TOP}/examples/strip_example.py  < ${PROJECT_BINARY_DIR}/latex/examples/${f}/latex/refman.tex > ${PROJECT_BINARY_DIR}/latex/examples/${f}/latex/refman_doc.tex
  	DEPENDS doxygen ${f}.${f_ext} ${f}.cfg ${TOP}/examples/strip_example.py
- 	OUTPUT ${PROJECT_BINARY_DIR}/html/examples/${f}/html/index.html ${PROJECT_BINARY_DIR}/html/examples/${f}/latex/refman_doc.tex
+ 	OUTPUT ${PROJECT_BINARY_DIR}/html/examples/${f}/html/index.html ${PROJECT_BINARY_DIR}/latex/examples/${f}/latex/refman_doc.tex
      )
-@@ -68,7 +68,7 @@ add_custom_target(examples
- if (DOT)
-   add_custom_command(
+@@ -73,7 +73,7 @@ if (DOT)
+         COMMAND ${CMAKE_COMMAND} -E make_directory ${PROJECT_BINARY_DIR}/html/examples/diagrams
+         COMMAND ${CMAKE_COMMAND} -E make_directory ${PROJECT_BINARY_DIR}/latex/examples/diagrams
  	COMMAND ${EXECUTABLE_OUTPUT_PATH}/doxygen diagrams.cfg
--        COMMAND ${PYTHON_EXECUTABLE}  ${TOP}/examples/strip_example.py  < ${PROJECT_BINARY_DIR}/html/examples/diagrams/latex/refman.tex > ${PROJECT_BINARY_DIR}/html/examples/diagrams/latex/refman_doc.tex
+-        COMMAND ${PYTHON_EXECUTABLE}  ${TOP}/examples/strip_example.py  < ${PROJECT_BINARY_DIR}/latex/examples/diagrams/latex/refman.tex > ${PROJECT_BINARY_DIR}/latex/examples/diagrams/latex/refman_doc.tex
 +        COMMAND ${Python3_EXECUTABLE}  ${TOP}/examples/strip_example.py  < ${PROJECT_BINARY_DIR}/html/examples/diagrams/latex/refman.tex > ${PROJECT_BINARY_DIR}/html/examples/diagrams/latex/refman_doc.tex
  	DEPENDS doxygen diagrams_a.h diagrams_b.h diagrams_c.h diagrams_d.h diagrams_e.h diagrams.cfg ${TOP}/examples/strip_example.py
- 	OUTPUT ${PROJECT_BINARY_DIR}/html/examples/diagrams/html/index.html ${PROJECT_BINARY_DIR}/html/examples/diagrams/latex/refman_doc.tex
+ 	OUTPUT ${PROJECT_BINARY_DIR}/html/examples/diagrams/html/index.html ${PROJECT_BINARY_DIR}/latex/examples/diagrams/latex/refman_doc.tex
    )
 diff --git a/libmscgen/CMakeLists.txt b/libmscgen/CMakeLists.txt
-index 079fcfc8..e6d86f61 100644
+index 0a239008..09849e2d 100644
 --- a/libmscgen/CMakeLists.txt
 +++ b/libmscgen/CMakeLists.txt
 @@ -7,7 +7,7 @@ include_directories(
  set(LEX_FILES mscgen_lexer) 
  foreach(lex_file ${LEX_FILES})
      add_custom_command(
--        COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/libmscgen/${lex_file}.l > ${GENERATED_SRC}/${lex_file}.l.h
-+        COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/libmscgen/${lex_file}.l > ${GENERATED_SRC}/${lex_file}.l.h
-         DEPENDS ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/libmscgen/${lex_file}.l
+-        COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/scan_states.py ${PROJECT_SOURCE_DIR}/libmscgen/${lex_file}.l > ${GENERATED_SRC}/${lex_file}.l.h
++        COMMAND ${Python3_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/scan_states.py ${PROJECT_SOURCE_DIR}/libmscgen/${lex_file}.l > ${GENERATED_SRC}/${lex_file}.l.h
+         DEPENDS ${PROJECT_SOURCE_DIR}/src/scan_states.py ${PROJECT_SOURCE_DIR}/libmscgen/${lex_file}.l
          OUTPUT  ${GENERATED_SRC}/${lex_file}.l.h
      )
 diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index cb289116..356741ff 100644
+index 5004a957..68e803f2 100644
 --- a/src/CMakeLists.txt
 +++ b/src/CMakeLists.txt
 @@ -39,7 +39,7 @@ set_source_files_properties(${GENERATED_SRC}/settings.h PROPERTIES GENERATED 1)
@@ -191,21 +194,12 @@
  # resources.cpp
  add_custom_command(
      COMMENT  "Generating ${GENERATED_SRC}/resources.cpp"
--    COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/res2cc_cmd.py ${CMAKE_SOURCE_DIR}/templates ${GENERATED_SRC}/resources.cpp
-+    COMMAND ${Python3_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/res2cc_cmd.py ${CMAKE_SOURCE_DIR}/templates ${GENERATED_SRC}/resources.cpp
+-    COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/res2cc_cmd.py ${PROJECT_SOURCE_DIR}/templates ${GENERATED_SRC}/resources.cpp
++    COMMAND ${Python3_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/res2cc_cmd.py ${PROJECT_SOURCE_DIR}/templates ${GENERATED_SRC}/resources.cpp
      DEPENDS ${RESOURCES} ${CMAKE_CURRENT_LIST_DIR}/res2cc_cmd.py
      OUTPUT ${GENERATED_SRC}/resources.cpp
  )
-@@ -102,7 +102,7 @@ set_source_files_properties(${GENERATED_SRC}/resources.cpp PROPERTIES GENERATED
- 
- # layout_default.xml
- add_custom_command(
--    COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/to_c_cmd.py < ${CMAKE_CURRENT_LIST_DIR}/layout_default.xml > ${GENERATED_SRC}/layout_default.xml.h
-+    COMMAND ${Python3_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/to_c_cmd.py < ${CMAKE_CURRENT_LIST_DIR}/layout_default.xml > ${GENERATED_SRC}/layout_default.xml.h
-     DEPENDS ${CMAKE_CURRENT_LIST_DIR}/layout_default.xml ${CMAKE_CURRENT_LIST_DIR}/to_c_cmd.py
-     OUTPUT  ${GENERATED_SRC}/layout_default.xml.h
- )
-@@ -131,7 +131,7 @@ foreach(lex_file ${LEX_FILES})
+@@ -124,7 +124,7 @@ foreach(lex_file ${LEX_FILES})
      set(LEX_FILES_H ${LEX_FILES_H} " " ${GENERATED_SRC}/${lex_file}.l.h CACHE INTERNAL "Stores generated files")
      set(LEX_FILES_CPP ${LEX_FILES_CPP} " " ${GENERATED_SRC}/${lex_file}.cpp CACHE INTERNAL "Stores generated files")
      add_custom_command(
@@ -215,15 +209,15 @@
          OUTPUT  ${GENERATED_SRC}/${lex_file}.l.h
      )
 diff --git a/testing/CMakeLists.txt b/testing/CMakeLists.txt
-index b354e78f..28d45e11 100644
+index fd6912e9..0af1865b 100644
 --- a/testing/CMakeLists.txt
 +++ b/testing/CMakeLists.txt
 @@ -1,7 +1,7 @@
  # run all tests sequentially (keep for backward compatibility)
  add_custom_target(tests
  	COMMENT "Running doxygen tests..."
--	COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/testing/runtests.py --doxygen ${PROJECT_BINARY_DIR}/bin/doxygen --inputdir ${CMAKE_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing
-+	COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/testing/runtests.py --doxygen ${PROJECT_BINARY_DIR}/bin/doxygen --inputdir ${CMAKE_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing
+-	COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/testing/runtests.py --doxygen ${PROJECT_BINARY_DIR}/bin/doxygen --inputdir ${PROJECT_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing
++	COMMAND ${Python3_EXECUTABLE} ${PROJECT_SOURCE_DIR}/testing/runtests.py --doxygen ${PROJECT_BINARY_DIR}/bin/doxygen --inputdir ${PROJECT_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing
  	DEPENDS doxygen
  )
  
@@ -231,10 +225,10 @@
  	string(REGEX REPLACE "^.*/([0-9][0-9][0-9]*).*$" "\\1" TEST_ID "${TEST_FILE}")
  	# add a test target for each test
  	add_test(NAME ${TEST_NAME}
--		 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/testing/runtests.py --id ${TEST_ID} --doxygen $<TARGET_FILE:doxygen> --inputdir ${CMAKE_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing
-+		 COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/testing/runtests.py --id ${TEST_ID} --doxygen $<TARGET_FILE:doxygen> --inputdir ${CMAKE_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing
+-		 COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/testing/runtests.py --id ${TEST_ID} --doxygen $<TARGET_FILE:doxygen> --inputdir ${PROJECT_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing
++		 COMMAND ${Python3_EXECUTABLE} ${PROJECT_SOURCE_DIR}/testing/runtests.py --id ${TEST_ID} --doxygen $<TARGET_FILE:doxygen> --inputdir ${PROJECT_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing
  	)
  endforeach()
 -- 
-2.17.1
+2.27.0
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.20.bb b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.9.1.bb
similarity index 79%
rename from meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.20.bb
rename to meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.9.1.bb
index d4ac3b7..3370a13 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.20.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.9.1.bb
@@ -10,8 +10,7 @@
            file://0001-build-don-t-look-for-Iconv.patch \
 "
 SRC_URI_append_class-native = " file://doxygen-native-only-check-python3.patch"
-SRC_URI[md5sum] = "8729936a843232a66fe970ef65f3c3e4"
-SRC_URI[sha256sum] = "e0db6979286fd7ccd3a99af9f97397f2bae50532e4ecb312aa18862f8401ddec"
+SRC_URI[sha256sum] = "67aeae1be4e1565519898f46f1f7092f1973cce8a767e93101ee0111717091d1"
 
 inherit cmake python3native
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace/0001-Fix-error-on-aarch64-with-binutils2.35.1.patch b/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace/0001-Fix-error-on-aarch64-with-binutils2.35.1.patch
new file mode 100644
index 0000000..ac17cf4
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace/0001-Fix-error-on-aarch64-with-binutils2.35.1.patch
@@ -0,0 +1,27 @@
+From 0bc502989822506af308a559ac1cd52af82cac03 Mon Sep 17 00:00:00 2001
+From: Lei Maohui <leimaohui@cn.fujitsu.com>
+Date: Wed, 14 Apr 2021 09:35:35 +0900
+Subject: [PATCH] Fix error on aarch64 with binutils2.35.1.
+
+WARN: child terminated by signal: 11: Segmentation fault
+
+Upstream-status: Pending
+
+Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
+---
+ arch/aarch64/mcount-arch.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/aarch64/mcount-arch.h b/arch/aarch64/mcount-arch.h
+index 69efe521..60c2c1ba 100644
+--- a/arch/aarch64/mcount-arch.h
++++ b/arch/aarch64/mcount-arch.h
+@@ -31,7 +31,7 @@ struct mcount_arch_context {
+ 	double d[ARCH_MAX_FLOAT_REGS];
+ };
+ 
+-#define ARCH_PLT0_SIZE  32
++#define ARCH_PLT0_SIZE  16
+ #define ARCH_PLTHOOK_ADDR_OFFSET  0
+ 
+ struct mcount_disasm_engine;
diff --git a/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.4.bb b/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.4.bb
index a3d0602..4b4fc83 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.4.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.4.bb
@@ -13,6 +13,7 @@
 PV .= "+git${SRCPV}"
 SRCREV = "d648bbffedef529220896283fb59e35531c13804"
 SRC_URI = "git://github.com/namhyung/${BPN} \
+           file://0001-Fix-error-on-aarch64-with-binutils2.35.1.patch \
            "
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2020.8.bb b/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2021.1.bb
similarity index 98%
rename from meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2020.8.bb
rename to meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2021.1.bb
index 4f0f719..c382ad8 100644
--- a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2020.8.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2021.1.bb
@@ -25,7 +25,7 @@
     gitsm://github.com/ostreedev/ostree \
     file://run-ptest \
 "
-SRCREV = "3e289b19345e30d2da193cd208e109f7d7aaa2a1"
+SRCREV = "e9e4b9112083228b8c385ad26924b6c4623f4179"
 
 UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+\.\d+)"
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/redis/redis/riscv32.patch b/meta-openembedded/meta-oe/recipes-extended/redis/redis/0006-Define-correct-gregs-for-RISCV32.patch
similarity index 61%
rename from meta-openembedded/meta-oe/recipes-extended/redis/redis/riscv32.patch
rename to meta-openembedded/meta-oe/recipes-extended/redis/redis/0006-Define-correct-gregs-for-RISCV32.patch
index 79ec742..b2d1a32 100644
--- a/meta-openembedded/meta-oe/recipes-extended/redis/redis/riscv32.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/redis/redis/0006-Define-correct-gregs-for-RISCV32.patch
@@ -1,21 +1,33 @@
-Define correct gregs for RISCV32
+From 6134b471c35df826ccb41aab9a47e5c89e15a0c4 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 26 Oct 2020 21:32:22 -0700
+Subject: [PATCH] Define correct gregs for RISCV32
 
 Upstream-Status: Pending
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Updated patch for 6.2.1
+Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
+---
+ src/debug.c | 26 ++++++++++++++++++++++++--
+ 1 file changed, 24 insertions(+), 2 deletions(-)
+
+diff --git a/src/debug.c b/src/debug.c
+index e7fec29..5abb404 100644
 --- a/src/debug.c
 +++ b/src/debug.c
-@@ -942,7 +942,9 @@ static void *getMcontextEip(ucontext_t *
+@@ -1039,7 +1039,9 @@ static void *getMcontextEip(ucontext_t *uc) {
      #endif
  #elif defined(__linux__)
      /* Linux */
--    #if defined(__i386__) || defined(__ILP32__)
+-    #if defined(__i386__) || ((defined(__X86_64__) || defined(__x86_64__)) && defined(__ILP32__))
 +    #if defined(__riscv) && __riscv_xlen == 32
 +    return (void*) uc->uc_mcontext.__gregs[REG_PC];
-+    #elif defined(__i386__) || defined(__ILP32__)
++    #elif defined(__i386__) || ((defined(__X86_64__) || defined(__x86_64__)) && defined(__ILP32__))
      return (void*) uc->uc_mcontext.gregs[14]; /* Linux 32 */
      #elif defined(__X86_64__) || defined(__x86_64__)
      return (void*) uc->uc_mcontext.gregs[16]; /* Linux 64 */
-@@ -1102,8 +1104,28 @@ void logRegisters(ucontext_t *uc) {
+@@ -1206,8 +1208,28 @@ void logRegisters(ucontext_t *uc) {
      #endif
  /* Linux */
  #elif defined(__linux__)
@@ -40,8 +52,8 @@
 +    );
 +    logStackContent((void**)uc->uc_mcontext.__gregs[REG_SP]);
      /* Linux x86 */
--    #if defined(__i386__) || defined(__ILP32__)
-+    #elif defined(__i386__) || defined(__ILP32__)
+-    #if defined(__i386__) || ((defined(__X86_64__) || defined(__x86_64__)) && defined(__ILP32__))
++    #elif defined(__i386__) || ((defined(__X86_64__) || defined(__x86_64__)) && defined(__ILP32__))
      serverLog(LL_WARNING,
      "\n"
      "EAX:%08lx EBX:%08lx ECX:%08lx EDX:%08lx\n"
diff --git a/meta-openembedded/meta-oe/recipes-extended/redis/redis/ilp32.patch b/meta-openembedded/meta-oe/recipes-extended/redis/redis/ilp32.patch
deleted file mode 100644
index 48d01a1..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/redis/redis/ilp32.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-__ILP32__ is defined for all 32bit architectures with clang e.g.
-which is right but it is causing issues on non-x86 architectures
-where this condition becomes true and wrongly starts using this
-code, this issue is hidden with gcc becuase gcc does not define
-__ILP32__ for all 32bit architectures but for selected 64bit arches
-who choose to use 32bit ABI e.g. x32
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
---- a/src/debug.c
-+++ b/src/debug.c
-@@ -944,7 +944,7 @@ static void *getMcontextEip(ucontext_t *
-     /* Linux */
-     #if defined(__riscv) && __riscv_xlen == 32
-     return (void*) uc->uc_mcontext.__gregs[REG_PC];
--    #elif defined(__i386__) || defined(__ILP32__)
-+    #elif defined(__i386__) || (defined(__X86_64__) && defined(__ILP32__))
-     return (void*) uc->uc_mcontext.gregs[14]; /* Linux 32 */
-     #elif defined(__X86_64__) || defined(__x86_64__)
-     return (void*) uc->uc_mcontext.gregs[16]; /* Linux 64 */
-@@ -1125,7 +1125,7 @@ void logRegisters(ucontext_t *uc) {
-     );
-     logStackContent((void**)uc->uc_mcontext.__gregs[REG_SP]);
-     /* Linux x86 */
--    #elif defined(__i386__) || defined(__ILP32__)
-+    #elif defined(__i386__) || ( defined(__X86_64__) && defined(__ILP32__))
-     serverLog(LL_WARNING,
-     "\n"
-     "EAX:%08lx EBX:%08lx ECX:%08lx EDX:%08lx\n"
diff --git a/meta-openembedded/meta-oe/recipes-extended/redis/redis/lua-update-Makefile-to-use-environment-build-setting.patch b/meta-openembedded/meta-oe/recipes-extended/redis/redis/lua-update-Makefile-to-use-environment-build-setting.patch
index 7e62ae1..1619e9d 100644
--- a/meta-openembedded/meta-oe/recipes-extended/redis/redis/lua-update-Makefile-to-use-environment-build-setting.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/redis/redis/lua-update-Makefile-to-use-environment-build-setting.patch
@@ -1,4 +1,4 @@
-From 394108035d350ae662a431c80131f812b5f72dff Mon Sep 17 00:00:00 2001
+From 097a2b259cb266c2c861dc74fa6f80712d6138c5 Mon Sep 17 00:00:00 2001
 From: Venture Research <tech@ventureresearch.com>
 Date: Fri, 8 Feb 2013 20:22:19 -0600
 Subject: [PATCH] lua: update Makefile to use environment build settings
@@ -12,14 +12,42 @@
 
 Signed-off-by: Armin Kuster <akust808@gmail.com>
 
+updated to work wtih 6.2.1
+Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
 ---
- deps/lua/src/Makefile | 18 +++++++-----------
- 1 file changed, 7 insertions(+), 11 deletions(-)
+ deps/Makefile         |  1 -
+ deps/lua/Makefile     |  1 -
+ deps/lua/src/Makefile | 16 ++++++----------
+ 3 files changed, 6 insertions(+), 12 deletions(-)
 
-Index: redis-3.0.2/deps/lua/src/Makefile
-===================================================================
---- redis-3.0.2.orig/deps/lua/src/Makefile
-+++ redis-3.0.2/deps/lua/src/Makefile
+diff --git a/deps/Makefile b/deps/Makefile
+index ff16ee9..d8d64aa 100644
+--- a/deps/Makefile
++++ b/deps/Makefile
+@@ -74,7 +74,6 @@ LUA_LDFLAGS+= $(LDFLAGS)
+ # lua's Makefile defines AR="ar rcu", which is unusual, and makes it more
+ # challenging to cross-compile lua (and redis).  These defines make it easier
+ # to fit redis into cross-compilation environments, which typically set AR.
+-AR=ar
+ ARFLAGS=rc
+ 
+ lua: .make-prerequisites
+diff --git a/deps/lua/Makefile b/deps/lua/Makefile
+index 209a132..72f4b2b 100644
+--- a/deps/lua/Makefile
++++ b/deps/lua/Makefile
+@@ -33,7 +33,6 @@ INSTALL_DATA= $(INSTALL) -m 0644
+ 
+ # Utilities.
+ MKDIR= mkdir -p
+-RANLIB= ranlib
+ 
+ # == END OF USER SETTINGS. NO NEED TO CHANGE ANYTHING BELOW THIS LINE =========
+ 
+diff --git a/deps/lua/src/Makefile b/deps/lua/src/Makefile
+index f3bba2f..1555ec0 100644
+--- a/deps/lua/src/Makefile
++++ b/deps/lua/src/Makefile
 @@ -5,18 +5,14 @@
  # == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT =======================
  
@@ -45,27 +73,3 @@
  
  # == END OF USER SETTINGS. NO NEED TO CHANGE ANYTHING BELOW THIS LINE =========
  
-Index: redis-3.0.2/deps/Makefile
-===================================================================
---- redis-3.0.2.orig/deps/Makefile
-+++ redis-3.0.2/deps/Makefile
-@@ -63,7 +63,6 @@ LUA_LDFLAGS+= $(LDFLAGS)
- # lua's Makefile defines AR="ar rcu", which is unusual, and makes it more
- # challenging to cross-compile lua (and redis).  These defines make it easier
- # to fit redis into cross-compilation environments, which typically set AR.
--AR=ar
- ARFLAGS=rcu
- 
- lua: .make-prerequisites
-Index: redis-3.0.2/deps/lua/Makefile
-===================================================================
---- redis-3.0.2.orig/deps/lua/Makefile
-+++ redis-3.0.2/deps/lua/Makefile
-@@ -33,7 +33,6 @@ INSTALL_DATA= $(INSTALL) -m 0644
- 
- # Utilities.
- MKDIR= mkdir -p
--RANLIB= ranlib
- 
- # == END OF USER SETTINGS. NO NEED TO CHANGE ANYTHING BELOW THIS LINE =========
- 
diff --git a/meta-openembedded/meta-oe/recipes-extended/redis/redis/oe-use-libc-malloc.patch b/meta-openembedded/meta-oe/recipes-extended/redis/redis/oe-use-libc-malloc.patch
index 6745f3d..a0f66b8 100644
--- a/meta-openembedded/meta-oe/recipes-extended/redis/redis/oe-use-libc-malloc.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/redis/redis/oe-use-libc-malloc.patch
@@ -1,4 +1,4 @@
-From f8861d2129b9e18bba137705bfa38c6bd9be1790 Mon Sep 17 00:00:00 2001
+From 1fa047162983d4a7e0576f0837a73a6027a783bd Mon Sep 17 00:00:00 2001
 From: Venture Research <tech@ventureresearch.com>
 Date: Wed, 6 Feb 2013 20:51:02 -0600
 Subject: [PATCH] hack to force use of libc malloc
@@ -6,7 +6,7 @@
 Hack to force libc usage as it seems the option to pass it in has been
 removed in favor of magic.
 
-Note that this of course doesn't allow tcmalloc and jemalloc, however 
+Note that this of course doesn't allow tcmalloc and jemalloc, however
 jemalloc wasn't building correctly.
 
 Signed-off-by: Venture Research <tech@ventureresearch.com>
@@ -15,11 +15,11 @@
 Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
 
 ---
- src/Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
+ src/Makefile | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/src/Makefile b/src/Makefile
-index 86e0b3fe..a810180b 100644
+index ecd6929..c7f43c5 100644
 --- a/src/Makefile
 +++ b/src/Makefile
 @@ -13,7 +13,8 @@
@@ -31,4 +31,4 @@
 +uname_S := "USE_LIBC_MALLOC"
  uname_M := $(shell sh -c 'uname -m 2>/dev/null || echo not')
  OPTIMIZATION?=-O2
- DEPENDENCY_TARGETS=hiredis linenoise lua
+ DEPENDENCY_TARGETS=hiredis linenoise lua hdr_histogram
diff --git a/meta-openembedded/meta-oe/recipes-extended/redis/redis_6.0.9.bb b/meta-openembedded/meta-oe/recipes-extended/redis/redis_6.2.1.bb
similarity index 93%
rename from meta-openembedded/meta-oe/recipes-extended/redis/redis_6.0.9.bb
rename to meta-openembedded/meta-oe/recipes-extended/redis/redis_6.2.1.bb
index 50571ed..89990df 100644
--- a/meta-openembedded/meta-oe/recipes-extended/redis/redis_6.0.9.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/redis/redis_6.2.1.bb
@@ -15,10 +15,9 @@
            file://oe-use-libc-malloc.patch \
            file://0001-src-Do-not-reset-FINAL_LIBS.patch \
            file://GNU_SOURCE.patch \
-           file://riscv32.patch \
-           file://ilp32.patch \
+           file://0006-Define-correct-gregs-for-RISCV32.patch \
            "
-SRC_URI[sha256sum] = "dc2bdcf81c620e9f09cfd12e85d3bc631c897b2db7a55218fd8a65eaa37f86dd"
+SRC_URI[sha256sum] = "cd222505012cce20b25682fca931ec93bd21ae92cb4abfe742cf7b76aa907520"
 
 inherit autotools-brokensep update-rc.d systemd useradd
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/0001-tests-disable-the-check-for-inotify.patch b/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/0001-tests-disable-the-check-for-inotify.patch
new file mode 100644
index 0000000..552172d
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/0001-tests-disable-the-check-for-inotify.patch
@@ -0,0 +1,46 @@
+From 194e199ce08acc2192f6a63420ff24d9064666e5 Mon Sep 17 00:00:00 2001
+From: Yi Fan Yu <yifan.yu@windriver.com>
+Date: Sat, 27 Mar 2021 19:18:25 -0400
+Subject: [PATCH] tests: disable the check for inotify
+
+We don't need to check inotify.h.
+Assume it is present since it is part of the linux kernel
+since 2.6.13 [1].
+
+[1](https://kernelnewbies.org/Linux_2_6_13)
+
+(it would require installing the libc headers otherwise,
+ for the test  to detect /usr/include/sys/inotify.h.)
+
+Upstream-Status: Inappropriate[OE-specific]
+
+Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
+---
+ tests/diag.sh | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tests/diag.sh b/tests/diag.sh
+index 6cd60ea88..7424f48c5 100755
+--- a/tests/diag.sh
++++ b/tests/diag.sh
+@@ -2672,7 +2672,7 @@ case $1 in
+ 		fi
+ 		;;
+ 	'check-inotify') # Check for inotify/fen support 
+-		if [ -n "$(find /usr/include -name 'inotify.h' -print -quit)" ]; then
++		if true; then
+ 			echo [inotify mode]
+ 		elif [ -n "$(find /usr/include/sys/ -name 'port.h' -print -quit)" ]; then
+ 			grep -qF "PORT_SOURCE_FILE" < /usr/include/sys/port.h
+@@ -2687,7 +2687,7 @@ case $1 in
+ 		fi
+ 		;;
+ 	'check-inotify-only') # Check for ONLY inotify support 
+-		if [ -n "$(find /usr/include -name 'inotify.h' -print -quit)" ]; then
++		if true; then
+ 			echo [inotify mode]
+ 		else
+ 			echo [inotify not supported, skipping...]
+-- 
+2.29.2
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/run-ptest b/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/run-ptest
index aa698d8..efa9ba3 100644
--- a/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/run-ptest
+++ b/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/run-ptest
@@ -5,4 +5,8 @@
 
 SCRIPTPATH="$( cd "$(dirname "$0")" ; pwd -P )"
 cd ${SCRIPTPATH}
-make -C tests -k check-TESTS
+useradd tester  || echo "user already exists"
+ln -sf /usr/sbin/logrotate /usr/bin/logrotate
+su tester -c "make -C tests -k check-TESTS"
+userdel tester
+rm -f /usr/bin/logrotate
diff --git a/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.2102.0.bb b/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.2102.0.bb
index 22059d1..9211240 100644
--- a/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.2102.0.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.2102.0.bb
@@ -24,6 +24,7 @@
            file://rsyslog.service \
            file://use-pkgconfig-to-check-libgcrypt.patch \
            file://run-ptest \
+           file://0001-tests-disable-the-check-for-inotify.patch \
 "
 
 SRC_URI_append_libc-musl = " \
@@ -80,11 +81,6 @@
 PACKAGECONFIG[valgrind] = ",--without-valgrind-testbench,valgrind,"
 PACKAGECONFIG[imhttp] = "--enable-imhttp,--disable-imhttp,civetweb,"
 
-do_configure_prepend() {
-    sed -i -e 's|python |python3 |g' ${S}/tests/*.sh
-    sed -i -e 's|/usr/bin/env python|/usr/bin/env python3|g' ${S}/tests/*.py
-    sed -i -e 's|/usr/bin/env python|/usr/bin/env python3|g' ${S}/tests/testsuites/*.py
-}
 
 TESTDIR = "tests"
 do_compile_ptest() {
@@ -97,6 +93,10 @@
     cp -rf ${S}/${TESTDIR} ${D}${PTEST_PATH}
     cp -rf ${B}/${TESTDIR} ${D}${PTEST_PATH}
 
+    # give permissions to all users
+    # some tests need to write to this directory as user 'daemon'
+    chmod 777 -R ${D}${PTEST_PATH}/tests
+
     # do NOT need to rebuild Makefile itself
     sed -i 's/^Makefile:.*$/Makefile:/' ${D}${PTEST_PATH}/${TESTDIR}/Makefile
     # do NOT need to rebuild $(check_PROGRAMS)
@@ -195,8 +195,11 @@
 VALGRIND_riscv64 = ""
 VALGRIND_riscv32 = ""
 
+# util-linux: logger needs the -d option
 RDEPENDS_${PN}-ptest += "\
   make diffutils gzip bash gawk coreutils procps \
-  libgcc python3-core python3-io \
+  libgcc python3-core python3-io python3-json \
+  curl util-linux shadow \
   "
+
 RRECOMMENDS_${PN}-ptest += "${TCLIBC}-dbg ${VALGRIND}"
diff --git a/meta-openembedded/meta-oe/recipes-extended/uml-utilities/uml-utilities_20040406.bb b/meta-openembedded/meta-oe/recipes-extended/uml-utilities/uml-utilities_20040406.bb
index 8e00cb3..f86b2b9 100644
--- a/meta-openembedded/meta-oe/recipes-extended/uml-utilities/uml-utilities_20040406.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/uml-utilities/uml-utilities_20040406.bb
@@ -18,15 +18,14 @@
 inherit update-alternatives
 
 do_compile() {
-    oe_runmake
+    oe_runmake LIB_DIR=${libdir}/uml
 }
 
 do_install() {
     oe_runmake install DESTDIR=${D}
 }
 
-FILES_${PN} += "${exec_prefix}${nonarch_base_libdir}"
-FILES_${PN}-dbg += "${exec_prefix}${nonarch_base_libdir}/uml/.debug"
+FILES_${PN} += "${libdir}/uml"
 
 ALTERNATIVE_${PN} = "tunctl"
 ALTERNATIVE_LINK_NAME[tunctl] = "${bindir}/tunctl"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.4.bb b/meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.5.bb
similarity index 89%
rename from meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.4.bb
rename to meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.5.bb
index a1294b9..419881d 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.4.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.5.bb
@@ -6,7 +6,7 @@
 DEPENDS = "libpng zlib"
 SRC_URI = "git://github.com/GunnarMonell/fbgrab.git;protocol=https"
 
-SRCREV = "74373aafc0b496e67642562d86eac6b858a31f24"
+SRCREV = "f43ce6d5ce48fb01360eaa7c4a92c2573a1d02f8"
 S = "${WORKDIR}/git"
 
 inherit autotools-brokensep
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libyui/libyui-ncurses_4.0.0.bb b/meta-openembedded/meta-oe/recipes-graphics/libyui/libyui-ncurses_4.1.1.bb
similarity index 79%
rename from meta-openembedded/meta-oe/recipes-graphics/libyui/libyui-ncurses_4.0.0.bb
rename to meta-openembedded/meta-oe/recipes-graphics/libyui/libyui-ncurses_4.1.1.bb
index a3a4a15..fdf0161 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/libyui/libyui-ncurses_4.0.0.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/libyui/libyui-ncurses_4.1.1.bb
@@ -1,17 +1,16 @@
 SUMMARY = "Character Based User Interface for libyui"
 LICENSE = "LGPLv3"
-LIC_FILES_CHKSUM = "file://COPYING.lgpl-3;md5=e6a600fd5e1d9cbde2d983680233ad02 \
-    file://COPYING.lgpl-2.1;md5=4fbd65380cdd255951079008b364516c \
+LIC_FILES_CHKSUM = "file://../COPYING.lgpl-3;md5=e6a600fd5e1d9cbde2d983680233ad02 \
+    file://../COPYING.lgpl-2.1;md5=4fbd65380cdd255951079008b364516c \
 "
 
-SRC_URI = "git://github.com/libyui/libyui-ncurses.git \
-          "
+SRC_URI = "git://github.com/libyui/libyui.git"
 
 SRC_URI_append_class-target = " file://0001-Fix-the-error-of-can-t-find-header-file.patch"
 
-SRCREV = "37d3a1e815a47f536b4f694f139f279cc93a3854"
+SRCREV = "718ac672374a2b0f50cbc7d637d90e6471babc3d"
 
-S = "${WORKDIR}/git"
+S = "${WORKDIR}/git/libyui-ncurses"
 
 inherit cmake gettext pkgconfig
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libyui/libyui_4.0.0.bb b/meta-openembedded/meta-oe/recipes-graphics/libyui/libyui_4.1.1.bb
similarity index 70%
rename from meta-openembedded/meta-oe/recipes-graphics/libyui/libyui_4.0.0.bb
rename to meta-openembedded/meta-oe/recipes-graphics/libyui/libyui_4.1.1.bb
index bba1796..acab7d4 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/libyui/libyui_4.0.0.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/libyui/libyui_4.1.1.bb
@@ -1,8 +1,8 @@
 SUMMARY = "Libyui is a widget abstraction library providing Qt, GTK and ncurses frontends."
 LICENSE = "LGPLv3"
-LIC_FILES_CHKSUM = "file://COPYING.gpl-3;md5=d32239bcb673463ab874e80d47fae504 \
-                    file://COPYING.lgpl-2.1;md5=4fbd65380cdd255951079008b364516c \
-                    file://COPYING.lgpl-3;md5=e6a600fd5e1d9cbde2d983680233ad02 \
+LIC_FILES_CHKSUM = "file://../COPYING.gpl-3;md5=d32239bcb673463ab874e80d47fae504 \
+                    file://../COPYING.lgpl-2.1;md5=4fbd65380cdd255951079008b364516c \
+                    file://../COPYING.lgpl-3;md5=e6a600fd5e1d9cbde2d983680233ad02 \
                    "
 
 SRC_URI = "git://github.com/libyui/libyui.git \
@@ -10,9 +10,9 @@
            file://0001-Use-relative-install-paths-for-CMake.patch \
            "
 
-SRCREV = "af06143017fc5f18c4b6488ba4aed26bcc43ff6e"
+SRCREV = "718ac672374a2b0f50cbc7d637d90e6471babc3d"
 
-S = "${WORKDIR}/git"
+S = "${WORKDIR}/git/libyui"
 
 inherit cmake gettext pkgconfig
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm/0001-Add-configure-time-check-for-setsid.patch b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm/0001-Add-configure-time-check-for-setsid.patch
index d3beea8..92ecdac 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm/0001-Add-configure-time-check-for-setsid.patch
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm/0001-Add-configure-time-check-for-setsid.patch
@@ -18,7 +18,7 @@
 index 0aafefc..03e8df0 100755
 --- a/configure
 +++ b/configure
-@@ -5411,6 +5411,7 @@ for ac_func in \
+@@ -5605,6 +5605,7 @@ for ac_func in \
  	unsetenv \
  	sched_yield \
  	setpgid \
@@ -42,7 +42,7 @@
 index 5e60589..b81d2be 100644
 --- a/main.c
 +++ b/main.c
-@@ -2868,7 +2868,7 @@ main(int argc, char *argv[]ENVP_ARG)
+@@ -2903,7 +2903,7 @@ main(int argc, char *argv[]ENVP_ARG)
      }
  }
  
@@ -51,7 +51,7 @@
  #define USE_OPENPTY 1
  static int opened_tty = -1;
  #endif
-@@ -4040,7 +4040,7 @@ spawnXTerm(XtermWidget xw, unsigned line_speed)
+@@ -4074,7 +4074,7 @@ spawnXTerm(XtermWidget xw, unsigned line_speed)
  	    /*
  	     * now in child process
  	     */
@@ -64,14 +64,14 @@
 index 1dbc3b8..4f3ff5b 100644
 --- a/xtermcfg.hin
 +++ b/xtermcfg.hin
-@@ -96,6 +96,7 @@
+@@ -95,6 +95,7 @@
  #undef HAVE_PUTENV		/* AC_CHECK_FUNCS(putenv) */
  #undef HAVE_SCHED_YIELD		/* AC_CHECK_FUNCS(sched_yield) */
  #undef HAVE_SETPGID		/* AC_CHECK_FUNCS(setpgid) */
 +#undef HAVE_SETSID		/* AC_CHECK_FUNCS(setsid) */
  #undef HAVE_STDINT_H		/* AC_PROG_CC_STDC */
  #undef HAVE_STDLIB_H		/* AC_CHECK_HEADERS(stdlib.h) */
- #undef HAVE_STRFTIME		/* AC_CHECK_FUNCS(strftime) */
+ #undef HAVE_STDNORETURN_H	/* CF_C11_NORETURN */
 -- 
 2.24.1
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_366.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_367.bb
similarity index 88%
rename from meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_366.bb
rename to meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_367.bb
index 969159b..e0d3dce 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_366.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_367.bb
@@ -2,13 +2,13 @@
 SUMMARY = "xterm is the standard terminal emulator for the X Window System"
 DEPENDS = "libxaw xorgproto libxext libxau libxinerama libxpm ncurses desktop-file-utils-native"
 
-LIC_FILES_CHKSUM = "file://xterm.h;beginline=3;endline=31;md5=996b1ce0584c0747b17b57654cc81e8e"
+LIC_FILES_CHKSUM = "file://xterm.h;beginline=3;endline=31;md5=987de9787175385203a1ea2482246a17"
 
 SRC_URI = "http://invisible-mirror.net/archives/${BPN}/${BP}.tgz \
            file://0001-Add-configure-time-check-for-setsid.patch \
           "
 
-SRC_URI[sha256sum] = "858b2885963fe97e712739066aadc1baeba2b33a0016303a7fec7d38bc73bf6e"
+SRC_URI[sha256sum] = "27f1a8b1c756e269fd5684e60802b545f0be9b36b8b5d6bdbc840c6b000dc51f"
 
 PACKAGECONFIG ?= ""
 PACKAGECONFIG[xft] = "--enable-freetype,--disable-freetype,libxft fontconfig freetype-native"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.13.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.14.bb
similarity index 81%
rename from meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.13.bb
rename to meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.14.bb
index cb1ffcd..15f52d8 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.13.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.14.bb
@@ -5,10 +5,9 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=1c65719d42900bb81b83e8293c20a364"
 
 PE = "1"
-PR = "r2"
 
-SRC_URI[md5sum] = "e5e06eb14a608b58746bdd1c0bd7b8e3"
-SRC_URI[sha256sum] = "8ef8067312571292ccc2bbe94c41109dcf022ea5a4ec71656a83d8cce9edb0cd"
+SRC_URI[md5sum] = "c1ce21c296bbf3da3e30cf651649563e"
+SRC_URI[sha256sum] = "76aef98ea3df92615faec28004b5ce4e5c6855e716fa16de40c32030722a6f8e"
 
 do_install_append () {
     ln -sf libXaw6.so.6 ${D}${libdir}/libXaw.so.6
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210322.bb b/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210406.bb
similarity index 96%
rename from meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210322.bb
rename to meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210406.bb
index 8913385..cc138ad 100644
--- a/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210322.bb
+++ b/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210406.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] = "b451c7ded8becbfa239e8f4fbe69784413270fb4c5e9b2e74269247dc3dd2e59"
+SRC_URI[sha256sum] = "0bd182fac7d6297d924af4405ce840515a38fa5438cb1a4b90fcb6bc737b36d6"
 
 S = "${WORKDIR}/live"
 
diff --git a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd/0001-gpsd-dbusexport.c-Fix-broken-d-bus-message-time.patch b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd/0001-gpsd-dbusexport.c-Fix-broken-d-bus-message-time.patch
new file mode 100644
index 0000000..659865e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd/0001-gpsd-dbusexport.c-Fix-broken-d-bus-message-time.patch
@@ -0,0 +1,36 @@
+From c9cec2a888d4fea8534be78a0f46d920155ceae6 Mon Sep 17 00:00:00 2001
+From: Paul Fertser <fercerpav@gmail.com>
+Date: Wed, 4 Nov 2020 12:40:50 -0800
+Subject: [PATCH] gpsd/dbusexport.c: Fix broken d-bus message time.
+
+Change-Id: I4b9990ce4517a8feb29fc9e090c62f5a0c56ddd5
+---
+ dbusexport.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/dbusexport.c b/dbusexport.c
+index 40b35739e..5d08a8702 100644
+--- a/dbusexport.c
++++ b/dbusexport.c
+@@ -38,6 +38,7 @@ void send_dbus_fix(struct gps_device_t *channel)
+     /*DBusMessageIter   iter; */
+     dbus_uint32_t serial;	/* collected, but not used */
+     char *gpsd_devname;
++    double dtime;               // time as a double, loss of precision!
+ 
+     /* if the connection is non existent, return without doing anything */
+     if (connection == NULL)
+@@ -51,8 +52,9 @@ void send_dbus_fix(struct gps_device_t *channel)
+     /* the dbus/locationd doc fails to specify altitude as WGS84 or MSL.
+      * assume altMSL */
+     message = dbus_message_new_signal("/org/gpsd", "org.gpsd", "fix");
++    dtime = TSTONS(&gpsfix->time);
+     dbus_message_append_args(message,
+-			     DBUS_TYPE_DOUBLE, &(gpsfix->time),
++			     DBUS_TYPE_DOUBLE, &dtime,
+ 			     DBUS_TYPE_INT32, &(gpsfix->mode),
+ 			     DBUS_TYPE_DOUBLE, &(gpsfix->ept),
+ 			     DBUS_TYPE_DOUBLE, &(gpsfix->latitude),
+-- 
+2.20.1
+
diff --git a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.20.bb b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.20.bb
index 3888ad8..0989cc1 100644
--- a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.20.bb
+++ b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.20.bb
@@ -8,6 +8,7 @@
 SRC_URI = "${SAVANNAH_GNU_MIRROR}/${BPN}/${BP}.tar.gz \
     file://0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch \
     file://0001-Revert-SConstruct-Add-test-for-sizeof-time_t-result-.patch \
+    file://0001-gpsd-dbusexport.c-Fix-broken-d-bus-message-time.patch \
     file://gpsd.init \
 "
 SRC_URI[md5sum] = "cf7fdec7ce7221d20bee1a7246362b05"
diff --git a/meta-openembedded/meta-oe/recipes-support/emacs/emacs_27.1.bb b/meta-openembedded/meta-oe/recipes-support/emacs/emacs_27.2.bb
similarity index 98%
rename from meta-openembedded/meta-oe/recipes-support/emacs/emacs_27.1.bb
rename to meta-openembedded/meta-oe/recipes-support/emacs/emacs_27.2.bb
index cfc089b..e3157ec 100644
--- a/meta-openembedded/meta-oe/recipes-support/emacs/emacs_27.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/emacs/emacs_27.2.bb
@@ -8,7 +8,7 @@
 
 SRC_URI_append_class-target = " file://usemake-docfile-native.patch"
 
-SRC_URI[sha256sum] = "4a4c128f915fc937d61edfc273c98106711b540c9be3cd5d2e2b9b5b2f172e41"
+SRC_URI[sha256sum] = "b4a7cc4e78e63f378624e0919215b910af5bb2a0afc819fad298272e9f40c1b9"
 
 PACKAGECONFIG[gnutls] = "--with-gnutls=yes,--with-gnutls=no,gnutls"
 PACKAGECONFIG[kerberos] = "--with-kerberos=yes,--with-kerberos=no,krb5"
diff --git a/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb b/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb
index 56d814d..738c32d 100644
--- a/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb
+++ b/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb
@@ -5,8 +5,8 @@
 LICENSE = "GPL-2.0+"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=1556547711e8246992b999edd9445a57"
 
-PV = "0.345"
-SRCREV = "5d7d97bae533401f60ce9a5a036ff7152c8aca8c"
+PV = "0.346"
+SRCREV = "a2bff16032a68b089eeb169f09dea08094891c9c"
 SRC_URI = "git://github.com/vcrhonek/${BPN}.git"
 
 S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-support/libcppkafka/libcppkafka_git.bb b/meta-openembedded/meta-oe/recipes-support/libcppkafka/libcppkafka_git.bb
new file mode 100644
index 0000000..6237638
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libcppkafka/libcppkafka_git.bb
@@ -0,0 +1,22 @@
+SUMMARY = "high level C++ wrapper for rdkafka"
+DESCRIPTION = "cppkafka allows C++ applications to consume and produce messages using the Apache Kafka protocol."
+HOMEPAGE = "https://github.com/mfontanini/cppkafka"
+SECTION = "lib"
+LICENSE = "BSD-2-Clause"
+
+LIC_FILES_CHKSUM = " \
+file://LICENSE;md5=d8b4ca15d239dc1485ef495c8f1bcc72 \
+"
+
+SRC_URI = "git://github.com/mfontanini/cppkafka;protocol=https"
+SRCREV = "5e4b350806d561473138ce7a982e8f6cf2e77733"
+
+DEPENDS = "librdkafka boost chrpath-replacement-native"
+
+inherit cmake
+
+S = "${WORKDIR}/git"
+
+do_install_append(){
+    chrpath -d ${D}${libdir}/libcppkafka.so.0.3.1
+}
diff --git a/meta-openembedded/meta-oe/recipes-support/libmanette/libmanette_0.2.6.bb b/meta-openembedded/meta-oe/recipes-support/libmanette/libmanette_0.2.6.bb
new file mode 100644
index 0000000..23ab348
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libmanette/libmanette_0.2.6.bb
@@ -0,0 +1,16 @@
+# Copyright (C) 2021 Khem Raj <raj.khem@gmail.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+SUMMARY = "The simple GObject game controller library"
+HOMEPAGE = "https://gnome.pages.gitlab.gnome.org/libmanette/"
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
+
+DEPENDS = "libevdev libgudev"
+
+SRC_URI = "https://download.gnome.org/sources/libmanette/0.2/libmanette-${PV}.tar.xz"
+SRC_URI[sha256sum] = "63653259a821ec7d90d681e52e757e2219d462828c9d74b056a5f53267636bac"
+
+inherit meson pkgconfig gobject-introspection ptest vala
+
+FILES_${PN}-ptest =+ "${bindir}/manette-test"
+FILES_${PN}-dev =+ "${libdir}/girepository-1.0"
diff --git a/meta-openembedded/meta-oe/recipes-support/librdkafka/librdkafka/0001_fix_absolute_path_usage.patch b/meta-openembedded/meta-oe/recipes-support/librdkafka/librdkafka/0001_fix_absolute_path_usage.patch
new file mode 100644
index 0000000..d609786
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/librdkafka/librdkafka/0001_fix_absolute_path_usage.patch
@@ -0,0 +1,83 @@
+From dd06894a786edf4bea11dace50d7380b89dfaba5 Mon Sep 17 00:00:00 2001
+From: hasan.men <hasan.men@bosphorusiss.com>
+Date: Sun, 4 Apr 2021 17:20:32 +0200
+Subject: [PATCH] fix absolute path problem
+
+---
+ src/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index c6c05e06..e6c47374 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -176,7 +176,7 @@ if(MINGW)
+ endif(MINGW)
+ 
+ # Support '#include <rdkafka.h>'
+-target_include_directories(rdkafka PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}>")
++target_include_directories(rdkafka PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}> $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
+ target_compile_definitions(rdkafka PUBLIC ${rdkafka_compile_definitions})
+ if(RDKAFKA_BUILD_STATIC)
+   target_compile_definitions(rdkafka PUBLIC LIBRDKAFKA_STATICLIB)
+@@ -188,7 +188,7 @@ if(MINGW)
+   target_link_libraries(rdkafka PUBLIC crypt32 ws2_32 secur32)
+ endif(MINGW)
+ 
+-if(WIN32)  
++if(WIN32)
+   if(RDKAFKA_BUILD_STATIC)
+     target_link_libraries(rdkafka PUBLIC crypt32)
+   else()
+@@ -207,13 +207,13 @@ endif()
+ 
+ if(WITH_ZLIB)
+   find_package(ZLIB REQUIRED)
+-  target_include_directories(rdkafka PUBLIC ${ZLIB_INCLUDE_DIRS})
++  target_include_directories(rdkafka PRIVATE ${ZLIB_INCLUDE_DIRS})
+   target_link_libraries(rdkafka PUBLIC ZLIB::ZLIB)
+ endif()
+ 
+ if(WITH_ZSTD)
+-  target_link_libraries(rdkafka PUBLIC ${ZSTD_LIBRARY})
+-  target_include_directories(rdkafka PUBLIC ${ZSTD_INCLUDE_DIR})
++  target_link_libraries(rdkafka PRIVATE ${ZSTD_LIBRARY})
++  target_include_directories(rdkafka PRIVATE ${ZSTD_INCLUDE_DIR})
+   message(STATUS "Found ZSTD: ${ZSTD_LIBRARY}")
+ endif()
+ 
+@@ -222,12 +222,12 @@ if(WITH_SSL)
+     if(NOT TARGET bundled-ssl)
+       message(FATAL_ERROR "bundled-ssl target not exist")
+     endif()
+-    target_include_directories(rdkafka BEFORE PUBLIC ${BUNDLED_SSL_INCLUDE_DIR})
++    target_include_directories(rdkafka BEFORE PRIVATE ${BUNDLED_SSL_INCLUDE_DIR})
+     target_link_libraries(rdkafka PUBLIC ${BUNDLED_SSL_LIBRARIES})
+     add_dependencies(rdkafka bundled-ssl)
+   else()
+     find_package(OpenSSL REQUIRED)
+-    target_include_directories(rdkafka PUBLIC ${OPENSSL_INCLUDE_DIR})
++    target_include_directories(rdkafka PRIVATE ${OPENSSL_INCLUDE_DIR})
+     target_link_libraries(rdkafka PUBLIC OpenSSL::SSL OpenSSL::Crypto)
+     get_target_property(OPENSSL_TARGET_TYPE OpenSSL::SSL TYPE)
+     if(OPENSSL_CRYPTO_LIBRARY MATCHES "\\.a$")
+@@ -244,7 +244,7 @@ find_package(Threads REQUIRED)
+ target_link_libraries(rdkafka PUBLIC Threads::Threads)
+ 
+ if(WITH_SASL_CYRUS)
+-  target_include_directories(rdkafka PUBLIC ${SASL_INCLUDE_DIRS})
++  target_include_directories(rdkafka PRIVATE ${SASL_INCLUDE_DIRS})
+   target_link_libraries(rdkafka PUBLIC ${SASL_LIBRARIES})
+ endif()
+ 
+@@ -253,7 +253,7 @@ if(WITH_LIBDL)
+ endif()
+ 
+ if(WITH_LZ4_EXT)
+-  target_include_directories(rdkafka PUBLIC ${LZ4_INCLUDE_DIRS})
++  target_include_directories(rdkafka PRIVATE ${LZ4_INCLUDE_DIRS})
+   target_link_libraries(rdkafka PUBLIC LZ4::LZ4)
+ endif()
+ 
+-- 
+2.17.1
\ No newline at end of file
diff --git a/meta-openembedded/meta-oe/recipes-support/librdkafka/librdkafka_1.6.1.bb b/meta-openembedded/meta-oe/recipes-support/librdkafka/librdkafka_1.6.1.bb
new file mode 100644
index 0000000..5314f4a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/librdkafka/librdkafka_1.6.1.bb
@@ -0,0 +1,23 @@
+SUMMARY = "the Apache Kafka C/C++ client library"
+DESCRIPTION = "librdkafka is a C library implementation of the Apache Kafka protocol, providing Producer, Consumer and Admin clients."
+HOMEPAGE = "https://github.com/edenhill/librdkafka"
+SECTION = "libs"
+LICENSE = "BSD-2-Clause"
+
+LIC_FILES_CHKSUM = " \
+file://LICENSE;md5=2be8675acbfdac48935e73897af5f646 \
+"
+
+SRC_URI = "git://github.com/edenhill/librdkafka;protocol=https \
+            file://0001_fix_absolute_path_usage.patch"
+SRCREV = "1a722553638bba85dbda5050455f7b9a5ef302de"
+
+DEPENDS = "zlib openssl zstd"
+
+inherit cmake
+
+S = "${WORKDIR}/git"
+
+FILES_${PN} += "${datadir}"
+
+EXTRA_OECMAKE += "-DRDKAFKA_BUILD_EXAMPLES=OFF -DRDKAFKA_BUILD_TESTS=OFF"
\ No newline at end of file
diff --git a/meta-openembedded/meta-oe/recipes-support/libsmi/libsmi_0.5.0.bb b/meta-openembedded/meta-oe/recipes-support/libsmi/libsmi_0.5.0.bb
index 212b1e7..ae76fad 100644
--- a/meta-openembedded/meta-oe/recipes-support/libsmi/libsmi_0.5.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libsmi/libsmi_0.5.0.bb
@@ -16,7 +16,7 @@
 
 inherit autotools
 
-EXTRA_OECONF = "ac_cv_path_SH=${base_bindir}/sh ac_cv_path_WGET=${bindir}/wget ac_cv_path_AWK=${bindir}/awk"
+EXTRA_OECONF = "ac_cv_path_SH=/bin/sh ac_cv_path_WGET=${bindir}/wget ac_cv_path_AWK=${bindir}/awk"
 
 do_install_append () {
     install -d ${D}${sysconfdir}
diff --git a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Fix-building-opencv-using-gcc-11.x-19244.patch b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Fix-building-opencv-using-gcc-11.x-19244.patch
deleted file mode 100644
index ce6499b..0000000
--- a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Fix-building-opencv-using-gcc-11.x-19244.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 67e1a5400383543b28fc69eb09c9429cb9d8c026 Mon Sep 17 00:00:00 2001
-From: Your Name <you@example.com>
-Date: Sat, 2 Jan 2021 17:43:11 +0000
-Subject: [PATCH] Fix building opencv using gcc 11.x #19244
-
-Add missing `#include <thread>` in modules/gapi/test/test_precomp.hpp
-
-Upstream-Status: Backport [https://github.com/opencv/opencv/pull/19247]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- modules/gapi/test/test_precomp.hpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/modules/gapi/test/test_precomp.hpp b/modules/gapi/test/test_precomp.hpp
-index 7b3c695443..e92b1d03bf 100644
---- a/modules/gapi/test/test_precomp.hpp
-+++ b/modules/gapi/test/test_precomp.hpp
-@@ -11,6 +11,7 @@
- #define __OPENCV_GAPI_TEST_PRECOMP_HPP__
- 
- #include <cstdint>
-+#include <thread>
- #include <vector>
- 
- #include <opencv2/ts.hpp>
--- 
-2.30.1
-
diff --git a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-sfm-link-with-Glog_LIBS.patch b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-sfm-link-with-Glog_LIBS.patch
new file mode 100644
index 0000000..7b2c410
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-sfm-link-with-Glog_LIBS.patch
@@ -0,0 +1,44 @@
+From ffe20fc4ec46c6b491eff29a38f90686d4d035f6 Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Mon, 12 Apr 2021 20:37:40 +0000
+Subject: [PATCH] sfm: link with Glog_LIBS
+
+* in 4.5.0 there was explicit linkage with GLOG_LIBRARY, but since 4.5.1 with:
+  https://github.com/opencv/opencv_contrib/commit/23ee62a19b7a3e50d6dbf295359d8b1aff2e03fd
+
+  it's gone, probably because Glog_FOUND is already set from Ceres,
+  but then GLOG_LIBRARIES is empty in LIBMV_LIGHT_LIBS and build with gold fails:
+
+FAILED: bin/example_tutorial_perspective_correction
+: && TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot-native/usr/bin/x86_64-oe-linux/x86_64-oe-linux-g++ -m64 -march=core2 -mtune=core2 -msse3 -mfpmath=sse -ITOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/git/include  -fstack-protector-strong  -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security  --sysroot=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot  -O2 -pipe -g -feliminate-unused-debug-types -fmacro-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0=/usr/src/debug/opencv/4.5.2-r0                      -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0=/usr/src/debug/opencv/4.5.2-r0                      -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot=                      -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot-native=  -fvisibility-inlines-hidden  -m64 -march=core2 -mtune=core2 -msse3 -mfpmath=sse -ITOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/git/include  -fstack-protector-strong  -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security  --sysroot=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot   -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wuninitialized -Wsuggest-override -Wno-delete-non-virtual-dtor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections  -msse -msse2 -msse3 -mssse3 -DNDEBUG  -DNDEBUG  -m64 -march=core2 -mtune=core2 -msse3 -mfpmath=sse -ITOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/git/include  -fstack-protector-strong  -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security  --sysroot=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot  -O2 -pipe -g -feliminate-unused-debug-types -fmacro-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0=/usr/src/debug/opencv/4.5.2-r0                      -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0=/usr/src/debug/opencv/4.5.2-r0                      -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot=                      -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot-native=  -fvisibility-inlines-hidden  -m64 -march=core2 -mtune=core2 -msse3 -mfpmath=sse -ITOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/git/include  -fstack-protector-strong  -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security  --sysroot=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-z,relro,-z,now -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-z,relro,-z,now  -Wl,--gc-sections -Wl,--as-needed samples/cpp/CMakeFiles/example_tutorial_perspective_correction.dir/tutorial_code/features2D/Homography/perspective_correction.cpp.o -o bin/example_tutorial_perspective_correction  -ldl  -lm  -lpthread  -lrt  lib/libopencv_gapi.so.4.5.2  lib/libopencv_stitching.so.4.5.2  lib/libopencv_ts.so.4.5.2  lib/libopencv_alphamat.so.4.5.2  lib/libopencv_aruco.so.4.5.2  lib/libopencv_bgsegm.so.4.5.2  lib/libopencv_bioinspired.so.4.5.2  lib/libopencv_ccalib.so.4.5.2  lib/libopencv_dnn_objdetect.so.4.5.2  lib/libopencv_dnn_superres.so.4.5.2  lib/libopencv_dpm.so.4.5.2  lib/libopencv_face.so.4.5.2  lib/libopencv_fuzzy.so.4.5.2  lib/libopencv_hfs.so.4.5.2  lib/libopencv_img_hash.so.4.5.2  lib/libopencv_intensity_transform.so.4.5.2  lib/libopencv_line_descriptor.so.4.5.2  lib/libopencv_mcc.so.4.5.2  lib/libopencv_quality.so.4.5.2  lib/libopencv_rapid.so.4.5.2  lib/libopencv_reg.so.4.5.2  lib/libopencv_rgbd.so.4.5.2  lib/libopencv_saliency.so.4.5.2  lib/libopencv_sfm.so.4.5.2  lib/libopencv_stereo.so.4.5.2  lib/libopencv_structured_light.so.4.5.2  lib/libopencv_superres.so.4.5.2  lib/libopencv_surface_matching.so.4.5.2  lib/libopencv_tracking.so.4.5.2  lib/libopencv_videostab.so.4.5.2  lib/libopencv_wechat_qrcode.so.4.5.2  lib/libopencv_xfeatures2d.so.4.5.2  lib/libopencv_xobjdetect.so.4.5.2  lib/libopencv_xphoto.so.4.5.2  lib/libopencv_shape.so.4.5.2  lib/libopencv_highgui.so.4.5.2  lib/libopencv_datasets.so.4.5.2  lib/libopencv_ml.so.4.5.2  lib/libopencv_plot.so.4.5.2  lib/libopencv_phase_unwrapping.so.4.5.2  lib/libopencv_optflow.so.4.5.2  lib/libopencv_ximgproc.so.4.5.2  lib/libopencv_videoio.so.4.5.2  lib/libopencv_video.so.4.5.2  lib/libopencv_dnn.so.4.5.2  lib/libopencv_imgcodecs.so.4.5.2  lib/libopencv_objdetect.so.4.5.2  lib/libopencv_calib3d.so.4.5.2  lib/libopencv_features2d.so.4.5.2  lib/libopencv_flann.so.4.5.2  lib/libopencv_photo.so.4.5.2  lib/libopencv_imgproc.so.4.5.2  lib/libopencv_core.so.4.5.2  -Wl,-rpath-link,TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/build/lib && :
+lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::LogMessage::LogMessage(char const*, int)'
+lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::LogMessage::stream()'
+lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::LogMessage::~LogMessage()'
+lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::kLogSiteUninitialized'
+lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'fLI::FLAGS_v'
+lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::InitVLOG3__(int**, int*, char const*, int)'
+lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::LogMessageFatal::LogMessageFatal(char const*, int)'
+lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::LogMessageFatal::~LogMessageFatal()'
+collect2: error: ld returned 1 exit status
+
+  Add Glog_LIBS which is set to the same value as GLOG_LIBRARIES used to be.
+
+Upstream-Status: Submitted [https://github.com/opencv/opencv_contrib/pull/2923]
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ modules/sfm/CMakeLists.txt | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/modules/sfm/CMakeLists.txt b/modules/sfm/CMakeLists.txt
+index 045a1fe6e..ee7cecdac 100644
+--- a/modules/sfm/CMakeLists.txt
++++ b/modules/sfm/CMakeLists.txt
+@@ -84,6 +84,7 @@ set(LIBMV_LIGHT_LIBS
+   multiview
+   numeric
+   ${GLOG_LIBRARIES}
++  ${Glog_LIBS}
+   ${GFLAGS_LIBRARIES}
+ )
+ 
diff --git a/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.1.bb b/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.2.bb
similarity index 95%
rename from meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.1.bb
rename to meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.2.bb
index d87e140..311355b 100644
--- a/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.2.bb
@@ -10,12 +10,13 @@
 
 DEPENDS = "libtool swig-native bzip2 zlib glib-2.0 libwebp"
 
-SRCREV_opencv = "1363496c1106606684d40447f5d1149b2c66a9f8"
-SRCREV_contrib = "b91a781cbc1285d441aa682926d93d8c23678b0b"
+SRCREV_opencv = "69357b1e88680658a07cffde7678a4d697469f03"
+SRCREV_contrib = "f5d7f6712d4ff229ba4f45cf79dfd11c557d56fd"
 SRCREV_ipp = "a56b6ac6f030c312b2dce17430eef13aed9af274"
 SRCREV_boostdesc = "34e4206aef44d50e6bbcd0ab06354b52e7466d26"
 SRCREV_vgg = "fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d"
 SRCREV_face = "8afa57abc8229d611c4937165d20e2a2d9fc5a12"
+SRCREV_wechat-qrcode = "a8b69ccc738421293254aec5ddb38bd523503252"
 
 def ipp_filename(d):
     import re
@@ -43,13 +44,14 @@
            git://github.com/opencv/opencv_3rdparty.git;branch=contrib_xfeatures2d_boostdesc_20161012;destsuffix=boostdesc;name=boostdesc \
            git://github.com/opencv/opencv_3rdparty.git;branch=contrib_xfeatures2d_vgg_20160317;destsuffix=vgg;name=vgg \
            git://github.com/opencv/opencv_3rdparty.git;branch=contrib_face_alignment_20170818;destsuffix=face;name=face \
+           git://github.com/WeChatCV/opencv_3rdparty.git;branch=wechat_qrcode;destsuffix=wechat_qrcode;name=wechat-qrcode \
            file://0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch \
            file://0003-To-fix-errors-as-following.patch \
            file://0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch \
            file://0001-Dont-use-isystem.patch \
            file://download.patch \
            file://0001-Make-ts-module-external.patch \
-           file://0001-Fix-building-opencv-using-gcc-11.x-19244.patch \
+           file://0001-sfm-link-with-Glog_LIBS.patch;patchdir=../contrib \
            "
 SRC_URI_append_riscv64 = " file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=../contrib"
 
@@ -78,6 +80,8 @@
     cache xfeatures2d/boostdesc ${WORKDIR}/boostdesc/*.i
     cache xfeatures2d/vgg ${WORKDIR}/vgg/*.i
     cache data ${WORKDIR}/face/*.dat
+    cache wechat_qrcode ${WORKDIR}/wechat_qrcode/*.caffemodel
+    cache wechat_qrcode ${WORKDIR}/wechat_qrcode/*.prototxt
 }
 addtask unpack_extra after do_unpack before do_patch
 
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe/0001-Migrate-to-use-g_memdup2.patch b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe/0001-Migrate-to-use-g_memdup2.patch
new file mode 100644
index 0000000..ceb48d2
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe/0001-Migrate-to-use-g_memdup2.patch
@@ -0,0 +1,192 @@
+From 51c95a23bff3a024dc19e3127ca751e1458be0f0 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 5 Apr 2021 11:36:50 -0700
+Subject: [PATCH] Migrate to use g_memdup2
+
+g_memdup has been deprecated for long and latest glib-2.0 2.68+ has
+turned it int an error to use old function.
+
+The fall-back to g_memdup isn't needed because pidgin provides g_memdup2
+in pidgin-sipe/1.25.0-r0/recipe-sysroot/usr/include/libpurple/glibcompat.h
+based on glib-2.0 version:
+  /* Backport the static inline version of g_memdup2 if we don't have g_memdup2.
+   * see https://mail.gnome.org/archives/desktop-devel-list/2021-February/msg00000.html
+   * for more information.
+   */
+  #if !GLIB_CHECK_VERSION(2, 67, 3)
+  static inline gpointer
+  g_memdup2(gconstpointer mem, gsize byte_size) {
+          gpointer new_mem = NULL;
+
+          if(mem && byte_size != 0) {
+                  new_mem = g_malloc (byte_size);
+                  memcpy (new_mem, mem, byte_size);
+          }
+
+          return new_mem;
+  }
+  #endif /* !GLIB_CHECK_VERSION(2, 67, 3) */
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/api/sipe-common.h              |  3 +++
+ src/core/sip-sec-gssapi.c          |  4 ++--
+ src/core/sip-sec-ntlm.c            | 12 ++++++------
+ src/core/sip-sec-tls-dsk.c         |  4 ++--
+ src/core/sipe-media.c              |  2 +-
+ src/core/sipe-tls-tester.c         |  2 +-
+ src/core/sipe-tls.c                |  4 ++--
+ src/telepathy/telepathy-protocol.c |  2 +-
+ 8 files changed, 18 insertions(+), 15 deletions(-)
+
+diff --git a/src/api/sipe-common.h b/src/api/sipe-common.h
+index c964f15..cab81e0 100644
+--- a/src/api/sipe-common.h
++++ b/src/api/sipe-common.h
+@@ -51,3 +51,6 @@
+ #ifdef _MSC_VER
+ typedef long ssize_t;
+ #endif
++
++// for g_memdup2
++#include <libpurple/glibcompat.h>
+diff --git a/src/core/sip-sec-gssapi.c b/src/core/sip-sec-gssapi.c
+index 873080f..4c63868 100644
+--- a/src/core/sip-sec-gssapi.c
++++ b/src/core/sip-sec-gssapi.c
+@@ -602,7 +602,7 @@ sip_sec_init_sec_context__gssapi(SipSecContext context,
+ 
+ 	out_buff->length = output_token.length;
+ 	if (out_buff->length)
+-		out_buff->value = g_memdup(output_token.value, output_token.length);
++		out_buff->value = g_memdup2(output_token.value, output_token.length);
+ 	else
+ 		/* Special case: empty token */
+ 		out_buff->value = (guint8 *) g_strdup("");
+@@ -653,7 +653,7 @@ sip_sec_make_signature__gssapi(SipSecContext context,
+ 		return FALSE;
+ 	} else {
+ 		signature->length = output_token.length;
+-		signature->value  = g_memdup(output_token.value,
++		signature->value  = g_memdup2(output_token.value,
+ 					     output_token.length);
+ 		gss_release_buffer(&minor, &output_token);
+ 		return TRUE;
+diff --git a/src/core/sip-sec-ntlm.c b/src/core/sip-sec-ntlm.c
+index 2e2354f..1fa4daa 100644
+--- a/src/core/sip-sec-ntlm.c
++++ b/src/core/sip-sec-ntlm.c
+@@ -951,7 +951,7 @@ sip_sec_ntlm_parse_challenge(SipSecBuffer in_buff,
+ 
+ 	/* server challenge (nonce) */
+ 	if (server_challenge) {
+-		*server_challenge = g_memdup(cmsg->nonce, 8);
++		*server_challenge = g_memdup2(cmsg->nonce, 8);
+ 	}
+ 
+ 	/* flags */
+@@ -984,7 +984,7 @@ sip_sec_ntlm_parse_challenge(SipSecBuffer in_buff,
+ 			*target_info_len = len;
+ 		}
+ 		if (target_info) {
+-			*target_info = g_memdup(content, len);
++			*target_info = g_memdup2(content, len);
+ 		}
+ 	}
+ }
+@@ -1117,13 +1117,13 @@ sip_sec_ntlm_gen_authenticate(guchar **client_sign_key,
+ 		   Set ServerSigningKey to SIGNKEY(ExportedSessionKey, "Server")
+ 		*/
+ 		SIGNKEY(exported_session_key, TRUE, key);
+-		*client_sign_key = g_memdup(key, 16);
++		*client_sign_key = g_memdup2(key, 16);
+ 		SIGNKEY(exported_session_key, FALSE, key);
+-		*server_sign_key = g_memdup(key, 16);
++		*server_sign_key = g_memdup2(key, 16);
+ 		SEALKEY(neg_flags, exported_session_key, TRUE, key);
+-		*client_seal_key = g_memdup(key, 16);
++		*client_seal_key = g_memdup2(key, 16);
+ 		SEALKEY(neg_flags, exported_session_key, FALSE, key);
+-		*server_seal_key = g_memdup(key, 16);
++		*server_seal_key = g_memdup2(key, 16);
+ 	}
+ 
+ 	/* @TODO: */
+diff --git a/src/core/sip-sec-tls-dsk.c b/src/core/sip-sec-tls-dsk.c
+index 70433ea..2d3f2db 100644
+--- a/src/core/sip-sec-tls-dsk.c
++++ b/src/core/sip-sec-tls-dsk.c
+@@ -88,9 +88,9 @@ sip_sec_init_sec_context__tls_dsk(SipSecContext context,
+ 			/* copy key pair */
+ 			ctx->algorithm  = state->algorithm;
+ 			ctx->key_length = state->key_length;
+-			ctx->client_key = g_memdup(state->client_key,
++			ctx->client_key = g_memdup2(state->client_key,
+ 						   state->key_length);
+-			ctx->server_key = g_memdup(state->server_key,
++			ctx->server_key = g_memdup2(state->server_key,
+ 						   state->key_length);
+ 
+ 			/* extract certicate expiration time */
+diff --git a/src/core/sipe-media.c b/src/core/sipe-media.c
+index e9c4b8a..936e31c 100644
+--- a/src/core/sipe-media.c
++++ b/src/core/sipe-media.c
+@@ -578,7 +578,7 @@ media_stream_to_sdpmedia(struct sipe_media_call_private *call_private,
+ 	// Set our key if encryption is enabled.
+ 	if (stream_private->encryption_key &&
+ 	    encryption_policy != SIPE_ENCRYPTION_POLICY_REJECTED) {
+-		sdpmedia->encryption_key = g_memdup(stream_private->encryption_key,
++		sdpmedia->encryption_key = g_memdup2(stream_private->encryption_key,
+ 						    SIPE_SRTP_KEY_LEN);
+ 		sdpmedia->encryption_key_id = stream_private->encryption_key_id;
+ 	}
+diff --git a/src/core/sipe-tls-tester.c b/src/core/sipe-tls-tester.c
+index e80d715..5fbb5f8 100644
+--- a/src/core/sipe-tls-tester.c
++++ b/src/core/sipe-tls-tester.c
+@@ -155,7 +155,7 @@ static guchar *read_tls_record(int fd,
+ 		printf("received %d bytes from server\n", result);
+ 		record = g_new0(struct record, 1);
+ 		record->length  = result;
+-		record->msg     = g_memdup(buffer, result);
++		record->msg     = g_memdup2(buffer, result);
+ 		length         += result;
+ 		fragments = g_slist_append(fragments, record);
+ 	}
+diff --git a/src/core/sipe-tls.c b/src/core/sipe-tls.c
+index b0235d5..020aedb 100644
+--- a/src/core/sipe-tls.c
++++ b/src/core/sipe-tls.c
+@@ -427,7 +427,7 @@ static guchar *sipe_tls_prf(SIPE_UNUSED_PARAMETER struct tls_internal_state *sta
+ 	gsize half           = (secret_length + 1) / 2;
+ 	gsize newseed_length = label_length + seed_length;
+ 	/* secret: used as S1; secret2: last half of original secret (S2) */
+-	guchar *secret2 = g_memdup(secret + secret_length - half, half);
++	guchar *secret2 = g_memdup2(secret + secret_length - half, half);
+ 	guchar *newseed = g_malloc(newseed_length);
+ 	guchar *md5, *dest;
+ 	guchar *sha1, *src;
+@@ -1525,7 +1525,7 @@ static struct tls_compiled_message *tls_client_key_exchange(struct tls_internal_
+ 
+ 	/* found all the required fields */
+ 	state->server_random.length = server_random->length;
+-	state->server_random.buffer = g_memdup(server_random->data,
++	state->server_random.buffer = g_memdup2(server_random->data,
+ 					       server_random->length);
+ 	tls_calculate_secrets(state);
+ 
+diff --git a/src/telepathy/telepathy-protocol.c b/src/telepathy/telepathy-protocol.c
+index f6e5337..1dde579 100644
+--- a/src/telepathy/telepathy-protocol.c
++++ b/src/telepathy/telepathy-protocol.c
+@@ -237,7 +237,7 @@ static void get_connection_details(SIPE_UNUSED_PARAMETER TpBaseProtocol *self,
+ 			SIPE_TYPE_SEARCH_MANAGER,
+ 			G_TYPE_INVALID
+ 		};
+-		*channel_managers = g_memdup(types, sizeof(types));
++		*channel_managers = g_memdup2(types, sizeof(types));
+ 	}
+ 	if (icon_name)
+ 		*icon_name    = g_strdup("im-" SIPE_TELEPATHY_DOMAIN);
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe_1.25.0.bb b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe_1.25.0.bb
index f6b4c7c..5a96bec 100644
--- a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe_1.25.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe_1.25.0.bb
@@ -11,6 +11,7 @@
            file://0001-sipe-consider-64bit-time_t-when-printing.patch \
            file://0001-Align-structs-casts-with-time_t-elements-to-8byte-bo.patch \
            file://0001-configure-Do-not-add-native-paths-to-pkgconfig-searc.patch \
+           file://0001-Migrate-to-use-g_memdup2.patch \
 "
 
 SRC_URI[md5sum] = "0e742f021dc8c3f17435aea05c3e0314"
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin/0001-configure.ac-fix-build-with-autoconf-2.71.patch b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin/0001-configure.ac-fix-build-with-autoconf-2.71.patch
deleted file mode 100644
index cfb0290..0000000
--- a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin/0001-configure.ac-fix-build-with-autoconf-2.71.patch
+++ /dev/null
@@ -1,229 +0,0 @@
-From e03d3ef5aadd582ebf7102b7d5785fed177a0cb1 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa@gmail.com>
-Date: Sun, 7 Feb 2021 13:25:29 +0100
-Subject: [PATCH] configure.ac: fix build with autoconf-2.71
-
-* fixes:
-  | autoreconf: running: intltoolize --copy --force
-  | ERROR: 'IT_PROG_INTLTOOL' must appear in configure.ac for intltool to work.
-  | autoreconf: error: intltoolize failed with exit status: 1
-
-* replace AM_GLIB_GNU_GETTEXT with AM_GNU_GETTEXT as suggested in:
-  https://wiki.gnome.org/Initiatives/GnomeGoals/GettextMigration
-  https://blogs.gnome.org/jjardon/2010/10/08/use-upstream-gettext-instead-the-glib-one/
-  because the former is causing issues with autoconf-2.71:
-
-  -m4trace:configure.ac:266: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-  -You should run autoupdate.], [../autoconf-2.71/lib/autoconf/general.m4:2920: AC_TRY_LINK is expanded from...
-  -../autoconf-2.71/lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
-  -../autoconf-2.71/lib/autoconf/headers.m4:89: _AC_CHECK_HEADER_COMPILE is expanded from...
-  -../autoconf-2.71/lib/autoconf/headers.m4:56: AC_CHECK_HEADER is expanded from...
-  -pidgin/2.14.1-r0/recipe-sysroot-native/usr/share/aclocal/glib-gettext.m4:150: GLIB_WITH_NLS is expanded from...
-  -pidgin/2.14.1-r0/recipe-sysroot-native/usr/share/aclocal/glib-gettext.m4:370: GLIB_GNU_GETTEXT is expanded from...
-  -pidgin/2.14.1-r0/recipe-sysroot-native/usr/share/aclocal/glib-gettext.m4:470: AM_GLIB_GNU_GETTEXT is expanded from...
-  -configure.ac:266: the top level])
-  -m4trace:configure.ac:266: -1- m4_pattern_allow([^ENABLE_NLS$])
-  -m4trace:configure.ac:266: -1- _m4_warn([obsolete], [The macro `AC_OUTPUT_COMMANDS' is obsolete.
-  -You should run autoupdate.], [../autoconf-2.71/lib/autoconf/status.m4:1025: AC_OUTPUT_COMMANDS is expanded from...
-  -pidgin/2.14.1-r0/recipe-sysroot-native/usr/share/aclocal/glib-gettext.m4:150: GLIB_WITH_NLS is expanded from...
-  -pidgin/2.14.1-r0/recipe-sysroot-native/usr/share/aclocal/glib-gettext.m4:370: GLIB_GNU_GETTEXT is expanded from...
-  -pidgin/2.14.1-r0/recipe-sysroot-native/usr/share/aclocal/glib-gettext.m4:470: AM_GLIB_GNU_GETTEXT is expanded from...
-  -configure.ac:266: the top level])
-
-  and then configure fails with:
-
-  configure.ac:2621: error: `po/stamp-it' is already registered with AC_CONFIG_COMMANDS.
-  autoconf-2.71/lib/autoconf/status.m4:1008: AC_CONFIG_COMMANDS is expanded from...
-  configure.ac:2621: the top level
-
-* add AM_GNU_GETTEXT_VERSION as well to resolve warning with autoconf-2.71
-  configure.ac: warning: AM_GNU_GETTEXT is used, but not AM_GNU_GETTEXT_VERSION or AM_GNU_GETTEXT_REQUIRE_VERSION
-
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
----
- ABOUT-NLS          |  1 +
- Makefile.am        |  6 +---
- configure.ac       |  6 ++--
- pidgin/Makefile.am |  7 ++--
- po/Makevars        | 82 ++++++++++++++++++++++++++++++++++++++++++++++
- po/POTFILES.in     |  1 -
- 6 files changed, 92 insertions(+), 11 deletions(-)
- create mode 100644 ABOUT-NLS
- create mode 100644 po/Makevars
-
-diff --git a/ABOUT-NLS b/ABOUT-NLS
-new file mode 100644
-index 0000000..0a9d56d
---- /dev/null
-+++ b/ABOUT-NLS
-@@ -0,0 +1 @@
-+<https://www.gnu.org/software/gettext/manual/html_node/Users.html>
-diff --git a/Makefile.am b/Makefile.am
-index f8e2bc9..a74145f 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -13,9 +13,6 @@ EXTRA_DIST = \
- 		fix-casts.sh \
- 		gaim.pc.in \
- 		gaim-uninstalled.pc.in \
--		intltool-extract.in \
--		intltool-merge.in \
--		intltool-update.in \
- 		package_revision.h \
- 		pidgin.apspec.in \
- 		pidgin.spec.in \
-@@ -139,5 +136,4 @@ endif
- distuninstallcheck_listfiles = \
- 	find . -type f -print | grep -v perl | grep -v Purple.3pm | grep -v Pidgin.3pm
- 
--DISTCLEANFILES= intltool-extract intltool-merge intltool-update \
--			package_revision_raw.txt
-+DISTCLEANFILES=package_revision_raw.txt
-diff --git a/configure.ac b/configure.ac
-index 81d8592..e2280cd 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -43,7 +43,7 @@ fi
- 
- AC_CANONICAL_HOST
- AC_CONFIG_HEADERS([config.h])
--AM_INIT_AUTOMAKE([1.9 -Wno-portability dist-bzip2])
-+AM_INIT_AUTOMAKE([1.9 -Wno-portability dist-bzip2 foreign])
- dnl TODO: Always use AM_SILENT_RULES when we depend on automake >= 1.11
- m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
- 
-@@ -257,12 +257,12 @@ dnl #######################################################################
- AC_ARG_ENABLE(nls, AC_HELP_STRING([--disable-nls], [disable installation of translation files]), enable_i18n="$enableval", enable_i18n=yes)
- 
- if test x$enable_i18n = xyes; then
--	AC_PROG_INTLTOOL
- 	GETTEXT_PACKAGE=pidgin
- 	AC_SUBST(GETTEXT_PACKAGE)
- 
- 	ALL_LINGUAS="af am ar ar_SA as ast az be@latin bg bn_IN bn br brx bs ca ca@valencia cs da de dz el en_AU en_CA en_GB eo es_AR es et eu fa fi fr ga gl gu he hi hr hu id it ja ka kk km kn ko ks ku_IQ ku lt lv mai mhr mk ml mn mr ms_MY my_MM nb ne nl nn oc or pa pl ps pt_BR pt ro ru sd si sk sl sq sr@latin sr sv sw ta te th tr tt uk ur uz vi xh zh_CN zh_HK zh_TW"
--	AM_GLIB_GNU_GETTEXT
-+	AM_GNU_GETTEXT([external])
-+	AM_GNU_GETTEXT_VERSION([0.21])
- 
- 	dnl If we don't have msgfmt, then po/ is going to fail -- ensure that
- 	dnl AM_GLIB_GNU_GETTEXT found it.
-diff --git a/pidgin/Makefile.am b/pidgin/Makefile.am
-index 2278b88..4d32c53 100644
---- a/pidgin/Makefile.am
-+++ b/pidgin/Makefile.am
-@@ -192,13 +192,16 @@ DESKTOP_FILE=data/pidgin.desktop
- appsdir = $(datadir)/applications
- apps_in_files = data/pidgin.desktop.in
- apps_DATA = $(apps_in_files:.desktop.in=.desktop)
--@INTLTOOL_DESKTOP_RULE@
-+
-+data/pidgin.desktop: data/pidgin.desktop.in
-+	$(AM_V_GEN)$(MSGFMT) --desktop --template $< -d $(top_srcdir)/po -o $@
- 
- appdatadir = $(datarootdir)/appdata
- appdata_DATA = $(appdata_in_files:.xml.in=.xml)
- appdata_in_files = data/pidgin.appdata.xml.in
- 
--@INTLTOOL_XML_RULE@
-+data/pidgin.appdata.xml: data/pidgin.appdata.xml.in
-+	$(AM_V_GEN)$(MSGFMT) --xml --template $< -d $(top_srcdir)/po -o $@ || cp $< $@
- 
- endif # INSTALL_I18N
- 
-diff --git a/po/Makevars b/po/Makevars
-new file mode 100644
-index 0000000..970237a
---- /dev/null
-+++ b/po/Makevars
-@@ -0,0 +1,82 @@
-+# Makefile variables for PO directory in any package using GNU gettext.
-+#
-+# Copyright (C) 2003-2019 Free Software Foundation, Inc.
-+# This file is free software; the Free Software Foundation gives
-+# unlimited permission to use, copy, distribute, and modify it.
-+
-+# Usually the message domain is the same as the package name.
-+DOMAIN = $(PACKAGE)
-+
-+# These two variables depend on the location of this directory.
-+subdir = po
-+top_builddir = ..
-+
-+# These options get passed to xgettext.
-+XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ --from-code=UTF-8
-+
-+# This is the copyright holder that gets inserted into the header of the
-+# $(DOMAIN).pot file.  Set this to the copyright holder of the surrounding
-+# package.  (Note that the msgstr strings, extracted from the package's
-+# sources, belong to the copyright holder of the package.)  Translators are
-+# expected to transfer the copyright for their translations to this person
-+# or entity, or to disclaim their copyright.  The empty string stands for
-+# the public domain; in this case the translators are expected to disclaim
-+# their copyright.
-+COPYRIGHT_HOLDER = Free Software Foundation, Inc.
-+
-+# This tells whether or not to prepend "GNU " prefix to the package
-+# name that gets inserted into the header of the $(DOMAIN).pot file.
-+# Possible values are "yes", "no", or empty.  If it is empty, try to
-+# detect it automatically by scanning the files in $(top_srcdir) for
-+# "GNU packagename" string.
-+PACKAGE_GNU =
-+
-+# This is the email address or URL to which the translators shall report
-+# bugs in the untranslated strings:
-+# - Strings which are not entire sentences, see the maintainer guidelines
-+#   in the GNU gettext documentation, section 'Preparing Strings'.
-+# - Strings which use unclear terms or require additional context to be
-+#   understood.
-+# - Strings which make invalid assumptions about notation of date, time or
-+#   money.
-+# - Pluralisation problems.
-+# - Incorrect English spelling.
-+# - Incorrect formatting.
-+# It can be your email address, or a mailing list address where translators
-+# can write to without being subscribed, or the URL of a web page through
-+# which the translators can contact you.
-+MSGID_BUGS_ADDRESS =
-+
-+# This is the list of locale categories, beyond LC_MESSAGES, for which the
-+# message catalogs shall be used.  It is usually empty.
-+EXTRA_LOCALE_CATEGORIES =
-+
-+# This tells whether the $(DOMAIN).pot file contains messages with an 'msgctxt'
-+# context.  Possible values are "yes" and "no".  Set this to yes if the
-+# package uses functions taking also a message context, like pgettext(), or
-+# if in $(XGETTEXT_OPTIONS) you define keywords with a context argument.
-+USE_MSGCTXT = no
-+
-+# These options get passed to msgmerge.
-+# Useful options are in particular:
-+#   --previous            to keep previous msgids of translated messages,
-+#   --quiet               to reduce the verbosity.
-+MSGMERGE_OPTIONS =
-+
-+# These options get passed to msginit.
-+# If you want to disable line wrapping when writing PO files, add
-+# --no-wrap to MSGMERGE_OPTIONS, XGETTEXT_OPTIONS, and
-+# MSGINIT_OPTIONS.
-+MSGINIT_OPTIONS =
-+
-+# This tells whether or not to regenerate a PO file when $(DOMAIN).pot
-+# has changed.  Possible values are "yes" and "no".  Set this to no if
-+# the POT file is checked in the repository and the version control
-+# program ignores timestamps.
-+PO_DEPENDS_ON_POT = no
-+
-+# This tells whether or not to forcibly update $(DOMAIN).pot and
-+# regenerate PO files on "make dist".  Possible values are "yes" and
-+# "no".  Set this to no if the POT file and PO files are maintained
-+# externally.
-+DIST_DEPENDS_ON_UPDATE_PO = no
-diff --git a/po/POTFILES.in b/po/POTFILES.in
-index a5691a1..b494bf3 100644
---- a/po/POTFILES.in
-+++ b/po/POTFILES.in
-@@ -1,4 +1,3 @@
--[encoding: UTF-8]
- finch/finch.c
- finch/gntaccount.c
- finch/gntblist.c
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin/0002-configure.ac-disable-few-languages-not-compatible-wi.patch b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin/0002-configure.ac-disable-few-languages-not-compatible-wi.patch
deleted file mode 100644
index 99c523d..0000000
--- a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin/0002-configure.ac-disable-few-languages-not-compatible-wi.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 861c8a63c36f9ee7d46238c9bc13a2c1f14372c3 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa@gmail.com>
-Date: Sun, 7 Feb 2021 14:35:14 +0000
-Subject: [PATCH] configure.ac: disable few languages not compatible with
- modern gettext
-
-* as pidgin-3 development is moving to meson and probably
-  most of these changes won't be applicable there, lets just
-  disable them until someone interested steps-up to maintain it
-
-* these 3 fail with:
-cd ../../pidgin-2.14.1/po && rm -f brx.gmo && pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgmerge --for-msgfmt -o brx.1po brx.po pidgin.pot && pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgfmt -c --statistics --verbose -o brx.gmo brx.1po && rm -f brx.1po
-cd ../../pidgin-2.14.1/po && rm -f zh_HK.gmo && pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgmerge --for-msgfmt -o zh_HK.1po zh_HK.po pidgin.pot && pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgfmt -c --statistics --verbose -o zh_HK.gmo zh_HK.1po && rm -f zh_HK.1po
-cd ../../pidgin-2.14.1/po && rm -f zh_TW.gmo && pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgmerge --for-msgfmt -o zh_TW.1po zh_TW.po pidgin.pot && pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgfmt -c --statistics --verbose -o zh_TW.gmo zh_TW.1po && rm -f zh_TW.1po
-zh_HK.1po:2790: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: The string refers to arguments both through absolute argument numbers and through unnumbered argument specifications.
-pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgfmt: found 1 fatal error
-zh_TW.1po:2790: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: The string refers to arguments both through absolute argument numbers and through unnumbered argument specifications.
-pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgfmt: found 1 fatal error
-zh_HK.1po: 3234 translated messages.
-make[3]: *** [Makefile:415: ../../pidgin-2.14.1/po/zh_HK.gmo] Error 1
-make[3]: *** Waiting for unfinished jobs....
-zh_TW.1po: 3234 translated messages.
-make[3]: *** [Makefile:415: ../../pidgin-2.14.1/po/zh_TW.gmo] Error 1
-brx.1po:778: number of format specifications in 'msgid' and 'msgstr' does not match
-brx.1po:3179: number of format specifications in 'msgid' and 'msgstr' does not match
-brx.1po:5175: format specifications in 'msgid_plural' and 'msgstr[0]' for argument 1 are not the same
-brx.1po:5184: format specifications in 'msgid_plural' and 'msgstr[0]' for argument 1 are not the same
-brx.1po:7754: format specifications in 'msgid_plural' and 'msgstr[0]' for argument 1 are not the same
-pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgfmt: found 8 fatal errors
-brx.1po: 3246 translated messages.
-
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index e2280cd..9332932 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -260,7 +260,7 @@ if test x$enable_i18n = xyes; then
- 	GETTEXT_PACKAGE=pidgin
- 	AC_SUBST(GETTEXT_PACKAGE)
- 
--	ALL_LINGUAS="af am ar ar_SA as ast az be@latin bg bn_IN bn br brx bs ca ca@valencia cs da de dz el en_AU en_CA en_GB eo es_AR es et eu fa fi fr ga gl gu he hi hr hu id it ja ka kk km kn ko ks ku_IQ ku lt lv mai mhr mk ml mn mr ms_MY my_MM nb ne nl nn oc or pa pl ps pt_BR pt ro ru sd si sk sl sq sr@latin sr sv sw ta te th tr tt uk ur uz vi xh zh_CN zh_HK zh_TW"
-+	ALL_LINGUAS="af am ar ar_SA as ast az be@latin bg bn_IN bn br bs ca ca@valencia cs da de dz el en_AU en_CA en_GB eo es_AR es et eu fa fi fr ga gl gu he hi hr hu id it ja ka kk km kn ko ks ku_IQ ku lt lv mai mhr mk ml mn mr ms_MY my_MM nb ne nl nn oc or pa pl ps pt_BR pt ro ru sd si sk sl sq sr@latin sr sv sw ta te th tr tt uk ur uz vi xh zh_CN"
- 	AM_GNU_GETTEXT([external])
- 	AM_GNU_GETTEXT_VERSION([0.21])
- 
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.14.1.bb b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.14.2.bb
similarity index 94%
rename from meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.14.1.bb
rename to meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.14.2.bb
index d22380e..ba0dca2 100644
--- a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.14.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.14.2.bb
@@ -11,11 +11,9 @@
     ${SOURCEFORGE_MIRROR}/pidgin/pidgin-${PV}.tar.bz2 \
     file://sanitize-configure.ac.patch \
     file://purple-OE-branding-25.patch \
-    file://0001-configure.ac-fix-build-with-autoconf-2.71.patch \
-    file://0002-configure.ac-disable-few-languages-not-compatible-wi.patch \
 "
 
-SRC_URI[sha256sum] = "f132e18d551117d9e46acce29ba4f40892a86746c366999166a3862b51060780"
+SRC_URI[sha256sum] = "19654ad276b149646371fbdac21bc7620742f2975f7399fed0ffc1a18fbaf603"
 
 PACKAGECONFIG ??= "gnutls consoleui avahi dbus idn nss \
     ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 gtk startup-notification', '', d)} \
@@ -39,9 +37,9 @@
 PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,dbus dbus-glib"
 PACKAGECONFIG[avahi] = "--enable-avahi,--disable-avahi,avahi"
 PACKAGECONFIG[nss] = "--enable-nss,--disable-nss,nss nspr,libpurple-plugin-ssl-nss"
+PACKAGECONFIG[cyrus-sasl] = "--enable-cyrus-sasl,--disable-cyrus-sasl,cyrus-sasl"
 
 EXTRA_OECONF = " \
-    --with-python=python3 \
     --disable-perl \
     --disable-tcl \
     --disable-gevolution \
diff --git a/meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.03.0.bb b/meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.04.0.bb
similarity index 95%
rename from meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.03.0.bb
rename to meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.04.0.bb
index 52aa170..de5f380 100644
--- a/meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.03.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.04.0.bb
@@ -7,7 +7,7 @@
            file://0001-Do-not-overwrite-all-our-build-flags.patch \
            file://basename-include.patch \
            "
-SRC_URI[sha256sum] = "fd51ead4aac1d2f4684fa6e7b0ec06f0233ed21667e720a4e817e4455dd63d27"
+SRC_URI[sha256sum] = "5e2219656c6bbd36154133fef2e12b7d0938464518827098b29a10b1697ea79c"
 
 DEPENDS = "fontconfig zlib cairo lcms glib-2.0"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-CMakeLists.txt-exclude-riscv64-riscv32.patch b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-CMakeLists.txt-exclude-riscv64-riscv32.patch
new file mode 100644
index 0000000..ff61548
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-CMakeLists.txt-exclude-riscv64-riscv32.patch
@@ -0,0 +1,42 @@
+From cb9e9b5b1ad05dd9de07a65ee7147cdb3433746a Mon Sep 17 00:00:00 2001
+From: Naveen Saini <naveen.kumar.saini@intel.com>
+Date: Fri, 9 Apr 2021 15:41:35 +0800
+Subject: [PATCH] CMakeLists.txt: exclude riscv64 & riscv32
+
+Upstream-Status: Pending
+
+Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
+---
+ src/tbb/CMakeLists.txt       | 2 +-
+ src/tbbmalloc/CMakeLists.txt | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/tbb/CMakeLists.txt b/src/tbb/CMakeLists.txt
+index a6edb6ad..4f261813 100644
+--- a/src/tbb/CMakeLists.txt
++++ b/src/tbb/CMakeLists.txt
+@@ -55,7 +55,7 @@ target_compile_definitions(tbb
+                            PRIVATE
+                            __TBB_BUILD)
+ 
+-if (NOT ("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "(armv7-a|aarch64|mips|arm64)" OR
++if (NOT ("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "(armv7-a|aarch64|mips|arm64|riscv64|riscv32)" OR
+          "${CMAKE_OSX_ARCHITECTURES}" MATCHES "arm64" OR
+          WINDOWS_STORE OR
+          TBB_WINDOWS_DRIVER))
+diff --git a/src/tbbmalloc/CMakeLists.txt b/src/tbbmalloc/CMakeLists.txt
+index de7ca7ea..31e854fe 100644
+--- a/src/tbbmalloc/CMakeLists.txt
++++ b/src/tbbmalloc/CMakeLists.txt
+@@ -28,7 +28,7 @@ target_compile_definitions(tbbmalloc
+                            PRIVATE
+                            __TBBMALLOC_BUILD)
+ 
+-if (NOT ("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "(armv7-a|aarch64|mips|arm64)" OR
++if (NOT ("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "(armv7-a|aarch64|mips|arm64|riscv64|riscv32)" OR
+          "${CMAKE_OSX_ARCHITECTURES}" MATCHES "arm64" OR
+          WINDOWS_STORE OR
+          TBB_WINDOWS_DRIVER))
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-Disable-use-of-_tpause-instruction.patch b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-Disable-use-of-_tpause-instruction.patch
new file mode 100644
index 0000000..7a4cc3e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-Disable-use-of-_tpause-instruction.patch
@@ -0,0 +1,34 @@
+From 26bc87fdad9f29c00a5e37d6d9aed7f6dc7ff416 Mon Sep 17 00:00:00 2001
+From: Anuj Mittal <anuj.mittal@intel.com>
+Date: Mon, 12 Apr 2021 14:15:53 +0800
+Subject: [PATCH] Disable use of _tpause instruction
+
+It is assuming right now that WAITPKG instructions are available when using
+gcc 11 or clang 12. It's possible that we are building for a
+CPU where it's not available - in this case anything older than Alder Lake.
+
+Disable for now until the detection isn't fixed upstream.
+
+Upstream-Status: Inappropriate
+
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ src/tbb/scheduler_common.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/tbb/scheduler_common.h b/src/tbb/scheduler_common.h
+index ee13dbf9..49052001 100644
+--- a/src/tbb/scheduler_common.h
++++ b/src/tbb/scheduler_common.h
+@@ -219,7 +219,7 @@ inline void prolonged_pause_impl() {
+ #endif
+ 
+ inline void prolonged_pause() {
+-#if __TBB_WAITPKG_INTRINSICS_PRESENT && (_WIN32 || _WIN64 || __linux__) && (__TBB_x86_32 || __TBB_x86_64)
++#if 0
+     if (governor::wait_package_enabled()) {
+         std::uint64_t time_stamp = machine_time_stamp();
+         // _tpause function directs the processor to enter an implementation-dependent optimized state
+-- 
+2.29.0
+
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-mallinfo-is-glibc-specific-API-mark-it-so.patch b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-mallinfo-is-glibc-specific-API-mark-it-so.patch
index 7e66945..4932544 100644
--- a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-mallinfo-is-glibc-specific-API-mark-it-so.patch
+++ b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-mallinfo-is-glibc-specific-API-mark-it-so.patch
@@ -1,22 +1,23 @@
-From 6b2b136caa68912d77ffe26143cd3da768b9ef80 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 3 Jun 2017 08:39:37 -0700
+From 52c1586bff0ecb418ac21d6678f8963d70959f04 Mon Sep 17 00:00:00 2001
+From: Naveen Saini <naveen.kumar.saini@intel.com>
+Date: Wed, 7 Apr 2021 11:14:13 +0800
 Subject: [PATCH] mallinfo() is glibc specific API mark it so
 
 Helps compiling with musl
 
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
 Upstream-Status: Pending
 
- src/tbbmalloc/proxy.cpp | 2 ++
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
+---
+ src/tbbmalloc_proxy/proxy.cpp | 2 ++
  1 file changed, 2 insertions(+)
 
-diff --git a/src/tbbmalloc/proxy.cpp b/src/tbbmalloc/proxy.cpp
-index 5ef279d..06c4872 100644
---- a/src/tbbmalloc/proxy.cpp
-+++ b/src/tbbmalloc/proxy.cpp
-@@ -185,6 +185,7 @@ int mallopt(int /*param*/, int /*value*/) __THROW
+diff --git a/src/tbbmalloc_proxy/proxy.cpp b/src/tbbmalloc_proxy/proxy.cpp
+index f9942bf1..fe0dad89 100644
+--- a/src/tbbmalloc_proxy/proxy.cpp
++++ b/src/tbbmalloc_proxy/proxy.cpp
+@@ -253,6 +253,7 @@ int mallopt(int /*param*/, int /*value*/) __THROW
      return 1;
  }
  
@@ -24,7 +25,7 @@
  struct mallinfo mallinfo() __THROW
  {
      struct mallinfo m;
-@@ -192,6 +193,7 @@ struct mallinfo mallinfo() __THROW
+@@ -260,6 +261,7 @@ struct mallinfo mallinfo() __THROW
  
      return m;
  }
@@ -33,5 +34,5 @@
  #if __ANDROID__
  // Android doesn't have malloc_usable_size, provide it to be compatible
 -- 
-2.13.0
+2.17.1
 
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/GLIBC-PREREQ-is-not-defined-on-musl.patch b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/GLIBC-PREREQ-is-not-defined-on-musl.patch
index 6f28f6f..fb10684 100644
--- a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/GLIBC-PREREQ-is-not-defined-on-musl.patch
+++ b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/GLIBC-PREREQ-is-not-defined-on-musl.patch
@@ -1,7 +1,7 @@
-From 27956d4c5fb615098231cebfb8eef11057639d3c Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Sun, 8 Dec 2019 18:14:38 +0100
-Subject: [PATCH] src/tbbmalloc/proxy.cpp: __GLIBC_PREREQ is not defined on
+From 5cac8b5fffa4ebf5f0090456c9e0cbf43827242a Mon Sep 17 00:00:00 2001
+From: Naveen Saini <naveen.kumar.saini@intel.com>
+Date: Wed, 7 Apr 2021 11:32:52 +0800
+Subject: [PATCH] src/tbbmalloc/proxy.cpp: __GLIBC_PREREQ is not defined on 
  musl
 
 Do not call __GLIBC_PREREQ if it is not defined otherwise build will
@@ -12,14 +12,15 @@
 Upstream-Status: Submitted [https://github.com/oneapi-src/oneTBB/pull/203]
 
 Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
 ---
- src/tbbmalloc/proxy.cpp | 6 ++++--
+ src/tbbmalloc_proxy/proxy.cpp | 6 ++++--
  1 file changed, 4 insertions(+), 2 deletions(-)
 
-diff --git a/src/tbbmalloc/proxy.cpp b/src/tbbmalloc/proxy.cpp
-index d96ae7a0..709ae839 100644
---- a/src/tbbmalloc/proxy.cpp
-+++ b/src/tbbmalloc/proxy.cpp
+diff --git a/src/tbbmalloc_proxy/proxy.cpp b/src/tbbmalloc_proxy/proxy.cpp
+index fe0dad89..93e68049 100644
+--- a/src/tbbmalloc_proxy/proxy.cpp
++++ b/src/tbbmalloc_proxy/proxy.cpp
 @@ -24,7 +24,8 @@
  // of aligned_alloc as required by new C++ standard, this makes it hard to
  // redefine aligned_alloc here. However, running on systems with new libc
@@ -40,3 +41,6 @@
  #endif // __linux__ && !__ANDROID__
  
  #include "proxy.h"
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/cross-compile.patch b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/cross-compile.patch
deleted file mode 100644
index 3657854..0000000
--- a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/cross-compile.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-Author: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
-  
-Upstream-Status: unsuitable
----
-
-diff --git a/build/linux.clang.inc b/build/linux.clang.inc
-index fe9b5c98..b0dcd68b 100644
---- a/build/linux.clang.inc
-+++ b/build/linux.clang.inc
-@@ -12,8 +12,8 @@
- # See the License for the specific language governing permissions and
- # limitations under the License.
- 
--CPLUS ?= clang++
--CONLY ?= clang
-+CPLUS ?= $(CXX)
-+CONLY ?= $(CC)
- COMPILE_ONLY = -c -MMD
- PREPROC_ONLY = -E -x c++
- INCLUDE_KEY = -I
-diff --git a/build/linux.gcc.inc b/build/linux.gcc.inc
-index d820c15d..62c76afd 100644
---- a/build/linux.gcc.inc
-+++ b/build/linux.gcc.inc
-@@ -12,8 +12,8 @@
- # See the License for the specific language governing permissions and
- # limitations under the License.
- 
--CPLUS ?= g++
--CONLY ?= gcc
-+CPLUS ?= $(CXX)
-+CONLY ?= $(CC)
- COMPILE_ONLY = -c -MMD
- PREPROC_ONLY = -E -x c++
- INCLUDE_KEY = -I
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/improve-reproducibility.patch b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/improve-reproducibility.patch
deleted file mode 100644
index 91d10cb..0000000
--- a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/improve-reproducibility.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From f56eeb18a07df139864a99e1967d450cc5c8c0bb Mon Sep 17 00:00:00 2001
-From: Lee Chee Yang <chee.yang.lee@intel.com>
-Date: Wed, 30 Sep 2020 16:18:35 +0800
-Subject: [PATCH] improve reproducibility
-
-remove the WORKDIR info from BUILD_COMMAND to improve reproducibility.
-also use SOURCE_DATE_EPOCH as DATETIME wherever possible.
-
-Upstream-Status: Inappropriate [sed WORKDIR does not applies to upstream]
-Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
----
- build/version_info_linux.sh | 4 +-
- 1 file changed, 2 insertion(+), 2 deletion(-)
-
-diff --git a/build/version_info_linux.sh b/build/version_info_linux.sh
-index 793cad11..ed6f4b2a 100644
---- a/build/version_info_linux.sh
-+++ b/build/version_info_linux.sh
-@@ -25,6 +25,6 @@ echo '#N": BUILD_GCC'"\t\t"`g++ --version </dev/null 2>&1 | grep 'g++'`'" ENDL \
- echo '#N": BUILD_LIBC'"\t"`getconf GNU_LIBC_VERSION | grep glibc | sed -e 's/^glibc //'`'" ENDL \'
- echo '#N": BUILD_LD'"\t\t"`ld -v 2>&1 | grep 'version'`'" ENDL \'
- echo '#N": BUILD_TARGET'"\t$arch on $runtime"'" ENDL \'
--echo '#N": BUILD_COMMAND'"\t"$*'" ENDL \'
-+echo '#N": BUILD_COMMAND'"\t"$(echo $* | sed 's#'$WORKDIR'#/workdir#g')'" ENDL \'
- echo ""
--echo "#define __TBB_DATETIME \""`date -u`"\""
-+echo "#define __TBB_DATETIME \""`$(date -u -d "@$SOURCE_DATE_EPOCH"  2>/dev/null || date -u -r "$SOURCE_DATE_EPOCH"  2>/dev/null || date -u )`"\""
--- 
-2.25.1
-
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/tbb.pc b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/tbb.pc
deleted file mode 100644
index 4f9da11..0000000
--- a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/tbb.pc
+++ /dev/null
@@ -1,11 +0,0 @@
-prefix=/usr
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include
-
-Name: Threading Building Blocks
-Description: Intel's parallelism library for C++
-URL: https://software.intel.com/en-us/tbb
-Version: 2020.2
-Libs: -L${libdir} -ltbb
-Cflags: -I${includedir} 
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2020.3.bb b/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2020.3.bb
deleted file mode 100644
index 8e0094b..0000000
--- a/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2020.3.bb
+++ /dev/null
@@ -1,46 +0,0 @@
-DESCRIPTION = "Parallelism library for C++ - runtime files \
-    TBB is a library that helps you leverage multi-core processor \
-    performance without having to be a threading expert. It represents a \
-    higher-level, task-based parallelism that abstracts platform details \
-    and threading mechanism for performance and scalability."
-HOMEPAGE = "https://software.intel.com/en-us/tbb"
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
-BRANCH = "tbb_2020"
-SRCREV = "eca91f16d7490a8abfdee652dadf457ec820cc37"
-SRC_URI = "git://github.com/oneapi-src/oneTBB.git;protocol=https;branch=${BRANCH} \
-           file://cross-compile.patch \
-           file://0001-mallinfo-is-glibc-specific-API-mark-it-so.patch \
-           file://GLIBC-PREREQ-is-not-defined-on-musl.patch \
-           file://tbb.pc \
-           file://improve-reproducibility.patch \
-"
-
-S = "${WORKDIR}/git"
-PE = "1"
-
-COMPILER ?= "gcc"
-COMPILER_toolchain-clang = "clang"
-
-do_compile() {
-    oe_runmake compiler=${COMPILER} arch=${HOST_ARCH}
-}
-
-do_install() {
-    install -d ${D}${includedir} ${D}${libdir}
-    rm ${S}/include/tbb/index.html -f
-    cp -R --no-dereference --preserve=mode,links -v ${S}/include/tbb ${D}${includedir}
-    for f in ${B}/build/linux_*_release/lib*.so*
-    do
-        install -Dm 0755 $f ${D}${libdir}/
-    done
-    install -Dm 0644 ${WORKDIR}/tbb.pc ${D}${libdir}/pkgconfig/tbb.pc
-}
-
-# fails with thumb enabled:
-# | arm-oe-linux-gnueabi-g++  -march=armv7-a -mthumb -mthumb-interwork -mfloat-abi=softfp -mfpu=neon -mtune=cortex-a9 -mcpu=cortex-a9 -D__ARM__ -D__LINUX_ARM_ARCH__=7 -funwind-tables -mvectorize-with-neon-quad -rdynamic --sysroot=/OE/sysroots/m14tv -c -MMD -DTBB_USE_DEBUG  -g -O0 -DUSE_PTHREAD -fPIC -D__TBB_BUILD=1 -Wall -Wno-parentheses -Wno-non-virtual-dtor -O2 -pipe -g -feliminate-unused-debug-types -fpermissive -fvisibility-inlines-hidden   -I../../src -I../../src/rml/include -I../../include ../../src/tbb/concurrent_queue.cpp
-# | {standard input}: Assembler messages:
-# | {standard input}:250: Error: thumb conditional instruction should be in IT block -- `strexeq r2,r3,[r4]'
-# ...
-# | make[1]: *** [concurrent_queue.o] Error 1
-ARM_INSTRUCTION_SET = "arm"
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2021.2.0.bb b/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2021.2.0.bb
new file mode 100644
index 0000000..b05a59d
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2021.2.0.bb
@@ -0,0 +1,45 @@
+DESCRIPTION = "Parallelism library for C++ - runtime files \
+    TBB is a library that helps you leverage multi-core processor \
+    performance without having to be a threading expert. It represents a \
+    higher-level, task-based parallelism that abstracts platform details \
+    and threading mechanism for performance and scalability."
+HOMEPAGE = "https://software.intel.com/en-us/tbb"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=86d3f3a95c324c9479bd8986968f4327"
+
+DEPENDS_append_libc-musl = " libucontext"
+
+BRANCH = "onetbb_2021"
+SRCREV = "2dba2072869a189b9fdab3ffa431d3ea49059a19"
+SRC_URI = "git://github.com/oneapi-src/oneTBB.git;protocol=https;branch=${BRANCH} \
+            file://0001-mallinfo-is-glibc-specific-API-mark-it-so.patch \
+            file://GLIBC-PREREQ-is-not-defined-on-musl.patch \
+            file://0001-CMakeLists.txt-exclude-riscv64-riscv32.patch \
+            file://0001-Disable-use-of-_tpause-instruction.patch \
+"
+
+S = "${WORKDIR}/git"
+
+inherit cmake
+
+# test build fails, error: 'mallinfo mallinfo()' is deprecated
+EXTRA_OECMAKE += " \
+                    -DTBB_TEST=OFF \
+                    -DCMAKE_BUILD_TYPE=Release \
+                "
+
+
+# fails with thumb enabled:
+# | arm-oe-linux-gnueabi-g++  -march=armv7-a -mthumb -mthumb-interwork -mfloat-abi=softfp -mfpu=neon -mtune=cortex-a9 -mcpu=cortex-a9 -D__ARM__ -D__LINUX_ARM_ARCH__=7 -funwind-tables -mvectorize-with-neon-quad -rdynamic --sysroot=/OE/sysroots/m14tv -c -MMD -DTBB_USE_DEBUG  -g -O0 -DUSE_PTHREAD -fPIC -D__TBB_BUILD=1 -Wall -Wno-parentheses -Wno-non-virtual-dtor -O2 -pipe -g -feliminate-unused-debug-types -fpermissive -fvisibility-inlines-hidden   -I../../src -I../../src/rml/include -I../../include ../../src/tbb/concurrent_queue.cpp
+# | {standard input}: Assembler messages:
+# | {standard input}:250: Error: thumb conditional instruction should be in IT block -- `strexeq r2,r3,[r4]'
+# ...
+# | make[1]: *** [concurrent_queue.o] Error 1
+ARM_INSTRUCTION_SET = "arm"
+
+ASNEEDED = ""
+
+LDFLAGS_append_mips = " -latomic"
+LDFLAGS_append_mipsel = " -latomic"
+
+LDFLAGS_append_libc-musl = " -lucontext"
diff --git a/meta-openembedded/meta-oe/recipes-test/bats/bats_1.1.0.bb b/meta-openembedded/meta-oe/recipes-test/bats/bats_1.3.0.bb
similarity index 75%
rename from meta-openembedded/meta-oe/recipes-test/bats/bats_1.1.0.bb
rename to meta-openembedded/meta-oe/recipes-test/bats/bats_1.3.0.bb
index a817974..8190a5e 100644
--- a/meta-openembedded/meta-oe/recipes-test/bats/bats_1.1.0.bb
+++ b/meta-openembedded/meta-oe/recipes-test/bats/bats_1.3.0.bb
@@ -8,8 +8,8 @@
 
 SRC_URI = "git://github.com/bats-core/bats-core.git \
           "
-# v1.1.0
-SRCREV = "c706d1470dd1376687776bbe985ac22d09780327"
+# v1.3.0
+SRCREV = "9086c47854652f2731861b40385689c85f12103f"
 
 S = "${WORKDIR}/git"
 
@@ -18,4 +18,8 @@
 	${S}/install.sh ${D}${prefix}
 }
 
-RDEPENDS_bats = "bash"
+RDEPENDS_${PN} = "bash"
+FILES_${PN} += "${libdir}/bats-core/*"
+
+PACKAGECONFIG ??= "pretty"
+PACKAGECONFIG[pretty] = ",,,ncurses"
diff --git a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Add-correct-printf-qualifier-for-off_t.patch b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Add-correct-printf-qualifier-for-off_t.patch
index c2d679a..0d73d73 100644
--- a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Add-correct-printf-qualifier-for-off_t.patch
+++ b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Add-correct-printf-qualifier-for-off_t.patch
@@ -1,16 +1,15 @@
-From 613e5cfe7751068062cc92f83870e436669fc0a8 Mon Sep 17 00:00:00 2001
+From ee787b53d734cd952c170c9303d213d3dd18a86f Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Thu, 8 Jun 2017 16:49:50 -0700
-Subject: [PATCH] Add correct printf qualifier for off_t
+Subject: [PATCH 1/6] Add correct printf qualifier for off_t
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
 ---
- src/bios/ebda_region/ebda_region.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
+ src/bios/ebda_region/ebda_region.c | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
 
 diff --git a/src/bios/ebda_region/ebda_region.c b/src/bios/ebda_region/ebda_region.c
-index 16c39357..ad6d635c 100644
+index b70ced10..947a24bd 100644
 --- a/src/bios/ebda_region/ebda_region.c
 +++ b/src/bios/ebda_region/ebda_region.c
 @@ -83,9 +83,9 @@ static int ebda_test1(fwts_framework *fw)
@@ -25,14 +24,19 @@
  			(entry->end_address - entry->start_address) / 1024,
  			memory_map_name,
  			entry->start_address,
-@@ -93,8 +93,8 @@ static int ebda_test1(fwts_framework *fw)
+@@ -93,9 +93,9 @@ static int ebda_test1(fwts_framework *fw)
  	} else
  		fwts_failed(fw, LOG_LEVEL_MEDIUM,
  			"EBDAMappedNotReserved",
 -			"EBDA region mapped at 0x%lx but not reserved in the %s table.",
 -			ebda_addr, memory_map_name);
+-
 +			"EBDA region mapped at 0x%jdx but not reserved in the %s table.",
 +			(intmax_t)ebda_addr, memory_map_name);
- 		
++		
  	return FWTS_OK;
  }
+ 
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Include-poll.h-instead-of-deprecated-sys-poll.h.patch b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0002-Include-poll.h-instead-of-deprecated-sys-poll.h.patch
similarity index 82%
rename from meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Include-poll.h-instead-of-deprecated-sys-poll.h.patch
rename to meta-openembedded/meta-oe/recipes-test/fwts/fwts/0002-Include-poll.h-instead-of-deprecated-sys-poll.h.patch
index 4baefe4..8237933 100644
--- a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Include-poll.h-instead-of-deprecated-sys-poll.h.patch
+++ b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0002-Include-poll.h-instead-of-deprecated-sys-poll.h.patch
@@ -1,19 +1,18 @@
-From ed988c27efde5355c3ba9d0de8a14a4a40f798cc Mon Sep 17 00:00:00 2001
+From 1575b5ce3ecb8709806908061f689315553b40c7 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Tue, 6 Jun 2017 07:25:09 -0700
-Subject: [PATCH] Include poll.h instead of deprecated sys/poll.h
+Subject: [PATCH 2/6] Include poll.h instead of deprecated sys/poll.h
 
 Upstream-Status: Pending
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
 ---
  src/lib/src/fwts_ipmi.c   | 3 ++-
  src/lib/src/fwts_pipeio.c | 2 +-
  2 files changed, 3 insertions(+), 2 deletions(-)
 
 diff --git a/src/lib/src/fwts_ipmi.c b/src/lib/src/fwts_ipmi.c
-index a4c8a511..e298969e 100644
+index ca7c55bb..0b16bec3 100644
 --- a/src/lib/src/fwts_ipmi.c
 +++ b/src/lib/src/fwts_ipmi.c
 @@ -18,10 +18,11 @@
@@ -30,7 +29,7 @@
  #include <linux/ipmi.h>
  
 diff --git a/src/lib/src/fwts_pipeio.c b/src/lib/src/fwts_pipeio.c
-index 3b3cfaff..289564d1 100644
+index 716297c4..37752297 100644
 --- a/src/lib/src/fwts_pipeio.c
 +++ b/src/lib/src/fwts_pipeio.c
 @@ -30,9 +30,9 @@
@@ -44,3 +43,6 @@
  #include <sys/types.h>
  #include <sys/wait.h>
  #include <errno.h>
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Remove-Werror-from-build.patch b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-Remove-Werror-from-build.patch
similarity index 74%
rename from meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Remove-Werror-from-build.patch
rename to meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-Remove-Werror-from-build.patch
index 93a4221..906ec99 100644
--- a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Remove-Werror-from-build.patch
+++ b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-Remove-Werror-from-build.patch
@@ -1,16 +1,17 @@
-From 475979cf5c1af978f4e8409666365ec75b3320ea Mon Sep 17 00:00:00 2001
+From 7317aba872f2bcf052a7db9fa3c7a7ce3c55dc6b Mon Sep 17 00:00:00 2001
 From: Benjamin Berg <bberg@redhat.com>
 Date: Mon, 21 Aug 2017 10:34:40 +0200
-Subject: [PATCH] Remove -Werror from build
+Subject: [PATCH 3/6] Remove -Werror from build
 
 Upstream-Status: Pending
-
 ---
  src/Makefile.am           | 2 +-
  src/lib/src/Makefile.am   | 2 +-
  src/utilities/Makefile.am | 2 +-
  3 files changed, 3 insertions(+), 3 deletions(-)
 
+diff --git a/src/Makefile.am b/src/Makefile.am
+index a26a197b..70a28174 100644
 --- a/src/Makefile.am
 +++ b/src/Makefile.am
 @@ -14,7 +14,7 @@ AM_CPPFLAGS = \
@@ -22,6 +23,8 @@
  	-Wno-address-of-packed-member			\
  	-Wfloat-equal -Wmissing-declarations		\
  	-Wno-long-long -Wredundant-decls -Wshadow	\
+diff --git a/src/lib/src/Makefile.am b/src/lib/src/Makefile.am
+index 55c52b41..b85d0101 100644
 --- a/src/lib/src/Makefile.am
 +++ b/src/lib/src/Makefile.am
 @@ -25,7 +25,7 @@ AM_CPPFLAGS = \
@@ -33,6 +36,8 @@
  	-Wno-address-of-packed-member
  
  pkglib_LTLIBRARIES = libfwts.la
+diff --git a/src/utilities/Makefile.am b/src/utilities/Makefile.am
+index ecc25f0a..129c1036 100644
 --- a/src/utilities/Makefile.am
 +++ b/src/utilities/Makefile.am
 @@ -16,7 +16,7 @@
@@ -42,5 +47,8 @@
 -AM_CPPFLAGS = -Wall -Werror -Wextra -DDATAROOTDIR=\"$(datarootdir)\" \
 +AM_CPPFLAGS = -Wall -Wextra -DDATAROOTDIR=\"$(datarootdir)\" \
  	`pkg-config --silence-errors --cflags json` \
- 	`pkg-config --silence-errors --cflags json-c`
- 
+ 	`pkg-config --silence-errors --cflags json-c` \
+ 	-I../lib/include
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0002-Define-__SWORD_TYPE-if-not-defined-by-libc.patch b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0004-Define-__SWORD_TYPE-if-not-defined-by-libc.patch
similarity index 79%
rename from meta-openembedded/meta-oe/recipes-test/fwts/fwts/0002-Define-__SWORD_TYPE-if-not-defined-by-libc.patch
rename to meta-openembedded/meta-oe/recipes-test/fwts/fwts/0004-Define-__SWORD_TYPE-if-not-defined-by-libc.patch
index b45e46a..83d1cbb 100644
--- a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0002-Define-__SWORD_TYPE-if-not-defined-by-libc.patch
+++ b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0004-Define-__SWORD_TYPE-if-not-defined-by-libc.patch
@@ -1,7 +1,7 @@
-From 1112e51d240a206bdcf253878ef1f4963b92da8a Mon Sep 17 00:00:00 2001
+From 9456f2f779d3ed4a134d55571d8bec78ad3b28c1 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Tue, 6 Jun 2017 07:37:20 -0700
-Subject: [PATCH] Define __SWORD_TYPE if not defined by libc
+Subject: [PATCH 4/6] Define __SWORD_TYPE if not defined by libc
 
 __SWORD_TYPE is internal to glibc, therefore
 check and define it if needed e.g. on musl
@@ -9,16 +9,15 @@
 Upstream-Status: Pending
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
 ---
  src/lib/src/fwts_uefi.c | 4 ++++
  1 file changed, 4 insertions(+)
 
 diff --git a/src/lib/src/fwts_uefi.c b/src/lib/src/fwts_uefi.c
-index 544145fa..460b0b77 100644
+index 138f1164..13d9e36c 100644
 --- a/src/lib/src/fwts_uefi.c
 +++ b/src/lib/src/fwts_uefi.c
-@@ -59,6 +59,10 @@ typedef struct {
+@@ -63,6 +63,10 @@ typedef struct {
  #define UEFI_IFACE_SYSFS		(2)	/* sysfs */
  #define UEFI_IFACE_EFIVARS		(3)	/* efivar fs */
  
@@ -29,3 +28,6 @@
  /* File system magic numbers */
  #define PSTOREFS_MAGIC          ((__SWORD_TYPE)0x6165676C)
  #define EFIVARFS_MAGIC          ((__SWORD_TYPE)0xde5e81e4)
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-Undefine-PAGE_SIZE.patch b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0005-Undefine-PAGE_SIZE.patch
similarity index 83%
rename from meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-Undefine-PAGE_SIZE.patch
rename to meta-openembedded/meta-oe/recipes-test/fwts/fwts/0005-Undefine-PAGE_SIZE.patch
index 1d8c620..319e085 100644
--- a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-Undefine-PAGE_SIZE.patch
+++ b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0005-Undefine-PAGE_SIZE.patch
@@ -1,7 +1,7 @@
-From 244e9551ab9bbc1dfa91d19cd472ef254a94ae41 Mon Sep 17 00:00:00 2001
+From 53b9f97fb7faed043134f2ab738347b20379d32f Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Tue, 6 Jun 2017 07:39:28 -0700
-Subject: [PATCH] Undefine PAGE_SIZE
+Subject: [PATCH 5/6] Undefine PAGE_SIZE
 
 musl defines PAGE_SIZE and build complains
 of multiple definitions
@@ -9,13 +9,12 @@
 Upstream-Status: Pending
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
 ---
  src/lib/src/fwts_acpi_tables.c | 1 +
  1 file changed, 1 insertion(+)
 
 diff --git a/src/lib/src/fwts_acpi_tables.c b/src/lib/src/fwts_acpi_tables.c
-index bdd224aa..58e982a6 100644
+index dc42a8bd..4fa1246a 100644
 --- a/src/lib/src/fwts_acpi_tables.c
 +++ b/src/lib/src/fwts_acpi_tables.c
 @@ -42,6 +42,7 @@
@@ -26,3 +25,6 @@
  #define PAGE_SIZE	(4096)
  
  static fwts_acpi_table_info	tables[ACPI_MAX_TABLES];
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-use-intptr_t-to-fix-pointer-to-int-cast-issues.patch b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0006-use-intptr_t-to-fix-pointer-to-int-cast-issues.patch
similarity index 64%
rename from meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-use-intptr_t-to-fix-pointer-to-int-cast-issues.patch
rename to meta-openembedded/meta-oe/recipes-test/fwts/fwts/0006-use-intptr_t-to-fix-pointer-to-int-cast-issues.patch
index bebbfa4..eb8b0b7 100644
--- a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-use-intptr_t-to-fix-pointer-to-int-cast-issues.patch
+++ b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0006-use-intptr_t-to-fix-pointer-to-int-cast-issues.patch
@@ -1,25 +1,24 @@
-From 1848b8f8b9be500046ca5d632789a068d6151815 Mon Sep 17 00:00:00 2001
+From f723458eb649a9ad1d5d0e3dd6e801b284680fa7 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Thu, 8 Jun 2017 16:50:59 -0700
-Subject: [PATCH] use intptr_t to fix pointer-to-int-cast issues
+Subject: [PATCH 6/6] use intptr_t to fix pointer-to-int-cast issues
 
 uintptr_t is guaranteed to be wide enough that
 converting a void* to uintptr_t and back again
 will yield the original pointer value
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
 ---
  src/lib/src/fwts_acpi_tables.c | 4 ++--
  src/lib/src/fwts_mmap.c        | 2 +-
- src/lib/src/fwts_smbios.c      | 4 ++--
- 3 files changed, 5 insertions(+), 5 deletions(-)
+ src/lib/src/fwts_smbios.c      | 2 +-
+ 3 files changed, 4 insertions(+), 4 deletions(-)
 
 diff --git a/src/lib/src/fwts_acpi_tables.c b/src/lib/src/fwts_acpi_tables.c
-index 58e982a6..6522032f 100644
+index 4fa1246a..7ef197cd 100644
 --- a/src/lib/src/fwts_acpi_tables.c
 +++ b/src/lib/src/fwts_acpi_tables.c
-@@ -156,7 +156,7 @@ static fwts_acpi_table_rsdp *fwts_acpi_get_rsdp(fwts_framework *fw, void *addr,
+@@ -173,7 +173,7 @@ static fwts_acpi_table_rsdp *fwts_acpi_get_rsdp(fwts_framework *fw, void *addr,
  		return NULL;
  	}
  
@@ -28,7 +27,7 @@
  		return NULL;
  
  	if (fwts_safe_memcpy(rsdp, mem, sizeof(fwts_acpi_table_rsdp)) != FWTS_OK) {
-@@ -455,7 +455,7 @@ static int fwts_acpi_load_tables_from_firmware(fwts_framework *fw)
+@@ -486,7 +486,7 @@ static int fwts_acpi_load_tables_from_firmware(fwts_framework *fw)
  	if ((rsdp = fwts_acpi_get_rsdp(fw, rsdp_addr, &rsdp_len)) == NULL)
  		return FWTS_ERROR;
  
@@ -38,10 +37,10 @@
  	/* Load any tables from XSDT if it's valid */
  	if (rsdp->xsdt_address) {
 diff --git a/src/lib/src/fwts_mmap.c b/src/lib/src/fwts_mmap.c
-index e28abf87..2180b2cc 100644
+index 2f2514f1..fbd946f4 100644
 --- a/src/lib/src/fwts_mmap.c
 +++ b/src/lib/src/fwts_mmap.c
-@@ -81,7 +81,7 @@ int fwts_munmap(void *mem, const size_t size)
+@@ -82,7 +82,7 @@ int fwts_munmap(void *mem, const size_t size)
  	off_t offset;
  
  	page_size = fwts_page_size();
@@ -51,24 +50,18 @@
  	if (munmap((void *)((uint8_t *)mem - offset), size + offset) < 0)
  		return FWTS_ERROR;
 diff --git a/src/lib/src/fwts_smbios.c b/src/lib/src/fwts_smbios.c
-index e5b3c774..c8134926 100644
+index 8da572e9..04315bd3 100644
 --- a/src/lib/src/fwts_smbios.c
 +++ b/src/lib/src/fwts_smbios.c
-@@ -55,7 +55,7 @@ static void *fwts_smbios_find_entry_uefi(fwts_framework *fw, fwts_smbios_entry *
+@@ -78,7 +78,7 @@ static void *fwts_smbios_find_entry_uefi(
+ 	if ((addr = fwts_scan_efi_systab(smbios)) != NULL) {
  		fwts_smbios_entry *mapped_entry;
- 		const size_t size = sizeof(fwts_smbios_entry);
  
 -		if ((mapped_entry = fwts_mmap((off_t)addr, size)) != FWTS_MAP_FAILED) {
 +		if ((mapped_entry = fwts_mmap((uintptr_t)addr, size)) != FWTS_MAP_FAILED) {
  			if (fwts_safe_memcpy(entry, mapped_entry, size) == FWTS_OK) {
  				(void)fwts_munmap(mapped_entry, size);
  				*type  = FWTS_SMBIOS;
-@@ -91,7 +91,7 @@ static void *fwts_smbios30_find_entry_uefi(fwts_framework *fw, fwts_smbios30_ent
- 		fwts_smbios30_entry *mapped_entry;
- 		const size_t size = sizeof(fwts_smbios30_entry);
- 
--		if ((mapped_entry = fwts_mmap((off_t)addr, size)) != FWTS_MAP_FAILED) {
-+		if ((mapped_entry = fwts_mmap((uintptr_t)addr, size)) != FWTS_MAP_FAILED) {
- 			if (fwts_safe_memread(mapped_entry, size) == FWTS_OK) {
- 				*entry = *mapped_entry;
- 				(void)fwts_munmap(mapped_entry, size);
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-test/fwts/fwts_20.07.00.bb b/meta-openembedded/meta-oe/recipes-test/fwts/fwts_21.03.00.bb
similarity index 65%
rename from meta-openembedded/meta-oe/recipes-test/fwts/fwts_20.07.00.bb
rename to meta-openembedded/meta-oe/recipes-test/fwts/fwts_21.03.00.bb
index 28565eb..aa7d422 100644
--- a/meta-openembedded/meta-oe/recipes-test/fwts/fwts_20.07.00.bb
+++ b/meta-openembedded/meta-oe/recipes-test/fwts/fwts_21.03.00.bb
@@ -6,27 +6,27 @@
 LIC_FILES_CHKSUM = "file://src/main.c;beginline=1;endline=16;md5=31da590f3e9f3bd34dcdb9e4db568519"
 
 SRC_URI = "http://fwts.ubuntu.com/release/fwts-V${PV}.tar.gz;subdir=${BP} \
-           file://0001-Include-poll.h-instead-of-deprecated-sys-poll.h.patch \
-           file://0002-Define-__SWORD_TYPE-if-not-defined-by-libc.patch \
-           file://0003-Undefine-PAGE_SIZE.patch \
            file://0001-Add-correct-printf-qualifier-for-off_t.patch \
-           file://0003-use-intptr_t-to-fix-pointer-to-int-cast-issues.patch \
-           file://0001-Remove-Werror-from-build.patch \
+           file://0002-Include-poll.h-instead-of-deprecated-sys-poll.h.patch \
+           file://0003-Remove-Werror-from-build.patch \
+           file://0004-Define-__SWORD_TYPE-if-not-defined-by-libc.patch \
+           file://0005-Undefine-PAGE_SIZE.patch \
+           file://0006-use-intptr_t-to-fix-pointer-to-int-cast-issues.patch \
            "
-SRC_URI[sha256sum] = "4a8e0211b388efbcfcb6530297e9a924d0afa2d6db58e9db2f031129eda6d66f"
+SRC_URI[sha256sum] = "c22dcba2572e4237bf2fe9ab579e195cf051d3a99b2c07ab58f757cae02d24fb"
 
 COMPATIBLE_HOST = "(i.86|x86_64|aarch64|powerpc64).*-linux"
 
-DEPENDS = "libpcre json-c glib-2.0 dtc bison-native libbsd"
+DEPENDS = "libpcre glib-2.0 dtc bison-native libbsd"
 DEPENDS_append_libc-musl = " libexecinfo"
 
+# Use brokensep for now (https://github.com/ColinIanKing/fwts/issues/2)
 inherit autotools-brokensep bash-completion pkgconfig
 
-CFLAGS += "-I${STAGING_INCDIR}/json-c -Wno-error=unknown-pragmas"
 LDFLAGS_append_libc-musl = " -lexecinfo"
 
 FILES_${PN} += "${libdir}/fwts/lib*${SOLIBS}"
 FILES_${PN}-dev += "${libdir}/fwts/lib*${SOLIBSDEV} ${libdir}/fwts/lib*.la"
 FILES_${PN}-staticdev += "${libdir}/fwts/lib*a"
-FILES_${PN}-dbg += "${libdir}/fwts/.debug"
 
+RDEPENDS_${PN} += "dtc"