1*4882a593Smuzhiyun################################################################################ 2*4882a593Smuzhiyun# 3*4882a593Smuzhiyun# qemu 4*4882a593Smuzhiyun# 5*4882a593Smuzhiyun################################################################################ 6*4882a593Smuzhiyun 7*4882a593SmuzhiyunQEMU_VERSION = 6.1.0 8*4882a593SmuzhiyunQEMU_SOURCE = qemu-$(QEMU_VERSION).tar.xz 9*4882a593SmuzhiyunQEMU_SITE = http://download.qemu.org 10*4882a593SmuzhiyunQEMU_LICENSE = GPL-2.0, LGPL-2.1, MIT, BSD-3-Clause, BSD-2-Clause, Others/BSD-1c 11*4882a593SmuzhiyunQEMU_LICENSE_FILES = COPYING COPYING.LIB 12*4882a593Smuzhiyun# NOTE: there is no top-level license file for non-(L)GPL licenses; 13*4882a593Smuzhiyun# the non-(L)GPL license texts are specified in the affected 14*4882a593Smuzhiyun# individual source files. 15*4882a593SmuzhiyunQEMU_CPE_ID_VENDOR = qemu 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun#------------------------------------------------------------- 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun# The build system is now partly based on Meson. 20*4882a593Smuzhiyun# However, building is still done with configure and make as in previous versions of QEMU. 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun# Target-qemu 23*4882a593SmuzhiyunQEMU_DEPENDENCIES = host-meson host-pkgconf libglib2 zlib pixman host-python3 24*4882a593Smuzhiyun 25*4882a593Smuzhiyun# Need the LIBS variable because librt and libm are 26*4882a593Smuzhiyun# not automatically pulled. :-( 27*4882a593SmuzhiyunQEMU_LIBS = -lrt -lm 28*4882a593Smuzhiyun 29*4882a593SmuzhiyunQEMU_OPTS = 30*4882a593Smuzhiyun 31*4882a593SmuzhiyunQEMU_VARS = LIBTOOL=$(HOST_DIR)/bin/libtool 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun# If we want to specify only a subset of targets, we must still enable all 34*4882a593Smuzhiyun# of them, so that QEMU properly builds its list of default targets, from 35*4882a593Smuzhiyun# which it then checks if the specified sub-set is valid. That's what we 36*4882a593Smuzhiyun# do in the first part of the if-clause. 37*4882a593Smuzhiyun# Otherwise, if we do not want to pass a sub-set of targets, we then need 38*4882a593Smuzhiyun# to either enable or disable -user and/or -system emulation appropriately. 39*4882a593Smuzhiyun# That's what we do in the else-clause. 40*4882a593Smuzhiyunifneq ($(call qstrip,$(BR2_PACKAGE_QEMU_CUSTOM_TARGETS)),) 41*4882a593SmuzhiyunQEMU_OPTS += --enable-system --enable-linux-user 42*4882a593SmuzhiyunQEMU_OPTS += --target-list="$(call qstrip,$(BR2_PACKAGE_QEMU_CUSTOM_TARGETS))" 43*4882a593Smuzhiyunelse 44*4882a593Smuzhiyun 45*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_QEMU_SYSTEM),y) 46*4882a593SmuzhiyunQEMU_OPTS += --enable-system 47*4882a593Smuzhiyunelse 48*4882a593SmuzhiyunQEMU_OPTS += --disable-system 49*4882a593Smuzhiyunendif 50*4882a593Smuzhiyun 51*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_QEMU_LINUX_USER),y) 52*4882a593SmuzhiyunQEMU_OPTS += --enable-linux-user 53*4882a593Smuzhiyunelse 54*4882a593SmuzhiyunQEMU_OPTS += --disable-linux-user 55*4882a593Smuzhiyunendif 56*4882a593Smuzhiyun 57*4882a593Smuzhiyunendif 58*4882a593Smuzhiyun 59*4882a593Smuzhiyunifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y) 60*4882a593SmuzhiyunQEMU_OPTS += --disable-vhost-user 61*4882a593Smuzhiyunelse 62*4882a593SmuzhiyunQEMU_OPTS += --enable-vhost-user 63*4882a593Smuzhiyunendif 64*4882a593Smuzhiyun 65*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_QEMU_SLIRP),y) 66*4882a593SmuzhiyunQEMU_OPTS += --enable-slirp=system 67*4882a593SmuzhiyunQEMU_DEPENDENCIES += slirp 68*4882a593Smuzhiyunelse 69*4882a593SmuzhiyunQEMU_OPTS += --disable-slirp 70*4882a593Smuzhiyunendif 71*4882a593Smuzhiyun 72*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_QEMU_SDL),y) 73*4882a593SmuzhiyunQEMU_OPTS += --enable-sdl 74*4882a593SmuzhiyunQEMU_DEPENDENCIES += sdl2 75*4882a593SmuzhiyunQEMU_VARS += SDL2_CONFIG=$(BR2_STAGING_DIR)/usr/bin/sdl2-config 76*4882a593Smuzhiyunelse 77*4882a593SmuzhiyunQEMU_OPTS += --disable-sdl 78*4882a593Smuzhiyunendif 79*4882a593Smuzhiyun 80*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_QEMU_FDT),y) 81*4882a593SmuzhiyunQEMU_OPTS += --enable-fdt 82*4882a593SmuzhiyunQEMU_DEPENDENCIES += dtc 83*4882a593Smuzhiyunelse 84*4882a593SmuzhiyunQEMU_OPTS += --disable-fdt 85*4882a593Smuzhiyunendif 86*4882a593Smuzhiyun 87*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_QEMU_TOOLS),y) 88*4882a593SmuzhiyunQEMU_OPTS += --enable-tools 89*4882a593Smuzhiyunelse 90*4882a593SmuzhiyunQEMU_OPTS += --disable-tools 91*4882a593Smuzhiyunendif 92*4882a593Smuzhiyun 93*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBFUSE3),y) 94*4882a593SmuzhiyunQEMU_OPTS += --enable-fuse --enable-fuse-lseek 95*4882a593SmuzhiyunQEMU_DEPENDENCIES += libfuse3 96*4882a593Smuzhiyunelse 97*4882a593SmuzhiyunQEMU_OPTS += --disable-fuse --disable-fuse-lseek 98*4882a593Smuzhiyunendif 99*4882a593Smuzhiyun 100*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBSECCOMP),y) 101*4882a593SmuzhiyunQEMU_OPTS += --enable-seccomp 102*4882a593SmuzhiyunQEMU_DEPENDENCIES += libseccomp 103*4882a593Smuzhiyunelse 104*4882a593SmuzhiyunQEMU_OPTS += --disable-seccomp 105*4882a593Smuzhiyunendif 106*4882a593Smuzhiyun 107*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBSSH),y) 108*4882a593SmuzhiyunQEMU_OPTS += --enable-libssh 109*4882a593SmuzhiyunQEMU_DEPENDENCIES += libssh 110*4882a593Smuzhiyunelse 111*4882a593SmuzhiyunQEMU_OPTS += --disable-libssh 112*4882a593Smuzhiyunendif 113*4882a593Smuzhiyun 114*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBUSB),y) 115*4882a593SmuzhiyunQEMU_OPTS += --enable-libusb 116*4882a593SmuzhiyunQEMU_DEPENDENCIES += libusb 117*4882a593Smuzhiyunelse 118*4882a593SmuzhiyunQEMU_OPTS += --disable-libusb 119*4882a593Smuzhiyunendif 120*4882a593Smuzhiyun 121*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBVNCSERVER),y) 122*4882a593SmuzhiyunQEMU_OPTS += \ 123*4882a593Smuzhiyun --enable-vnc \ 124*4882a593Smuzhiyun --disable-vnc-sasl 125*4882a593SmuzhiyunQEMU_DEPENDENCIES += libvncserver 126*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBPNG),y) 127*4882a593SmuzhiyunQEMU_OPTS += --enable-vnc-png 128*4882a593SmuzhiyunQEMU_DEPENDENCIES += libpng 129*4882a593Smuzhiyunelse 130*4882a593SmuzhiyunQEMU_OPTS += --disable-vnc-png 131*4882a593Smuzhiyunendif 132*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_JPEG),y) 133*4882a593SmuzhiyunQEMU_OPTS += --enable-vnc-jpeg 134*4882a593SmuzhiyunQEMU_DEPENDENCIES += jpeg 135*4882a593Smuzhiyunelse 136*4882a593SmuzhiyunQEMU_OPTS += --disable-vnc-jpeg 137*4882a593Smuzhiyunendif 138*4882a593Smuzhiyunelse 139*4882a593SmuzhiyunQEMU_OPTS += --disable-vnc 140*4882a593Smuzhiyunendif 141*4882a593Smuzhiyun 142*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_NETTLE),y) 143*4882a593SmuzhiyunQEMU_OPTS += --enable-nettle 144*4882a593SmuzhiyunQEMU_DEPENDENCIES += nettle 145*4882a593Smuzhiyunelse 146*4882a593SmuzhiyunQEMU_OPTS += --disable-nettle 147*4882a593Smuzhiyunendif 148*4882a593Smuzhiyun 149*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_NUMACTL),y) 150*4882a593SmuzhiyunQEMU_OPTS += --enable-numa 151*4882a593SmuzhiyunQEMU_DEPENDENCIES += numactl 152*4882a593Smuzhiyunelse 153*4882a593SmuzhiyunQEMU_OPTS += --disable-numa 154*4882a593Smuzhiyunendif 155*4882a593Smuzhiyun 156*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_SPICE),y) 157*4882a593SmuzhiyunQEMU_OPTS += --enable-spice 158*4882a593SmuzhiyunQEMU_DEPENDENCIES += spice 159*4882a593Smuzhiyunelse 160*4882a593SmuzhiyunQEMU_OPTS += --disable-spice 161*4882a593Smuzhiyunendif 162*4882a593Smuzhiyun 163*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_USBREDIR),y) 164*4882a593SmuzhiyunQEMU_OPTS += --enable-usb-redir 165*4882a593SmuzhiyunQEMU_DEPENDENCIES += usbredir 166*4882a593Smuzhiyunelse 167*4882a593SmuzhiyunQEMU_OPTS += --disable-usb-redir 168*4882a593Smuzhiyunendif 169*4882a593Smuzhiyun 170*4882a593Smuzhiyunifeq ($(BR2_STATIC_LIBS),y) 171*4882a593SmuzhiyunQEMU_OPTS += --static 172*4882a593Smuzhiyunendif 173*4882a593Smuzhiyun 174*4882a593Smuzhiyun# Override CPP, as it expects to be able to call it like it'd 175*4882a593Smuzhiyun# call the compiler. 176*4882a593Smuzhiyundefine QEMU_CONFIGURE_CMDS 177*4882a593Smuzhiyun unset TARGET_DIR; \ 178*4882a593Smuzhiyun cd $(@D); \ 179*4882a593Smuzhiyun LIBS='$(QEMU_LIBS)' \ 180*4882a593Smuzhiyun $(TARGET_CONFIGURE_OPTS) \ 181*4882a593Smuzhiyun $(TARGET_CONFIGURE_ARGS) \ 182*4882a593Smuzhiyun CPP="$(TARGET_CC) -E" \ 183*4882a593Smuzhiyun $(QEMU_VARS) \ 184*4882a593Smuzhiyun ./configure \ 185*4882a593Smuzhiyun --prefix=/usr \ 186*4882a593Smuzhiyun --cross-prefix=$(TARGET_CROSS) \ 187*4882a593Smuzhiyun --audio-drv-list= \ 188*4882a593Smuzhiyun --meson=$(HOST_DIR)/bin/meson \ 189*4882a593Smuzhiyun --ninja=$(HOST_DIR)/bin/ninja \ 190*4882a593Smuzhiyun --enable-kvm \ 191*4882a593Smuzhiyun --enable-attr \ 192*4882a593Smuzhiyun --enable-vhost-net \ 193*4882a593Smuzhiyun --disable-bpf \ 194*4882a593Smuzhiyun --disable-bsd-user \ 195*4882a593Smuzhiyun --disable-containers \ 196*4882a593Smuzhiyun --disable-xen \ 197*4882a593Smuzhiyun --disable-virtfs \ 198*4882a593Smuzhiyun --disable-brlapi \ 199*4882a593Smuzhiyun --disable-curses \ 200*4882a593Smuzhiyun --disable-curl \ 201*4882a593Smuzhiyun --disable-vde \ 202*4882a593Smuzhiyun --disable-linux-aio \ 203*4882a593Smuzhiyun --disable-linux-io-uring \ 204*4882a593Smuzhiyun --disable-cap-ng \ 205*4882a593Smuzhiyun --disable-docs \ 206*4882a593Smuzhiyun --disable-rbd \ 207*4882a593Smuzhiyun --disable-libiscsi \ 208*4882a593Smuzhiyun --disable-strip \ 209*4882a593Smuzhiyun --disable-sparse \ 210*4882a593Smuzhiyun --disable-mpath \ 211*4882a593Smuzhiyun --disable-sanitizers \ 212*4882a593Smuzhiyun --disable-hvf \ 213*4882a593Smuzhiyun --disable-whpx \ 214*4882a593Smuzhiyun --disable-malloc-trim \ 215*4882a593Smuzhiyun --disable-membarrier \ 216*4882a593Smuzhiyun --disable-vhost-crypto \ 217*4882a593Smuzhiyun --disable-libxml2 \ 218*4882a593Smuzhiyun --disable-capstone \ 219*4882a593Smuzhiyun --with-git-submodules=ignore \ 220*4882a593Smuzhiyun --disable-opengl \ 221*4882a593Smuzhiyun --disable-vhost-user-blk-server \ 222*4882a593Smuzhiyun --disable-virtiofsd \ 223*4882a593Smuzhiyun $(QEMU_OPTS) 224*4882a593Smuzhiyunendef 225*4882a593Smuzhiyun 226*4882a593Smuzhiyundefine QEMU_BUILD_CMDS 227*4882a593Smuzhiyun unset TARGET_DIR; \ 228*4882a593Smuzhiyun $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) 229*4882a593Smuzhiyunendef 230*4882a593Smuzhiyun 231*4882a593Smuzhiyundefine QEMU_INSTALL_TARGET_CMDS 232*4882a593Smuzhiyun unset TARGET_DIR; \ 233*4882a593Smuzhiyun $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(QEMU_MAKE_ENV) DESTDIR=$(TARGET_DIR) install 234*4882a593Smuzhiyunendef 235*4882a593Smuzhiyun 236*4882a593Smuzhiyun$(eval $(generic-package)) 237*4882a593Smuzhiyun 238*4882a593Smuzhiyun#------------------------------------------------------------- 239*4882a593Smuzhiyun# Host-qemu 240*4882a593Smuzhiyun 241*4882a593SmuzhiyunHOST_QEMU_DEPENDENCIES = host-meson host-pkgconf host-zlib host-libglib2 host-pixman host-python3 242*4882a593Smuzhiyun 243*4882a593Smuzhiyun# BR ARCH qemu 244*4882a593Smuzhiyun# ------- ---- 245*4882a593Smuzhiyun# arm arm 246*4882a593Smuzhiyun# armeb armeb 247*4882a593Smuzhiyun# i486 i386 248*4882a593Smuzhiyun# i586 i386 249*4882a593Smuzhiyun# i686 i386 250*4882a593Smuzhiyun# x86_64 x86_64 251*4882a593Smuzhiyun# m68k m68k 252*4882a593Smuzhiyun# microblaze microblaze 253*4882a593Smuzhiyun# mips mips 254*4882a593Smuzhiyun# mipsel mipsel 255*4882a593Smuzhiyun# mips64 mips64 256*4882a593Smuzhiyun# mips64el mips64el 257*4882a593Smuzhiyun# nios2 nios2 258*4882a593Smuzhiyun# or1k or1k 259*4882a593Smuzhiyun# powerpc ppc 260*4882a593Smuzhiyun# powerpc64 ppc64 261*4882a593Smuzhiyun# powerpc64le ppc64 (system) / ppc64le (usermode) 262*4882a593Smuzhiyun# sh2a not supported 263*4882a593Smuzhiyun# sh4 sh4 264*4882a593Smuzhiyun# sh4eb sh4eb 265*4882a593Smuzhiyun# sh4a sh4 266*4882a593Smuzhiyun# sh4aeb sh4eb 267*4882a593Smuzhiyun# sparc sparc 268*4882a593Smuzhiyun# sparc64 sparc64 269*4882a593Smuzhiyun# xtensa xtensa 270*4882a593Smuzhiyun 271*4882a593SmuzhiyunHOST_QEMU_ARCH = $(ARCH) 272*4882a593Smuzhiyunifeq ($(HOST_QEMU_ARCH),i486) 273*4882a593SmuzhiyunHOST_QEMU_ARCH = i386 274*4882a593Smuzhiyunendif 275*4882a593Smuzhiyunifeq ($(HOST_QEMU_ARCH),i586) 276*4882a593SmuzhiyunHOST_QEMU_ARCH = i386 277*4882a593Smuzhiyunendif 278*4882a593Smuzhiyunifeq ($(HOST_QEMU_ARCH),i686) 279*4882a593SmuzhiyunHOST_QEMU_ARCH = i386 280*4882a593Smuzhiyunendif 281*4882a593Smuzhiyunifeq ($(HOST_QEMU_ARCH),powerpc) 282*4882a593SmuzhiyunHOST_QEMU_ARCH = ppc 283*4882a593Smuzhiyunendif 284*4882a593Smuzhiyunifeq ($(HOST_QEMU_ARCH),powerpc64) 285*4882a593SmuzhiyunHOST_QEMU_ARCH = ppc64 286*4882a593Smuzhiyunendif 287*4882a593Smuzhiyunifeq ($(HOST_QEMU_ARCH),powerpc64le) 288*4882a593SmuzhiyunHOST_QEMU_ARCH = ppc64le 289*4882a593SmuzhiyunHOST_QEMU_SYS_ARCH = ppc64 290*4882a593Smuzhiyunendif 291*4882a593Smuzhiyunifeq ($(HOST_QEMU_ARCH),sh4a) 292*4882a593SmuzhiyunHOST_QEMU_ARCH = sh4 293*4882a593Smuzhiyunendif 294*4882a593Smuzhiyunifeq ($(HOST_QEMU_ARCH),sh4aeb) 295*4882a593SmuzhiyunHOST_QEMU_ARCH = sh4eb 296*4882a593Smuzhiyunendif 297*4882a593SmuzhiyunHOST_QEMU_SYS_ARCH ?= $(HOST_QEMU_ARCH) 298*4882a593Smuzhiyun 299*4882a593SmuzhiyunHOST_QEMU_CFLAGS = $(HOST_CFLAGS) 300*4882a593Smuzhiyun 301*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_HOST_QEMU_SYSTEM_MODE),y) 302*4882a593SmuzhiyunHOST_QEMU_TARGETS += $(HOST_QEMU_SYS_ARCH)-softmmu 303*4882a593SmuzhiyunHOST_QEMU_OPTS += --enable-system --enable-fdt 304*4882a593SmuzhiyunHOST_QEMU_CFLAGS += -I$(HOST_DIR)/include/libfdt 305*4882a593SmuzhiyunHOST_QEMU_DEPENDENCIES += host-dtc 306*4882a593Smuzhiyunelse 307*4882a593SmuzhiyunHOST_QEMU_OPTS += --disable-system 308*4882a593Smuzhiyunendif 309*4882a593Smuzhiyun 310*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_HOST_QEMU_LINUX_USER_MODE),y) 311*4882a593SmuzhiyunHOST_QEMU_TARGETS += $(HOST_QEMU_ARCH)-linux-user 312*4882a593SmuzhiyunHOST_QEMU_OPTS += --enable-linux-user 313*4882a593Smuzhiyun 314*4882a593SmuzhiyunHOST_QEMU_HOST_SYSTEM_TYPE = $(shell uname -s) 315*4882a593Smuzhiyunifneq ($(HOST_QEMU_HOST_SYSTEM_TYPE),Linux) 316*4882a593Smuzhiyun$(error "qemu-user can only be used on Linux hosts") 317*4882a593Smuzhiyunendif 318*4882a593Smuzhiyun 319*4882a593Smuzhiyunelse # BR2_PACKAGE_HOST_QEMU_LINUX_USER_MODE 320*4882a593SmuzhiyunHOST_QEMU_OPTS += --disable-linux-user 321*4882a593Smuzhiyunendif # BR2_PACKAGE_HOST_QEMU_LINUX_USER_MODE 322*4882a593Smuzhiyun 323*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_HOST_QEMU_VDE2),y) 324*4882a593SmuzhiyunHOST_QEMU_OPTS += --enable-vde 325*4882a593SmuzhiyunHOST_QEMU_DEPENDENCIES += host-vde2 326*4882a593Smuzhiyunendif 327*4882a593Smuzhiyun 328*4882a593Smuzhiyun# virtfs-proxy-helper is the only user of libcap-ng. 329*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_HOST_QEMU_VIRTFS),y) 330*4882a593SmuzhiyunHOST_QEMU_OPTS += --enable-virtfs --enable-cap-ng 331*4882a593SmuzhiyunHOST_QEMU_DEPENDENCIES += host-libcap-ng 332*4882a593Smuzhiyunelse 333*4882a593SmuzhiyunHOST_QEMU_OPTS += --disable-virtfs --disable-cap-ng 334*4882a593Smuzhiyunendif 335*4882a593Smuzhiyun 336*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_HOST_QEMU_USB),y) 337*4882a593SmuzhiyunHOST_QEMU_OPTS += --enable-libusb 338*4882a593SmuzhiyunHOST_QEMU_DEPENDENCIES += host-libusb 339*4882a593Smuzhiyunelse 340*4882a593SmuzhiyunHOST_QEMU_OPTS += --disable-libusb 341*4882a593Smuzhiyunendif 342*4882a593Smuzhiyun 343*4882a593Smuzhiyun# Override CPP, as it expects to be able to call it like it'd 344*4882a593Smuzhiyun# call the compiler. 345*4882a593Smuzhiyundefine HOST_QEMU_CONFIGURE_CMDS 346*4882a593Smuzhiyun unset TARGET_DIR; \ 347*4882a593Smuzhiyun cd $(@D); $(HOST_CONFIGURE_OPTS) CPP="$(HOSTCC) -E" \ 348*4882a593Smuzhiyun ./configure \ 349*4882a593Smuzhiyun --target-list="$(HOST_QEMU_TARGETS)" \ 350*4882a593Smuzhiyun --prefix="$(HOST_DIR)" \ 351*4882a593Smuzhiyun --interp-prefix=$(STAGING_DIR) \ 352*4882a593Smuzhiyun --cc="$(HOSTCC)" \ 353*4882a593Smuzhiyun --host-cc="$(HOSTCC)" \ 354*4882a593Smuzhiyun --extra-cflags="$(HOST_QEMU_CFLAGS)" \ 355*4882a593Smuzhiyun --extra-ldflags="$(HOST_LDFLAGS)" \ 356*4882a593Smuzhiyun --meson=$(HOST_DIR)/bin/meson \ 357*4882a593Smuzhiyun --ninja=$(HOST_DIR)/bin/ninja \ 358*4882a593Smuzhiyun --disable-bpf \ 359*4882a593Smuzhiyun --disable-bzip2 \ 360*4882a593Smuzhiyun --disable-containers \ 361*4882a593Smuzhiyun --disable-curl \ 362*4882a593Smuzhiyun --disable-docs \ 363*4882a593Smuzhiyun --disable-libssh \ 364*4882a593Smuzhiyun --disable-linux-io-uring \ 365*4882a593Smuzhiyun --disable-sdl \ 366*4882a593Smuzhiyun --disable-vhost-user-blk-server \ 367*4882a593Smuzhiyun --disable-virtiofsd \ 368*4882a593Smuzhiyun --disable-vnc-jpeg \ 369*4882a593Smuzhiyun --disable-vnc-png \ 370*4882a593Smuzhiyun --disable-vnc-sasl \ 371*4882a593Smuzhiyun $(HOST_QEMU_OPTS) 372*4882a593Smuzhiyunendef 373*4882a593Smuzhiyun 374*4882a593Smuzhiyundefine HOST_QEMU_BUILD_CMDS 375*4882a593Smuzhiyun unset TARGET_DIR; \ 376*4882a593Smuzhiyun $(HOST_MAKE_ENV) $(MAKE) -C $(@D) 377*4882a593Smuzhiyunendef 378*4882a593Smuzhiyun 379*4882a593Smuzhiyundefine HOST_QEMU_INSTALL_CMDS 380*4882a593Smuzhiyun unset TARGET_DIR; \ 381*4882a593Smuzhiyun $(HOST_MAKE_ENV) $(MAKE) -C $(@D) install 382*4882a593Smuzhiyunendef 383*4882a593Smuzhiyun 384*4882a593Smuzhiyun$(eval $(host-generic-package)) 385*4882a593Smuzhiyun 386*4882a593Smuzhiyun# variable used by other packages 387*4882a593SmuzhiyunQEMU_USER = $(HOST_DIR)/bin/qemu-$(HOST_QEMU_ARCH) 388