This patch adds the `audio` option to meson_options.txt. It is propagated into Kconfig as AUDIO. It is enabled by default. The corresponding `--disable-audio` and `--enable-audio` options for `configure` are also added.
For now, this option does nothing. In subsequent patches, it will gradually disable audio in different places. The final goal is to stop building sources from `audio/` and `hw/audio/` and other audio-related files (except for some stubs). Note that this intent is different from `-audio none`, which mutes audio but still compiles the audio subsystem. Signed-off-by: Sergei Heifetz <[email protected]> --- Kconfig.host | 3 +++ meson.build | 3 +++ meson_options.txt | 3 +++ scripts/meson-buildoptions.sh | 3 +++ 4 files changed, 12 insertions(+) diff --git a/Kconfig.host b/Kconfig.host index 933425c74b..ec129aa4fc 100644 --- a/Kconfig.host +++ b/Kconfig.host @@ -29,6 +29,9 @@ config IVSHMEM config TPM bool +config AUDIO + bool + config FDT bool diff --git a/meson.build b/meson.build index 414c8ea7e2..fdb2578447 100644 --- a/meson.build +++ b/meson.build @@ -68,6 +68,8 @@ foreach target : target_dirs endforeach have_user = have_linux_user or have_bsd_user +have_audio = get_option('audio').disable_auto_if(not have_system).allowed() + ############ # Programs # ############ @@ -3250,6 +3252,7 @@ disassemblers = { have_ivshmem = config_host_data.get('CONFIG_EVENTFD') host_kconfig = \ (get_option('fuzzing') ? ['CONFIG_FUZZ=y'] : []) + \ + (have_audio ? ['CONFIG_AUDIO=y'] : []) + \ (have_tpm ? ['CONFIG_TPM=y'] : []) + \ (pixman.found() ? ['CONFIG_PIXMAN=y'] : []) + \ (spice.found() ? ['CONFIG_SPICE=y'] : []) + \ diff --git a/meson_options.txt b/meson_options.txt index 2836156257..d7c94e6d6d 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -71,6 +71,9 @@ option('malloc_trim', type : 'feature', value : 'auto', option('malloc', type : 'combo', choices : ['system', 'tcmalloc', 'jemalloc'], value: 'system', description: 'choose memory allocator to use') +option('audio', type: 'feature', value: 'auto', + description: 'Audio support') + option('kvm', type: 'feature', value: 'auto', description: 'KVM acceleration support') option('mshv', type: 'feature', value: 'auto', diff --git a/scripts/meson-buildoptions.sh b/scripts/meson-buildoptions.sh index e8edc5252a..642f06efc5 100644 --- a/scripts/meson-buildoptions.sh +++ b/scripts/meson-buildoptions.sh @@ -96,6 +96,7 @@ meson_options_help() { printf "%s\n" ' af-xdp AF_XDP network backend support' printf "%s\n" ' alsa ALSA sound support' printf "%s\n" ' attr attr/xattr support' + printf "%s\n" ' audio Audio support' printf "%s\n" ' auth-pam PAM access control' printf "%s\n" ' blkio libblkio block device driver' printf "%s\n" ' bochs bochs image format support' @@ -242,6 +243,8 @@ _meson_option_parse() { --disable-asan) printf "%s" -Dasan=false ;; --enable-attr) printf "%s" -Dattr=enabled ;; --disable-attr) printf "%s" -Dattr=disabled ;; + --enable-audio) printf "%s" -Daudio=enabled ;; + --disable-audio) printf "%s" -Daudio=disabled ;; --audio-drv-list=*) quote_sh "-Daudio_drv_list=$2" ;; --enable-auth-pam) printf "%s" -Dauth_pam=enabled ;; --disable-auth-pam) printf "%s" -Dauth_pam=disabled ;; -- 2.34.1
