meta-freescale/recipes-devtools/qemu/qemu-targets.inc
Ting Liu ca079524ad qemu-qoriq: copy a qemu.inc to not break build for 4.1.0
qemu-qoriq resues qemu.inc from oe-core. As oe-core had upgraded to 5.2.0 which
switched to meson+ninja, build error appear as qemu-qoriq version is 4.1.0.

Copy a working qemu.inc from gatesgarth branch to not break the build.

Some errors:
| stdout: Applying patch cross.patch
| patching file configure
| Hunk #1 FAILED at 6973.
| Hunk #2 FAILED at 6999.
| 2 out of 2 hunks FAILED -- rejects in file configure
| Patch cross.patch does not apply (enforce with -f)
...
| DEBUG: Executing shell function do_configure
| ERROR: unknown option --with-suffix=qemu-qoriq

Signed-off-by: Ting Liu <ting.liu@nxp.com>
2021-04-15 11:17:39 -03:00

29 lines
1.2 KiB
C++

# possible arch values are:
# aarch64 arm armeb alpha cris i386 x86_64 m68k microblaze
# mips mipsel mips64 mips64el ppc ppc64 ppc64abi32 ppcemb
# riscv32 riscv64 sparc sparc32 sparc32plus
def get_qemu_target_list(d):
import bb
archs = d.getVar('QEMU_TARGETS').split()
tos = d.getVar('HOST_OS')
softmmuonly = ""
for arch in ['ppcemb', 'lm32']:
if arch in archs:
softmmuonly += arch + "-softmmu,"
archs.remove(arch)
linuxuseronly = ""
for arch in ['armeb', 'alpha', 'ppc64abi32', 'ppc64le', 'sparc32plus', 'aarch64_be']:
if arch in archs:
linuxuseronly += arch + "-linux-user,"
archs.remove(arch)
if 'linux' not in tos:
return softmmuonly + ''.join([arch + "-softmmu" + "," for arch in archs]).rstrip(',')
return softmmuonly + linuxuseronly + ''.join([arch + "-linux-user" + "," + arch + "-softmmu" + "," for arch in archs]).rstrip(',')
def get_qemu_usermode_target_list(d):
return ",".join(filter(lambda i: "-linux-user" in i, get_qemu_target_list(d).split(',')))
def get_qemu_system_target_list(d):
return ",".join(filter(lambda i: "-linux-user" not in i, get_qemu_target_list(d).split(',')))