alsa-lib: require thread support

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>
This commit is contained in:
Thomas Petazzoni 2012-09-18 07:21:37 +00:00 committed by Peter Korsgaard
parent e04b4dc7b6
commit beb45605db
6 changed files with 15 additions and 3 deletions

View File

@ -4,12 +4,20 @@ config BR2_PACKAGE_ALSA_LIB
# https://bugtrack.alsa-project.org/alsa-bug/view.php?id=4913 # https://bugtrack.alsa-project.org/alsa-bug/view.php?id=4913
# is fixed # is fixed
select BR2_PACKAGE_ALSA_LIB_PCM 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 help
The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI
functionality to the Linux operating system. functionality to the Linux operating system.
http://www.alsa-project.org/ http://www.alsa-project.org/
comment "alsa-lib needs threads support in toolchain"
depends on !BR2_TOOLCHAIN_HAS_THREADS
if BR2_PACKAGE_ALSA_LIB if BR2_PACKAGE_ALSA_LIB
config BR2_PACKAGE_ALSA_LIB_PYTHON config BR2_PACKAGE_ALSA_LIB_PYTHON

View File

@ -1,7 +1,7 @@
config BR2_PACKAGE_BLUEZ_UTILS config BR2_PACKAGE_BLUEZ_UTILS
bool "bluez-utils" bool "bluez-utils"
depends on BR2_USE_WCHAR # libglib2 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_DBUS
select BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_LIBGLIB2
help help

View File

@ -1,6 +1,7 @@
config BR2_PACKAGE_ALSA_UTILS config BR2_PACKAGE_ALSA_UTILS
bool "alsa-utils" bool "alsa-utils"
depends on BR2_LARGEFILE depends on BR2_LARGEFILE
depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib
select BR2_PACKAGE_ALSA_LIB select BR2_PACKAGE_ALSA_LIB
help help
This package contains the command line utilities for the ALSA This package contains the command line utilities for the ALSA
@ -8,8 +9,8 @@ config BR2_PACKAGE_ALSA_UTILS
http://www.alsa-project.org/ http://www.alsa-project.org/
comment "alsa-utils requires a toolchain with LARGEFILE support" comment "alsa-utils requires a toolchain with LARGEFILE and threads support"
depends on !BR2_LARGEFILE depends on !BR2_LARGEFILE || !BR2_TOOLCHAIN_HAS_THREADS
if BR2_PACKAGE_ALSA_UTILS if BR2_PACKAGE_ALSA_UTILS
menu "ALSA utils selection" menu "ALSA utils selection"

View File

@ -21,6 +21,7 @@ config BR2_PACKAGE_MPD_ALSA
select BR2_PACKAGE_ALSA_LIB select BR2_PACKAGE_ALSA_LIB
select BR2_PACKAGE_ALSA_LIB_PCM select BR2_PACKAGE_ALSA_LIB_PCM
select BR2_PACKAGE_ALSA_LIB_MIXER select BR2_PACKAGE_ALSA_LIB_MIXER
depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib
help help
Enable alsa output support. Enable alsa output support.

View File

@ -11,6 +11,7 @@ if BR2_PACKAGE_PORTAUDIO
config BR2_PACKAGE_PORTAUDIO_ALSA config BR2_PACKAGE_PORTAUDIO_ALSA
bool "alsa support" bool "alsa support"
select BR2_PACKAGE_ALSA_LIB select BR2_PACKAGE_ALSA_LIB
depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib
default y default y
help help
Compile with ALSA support. Compile with ALSA support.

View File

@ -315,6 +315,7 @@ config BR2_PACKAGE_QT_AUDIO_BACKEND
bool "QtMultimedia Audio backend" bool "QtMultimedia Audio backend"
depends on BR2_PACKAGE_QT_MULTIMEDIA depends on BR2_PACKAGE_QT_MULTIMEDIA
select BR2_PACKAGE_ALSA_LIB select BR2_PACKAGE_ALSA_LIB
depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib
help help
Build the ALSA audio backend into QtMultimedia Build the ALSA audio backend into QtMultimedia