aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjbeich <jbeich@FreeBSD.org>2016-05-01 13:29:08 +0800
committerjbeich <jbeich@FreeBSD.org>2016-05-01 13:29:08 +0800
commit4e5dc93c9101d46316d6d2ed427cb801b71a83cf (patch)
tree3a53b13f346cc5f079624a2713ae3cad28a9a655
parent794a87750e1c5478a71d61bd71b07809596dd69b (diff)
downloadfreebsd-ports-gnome-4e5dc93c9101d46316d6d2ed427cb801b71a83cf.tar.gz
freebsd-ports-gnome-4e5dc93c9101d46316d6d2ed427cb801b71a83cf.tar.zst
freebsd-ports-gnome-4e5dc93c9101d46316d6d2ed427cb801b71a83cf.zip
gecko: unbreak WebRTC microphone selection popup with ALSA=on
On FreeBSD sound(4) is enabled by default while alsa-plugins-oss assumes a soundcard is always available. https://bugzilla.mozilla.org/show_bug.cgi?id=1269165 MFH: 2016Q2
-rw-r--r--Mk/bsd.gecko.mk2
-rw-r--r--mail/thunderbird/Makefile1
-rw-r--r--mail/thunderbird/files/patch-bug126916524
-rw-r--r--www/firefox-esr/Makefile1
-rw-r--r--www/firefox-esr/files/patch-bug126916524
-rw-r--r--www/firefox/Makefile2
-rw-r--r--www/firefox/files/patch-bug126916524
-rw-r--r--www/libxul/Makefile1
-rw-r--r--www/libxul/files/patch-bug126916524
-rw-r--r--www/seamonkey/Makefile2
-rw-r--r--www/seamonkey/files/patch-bug126916524
11 files changed, 126 insertions, 3 deletions
diff --git a/Mk/bsd.gecko.mk b/Mk/bsd.gecko.mk
index 85ecd9dee20e..47f9bf5517bd 100644
--- a/Mk/bsd.gecko.mk
+++ b/Mk/bsd.gecko.mk
@@ -379,7 +379,7 @@ MOZ_EXPORT+=MOZ_OPTIMIZE_FLAGS="-Os" MOZ_PGO_OPTIMIZE_FLAGS="${CFLAGS:M-O*}"
.if ${PORT_OPTIONS:MALSA}
LIB_DEPENDS+= libasound.so:audio/alsa-lib
RUN_DEPENDS+= ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins
-RUN_DEPENDS+= alsa-lib>=1.0.27.2_1:audio/alsa-lib
+RUN_DEPENDS+= alsa-lib>=1.1.1_1:audio/alsa-lib
MOZ_OPTIONS+= --enable-alsa
.endif
diff --git a/mail/thunderbird/Makefile b/mail/thunderbird/Makefile
index 29db6744c9a1..08f698b6a8f6 100644
--- a/mail/thunderbird/Makefile
+++ b/mail/thunderbird/Makefile
@@ -3,6 +3,7 @@
PORTNAME= thunderbird
DISTVERSION= 45.0
+PORTREVISION= 1
CATEGORIES= mail news net-im ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \
MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build1/source
diff --git a/mail/thunderbird/files/patch-bug1269165 b/mail/thunderbird/files/patch-bug1269165
new file mode 100644
index 000000000000..829af431046b
--- /dev/null
+++ b/mail/thunderbird/files/patch-bug1269165
@@ -0,0 +1,24 @@
+# getUserMedia fails to enumerate ALSA plugins
+
+--- mozilla/media/webrtc/trunk/webrtc/modules/audio_device/linux/audio_device_alsa_linux.cc.orig 2016-04-22 00:37:17 UTC
++++ mozilla/media/webrtc/trunk/webrtc/modules/audio_device/linux/audio_device_alsa_linux.cc
+@@ -1752,7 +1752,9 @@ int32_t AudioDeviceLinuxALSA::GetDevices
+ // Don't use snd_device_name_hint(-1,..) since there is a access violation
+ // inside this ALSA API with libasound.so.2.0.0.
+ int card = -1;
++#ifdef WEBRTC_LINUX
+ while (!(LATE(snd_card_next)(&card)) && (card >= 0) && keepSearching) {
++#endif
+ void **hints;
+ err = LATE(snd_device_name_hint)(card, "pcm", &hints);
+ if (err != 0)
+@@ -1878,7 +1880,9 @@ int32_t AudioDeviceLinuxALSA::GetDevices
+ LATE(snd_strerror)(err));
+ // Continue and return true anyway, since we did get the whole list.
+ }
++#ifdef WEBRTC_LINUX
+ }
++#endif
+
+ if (FUNC_GET_NUM_OF_DEVICE == function)
+ {
diff --git a/www/firefox-esr/Makefile b/www/firefox-esr/Makefile
index 95b8e925eee5..30fe0e46f2a3 100644
--- a/www/firefox-esr/Makefile
+++ b/www/firefox-esr/Makefile
@@ -4,6 +4,7 @@
PORTNAME= firefox
DISTVERSION= 45.1.0
DISTVERSIONSUFFIX=esr.source
+PORTREVISION= 1
PORTEPOCH= 1
CATEGORIES= www ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}esr/source \
diff --git a/www/firefox-esr/files/patch-bug1269165 b/www/firefox-esr/files/patch-bug1269165
new file mode 100644
index 000000000000..f88f018866a5
--- /dev/null
+++ b/www/firefox-esr/files/patch-bug1269165
@@ -0,0 +1,24 @@
+# getUserMedia fails to enumerate ALSA plugins
+
+--- media/webrtc/trunk/webrtc/modules/audio_device/linux/audio_device_alsa_linux.cc.orig 2016-04-22 00:37:17 UTC
++++ media/webrtc/trunk/webrtc/modules/audio_device/linux/audio_device_alsa_linux.cc
+@@ -1752,7 +1752,9 @@ int32_t AudioDeviceLinuxALSA::GetDevices
+ // Don't use snd_device_name_hint(-1,..) since there is a access violation
+ // inside this ALSA API with libasound.so.2.0.0.
+ int card = -1;
++#ifdef WEBRTC_LINUX
+ while (!(LATE(snd_card_next)(&card)) && (card >= 0) && keepSearching) {
++#endif
+ void **hints;
+ err = LATE(snd_device_name_hint)(card, "pcm", &hints);
+ if (err != 0)
+@@ -1878,7 +1880,9 @@ int32_t AudioDeviceLinuxALSA::GetDevices
+ LATE(snd_strerror)(err));
+ // Continue and return true anyway, since we did get the whole list.
+ }
++#ifdef WEBRTC_LINUX
+ }
++#endif
+
+ if (FUNC_GET_NUM_OF_DEVICE == function)
+ {
diff --git a/www/firefox/Makefile b/www/firefox/Makefile
index 0e4e4aa41db9..aa35c3478178 100644
--- a/www/firefox/Makefile
+++ b/www/firefox/Makefile
@@ -4,7 +4,7 @@
PORTNAME= firefox
DISTVERSION= 46.0
DISTVERSIONSUFFIX=.source
-PORTREVISION= 1
+PORTREVISION= 2
PORTEPOCH= 1
CATEGORIES= www ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \
diff --git a/www/firefox/files/patch-bug1269165 b/www/firefox/files/patch-bug1269165
new file mode 100644
index 000000000000..f88f018866a5
--- /dev/null
+++ b/www/firefox/files/patch-bug1269165
@@ -0,0 +1,24 @@
+# getUserMedia fails to enumerate ALSA plugins
+
+--- media/webrtc/trunk/webrtc/modules/audio_device/linux/audio_device_alsa_linux.cc.orig 2016-04-22 00:37:17 UTC
++++ media/webrtc/trunk/webrtc/modules/audio_device/linux/audio_device_alsa_linux.cc
+@@ -1752,7 +1752,9 @@ int32_t AudioDeviceLinuxALSA::GetDevices
+ // Don't use snd_device_name_hint(-1,..) since there is a access violation
+ // inside this ALSA API with libasound.so.2.0.0.
+ int card = -1;
++#ifdef WEBRTC_LINUX
+ while (!(LATE(snd_card_next)(&card)) && (card >= 0) && keepSearching) {
++#endif
+ void **hints;
+ err = LATE(snd_device_name_hint)(card, "pcm", &hints);
+ if (err != 0)
+@@ -1878,7 +1880,9 @@ int32_t AudioDeviceLinuxALSA::GetDevices
+ LATE(snd_strerror)(err));
+ // Continue and return true anyway, since we did get the whole list.
+ }
++#ifdef WEBRTC_LINUX
+ }
++#endif
+
+ if (FUNC_GET_NUM_OF_DEVICE == function)
+ {
diff --git a/www/libxul/Makefile b/www/libxul/Makefile
index a6f59ad1939b..2047822bb416 100644
--- a/www/libxul/Makefile
+++ b/www/libxul/Makefile
@@ -3,6 +3,7 @@
PORTNAME= libxul
DISTVERSION= 45.1.0
+PORTREVISION= 1
CATEGORIES?= www devel
MASTER_SITES= MOZILLA/firefox/releases/${DISTVERSION}esr/source \
MOZILLA/firefox/candidates/${DISTVERSION}esr-candidates/build1/source
diff --git a/www/libxul/files/patch-bug1269165 b/www/libxul/files/patch-bug1269165
new file mode 100644
index 000000000000..f88f018866a5
--- /dev/null
+++ b/www/libxul/files/patch-bug1269165
@@ -0,0 +1,24 @@
+# getUserMedia fails to enumerate ALSA plugins
+
+--- media/webrtc/trunk/webrtc/modules/audio_device/linux/audio_device_alsa_linux.cc.orig 2016-04-22 00:37:17 UTC
++++ media/webrtc/trunk/webrtc/modules/audio_device/linux/audio_device_alsa_linux.cc
+@@ -1752,7 +1752,9 @@ int32_t AudioDeviceLinuxALSA::GetDevices
+ // Don't use snd_device_name_hint(-1,..) since there is a access violation
+ // inside this ALSA API with libasound.so.2.0.0.
+ int card = -1;
++#ifdef WEBRTC_LINUX
+ while (!(LATE(snd_card_next)(&card)) && (card >= 0) && keepSearching) {
++#endif
+ void **hints;
+ err = LATE(snd_device_name_hint)(card, "pcm", &hints);
+ if (err != 0)
+@@ -1878,7 +1880,9 @@ int32_t AudioDeviceLinuxALSA::GetDevices
+ LATE(snd_strerror)(err));
+ // Continue and return true anyway, since we did get the whole list.
+ }
++#ifdef WEBRTC_LINUX
+ }
++#endif
+
+ if (FUNC_GET_NUM_OF_DEVICE == function)
+ {
diff --git a/www/seamonkey/Makefile b/www/seamonkey/Makefile
index cf96eab9afb7..1d7360dda747 100644
--- a/www/seamonkey/Makefile
+++ b/www/seamonkey/Makefile
@@ -4,7 +4,7 @@
PORTNAME= seamonkey
DISTVERSION= 2.39
MOZILLA_VER= 42 # above + 3
-PORTREVISION= 7
+PORTREVISION= 8
CATEGORIES?= www mail news editors irc ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \
MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build1/source
diff --git a/www/seamonkey/files/patch-bug1269165 b/www/seamonkey/files/patch-bug1269165
new file mode 100644
index 000000000000..829af431046b
--- /dev/null
+++ b/www/seamonkey/files/patch-bug1269165
@@ -0,0 +1,24 @@
+# getUserMedia fails to enumerate ALSA plugins
+
+--- mozilla/media/webrtc/trunk/webrtc/modules/audio_device/linux/audio_device_alsa_linux.cc.orig 2016-04-22 00:37:17 UTC
++++ mozilla/media/webrtc/trunk/webrtc/modules/audio_device/linux/audio_device_alsa_linux.cc
+@@ -1752,7 +1752,9 @@ int32_t AudioDeviceLinuxALSA::GetDevices
+ // Don't use snd_device_name_hint(-1,..) since there is a access violation
+ // inside this ALSA API with libasound.so.2.0.0.
+ int card = -1;
++#ifdef WEBRTC_LINUX
+ while (!(LATE(snd_card_next)(&card)) && (card >= 0) && keepSearching) {
++#endif
+ void **hints;
+ err = LATE(snd_device_name_hint)(card, "pcm", &hints);
+ if (err != 0)
+@@ -1878,7 +1880,9 @@ int32_t AudioDeviceLinuxALSA::GetDevices
+ LATE(snd_strerror)(err));
+ // Continue and return true anyway, since we did get the whole list.
+ }
++#ifdef WEBRTC_LINUX
+ }
++#endif
+
+ if (FUNC_GET_NUM_OF_DEVICE == function)
+ {