1config BR2_PACKAGE_LIBVIRT_ARCH_SUPPORTS 2 bool 3 default y if BR2_aarch64 4 default y if BR2_i386 5 default y if BR2_x86_64 6 depends on BR2_USE_MMU # fork() 7 8comment "libvirt needs udev /dev management, a toolchain w/ threads, dynamic library, wchar, kernel headers >= 3.12 (4.11 for AArch64)" 9 depends on BR2_PACKAGE_LIBVIRT_ARCH_SUPPORTS 10 depends on !BR2_PACKAGE_HAS_UDEV || BR2_STATIC_LIBS || \ 11 !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \ 12 !(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 && \ 13 (BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_11 || !BR2_aarch64)) 14 15config BR2_PACKAGE_LIBVIRT 16 bool "libvirt" 17 depends on BR2_PACKAGE_LIBVIRT_ARCH_SUPPORTS 18 depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 19 depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_11 || !BR2_aarch64 20 depends on BR2_PACKAGE_HAS_UDEV 21 depends on !BR2_STATIC_LIBS 22 depends on BR2_TOOLCHAIN_HAS_THREADS 23 depends on BR2_USE_WCHAR 24 select BR2_PACKAGE_GNUTLS 25 # configure: You must install the pciaccess module to build with udev 26 select BR2_PACKAGE_LIBPCIACCESS 27 select BR2_PACKAGE_LIBGLIB2 28 select BR2_PACKAGE_LIBTIRPC 29 select BR2_PACKAGE_LIBXML2 30 select BR2_PACKAGE_ZLIB 31 # run-time dependencies 32 select BR2_PACKAGE_CGROUPFS_MOUNT if !BR2_INIT_SYSTEMD 33 help 34 Libvirt is collection of software that provides a convenient 35 way to manage virtual machines and other virtualization 36 functionality, such as storage and network interface 37 management. These software pieces include an API library, a 38 daemon (libvirtd), and a command line utility (virsh). 39 40 https://libvirt.org/ 41 42if BR2_PACKAGE_LIBVIRT 43 44config BR2_PACKAGE_LIBVIRT_DAEMON 45 bool "libvirtd" 46 default y 47 depends on BR2_INSTALL_LIBSTDCPP # nmap 48 select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS 49 select BR2_PACKAGE_DNSMASQ 50 select BR2_PACKAGE_EBTABLES 51 select BR2_PACKAGE_IPTABLES 52 select BR2_PACKAGE_IPROUTE2 53 # These are required because there is no way to unequivocally select a modern netcat 54 select BR2_PACKAGE_NMAP if !BR2_PACKAGE_NETCAT_OPENBSD 55 select BR2_PACKAGE_NMAP_NCAT if !BR2_PACKAGE_NETCAT_OPENBSD 56 select BR2_PACKAGE_RADVD 57 help 58 Build the libvirt daemon (libvirtd) otherwise build only the 59 utility programs. 60 61comment "libvirtd needs a toolchain w/ C++" 62 depends on !BR2_INSTALL_LIBSTDCPP 63 64# Stateful drivers are useful only when building the daemon. 65if BR2_PACKAGE_LIBVIRT_DAEMON 66 67config BR2_PACKAGE_LIBVIRT_QEMU 68 bool "qemu" 69 depends on BR2_PACKAGE_LIBSECCOMP_ARCH_SUPPORTS # libseccomp 70 depends on BR2_PACKAGE_QEMU_ARCH_SUPPORTS_TARGET 71 depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # qemu 72 select BR2_PACKAGE_HWDATA # libpciaccess 73 select BR2_PACKAGE_HWDATA_PCI_IDS # libpciaccess 74 select BR2_PACKAGE_LIBSECCOMP 75 select BR2_PACKAGE_QEMU 76 select BR2_PACKAGE_QEMU_SYSTEM 77 select BR2_PACKAGE_YAJL 78 help 79 QEMU/KVM support 80 81comment "qemu needs a toolchain with gcc >= 8" 82 depends on BR2_PACKAGE_LIBSECCOMP_ARCH_SUPPORTS 83 depends on BR2_PACKAGE_QEMU_ARCH_SUPPORTS_TARGET 84 depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_8 85 86config BR2_PACKAGE_LIBVIRT_LXC 87 bool "lxc" 88 depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # lxc 89 select BR2_PACKAGE_LXC 90 help 91 Linux Container support 92 93comment "lxc needs a toolchain w/ gcc >= 4.7" 94 depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 95 96endif 97 98endif 99