subtree updates

meta-openembedded: f3cdc9d7ee..0474e0b870:
  Alexander Amelkin (1):
        ipmitool: Update links

  Bhargav Das (1):
        python3-libevdev: Add recipe for python libevdev module.

  Changqing Li (1):
        redis: upgrade 6.2.11 -> 6.2.12

  Chen Qi (1):
        frr: add CVE_PRODUCT

  Diego Dassie (2):
        paho-mqtt-c: Disable building tests
        paho-mqtt-c: Improve performance

  Fabio Estevam (1):
        lvgl: lvgl-demo-fb: Inherit features_check

  Johannes Kauffmann (2):
        open62541: allow overriding encryption providers
        open62541: disable warnings as errors

  Jun Nie (3):
        libcbor: Add initial support
        python3-pefile: Add initial support
        python3-uswid: Add initial support

  Khem Raj (27):
        gitpkgv: Fix python deprecation warning
        python3-pyzstd: Disable LTO on clang+arm
        libftdi: Remove sysroot paths from .cmake files
        libencode-perl: Remove buildpaths from generated .exh files
        libcdio: Drop need for LIBCDIO_SOURCE_PATH
        enca: Remove buildpaths from target scripts
        libirecovery: Add missing build dependency on readline
        usbmuxd: Remove recipe for 1.1.1
        usbmuxd: Updgrade to latest on master branch
        packagegroup-meta-oe: Add kpatch for glibc + x86_64 only
        packagegroup-meta-oe: Remove minicoredumper-ptest for musl
        libimobiledevice: Delete recipe for 1.3.0
        libimobiledevice: Update to latest tip
        libimobiledevice: Fix build with clang
        idevicerestore: Update to latest on master branch
        libpaper: Add recipe
        psutils: Add recipe
        nodejs: Upgrade to 18.16.0
        python3-pylint: Fix missing deps for ptests
        etcd: Inherit missing features_check
        fftw: Remove hardcoded sysroot into binaries
        lmdb: Pass CFLAGS to Makefile
        squid: Remove buildpaths from generated binaries
        libiio: Do not generate lineinfo in lex/yacc generated files
        php: Remove buildpaths from scripts and generated headers
        uw-imap: Pass CFLAGS from environment
        libmad: Add a patch to pass cflags to build

  Marcel Ziswiler (1):
        libusbgx: fix device hot-plug use case

  Marek Vasut (7):
        lvgl: Upgrade lvgl to 8.3.7 and lv-driver to 8.3.0
        lvgl: Activate custom tick implementation
        lvgl: Add configurable color depth, default to 32bpp
        lvgl: Support both fbdev and wayland backends
        lvgl: Update lvgl-demo-fb to 8.3.0
        lvgl: Upgrade dialog-lvgl to next/main version
        lvgl: Add dependency on fbdev into lvgl-demo-fb DISTRO_FEATURES

  Markus Volk (12):
        xdg-desktop-portal-wlr: update 0.6.0 -> 0.7.0
        python3-pillow: add libxcb to RDEPENDS for x11
        adw-gtk3: update 4.5 -> 4.6
        paprefs: add recipe
        imaagemagick: update 7.1.1-5 -> 7.1.1-8
        fuse3: update 3.12.0 -> 3.14.1
        gnome-software: update 44.0 -> 44.1
        gjs: update 1.75.1 -> 1.76.0
        evince: update 44.0 -> 44.1
        gdm: update 44.0 -> 44.1
        xdg-desktop-portal-gnome: update 44.0 -> 44.1
        libcamera: update 0.0.4 -> 0.0.5

  Martin Jansa (18):
        glfw: respect DISTRO_FEATURES when enabling x11 in default PACKAGECONFIG and return it to REQUIRED_DISTRO_FEATURES
        libreport: add dependency on libarchive
        libxmlb: add missing dependency on glib-2.0 and xz
        geoclue: fix build without gobject-introspection-data
        appstream: fix build without gobject-introspection-data
        ostree: fix build without gobject-introspection-data
        rdfind: fix build with -Werror=return-type
        spice-gtk: respect gobject-introspection-data
        cpulimit: fix do_install with multilib
        libnfs: fix installed-vs-shipped issues with multilib
        btrfsmaintenance: install to ${datadir}/${BPN}
        libtomcrypt: pass LIBPATH to fix installed-vs-shipped with multilib
        nanopb: fix installed-vs-shipped with multilib
        nv-codec-headers: fix installed-vs-shipped with multilib
        zfs: fix installation paths for multilib
        poppler: add dependency on glib-2.0-native
        paprefs: add x11 to REQUIRED_DISTRO_FEATURES
        etcd: don't hardcode /usr/lib in do_install

  Matija Tudan (1):
        serial: add recipe for version 1.2.1

  Ming Liu (4):
        libusbgx: uprev to the latest commit
        libusbgx: fix some systemd service conditions
        libusbgx: drop hard-coded /usr/bin,/etc
        libusbgx: check scripts in /etc/usbgx.d

  Mingli Yu (1):
        minicoredumper: correct the sysvinit service file attribute

  Petr Gotthard (4):
        strongswan: add PACKAGECONFIG for the NetworkManager module
        openfortivpn: add new recipe
        networkmanager-fortisslvpn: add new recipe
        networkmanager-openconnect: add new recipe

  Ross Burton (6):
        v4l-utils: do out-of-tree builds
        python3-ninja: simplify recipe
        libisofs: add new recipe
        libburn: move to meta-filesystems
        libisoburn: add new recipe
        xorriso: remove obsolete recipe

  Trevor Gamblin (9):
        python3-pytest-mock: Add recipe
        python3-tomlkit: Add recipe
        ptest-packagelists-meta-python: Add new tests
        python3-platformdirs: Add recipe
        python3-pylint: upgrade 2.14.5 -> 2.17.3
        python3-pylint: add ptest
        ptest-packagelists-meta-python: Add new tests
        python3-pylint: upgrade 2.17.3 -> 2.17.4
        python3-pylint: omit failing pickle test

  Vasileios Anagnostopoulos (1):
        asio: update to 1.28.0

  Wang Mingyu (74):
        abseil-cpp: upgrade 20230125.2 -> 20230125.3
        appstream: upgrade 0.16.1 -> 0.16.2
        babl: upgrade 0.1.104 -> 0.1.106
        audit: upgrade 3.1 -> 3.1.1
        boost-sml: upgrade 1.1.6 -> 1.1.8
        ctags: upgrade 6.0.20230416.0 -> 6.0.20230430.0
        eog: upgrade 44.0 -> 44.1
        gspell: upgrade 1.12.0 -> 1.12.1
        etcd-cpp-apiv3: upgrade 0.14.2 -> 0.14.3
        googlebenchmark: upgrade 1.7.1 -> 1.8.0
        hwdata: upgrade 0.369 -> 0.370
        libbpf: upgrade 1.1.0 -> 1.2.0
        iozone3: upgrade 492 -> 506
        libadwaita: upgrade 1.3.1 -> 1.3.2
        libcgi-perl: upgrade 4.56 -> 4.57
        libjs-jquery-cookie: upgrade 3.0.1 -> 3.0.5
        libmodule-build-tiny-perl: upgrade 0.043 -> 0.045
        log4cpp: upgrade 1.1.3 -> 1.1.4
        nautilus: upgrade 44.0 -> 44.1
        makedumpfile: upgrade 1.7.2 -> 1.7.3
        mg: upgrade 20230406 -> 20230501
        python3-yarl: upgrade 1.8.2 -> 1.9.2
        python3-alembic: upgrade 1.10.3 -> 1.10.4
        python3-cassandra-driver: upgrade 3.26.0 -> 3.27.0
        python3-can: upgrade 4.1.0 -> 4.2.0
        python3-astroid: upgrade 2.15.3 -> 2.15.4
        python3-argcomplete: upgrade 3.0.5 -> 3.0.8
        python3-coverage: upgrade 7.2.3 -> 7.2.5
        python3-imageio: upgrade 2.27.0 -> 2.28.1
        python3-gast: upgrade 0.5.3 -> 0.5.4
        python3-langtable: upgrade 0.0.61 -> 0.0.62
        python3-flask-socketio: upgrade 5.3.3 -> 5.3.4
        python3-elementpath: upgrade 4.1.1 -> 4.1.2
        python3-nocasedict: upgrade 2.0.0 -> 2.0.1
        python3-protobuf: upgrade 4.22.3 -> 4.22.4
        python3-pint: upgrade 0.20.1 -> 0.21
        python3-pulsectl: upgrade 22.3.2 -> 23.5.0
        python3-pika: upgrade 1.3.1 -> 1.3.2
        python3-pymisp: upgrade 2.4.170.1 -> 2.4.170.2
        python3-pyudev: upgrade 0.24.0 -> 0.24.1
        python3-regex: upgrade 2023.3.23 -> 2023.5.5
        python3-rich: upgrade 13.3.4 -> 13.3.5
        python3-smpplib: upgrade 2.2.2 -> 2.2.3
        python3-sentry-sdk: upgrade 1.20.0 -> 1.22.1
        python3-sqlalchemy: upgrade 2.0.9 -> 2.0.12
        python3-termcolor: upgrade 2.2.0 -> 2.3.0
        python3-twitter: upgrade 4.13.0 -> 4.14.0
        python3-web3: upgrade 6.2.0 -> 6.3.0
        tracker: upgrade 3.5.0 -> 3.5.1
        python3-zeroconf: upgrade 0.56.0 -> 0.62.0
        python3-xstatic: upgrade 1.0.2 -> 1.0.3
        python3-requests-toolbelt: upgrade 0.10.1 -> 1.0.0
        libimobiledevice-glue: SRCREV bump d2ff796..114098d
        libplist: upgrade 2.2.0 -> 2.3.0
        ctags: upgrade 6.0.20230430.0 -> 6.0.20230507.0
        libnet-dns-perl: upgrade 1.37 -> 1.38
        libdivecomputer: upgrade 0.7.0 -> 0.8.0
        python3-platformdirs: upgrade 3.5.0 -> 3.5.1
        python3-sympy: upgrade 1.11.1 -> 1.12
        python3-google-auth: upgrade 2.17.3 -> 2.18.0
        php: upgrade 8.2.5 -> 8.2.6
        postgresql: upgrade 15.2 -> 15.3
        python3-protobuf: upgrade 4.22.4 -> 4.23.0
        python3-pulsectl: upgrade 23.5.0 -> 23.5.1
        python3-pymisp: upgrade 2.4.170.2 -> 2.4.171
        python3-pyjwt: upgrade 2.6.0 -> 2.7.0
        python3-redis: upgrade 4.5.4 -> 4.5.5
        python3-pytest-xdist: upgrade 3.2.1 -> 3.3.0
        python3-sentry-sdk: upgrade 1.22.1 -> 1.22.2
        python3-typeguard: upgrade 3.0.2 -> 4.0.0
        python3-sqlalchemy: upgrade 2.0.12 -> 2.0.13
        python3-websockets: upgrade 11.0.2 -> 11.0.3
        xterm: upgrade 379 -> 380
        wavpack: upgrade 4.60.1 -> 5.1.0

  Xiangyu Chen (1):
        pahole: fix native package build error

  ojayanth (2):
        etcd: systemd unit support to start existing etcd node
        etcd: add systemd unit support for clustering

