Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 8 Jul 2012 12:45:43 GMT
From:      svn-freebsd-gecko@chruetertee.ch
To:        freebsd-gecko@freebsd.org
Subject:   [SVN-Commit] r852 - in branches/experimental: Mk mail/thunderbird mail/thunderbird-esr mail/thunderbird-esr/files mail/thunderbird/files mail/thunderbird3 mail/thunderbird3/files www/firefox www/firefox-esr www/firefox-esr/files www/firefox-nightly www/firefox-nightly/files www/firefox/files www/firefox36 www/firefox36/files www/kompozer www/libxul www/libxul/files www/libxul19 www/libxul19/files www/seamonkey www/seamonkey/files
Message-ID:  <201207081245.q68CjhIF016643@trillian.chruetertee.ch>

next in thread | raw e-mail | index | archive | help
Author: jbeich
Date: Sun Jul  8 12:45:43 2012
New Revision: 852

Log:
proliferate alsa/pulse patch from r814

PulseAudio seems to be common on Gnome desktop.

Added:
   branches/experimental/mail/thunderbird-esr/files/patch-alsapulse
   branches/experimental/mail/thunderbird-esr/files/patch-bug685258
   branches/experimental/mail/thunderbird/files/patch-alsapulse
   branches/experimental/mail/thunderbird/files/patch-bug685258
   branches/experimental/mail/thunderbird3/files/patch-alsapulse
   branches/experimental/mail/thunderbird3/files/patch-bug685258
   branches/experimental/www/firefox-esr/files/patch-alsapulse
   branches/experimental/www/firefox-esr/files/patch-bug685258
   branches/experimental/www/firefox/files/patch-alsapulse
      - copied, changed from r851, branches/experimental/www/firefox-nightly/files/patch-alsapulse
   branches/experimental/www/firefox/files/patch-bug685258
   branches/experimental/www/firefox36/files/patch-alsapulse
   branches/experimental/www/firefox36/files/patch-bug685258
   branches/experimental/www/firefox36/files/patch-media-libsydneyaudio-src-Makefile.in
      - copied, changed from r851, branches/experimental/www/firefox36/files/libsydney_oss
   branches/experimental/www/libxul/files/patch-alsapulse
   branches/experimental/www/libxul/files/patch-bug685258
   branches/experimental/www/libxul19/files/patch-alsapulse
   branches/experimental/www/libxul19/files/patch-bug685258
   branches/experimental/www/libxul19/files/patch-media-libsydneyaudio-src-Makefile.in
      - copied, changed from r851, branches/experimental/www/libxul19/files/libsydney_oss
   branches/experimental/www/seamonkey/files/patch-alsapulse
   branches/experimental/www/seamonkey/files/patch-bug685258
Deleted:
   branches/experimental/www/firefox36/files/libsydney_oss
   branches/experimental/www/libxul19/files/libsydney_oss
   branches/experimental/www/libxul19/files/releng6_pulseaudio
Modified:
   branches/experimental/Mk/bsd.gecko.mk
   branches/experimental/mail/thunderbird-esr/Makefile
   branches/experimental/mail/thunderbird/Makefile
   branches/experimental/mail/thunderbird3/Makefile
   branches/experimental/mail/thunderbird3/files/patch-mozilla-media-libsydneyaudio-src-Makefile.in
   branches/experimental/www/firefox-esr/Makefile
   branches/experimental/www/firefox-nightly/Makefile
   branches/experimental/www/firefox-nightly/files/patch-alsapulse
   branches/experimental/www/firefox/Makefile
   branches/experimental/www/firefox36/Makefile
   branches/experimental/www/kompozer/Makefile
   branches/experimental/www/libxul/Makefile
   branches/experimental/www/libxul19/Makefile
   branches/experimental/www/seamonkey/Makefile

Modified: branches/experimental/Mk/bsd.gecko.mk
==============================================================================
--- branches/experimental/Mk/bsd.gecko.mk	Sun Jul  8 12:45:24 2012	(r851)
+++ branches/experimental/Mk/bsd.gecko.mk	Sun Jul  8 12:45:43 2012	(r852)
@@ -554,6 +554,9 @@
 
 OPTIONS_DEFINE+=DBUS DEBUG GCONF GIO GNOMEVFS2 LIBPROXY LOGGING OPTIMIZED_CFLAGS
 
+OPTIONS_SINGLE+=		AUDIO
+OPTIONS_SINGLE_AUDIO=	ALSA OSS PULSEAUDIO
+
 GIO_DESC?=		GIO for file I/O # move to bsd.options.desc.mk
 LIGHTNING_DESC?=Calendar extension
 LOGGING_DESC?=	Additional log messages
@@ -718,6 +721,17 @@
 MOZ_OPTIONS+=	--disable-libproxy
 .endif
 
+.if ${PORT_OPTIONS:MALSA}
+LIB_DEPENDS+=	asound.2:${PORTSDIR}/audio/alsa-lib
+RUN_DEPENDS+=	${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:${PORTSDIR}/audio/alsa-plugins
+MOZ_OPTIONS+=	--enable-alsa
+.endif
+
+.if ${PORT_OPTIONS:MPULSEAUDIO}
+LIB_DEPENDS+=	pulse.0:${PORTSDIR}/audio/pulseaudio
+MOZ_OPTIONS+=	--enable-pulseaudio
+.endif
+
 .if !defined(STRIP) || ${STRIP} == ""
 MOZ_OPTIONS+=	--disable-strip --disable-install-strip
 .else
@@ -812,6 +826,7 @@
 		${ECHO_CMD} "fenv.h" >> ${MOZSRC}/${subdir}/config/system-headers ; \
 		${ECHO_CMD} "malloc_np.h" >> ${MOZSRC}/${subdir}/config/system-headers ; \
 		${ECHO_CMD} "pthread_np.h" >> ${MOZSRC}/${subdir}/config/system-headers ; \
+		${ECHO_CMD} "pulse/pulseaudio.h" >> ${MOZSRC}/${subdir}/config/system-headers ; \
 		${ECHO_CMD} "unwind.h" >> ${MOZSRC}/${subdir}/config/system-headers ; \
 	fi
 .endfor

Modified: branches/experimental/mail/thunderbird-esr/Makefile
==============================================================================
--- branches/experimental/mail/thunderbird-esr/Makefile	Sun Jul  8 12:45:24 2012	(r851)
+++ branches/experimental/mail/thunderbird-esr/Makefile	Sun Jul  8 12:45:43 2012	(r852)
@@ -56,7 +56,7 @@
 SYSTEM_PREFS=	${FAKEDIR}/lib/${PORTNAME}/defaults/pref/${PORTNAME}.js
 MOZ_PIS_SCRIPTS=moz_pis_S50cleanhome
 
-OPTIONS_DEFAULT=DBUS
+OPTIONS_DEFAULT=DBUS OSS
 OPTIONS_DEFINE=	LIGHTNING
 
 .include <bsd.port.pre.mk>

Added: branches/experimental/mail/thunderbird-esr/files/patch-alsapulse
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/mail/thunderbird-esr/files/patch-alsapulse	Sun Jul  8 12:45:43 2012	(r852)
@@ -0,0 +1,119 @@
+--- mozilla/config/autoconf.mk.in~
++++ mozilla/config/autoconf.mk.in
+@@ -568,7 +568,13 @@ MOZ_LIBNOTIFY_CFLAGS	= @MOZ_LIBNOTIFY_CF
+ MOZ_LIBNOTIFY_LIBS	= @MOZ_LIBNOTIFY_LIBS@
+ MOZ_ENABLE_LIBNOTIFY	= @MOZ_ENABLE_LIBNOTIFY@
+ 
++MOZ_ALSA                = @MOZ_ALSA@
+ MOZ_ALSA_LIBS           = @MOZ_ALSA_LIBS@
++MOZ_ALSA_CFLAGS         = @MOZ_ALSA_CFLAGS@
++
++MOZ_PULSEAUDIO          = @MOZ_PULSEAUDIO@
++MOZ_PULSEAUDIO_LIBS     = @MOZ_PULSEAUDIO_LIBS@
++MOZ_PULSEAUDIO_CFLAGS   = @MOZ_PULSEAUDIO_CFLAGS@
+ 
+ GLIB_CFLAGS	= @GLIB_CFLAGS@
+ GLIB_LIBS	= @GLIB_LIBS@
+--- mozilla/configure.in~
++++ mozilla/configure.in
+@@ -5758,17 +5775,48 @@ dnl ====================================
+ dnl = Check alsa availability on Linux if using sydneyaudio
+ dnl ========================================================
+ 
++MOZ_ARG_ENABLE_BOOL(alsa,
++[  --enable-alsa          Enable Alsa support],
++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"; then
++if test -n "$MOZ_SYDNEYAUDIO" -a "$MOZ_ALSA_FORCE" != "no"; then
+    case "$target_os" in
+ linux*)
++      MOZ_ALSA=1
++      ;;
++   esac
++fi
++
++if test -n "$MOZ_ALSA"; then
+       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.)])])
+-      ;;
+-   esac
+ fi
+ 
++AC_SUBST(MOZ_ALSA_CFLAGS)
++AC_SUBST(MOZ_ALSA)
++
++dnl ========================================================
++dnl = Enable PulseAudio
++dnl ========================================================
++
++MOZ_ARG_ENABLE_BOOL(pulseaudio,
++[  --enable-pulseaudio          Enable PulseAudio support],
++MOZ_PULSEAUDIO=1,
++MOZ_PULSEAUDIO=)
++
++if test -n "$MOZ_PULSEAUDIO"; then
++    PKG_CHECK_MODULES(MOZ_PULSEAUDIO, libpulse, ,
++         [echo "$MOZ_PULSEAUDIO_PKG_ERRORS"
++          AC_MSG_ERROR([pulseaudio audio backend requires libpulse package])])
++fi
++
++AC_SUBST(MOZ_PULSEAUDIO_CFLAGS)
++AC_SUBST(MOZ_PULSEAUDIO_LIBS)
++AC_SUBST(MOZ_PULSEAUDIO)
++
+ dnl ========================================================
+ dnl Permissions System
+ dnl ========================================================
+--- mozilla/media/libsydneyaudio/src/Makefile.in~
++++ mozilla/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
+--- mozilla/toolkit/library/libxul-config.mk~
++++ mozilla/toolkit/library/libxul-config.mk
+@@ -348,10 +348,12 @@ ifdef MOZ_NATIVE_LIBVPX
+ EXTRA_DSO_LDOPTS += $(MOZ_LIBVPX_LIBS)
+ endif
+ 
+-ifdef MOZ_SYDNEYAUDIO
+-ifeq ($(OS_ARCH),Linux)
++ifdef MOZ_ALSA
+ EXTRA_DSO_LDOPTS += $(MOZ_ALSA_LIBS)
+ endif
++
++ifdef MOZ_PULSEAUDIO
++EXTRA_DSO_LDOPTS += $(MOZ_PULSEAUDIO_LIBS)
+ endif
+ 
+ ifdef HAVE_CLOCK_MONOTONIC

