]> code.ossystems Code Review - openembedded-core.git/commitdiff
qemu.inc: Add sh4,sh4eb,mips64,mips64el targets
authorKhem Raj <raj.khem@gmail.com>
Fri, 25 Mar 2011 22:52:33 +0000 (15:52 -0700)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 31 Mar 2011 14:39:05 +0000 (15:39 +0100)
In order to leavarage more emulations in oe-core
these targets needs to be built as well

Introduce new variable QEMU_TARGETS which
can be set by user to decide what all machine support
should be build into qemu-native

This one works adding same to qemu.inc does not
parse presumably a bitbake problem.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
meta/recipes-devtools/qemu/qemu-targets.inc [new file with mode: 0644]
meta/recipes-devtools/qemu/qemu.inc

diff --git a/meta/recipes-devtools/qemu/qemu-targets.inc b/meta/recipes-devtools/qemu/qemu-targets.inc
new file mode 100644 (file)
index 0000000..550a7fe
--- /dev/null
@@ -0,0 +1,18 @@
+# possible arch values are arm mips mipsel mips64 mips64el ppc ppc64 ppc64abi32
+# ppcemb armeb alpha sparc32plus i386 x86_64 cris m68k microblaze sparc sparc32
+# sparc32plus
+
+def get_qemu_target_list(d):
+    import bb
+    archs = bb.data.getVar('QEMU_TARGETS', d, True).split()
+    targets = ""
+    for arch in ['mips64', 'mips64el', 'ppcemb']:
+        if arch in archs:
+            targets += arch + "-softmmu,"
+           archs.remove(arch)
+    for arch in ['armeb', 'alpha', 'ppc64abi32', 'sparc32plus']:
+        if arch in archs:
+            targets += arch + "-linux-user,"
+           archs.remove(arch)
+    return targets + ''.join([arch + "-linux-user" + "," + arch + "-softmmu" + "," for arch in archs]).rstrip(',')
+
index f41b49c15bc522e110766ff12eca7a2d01e02976..0367f504ffee2e1f2be871887653e3c74f94d6d5 100644 (file)
@@ -3,8 +3,14 @@ HOMEPAGE = "http://qemu.org"
 LICENSE = "GPLv2 & LGPLv2.1"
 DEPENDS = "zlib alsa-lib"
 
-EXTRA_OECONF = "--target-list=arm-linux-user,arm-softmmu,i386-linux-user,i386-softmmu,x86_64-linux-user,x86_64-softmmu,mips-linux-user,mips-softmmu,ppc-linux-user,ppc-softmmu,mipsel-linux-user --disable-werror --disable-vnc-tls --enable-kvm --audio-drv-list=oss,alsa --audio-card-list=ac97,es1370"
-#EXTRA_OECONF += "--disable-sdl"
+# QEMU_TARGETS is overridable variable
+QEMU_TARGETS ?= "arm i386 mips mipsel mips64 mips64el ppc sh4 x86_64"
+
+require qemu-targets.inc
+
+EXTRA_OECONF += "--target-list=${@get_qemu_target_list(d)} --disable-werror --disable-vnc-tls --enable-kvm --audio-drv-list=oss,alsa --audio-card-list=ac97,es1370"
+
+#EXTRA_OECOF += "--disable-sdl"
 
 inherit autotools
 
@@ -34,6 +40,6 @@ do_configure() {
 SRC_URI_append_virtclass-nativesdk = " file://glflags.patch;patch=1"
 DEPENDS_virtclass-nativesdk = "zlib-nativesdk libsdl-nativesdk qemugl-nativesdk"
 RDEPENDS_virtclass-nativesdk = "libsdl-nativesdk"
-EXTRA_OECONF_virtclass-nativesdk = "--target-list=arm-linux-user,arm-softmmu,i386-softmmu,x86_64-softmmu,mips-linux-user,mipsel-linux-user,mips-softmmu,ppc-softmmu --disable-vnc-tls --cross-prefix=${TARGET_PREFIX}"
+EXTRA_OECONF_virtclass-nativesdk += "--target-list=${@get_qemu_target_list(d)} --disable-werror --disable-vnc-tls --cross-prefix=${TARGET_PREFIX}"
 
 BBCLASSEXTEND = "native nativesdk"