poky: 76cec94fad..35e5d29a7d:
  Alexander Kanavin (1):
        gcr: consider all versions, not only x.even.y

  Andrew Jeffery (1):
        Revert "ipk: Decode byte data to string in manifest handling"

  Anuj Mittal (2):
        gstreamer1.0: upgrade 1.22.0 -> 1.22.2
        vte: upgrade 0.72.0 -> 0.72.1

  Chen Qi (1):
        sqlite3: update CVE_PRODUCT

  Frederic Martinsons (1):
        ptest-cargo.bbclass: add the possibility to define test arguments

  Khem Raj (3):
        musl: Update to 1.2.4 release
        cpio: Run ptests under ptest user
        python3-requests: Upgrade to 2.30.0

  Luca Ceresoli (2):
        ref-manual: classes: kernel: remove incorrect sentence opening
        ref-manual: classes: kernel: document automatic defconfig usage

  Martin Jansa (1):
        populate_sdk_base.bbclass: respect MLPREFIX for ptest-pkgs's ptest-runner

  Michael Opdenacker (2):
        migration-guides: start of 4.3 migration and release notes
        ref-manual: document FIT_ADDRESS_CELLS

  Paul Gortmaker (1):
        yocto-bsp: drop MIPS Edgerouter support

  Qiu Tingting (1):
        e2fsprogs: fix ptest bug for second running

  Richard Purdie (5):
        migration/release-notes-4.3: Add extra notes
        qemu: Update ppc instruction fix to match revised upstream version
        glib-networking: Add test retry to avoid failures
        glib-networking: Correct glib error handling in test patch
        qemu: Further updates to the ppc patch after upstream discussion

  Ross Burton (6):
        gdb: fix crashes when debugging threads with Arm Pointer Authentication enabled
        Revert "ffmpeg: move ffmpeg config into packageconfig"
        ffmpeg: add v4l2 PACKAGECONFIG
        python3: use libedit instead of readline
        python3: clean up PACKAGECONFIG
        python3: use system expat

  Tim Orling (2):
        python3-urllib3: upgrade 1.26.15 -> 2.0.2
        python3-attrs: upgrade 22.2.0 -> 23.1.0

  Trevor Gamblin (3):
        python3-trove-classifiers: Add recipe
        python3-hatchling: upgrade 1.13.0 -> 1.14.1
        python3-calver: Add recipe

  Zang Ruochen (1):
        elfutils: upgrade 0.188 -> 0.189

  nikhil (1):
        tiff: Remove unused patch from tiff

Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: I5304cb7a7ca3c09a110f52fa5b2844f5f00f4851
diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/run-ptest b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/run-ptest
index c97c037..279923d 100644
--- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/run-ptest
+++ b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/run-ptest
@@ -8,3 +8,4 @@
 rm -f *.ok
 rm -f *.failed
 rm -f *.log
+cp ../data/test_data.tmp ./
diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.47.0.bb b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.47.0.bb
index f29c55e..d3786d6 100644
--- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.47.0.bb
+++ b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.47.0.bb
@@ -141,4 +141,7 @@
 
         install -d ${D}${PTEST_PATH}/lib
         install -m 0644 ${B}/lib/config.h  ${D}${PTEST_PATH}/lib/
+
+        install -d ${D}${PTEST_PATH}/data
+        install -m 0644 ${B}/tests/test_data.tmp ${D}${PTEST_PATH}/data/
 }
diff --git a/poky/meta/recipes-devtools/elfutils/elfutils_0.188.bb b/poky/meta/recipes-devtools/elfutils/elfutils_0.189.bb
similarity index 95%
rename from poky/meta/recipes-devtools/elfutils/elfutils_0.188.bb
rename to poky/meta/recipes-devtools/elfutils/elfutils_0.189.bb
index 74271b2..236f8ce 100644
--- a/poky/meta/recipes-devtools/elfutils/elfutils_0.188.bb
+++ b/poky/meta/recipes-devtools/elfutils/elfutils_0.189.bb
@@ -21,15 +21,12 @@
            file://0001-skip-the-test-when-gcc-not-deployed.patch \
            file://ptest.patch \
            file://0001-tests-Makefile.am-compile-test_nlist-with-standard-C.patch \
-           file://0001-PR29926-debuginfod-Fix-usage-of-deprecated-CURLINFO_.patch \
-           file://0002-debuginfod-client-Use-CURLOPT_PROTOCOLS_STR-for-libc.patch \
-           file://handle_DW_TAG_unspecified_type.patch \
            "
 SRC_URI:append:libc-musl = " \
            file://0003-musl-utils.patch \
            file://0015-config-eu.am-do-not-use-Werror.patch \
            "
-SRC_URI[sha256sum] = "fb8b0e8d0802005b9a309c60c1d8de32dd2951b56f0c3a3cb56d21ce01595dff"
+SRC_URI[sha256sum] = "39bd8f1a338e2b7cd4abc3ff11a0eddc6e690f69578a57478d8179b4148708c8"
 
 inherit autotools gettext ptest pkgconfig
 