Added: branches/experimental/mail/thunderbird-esr/files/patch-bug685258
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/mail/thunderbird-esr/files/patch-bug685258	Sun Jul  8 12:45:43 2012	(r852)
@@ -0,0 +1,17 @@
+# HG changeset patch
+# User Oleg Romashin <romaxa@gmail.com>
+# Parent a2291c212856ad27622416e83c8311b6a33b52f1
+Bug 685258 - Pulse audio backend does not check provided playback and crashes r=derf
+
+diff --git a/content/media/nsAudioStream.cpp b/content/media/nsAudioStream.cpp
+--- mozilla/content/media/nsAudioStream.cpp
++++ mozilla/content/media/nsAudioStream.cpp
+@@ -429,7 +429,7 @@ nsresult nsNativeAudioStream::Init(PRInt32 aNumChannels, PRInt32 aRate, SampleFo
+   mFormat = aFormat;
+ 
+   if (sa_stream_create_pcm(reinterpret_cast<sa_stream_t**>(&mAudioHandle),
+-                           NULL,
++                           "Mozilla",
+                            SA_MODE_WRONLY,
+                            SA_PCM_FORMAT_S16_NE,
+                            aRate,

Modified: branches/experimental/mail/thunderbird/Makefile
==============================================================================
--- branches/experimental/mail/thunderbird/Makefile	Sun Jul  8 12:45:24 2012	(r851)
+++ branches/experimental/mail/thunderbird/Makefile	Sun Jul  8 12:45:43 2012	(r852)
@@ -56,7 +56,7 @@
 SYSTEM_PREFS=	${FAKEDIR}/lib/${PORTNAME}/defaults/pref/${PORTNAME}.js
 MOZ_PIS_SCRIPTS=moz_pis_S50cleanhome
 
-OPTIONS_DEFAULT=DBUS
+OPTIONS_DEFAULT=DBUS OSS
 OPTIONS_DEFINE=	LIGHTNING
 
 .include <bsd.port.pre.mk>

Added: branches/experimental/mail/thunderbird/files/patch-alsapulse
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/mail/thunderbird/files/patch-alsapulse	Sun Jul  8 12:45:43 2012	(r852)
@@ -0,0 +1,119 @@
+--- mozilla/config/autoconf.mk.in~
++++ mozilla/config/autoconf.mk.in
+@@ -568,7 +568,13 @@ MOZ_LIBNOTIFY_CFLAGS	= @MOZ_LIBNOTIFY_CF
+ MOZ_LIBNOTIFY_LIBS	= @MOZ_LIBNOTIFY_LIBS@
+ MOZ_ENABLE_LIBNOTIFY	= @MOZ_ENABLE_LIBNOTIFY@
+ 
++MOZ_ALSA                = @MOZ_ALSA@
+ MOZ_ALSA_LIBS           = @MOZ_ALSA_LIBS@
++MOZ_ALSA_CFLAGS         = @MOZ_ALSA_CFLAGS@
++
++MOZ_PULSEAUDIO          = @MOZ_PULSEAUDIO@
++MOZ_PULSEAUDIO_LIBS     = @MOZ_PULSEAUDIO_LIBS@
++MOZ_PULSEAUDIO_CFLAGS   = @MOZ_PULSEAUDIO_CFLAGS@
+ 
+ GLIB_CFLAGS	= @GLIB_CFLAGS@
+ GLIB_LIBS	= @GLIB_LIBS@
+--- mozilla/configure.in~
++++ mozilla/configure.in
+@@ -5758,17 +5775,48 @@ dnl ====================================
+ dnl = Check alsa availability on Linux if using sydneyaudio
+ dnl ========================================================
+ 
++MOZ_ARG_ENABLE_BOOL(alsa,
++[  --enable-alsa          Enable Alsa support],
++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"; then
++if test -n "$MOZ_SYDNEYAUDIO" -a "$MOZ_ALSA_FORCE" != "no"; then
+    case "$target_os" in
+ linux*)
++      MOZ_ALSA=1
++      ;;
++   esac
++fi
++
++if test -n "$MOZ_ALSA"; then
+       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.)])])
+-      ;;
+-   esac
+ fi
+ 
++AC_SUBST(MOZ_ALSA_CFLAGS)
++AC_SUBST(MOZ_ALSA)
++
++dnl ========================================================
++dnl = Enable PulseAudio
++dnl ========================================================
++
++MOZ_ARG_ENABLE_BOOL(pulseaudio,
++[  --enable-pulseaudio          Enable PulseAudio support],
++MOZ_PULSEAUDIO=1,
++MOZ_PULSEAUDIO=)
++
++if test -n "$MOZ_PULSEAUDIO"; then
++    PKG_CHECK_MODULES(MOZ_PULSEAUDIO, libpulse, ,
++         [echo "$MOZ_PULSEAUDIO_PKG_ERRORS"
++          AC_MSG_ERROR([pulseaudio audio backend requires libpulse package])])
++fi
++
++AC_SUBST(MOZ_PULSEAUDIO_CFLAGS)
++AC_SUBST(MOZ_PULSEAUDIO_LIBS)
++AC_SUBST(MOZ_PULSEAUDIO)
++
+ dnl ========================================================
+ dnl Permissions System
+ dnl ========================================================
+--- mozilla/media/libsydneyaudio/src/Makefile.in~
++++ mozilla/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
+--- mozilla/toolkit/library/Makefile.in~
++++ mozilla/toolkit/library/Makefile.in
+@@ -375,10 +375,12 @@ endif
+ 
+ EXTRA_DSO_LDOPTS += $(call EXPAND_LIBNAME_PATH,gkmedias,$(DIST)/lib) 
+ 
+-ifdef MOZ_SYDNEYAUDIO
+-ifeq ($(OS_ARCH),Linux)
++ifdef MOZ_ALSA
+ EXTRA_DSO_LDOPTS += $(MOZ_ALSA_LIBS)
+ endif
++
++ifdef MOZ_PULSEAUDIO
++EXTRA_DSO_LDOPTS += $(MOZ_PULSEAUDIO_LIBS)
+ endif
+ 
+ ifdef HAVE_CLOCK_MONOTONIC

