diff options
-rw-r--r-- | meta/classes/libc-package.bbclass | 4 | ||||
-rw-r--r-- | meta/classes/qemu.bbclass | 29 | ||||
-rw-r--r-- | meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb | 2 |
3 files changed, 18 insertions, 17 deletions
diff --git a/meta/classes/libc-package.bbclass b/meta/classes/libc-package.bbclass index c1bc399c18..eb76ff953a 100644 --- a/meta/classes/libc-package.bbclass +++ b/meta/classes/libc-package.bbclass @@ -298,9 +298,7 @@ python package_do_split_gconvs () { --inputfile=%s/i18n/locales/%s --charmap=%s %s" \ % (treedir, datadir, locale, encoding, name) - qemu_options = d.getVar("QEMU_OPTIONS_%s" % d.getVar('PACKAGE_ARCH', True), True) - if not qemu_options: - qemu_options = d.getVar('QEMU_OPTIONS', True) + qemu_options = d.getVar('QEMU_OPTIONS', True) cmd = "PSEUDO_RELOADED=YES PATH=\"%s\" I18NPATH=\"%s\" %s -L %s \ -E LD_LIBRARY_PATH=%s %s %s/bin/localedef %s" % \ diff --git a/meta/classes/qemu.bbclass b/meta/classes/qemu.bbclass index b2cf85d628..601f587534 100644 --- a/meta/classes/qemu.bbclass +++ b/meta/classes/qemu.bbclass @@ -29,20 +29,23 @@ def qemu_run_binary(data, rootfs_path, binary): libdir = rootfs_path + data.getVar("libdir", False) base_libdir = rootfs_path + data.getVar("base_libdir", False) - oldest_kernel = data.getVar("OLDEST_KERNEL", True) + qemu_options = data.getVar("QEMU_OPTIONS", True) - return "PSEUDO_UNLOAD=1 " + qemu_binary + " -r " + oldest_kernel + " -L " + rootfs_path\ + return "PSEUDO_UNLOAD=1 " + qemu_binary + " " + qemu_options + " -L " + rootfs_path\ + " -E LD_LIBRARY_PATH=" + libdir + ":" + base_libdir + " "\ + rootfs_path + binary -QEMU_OPTIONS = "-r ${OLDEST_KERNEL}" -QEMU_OPTIONS_append_iwmmxt = " -cpu pxa270-c5" -QEMU_OPTIONS_append_armv6 = " -cpu arm1136" -QEMU_OPTIONS_append_armv7a = " -cpu cortex-a8" -QEMU_OPTIONS_append_e500v2 = " -cpu e500v2" -QEMU_OPTIONS_append_e500mc = " -cpu e500mc" -QEMU_OPTIONS_append_e5500 = " -cpu e5500" -QEMU_OPTIONS_append_e5500-64b = " -cpu e5500" -QEMU_OPTIONS_append_e6500 = " -cpu e6500" -QEMU_OPTIONS_append_e6500-64b = " -cpu e6500" -QEMU_OPTIONS_append_ppc7400 = " -cpu 7400" +# QEMU_EXTRAOPTIONS is not meant to be directly used, the extensions are +# PACKAGE_ARCH, not overrides and hence have to do this dance. Simply being arch +# specific isn't good enough. +QEMU_OPTIONS = "-r ${OLDEST_KERNEL} ${@d.getVar("QEMU_EXTRAOPTIONS_%s" % d.getVar('PACKAGE_ARCH', True), True) or ""}" +QEMU_EXTRAOPTIONS_iwmmxt = " -cpu pxa270-c5" +QEMU_EXTRAOPTIONS_armv6 = " -cpu arm1136" +QEMU_EXTRAOPTIONS_armv7a = " -cpu cortex-a8" +QEMU_EXTRAOPTIONS_e500v2 = " -cpu e500v2" +QEMU_EXTRAOPTIONS_e500mc = " -cpu e500mc" +QEMU_EXTRAOPTIONS_e5500 = " -cpu e5500" +QEMU_EXTRAOPTIONS_e5500-64b = " -cpu e5500" +QEMU_EXTRAOPTIONS_e6500 = " -cpu e6500" +QEMU_EXTRAOPTIONS_e6500-64b = " -cpu e6500" +QEMU_EXTRAOPTIONS_ppc7400 = " -cpu 7400" diff --git a/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb b/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb index d2981b5575..959cd6fba0 100644 --- a/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb +++ b/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb @@ -9,7 +9,7 @@ do_install () { echo "#!/bin/sh" > ${D}${bindir_crossscripts}/qemuwrapper qemu_binary=${@qemu_target_binary(d)} - qemu_options='${@d.getVar("QEMU_OPTIONS_%s" % d.getVar('PACKAGE_ARCH', True), True) or d.getVar('QEMU_OPTIONS', True) or ""}' + qemu_options='${QEMU_OPTIONS}' echo "$qemu_binary $qemu_options \"\$@\"" >> ${D}${bindir_crossscripts}/qemuwrapper fallback_qemu_bin= case $qemu_binary in |