diff --git configure.in configure.in index 5980b76..11f5f77 100644 --- configure.in +++ configure.in @@ -5600,13 +5600,25 @@ dnl ======================================================== dnl = Check alsa availability on Linux if using sydneyaudio dnl ======================================================== +MOZ_ARG_ENABLE_BOOL(alsa, +[ --enable-alsa Enable Alsa support (default on Linux)], +MOZ_ALSA=1, +MOZ_ALSA= MOZ_ALSA_FORCE=$enableval) + dnl If using sydneyaudio with Linux, ensure that the alsa library is available -if test -n "$MOZ_SYDNEYAUDIO" -a "$OS_TARGET" = "Linux"; then +if test -n "$MOZ_SYDNEYAUDIO" -a "$OS_TARGET" = "Linux" -a "$MOZ_ALSA_FORCE" != "no"; then + MOZ_ALSA=1 +fi + +if test -n "$MOZ_ALSA"; then + AC_DEFINE(MOZ_CUBEB) PKG_CHECK_MODULES(MOZ_ALSA, alsa, , [echo "$MOZ_ALSA_PKG_ERRORS" AC_MSG_ERROR([Need alsa for Ogg, Wave or WebM decoding on Linux. Disable with --disable-ogg --disable-wave --disable-webm. (On Ubuntu, you might try installing the package libasound2-dev.)])]) fi +AC_SUBST(MOZ_ALSA) + dnl ======================================================== dnl = Enable PulseAudio dnl ======================================================== diff --git media/libcubeb/src/Makefile.in media/libcubeb/src/Makefile.in index 5ab4dd8..c8df26f 100644 --- media/libcubeb/src/Makefile.in +++ media/libcubeb/src/Makefile.in @@ -24,10 +24,6 @@ endif ifeq ($(OS_TARGET),Android) # No Android implementation of libcubeb yet. -else ifeq ($(OS_TARGET),Linux) -CSRCS = \ - cubeb_alsa.c \ - $(NULL) endif ifeq ($(OS_TARGET),Darwin) @@ -42,6 +38,12 @@ CSRCS = \ $(NULL) endif +ifdef MOZ_ALSA +CSRCS = \ + cubeb_alsa.c \ + $(NULL) +endif + ifdef MOZ_PULSEAUDIO CSRCS = \ cubeb_pulse.c \ diff --git media/libsydneyaudio/src/Makefile.in media/libsydneyaudio/src/Makefile.in index 8dda8ce..b19641d 100644 --- media/libsydneyaudio/src/Makefile.in +++ media/libsydneyaudio/src/Makefile.in @@ -30,10 +30,6 @@ else ifeq ($(MOZ_WIDGET_TOOLKIT),android) CSRCS = \ sydney_audio_android.c \ $(NULL) -else ifeq ($(OS_ARCH),Linux) -CSRCS = \ - sydney_audio_alsa.c \ - $(NULL) endif ifeq ($(OS_ARCH),WINNT) @@ -68,6 +64,18 @@ CSRCS = \ $(NULL) endif +ifdef MOZ_ALSA +CSRCS = \ + sydney_audio_alsa.c \ + $(NULL) +endif + +ifdef MOZ_PULSEAUDIO +CSRCS = \ + sydney_audio_pulseaudio.c \ + $(NULL) +endif + ifeq ($(OS_ARCH),WINNT) OS_LIBS += winmm.lib endif diff --git toolkit/library/Makefile.in toolkit/library/Makefile.in index 43384e9..e46a6e3 100644 --- toolkit/library/Makefile.in +++ toolkit/library/Makefile.in @@ -370,14 +370,11 @@ endif EXTRA_DSO_LDOPTS += $(call EXPAND_LIBNAME_PATH,gkmedias,$(DIST)/lib) -ifdef MOZ_SYDNEYAUDIO -ifeq ($(OS_ARCH),Linux) +ifneq (,$(MOZ_CUBEB)$(MOZ_SYDNEYAUDIO)) +ifdef MOZ_ALSA EXTRA_DSO_LDOPTS += $(MOZ_ALSA_LIBS) endif -endif - ifdef MOZ_PULSEAUDIO -ifdef MOZ_CUBEB EXTRA_DSO_LDOPTS += $(MOZ_PULSEAUDIO_LIBS) endif endif