diff --git a/meta/recipes-devtools/qemu/qemu-targets.inc b/meta/recipes-devtools/qemu/qemu-targets.inc
index 24f9a03948..bd0b47a4e7 100644
--- a/meta/recipes-devtools/qemu/qemu-targets.inc
+++ b/meta/recipes-devtools/qemu/qemu-targets.inc
@@ -3,9 +3,20 @@
 #    mips mipsel mips64 mips64el ppc ppc64 ppc64abi32 ppcemb
 #    riscv32 riscv64 sparc sparc32 sparc32plus
 
-def get_qemu_target_list(d):
+def get_qemu_target_list(d, target=False):
     import bb
-    archs = d.getVar('QEMU_TARGETS').split()
+    if target:
+        archs = []
+        allarchs = d.getVar('QEMU_TARGETS').split()
+        if d.getVar("TARGET_ARCH") in ["x86", "i486", "i586", "i686"]:
+            machine_arch = "i386"
+        else:
+            machine_arch = d.getVar("TARGET_ARCH")
+        for arch in allarchs:
+            if arch in machine_arch:
+                archs.append(arch)
+    else:
+        archs = d.getVar('QEMU_TARGETS').split()
     tos = d.getVar('HOST_OS')
     softmmuonly = ""
     for arch in ['ppcemb', 'lm32']:
diff --git a/meta/recipes-devtools/qemu/qemu_8.0.0.bb b/meta/recipes-devtools/qemu/qemu_8.0.0.bb
index 42e133967e..6c25d99ade 100644
--- a/meta/recipes-devtools/qemu/qemu_8.0.0.bb
+++ b/meta/recipes-devtools/qemu/qemu_8.0.0.bb
@@ -10,7 +10,7 @@ CFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-DEGL_NO_X11=1',
 
 RDEPENDS:${PN}:class-target += "bash"
 
-EXTRA_OECONF:append:class-target = " --target-list=${@get_qemu_target_list(d)}"
+EXTRA_OECONF:append:class-target = " --target-list=${@get_qemu_target_list(d, target=True)}"
 EXTRA_OECONF:append:class-target:mipsarcho32 = "${@bb.utils.contains('BBEXTENDCURR', 'multilib', ' --disable-capstone', '', d)}"
 EXTRA_OECONF:append:class-nativesdk = " --target-list=${@get_qemu_target_list(d)}"
 