Added: branches/experimental/mail/thunderbird/files/patch-bug685258
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/mail/thunderbird/files/patch-bug685258	Sun Jul  8 12:45:43 2012	(r852)
@@ -0,0 +1,17 @@
+# HG changeset patch
+# User Oleg Romashin <romaxa@gmail.com>
+# Parent a2291c212856ad27622416e83c8311b6a33b52f1
+Bug 685258 - Pulse audio backend does not check provided playback and crashes r=derf
+
+diff --git a/content/media/nsAudioStream.cpp b/content/media/nsAudioStream.cpp
+--- mozilla/content/media/nsAudioStream.cpp
++++ mozilla/content/media/nsAudioStream.cpp
+@@ -429,7 +429,7 @@ nsresult nsNativeAudioStream::Init(PRInt32 aNumChannels, PRInt32 aRate, SampleFo
+   mFormat = aFormat;
+ 
+   if (sa_stream_create_pcm(reinterpret_cast<sa_stream_t**>(&mAudioHandle),
+-                           NULL,
++                           "Mozilla",
+                            SA_MODE_WRONLY,
+                            SA_PCM_FORMAT_S16_NE,
+                            aRate,

Modified: branches/experimental/mail/thunderbird3/Makefile
==============================================================================
--- branches/experimental/mail/thunderbird3/Makefile	Sun Jul  8 12:45:24 2012	(r851)
+++ branches/experimental/mail/thunderbird3/Makefile	Sun Jul  8 12:45:43 2012	(r852)
@@ -52,7 +52,7 @@
 SYSTEM_PREFS=	${FAKEDIR}/lib/${PORTNAME}/defaults/pref/${PORTNAME}.js
 MOZ_PIS_SCRIPTS=moz_pis_S50cleanhome
 
-OPTIONS_DEFAULT=DBUS
+OPTIONS_DEFAULT=DBUS OSS
 
 .include <bsd.port.pre.mk>
 

Added: branches/experimental/mail/thunderbird3/files/patch-alsapulse
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/mail/thunderbird3/files/patch-alsapulse	Sun Jul  8 12:45:43 2012	(r852)
@@ -0,0 +1,122 @@
+--- mozilla/config/autoconf.mk.in~
++++ mozilla/config/autoconf.mk.in
+@@ -555,6 +555,14 @@ MOZ_LIBNOTIFY_CFLAGS	= @MOZ_LIBNOTIFY_CF
+ MOZ_LIBNOTIFY_LIBS	= @MOZ_LIBNOTIFY_LIBS@
+ MOZ_ENABLE_LIBNOTIFY	= @MOZ_ENABLE_LIBNOTIFY@
+ 
++MOZ_ALSA                = @MOZ_ALSA@
++MOZ_ALSA_LIBS           = @MOZ_ALSA_LIBS@
++MOZ_ALSA_CFLAGS         = @MOZ_ALSA_CFLAGS@
++
++MOZ_PULSEAUDIO          = @MOZ_PULSEAUDIO@
++MOZ_PULSEAUDIO_LIBS     = @MOZ_PULSEAUDIO_LIBS@
++MOZ_PULSEAUDIO_CFLAGS   = @MOZ_PULSEAUDIO_CFLAGS@
++
+ GLIB_CFLAGS	= @GLIB_CFLAGS@
+ GLIB_LIBS	= @GLIB_LIBS@
+ GLIB_GMODULE_LIBS	= @GLIB_GMODULE_LIBS@
+--- mozilla/configure.in~
++++ mozilla/configure.in
+@@ -5660,15 +5660,49 @@ dnl ====================================
+ 
+ dnl If using sydneyaudio with Linux, ensure that the alsa library is available
+ if test "$COMPILE_ENVIRONMENT"; then
+-if test -n "$MOZ_SYDNEYAUDIO"; then
++MOZ_ARG_ENABLE_BOOL(alsa,
++[  --enable-alsa          Enable Alsa support],
++MOZ_ALSA=1,
++MOZ_ALSA= MOZ_ALSA_FORCE=$enableval)
++
++if test -n "$MOZ_SYDNEYAUDIO" -a "$MOZ_ALSA_FORCE" != "no"; then
+    case "$target_os" in
+ linux*)
+-      AC_CHECK_LIB(asound, snd_pcm_open,,AC_MSG_ERROR([Ogg support on Linux requires the alsa library]))
++      MOZ_ALSA=1
+       ;;
+    esac
+ fi
++
++if test -n "$MOZ_ALSA"; then
++      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
+ fi
+ 
++AC_SUBST(MOZ_ALSA_CFLAGS)
++AC_SUBST(MOZ_ALSA_LIBS)
++AC_SUBST(MOZ_ALSA)
++
++dnl ========================================================
++dnl = Enable PulseAudio
++dnl ========================================================
++
++MOZ_ARG_ENABLE_BOOL(pulseaudio,
++[  --enable-pulseaudio          Enable PulseAudio support],
++MOZ_PULSEAUDIO=1,
++MOZ_PULSEAUDIO=)
++
++if test -n "$MOZ_PULSEAUDIO"; then
++    PKG_CHECK_MODULES(MOZ_PULSEAUDIO, libpulse, ,
++         [echo "$MOZ_PULSEAUDIO_PKG_ERRORS"
++          AC_MSG_ERROR([pulseaudio audio backend requires libpulse package])])
++fi
++
++AC_SUBST(MOZ_PULSEAUDIO_CFLAGS)
++AC_SUBST(MOZ_PULSEAUDIO_LIBS)
++AC_SUBST(MOZ_PULSEAUDIO)
++
+ dnl ========================================================
+ dnl Splashscreen
+ dnl ========================================================
+--- mozilla/media/libsydneyaudio/src/Makefile.in~
++++ mozilla/media/libsydneyaudio/src/Makefile.in
+@@ -45,12 +45,6 @@ MODULE		= sydneyaudio
+ LIBRARY_NAME	= sydneyaudio
+ FORCE_STATIC_LIB= 1
+ 
+-ifeq ($(OS_ARCH),Linux)
+-CSRCS		= \
+-		sydney_audio_alsa.c \
+-		$(NULL)
+-endif
+-
+ ifneq (,$(filter WINNT WINCE,$(OS_ARCH)))
+ CSRCS		= \
+ 		sydney_audio_waveapi.c \
+@@ -83,6 +83,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
+--- mozilla/layout/build/Makefile.in~
++++ mozilla/layout/build/Makefile.in
+@@ -277,6 +277,14 @@ ifneq (,$(filter gtk2,$(MOZ_WIDGET_TOOLK
+ EXTRA_DSO_LDOPTS += $(XLDFLAGS) $(XLIBS)
+ endif
+ 
++ifdef MOZ_ALSA
++EXTRA_DSO_LDOPTS += $(MOZ_ALSA_LIBS)
++endif
++
++ifdef MOZ_PULSEAUDIO
++EXTRA_DSO_LDOPTS += $(MOZ_PULSEAUDIO_LIBS)
++endif
++
+ ifdef MOZ_SYDNEYAUDIO
+ ifeq ($(OS_ARCH),Darwin)
+ OS_LIBS += -framework CoreAudio -framework AudioToolbox -framework AudioUnit -framework Carbon

Added: branches/experimental/mail/thunderbird3/files/patch-bug685258
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/mail/thunderbird3/files/patch-bug685258	Sun Jul  8 12:45:43 2012	(r852)
@@ -0,0 +1,17 @@
+# HG changeset patch
+# User Oleg Romashin <romaxa@gmail.com>
+# Parent a2291c212856ad27622416e83c8311b6a33b52f1
+Bug 685258 - Pulse audio backend does not check provided playback and crashes r=derf
+
+diff --git a/content/media/nsAudioStream.cpp b/content/media/nsAudioStream.cpp
+--- mozilla/content/media/nsAudioStream.cpp
++++ mozilla/content/media/nsAudioStream.cpp
+@@ -83,7 +83,7 @@ void nsAudioStream::Init(PRInt32 aNumCha
+   mChannels = aNumChannels;
+   mFormat = aFormat;
+   if (sa_stream_create_pcm(reinterpret_cast<sa_stream_t**>(&mAudioHandle),
+-                           NULL, 
++                           "Mozilla",
+                            SA_MODE_WRONLY, 
+                            SA_PCM_FORMAT_S16_NE,
+                            aRate,

Modified: branches/experimental/mail/thunderbird3/files/patch-mozilla-media-libsydneyaudio-src-Makefile.in
==============================================================================
--- branches/experimental/mail/thunderbird3/files/patch-mozilla-media-libsydneyaudio-src-Makefile.in	Sun Jul  8 12:45:24 2012	(r851)
+++ branches/experimental/mail/thunderbird3/files/patch-mozilla-media-libsydneyaudio-src-Makefile.in	Sun Jul  8 12:45:43 2012	(r852)
@@ -10,6 +10,6 @@
 +		$(NULL)
 +endif
 +
- ifeq ($(OS_ARCH),Linux)
+ ifneq (,$(filter WINNT WINCE,$(OS_ARCH)))
  CSRCS		= \
- 		sydney_audio_alsa.c \
+ 		sydney_audio_waveapi.c \

Modified: branches/experimental/www/firefox-esr/Makefile
==============================================================================
--- branches/experimental/www/firefox-esr/Makefile	Sun Jul  8 12:45:24 2012	(r851)
+++ branches/experimental/www/firefox-esr/Makefile	Sun Jul  8 12:45:43 2012	(r852)
@@ -53,7 +53,7 @@
 		--disable-updater \
 		--disable-necko-wifi
 
-OPTIONS_DEFAULT=DBUS
+OPTIONS_DEFAULT=DBUS OSS
 OPTIONS_DEFINE=	PGO
 
 .include <bsd.port.pre.mk>

Added: branches/experimental/www/firefox-esr/files/patch-alsapulse
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/www/firefox-esr/files/patch-alsapulse	Sun Jul  8 12:45:43 2012	(r852)
@@ -0,0 +1,119 @@
+--- config/autoconf.mk.in~
++++ config/autoconf.mk.in
+@@ -568,7 +568,13 @@ MOZ_LIBNOTIFY_CFLAGS	= @MOZ_LIBNOTIFY_CF
+ MOZ_LIBNOTIFY_LIBS	= @MOZ_LIBNOTIFY_LIBS@
+ MOZ_ENABLE_LIBNOTIFY	= @MOZ_ENABLE_LIBNOTIFY@
+ 
++MOZ_ALSA                = @MOZ_ALSA@
+ MOZ_ALSA_LIBS           = @MOZ_ALSA_LIBS@
++MOZ_ALSA_CFLAGS         = @MOZ_ALSA_CFLAGS@
++
++MOZ_PULSEAUDIO          = @MOZ_PULSEAUDIO@
++MOZ_PULSEAUDIO_LIBS     = @MOZ_PULSEAUDIO_LIBS@
++MOZ_PULSEAUDIO_CFLAGS   = @MOZ_PULSEAUDIO_CFLAGS@
+ 
+ GLIB_CFLAGS	= @GLIB_CFLAGS@
+ GLIB_LIBS	= @GLIB_LIBS@
+--- configure.in~
++++ configure.in
+@@ -5758,17 +5775,48 @@ dnl ====================================
+ dnl = Check alsa availability on Linux if using sydneyaudio
+ dnl ========================================================
+ 
++MOZ_ARG_ENABLE_BOOL(alsa,
++[  --enable-alsa          Enable Alsa support],
++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"; then
++if test -n "$MOZ_SYDNEYAUDIO" -a "$MOZ_ALSA_FORCE" != "no"; then
+    case "$target_os" in
+ linux*)
++      MOZ_ALSA=1
++      ;;
++   esac
++fi
++
++if test -n "$MOZ_ALSA"; then
+       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.)])])
+-      ;;
+-   esac
+ fi
+ 
++AC_SUBST(MOZ_ALSA_CFLAGS)
++AC_SUBST(MOZ_ALSA)
++
++dnl ========================================================
++dnl = Enable PulseAudio
++dnl ========================================================
++
++MOZ_ARG_ENABLE_BOOL(pulseaudio,
++[  --enable-pulseaudio          Enable PulseAudio support],
++MOZ_PULSEAUDIO=1,
++MOZ_PULSEAUDIO=)
++
++if test -n "$MOZ_PULSEAUDIO"; then
++    PKG_CHECK_MODULES(MOZ_PULSEAUDIO, libpulse, ,
++         [echo "$MOZ_PULSEAUDIO_PKG_ERRORS"
++          AC_MSG_ERROR([pulseaudio audio backend requires libpulse package])])
++fi
++
++AC_SUBST(MOZ_PULSEAUDIO_CFLAGS)
++AC_SUBST(MOZ_PULSEAUDIO_LIBS)
++AC_SUBST(MOZ_PULSEAUDIO)
++
+ dnl ========================================================
+ dnl Permissions System
+ dnl ========================================================
+--- 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
+--- toolkit/library/libxul-config.mk~
++++ toolkit/library/libxul-config.mk
+@@ -348,10 +348,12 @@ ifdef MOZ_NATIVE_LIBVPX
+ EXTRA_DSO_LDOPTS += $(MOZ_LIBVPX_LIBS)
+ endif
+ 
+-ifdef MOZ_SYDNEYAUDIO
+-ifeq ($(OS_ARCH),Linux)
++ifdef MOZ_ALSA
+ EXTRA_DSO_LDOPTS += $(MOZ_ALSA_LIBS)
+ endif
++
++ifdef MOZ_PULSEAUDIO
++EXTRA_DSO_LDOPTS += $(MOZ_PULSEAUDIO_LIBS)
+ endif
+ 
+ ifdef HAVE_CLOCK_MONOTONIC

Added: branches/experimental/www/firefox-esr/files/patch-bug685258
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/www/firefox-esr/files/patch-bug685258	Sun Jul  8 12:45:43 2012	(r852)
@@ -0,0 +1,17 @@
+# HG changeset patch
+# User Oleg Romashin <romaxa@gmail.com>
+# Parent a2291c212856ad27622416e83c8311b6a33b52f1
+Bug 685258 - Pulse audio backend does not check provided playback and crashes r=derf
+
+diff --git a/content/media/nsAudioStream.cpp b/content/media/nsAudioStream.cpp
+--- content/media/nsAudioStream.cpp
++++ content/media/nsAudioStream.cpp
+@@ -429,7 +429,7 @@ nsresult nsNativeAudioStream::Init(PRInt32 aNumChannels, PRInt32 aRate, SampleFo
+   mFormat = aFormat;
+ 
+   if (sa_stream_create_pcm(reinterpret_cast<sa_stream_t**>(&mAudioHandle),
+-                           NULL,
++                           "Mozilla",
+                            SA_MODE_WRONLY,
+                            SA_PCM_FORMAT_S16_NE,
+                            aRate,

Modified: branches/experimental/www/firefox-nightly/Makefile
==============================================================================
--- branches/experimental/www/firefox-nightly/Makefile	Sun Jul  8 12:45:24 2012	(r851)
+++ branches/experimental/www/firefox-nightly/Makefile	Sun Jul  8 12:45:43 2012	(r852)
@@ -54,10 +54,6 @@
 		--disable-necko-wifi
 
 OPTIONS_DEFAULT=DBUS GSTREAMER OSS
-
-OPTIONS_SINGLE+=	AUDIO
-OPTIONS_SINGLE_AUDIO=	ALSA OSS PULSEAUDIO
-
 OPTIONS_DEFINE=	GSTREAMER PGO
 
 .if ${USE_MOZILLA:M-nss}
@@ -91,17 +87,6 @@
 MOZ_OPTIONS+=	--disable-gnomeui
 .endif
 
-.if ${PORT_OPTIONS:MALSA}
-LIB_DEPENDS+=	asound.2:${PORTSDIR}/audio/alsa-lib
-RUN_DEPENDS+=	${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:${PORTSDIR}/audio/alsa-plugins
-MOZ_OPTIONS+=	--enable-alsa
-.endif
-
-.if ${PORT_OPTIONS:MPULSEAUDIO}
-LIB_DEPENDS+=	pulse.0:${PORTSDIR}/audio/pulseaudio
-MOZ_OPTIONS+=	--enable-pulseaudio
-.endif
-
 .if ${PORT_OPTIONS:MPGO}
 USE_DISPLAY=		yes
 

Modified: branches/experimental/www/firefox-nightly/files/patch-alsapulse
==============================================================================
--- branches/experimental/www/firefox-nightly/files/patch-alsapulse	Sun Jul  8 12:45:24 2012	(r851)
+++ branches/experimental/www/firefox-nightly/files/patch-alsapulse	Sun Jul  8 12:45:43 2012	(r852)
@@ -17,18 +17,6 @@
  GLIB_CFLAGS	= @GLIB_CFLAGS@
  GLIB_LIBS	= @GLIB_LIBS@
  GLIB_GMODULE_LIBS	= @GLIB_GMODULE_LIBS@
-diff --git config/system-headers config/system-headers
-index 84b03b4..5f49f7a 100644
---- config/system-headers
-+++ config/system-headers
-@@ -595,6 +595,7 @@ psap.h
- Pt.h
- pthread.h
- pthread_np.h
-+pulse/pulseaudio.h
- pwd.h
- Python.h
- QDOffscreen.h
 diff --git configure.in configure.in
 index 5980b76..11f5f77 100644
 --- configure.in
@@ -80,18 +68,6 @@
  dnl ========================================================
  dnl = Enable GStreamer
  dnl ========================================================
-diff --git js/src/config/system-headers js/src/config/system-headers
-index 84b03b4..5f49f7a 100644
---- js/src/config/system-headers
-+++ js/src/config/system-headers
-@@ -595,6 +595,7 @@ psap.h
- Pt.h
- pthread.h
- pthread_np.h
-+pulse/pulseaudio.h
- pwd.h
- Python.h
- QDOffscreen.h
 diff --git media/libcubeb/src/Makefile.in media/libcubeb/src/Makefile.in
 index 5ab4dd8..c8df26f 100644
 --- media/libcubeb/src/Makefile.in

Modified: branches/experimental/www/firefox/Makefile
==============================================================================
--- branches/experimental/www/firefox/Makefile	Sun Jul  8 12:45:24 2012	(r851)
+++ branches/experimental/www/firefox/Makefile	Sun Jul  8 12:45:43 2012	(r852)
@@ -53,7 +53,7 @@
 		--disable-updater \
 		--disable-necko-wifi
 
-OPTIONS_DEFAULT=DBUS
+OPTIONS_DEFAULT=DBUS OSS
 OPTIONS_DEFINE=	PGO
 
 .include <bsd.port.pre.mk>

Copied and modified: branches/experimental/www/firefox/files/patch-alsapulse (from r851, branches/experimental/www/firefox-nightly/files/patch-alsapulse)
==============================================================================
--- branches/experimental/www/firefox-nightly/files/patch-alsapulse	Sun Jul  8 12:45:24 2012	(r851, copy source)
+++ branches/experimental/www/firefox/files/patch-alsapulse	Sun Jul  8 12:45:43 2012	(r852)
@@ -1,39 +1,22 @@
-diff --git config/autoconf.mk.in config/autoconf.mk.in
-index 44c0b06..748511b 100644
---- config/autoconf.mk.in
+--- config/autoconf.mk.in~
 +++ config/autoconf.mk.in
-@@ -536,9 +536,14 @@ MOZ_LIBNOTIFY_CFLAGS	= @MOZ_LIBNOTIFY_CFLAGS@
+@@ -568,7 +568,13 @@ MOZ_LIBNOTIFY_CFLAGS	= @MOZ_LIBNOTIFY_CF
  MOZ_LIBNOTIFY_LIBS	= @MOZ_LIBNOTIFY_LIBS@
  MOZ_ENABLE_LIBNOTIFY	= @MOZ_ENABLE_LIBNOTIFY@
  
 +MOZ_ALSA                = @MOZ_ALSA@
  MOZ_ALSA_LIBS           = @MOZ_ALSA_LIBS@
- MOZ_ALSA_CFLAGS         = @MOZ_ALSA_CFLAGS@
- 
++MOZ_ALSA_CFLAGS         = @MOZ_ALSA_CFLAGS@
++
 +MOZ_PULSEAUDIO          = @MOZ_PULSEAUDIO@
 +MOZ_PULSEAUDIO_LIBS     = @MOZ_PULSEAUDIO_LIBS@
 +MOZ_PULSEAUDIO_CFLAGS   = @MOZ_PULSEAUDIO_CFLAGS@
-+
+ 
  GLIB_CFLAGS	= @GLIB_CFLAGS@
  GLIB_LIBS	= @GLIB_LIBS@
- GLIB_GMODULE_LIBS	= @GLIB_GMODULE_LIBS@
-diff --git config/system-headers config/system-headers
-index 84b03b4..5f49f7a 100644
---- config/system-headers
-+++ config/system-headers
-@@ -595,6 +595,7 @@ psap.h
- Pt.h
- pthread.h
- pthread_np.h
-+pulse/pulseaudio.h
- pwd.h
- Python.h
- QDOffscreen.h
-diff --git configure.in configure.in
-index 5980b76..11f5f77 100644
---- configure.in
+--- configure.in~
 +++ configure.in
-@@ -5600,13 +5600,45 @@ dnl ========================================================
+@@ -5758,17 +5775,48 @@ dnl ====================================
  dnl = Check alsa availability on Linux if using sydneyaudio
  dnl ========================================================
  
@@ -43,18 +26,24 @@
 +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
+-if test -n "$MOZ_SYDNEYAUDIO"; then
++if test -n "$MOZ_SYDNEYAUDIO" -a "$MOZ_ALSA_FORCE" != "no"; then
+    case "$target_os" in
+ linux*)
++      MOZ_ALSA=1
++      ;;
++   esac
 +fi
 +
 +if test -n "$MOZ_ALSA"; then
-     PKG_CHECK_MODULES(MOZ_ALSA, alsa, ,
+       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.)])])
-+    AC_DEFINE(MOZ_CUBEB)
+-      ;;
+-   esac
  fi
  
++AC_SUBST(MOZ_ALSA_CFLAGS)
 +AC_SUBST(MOZ_ALSA)
 +
 +dnl ========================================================
@@ -70,7 +59,6 @@
 +    PKG_CHECK_MODULES(MOZ_PULSEAUDIO, libpulse, ,
 +         [echo "$MOZ_PULSEAUDIO_PKG_ERRORS"
 +          AC_MSG_ERROR([pulseaudio audio backend requires libpulse package])])
-+    AC_DEFINE(MOZ_CUBEB)
 +fi
 +
 +AC_SUBST(MOZ_PULSEAUDIO_CFLAGS)
@@ -78,69 +66,9 @@
 +AC_SUBST(MOZ_PULSEAUDIO)
 +
  dnl ========================================================
- dnl = Enable GStreamer
+ dnl Permissions System
  dnl ========================================================
-diff --git js/src/config/system-headers js/src/config/system-headers
-index 84b03b4..5f49f7a 100644
---- js/src/config/system-headers
-+++ js/src/config/system-headers
-@@ -595,6 +595,7 @@ psap.h
- Pt.h
- pthread.h
- pthread_np.h
-+pulse/pulseaudio.h
- pwd.h
- Python.h
- QDOffscreen.h
-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,4 +38,16 @@ CSRCS           = \
-                 $(NULL)
- endif
- 
-+ifdef MOZ_ALSA
-+CSRCS         = \
-+              cubeb_alsa.c \
-+              $(NULL)
-+endif
-+
-+ifdef MOZ_PULSEAUDIO
-+CSRCS		= \
-+		cubeb_pulse.c \
-+		$(NULL)
-+endif
-+
- include $(topsrcdir)/config/rules.mk
-diff --git media/libcubeb/src/cubeb_alsa.c media/libcubeb/src/cubeb_alsa.c
-index 599aea2..41fd5af 100644
---- media/libcubeb/src/cubeb_alsa.c
-+++ media/libcubeb/src/cubeb_alsa.c
-@@ -6,7 +6,9 @@
-  */
- #undef NDEBUG
- #define _BSD_SOURCE
-+#ifndef __FreeBSD__
- #define _POSIX_SOURCE
-+#endif
- #include <pthread.h>
- #include <sys/time.h>
- #include <assert.h>
-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~
 +++ media/libsydneyaudio/src/Makefile.in
 @@ -30,10 +30,6 @@ else ifeq ($(MOZ_WIDGET_TOOLKIT),android)
  CSRCS		= \
@@ -172,9 +100,7 @@
  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~
 +++ toolkit/library/Makefile.in
 @@ -375,10 +375,12 @@ endif
  

Added: branches/experimental/www/firefox/files/patch-bug685258
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/www/firefox/files/patch-bug685258	Sun Jul  8 12:45:43 2012	(r852)
@@ -0,0 +1,17 @@
+# HG changeset patch
+# User Oleg Romashin <romaxa@gmail.com>
+# Parent a2291c212856ad27622416e83c8311b6a33b52f1
+Bug 685258 - Pulse audio backend does not check provided playback and crashes r=derf
+
+diff --git a/content/media/nsAudioStream.cpp b/content/media/nsAudioStream.cpp
+--- content/media/nsAudioStream.cpp
++++ content/media/nsAudioStream.cpp
+@@ -429,7 +429,7 @@ nsresult nsNativeAudioStream::Init(PRInt32 aNumChannels, PRInt32 aRate, SampleFo
+   mFormat = aFormat;
+ 
+   if (sa_stream_create_pcm(reinterpret_cast<sa_stream_t**>(&mAudioHandle),
+-                           NULL,
++                           "Mozilla",
+                            SA_MODE_WRONLY,
+                            SA_PCM_FORMAT_S16_NE,
+                            aRate,

Modified: branches/experimental/www/firefox36/Makefile
==============================================================================
--- branches/experimental/www/firefox36/Makefile	Sun Jul  8 12:45:24 2012	(r851)
+++ branches/experimental/www/firefox36/Makefile	Sun Jul  8 12:45:43 2012	(r852)
@@ -49,14 +49,12 @@
 		--disable-updater \
 		--disable-necko-wifi
 
-OPTIONS_DEFAULT=DBUS
+OPTIONS_DEFAULT=DBUS OSS
 
 .include <bsd.port.pre.mk>
 
 OPTIONS_DEFINE:=${OPTIONS_DEFINE:NLIBPROXY}
 
-EXTRA_PATCHES=	${FILESDIR}/libsydney_oss
-
 .if ${ARCH} == amd64
 CONFIGURE_TARGET=x86_64-portbld-freebsd${OSREL}
 .elif ${ARCH} == powerpc64

Deleted: branches/experimental/www/firefox36/files/libsydney_oss
==============================================================================
--- branches/experimental/www/firefox36/files/libsydney_oss	Sun Jul  8 12:45:43 2012	(r851)
+++ /dev/null	00:00:00 1970	(deleted)
@@ -1,15 +0,0 @@
---- media/libsydneyaudio/src/Makefile.in.orig	2009-08-11 16:28:21.000000000 +0200
-+++ media/libsydneyaudio/src/Makefile.in	2009-08-11 16:29:08.000000000 +0200
-@@ -45,6 +45,12 @@
- LIBRARY_NAME	= sydneyaudio
- FORCE_STATIC_LIB= 1
- 
-+ifeq ($(OS_ARCH),FreeBSD)
-+CSRCS		= \
-+		sydney_audio_oss.c \
-+		$(NULL)
-+endif
-+
- ifeq ($(OS_ARCH),Linux)
- CSRCS		= \
- 		sydney_audio_alsa.c \

Added: branches/experimental/www/firefox36/files/patch-alsapulse
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/www/firefox36/files/patch-alsapulse	Sun Jul  8 12:45:43 2012	(r852)
@@ -0,0 +1,122 @@
+--- config/autoconf.mk.in~
++++ config/autoconf.mk.in
+@@ -555,6 +555,14 @@ MOZ_LIBNOTIFY_CFLAGS	= @MOZ_LIBNOTIFY_CF
+ MOZ_LIBNOTIFY_LIBS	= @MOZ_LIBNOTIFY_LIBS@
+ MOZ_ENABLE_LIBNOTIFY	= @MOZ_ENABLE_LIBNOTIFY@
+ 
++MOZ_ALSA                = @MOZ_ALSA@
++MOZ_ALSA_LIBS           = @MOZ_ALSA_LIBS@
++MOZ_ALSA_CFLAGS         = @MOZ_ALSA_CFLAGS@
++
++MOZ_PULSEAUDIO          = @MOZ_PULSEAUDIO@
++MOZ_PULSEAUDIO_LIBS     = @MOZ_PULSEAUDIO_LIBS@
++MOZ_PULSEAUDIO_CFLAGS   = @MOZ_PULSEAUDIO_CFLAGS@
++
+ GLIB_CFLAGS	= @GLIB_CFLAGS@
+ GLIB_LIBS	= @GLIB_LIBS@
+ GLIB_GMODULE_LIBS	= @GLIB_GMODULE_LIBS@
+--- configure.in~
++++ configure.in
+@@ -5660,15 +5660,49 @@ dnl ====================================
+ 
+ dnl If using sydneyaudio with Linux, ensure that the alsa library is available
+ if test "$COMPILE_ENVIRONMENT"; then
+-if test -n "$MOZ_SYDNEYAUDIO"; then
++MOZ_ARG_ENABLE_BOOL(alsa,
++[  --enable-alsa          Enable Alsa support],
++MOZ_ALSA=1,
++MOZ_ALSA= MOZ_ALSA_FORCE=$enableval)
++
++if test -n "$MOZ_SYDNEYAUDIO" -a "$MOZ_ALSA_FORCE" != "no"; then
+    case "$target_os" in
+ linux*)
+-      AC_CHECK_LIB(asound, snd_pcm_open,,AC_MSG_ERROR([Ogg support on Linux requires the alsa library]))
++      MOZ_ALSA=1
+       ;;
+    esac
+ fi
++
++if test -n "$MOZ_ALSA"; then
++      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
+ fi
+ 
++AC_SUBST(MOZ_ALSA_CFLAGS)
++AC_SUBST(MOZ_ALSA_LIBS)
++AC_SUBST(MOZ_ALSA)
++
++dnl ========================================================
++dnl = Enable PulseAudio
++dnl ========================================================
++
++MOZ_ARG_ENABLE_BOOL(pulseaudio,
++[  --enable-pulseaudio          Enable PulseAudio support],
++MOZ_PULSEAUDIO=1,
++MOZ_PULSEAUDIO=)
++
++if test -n "$MOZ_PULSEAUDIO"; then
++    PKG_CHECK_MODULES(MOZ_PULSEAUDIO, libpulse, ,
++         [echo "$MOZ_PULSEAUDIO_PKG_ERRORS"
++          AC_MSG_ERROR([pulseaudio audio backend requires libpulse package])])
++fi
++
++AC_SUBST(MOZ_PULSEAUDIO_CFLAGS)
++AC_SUBST(MOZ_PULSEAUDIO_LIBS)
++AC_SUBST(MOZ_PULSEAUDIO)
++
+ dnl ========================================================
+ dnl Splashscreen
+ dnl ========================================================
+--- media/libsydneyaudio/src/Makefile.in~
++++ media/libsydneyaudio/src/Makefile.in
+@@ -45,12 +45,6 @@ MODULE		= sydneyaudio
+ LIBRARY_NAME	= sydneyaudio
+ FORCE_STATIC_LIB= 1
+ 
+-ifeq ($(OS_ARCH),Linux)
+-CSRCS		= \
+-		sydney_audio_alsa.c \
+-		$(NULL)
+-endif
+-
+ ifneq (,$(filter WINNT WINCE,$(OS_ARCH)))
+ CSRCS		= \
+ 		sydney_audio_waveapi.c \
+@@ -83,6 +83,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
+--- toolkit/library/libxul-config.mk~
++++ toolkit/library/libxul-config.mk
+@@ -90,6 +90,14 @@ endif
+ LOCAL_INCLUDES += -I$(topsrcdir)/widget/src/os2
+ endif
+ 
++ifdef MOZ_ALSA
++EXTRA_DSO_LDOPTS += $(MOZ_ALSA_LIBS)
++endif
++
++ifdef MOZ_PULSEAUDIO
++EXTRA_DSO_LDOPTS += $(MOZ_PULSEAUDIO_LIBS)
++endif
++
+ # dependent libraries
+ ifdef MOZ_IPC
+ STATIC_LIBS += \

Added: branches/experimental/www/firefox36/files/patch-bug685258
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/www/firefox36/files/patch-bug685258	Sun Jul  8 12:45:43 2012	(r852)
@@ -0,0 +1,17 @@
+# HG changeset patch
+# User Oleg Romashin <romaxa@gmail.com>
+# Parent a2291c212856ad27622416e83c8311b6a33b52f1
+Bug 685258 - Pulse audio backend does not check provided playback and crashes r=derf
+
+diff --git a/content/media/nsAudioStream.cpp b/content/media/nsAudioStream.cpp
+--- content/media/nsAudioStream.cpp
++++ content/media/nsAudioStream.cpp
+@@ -83,7 +83,7 @@ void nsAudioStream::Init(PRInt32 aNumCha
+   mChannels = aNumChannels;
+   mFormat = aFormat;
+   if (sa_stream_create_pcm(reinterpret_cast<sa_stream_t**>(&mAudioHandle),
+-                           NULL, 
++                           "Mozilla",
+                            SA_MODE_WRONLY, 
+                            SA_PCM_FORMAT_S16_NE,
+                            aRate,

Copied and modified: branches/experimental/www/firefox36/files/patch-media-libsydneyaudio-src-Makefile.in (from r851, branches/experimental/www/firefox36/files/libsydney_oss)
==============================================================================
--- branches/experimental/www/firefox36/files/libsydney_oss	Sun Jul  8 12:45:24 2012	(r851, copy source)
+++ branches/experimental/www/firefox36/files/patch-media-libsydneyaudio-src-Makefile.in	Sun Jul  8 12:45:43 2012	(r852)
@@ -10,6 +10,6 @@
 +		$(NULL)
 +endif
 +
- ifeq ($(OS_ARCH),Linux)
+ ifneq (,$(filter WINNT WINCE,$(OS_ARCH)))
  CSRCS		= \
- 		sydney_audio_alsa.c \
+ 		sydney_audio_waveapi.c \

Modified: branches/experimental/www/kompozer/Makefile
==============================================================================
--- branches/experimental/www/kompozer/Makefile	Sun Jul  8 12:45:24 2012	(r851)
+++ branches/experimental/www/kompozer/Makefile	Sun Jul  8 12:45:43 2012	(r852)
@@ -45,6 +45,7 @@
 .include <bsd.port.pre.mk>
 
 OPTIONS_DEFINE:=${OPTIONS_DEFINE:NDBUS:NGIO:NLIBPROXY}
+OPTIONS_SINGLE:=${OPTIONS_SINGLE:NAUDIO}
 
 .if ${ARCH} == amd64
 CONFIGURE_TARGET=x86_64-portbld-freebsd${OSREL}

Modified: branches/experimental/www/libxul/Makefile
==============================================================================
--- branches/experimental/www/libxul/Makefile	Sun Jul  8 12:45:24 2012	(r851)
+++ branches/experimental/www/libxul/Makefile	Sun Jul  8 12:45:43 2012	(r852)
@@ -45,7 +45,7 @@
 		--disable-updater \
 		--disable-necko-wifi
 MOZ_EXTENSIONS=	default,cookie,permissions
-OPTIONS_DEFAULT=DBUS
+OPTIONS_DEFAULT=DBUS OSS
 USE_GECKO=	gecko
 MOZILLA_EXEC_NAME=xulrunner
 USE_MOZILLA=	# empty

Added: branches/experimental/www/libxul/files/patch-alsapulse
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/www/libxul/files/patch-alsapulse	Sun Jul  8 12:45:43 2012	(r852)
@@ -0,0 +1,119 @@
+--- config/autoconf.mk.in~
++++ config/autoconf.mk.in
+@@ -568,7 +568,13 @@ MOZ_LIBNOTIFY_CFLAGS	= @MOZ_LIBNOTIFY_CF
+ MOZ_LIBNOTIFY_LIBS	= @MOZ_LIBNOTIFY_LIBS@
+ MOZ_ENABLE_LIBNOTIFY	= @MOZ_ENABLE_LIBNOTIFY@
+ 
++MOZ_ALSA                = @MOZ_ALSA@
+ MOZ_ALSA_LIBS           = @MOZ_ALSA_LIBS@
++MOZ_ALSA_CFLAGS         = @MOZ_ALSA_CFLAGS@
++
++MOZ_PULSEAUDIO          = @MOZ_PULSEAUDIO@
++MOZ_PULSEAUDIO_LIBS     = @MOZ_PULSEAUDIO_LIBS@
++MOZ_PULSEAUDIO_CFLAGS   = @MOZ_PULSEAUDIO_CFLAGS@
+ 
+ GLIB_CFLAGS	= @GLIB_CFLAGS@
+ GLIB_LIBS	= @GLIB_LIBS@
+--- configure.in~
++++ configure.in
+@@ -5758,17 +5775,48 @@ dnl ====================================
+ dnl = Check alsa availability on Linux if using sydneyaudio
+ dnl ========================================================
+ 
++MOZ_ARG_ENABLE_BOOL(alsa,
++[  --enable-alsa          Enable Alsa support],
++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"; then
++if test -n "$MOZ_SYDNEYAUDIO" -a "$MOZ_ALSA_FORCE" != "no"; then
+    case "$target_os" in
+ linux*)
++      MOZ_ALSA=1
++      ;;
++   esac
++fi
++
++if test -n "$MOZ_ALSA"; then
+       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.)])])
+-      ;;
+-   esac
+ fi
+ 
++AC_SUBST(MOZ_ALSA_CFLAGS)
++AC_SUBST(MOZ_ALSA)
++
++dnl ========================================================
++dnl = Enable PulseAudio
++dnl ========================================================
++
++MOZ_ARG_ENABLE_BOOL(pulseaudio,
++[  --enable-pulseaudio          Enable PulseAudio support],
++MOZ_PULSEAUDIO=1,
++MOZ_PULSEAUDIO=)
++
++if test -n "$MOZ_PULSEAUDIO"; then
++    PKG_CHECK_MODULES(MOZ_PULSEAUDIO, libpulse, ,
++         [echo "$MOZ_PULSEAUDIO_PKG_ERRORS"
++          AC_MSG_ERROR([pulseaudio audio backend requires libpulse package])])
++fi
++
++AC_SUBST(MOZ_PULSEAUDIO_CFLAGS)
++AC_SUBST(MOZ_PULSEAUDIO_LIBS)
++AC_SUBST(MOZ_PULSEAUDIO)
++
+ dnl ========================================================
+ dnl Permissions System
+ dnl ========================================================
+--- 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
+--- toolkit/library/libxul-config.mk~
++++ toolkit/library/libxul-config.mk
+@@ -348,10 +348,12 @@ ifdef MOZ_NATIVE_LIBVPX
+ EXTRA_DSO_LDOPTS += $(MOZ_LIBVPX_LIBS)
+ endif
+ 
+-ifdef MOZ_SYDNEYAUDIO
+-ifeq ($(OS_ARCH),Linux)
++ifdef MOZ_ALSA
+ EXTRA_DSO_LDOPTS += $(MOZ_ALSA_LIBS)
+ endif
++
++ifdef MOZ_PULSEAUDIO
++EXTRA_DSO_LDOPTS += $(MOZ_PULSEAUDIO_LIBS)
+ endif
+ 
+ ifdef HAVE_CLOCK_MONOTONIC

Added: branches/experimental/www/libxul/files/patch-bug685258
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/www/libxul/files/patch-bug685258	Sun Jul  8 12:45:43 2012	(r852)
@@ -0,0 +1,17 @@
+# HG changeset patch
+# User Oleg Romashin <romaxa@gmail.com>
+# Parent a2291c212856ad27622416e83c8311b6a33b52f1
+Bug 685258 - Pulse audio backend does not check provided playback and crashes r=derf
+
+diff --git a/content/media/nsAudioStream.cpp b/content/media/nsAudioStream.cpp
+--- content/media/nsAudioStream.cpp
++++ content/media/nsAudioStream.cpp
+@@ -429,7 +429,7 @@ nsresult nsNativeAudioStream::Init(PRInt32 aNumChannels, PRInt32 aRate, SampleFo
+   mFormat = aFormat;
+ 
+   if (sa_stream_create_pcm(reinterpret_cast<sa_stream_t**>(&mAudioHandle),
+-                           NULL,
++                           "Mozilla",
+                            SA_MODE_WRONLY,
+                            SA_PCM_FORMAT_S16_NE,
+                            aRate,

Modified: branches/experimental/www/libxul19/Makefile
==============================================================================
--- branches/experimental/www/libxul19/Makefile	Sun Jul  8 12:45:24 2012	(r851)
+++ branches/experimental/www/libxul19/Makefile	Sun Jul  8 12:45:43 2012	(r852)
@@ -39,7 +39,7 @@
 		--disable-updater \
 		--disable-necko-wifi
 MOZ_EXTENSIONS=	default,cookie,permissions
-OPTIONS_DEFAULT=DBUS
+OPTIONS_DEFAULT=DBUS OSS
 USE_GECKO=	gecko
 MOZILLA_EXEC_NAME=xulrunner
 USE_MOZILLA=	-event -ffi -vpx
@@ -58,13 +58,6 @@
 MOZ_PKGCONFIG_FILES+=	mozilla-nss
 .endif
 
-.if ${OSVERSION} < 700000
-LIB_DEPENDS+=	pulse.0:${PORTSDIR}/audio/pulseaudio
-EXTRA_PATCHES=	${FILESDIR}/releng6_pulseaudio
-.else
-EXTRA_PATCHES=	${FILESDIR}/libsydney_oss
-.endif
-
 .if ${ARCH} == amd64
 CONFIGURE_TARGET=x86_64-portbld-freebsd${OSREL}
 .elif ${ARCH} == powerpc64

Deleted: branches/experimental/www/libxul19/files/libsydney_oss
==============================================================================
--- branches/experimental/www/libxul19/files/libsydney_oss	Sun Jul  8 12:45:43 2012	(r851)
+++ /dev/null	00:00:00 1970	(deleted)
@@ -1,15 +0,0 @@
---- media/libsydneyaudio/src/Makefile.in.orig	2009-08-17 14:21:06.000000000 +0200
-+++ media/libsydneyaudio/src/Makefile.in	2009-08-17 14:21:53.000000000 +0200
-@@ -45,6 +45,12 @@
- LIBRARY_NAME	= sydneyaudio
- FORCE_STATIC_LIB= 1
- 
-+ifeq ($(OS_ARCH),FreeBSD)
-+CSRCS		= \
-+		sydney_audio_oss.c \
-+		$(NULL)
-+endif
-+
- ifeq ($(OS_ARCH),Linux)
- CSRCS		= \
- 		sydney_audio_alsa.c \

Added: branches/experimental/www/libxul19/files/patch-alsapulse
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/www/libxul19/files/patch-alsapulse	Sun Jul  8 12:45:43 2012	(r852)
@@ -0,0 +1,122 @@
+--- config/autoconf.mk.in~
++++ config/autoconf.mk.in
+@@ -555,6 +555,14 @@ MOZ_LIBNOTIFY_CFLAGS	= @MOZ_LIBNOTIFY_CF
+ MOZ_LIBNOTIFY_LIBS	= @MOZ_LIBNOTIFY_LIBS@
+ MOZ_ENABLE_LIBNOTIFY	= @MOZ_ENABLE_LIBNOTIFY@
+ 
++MOZ_ALSA                = @MOZ_ALSA@
++MOZ_ALSA_LIBS           = @MOZ_ALSA_LIBS@
++MOZ_ALSA_CFLAGS         = @MOZ_ALSA_CFLAGS@
++
++MOZ_PULSEAUDIO          = @MOZ_PULSEAUDIO@
++MOZ_PULSEAUDIO_LIBS     = @MOZ_PULSEAUDIO_LIBS@
++MOZ_PULSEAUDIO_CFLAGS   = @MOZ_PULSEAUDIO_CFLAGS@
++
+ GLIB_CFLAGS	= @GLIB_CFLAGS@
+ GLIB_LIBS	= @GLIB_LIBS@
+ GLIB_GMODULE_LIBS	= @GLIB_GMODULE_LIBS@
+--- configure.in~
++++ configure.in
+@@ -5660,15 +5660,49 @@ dnl ====================================
+ 
+ dnl If using sydneyaudio with Linux, ensure that the alsa library is available
+ if test "$COMPILE_ENVIRONMENT"; then
+-if test -n "$MOZ_SYDNEYAUDIO"; then
++MOZ_ARG_ENABLE_BOOL(alsa,
++[  --enable-alsa          Enable Alsa support],
++MOZ_ALSA=1,
++MOZ_ALSA= MOZ_ALSA_FORCE=$enableval)
++
++if test -n "$MOZ_SYDNEYAUDIO" -a "$MOZ_ALSA_FORCE" != "no"; then
+    case "$target_os" in
+ linux*)
+-      AC_CHECK_LIB(asound, snd_pcm_open,,AC_MSG_ERROR([Ogg support on Linux requires the alsa library]))
++      MOZ_ALSA=1
+       ;;
+    esac
+ fi
++
++if test -n "$MOZ_ALSA"; then
++      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
+ fi
+ 
++AC_SUBST(MOZ_ALSA_CFLAGS)
++AC_SUBST(MOZ_ALSA_LIBS)
++AC_SUBST(MOZ_ALSA)
++
++dnl ========================================================
++dnl = Enable PulseAudio
++dnl ========================================================
++
++MOZ_ARG_ENABLE_BOOL(pulseaudio,
++[  --enable-pulseaudio          Enable PulseAudio support],
++MOZ_PULSEAUDIO=1,
++MOZ_PULSEAUDIO=)
++
++if test -n "$MOZ_PULSEAUDIO"; then
++    PKG_CHECK_MODULES(MOZ_PULSEAUDIO, libpulse, ,
++         [echo "$MOZ_PULSEAUDIO_PKG_ERRORS"
++          AC_MSG_ERROR([pulseaudio audio backend requires libpulse package])])
++fi
++
++AC_SUBST(MOZ_PULSEAUDIO_CFLAGS)
++AC_SUBST(MOZ_PULSEAUDIO_LIBS)
++AC_SUBST(MOZ_PULSEAUDIO)
++
+ dnl ========================================================
+ dnl Splashscreen
+ dnl ========================================================
+--- media/libsydneyaudio/src/Makefile.in~
++++ media/libsydneyaudio/src/Makefile.in
+@@ -45,12 +45,6 @@ MODULE		= sydneyaudio
+ LIBRARY_NAME	= sydneyaudio
+ FORCE_STATIC_LIB= 1
+ 
+-ifeq ($(OS_ARCH),Linux)
+-CSRCS		= \
+-		sydney_audio_alsa.c \
+-		$(NULL)
+-endif
+-
+ ifneq (,$(filter WINNT WINCE,$(OS_ARCH)))
+ CSRCS		= \
+ 		sydney_audio_waveapi.c \
+@@ -83,6 +83,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
+--- toolkit/library/libxul-config.mk~
++++ toolkit/library/libxul-config.mk
+@@ -90,6 +90,14 @@ endif
+ LOCAL_INCLUDES += -I$(topsrcdir)/widget/src/os2
+ endif
+ 
++ifdef MOZ_ALSA
++EXTRA_DSO_LDOPTS += $(MOZ_ALSA_LIBS)
++endif
++
++ifdef MOZ_PULSEAUDIO
++EXTRA_DSO_LDOPTS += $(MOZ_PULSEAUDIO_LIBS)
++endif
++
+ # dependent libraries
+ ifdef MOZ_IPC
+ STATIC_LIBS += \

Added: branches/experimental/www/libxul19/files/patch-bug685258
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/www/libxul19/files/patch-bug685258	Sun Jul  8 12:45:43 2012	(r852)
@@ -0,0 +1,17 @@
+# HG changeset patch
+# User Oleg Romashin <romaxa@gmail.com>
+# Parent a2291c212856ad27622416e83c8311b6a33b52f1
+Bug 685258 - Pulse audio backend does not check provided playback and crashes r=derf
+
+diff --git a/content/media/nsAudioStream.cpp b/content/media/nsAudioStream.cpp
+--- content/media/nsAudioStream.cpp
++++ content/media/nsAudioStream.cpp
+@@ -83,7 +83,7 @@ void nsAudioStream::Init(PRInt32 aNumCha
+   mChannels = aNumChannels;
+   mFormat = aFormat;
+   if (sa_stream_create_pcm(reinterpret_cast<sa_stream_t**>(&mAudioHandle),
+-                           NULL, 
++                           "Mozilla",
+                            SA_MODE_WRONLY, 
+                            SA_PCM_FORMAT_S16_NE,
+                            aRate,

Copied and modified: branches/experimental/www/libxul19/files/patch-media-libsydneyaudio-src-Makefile.in (from r851, branches/experimental/www/libxul19/files/libsydney_oss)
==============================================================================
--- branches/experimental/www/libxul19/files/libsydney_oss	Sun Jul  8 12:45:24 2012	(r851, copy source)
+++ branches/experimental/www/libxul19/files/patch-media-libsydneyaudio-src-Makefile.in	Sun Jul  8 12:45:43 2012	(r852)
@@ -10,6 +10,6 @@
 +		$(NULL)
 +endif
 +
- ifeq ($(OS_ARCH),Linux)
+ ifneq (,$(filter WINNT WINCE,$(OS_ARCH)))
  CSRCS		= \
- 		sydney_audio_alsa.c \
+ 		sydney_audio_waveapi.c \

Deleted: branches/experimental/www/libxul19/files/releng6_pulseaudio
==============================================================================
--- branches/experimental/www/libxul19/files/releng6_pulseaudio	Sun Jul  8 12:45:43 2012	(r851)
+++ /dev/null	00:00:00 1970	(deleted)
@@ -1,32 +0,0 @@
---- media/libsydneyaudio/src/Makefile.in.orig	2009-08-11 17:22:08.000000000 +0200
-+++ media/libsydneyaudio/src/Makefile.in	2009-08-11 17:22:36.000000000 +0200
-@@ -45,6 +45,12 @@
- LIBRARY_NAME	= sydneyaudio
- FORCE_STATIC_LIB= 1
- 
-+ifeq ($(OS_ARCH),FreeBSD)
-+CSRCS		= \
-+		sydney_audio_pulseaudio.c \
-+		$(NULL)
-+endif
-+
- ifeq ($(OS_ARCH),Linux)
- CSRCS		= \
- 		sydney_audio_alsa.c \
---- toolkit/library/Makefile.in.orig	2009-08-11 17:22:45.000000000 +0200
-+++ toolkit/library/Makefile.in	2009-08-11 17:23:22.000000000 +0200
-@@ -231,12 +231,12 @@
- endif
- 
- ifeq (gtk2,$(MOZ_WIDGET_TOOLKIT))
--EXTRA_DSO_LDOPTS += $(XLDFLAGS) $(XLIBS) $(XEXT_LIBS) $(XCOMPOSITE_LIBS) $(MOZ_PANGO_LIBS) $(MOZ_GTK2_LIBS) $(XT_LIBS) -lgthread-2.0
-+EXTRA_DSO_LDOPTS += $(XLDFLAGS) $(XLIBS) $(XEXT_LIBS) $(XCOMPOSITE_LIBS) $(MOZ_PANGO_LIBS) $(MOZ_GTK2_LIBS) $(XT_LIBS) -lgthread-2.0  -lpulse -lpthread
- EXTRA_DSO_LDOPTS += $(FT2_LIBS)
- endif
- 
- ifeq (qt,$(MOZ_WIDGET_TOOLKIT))
--EXTRA_DSO_LDOPTS += $(XLDFLAGS) $(XLIBS) $(XT_LIBS) $(MOZ_QT_LIBS) -lgthread-2.0
-+EXTRA_DSO_LDOPTS += $(XLDFLAGS) $(XLIBS) $(XT_LIBS) $(MOZ_QT_LIBS) -lgthread-2.0 -lpulse -lpthread
- EXTRA_DSO_LDOPTS += $(FT2_LIBS)
- endif
- 

Modified: branches/experimental/www/seamonkey/Makefile
==============================================================================
--- branches/experimental/www/seamonkey/Makefile	Sun Jul  8 12:45:24 2012	(r851)
+++ branches/experimental/www/seamonkey/Makefile	Sun Jul  8 12:45:43 2012	(r852)
@@ -52,7 +52,7 @@
 
 NOT_FOR_ARCHS=	ia64
 
-OPTIONS_DEFAULT=DBUS MAILNEWS COMPOSER LDAP CHATZILLA
+OPTIONS_DEFAULT=DBUS CHATZILLA COMPOSER LDAP MAILNEWS OSS
 OPTIONS_DEFINE=	CHATZILLA COMPOSER LDAP LIGHTNING MAILNEWS
 
 CHATZILLA_DESC?=Chatzilla IRC module

Added: branches/experimental/www/seamonkey/files/patch-alsapulse
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/www/seamonkey/files/patch-alsapulse	Sun Jul  8 12:45:43 2012	(r852)
@@ -0,0 +1,119 @@
+--- mozilla/config/autoconf.mk.in~
++++ mozilla/config/autoconf.mk.in
+@@ -568,7 +568,13 @@ MOZ_LIBNOTIFY_CFLAGS	= @MOZ_LIBNOTIFY_CF
+ MOZ_LIBNOTIFY_LIBS	= @MOZ_LIBNOTIFY_LIBS@
+ MOZ_ENABLE_LIBNOTIFY	= @MOZ_ENABLE_LIBNOTIFY@
+ 
++MOZ_ALSA                = @MOZ_ALSA@
+ MOZ_ALSA_LIBS           = @MOZ_ALSA_LIBS@
++MOZ_ALSA_CFLAGS         = @MOZ_ALSA_CFLAGS@
++
++MOZ_PULSEAUDIO          = @MOZ_PULSEAUDIO@
++MOZ_PULSEAUDIO_LIBS     = @MOZ_PULSEAUDIO_LIBS@
++MOZ_PULSEAUDIO_CFLAGS   = @MOZ_PULSEAUDIO_CFLAGS@
+ 
+ GLIB_CFLAGS	= @GLIB_CFLAGS@
+ GLIB_LIBS	= @GLIB_LIBS@
+--- mozilla/configure.in~
++++ mozilla/configure.in
+@@ -5758,17 +5775,48 @@ dnl ====================================
+ dnl = Check alsa availability on Linux if using sydneyaudio
+ dnl ========================================================
+ 
++MOZ_ARG_ENABLE_BOOL(alsa,
++[  --enable-alsa          Enable Alsa support],
++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"; then
++if test -n "$MOZ_SYDNEYAUDIO" -a "$MOZ_ALSA_FORCE" != "no"; then
+    case "$target_os" in
+ linux*)
++      MOZ_ALSA=1
++      ;;
++   esac
++fi
++
++if test -n "$MOZ_ALSA"; then
+       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.)])])
+-      ;;
+-   esac
+ fi
+ 
++AC_SUBST(MOZ_ALSA_CFLAGS)
++AC_SUBST(MOZ_ALSA)
++
++dnl ========================================================
++dnl = Enable PulseAudio
++dnl ========================================================
++
++MOZ_ARG_ENABLE_BOOL(pulseaudio,
++[  --enable-pulseaudio          Enable PulseAudio support],
++MOZ_PULSEAUDIO=1,
++MOZ_PULSEAUDIO=)
++
++if test -n "$MOZ_PULSEAUDIO"; then
++    PKG_CHECK_MODULES(MOZ_PULSEAUDIO, libpulse, ,
++         [echo "$MOZ_PULSEAUDIO_PKG_ERRORS"
++          AC_MSG_ERROR([pulseaudio audio backend requires libpulse package])])
++fi
++
++AC_SUBST(MOZ_PULSEAUDIO_CFLAGS)
++AC_SUBST(MOZ_PULSEAUDIO_LIBS)
++AC_SUBST(MOZ_PULSEAUDIO)
++
+ dnl ========================================================
+ dnl Permissions System
+ dnl ========================================================
+--- mozilla/media/libsydneyaudio/src/Makefile.in~
++++ mozilla/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
+--- mozilla/toolkit/library/Makefile.in~
++++ mozilla/toolkit/library/Makefile.in
+@@ -375,10 +375,12 @@ endif
+ 
+ EXTRA_DSO_LDOPTS += $(call EXPAND_LIBNAME_PATH,gkmedias,$(DIST)/lib) 
+ 
+-ifdef MOZ_SYDNEYAUDIO
+-ifeq ($(OS_ARCH),Linux)
++ifdef MOZ_ALSA
+ EXTRA_DSO_LDOPTS += $(MOZ_ALSA_LIBS)
+ endif
++
++ifdef MOZ_PULSEAUDIO
++EXTRA_DSO_LDOPTS += $(MOZ_PULSEAUDIO_LIBS)
+ endif
+ 
+ ifdef HAVE_CLOCK_MONOTONIC

Added: branches/experimental/www/seamonkey/files/patch-bug685258
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/www/seamonkey/files/patch-bug685258	Sun Jul  8 12:45:43 2012	(r852)
@@ -0,0 +1,17 @@
+# HG changeset patch
+# User Oleg Romashin <romaxa@gmail.com>
+# Parent a2291c212856ad27622416e83c8311b6a33b52f1
+Bug 685258 - Pulse audio backend does not check provided playback and crashes r=derf
+
+diff --git a/content/media/nsAudioStream.cpp b/content/media/nsAudioStream.cpp
+--- mozilla/content/media/nsAudioStream.cpp
++++ mozilla/content/media/nsAudioStream.cpp
+@@ -429,7 +429,7 @@ nsresult nsNativeAudioStream::Init(PRInt32 aNumChannels, PRInt32 aRate, SampleFo
+   mFormat = aFormat;
+ 
+   if (sa_stream_create_pcm(reinterpret_cast<sa_stream_t**>(&mAudioHandle),
+-                           NULL,
++                           "Mozilla",
+                            SA_MODE_WRONLY,
+                            SA_PCM_FORMAT_S16_NE,
+                            aRate,



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201207081245.q68CjhIF016643>