diff --git a/poky/meta/recipes-devtools/elfutils/files/0001-PR29926-debuginfod-Fix-usage-of-deprecated-CURLINFO_.patch b/poky/meta/recipes-devtools/elfutils/files/0001-PR29926-debuginfod-Fix-usage-of-deprecated-CURLINFO_.patch
deleted file mode 100644
index ee192e3..0000000
--- a/poky/meta/recipes-devtools/elfutils/files/0001-PR29926-debuginfod-Fix-usage-of-deprecated-CURLINFO_.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From d2bf497b12fbd49b4996ccf0744303ffd67735b1 Mon Sep 17 00:00:00 2001
-From: Andrew Paprocki <andrew@ishiboo.com>
-Date: Wed, 21 Dec 2022 11:15:00 -0500
-Subject: [PATCH] PR29926: debuginfod: Fix usage of deprecated CURLINFO_*
-
-The `CURLINFO_SIZE_DOWNLOAD_T` and `CURLINFO_CONTENT_LENGTH_DOWNLOAD_T`
-identifiers are `enum`s, not pre-processor definitions, so the current
-`#ifdef` logic is not selecting the newer API.  This results in the
-older identifiers being used and they now generate errors when compiled
-against Curl 7.87, which has silently deprecated them, causing GCC to
-emit `-Werror=deprecated-declarations`.
-
-Instead, the newer identifiers were added in Curl 7.55, so explicitly
-check for `CURL_AT_LEAST_VERSION(7, 55, 0)` instead of the current
-logic.  This eliminates the error when compiling against Curl 7.87.
-
-Ref: https://github.com/curl/curl/pull/1511
-
-Upstream-Status: Backport [https://sourceware.org/git/?p=elfutils.git;a=commit;h=d2bf497b12fbd49b4996ccf0744303ffd67735b1]
-Signed-off-by: Andrew Paprocki <andrew@ishiboo.com>
----
- debuginfod/debuginfod-client.c | 4 ++--
- 2 files changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/debuginfod/debuginfod-client.c b/debuginfod/debuginfod-client.c
-index 8873fcc8..692aecce 100644
---- a/debuginfod/debuginfod-client.c
-+++ b/debuginfod/debuginfod-client.c
-@@ -1456,7 +1456,7 @@ debuginfod_query_server (debuginfod_client *c,
-              deflate-compressing proxies, this number is likely to be
-              unavailable, so -1 may show. */
-           CURLcode curl_res;
--#ifdef CURLINFO_CONTENT_LENGTH_DOWNLOAD_T
-+#if CURL_AT_LEAST_VERSION(7, 55, 0)
-           curl_off_t cl;
-           curl_res = curl_easy_getinfo(target_handle,
-                                        CURLINFO_CONTENT_LENGTH_DOWNLOAD_T,
-@@ -1491,7 +1491,7 @@ debuginfod_query_server (debuginfod_client *c,
-           if (target_handle) /* we've committed to a server; report its download progress */
-             {
-               CURLcode curl_res;
--#ifdef CURLINFO_SIZE_DOWNLOAD_T
-+#if CURL_AT_LEAST_VERSION(7, 55, 0)
-               curl_off_t dl;
-               curl_res = curl_easy_getinfo(target_handle,
-                                            CURLINFO_SIZE_DOWNLOAD_T,
--- 
-2.39.1
-
diff --git a/poky/meta/recipes-devtools/elfutils/files/0002-debuginfod-client-Use-CURLOPT_PROTOCOLS_STR-for-libc.patch b/poky/meta/recipes-devtools/elfutils/files/0002-debuginfod-client-Use-CURLOPT_PROTOCOLS_STR-for-libc.patch
deleted file mode 100644
index 2d4c912..0000000
--- a/poky/meta/recipes-devtools/elfutils/files/0002-debuginfod-client-Use-CURLOPT_PROTOCOLS_STR-for-libc.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 6560fb26a62ef135a804357ef4f15a47de3e49b3 Mon Sep 17 00:00:00 2001
-From: Mark Wielaard <mark@klomp.org>
-Date: Tue, 10 Jan 2023 23:20:41 +0100
-Subject: [PATCH] debuginfod-client: Use CURLOPT_PROTOCOLS_STR for libcurl >= 7.85.0
-
-https://sourceware.org/bugzilla/show_bug.cgi?id=29926
-
-Upstream-Status: Backport [https://sourceware.org/git/?p=elfutils.git;a=commit;h=6560fb26a62ef135a804357ef4f15a47de3e49b3]
-Signed-off-by: Mark Wielaard <mark@klomp.org>
----
- debuginfod/debuginfod-client.c | 5 +++++
- 2 files changed, 10 insertions(+)
-
-diff --git a/debuginfod/debuginfod-client.c b/debuginfod/debuginfod-client.c
-index a16165bd..1ce45632 100644
---- a/debuginfod/debuginfod-client.c
-+++ b/debuginfod/debuginfod-client.c
-@@ -1336,8 +1336,13 @@ debuginfod_query_server (debuginfod_client *c,
- 
-       /* Only allow http:// + https:// + file:// so we aren't being
- 	 redirected to some unsupported protocol.  */
-+#if CURL_AT_LEAST_VERSION(7, 85, 0)
-+      curl_easy_setopt_ck(data[i].handle, CURLOPT_PROTOCOLS_STR,
-+			  "http,https,file");
-+#else
-       curl_easy_setopt_ck(data[i].handle, CURLOPT_PROTOCOLS,
- 			  (CURLPROTO_HTTP | CURLPROTO_HTTPS | CURLPROTO_FILE));
-+#endif
-       curl_easy_setopt_ck(data[i].handle, CURLOPT_URL, data[i].url);
-       if (vfd >= 0)
- 	curl_easy_setopt_ck(data[i].handle, CURLOPT_ERRORBUFFER,
--- 
-2.39.1
-
diff --git a/poky/meta/recipes-devtools/elfutils/files/0015-config-eu.am-do-not-use-Werror.patch b/poky/meta/recipes-devtools/elfutils/files/0015-config-eu.am-do-not-use-Werror.patch
index a771558..fd1ec01 100644
--- a/poky/meta/recipes-devtools/elfutils/files/0015-config-eu.am-do-not-use-Werror.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/0015-config-eu.am-do-not-use-Werror.patch
@@ -14,20 +14,19 @@
 ---
  config/eu.am | 2 --
  1 file changed, 2 deletions(-)
-
 diff --git a/config/eu.am b/config/eu.am
-index 58cd3c4..ac42390 100644
+index e6c241f..4136e7c 100644
 --- a/config/eu.am
 +++ b/config/eu.am
-@@ -91,7 +91,6 @@ AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \
- 	    -Wold-style-definition -Wstrict-prototypes $(TRAMPOLINES_WARNING) \
+@@ -99,7 +99,6 @@ AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \
  	    $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \
  	    $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \
+ 	    $(USE_AFTER_FREE3_WARNING) \
 -	    $(if $($(*F)_no_Werror),,-Werror) \
  	    $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \
  	    $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
  	    $(if $($(*F)_no_Wpacked_not_aligned),$(NO_PACKED_NOT_ALIGNED_WARNING),) \
-@@ -101,7 +100,6 @@ AM_CXXFLAGS = -std=c++11 -Wall -Wshadow \
+@@ -109,7 +108,6 @@ AM_CXXFLAGS = -std=c++11 -Wall -Wshadow \
  	   $(TRAMPOLINES_WARNING) \
  	   $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \
  	   $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \
@@ -35,3 +34,4 @@
  	   $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \
  	   $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
  	   $(if $($(*F)_no_Wpacked_not_aligned),$(NO_PACKED_NOT_ALIGNED_WARNING),) \
+-- 
diff --git a/poky/meta/recipes-devtools/elfutils/files/handle_DW_TAG_unspecified_type.patch b/poky/meta/recipes-devtools/elfutils/files/handle_DW_TAG_unspecified_type.patch
deleted file mode 100644
index 8cab01c..0000000
--- a/poky/meta/recipes-devtools/elfutils/files/handle_DW_TAG_unspecified_type.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-From: Mark Wielaard <mark@klomp.org>
-Date: Thu, 26 Jan 2023 17:19:15 +0000 (+0100)
-Subject: backends: Handle DW_TAG_unspecified_type in dwarf_peeled_die_type
-X-Git-Url: https://sourceware.org/git/?p=elfutils.git;a=commitdiff_plain;h=f2c522567ad63ac293535fba9704895e685ab5bc;hp=3fa98a6f29b0f370e32549ead7eb897c839af980
-
-backends: Handle DW_TAG_unspecified_type in dwarf_peeled_die_type
-
-binutils 2.40 introduces DW_TAG_unspecified_type for assembly
-functions with an unknown return type. This breaks the
-run-funcretval.sh testcase because dwfl_module_return_value_location
-returns an error for such functions because it cannot determine the
-return value location. Fix that by treating DW_TAG_unspecified_type
-as if the DIE doesn't have a DW_AT_type.
-
-Also update the testcase to explicitly checking for
-DW_TAG_unspecified_type and printing "returns unspecified type".
-
-https://sourceware.org/bugzilla/show_bug.cgi?id=30047
-
-Upstream-Status: Backport [https://sourceware.org/git/?p=elfutils.git;a=commitdiff;h=f2c522567ad63ac293535fba9704895e685ab5bc;hp=3fa98a6f29b0f370e32549ead7eb897c839af980]
-Signed-off-by: Mark Wielaard <mark@klomp.org>
----
-
---- a/backends/libebl_CPU.h
-+++ b/backends/libebl_CPU.h
-@@ -1,5 +1,6 @@
- /* Common interface for libebl modules.
-    Copyright (C) 2000, 2001, 2002, 2003, 2005, 2013, 2014 Red Hat, Inc.
-+   Copyright (C) 2023 Mark J. Wielaard <mark@klomp.org>
-    This file is part of elfutils.
- 
-    This file is free software; you can redistribute it and/or modify
-@@ -53,7 +54,9 @@ extern bool (*generic_debugscn_p) (const
-      dwarf_tag (_die); })
- 
- /* Get a type die corresponding to DIE.  Peel CV qualifiers off
--   it.  */
-+   it.  Returns zero if the DIE doesn't have a type, or the type
-+   is DW_TAG_unspecified_type.  Returns -1 on error.  Otherwise
-+   returns the result tag DW_AT value.  */
- static inline int
- dwarf_peeled_die_type (Dwarf_Die *die, Dwarf_Die *result)
- {
-@@ -69,7 +72,14 @@ dwarf_peeled_die_type (Dwarf_Die *die, D
-   if (dwarf_peel_type (result, result) != 0)
-     return -1;
- 
--  return DWARF_TAG_OR_RETURN (result);
-+  if (result == NULL)
-+    return -1;
-+
-+  int tag = dwarf_tag (result);
-+  if (tag == DW_TAG_unspecified_type)
-+    return 0; /* Treat an unspecified type as if there was no type.  */
-+
-+  return tag;
- }
- 
- #endif	/* libebl_CPU.h */
---- a/tests/funcretval.c
-+++ b/tests/funcretval.c
-@@ -1,5 +1,6 @@
- /* Test program for dwfl_module_return_value_location.
-    Copyright (C) 2005 Red Hat, Inc.
-+   Copyright (C) 2023 Mark J. Wielaard <mark@klomp.org>
-    This file is part of elfutils.
- 
-    This file is free software; you can redistribute it and/or modify
-@@ -67,7 +68,18 @@ handle_function (Dwarf_Die *funcdie, voi
-     error (EXIT_FAILURE, 0, "dwfl_module_return_value_location: %s",
- 	   dwfl_errmsg (-1));
-   else if (nlocops == 0)
--    puts ("returns no value");
-+    {
-+      // Check if this is the special unspecified type
-+      // https://sourceware.org/bugzilla/show_bug.cgi?id=30047
-+      Dwarf_Die die_mem, *typedie = &die_mem;
-+      Dwarf_Attribute attr_mem, *attr;
-+      attr = dwarf_attr_integrate (funcdie, DW_AT_type, &attr_mem);
-+      if (dwarf_formref_die (attr, typedie) != NULL
-+	  && dwarf_tag (typedie) == DW_TAG_unspecified_type)
-+	puts ("returns unspecified type");
-+      else
-+	puts ("returns no value");
-+    }
-   else
-     {
-       printf ("return value location:");
diff --git a/poky/meta/recipes-devtools/gdb/gdb.inc b/poky/meta/recipes-devtools/gdb/gdb.inc
index 9457c27..8589de6 100644
--- a/poky/meta/recipes-devtools/gdb/gdb.inc
+++ b/poky/meta/recipes-devtools/gdb/gdb.inc
@@ -15,6 +15,7 @@
            file://0008-Define-alignof-using-_Alignof-when-using-C11-or-newe.patch \
            file://0009-gdbserver-linux-low.cc-Fix-a-typo-in-ternary-operato.patch \
            file://add-missing-ldflags.patch \
+           file://0001-aarch64-Check-for-valid-inferior-thread-regcache-bef.patch \
            "
 SRC_URI[sha256sum] = "115ad5c18d69a6be2ab15882d365dda2a2211c14f480b3502c6eba576e2e95a0"
 
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0001-aarch64-Check-for-valid-inferior-thread-regcache-bef.patch b/poky/meta/recipes-devtools/gdb/gdb/0001-aarch64-Check-for-valid-inferior-thread-regcache-bef.patch
new file mode 100644
index 0000000..9adf4a4
--- /dev/null
+++ b/poky/meta/recipes-devtools/gdb/gdb/0001-aarch64-Check-for-valid-inferior-thread-regcache-bef.patch
@@ -0,0 +1,286 @@
+From b3eff3e15576229af9bae026c5c23ee694b90389 Mon Sep 17 00:00:00 2001
+From: Luis Machado <luis.machado@arm.com>
+Date: Fri, 24 Mar 2023 07:58:38 +0000
+Subject: [PATCH] aarch64: Check for valid inferior thread/regcache before
+ reading pauth registers
+
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+There were reports of gdb throwing internal errors when calling
+inferior_thread ()/get_current_regcache () on a system with
+Pointer Authentication enabled.
+
+In such cases, gdb produces the following backtrace, or a variation
+of it (for gdb's with the non-address removal implemented only in
+the aarch64-linux-tdep.c file).
+
+../../../repos/binutils-gdb/gdb/thread.c:86: internal-error: inferior_thread: Assertion `current_thread_ != nullptr' failed.
+A problem internal to GDB has been detected,
+further debugging may prove unreliable.
+----- Backtrace -----
+0xaaaae04a571f gdb_internal_backtrace_1
+        ../../../repos/binutils-gdb/gdb/bt-utils.c:122
+0xaaaae04a57f3 _Z22gdb_internal_backtracev
+        ../../../repos/binutils-gdb/gdb/bt-utils.c:168
+0xaaaae0b52ccf internal_vproblem
+        ../../../repos/binutils-gdb/gdb/utils.c:401
+0xaaaae0b5310b _Z15internal_verrorPKciS0_St9__va_list
+        ../../../repos/binutils-gdb/gdb/utils.c:481
+0xaaaae0e24b8f _Z18internal_error_locPKciS0_z
+        ../../../repos/binutils-gdb/gdbsupport/errors.cc:58
+0xaaaae0a88983 _Z15inferior_threadv
+        ../../../repos/binutils-gdb/gdb/thread.c:86
+0xaaaae0956c87 _Z20get_current_regcachev
+        ../../../repos/binutils-gdb/gdb/regcache.c:428
+0xaaaae035223f aarch64_remove_non_address_bits
+        ../../../repos/binutils-gdb/gdb/aarch64-tdep.c:3572
+0xaaaae03e8abb _Z31gdbarch_remove_non_address_bitsP7gdbarchm
+        ../../../repos/binutils-gdb/gdb/gdbarch.c:3109
+0xaaaae0a692d7 memory_xfer_partial
+        ../../../repos/binutils-gdb/gdb/target.c:1620
+0xaaaae0a695e3 _Z19target_xfer_partialP10target_ops13target_objectPKcPhPKhmmPm
+        ../../../repos/binutils-gdb/gdb/target.c:1684
+0xaaaae0a69e9f target_read_partial
+        ../../../repos/binutils-gdb/gdb/target.c:1937
+0xaaaae0a69fdf _Z11target_readP10target_ops13target_objectPKcPhml
+        ../../../repos/binutils-gdb/gdb/target.c:1977
+0xaaaae0a69937 _Z18target_read_memorymPhl
+        ../../../repos/binutils-gdb/gdb/target.c:1773
+0xaaaae08be523 ps_xfer_memory
+        ../../../repos/binutils-gdb/gdb/proc-service.c:90
+0xaaaae08be6db ps_pdread
+        ../../../repos/binutils-gdb/gdb/proc-service.c:124
+0x40001ed7c3b3 _td_fetch_value
+        /build/glibc-RIFKjK/glibc-2.31/nptl_db/fetch-value.c:115
+0x40001ed791ef td_ta_map_lwp2thr
+        /build/glibc-RIFKjK/glibc-2.31/nptl_db/td_ta_map_lwp2thr.c:194
+0xaaaae07f4473 thread_from_lwp
+        ../../../repos/binutils-gdb/gdb/linux-thread-db.c:413
+0xaaaae07f6d6f _ZN16thread_db_target4waitE6ptid_tP17target_waitstatus10enum_flagsI16target_wait_flagE
+        ../../../repos/binutils-gdb/gdb/linux-thread-db.c:1420
+0xaaaae0a6b33b _Z11target_wait6ptid_tP17target_waitstatus10enum_flagsI16target_wait_flagE
+        ../../../repos/binutils-gdb/gdb/target.c:2586
+0xaaaae0789cf7 do_target_wait_1
+        ../../../repos/binutils-gdb/gdb/infrun.c:3825
+0xaaaae0789e6f operator()
+        ../../../repos/binutils-gdb/gdb/infrun.c:3884
+0xaaaae078a167 do_target_wait
+        ../../../repos/binutils-gdb/gdb/infrun.c:3903
+0xaaaae078b0af _Z20fetch_inferior_eventv
+        ../../../repos/binutils-gdb/gdb/infrun.c:4314
+0xaaaae076652f _Z22inferior_event_handler19inferior_event_type
+        ../../../repos/binutils-gdb/gdb/inf-loop.c:41
+0xaaaae07dc68b handle_target_event
+        ../../../repos/binutils-gdb/gdb/linux-nat.c:4206
+0xaaaae0e25fbb handle_file_event
+        ../../../repos/binutils-gdb/gdbsupport/event-loop.cc:573
+0xaaaae0e264f3 gdb_wait_for_event
+        ../../../repos/binutils-gdb/gdbsupport/event-loop.cc:694
+0xaaaae0e24f9b _Z16gdb_do_one_eventi
+        ../../../repos/binutils-gdb/gdbsupport/event-loop.cc:217
+0xaaaae080f033 start_event_loop
+        ../../../repos/binutils-gdb/gdb/main.c:411
+0xaaaae080f1b7 captured_command_loop
+        ../../../repos/binutils-gdb/gdb/main.c:475
+0xaaaae0810b97 captured_main
+        ../../../repos/binutils-gdb/gdb/main.c:1318
+0xaaaae0810c1b _Z8gdb_mainP18captured_main_args
+        ../../../repos/binutils-gdb/gdb/main.c:1337
+0xaaaae0338453 main
+        ../../../repos/binutils-gdb/gdb/gdb.c:32
+---------------------
+../../../repos/binutils-gdb/gdb/thread.c:86: internal-error: inferior_thread: Assertion `current_thread_ != nullptr' failed.
+A problem internal to GDB has been detected,
+further debugging may prove unreliable.
+Quit this debugging session? (y or n)
+
+We also see failures across the testsuite if the tests get executed on a target
+that has native support for the pointer authentication feature. But
+gdb.base/break.exp and gdb.base/access-mem-running.exp are two examples of
+tests that run into errors and internal errors.
+
+This issue started after commit d88cb738e6a7a7179dfaff8af78d69250c852af1, which
+enabled more broad use of pointer authentication masks to remove non-address
+bits of pointers, but wasn't immediately detected because systems with native
+support for pointer authentication are not that common yet.
+
+The above crash happens because gdb is in the middle of handling an event,
+and do_target_wait_1 calls switch_to_inferior_no_thread, nullifying the
+current thread.  This means a call to inferior_thread () will assert, and
+attempting to call get_current_regcache () will also call inferior_thread (),
+resulting in an assertion as well.
+
+target_has_registers was one function that seemed useful for detecting these
+types of situation where we don't have a register cache. The problem with that
+is the inconsistent state of inferior_ptid, which is used by
+target_has_registers.
+
+Despite the call to switch_to_no_thread in switch_to_inferior_no_thread from
+do_target_wait_1 in the backtrace above clearing inferior_ptid, the call to
+ps_xfer_memory sets inferior_ptid momentarily before reading memory:
+
+static ps_err_e
+ps_xfer_memory (const struct ps_prochandle *ph, psaddr_t addr,
+                gdb_byte *buf, size_t len, int write)
+{
+  scoped_restore_current_inferior restore_inferior;
+  set_current_inferior (ph->thread->inf);
+
+  scoped_restore_current_program_space restore_current_progspace;
+  set_current_program_space (ph->thread->inf->pspace);
+
+  scoped_restore save_inferior_ptid = make_scoped_restore (&inferior_ptid);
+  inferior_ptid = ph->thread->ptid;
+
+  CORE_ADDR core_addr = ps_addr_to_core_addr (addr);
+
+  int ret;
+  if (write)
+    ret = target_write_memory (core_addr, buf, len);
+  else
+    ret = target_read_memory (core_addr, buf, len);
+  return (ret == 0 ? PS_OK : PS_ERR);
+}
+
+Maybe this shouldn't happen, or maybe it is just an unfortunate state to be
+in. But this prevents the use of target_has_registers to guard against the
+lack of registers, since, although current_thread_ is still nullptr,
+inferior_ptid is valid and is not null_ptid.
+
+There is another crash scenario after we kill a previously active inferior, in
+which case the gdbarch will still say we support pointer authentication but we
+will also have no current thread (inferior_thread () will assert etc).
+
+If the target has support for pointer authentication, gdb needs to use
+a couple (or 4, for bare-metal) mask registers to mask off some bits of
+pointers, and for that it needs to access the registers.
+
+At some points, like the one from the backtrace above, there is no active
+thread/current regcache because gdb is in the middle of doing event handling
+and switching between threads.
+
+Simon suggested the use of inferior_ptid to fetch the register cache, as
+opposed to relying on the current register cache.  Though we need to make sure
+inferior_ptid is valid (not null_ptid), I think this works nicely.
+
+With inferior_ptid, we can do safety checks along the way, making sure we have
+a thread to fetch a register cache from and checking if the thread is actually
+stopped or running.
+
+The following patch implements this idea with safety checks to make sure we
+don't run into assertions or errors.  If any of the checks fail, we fallback to
+using a default mask to remove non-address bits of a pointer.
+
+I discussed with Pedro the possibility of caching the mask register values
+(which are per-process and can change mid-execution), but there isn't a good
+spot to cache those values. Besides, the mask registers can change constantly
+for bare-metal debugging when switching between exception levels.
+
+In some cases, it is just not possible to get access to these mask registers,
+like the case where threads are running. In those cases, using a default mask
+to remove the non-address bits should be enough.
+
+This can happen when we let threads run in the background and then we attempt
+to access a memory address (now that gdb is capable of reading memory even
+with threads running).  Thus gdb will attempt to remove non-address bits
+of that memory access, will attempt to access registers, running into errors.
+
+Regression-tested on aarch64-linux Ubuntu 20.04.
+---
+ gdb/aarch64-linux-tdep.c | 64 ++++++++++++++++++++++++++++++----------
+ 1 file changed, 49 insertions(+), 15 deletions(-)
+
+diff --git a/gdb/aarch64-linux-tdep.c b/gdb/aarch64-linux-tdep.c
+index 20a041c599e..4b2915b8e99 100644
+--- a/gdb/aarch64-linux-tdep.c
++++ b/gdb/aarch64-linux-tdep.c
+@@ -57,6 +57,9 @@
+ #include "elf/common.h"
+ #include "elf/aarch64.h"
+ 
++/* For inferior_ptid and current_inferior ().  */
++#include "inferior.h"
++
+ /* Signal frame handling.
+ 
+       +------------+  ^
+@@ -1986,29 +1989,60 @@ aarch64_linux_decode_memtag_section (struct gdbarch *gdbarch,
+ static CORE_ADDR
+ aarch64_remove_non_address_bits (struct gdbarch *gdbarch, CORE_ADDR pointer)
+ {
+-  aarch64_gdbarch_tdep *tdep = gdbarch_tdep<aarch64_gdbarch_tdep> (gdbarch);
+-
+   /* By default, we assume TBI and discard the top 8 bits plus the VA range
+-     select bit (55).  */
++     select bit (55).  Below we try to fetch information about pointer
++     authentication masks in order to make non-address removal more
++     precise.  */
+   CORE_ADDR mask = AARCH64_TOP_BITS_MASK;
+ 
+-  if (tdep->has_pauth ())
++  /* Check if we have an inferior first.  If not, just use the default
++     mask.
++
++     We use the inferior_ptid here because the pointer authentication masks
++     should be the same across threads of a process.  Since we may not have
++     access to the current thread (gdb may have switched to no inferiors
++     momentarily), we use the inferior ptid.  */
++  if (inferior_ptid != null_ptid)
+     {
+-      /* Fetch the PAC masks.  These masks are per-process, so we can just
+-	 fetch data from whatever thread we have at the moment.
++      /* If we do have an inferior, attempt to fetch its thread's thread_info
++	 struct.  */
++      thread_info *thread
++	= find_thread_ptid (current_inferior ()->process_target (),
++			    inferior_ptid);
+ 
+-	 Also, we have both a code mask and a data mask.  For now they are the
+-	 same, but this may change in the future.  */
+-      struct regcache *regs = get_current_regcache ();
+-      CORE_ADDR cmask, dmask;
++      /* If the thread is running, we will not be able to fetch the mask
++	 registers.  */
++      if (thread != nullptr && thread->state != THREAD_RUNNING)
++	{
++	  /* Otherwise, fetch the register cache and the masks.  */
++	  struct regcache *regs
++	    = get_thread_regcache (current_inferior ()->process_target (),
++				   inferior_ptid);
++
++	  /* Use the gdbarch from the register cache to check for pointer
++	     authentication support, as it matches the features found in
++	     that particular thread.  */
++	  aarch64_gdbarch_tdep *tdep
++	    = gdbarch_tdep<aarch64_gdbarch_tdep> (regs->arch ());
++
++	  /* Is there pointer authentication support?  */
++	  if (tdep->has_pauth ())
++	    {
++	      /* We have both a code mask and a data mask.  For now they are
++		 the same, but this may change in the future.  */
++	      CORE_ADDR cmask, dmask;
+ 
+-      if (regs->cooked_read (tdep->pauth_reg_base, &dmask) != REG_VALID)
+-	dmask = mask;
++	      if (regs->cooked_read (tdep->pauth_reg_base, &dmask)
++		  != REG_VALID)
++		dmask = mask;
+ 
+-      if (regs->cooked_read (tdep->pauth_reg_base + 1, &cmask) != REG_VALID)
+-	cmask = mask;
++	      if (regs->cooked_read (tdep->pauth_reg_base + 1, &cmask)
++		  != REG_VALID)
++		cmask = mask;
+ 
+-      mask |= aarch64_mask_from_pac_registers (cmask, dmask);
++	      mask |= aarch64_mask_from_pac_registers (cmask, dmask);
++	    }
++	}
+     }
+ 
+   return aarch64_remove_top_bits (pointer, mask);
+-- 
+2.34.1
+
diff --git a/poky/meta/recipes-devtools/python/python3-attrs_22.2.0.bb b/poky/meta/recipes-devtools/python/python3-attrs_23.1.0.bb
similarity index 63%
rename from poky/meta/recipes-devtools/python/python3-attrs_22.2.0.bb
rename to poky/meta/recipes-devtools/python/python3-attrs_23.1.0.bb
index 8c1ff33..c8e2e51 100644
--- a/poky/meta/recipes-devtools/python/python3-attrs_22.2.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-attrs_23.1.0.bb
@@ -3,9 +3,14 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=5e55731824cf9205cfabeab9a0600887"
 
-SRC_URI[sha256sum] = "c9227bfc2f01993c03f68db37d1d15c9690188323c067c641f1a35ca58185f99"
+SRC_URI[sha256sum] = "6279836d581513a26f1bf235f9acd333bc9115683f14f7e8fae46c98fc50e015"
 
-inherit pypi python_setuptools_build_meta
+inherit pypi python_hatchling
+
+DEPENDS += " \
+    ${PYTHON_PN}-hatch-vcs-native \
+    ${PYTHON_PN}-hatch-fancy-pypi-readme-native \
+"
 
 RDEPENDS:${PN}:class-target += " \
     ${PYTHON_PN}-crypt \
diff --git a/poky/meta/recipes-devtools/python/python3-calver/0001-setup.py-hard-code-version.patch b/poky/meta/recipes-devtools/python/python3-calver/0001-setup.py-hard-code-version.patch
new file mode 100644
index 0000000..43f8a78
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-calver/0001-setup.py-hard-code-version.patch
@@ -0,0 +1,32 @@
+From 390a233ed969f82b2ef209b23bfb523e785603f9 Mon Sep 17 00:00:00 2001
+From: Trevor Gamblin <tgamblin@baylibre.com>
+Date: Tue, 9 May 2023 10:19:41 -0400
+Subject: [PATCH] setup.py: hard-code version
+
+setup.py is pulling the build version from the current date rather than
+a release tag or other predictable method, causing reproducibility 
+issues in builds. Patch this to make reproducible builds work while
+discussing this with upstream maintainer (or developing a patch that can
+make calver rely on a more standard pyproject.toml solution).
+
+Upstream-Status: Inappropriate (configuration)
+
+Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
+---
+ setup.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/setup.py b/setup.py
+index 73f6b10..2e27cf1 100644
+--- a/setup.py
++++ b/setup.py
+@@ -42,5 +42,5 @@ setup(
+             "use_calver = calver.integration:version",
+         ],
+     },
+-    version=calver_version(True),
++    version=calver_version("2022.6.26"),
+ )
+-- 
+2.40.0
+
diff --git a/poky/meta/recipes-devtools/python/python3-calver/run-ptest b/poky/meta/recipes-devtools/python/python3-calver/run-ptest
new file mode 100644
index 0000000..8d2017d
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-calver/run-ptest
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+pytest --automake
diff --git a/poky/meta/recipes-devtools/python/python3-calver_2022.6.26.bb b/poky/meta/recipes-devtools/python/python3-calver_2022.6.26.bb
new file mode 100644
index 0000000..58b33f1
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-calver_2022.6.26.bb
@@ -0,0 +1,28 @@
+SUMMARY = "Setuptools extension for CalVer package versions"
+HOMEPAGE = "https://github.com/di/calver"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
+
+SRC_URI = " \
+    git://github.com/di/calver;branch=master;protocol=https \
+    file://run-ptest \
+    file://0001-setup.py-hard-code-version.patch \
+"
+SRCREV = "3268d8acf2c345f32a1c5f08ba25dc67f76cca81"
+
+inherit python_setuptools_build_meta ptest
+
+S = "${WORKDIR}/git"
+
+RDEPENDS:${PN}-ptest += " \
+    ${PYTHON_PN}-pretend \
+    ${PYTHON_PN}-pytest \
+    ${PYTHON_PN}-unittest-automake-output \
+"
+
+do_install_ptest() {
+        install -d ${D}${PTEST_PATH}/tests
+        cp -rf ${S}/tests ${D}${PTEST_PATH}/
+}
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python3-hatchling_1.13.0.bb b/poky/meta/recipes-devtools/python/python3-hatchling_1.14.1.bb
similarity index 72%
rename from poky/meta/recipes-devtools/python/python3-hatchling_1.13.0.bb
rename to poky/meta/recipes-devtools/python/python3-hatchling_1.14.1.bb
index 17e7f86..a3d2b74 100644
--- a/poky/meta/recipes-devtools/python/python3-hatchling_1.13.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-hatchling_1.14.1.bb
@@ -5,10 +5,10 @@
 
 inherit pypi python_hatchling
 
-DEPENDS += "python3-pluggy-native python3-pathspec-native python3-packaging-native python3-editables-native"
+DEPENDS += "python3-pluggy-native python3-pathspec-native python3-packaging-native python3-editables-native python3-trove-classifiers-native"
 DEPENDS:remove:class-native = "python3-hatchling-native"
 
-SRC_URI[sha256sum] = "f8d275a2cc720735286b7c2e2bc35da05761e6d3695c2fa416550395f10c53c7"
+SRC_URI[sha256sum] = "55fbc88cbd0d96c09c3e9392b51db513fd4cb4caf47615d65f935a5ef1756133"
 
 do_compile:prepend() {
     export PYTHONPATH=src
diff --git a/poky/meta/recipes-devtools/python/python3-requests_2.28.2.bb b/poky/meta/recipes-devtools/python/python3-requests_2.30.0.bb
similarity index 86%
rename from poky/meta/recipes-devtools/python/python3-requests_2.28.2.bb
rename to poky/meta/recipes-devtools/python/python3-requests_2.30.0.bb
index 8ab1ec0..1286eba 100644
--- a/poky/meta/recipes-devtools/python/python3-requests_2.28.2.bb
+++ b/poky/meta/recipes-devtools/python/python3-requests_2.30.0.bb
@@ -3,7 +3,7 @@
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=34400b68072d710fecd0a2940a0d1658"
 
-SRC_URI[sha256sum] = "98b1b2782e3c6c4904938b84c0eb932721069dfdb9134313beff7c83c2df24bf"
+SRC_URI[sha256sum] = "239d7d4458afcb28a692cdd298d87542235f4ca8d36d03a15bfc128a6559a2f4"
 
 inherit pypi setuptools3
 
diff --git a/poky/meta/recipes-devtools/python/python3-trove-classifiers/run-ptest b/poky/meta/recipes-devtools/python/python3-trove-classifiers/run-ptest
new file mode 100644
index 0000000..8d2017d
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-trove-classifiers/run-ptest
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+pytest --automake
diff --git a/poky/meta/recipes-devtools/python/python3-trove-classifiers_2023.4.29.bb b/poky/meta/recipes-devtools/python/python3-trove-classifiers_2023.4.29.bb
new file mode 100644
index 0000000..4bbcea5
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-trove-classifiers_2023.4.29.bb
@@ -0,0 +1,26 @@
+SUMMARY = "Canonical source for classifiers on PyPI (pypi.org)."
+HOMEPAGE = "https://github.com/pypa/trove-classifiers"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
+
+SRC_URI[sha256sum] = "8adcc06f1eb7c495f0bdceb698bd9c044b3e57b0d5767d99ec4b6b17c9bbe957"
+
+inherit pypi python_setuptools_build_meta ptest
+
+DEPENDS += " python3-calver-native"
+
+SRC_URI += " \
+        file://run-ptest \
+"
+
+RDEPENDS:${PN}-ptest += " \
+       ${PYTHON_PN}-pytest \
+       ${PYTHON_PN}-unittest-automake-output \
+"
+
+do_install_ptest() {
+      install -d ${D}${PTEST_PATH}/tests
+      cp -rf ${S}/tests/* ${D}${PTEST_PATH}/tests/
+}
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python3-urllib3_1.26.15.bb b/poky/meta/recipes-devtools/python/python3-urllib3_2.0.2.bb
similarity index 79%
rename from poky/meta/recipes-devtools/python/python3-urllib3_1.26.15.bb
rename to poky/meta/recipes-devtools/python/python3-urllib3_2.0.2.bb
index d2de7c4..bc1cdb0 100644
--- a/poky/meta/recipes-devtools/python/python3-urllib3_1.26.15.bb
+++ b/poky/meta/recipes-devtools/python/python3-urllib3_2.0.2.bb
@@ -3,15 +3,16 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=c2823cb995439c984fd62a973d79815c"
 
-SRC_URI[sha256sum] = "8a388717b9476f934a21484e8c8e61875ab60644d29b9b39e11e4b9dc1c6b305"
+SRC_URI[sha256sum] = "61717a1095d7e155cdb737ac7bb2f4324a858a1e2e6466f6d03ff630ca68d3cc"
 
-inherit pypi setuptools3
+inherit pypi python_hatchling
 
 RDEPENDS:${PN} += "\
     ${PYTHON_PN}-certifi \
     ${PYTHON_PN}-cryptography \
     ${PYTHON_PN}-email \
     ${PYTHON_PN}-idna \
+    ${PYTHON_PN}-json \
     ${PYTHON_PN}-netclient \
     ${PYTHON_PN}-pyopenssl \
     ${PYTHON_PN}-threading \
diff --git a/poky/meta/recipes-devtools/python/python3_3.11.2.bb b/poky/meta/recipes-devtools/python/python3_3.11.2.bb
index 5bd8d32..421a305 100644
--- a/poky/meta/recipes-devtools/python/python3_3.11.2.bb
+++ b/poky/meta/recipes-devtools/python/python3_3.11.2.bb
@@ -72,11 +72,11 @@
 ALTERNATIVE_TARGET[python3-config] = "${bindir}/python${PYTHON_MAJMIN}-config-${MULTILIB_SUFFIX}"
 
 
-DEPENDS = "bzip2-replacement-native libffi bzip2 openssl sqlite3 zlib virtual/libintl xz virtual/crypt util-linux-libuuid libtirpc libnsl2 autoconf-archive-native ncurses"
+DEPENDS = "bzip2-replacement-native expat libffi bzip2 openssl sqlite3 zlib virtual/libintl xz virtual/crypt util-linux-libuuid libtirpc libnsl2 autoconf-archive-native ncurses"
 DEPENDS:append:class-target = " python3-native"
 DEPENDS:append:class-nativesdk = " python3-native"
 
-EXTRA_OECONF = " --without-ensurepip --enable-shared --with-platlibdir=${baselib}"
+EXTRA_OECONF = " --without-ensurepip --enable-shared --with-platlibdir=${baselib} --with-system-expat"
 EXTRA_OECONF:append:class-native = " --bindir=${bindir}/${PN}"
 EXTRA_OECONF:append:class-target = " --with-build-python=nativepython3"
 EXTRA_OECONF:append:class-nativesdk = " --with-build-python=nativepython3"
@@ -95,17 +95,15 @@
 "
 
 # PGO currently causes builds to not be reproducible so disable by default, see YOCTO #13407
-PACKAGECONFIG:class-target ??= "readline gdbm ${@bb.utils.filter('DISTRO_FEATURES', 'lto', d)}"
-PACKAGECONFIG:class-native ??= "readline gdbm"
-PACKAGECONFIG:class-nativesdk ??= "readline gdbm"
-PACKAGECONFIG[readline] = ",,readline"
+PACKAGECONFIG ??= "editline gdbm ${@bb.utils.filter('DISTRO_FEATURES', 'lto', d)}"
+PACKAGECONFIG[readline] = "--with-readline=readline,,readline,,,editline"
 PACKAGECONFIG[editline] = "--with-readline=editline,,libedit,,,readline"
 # Use profile guided optimisation by running PyBench inside qemu-user
 PACKAGECONFIG[pgo] = "--enable-optimizations,,qemu-native"
 PACKAGECONFIG[tk] = ",,tk"
 PACKAGECONFIG[tcl] = ",,tcl"
 PACKAGECONFIG[gdbm] = ",,gdbm"
-PACKAGECONFIG[lto] = "--with-lto,,"
+PACKAGECONFIG[lto] = "--with-lto,--without-lto"
 
 do_configure:prepend () {
     mkdir -p ${B}/Modules
diff --git a/poky/meta/recipes-devtools/qemu/qemu/ppc.patch b/poky/meta/recipes-devtools/qemu/qemu/ppc.patch
index ade1daf..e14c48c 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/ppc.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/ppc.patch
@@ -1,70 +1,148 @@
-target/ppc: Fix fallback to MFSS for MFFSCRN, MFFSCRNI, MFFSCE and MFFSL
+From 31f02021ac17442c514593f7b9ed750ea87c21b1 Mon Sep 17 00:00:00 2001
+From: Richard Purdie <richard.purdie@linuxfoundation.org>
+Date: Sat, 6 May 2023 07:42:35 +0100
+Cc: Víctor Colombo <victor.colombo@eldorado.org.br>
+Cc: Matheus Ferst <matheus.ferst@eldorado.org.br>
+Cc: Daniel Henrique Barboza <danielhb413@gmail.com>
+Cc: Richard Henderson <richard.henderson@linaro.org>
+Cc: Philippe Mathieu-Daudé <philmd@linaro.org>
+Subject: [PATCH v3] target/ppc: Fix fallback to MFSS for MFFS* instructions on
+ pre 3.0 ISAs
 
-The following commits changed the code such that these instructions became invalid
-on pre 3.0 ISAs:
+The following commits changed the code such that the fallback to MFSS for MFFSCRN,
+MFFSCRNI, MFFSCE and MFFSL on pre 3.0 ISAs was removed and became an illegal instruction:
 
-  bf8adfd88b547680aa857c46098f3a1e94373160 - target/ppc: Move mffscrn[i] to decodetree 
+  bf8adfd88b547680aa857c46098f3a1e94373160 - target/ppc: Move mffscrn[i] to decodetree
   394c2e2fda70da722f20fb60412d6c0ca4bfaa03 - target/ppc: Move mffsce to decodetree
-  3e5bce70efe6bd1f684efbb21fd2a316cbf0657e - target/ppc: Move mffsl to decodetree 
+  3e5bce70efe6bd1f684efbb21fd2a316cbf0657e - target/ppc: Move mffsl to decodetree
 
 The hardware will handle them as a MFFS instruction as the code did previously.
-Restore that behaviour. This means applications that were segfaulting under qemu 
-when encountering these instructions now operate correctly. The instruction
-is used in glibc libm functions for example.
+This means applications that were segfaulting under qemu when encountering these
+instructions which is used in glibc libm functions for example.
 
-Upstream-Status: Submitted [https://lore.kernel.org/qemu-devel/20230504110150.3044402-1-richard.purdie@linuxfoundation.org/]
+The fallback for MFFSCDRN and MFFSCDRNI added in a later patch was also missing.
+
+This patch restores the fallback to MFSS for these instructions on pre 3.0s ISAs
+as the hardware decoder would, fixing the segfaulting libm code. It doesn't have
+the fallback for 3.0 onwards to match hardware behaviour.
 
 Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+---
+ target/ppc/insn32.decode           | 20 +++++++++++++-------
+ target/ppc/translate/fp-impl.c.inc | 22 ++++++++++++++++------
+ 2 files changed, 29 insertions(+), 13 deletions(-)
 
-Index: qemu-8.0.0/target/ppc/translate/fp-impl.c.inc
-===================================================================
---- qemu-8.0.0.orig/target/ppc/translate/fp-impl.c.inc
-+++ qemu-8.0.0/target/ppc/translate/fp-impl.c.inc
-@@ -584,7 +584,10 @@ static bool trans_MFFSCE(DisasContext *c
+v3 - drop fallback to MFFS for 3.0 ISA to match hardware
+v2 - switch to use decodetree pattern groups per feedback
+
+Upstream-Status: Submitted [https://lore.kernel.org/qemu-devel/20230506065240.3177798-1-richard.purdie@linuxfoundation.org/]
+
+diff --git a/target/ppc/insn32.decode b/target/ppc/insn32.decode
+index f8f589e9fd..4fcf3af8d0 100644
+--- a/target/ppc/insn32.decode
++++ b/target/ppc/insn32.decode
+@@ -390,13 +390,19 @@ SETNBCR         011111 ..... ..... ----- 0111100000 -   @X_bi
+ 
+ ### Move To/From FPSCR
+ 
+-MFFS            111111 ..... 00000 ----- 1001000111 .   @X_t_rc
+-MFFSCE          111111 ..... 00001 ----- 1001000111 -   @X_t
+-MFFSCRN         111111 ..... 10110 ..... 1001000111 -   @X_tb
+-MFFSCDRN        111111 ..... 10100 ..... 1001000111 -   @X_tb
+-MFFSCRNI        111111 ..... 10111 ---.. 1001000111 -   @X_imm2
+-MFFSCDRNI       111111 ..... 10101 --... 1001000111 -   @X_imm3
+-MFFSL           111111 ..... 11000 ----- 1001000111 -   @X_t
++{
++  # Before Power ISA v3.0, MFFS bits 11~15 were reserved and should be ignored
++  MFFS_ISA207     111111 ..... ----- ----- 1001000111 .   @X_t_rc
++  [
++    MFFS            111111 ..... 00000 ----- 1001000111 .   @X_t_rc
++    MFFSCE          111111 ..... 00001 ----- 1001000111 -   @X_t
++    MFFSCRN         111111 ..... 10110 ..... 1001000111 -   @X_tb
++    MFFSCDRN        111111 ..... 10100 ..... 1001000111 -   @X_tb
++    MFFSCRNI        111111 ..... 10111 ---.. 1001000111 -   @X_imm2
++    MFFSCDRNI       111111 ..... 10101 --... 1001000111 -   @X_imm3
++    MFFSL           111111 ..... 11000 ----- 1001000111 -   @X_t
++  ]
++}
+ 
+ ### Decimal Floating-Point Arithmetic Instructions
+ 
+diff --git a/target/ppc/translate/fp-impl.c.inc b/target/ppc/translate/fp-impl.c.inc
+index 57d8437851..874774eade 100644
+--- a/target/ppc/translate/fp-impl.c.inc
++++ b/target/ppc/translate/fp-impl.c.inc
+@@ -568,6 +568,22 @@ static void store_fpscr_masked(TCGv_i64 fpscr, uint64_t clear_mask,
+     gen_helper_store_fpscr(cpu_env, fpscr_masked, st_mask);
+ }
+ 
++static bool trans_MFFS_ISA207(DisasContext *ctx, arg_X_t_rc *a)
++{
++    if (!(ctx->insns_flags2 & PPC2_ISA300)) {
++        /*
++         * Before Power ISA v3.0, MFFS bits 11~15 were reserved, any instruction
++         * with OPCD=63 and XO=583 should be decoded as MFFS.
++         */
++        return trans_MFFS(ctx, a);
++    }
++    /*
++     * For Power ISA v3.0+, return false and let the pattern group
++     * select the correct instruction.
++     */
++    return false;
++}
++
+ static bool trans_MFFS(DisasContext *ctx, arg_X_t_rc *a)
+ {
+     REQUIRE_FPU(ctx);
+@@ -584,7 +600,6 @@ static bool trans_MFFSCE(DisasContext *ctx, arg_X_t *a)
  {
      TCGv_i64 fpscr;
  
 -    REQUIRE_INSNS_FLAGS2(ctx, ISA300);
-+    if (unlikely(!(ctx->insns_flags2 & PPC2_ISA300))) {
-+        return trans_MFFS(ctx, a);
-+    }
-+
      REQUIRE_FPU(ctx);
  
      gen_reset_fpstatus();
-@@ -597,7 +600,10 @@ static bool trans_MFFSCRN(DisasContext *
+@@ -597,7 +612,6 @@ static bool trans_MFFSCRN(DisasContext *ctx, arg_X_tb *a)
  {
      TCGv_i64 t1, fpscr;
  
 -    REQUIRE_INSNS_FLAGS2(ctx, ISA300);
-+    if (unlikely(!(ctx->insns_flags2 & PPC2_ISA300))) {
-+        return trans_MFFS(ctx, a);
-+    }
-+
      REQUIRE_FPU(ctx);
  
      t1 = tcg_temp_new_i64();
-@@ -631,7 +637,10 @@ static bool trans_MFFSCRNI(DisasContext
+@@ -614,7 +628,6 @@ static bool trans_MFFSCDRN(DisasContext *ctx, arg_X_tb *a)
  {
      TCGv_i64 t1, fpscr;
  
 -    REQUIRE_INSNS_FLAGS2(ctx, ISA300);
-+    if (unlikely(!(ctx->insns_flags2 & PPC2_ISA300))) {
-+        return trans_MFFS(ctx, a);
-+    }
-+
      REQUIRE_FPU(ctx);
  
      t1 = tcg_temp_new_i64();
-@@ -661,7 +670,10 @@ static bool trans_MFFSCDRNI(DisasContext
+@@ -631,7 +644,6 @@ static bool trans_MFFSCRNI(DisasContext *ctx, arg_X_imm2 *a)
+ {
+     TCGv_i64 t1, fpscr;
+ 
+-    REQUIRE_INSNS_FLAGS2(ctx, ISA300);
+     REQUIRE_FPU(ctx);
+ 
+     t1 = tcg_temp_new_i64();
+@@ -647,7 +659,6 @@ static bool trans_MFFSCDRNI(DisasContext *ctx, arg_X_imm3 *a)
+ {
+     TCGv_i64 t1, fpscr;
+ 
+-    REQUIRE_INSNS_FLAGS2(ctx, ISA300);
+     REQUIRE_FPU(ctx);
+ 
+     t1 = tcg_temp_new_i64();
+@@ -661,7 +672,6 @@ static bool trans_MFFSCDRNI(DisasContext *ctx, arg_X_imm3 *a)
  
  static bool trans_MFFSL(DisasContext *ctx, arg_X_t *a)
  {
 -    REQUIRE_INSNS_FLAGS2(ctx, ISA300);
-+    if (unlikely(!(ctx->insns_flags2 & PPC2_ISA300))) {
-+        return trans_MFFS(ctx, a);
-+    }
-+
      REQUIRE_FPU(ctx);
  
      gen_reset_fpstatus();
+-- 
+2.39.2
+