diff options
author | Jesse Gilles <jgilles@multitech.com> | 2010-04-21 11:11:52 -0500 |
---|---|---|
committer | Jesse Gilles <jgilles@multitech.com> | 2010-04-26 11:36:00 -0500 |
commit | 746d3f145c5d890aa63e00a8261ee5934733eaac (patch) | |
tree | c2e5031d32e60335094b01efe804b4445337bcc9 /classes/qemu.bbclass | |
parent | 2b0109cdd8be5a58d230db249da51abf617d2ca0 (diff) |
qemu: Move gcc version check, qemu-TARGET logic into qemu.bbclass
Move the logic to determine what qemu-TARGET to run into qemu.bbclass so
we can check for the right binary in sanity.bbclass. This code was
duplicated by glibc-package and eglibc-package anyhow and with the new fn
we can clean up the usage in these classes a bit. Now that we have a class
for qemu stuff, and the gcc check is just for qemu, move it there.
Conflicts:
classes/base.bbclass
classes/sanity.bbclass
Diffstat (limited to 'classes/qemu.bbclass')
-rw-r--r-- | classes/qemu.bbclass | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/classes/qemu.bbclass b/classes/qemu.bbclass new file mode 100644 index 0000000000..40a3542450 --- /dev/null +++ b/classes/qemu.bbclass @@ -0,0 +1,27 @@ +# +# This class contains functions for recipes that need QEMU or test for its +# existance. +# + +def check_gcc3(data): + # Used by qemu to make sure we have a workable gcc-3.x. + # Start by checking for the program name as we build it as there + # are some distribtuion provided gcc-3.x's that will not work. + gcc3_versions = 'gcc-3.4.6 gcc-3.4.4 gcc34 gcc-3.4 gcc-3.4.7 gcc-3.3 gcc33 gcc-3.3.6 gcc-3.2 gcc32' + + for gcc3 in gcc3_versions.split(): + if check_app_exists(gcc3, data): + return gcc3 + + return False + +def qemu_target_binary(data): + import bb + + target_arch = bb.data.getVar("TARGET_ARCH", data, 1) + if target_arch in ("i486", "i586", "i686"): + target_arch = "i386" + elif target_arch == "powerpc": + target_arch = "ppc" + + return "qemu-" + target_arch |