1 config BR2_PACKAGE_QEMU_ARCH_SUPPORTS_TARGET
3 # Only tested on these architectures
4 default y if BR2_i386 || BR2_mips || BR2_mipsel || BR2_x86_64
6 comment "QEMU requires a toolchain with wchar, threads"
7 depends on BR2_PACKAGE_QEMU_ARCH_SUPPORTS_TARGET
9 depends on !(BR2_TOOLCHAIN_HAS_THREADS && BR2_USE_WCHAR)
11 config BR2_PACKAGE_QEMU
13 depends on BR2_PACKAGE_QEMU_ARCH_SUPPORTS_TARGET
14 depends on BR2_TOOLCHAIN_HAS_THREADS
15 depends on BR2_USE_WCHAR # gettext
16 depends on BR2_USE_MMU # fork()
17 select BR2_PACKAGE_LIBGLIB2
18 select BR2_PACKAGE_PIXMAN
19 select BR2_PACKAGE_ZLIB
21 QEMU is a generic and open source machine emulator and virtualizer.
23 When used as a machine emulator, QEMU can run OSes and programs made
24 for one machine (e.g. an ARM board) on a different machine (e.g.
25 your own PC). By using dynamic translation, it achieves very good
28 When used as a virtualizer, QEMU achieves near native performances
29 by executing the guest code directly on the host CPU. QEMU supports
30 virtualization when executing under the Xen hypervisor or using the
31 KVM kernel module in Linux. When using KVM, QEMU can virtualize x86,
32 server and embedded PowerPC, and S390 guests.
38 comment "Emulators selection"
40 config BR2_PACKAGE_QEMU_CUSTOM_TARGETS
41 string "Enable specific targets"
43 Enter here the list of QEMU targets you want to build. For example:
45 System emulation | User-land emulation
46 ----------------------+-----------------------
47 i386-softmmu | i386-linux-user
48 arm-softmmu | ppc-linux-user
49 x86_64-softmmu | sparc-bsd-user
53 bool # To break the indentation
55 if BR2_PACKAGE_QEMU_CUSTOM_TARGETS = ""
57 comment "... or you can select emulator families to enable, below:"
59 config BR2_PACKAGE_QEMU_SYSTEM
60 bool "Enable all systems emulation"
61 depends on !BR2_STATIC_LIBS # dtc
62 select BR2_PACKAGE_QEMU_FDT
64 Say 'y' to build all system emulators/virtualisers that QEMU supports.
66 comment "systems emulation needs a toolchain w/ dynamic library"
67 depends on BR2_STATIC_LIBS
69 config BR2_PACKAGE_QEMU_LINUX_USER
70 bool "Enable all Linux user-land emulation"
72 Say 'y' to build all Linux user-land emulators that QEMU supports.
74 # Note: bsd-user can not be build on Linux
76 endif # BR2_PACKAGE_QEMU_CUSTOM_TARGETS == ""
78 config BR2_PACKAGE_QEMU_HAS_EMULS
80 depends on BR2_PACKAGE_QEMU_SYSTEM || BR2_PACKAGE_QEMU_LINUX_USER || BR2_PACKAGE_QEMU_CUSTOM_TARGETS != ""
82 if BR2_PACKAGE_QEMU_HAS_EMULS
86 config BR2_PACKAGE_QEMU_SDL
87 bool "Enable SDL frontend"
88 select BR2_PACKAGE_SDL
90 Say 'y' to enable the SDL frontend, that is, a graphical window
91 presenting the VM's display.
93 comment "Misc. features"
95 config BR2_PACKAGE_QEMU_FDT
97 depends on !BR2_STATIC_LIBS # dtc
98 select BR2_PACKAGE_DTC
100 Say 'y' here to have QEMU capable of constructing Device Trees,
101 and passing them to the VMs.
103 comment "FDT support needs a toolchain w/ dynamic library"
104 depends on BR2_STATIC_LIBS
106 endif # BR2_PACKAGE_QEMU_HAS_EMULS
108 endif # BR2_PACKAGE_QEMU