meson-buildoptions.sh 35 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600
  1. # This file is generated by meson-buildoptions.py, do not edit!
  2. meson_options_help() {
  3. printf "%s\n" ' --audio-drv-list=CHOICES Set audio driver list [default] (choices: alsa/co'
  4. printf "%s\n" ' reaudio/default/dsound/jack/oss/pa/pipewire/sdl/s'
  5. printf "%s\n" ' ndio)'
  6. printf "%s\n" ' --bindir=VALUE Executable directory [bin]'
  7. printf "%s\n" ' --block-drv-ro-whitelist=VALUE'
  8. printf "%s\n" ' set block driver read-only whitelist (by default'
  9. printf "%s\n" ' affects only QEMU, not tools like qemu-img)'
  10. printf "%s\n" ' --block-drv-rw-whitelist=VALUE'
  11. printf "%s\n" ' set block driver read-write whitelist (by default'
  12. printf "%s\n" ' affects only QEMU, not tools like qemu-img)'
  13. printf "%s\n" ' --datadir=VALUE Data file directory [share]'
  14. printf "%s\n" ' --disable-coroutine-pool coroutine freelist (better performance)'
  15. printf "%s\n" ' --disable-debug-info Enable debug symbols and other information'
  16. printf "%s\n" ' --disable-hexagon-idef-parser'
  17. printf "%s\n" ' use idef-parser to automatically generate TCG'
  18. printf "%s\n" ' code for the Hexagon frontend'
  19. printf "%s\n" ' --disable-install-blobs install provided firmware blobs'
  20. printf "%s\n" ' --disable-qom-cast-debug cast debugging support'
  21. printf "%s\n" ' --disable-relocatable toggle relocatable install'
  22. printf "%s\n" ' --docdir=VALUE Base directory for documentation installation'
  23. printf "%s\n" ' (can be empty) [share/doc]'
  24. printf "%s\n" ' --enable-asan enable address sanitizer'
  25. printf "%s\n" ' --enable-block-drv-whitelist-in-tools'
  26. printf "%s\n" ' use block whitelist also in tools instead of only'
  27. printf "%s\n" ' QEMU'
  28. printf "%s\n" ' --enable-cfi Control-Flow Integrity (CFI)'
  29. printf "%s\n" ' --enable-cfi-debug Verbose errors in case of CFI violation'
  30. printf "%s\n" ' --enable-debug-graph-lock'
  31. printf "%s\n" ' graph lock debugging support'
  32. printf "%s\n" ' --enable-debug-mutex mutex debugging support'
  33. printf "%s\n" ' --enable-debug-remap syscall buffer debugging support'
  34. printf "%s\n" ' --enable-debug-stack-usage'
  35. printf "%s\n" ' measure coroutine stack usage'
  36. printf "%s\n" ' --enable-debug-tcg TCG debugging'
  37. printf "%s\n" ' --enable-fdt[=CHOICE] Whether and how to find the libfdt library'
  38. printf "%s\n" ' (choices: auto/disabled/enabled/internal/system)'
  39. printf "%s\n" ' --enable-fuzzing build fuzzing targets'
  40. printf "%s\n" ' --enable-gcov Enable coverage tracking.'
  41. printf "%s\n" ' --enable-hvf-private HVF private features (entitlements required)'
  42. printf "%s\n" ' --enable-lto Use link time optimization'
  43. printf "%s\n" ' --enable-malloc=CHOICE choose memory allocator to use [system] (choices:'
  44. printf "%s\n" ' jemalloc/system/tcmalloc)'
  45. printf "%s\n" ' --enable-module-upgrades try to load modules from alternate paths for'
  46. printf "%s\n" ' upgrades'
  47. printf "%s\n" ' --enable-rng-none dummy RNG, avoid using /dev/(u)random and'
  48. printf "%s\n" ' getrandom()'
  49. printf "%s\n" ' --enable-safe-stack SafeStack Stack Smash Protection (requires'
  50. printf "%s\n" ' clang/llvm and coroutine backend ucontext)'
  51. printf "%s\n" ' --enable-shared-lib Build QEMU as a shared library'
  52. printf "%s\n" ' --enable-strict-rust-lints'
  53. printf "%s\n" ' Enable stricter set of Rust warnings'
  54. printf "%s\n" ' --enable-strip Strip targets on install'
  55. printf "%s\n" ' --enable-tcg-interpreter TCG with bytecode interpreter (slow)'
  56. printf "%s\n" ' --enable-tcg-threaded-interpreter'
  57. printf "%s\n" ' TCG with threaded-dispatch bytecode interpreter'
  58. printf "%s\n" ' (experimental and slow, but less slow than TCI)'
  59. printf "%s\n" ' --enable-trace-backends=CHOICES'
  60. printf "%s\n" ' Set available tracing backends [log] (choices:'
  61. printf "%s\n" ' dtrace/ftrace/log/nop/simple/syslog/ust)'
  62. printf "%s\n" ' --enable-tsan enable thread sanitizer'
  63. printf "%s\n" ' --enable-ubsan enable undefined behaviour sanitizer'
  64. printf "%s\n" ' --firmwarepath=VALUES search PATH for firmware files [share/qemu-'
  65. printf "%s\n" ' firmware]'
  66. printf "%s\n" ' --iasl=VALUE Path to ACPI disassembler'
  67. printf "%s\n" ' --includedir=VALUE Header file directory [include]'
  68. printf "%s\n" ' --interp-prefix=VALUE where to find shared libraries etc., use %M for'
  69. printf "%s\n" ' cpu name [/usr/gnemul/qemu-%M]'
  70. printf "%s\n" ' --libdir=VALUE Library directory [system default]'
  71. printf "%s\n" ' --libexecdir=VALUE Library executable directory [libexec]'
  72. printf "%s\n" ' --localedir=VALUE Locale data directory [share/locale]'
  73. printf "%s\n" ' --localstatedir=VALUE Localstate data directory [var]'
  74. printf "%s\n" ' --mandir=VALUE Manual page directory [share/man]'
  75. printf "%s\n" ' --prefix=VALUE Installation prefix [/opt/homebrew]'
  76. printf "%s\n" ' --qemu-ga-distro=VALUE second path element in qemu-ga registry entries'
  77. printf "%s\n" ' [Linux]'
  78. printf "%s\n" ' --qemu-ga-manufacturer=VALUE'
  79. printf "%s\n" ' "manufacturer" name for qemu-ga registry entries'
  80. printf "%s\n" ' [QEMU]'
  81. printf "%s\n" ' --qemu-ga-version=VALUE version number for qemu-ga installer'
  82. printf "%s\n" ' --rtsig-map=VALUE default value of QEMU_RTSIG_MAP [NULL]'
  83. printf "%s\n" ' --smbd=VALUE Path to smbd for slirp networking'
  84. printf "%s\n" ' --sysconfdir=VALUE Sysconf data directory [etc]'
  85. printf "%s\n" ' --tls-priority=VALUE Default TLS protocol/cipher priority string'
  86. printf "%s\n" ' [NORMAL]'
  87. printf "%s\n" ' --with-coroutine=CHOICE coroutine backend to use (choices:'
  88. printf "%s\n" ' auto/libucontext/sigaltstack/ucontext/windows)'
  89. printf "%s\n" ' --with-pkgversion=VALUE use specified string as sub-version of the'
  90. printf "%s\n" ' package'
  91. printf "%s\n" ' --with-suffix=VALUE Suffix for QEMU data/modules/config directories'
  92. printf "%s\n" ' (can be empty) [qemu]'
  93. printf "%s\n" ' --with-trace-file=VALUE Trace file prefix for simple backend [trace]'
  94. printf "%s\n" ' --x86-version=CHOICE tweak required x86_64 architecture version beyond'
  95. printf "%s\n" ' compiler default [1] (choices: 0/1/2/3/4)'
  96. printf "%s\n" ''
  97. printf "%s\n" 'Optional features, enabled with --enable-FEATURE and'
  98. printf "%s\n" 'disabled with --disable-FEATURE, default is enabled if available'
  99. printf "%s\n" '(unless built with --without-default-features):'
  100. printf "%s\n" ''
  101. printf "%s\n" ' af-xdp AF_XDP network backend support'
  102. printf "%s\n" ' alsa ALSA sound support'
  103. printf "%s\n" ' attr attr/xattr support'
  104. printf "%s\n" ' auth-pam PAM access control'
  105. printf "%s\n" ' avx2 AVX2 optimizations'
  106. printf "%s\n" ' avx512bw AVX512BW optimizations'
  107. printf "%s\n" ' blkio libblkio block device driver'
  108. printf "%s\n" ' bochs bochs image format support'
  109. printf "%s\n" ' bpf eBPF support'
  110. printf "%s\n" ' brlapi brlapi character device driver'
  111. printf "%s\n" ' bzip2 bzip2 support for DMG images'
  112. printf "%s\n" ' canokey CanoKey support'
  113. printf "%s\n" ' cap-ng cap_ng support'
  114. printf "%s\n" ' capstone Whether and how to find the capstone library'
  115. printf "%s\n" ' cloop cloop image format support'
  116. printf "%s\n" ' cocoa Cocoa user interface (macOS only)'
  117. printf "%s\n" ' colo-proxy colo-proxy support'
  118. printf "%s\n" ' coreaudio CoreAudio sound support'
  119. printf "%s\n" ' crypto-afalg Linux AF_ALG crypto backend driver'
  120. printf "%s\n" ' curl CURL block device driver'
  121. printf "%s\n" ' curses curses UI'
  122. printf "%s\n" ' dbus-display -display dbus support'
  123. printf "%s\n" ' dmg dmg image format support'
  124. printf "%s\n" ' docs Documentations build support'
  125. printf "%s\n" ' dsound DirectSound sound support'
  126. printf "%s\n" ' fuse FUSE block device export'
  127. printf "%s\n" ' fuse-lseek SEEK_HOLE/SEEK_DATA support for FUSE exports'
  128. printf "%s\n" ' gcrypt libgcrypt cryptography support'
  129. printf "%s\n" ' gettext Localization of the GTK+ user interface'
  130. printf "%s\n" ' gio use libgio for D-Bus support'
  131. printf "%s\n" ' glusterfs Glusterfs block device driver'
  132. printf "%s\n" ' gnutls GNUTLS cryptography support'
  133. printf "%s\n" ' gtk GTK+ user interface'
  134. printf "%s\n" ' gtk-clipboard clipboard support for the gtk UI (EXPERIMENTAL, MAY HANG)'
  135. printf "%s\n" ' guest-agent Build QEMU Guest Agent'
  136. printf "%s\n" ' guest-agent-msi Build MSI package for the QEMU Guest Agent'
  137. printf "%s\n" ' hv-balloon hv-balloon driver (requires Glib 2.68+ GTree API)'
  138. printf "%s\n" ' hvf HVF acceleration support'
  139. printf "%s\n" ' iconv Font glyph conversion support'
  140. printf "%s\n" ' jack JACK sound support'
  141. printf "%s\n" ' keyring Linux keyring support'
  142. printf "%s\n" ' kvm KVM acceleration support'
  143. printf "%s\n" ' l2tpv3 l2tpv3 network backend support'
  144. printf "%s\n" ' libcbor libcbor support'
  145. printf "%s\n" ' libdaxctl libdaxctl support'
  146. printf "%s\n" ' libdw debuginfo support'
  147. printf "%s\n" ' libiscsi libiscsi userspace initiator'
  148. printf "%s\n" ' libkeyutils Linux keyutils support'
  149. printf "%s\n" ' libnfs libnfs block device driver'
  150. printf "%s\n" ' libpmem libpmem support'
  151. printf "%s\n" ' libssh ssh block device support'
  152. printf "%s\n" ' libudev Use libudev to enumerate host devices'
  153. printf "%s\n" ' libusb libusb support for USB passthrough'
  154. printf "%s\n" ' libvduse build VDUSE Library'
  155. printf "%s\n" ' linux-aio Linux AIO support'
  156. printf "%s\n" ' linux-io-uring Linux io_uring support'
  157. printf "%s\n" ' lzfse lzfse support for DMG images'
  158. printf "%s\n" ' lzo lzo compression support'
  159. printf "%s\n" ' malloc-trim enable libc malloc_trim() for memory optimization'
  160. printf "%s\n" ' membarrier membarrier system call (for Linux 4.14+ or Windows'
  161. printf "%s\n" ' modules modules support (non Windows)'
  162. printf "%s\n" ' mpath Multipath persistent reservation passthrough'
  163. printf "%s\n" ' multiprocess Out of process device emulation support'
  164. printf "%s\n" ' netmap netmap network backend support'
  165. printf "%s\n" ' nettle nettle cryptography support'
  166. printf "%s\n" ' numa libnuma support'
  167. printf "%s\n" ' nvmm NVMM acceleration support'
  168. printf "%s\n" ' opengl OpenGL support'
  169. printf "%s\n" ' oss OSS sound support'
  170. printf "%s\n" ' pa PulseAudio sound support'
  171. printf "%s\n" ' parallels parallels image format support'
  172. printf "%s\n" ' pipewire PipeWire sound support'
  173. printf "%s\n" ' pixman pixman support'
  174. printf "%s\n" ' plugins TCG plugins via shared library loading'
  175. printf "%s\n" ' png PNG support with libpng'
  176. printf "%s\n" ' pvg macOS paravirtualized graphics support'
  177. printf "%s\n" ' qatzip QATzip compression support'
  178. printf "%s\n" ' qcow1 qcow1 image format support'
  179. printf "%s\n" ' qed qed image format support'
  180. printf "%s\n" ' qga-vss build QGA VSS support (broken with MinGW)'
  181. printf "%s\n" ' qpl Query Processing Library support'
  182. printf "%s\n" ' rbd Ceph block device driver'
  183. printf "%s\n" ' rdma Enable RDMA-based migration'
  184. printf "%s\n" ' replication replication support'
  185. printf "%s\n" ' rust Rust support'
  186. printf "%s\n" ' rutabaga-gfx rutabaga_gfx support'
  187. printf "%s\n" ' sdl SDL user interface'
  188. printf "%s\n" ' sdl-image SDL Image support for icons'
  189. printf "%s\n" ' seccomp seccomp support'
  190. printf "%s\n" ' selinux SELinux support in qemu-nbd'
  191. printf "%s\n" ' slirp libslirp user mode network backend support'
  192. printf "%s\n" ' slirp-smbd use smbd (at path --smbd=*) in slirp networking'
  193. printf "%s\n" ' smartcard CA smartcard emulation support'
  194. printf "%s\n" ' snappy snappy compression support'
  195. printf "%s\n" ' sndio sndio sound support'
  196. printf "%s\n" ' sparse sparse checker'
  197. printf "%s\n" ' spice Spice server support'
  198. printf "%s\n" ' spice-protocol Spice protocol support'
  199. printf "%s\n" ' stack-protector compiler-provided stack protection'
  200. printf "%s\n" ' tcg TCG support'
  201. printf "%s\n" ' tools build support utilities that come with QEMU'
  202. printf "%s\n" ' tpm TPM support'
  203. printf "%s\n" ' u2f U2F emulation support'
  204. printf "%s\n" ' uadk UADK Library support'
  205. printf "%s\n" ' ucontext libucontext support'
  206. printf "%s\n" ' usb-redir libusbredir support'
  207. printf "%s\n" ' vde vde network backend support'
  208. printf "%s\n" ' vdi vdi image format support'
  209. printf "%s\n" ' vduse-blk-export'
  210. printf "%s\n" ' VDUSE block export support'
  211. printf "%s\n" ' vfio-user-server'
  212. printf "%s\n" ' vfio-user server support'
  213. printf "%s\n" ' vhdx vhdx image format support'
  214. printf "%s\n" ' vhost-crypto vhost-user crypto backend support'
  215. printf "%s\n" ' vhost-kernel vhost kernel backend support'
  216. printf "%s\n" ' vhost-net vhost-net kernel acceleration support'
  217. printf "%s\n" ' vhost-user vhost-user backend support'
  218. printf "%s\n" ' vhost-user-blk-server'
  219. printf "%s\n" ' build vhost-user-blk server'
  220. printf "%s\n" ' vhost-vdpa vhost-vdpa kernel backend support'
  221. printf "%s\n" ' virglrenderer virgl rendering support'
  222. printf "%s\n" ' virtfs virtio-9p support'
  223. printf "%s\n" ' vmdk vmdk image format support'
  224. printf "%s\n" ' vmnet vmnet.framework network backend support'
  225. printf "%s\n" ' vnc VNC server'
  226. printf "%s\n" ' vnc-jpeg JPEG lossy compression for VNC server'
  227. printf "%s\n" ' vnc-sasl SASL authentication for VNC server'
  228. printf "%s\n" ' vpc vpc image format support'
  229. printf "%s\n" ' vte vte support for the gtk UI'
  230. printf "%s\n" ' vvfat vvfat image format support'
  231. printf "%s\n" ' werror Treat warnings as errors'
  232. printf "%s\n" ' whpx WHPX acceleration support'
  233. printf "%s\n" ' xen Xen backend support'
  234. printf "%s\n" ' xen-pci-passthrough'
  235. printf "%s\n" ' Xen PCI passthrough support'
  236. printf "%s\n" ' xkbcommon xkbcommon support'
  237. printf "%s\n" ' zstd zstd compression support'
  238. }
  239. _meson_option_parse() {
  240. case $1 in
  241. --enable-af-xdp) printf "%s" -Daf_xdp=enabled ;;
  242. --disable-af-xdp) printf "%s" -Daf_xdp=disabled ;;
  243. --enable-alsa) printf "%s" -Dalsa=enabled ;;
  244. --disable-alsa) printf "%s" -Dalsa=disabled ;;
  245. --enable-asan) printf "%s" -Dasan=true ;;
  246. --disable-asan) printf "%s" -Dasan=false ;;
  247. --enable-attr) printf "%s" -Dattr=enabled ;;
  248. --disable-attr) printf "%s" -Dattr=disabled ;;
  249. --audio-drv-list=*) quote_sh "-Daudio_drv_list=$2" ;;
  250. --enable-auth-pam) printf "%s" -Dauth_pam=enabled ;;
  251. --disable-auth-pam) printf "%s" -Dauth_pam=disabled ;;
  252. --enable-avx2) printf "%s" -Davx2=enabled ;;
  253. --disable-avx2) printf "%s" -Davx2=disabled ;;
  254. --enable-avx512bw) printf "%s" -Davx512bw=enabled ;;
  255. --disable-avx512bw) printf "%s" -Davx512bw=disabled ;;
  256. --enable-gcov) printf "%s" -Db_coverage=true ;;
  257. --disable-gcov) printf "%s" -Db_coverage=false ;;
  258. --enable-lto) printf "%s" -Db_lto=true ;;
  259. --disable-lto) printf "%s" -Db_lto=false ;;
  260. --bindir=*) quote_sh "-Dbindir=$2" ;;
  261. --enable-blkio) printf "%s" -Dblkio=enabled ;;
  262. --disable-blkio) printf "%s" -Dblkio=disabled ;;
  263. --block-drv-ro-whitelist=*) quote_sh "-Dblock_drv_ro_whitelist=$2" ;;
  264. --block-drv-rw-whitelist=*) quote_sh "-Dblock_drv_rw_whitelist=$2" ;;
  265. --enable-block-drv-whitelist-in-tools) printf "%s" -Dblock_drv_whitelist_in_tools=true ;;
  266. --disable-block-drv-whitelist-in-tools) printf "%s" -Dblock_drv_whitelist_in_tools=false ;;
  267. --enable-bochs) printf "%s" -Dbochs=enabled ;;
  268. --disable-bochs) printf "%s" -Dbochs=disabled ;;
  269. --enable-bpf) printf "%s" -Dbpf=enabled ;;
  270. --disable-bpf) printf "%s" -Dbpf=disabled ;;
  271. --enable-brlapi) printf "%s" -Dbrlapi=enabled ;;
  272. --disable-brlapi) printf "%s" -Dbrlapi=disabled ;;
  273. --enable-bzip2) printf "%s" -Dbzip2=enabled ;;
  274. --disable-bzip2) printf "%s" -Dbzip2=disabled ;;
  275. --enable-canokey) printf "%s" -Dcanokey=enabled ;;
  276. --disable-canokey) printf "%s" -Dcanokey=disabled ;;
  277. --enable-cap-ng) printf "%s" -Dcap_ng=enabled ;;
  278. --disable-cap-ng) printf "%s" -Dcap_ng=disabled ;;
  279. --enable-capstone) printf "%s" -Dcapstone=enabled ;;
  280. --disable-capstone) printf "%s" -Dcapstone=disabled ;;
  281. --enable-cfi) printf "%s" -Dcfi=true ;;
  282. --disable-cfi) printf "%s" -Dcfi=false ;;
  283. --enable-cfi-debug) printf "%s" -Dcfi_debug=true ;;
  284. --disable-cfi-debug) printf "%s" -Dcfi_debug=false ;;
  285. --enable-cloop) printf "%s" -Dcloop=enabled ;;
  286. --disable-cloop) printf "%s" -Dcloop=disabled ;;
  287. --enable-cocoa) printf "%s" -Dcocoa=enabled ;;
  288. --disable-cocoa) printf "%s" -Dcocoa=disabled ;;
  289. --enable-colo-proxy) printf "%s" -Dcolo_proxy=enabled ;;
  290. --disable-colo-proxy) printf "%s" -Dcolo_proxy=disabled ;;
  291. --enable-coreaudio) printf "%s" -Dcoreaudio=enabled ;;
  292. --disable-coreaudio) printf "%s" -Dcoreaudio=disabled ;;
  293. --with-coroutine=*) quote_sh "-Dcoroutine_backend=$2" ;;
  294. --enable-coroutine-pool) printf "%s" -Dcoroutine_pool=true ;;
  295. --disable-coroutine-pool) printf "%s" -Dcoroutine_pool=false ;;
  296. --enable-crypto-afalg) printf "%s" -Dcrypto_afalg=enabled ;;
  297. --disable-crypto-afalg) printf "%s" -Dcrypto_afalg=disabled ;;
  298. --enable-curl) printf "%s" -Dcurl=enabled ;;
  299. --disable-curl) printf "%s" -Dcurl=disabled ;;
  300. --enable-curses) printf "%s" -Dcurses=enabled ;;
  301. --disable-curses) printf "%s" -Dcurses=disabled ;;
  302. --datadir=*) quote_sh "-Ddatadir=$2" ;;
  303. --enable-dbus-display) printf "%s" -Ddbus_display=enabled ;;
  304. --disable-dbus-display) printf "%s" -Ddbus_display=disabled ;;
  305. --enable-debug-info) printf "%s" -Ddebug=true ;;
  306. --disable-debug-info) printf "%s" -Ddebug=false ;;
  307. --enable-debug-graph-lock) printf "%s" -Ddebug_graph_lock=true ;;
  308. --disable-debug-graph-lock) printf "%s" -Ddebug_graph_lock=false ;;
  309. --enable-debug-mutex) printf "%s" -Ddebug_mutex=true ;;
  310. --disable-debug-mutex) printf "%s" -Ddebug_mutex=false ;;
  311. --enable-debug-remap) printf "%s" -Ddebug_remap=true ;;
  312. --disable-debug-remap) printf "%s" -Ddebug_remap=false ;;
  313. --enable-debug-stack-usage) printf "%s" -Ddebug_stack_usage=true ;;
  314. --disable-debug-stack-usage) printf "%s" -Ddebug_stack_usage=false ;;
  315. --enable-debug-tcg) printf "%s" -Ddebug_tcg=true ;;
  316. --disable-debug-tcg) printf "%s" -Ddebug_tcg=false ;;
  317. --enable-dmg) printf "%s" -Ddmg=enabled ;;
  318. --disable-dmg) printf "%s" -Ddmg=disabled ;;
  319. --docdir=*) quote_sh "-Ddocdir=$2" ;;
  320. --enable-docs) printf "%s" -Ddocs=enabled ;;
  321. --disable-docs) printf "%s" -Ddocs=disabled ;;
  322. --enable-dsound) printf "%s" -Ddsound=enabled ;;
  323. --disable-dsound) printf "%s" -Ddsound=disabled ;;
  324. --enable-fdt) printf "%s" -Dfdt=enabled ;;
  325. --disable-fdt) printf "%s" -Dfdt=disabled ;;
  326. --enable-fdt=*) quote_sh "-Dfdt=$2" ;;
  327. --enable-fuse) printf "%s" -Dfuse=enabled ;;
  328. --disable-fuse) printf "%s" -Dfuse=disabled ;;
  329. --enable-fuse-lseek) printf "%s" -Dfuse_lseek=enabled ;;
  330. --disable-fuse-lseek) printf "%s" -Dfuse_lseek=disabled ;;
  331. --enable-fuzzing) printf "%s" -Dfuzzing=true ;;
  332. --disable-fuzzing) printf "%s" -Dfuzzing=false ;;
  333. --enable-gcrypt) printf "%s" -Dgcrypt=enabled ;;
  334. --disable-gcrypt) printf "%s" -Dgcrypt=disabled ;;
  335. --enable-gettext) printf "%s" -Dgettext=enabled ;;
  336. --disable-gettext) printf "%s" -Dgettext=disabled ;;
  337. --enable-gio) printf "%s" -Dgio=enabled ;;
  338. --disable-gio) printf "%s" -Dgio=disabled ;;
  339. --enable-glusterfs) printf "%s" -Dglusterfs=enabled ;;
  340. --disable-glusterfs) printf "%s" -Dglusterfs=disabled ;;
  341. --enable-gnutls) printf "%s" -Dgnutls=enabled ;;
  342. --disable-gnutls) printf "%s" -Dgnutls=disabled ;;
  343. --enable-gtk) printf "%s" -Dgtk=enabled ;;
  344. --disable-gtk) printf "%s" -Dgtk=disabled ;;
  345. --enable-gtk-clipboard) printf "%s" -Dgtk_clipboard=enabled ;;
  346. --disable-gtk-clipboard) printf "%s" -Dgtk_clipboard=disabled ;;
  347. --enable-guest-agent) printf "%s" -Dguest_agent=enabled ;;
  348. --disable-guest-agent) printf "%s" -Dguest_agent=disabled ;;
  349. --enable-guest-agent-msi) printf "%s" -Dguest_agent_msi=enabled ;;
  350. --disable-guest-agent-msi) printf "%s" -Dguest_agent_msi=disabled ;;
  351. --enable-hexagon-idef-parser) printf "%s" -Dhexagon_idef_parser=true ;;
  352. --disable-hexagon-idef-parser) printf "%s" -Dhexagon_idef_parser=false ;;
  353. --enable-hv-balloon) printf "%s" -Dhv_balloon=enabled ;;
  354. --disable-hv-balloon) printf "%s" -Dhv_balloon=disabled ;;
  355. --enable-hvf) printf "%s" -Dhvf=enabled ;;
  356. --disable-hvf) printf "%s" -Dhvf=disabled ;;
  357. --enable-hvf-private) printf "%s" -Dhvf_private=true ;;
  358. --disable-hvf-private) printf "%s" -Dhvf_private=false ;;
  359. --iasl=*) quote_sh "-Diasl=$2" ;;
  360. --enable-iconv) printf "%s" -Diconv=enabled ;;
  361. --disable-iconv) printf "%s" -Diconv=disabled ;;
  362. --includedir=*) quote_sh "-Dincludedir=$2" ;;
  363. --enable-install-blobs) printf "%s" -Dinstall_blobs=true ;;
  364. --disable-install-blobs) printf "%s" -Dinstall_blobs=false ;;
  365. --interp-prefix=*) quote_sh "-Dinterp_prefix=$2" ;;
  366. --enable-jack) printf "%s" -Djack=enabled ;;
  367. --disable-jack) printf "%s" -Djack=disabled ;;
  368. --enable-keyring) printf "%s" -Dkeyring=enabled ;;
  369. --disable-keyring) printf "%s" -Dkeyring=disabled ;;
  370. --enable-kvm) printf "%s" -Dkvm=enabled ;;
  371. --disable-kvm) printf "%s" -Dkvm=disabled ;;
  372. --enable-l2tpv3) printf "%s" -Dl2tpv3=enabled ;;
  373. --disable-l2tpv3) printf "%s" -Dl2tpv3=disabled ;;
  374. --enable-libcbor) printf "%s" -Dlibcbor=enabled ;;
  375. --disable-libcbor) printf "%s" -Dlibcbor=disabled ;;
  376. --enable-libdaxctl) printf "%s" -Dlibdaxctl=enabled ;;
  377. --disable-libdaxctl) printf "%s" -Dlibdaxctl=disabled ;;
  378. --libdir=*) quote_sh "-Dlibdir=$2" ;;
  379. --enable-libdw) printf "%s" -Dlibdw=enabled ;;
  380. --disable-libdw) printf "%s" -Dlibdw=disabled ;;
  381. --libexecdir=*) quote_sh "-Dlibexecdir=$2" ;;
  382. --enable-libiscsi) printf "%s" -Dlibiscsi=enabled ;;
  383. --disable-libiscsi) printf "%s" -Dlibiscsi=disabled ;;
  384. --enable-libkeyutils) printf "%s" -Dlibkeyutils=enabled ;;
  385. --disable-libkeyutils) printf "%s" -Dlibkeyutils=disabled ;;
  386. --enable-libnfs) printf "%s" -Dlibnfs=enabled ;;
  387. --disable-libnfs) printf "%s" -Dlibnfs=disabled ;;
  388. --enable-libpmem) printf "%s" -Dlibpmem=enabled ;;
  389. --disable-libpmem) printf "%s" -Dlibpmem=disabled ;;
  390. --enable-libssh) printf "%s" -Dlibssh=enabled ;;
  391. --disable-libssh) printf "%s" -Dlibssh=disabled ;;
  392. --enable-libudev) printf "%s" -Dlibudev=enabled ;;
  393. --disable-libudev) printf "%s" -Dlibudev=disabled ;;
  394. --enable-libusb) printf "%s" -Dlibusb=enabled ;;
  395. --disable-libusb) printf "%s" -Dlibusb=disabled ;;
  396. --enable-libvduse) printf "%s" -Dlibvduse=enabled ;;
  397. --disable-libvduse) printf "%s" -Dlibvduse=disabled ;;
  398. --enable-linux-aio) printf "%s" -Dlinux_aio=enabled ;;
  399. --disable-linux-aio) printf "%s" -Dlinux_aio=disabled ;;
  400. --enable-linux-io-uring) printf "%s" -Dlinux_io_uring=enabled ;;
  401. --disable-linux-io-uring) printf "%s" -Dlinux_io_uring=disabled ;;
  402. --localedir=*) quote_sh "-Dlocaledir=$2" ;;
  403. --localstatedir=*) quote_sh "-Dlocalstatedir=$2" ;;
  404. --enable-lzfse) printf "%s" -Dlzfse=enabled ;;
  405. --disable-lzfse) printf "%s" -Dlzfse=disabled ;;
  406. --enable-lzo) printf "%s" -Dlzo=enabled ;;
  407. --disable-lzo) printf "%s" -Dlzo=disabled ;;
  408. --enable-malloc=*) quote_sh "-Dmalloc=$2" ;;
  409. --enable-malloc-trim) printf "%s" -Dmalloc_trim=enabled ;;
  410. --disable-malloc-trim) printf "%s" -Dmalloc_trim=disabled ;;
  411. --mandir=*) quote_sh "-Dmandir=$2" ;;
  412. --enable-membarrier) printf "%s" -Dmembarrier=enabled ;;
  413. --disable-membarrier) printf "%s" -Dmembarrier=disabled ;;
  414. --enable-module-upgrades) printf "%s" -Dmodule_upgrades=true ;;
  415. --disable-module-upgrades) printf "%s" -Dmodule_upgrades=false ;;
  416. --enable-modules) printf "%s" -Dmodules=enabled ;;
  417. --disable-modules) printf "%s" -Dmodules=disabled ;;
  418. --enable-mpath) printf "%s" -Dmpath=enabled ;;
  419. --disable-mpath) printf "%s" -Dmpath=disabled ;;
  420. --enable-multiprocess) printf "%s" -Dmultiprocess=enabled ;;
  421. --disable-multiprocess) printf "%s" -Dmultiprocess=disabled ;;
  422. --enable-netmap) printf "%s" -Dnetmap=enabled ;;
  423. --disable-netmap) printf "%s" -Dnetmap=disabled ;;
  424. --enable-nettle) printf "%s" -Dnettle=enabled ;;
  425. --disable-nettle) printf "%s" -Dnettle=disabled ;;
  426. --enable-numa) printf "%s" -Dnuma=enabled ;;
  427. --disable-numa) printf "%s" -Dnuma=disabled ;;
  428. --enable-nvmm) printf "%s" -Dnvmm=enabled ;;
  429. --disable-nvmm) printf "%s" -Dnvmm=disabled ;;
  430. --enable-opengl) printf "%s" -Dopengl=enabled ;;
  431. --disable-opengl) printf "%s" -Dopengl=disabled ;;
  432. --enable-oss) printf "%s" -Doss=enabled ;;
  433. --disable-oss) printf "%s" -Doss=disabled ;;
  434. --enable-pa) printf "%s" -Dpa=enabled ;;
  435. --disable-pa) printf "%s" -Dpa=disabled ;;
  436. --enable-parallels) printf "%s" -Dparallels=enabled ;;
  437. --disable-parallels) printf "%s" -Dparallels=disabled ;;
  438. --enable-pipewire) printf "%s" -Dpipewire=enabled ;;
  439. --disable-pipewire) printf "%s" -Dpipewire=disabled ;;
  440. --enable-pixman) printf "%s" -Dpixman=enabled ;;
  441. --disable-pixman) printf "%s" -Dpixman=disabled ;;
  442. --with-pkgversion=*) quote_sh "-Dpkgversion=$2" ;;
  443. --enable-plugins) printf "%s" -Dplugins=true ;;
  444. --disable-plugins) printf "%s" -Dplugins=false ;;
  445. --enable-png) printf "%s" -Dpng=enabled ;;
  446. --disable-png) printf "%s" -Dpng=disabled ;;
  447. --prefix=*) quote_sh "-Dprefix=$2" ;;
  448. --enable-pvg) printf "%s" -Dpvg=enabled ;;
  449. --disable-pvg) printf "%s" -Dpvg=disabled ;;
  450. --enable-qatzip) printf "%s" -Dqatzip=enabled ;;
  451. --disable-qatzip) printf "%s" -Dqatzip=disabled ;;
  452. --enable-qcow1) printf "%s" -Dqcow1=enabled ;;
  453. --disable-qcow1) printf "%s" -Dqcow1=disabled ;;
  454. --enable-qed) printf "%s" -Dqed=enabled ;;
  455. --disable-qed) printf "%s" -Dqed=disabled ;;
  456. --firmwarepath=*) quote_sh "-Dqemu_firmwarepath=$(meson_option_build_array $2)" ;;
  457. --qemu-ga-distro=*) quote_sh "-Dqemu_ga_distro=$2" ;;
  458. --qemu-ga-manufacturer=*) quote_sh "-Dqemu_ga_manufacturer=$2" ;;
  459. --qemu-ga-version=*) quote_sh "-Dqemu_ga_version=$2" ;;
  460. --with-suffix=*) quote_sh "-Dqemu_suffix=$2" ;;
  461. --enable-qga-vss) printf "%s" -Dqga_vss=enabled ;;
  462. --disable-qga-vss) printf "%s" -Dqga_vss=disabled ;;
  463. --enable-qom-cast-debug) printf "%s" -Dqom_cast_debug=true ;;
  464. --disable-qom-cast-debug) printf "%s" -Dqom_cast_debug=false ;;
  465. --enable-qpl) printf "%s" -Dqpl=enabled ;;
  466. --disable-qpl) printf "%s" -Dqpl=disabled ;;
  467. --enable-rbd) printf "%s" -Drbd=enabled ;;
  468. --disable-rbd) printf "%s" -Drbd=disabled ;;
  469. --enable-rdma) printf "%s" -Drdma=enabled ;;
  470. --disable-rdma) printf "%s" -Drdma=disabled ;;
  471. --enable-relocatable) printf "%s" -Drelocatable=true ;;
  472. --disable-relocatable) printf "%s" -Drelocatable=false ;;
  473. --enable-replication) printf "%s" -Dreplication=enabled ;;
  474. --disable-replication) printf "%s" -Dreplication=disabled ;;
  475. --enable-rng-none) printf "%s" -Drng_none=true ;;
  476. --disable-rng-none) printf "%s" -Drng_none=false ;;
  477. --rtsig-map=*) quote_sh "-Drtsig_map=$2" ;;
  478. --enable-rust) printf "%s" -Drust=enabled ;;
  479. --disable-rust) printf "%s" -Drust=disabled ;;
  480. --enable-rutabaga-gfx) printf "%s" -Drutabaga_gfx=enabled ;;
  481. --disable-rutabaga-gfx) printf "%s" -Drutabaga_gfx=disabled ;;
  482. --enable-safe-stack) printf "%s" -Dsafe_stack=true ;;
  483. --disable-safe-stack) printf "%s" -Dsafe_stack=false ;;
  484. --enable-sdl) printf "%s" -Dsdl=enabled ;;
  485. --disable-sdl) printf "%s" -Dsdl=disabled ;;
  486. --enable-sdl-image) printf "%s" -Dsdl_image=enabled ;;
  487. --disable-sdl-image) printf "%s" -Dsdl_image=disabled ;;
  488. --enable-seccomp) printf "%s" -Dseccomp=enabled ;;
  489. --disable-seccomp) printf "%s" -Dseccomp=disabled ;;
  490. --enable-selinux) printf "%s" -Dselinux=enabled ;;
  491. --disable-selinux) printf "%s" -Dselinux=disabled ;;
  492. --enable-shared-lib) printf "%s" -Dshared_lib=true ;;
  493. --disable-shared-lib) printf "%s" -Dshared_lib=false ;;
  494. --enable-slirp) printf "%s" -Dslirp=enabled ;;
  495. --disable-slirp) printf "%s" -Dslirp=disabled ;;
  496. --enable-slirp-smbd) printf "%s" -Dslirp_smbd=enabled ;;
  497. --disable-slirp-smbd) printf "%s" -Dslirp_smbd=disabled ;;
  498. --enable-smartcard) printf "%s" -Dsmartcard=enabled ;;
  499. --disable-smartcard) printf "%s" -Dsmartcard=disabled ;;
  500. --smbd=*) quote_sh "-Dsmbd=$2" ;;
  501. --enable-snappy) printf "%s" -Dsnappy=enabled ;;
  502. --disable-snappy) printf "%s" -Dsnappy=disabled ;;
  503. --enable-sndio) printf "%s" -Dsndio=enabled ;;
  504. --disable-sndio) printf "%s" -Dsndio=disabled ;;
  505. --enable-sparse) printf "%s" -Dsparse=enabled ;;
  506. --disable-sparse) printf "%s" -Dsparse=disabled ;;
  507. --enable-spice) printf "%s" -Dspice=enabled ;;
  508. --disable-spice) printf "%s" -Dspice=disabled ;;
  509. --enable-spice-protocol) printf "%s" -Dspice_protocol=enabled ;;
  510. --disable-spice-protocol) printf "%s" -Dspice_protocol=disabled ;;
  511. --enable-stack-protector) printf "%s" -Dstack_protector=enabled ;;
  512. --disable-stack-protector) printf "%s" -Dstack_protector=disabled ;;
  513. --enable-strict-rust-lints) printf "%s" -Dstrict_rust_lints=true ;;
  514. --disable-strict-rust-lints) printf "%s" -Dstrict_rust_lints=false ;;
  515. --enable-strip) printf "%s" -Dstrip=true ;;
  516. --disable-strip) printf "%s" -Dstrip=false ;;
  517. --sysconfdir=*) quote_sh "-Dsysconfdir=$2" ;;
  518. --enable-tcg) printf "%s" -Dtcg=enabled ;;
  519. --disable-tcg) printf "%s" -Dtcg=disabled ;;
  520. --enable-tcg-interpreter) printf "%s" -Dtcg_interpreter=true ;;
  521. --disable-tcg-interpreter) printf "%s" -Dtcg_interpreter=false ;;
  522. --enable-tcg-threaded-interpreter) printf "%s" -Dtcg_threaded_interpreter=true ;;
  523. --disable-tcg-threaded-interpreter) printf "%s" -Dtcg_threaded_interpreter=false ;;
  524. --tls-priority=*) quote_sh "-Dtls_priority=$2" ;;
  525. --enable-tools) printf "%s" -Dtools=enabled ;;
  526. --disable-tools) printf "%s" -Dtools=disabled ;;
  527. --enable-tpm) printf "%s" -Dtpm=enabled ;;
  528. --disable-tpm) printf "%s" -Dtpm=disabled ;;
  529. --enable-trace-backends=*) quote_sh "-Dtrace_backends=$2" ;;
  530. --with-trace-file=*) quote_sh "-Dtrace_file=$2" ;;
  531. --enable-tsan) printf "%s" -Dtsan=true ;;
  532. --disable-tsan) printf "%s" -Dtsan=false ;;
  533. --enable-u2f) printf "%s" -Du2f=enabled ;;
  534. --disable-u2f) printf "%s" -Du2f=disabled ;;
  535. --enable-uadk) printf "%s" -Duadk=enabled ;;
  536. --disable-uadk) printf "%s" -Duadk=disabled ;;
  537. --enable-ucontext) printf "%s" -Ducontext=enabled ;;
  538. --disable-ucontext) printf "%s" -Ducontext=disabled ;;
  539. --enable-ubsan) printf "%s" -Dubsan=true ;;
  540. --disable-ubsan) printf "%s" -Dubsan=false ;;
  541. --enable-usb-redir) printf "%s" -Dusb_redir=enabled ;;
  542. --disable-usb-redir) printf "%s" -Dusb_redir=disabled ;;
  543. --enable-vde) printf "%s" -Dvde=enabled ;;
  544. --disable-vde) printf "%s" -Dvde=disabled ;;
  545. --enable-vdi) printf "%s" -Dvdi=enabled ;;
  546. --disable-vdi) printf "%s" -Dvdi=disabled ;;
  547. --enable-vduse-blk-export) printf "%s" -Dvduse_blk_export=enabled ;;
  548. --disable-vduse-blk-export) printf "%s" -Dvduse_blk_export=disabled ;;
  549. --enable-vfio-user-server) printf "%s" -Dvfio_user_server=enabled ;;
  550. --disable-vfio-user-server) printf "%s" -Dvfio_user_server=disabled ;;
  551. --enable-vhdx) printf "%s" -Dvhdx=enabled ;;
  552. --disable-vhdx) printf "%s" -Dvhdx=disabled ;;
  553. --enable-vhost-crypto) printf "%s" -Dvhost_crypto=enabled ;;
  554. --disable-vhost-crypto) printf "%s" -Dvhost_crypto=disabled ;;
  555. --enable-vhost-kernel) printf "%s" -Dvhost_kernel=enabled ;;
  556. --disable-vhost-kernel) printf "%s" -Dvhost_kernel=disabled ;;
  557. --enable-vhost-net) printf "%s" -Dvhost_net=enabled ;;
  558. --disable-vhost-net) printf "%s" -Dvhost_net=disabled ;;
  559. --enable-vhost-user) printf "%s" -Dvhost_user=enabled ;;
  560. --disable-vhost-user) printf "%s" -Dvhost_user=disabled ;;
  561. --enable-vhost-user-blk-server) printf "%s" -Dvhost_user_blk_server=enabled ;;
  562. --disable-vhost-user-blk-server) printf "%s" -Dvhost_user_blk_server=disabled ;;
  563. --enable-vhost-vdpa) printf "%s" -Dvhost_vdpa=enabled ;;
  564. --disable-vhost-vdpa) printf "%s" -Dvhost_vdpa=disabled ;;
  565. --enable-virglrenderer) printf "%s" -Dvirglrenderer=enabled ;;
  566. --disable-virglrenderer) printf "%s" -Dvirglrenderer=disabled ;;
  567. --enable-virtfs) printf "%s" -Dvirtfs=enabled ;;
  568. --disable-virtfs) printf "%s" -Dvirtfs=disabled ;;
  569. --enable-vmdk) printf "%s" -Dvmdk=enabled ;;
  570. --disable-vmdk) printf "%s" -Dvmdk=disabled ;;
  571. --enable-vmnet) printf "%s" -Dvmnet=enabled ;;
  572. --disable-vmnet) printf "%s" -Dvmnet=disabled ;;
  573. --enable-vnc) printf "%s" -Dvnc=enabled ;;
  574. --disable-vnc) printf "%s" -Dvnc=disabled ;;
  575. --enable-vnc-jpeg) printf "%s" -Dvnc_jpeg=enabled ;;
  576. --disable-vnc-jpeg) printf "%s" -Dvnc_jpeg=disabled ;;
  577. --enable-vnc-sasl) printf "%s" -Dvnc_sasl=enabled ;;
  578. --disable-vnc-sasl) printf "%s" -Dvnc_sasl=disabled ;;
  579. --enable-vpc) printf "%s" -Dvpc=enabled ;;
  580. --disable-vpc) printf "%s" -Dvpc=disabled ;;
  581. --enable-vte) printf "%s" -Dvte=enabled ;;
  582. --disable-vte) printf "%s" -Dvte=disabled ;;
  583. --enable-vvfat) printf "%s" -Dvvfat=enabled ;;
  584. --disable-vvfat) printf "%s" -Dvvfat=disabled ;;
  585. --enable-werror) printf "%s" -Dwerror=true ;;
  586. --disable-werror) printf "%s" -Dwerror=false ;;
  587. --enable-whpx) printf "%s" -Dwhpx=enabled ;;
  588. --disable-whpx) printf "%s" -Dwhpx=disabled ;;
  589. --x86-version=*) quote_sh "-Dx86_version=$2" ;;
  590. --enable-xen) printf "%s" -Dxen=enabled ;;
  591. --disable-xen) printf "%s" -Dxen=disabled ;;
  592. --enable-xen-pci-passthrough) printf "%s" -Dxen_pci_passthrough=enabled ;;
  593. --disable-xen-pci-passthrough) printf "%s" -Dxen_pci_passthrough=disabled ;;
  594. --enable-xkbcommon) printf "%s" -Dxkbcommon=enabled ;;
  595. --disable-xkbcommon) printf "%s" -Dxkbcommon=disabled ;;
  596. --enable-zstd) printf "%s" -Dzstd=enabled ;;
  597. --disable-zstd) printf "%s" -Dzstd=disabled ;;
  598. *) return 1 ;;
  599. esac
  600. }