Some parts of alsa-lib correctly use threads only when available, but
some other parts, especially certain PCM plugins, unconditionally
require threads. While it would certainly be possible to fix alsa-lib
to only use threads when available, it probably doesn't make much
sense, since on an embedded system that has audio, we are probably
powerful enough to enable thread support in the C library.
Fixes:
http://autobuild.buildroot.org/results/
e14469be7f6171f4c8c0c09c8e32943819f7938b/build-end.log
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
# https://bugtrack.alsa-project.org/alsa-bug/view.php?id=4913
# is fixed
select BR2_PACKAGE_ALSA_LIB_PCM
+ # 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
help
The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI
functionality to the Linux operating system.
http://www.alsa-project.org/
+comment "alsa-lib needs threads support in toolchain"
+ depends on !BR2_TOOLCHAIN_HAS_THREADS
+
if BR2_PACKAGE_ALSA_LIB
config BR2_PACKAGE_ALSA_LIB_PYTHON
config BR2_PACKAGE_BLUEZ_UTILS
bool "bluez-utils"
depends on BR2_USE_WCHAR # libglib2
- depends on BR2_TOOLCHAIN_HAS_THREADS # dbus
+ depends on BR2_TOOLCHAIN_HAS_THREADS # dbus, alsa-lib
select BR2_PACKAGE_DBUS
select BR2_PACKAGE_LIBGLIB2
help
config BR2_PACKAGE_ALSA_UTILS
bool "alsa-utils"
depends on BR2_LARGEFILE
+ depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib
select BR2_PACKAGE_ALSA_LIB
help
This package contains the command line utilities for the ALSA
http://www.alsa-project.org/
-comment "alsa-utils requires a toolchain with LARGEFILE support"
- depends on !BR2_LARGEFILE
+comment "alsa-utils requires a toolchain with LARGEFILE and threads support"
+ depends on !BR2_LARGEFILE || !BR2_TOOLCHAIN_HAS_THREADS
if BR2_PACKAGE_ALSA_UTILS
menu "ALSA utils selection"
select BR2_PACKAGE_ALSA_LIB
select BR2_PACKAGE_ALSA_LIB_PCM
select BR2_PACKAGE_ALSA_LIB_MIXER
+ depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib
help
Enable alsa output support.
config BR2_PACKAGE_PORTAUDIO_ALSA
bool "alsa support"
select BR2_PACKAGE_ALSA_LIB
+ depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib
default y
help
Compile with ALSA support.
bool "QtMultimedia Audio backend"
depends on BR2_PACKAGE_QT_MULTIMEDIA
select BR2_PACKAGE_ALSA_LIB
+ depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib
help
Build the ALSA audio backend into QtMultimedia