This patch series adds a compile-time option to disable building audio-related sources (mostly, files under `audio/` and `hw/audio/`). It adds `--disable-audio` and `--enable-audio` options to the `configure` script. Audio remains enabled by default, and the changes are harmless in that case.
When audio is disabled, it may not be possible to build a number of devices and machines. This is expected, and can be addressed on a case-by-case basis if needed. This feature may be useful in production environments which only use a specific subset of QEMU’s functionality and, in particular, do not need the audio subsystem. In such environments it is generally beneficial to avoid building unused code, for both security and maintenance reasons. Sergei Heifetz (8): audio: add `audio` build option for meson and Kconfig ui/vnc: disable audio feature when configured with --disable-audio tests/qtest: remove -audio none when configured with --disable-audio hw/audio/pcspk: change PCSPK behaviour with --disable-audio Kconfig: add AUDIO dependency to audio-related devices system/vl: remove audio and audiodev options when audio is disabled audio: do not build audio-related sources with --disable-audio meson.build: ignore audio drivers when configured with --disable-audio Kconfig.host | 3 ++ audio/audio-hmp-cmds-stub.c | 28 +++++++++++++ audio/audio-stub.c | 35 ++++++++++++++++ audio/meson.build | 5 +++ configure | 4 ++ hw/audio/Kconfig | 21 ++++++---- hw/audio/pcspk.c | 14 +++++++ hw/usb/Kconfig | 2 +- meson.build | 83 +++++++++++++++++++++---------------- meson_options.txt | 3 ++ qapi/audio.json | 3 +- replay/meson.build | 9 +++- replay/replay-audio-stub.c | 16 +++++++ replay/stubs-system.c | 6 --- system/vl.c | 6 +++ tests/qtest/libqtest.c | 2 + ui/vnc.c | 31 ++++++++++++-- 17 files changed, 215 insertions(+), 56 deletions(-) create mode 100644 audio/audio-hmp-cmds-stub.c create mode 100644 audio/audio-stub.c create mode 100644 replay/replay-audio-stub.c -- 2.34.1
