subtree updates

meta-openembedded: 9a52bfc4a6..af11f6ce73:
  Andreas Müller (4):
        nautilus: Add a packageconfig for libportal - disabled by default
        gtk4: upgrade 4.4.0 -> 4.6.2
        libadwaita: initial add 1.1.0
        gtksourceview5: upgrade 5.2.0 -> 5.4.0

  Carlos Rafael Giani (3):
        libopenmpt: Remove unnecessary python code block
        pipewire: Upgrade to version 0.3.49
        wireplumber: Upgrade to version 0.4.9

  Kai Kang (4):
        wxwidgets: 3.1.4 -> 3.1.5
        python3-wxgtk4: add recipe
        wxwidgets: fix typo
        mcelog: fix compile error

  Khem Raj (1):
        python3-wxgtk4: Use cross prefix with native wx-config

  Matthias Klein (1):
        paho-mqtt-c: upgrade 1.3.9 -> 1.3.10

  Mingli Yu (1):
        mariadb: increase MY_AES_CTX_SIZE

  Potin Lai (4):
        libimobiledevice-glue: add recipe
        libimobiledevice-glue: fix undefined bswap error
        libirecovery: add recipe
        idevicerestore: add recipe

  S. Lockwood-Childs (1):
        python3-evdev: fix host header contamination

  Yi Zhao (2):
        strongswan: 5.9.4 -> 5.9.5
        libnetfilter-conntrack: upgrade 1.0.8 -> 1.0.9

meta-raspberrypi: c06ae5eacf..31c33d155c:
  Khem Raj (3):
        linux-raspberrypi_5.15.bb: Upgrade to 5.15.32
        raspberrypi-firmware: Update to match 5.15.32
        armstubs: Upgrade to 20211101

poky: 5fe3689f4f..1976521190:
  Chen Qi (1):
        gobject-introspection: fix default search path for girdir

  Daniel Ammann (2):
        overview-manual: Fix reference
        ref-manual: Add vfat in list of filesystems supported by kickstart

  Jagadeesh Krishnanjanappa (1):
        cmake: support to create per-toolchain cmake file in SDK

  Khem Raj (2):
        weston: Add a knob to control simple clients
        meson: Robustify compiler detection logic

  Marta Rybczynska (1):
        doc: migration-3.5: extend the section on inclusive language

  Michael Halstead (1):
        releases: update to include 3.4.3

  Michael Opdenacker (4):
        overview-manual: add missing upper case
        docs: add poky.yaml and sphinx-static/switchers.js to "make clean"
        manuals: fix quoting of double dashes
        migration-guides: preliminary description for 3.5

  Oleksandr Kravchuk (1):
        python3: update to 3.10.4

  Peter Kjellerstedt (1):
        ref-manual: Remove references to AVAILABLE_LICENSES

  Rasmus Villemoes (1):
        git: make expat and curl into PACKAGECONFIG items

  Richard Purdie (11):
        set_versions/switchers: Drop versions shown to the active releases
        mirrors: Add missing gitsm entries for yocto/oe mirrors
        base: Don't add duplicates to sys.path
        base: Clean up module import compatibility code
        modutils-initscripts: Change license PD -> MIT
        keymaps: Clean up license handling
        initscripts: Clean up license handling/identifiers
        bitbake: cooker: Further fixes to inotify to fix memres bitbake issues
        bitbake: cooker: Restore sys.path and sys.modules between parses
        bitbake: cooker: Ensure any existing hashserv connection is closed
        bitbake: cooker: Avoid error if siggen wasn't setup

  Ross Burton (24):
        ref-manual: update Python class documentation
        buildtools-tarball: include nativesdk-python3-pyyaml
        image_types: hddimg and iso only work on x86
        oeqa/selftest/devtool: ensure Git username is set before upgrade tests
        oeqa/selftest/wic: use os.rename instead of bb.utils.rename
        oeqa/selftest/wic: remove redundant asserts
        oeqa/selftest/wic: clean up only_for_arch decorator
        oeqa/selftest/wic: don't hardcode kernel image type in test_wic_rm
        oeqa/selftest/wic: add more arch-specific annotations
        oeqa/selftest/buildoptions: set PACKAGE_CLASSES in test_arch_work_dir_and_export_source
        oeqa/runtime/decorator/package.py: remove use of strToSet
        oeqa/core/decorator: remove redundant code
        testimage: inline updateTestData()
        oeqa/core/utils/misc: remove redundant file
        oeqa/selftest: remove unused imports
        oeqa/core/decorators/data: improve has_* logic
        oeqa/selftest: tag tests that use runqemu
        oeqa: rationalise skipifqemu decorators
        oeqa/selftest/oescripts: refactor skipping logic
        oeqa/selftest/wic: cleanup WicTestCase.setUpLocal
        oeqa/selftest/wic: rearrange tests
        oeqa/selftest/wic: use os.path.join to join paths
        oeqa/selftest/wic: use self.td instead of get_bb_var to save on bitbake calls
        oeqa/selftest: generalise test_devtool_virtual_kernel_modify

  Simon Kuhnle (1):
        convert-variable-renames: Fix typo in description

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ic8359fe5772351a45a3154c6a7f5042a88ff934c
diff --git a/poky/meta/lib/oeqa/selftest/cases/devtool.py b/poky/meta/lib/oeqa/selftest/cases/devtool.py
index e910672..3eea2b1 100644
--- a/poky/meta/lib/oeqa/selftest/cases/devtool.py
+++ b/poky/meta/lib/oeqa/selftest/cases/devtool.py
@@ -9,10 +9,10 @@
 import glob
 import fnmatch
 
