123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147 |
- config BR2_PACKAGE_QEMU_ARCH_SUPPORTS_TARGET
- bool
- # Only tested on these architectures
- default y if BR2_aarch64 || BR2_i386 || BR2_mips || BR2_mipsel \
- || BR2_x86_64 || BR2_arm \
- || BR2_powerpc64 || BR2_powerpc64le
- comment "QEMU requires a toolchain with wchar, threads"
- depends on BR2_PACKAGE_QEMU_ARCH_SUPPORTS_TARGET
- depends on BR2_USE_MMU
- depends on !(BR2_TOOLCHAIN_HAS_THREADS && BR2_USE_WCHAR)
- config BR2_PACKAGE_QEMU
- bool "QEMU"
- depends on BR2_PACKAGE_QEMU_ARCH_SUPPORTS_TARGET
- depends on BR2_TOOLCHAIN_HAS_THREADS
- depends on BR2_USE_WCHAR # gettext
- depends on BR2_USE_MMU # fork()
- select BR2_PACKAGE_LIBGLIB2
- select BR2_PACKAGE_PIXMAN
- select BR2_PACKAGE_ZLIB
- help
- QEMU is a generic and open source machine emulator and
- virtualizer.
- When used as a machine emulator, QEMU can run OSes and
- programs made for one machine (e.g. an ARM board) on a
- different machine (e.g. your own PC). By using dynamic
- translation, it achieves very good performance.
- When used as a virtualizer, QEMU achieves near native
- performances by executing the guest code directly on the
- host CPU. QEMU supports virtualization when executing under
- the Xen hypervisor or using the KVM kernel module in
- Linux. When using KVM, QEMU can virtualize x86, server and
- embedded PowerPC, and S390 guests.
- http://qemu.org/
- if BR2_PACKAGE_QEMU
- comment "Emulators selection"
- config BR2_PACKAGE_QEMU_CUSTOM_TARGETS
- string "Enable specific targets"
- help
- Enter here the list of QEMU targets you want to build. For
- example:
- System emulation | User-land emulation
- ----------------------+-----------------------
- i386-softmmu | i386-linux-user
- arm-softmmu | ppc-linux-user
- x86_64-softmmu | sparc-bsd-user
- ... | ...
- comment "Networking options"
- config BR2_PACKAGE_QEMU_SLIRP
- bool "Enable user mode networking (SLIRP)"
- help
- Enable user mode network stack, which is the default
- networking backend. It requires no administrator privileges
- and generally is the easiest to use but has some
- limitations:
- - there is a lot of overhead so the performance is poor;
- - in general ICMP does not work (can't ping from/to a guest)
- - on Linux hosts, ping does work from within the guest, but it
- needs initial setup by root (once per host)
- - the guest is not directly accessible from the host or the
- external network
- User Networking is implemented using "slirp", which provides a
- full TCP/IP stack within QEMU and uses that stack to implement
- a virtual NAT'd network.
- Notice that this option does not disable other networking
- modes.
- if BR2_PACKAGE_QEMU_CUSTOM_TARGETS = ""
- comment "... or you can select emulator families to enable, below:"
- config BR2_PACKAGE_QEMU_SYSTEM
- bool "Enable all systems emulation"
- depends on !BR2_STATIC_LIBS # dtc
- select BR2_PACKAGE_QEMU_FDT
- help
- Say 'y' to build all system emulators/virtualisers that QEMU
- supports.
- comment "systems emulation needs a toolchain w/ dynamic library"
- depends on BR2_STATIC_LIBS
- config BR2_PACKAGE_QEMU_LINUX_USER
- bool "Enable all Linux user-land emulation"
- # Incompatible "struct sigevent" definition on musl
- depends on !BR2_TOOLCHAIN_USES_MUSL
- help
- Say 'y' to build all Linux user-land emulators that QEMU
- supports.
- # Note: bsd-user can not be build on Linux
- comment "Linux user-land emulation needs a glibc or uClibc toolchain"
- depends on BR2_TOOLCHAIN_USES_MUSL
- endif # BR2_PACKAGE_QEMU_CUSTOM_TARGETS == ""
- config BR2_PACKAGE_QEMU_HAS_EMULS
- def_bool y
- depends on BR2_PACKAGE_QEMU_SYSTEM || BR2_PACKAGE_QEMU_LINUX_USER || BR2_PACKAGE_QEMU_CUSTOM_TARGETS != ""
- if BR2_PACKAGE_QEMU_HAS_EMULS
- comment "Frontends"
- config BR2_PACKAGE_QEMU_SDL
- bool "Enable SDL frontend"
- select BR2_PACKAGE_SDL
- help
- Say 'y' to enable the SDL frontend, that is, a graphical
- window presenting the VM's display.
- comment "Misc. features"
- config BR2_PACKAGE_QEMU_FDT
- bool "Enable FDT"
- depends on !BR2_STATIC_LIBS # dtc
- select BR2_PACKAGE_DTC
- help
- Say 'y' here to have QEMU capable of constructing Device
- Trees, and passing them to the VMs.
- comment "FDT support needs a toolchain w/ dynamic library"
- depends on BR2_STATIC_LIBS
- endif # BR2_PACKAGE_QEMU_HAS_EMULS
- config BR2_PACKAGE_QEMU_TOOLS
- bool "Enable tools"
- help
- Say 'y' here to include tools packaged with QEMU
- (e.g. qemu-img).
- endif # BR2_PACKAGE_QEMU
|