comment "alsa-lib needs a toolchain w/ threads"
	depends on !BR2_TOOLCHAIN_HAS_THREADS

menuconfig BR2_PACKAGE_ALSA_LIB
	bool "alsa-lib"
	# Even though some parts of alsa-lib use threads only when
	# available, some PCM plugins use them unconditionally. Since
	# the usage of alsa-lib on no-thread systems is pretty
	# unlikely, just require thread support globally for alsa-lib.
	depends on BR2_TOOLCHAIN_HAS_THREADS
	# Temporary until
	# https://bugtrack.alsa-project.org/alsa-bug/view.php?id=4913
	# is fixed
	select BR2_PACKAGE_ALSA_LIB_PCM
	help
	  The Advanced Linux Sound Architecture (ALSA) provides audio
	  and MIDI functionality to the Linux operating system.

	  http://www.alsa-project.org/

if BR2_PACKAGE_ALSA_LIB

config BR2_PACKAGE_ALSA_LIB_PYTHON
	bool "Python support for alsa-lib"
	depends on BR2_PACKAGE_PYTHON3
	help
	  Add python support for alsa-lib.
	  Python will be built and libpython will be installed
	  in the target directory
	  http://www.alsa-project.org/

config BR2_PACKAGE_ALSA_LIB_DEVDIR
	string "directory with ALSA device files"
	default "/dev/snd"

config BR2_PACKAGE_ALSA_LIB_PCM_PLUGINS
	string "built PCM plugins"
	default "all" if BR2_USE_MMU
	default "copy linear route mulaw alaw adpcm rate plug multi file null empty share meter hooks lfloat ladspa dmix dshare dsnoop asym iec958 softvol extplug ioplug mmap_emul" if !BR2_USE_MMU

config BR2_PACKAGE_ALSA_LIB_CTL_PLUGINS
	string "built control plugins"
	default "all"

config BR2_PACKAGE_ALSA_LIB_ALOAD
	bool "aload"
	default y

config BR2_PACKAGE_ALSA_LIB_MIXER
	bool "mixer"
	default y

config BR2_PACKAGE_ALSA_LIB_PCM
	bool "pcm"
	default y

config BR2_PACKAGE_ALSA_LIB_RAWMIDI
	bool "rawmidi"
	default y

config BR2_PACKAGE_ALSA_LIB_HWDEP
	bool "hwdep"
	default y

config BR2_PACKAGE_ALSA_LIB_SEQ
	bool "seq"
	default y
	select BR2_PACKAGE_ALSA_LIB_RAWMIDI

config BR2_PACKAGE_ALSA_LIB_UCM
	bool "ucm"
	default y
	depends on BR2_USE_MMU # fork()
	select BR2_PACKAGE_ALSA_LIB_MIXER

config BR2_PACKAGE_ALSA_LIB_OLD_SYMBOLS
	bool "old-symbols"
	default y

config BR2_PACKAGE_ALSA_LIB_TOPOLOGY
	bool "topology"
	default y
	depends on !BR2_STATIC_LIBS

endif