-import oeqa.utils.ftools as ftools
 from oeqa.selftest.case import OESelftestTestCase
 from oeqa.utils.commands import runCmd, bitbake, get_bb_var, create_temp_layer
 from oeqa.utils.commands import get_bb_vars, runqemu, get_test_layer
+from oeqa.core.decorator import OETestTag
 
 oldmetapath = None
 
@@ -1351,6 +1351,7 @@
         matches2 = glob.glob(stampprefix2 + '*')
         self.assertFalse(matches2, 'Stamp files exist for recipe %s that should have been cleaned' % testrecipe2)
 
+    @OETestTag("runqemu")
     def test_devtool_deploy_target(self):
         # NOTE: Whilst this test would seemingly be better placed as a runtime test,
         # unfortunately the runtime tests run under bitbake and you can't run
@@ -1471,6 +1472,14 @@
 
 class DevtoolUpgradeTests(DevtoolBase):
 
+    def setUp(self):
+        super().setUp()
+        try:
+            runCmd("git config --global user.name")
+            runCmd("git config --global user.email")
+        except:
+            self.skip("Git user.name and user.email must be set")
+
     def test_devtool_upgrade(self):
         # Check preconditions
         self.assertTrue(not os.path.exists(self.workspacedir), 'This test cannot be run with a workspace directory under the build directory')
@@ -1866,8 +1875,9 @@
          Expected:       devtool modify is able to checkout the source of the kernel
                          and modification to the source and configurations are reflected
                          when building the kernel.
-         """
-        kernel_provider = get_bb_var('PREFERRED_PROVIDER_virtual/kernel')
+        """
+        kernel_provider = self.td['PREFERRED_PROVIDER_virtual/kernel']
+
         # Clean up the environment
         bitbake('%s -c clean' % kernel_provider)
         tempdir = tempfile.mkdtemp(prefix='devtoolqa')
@@ -1894,33 +1904,28 @@
         self.assertExists(os.path.join(tempdir, 'Makefile'), 'Extracted source could not be found')
         #Step 4.2
         configfile = os.path.join(tempdir,'.config')
-        diff = runCmd('diff %s %s' % (tmpconfig, configfile))
-        self.assertEqual(0,diff.status,'Kernel .config file is not the same using bitbake and devtool')
+        runCmd('diff %s %s' % (tmpconfig, configfile))
+
         #Step 4.3
         #NOTE: virtual/kernel is mapped to kernel_provider
-        result = runCmd('devtool build %s' % kernel_provider)
-        self.assertEqual(0,result.status,'Cannot build kernel using `devtool build`')
+        runCmd('devtool build %s' % kernel_provider)
         kernelfile = os.path.join(get_bb_var('KBUILD_OUTPUT', kernel_provider), 'vmlinux')
         self.assertExists(kernelfile, 'Kernel was not build correctly')
 
         #Modify the kernel source
-        modfile = os.path.join(tempdir,'arch/x86/boot/header.S')
-        modstring = "Use a boot loader. Devtool testing."
-        modapplied = runCmd("sed -i 's/Use a boot loader./%s/' %s" % (modstring, modfile))
-        self.assertEqual(0,modapplied.status,'Modification to %s on kernel source failed' % modfile)
+        modfile = os.path.join(tempdir, 'init/version.c')
+        runCmd("sed -i 's/Linux/LiNuX/g' %s" % (modfile))
+
         #Modify the configuration
-        codeconfigfile = os.path.join(tempdir,'.config.new')
+        codeconfigfile = os.path.join(tempdir, '.config.new')
         modconfopt = "CONFIG_SG_POOL=n"
-        modconf = runCmd("sed -i 's/CONFIG_SG_POOL=y/%s/' %s" % (modconfopt, codeconfigfile))
-        self.assertEqual(0,modconf.status,'Modification to %s failed' % codeconfigfile)
+        runCmd("sed -i 's/CONFIG_SG_POOL=y/%s/' %s" % (modconfopt, codeconfigfile))
+
         #Build again kernel with devtool
-        rebuild = runCmd('devtool build %s' % kernel_provider)
-        self.assertEqual(0,rebuild.status,'Fail to build kernel after modification of source and config')
+        runCmd('devtool build %s' % kernel_provider)
+
         #Step 4.4
-        bzimagename = 'bzImage-' + get_bb_var('KERNEL_VERSION_NAME', kernel_provider)
-        bzimagefile = os.path.join(get_bb_var('D', kernel_provider),'boot', bzimagename)
-        checkmodcode = runCmd("grep '%s' %s" % (modstring, bzimagefile))
-        self.assertEqual(0,checkmodcode.status,'Modification on kernel source failed')
+        runCmd("grep '%s' %s" % ('LiNuX', kernelfile))
+
         #Step 4.5
-        checkmodconfg = runCmd("grep %s %s" % (modconfopt, codeconfigfile))
-        self.assertEqual(0,checkmodconfg.status,'Modification to configuration file failed')
+        runCmd("grep %s %s" % (modconfopt, codeconfigfile))