From adb1c5b5c12d0db77c035c8d1ea2686174e22c17 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Sat, 16 Nov 2013 09:15:18 +0100 Subject: xulrunner: sync with rawhide --- mozilla-837563.patch | 144 +++++++++++++++++++++++++++++++++++++++++++++++++++ mozilla-885002.patch | 30 +++++++++++ xulrunner-mozconfig | 1 + xulrunner.spec | 21 ++++++-- 4 files changed, 192 insertions(+), 4 deletions(-) create mode 100644 mozilla-837563.patch create mode 100644 mozilla-885002.patch diff --git a/mozilla-837563.patch b/mozilla-837563.patch new file mode 100644 index 0000000..40121a2 --- /dev/null +++ b/mozilla-837563.patch @@ -0,0 +1,144 @@ +# HG changeset patch +# User Matthew Gregan +# Date 1383172648 -46800 +# Thu Oct 31 11:37:28 2013 +1300 +# Node ID 2f6bd7da0756edaad53b601b18cf0c0e27f5f676 +# Parent 0f6219c6fb61f3f5e6775d269a6cf52305021024 +Bug 837563 - Enable libcubeb's PulseAudio backend. r=glandium + +diff --git a/configure.in b/configure.in +--- a/configure.in ++++ b/configure.in +@@ -5522,65 +5522,68 @@ fi + if test -n "$MOZ_TREMOR"; then + AC_DEFINE(MOZ_TREMOR) + fi + + if test -n "$MOZ_OPUS"; then + AC_DEFINE(MOZ_OPUS) + fi + +-dnl ======================================================== +-dnl = Check alsa availability on Linux if using sydneyaudio +-dnl ======================================================== +- +-dnl If using sydneyaudio with Linux, ensure that the alsa library is available ++dnl ==================================================== ++dnl = Check alsa availability on Linux if using libcubeb ++dnl ==================================================== ++ ++dnl If using libcubeb with Linux, ensure that the alsa library is available + if test -n "$MOZ_CUBEB" -a "$OS_TARGET" = "Linux"; then + MOZ_ALSA=1 + fi + + MOZ_ARG_ENABLE_BOOL(alsa, + [ --enable-alsa Enable Alsa support (default on Linux)], +-MOZ_ALSA=1, +-MOZ_ALSA=) ++ MOZ_ALSA=1, ++ MOZ_ALSA=) + + 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) + AC_SUBST(MOZ_ALSA_CFLAGS) + AC_SUBST(MOZ_ALSA_LIBS) + + dnl ======================================================== +-dnl = Enable PulseAudio +-dnl ======================================================== +- +-MOZ_ARG_ENABLE_BOOL(pulseaudio, +-[ --enable-pulseaudio Enable PulseAudio support (experimental)], +-MOZ_PULSEAUDIO=1, +-MOZ_PULSEAUDIO=) ++dnl = Disable PulseAudio ++dnl ======================================================== ++ ++dnl If using libcubeb with Linux, ensure that the PA library is available ++if test -n "$MOZ_CUBEB" -a "$OS_TARGET" = "Linux" -a -z "$MOZ_B2G"; then ++ MOZ_PULSEAUDIO=1 ++fi ++ ++MOZ_ARG_DISABLE_BOOL(pulseaudio, ++[ --disable-pulseaudio Disable PulseAudio support], ++ MOZ_PULSEAUDIO=, ++ MOZ_PULSEAUDIO=1) + + if test -n "$MOZ_PULSEAUDIO"; then + AC_DEFINE(MOZ_CUBEB) + if test -z "$gonkdir"; then + PKG_CHECK_MODULES(MOZ_PULSEAUDIO, libpulse, , + [echo "$MOZ_PULSEAUDIO_PKG_ERRORS" + AC_MSG_ERROR([pulseaudio audio backend requires libpulse development package])]) + else + MOZ_PULSEAUDIO_CFLAGS="-I$gonkdir/external/pulseaudio/pulseaudio/src" +- MOZ_PULSEAUDIO_LIBS="-lpulse" + fi + fi + + AC_SUBST(MOZ_PULSEAUDIO) + AC_SUBST(MOZ_PULSEAUDIO_CFLAGS) +-AC_SUBST(MOZ_PULSEAUDIO_LIBS) + + dnl ======================================================== + dnl = Enable GStreamer + dnl ======================================================== + if test "$OS_TARGET" = "Linux"; then + MOZ_GSTREAMER=1 + fi + +diff --git a/media/webrtc/signaling/test/Makefile.in b/media/webrtc/signaling/test/Makefile.in +--- a/media/webrtc/signaling/test/Makefile.in ++++ b/media/webrtc/signaling/test/Makefile.in +@@ -18,21 +18,16 @@ LIBS = \ + $(NULL) + + ifdef MOZ_CUBEB + ifdef MOZ_ALSA + LIBS += \ + $(MOZ_ALSA_LIBS) \ + $(NULL) + endif +-ifdef MOZ_PULSEAUDIO +-LIBS += \ +- $(MOZ_PULSEAUDIO_LIBS) \ +- $(NULL) +-endif + endif + + ifeq ($(OS_TARGET),Android) + LIBS += \ + $(STLPORT_LDFLAGS) \ + $(STLPORT_LIBS) \ + $(NULL) + CPPFLAGS += \ +diff --git a/toolkit/library/Makefile.in b/toolkit/library/Makefile.in +--- a/toolkit/library/Makefile.in ++++ b/toolkit/library/Makefile.in +@@ -428,19 +428,16 @@ OS_LIBS += $(call EXPAND_LIBNAME,secur32 + endif + endif + + + ifdef MOZ_CUBEB + ifdef MOZ_ALSA + EXTRA_DSO_LDOPTS += $(MOZ_ALSA_LIBS) + endif +-ifdef MOZ_PULSEAUDIO +-EXTRA_DSO_LDOPTS += $(MOZ_PULSEAUDIO_LIBS) +-endif + endif + + ifdef HAVE_CLOCK_MONOTONIC + EXTRA_DSO_LDOPTS += $(REALTIME_LIBS) + endif + + ifeq (android,$(MOZ_WIDGET_TOOLKIT)) + OS_LIBS += -lGLESv2 diff --git a/mozilla-885002.patch b/mozilla-885002.patch new file mode 100644 index 0000000..e48c89a --- /dev/null +++ b/mozilla-885002.patch @@ -0,0 +1,30 @@ +# HG changeset patch +# Parent d8fd5706493e19bcb85443316a4c180849f5d247 +# User Steve Singer +Bug 885002 - Fix casting on 64 bit Big Endian platforms. + + +diff --git a/content/media/FileBlockCache.h b/content/media/FileBlockCache.h +--- a/content/media/FileBlockCache.h ++++ b/content/media/FileBlockCache.h +@@ -138,19 +138,17 @@ public: + + bool IsEmpty() { + return nsDeque::GetSize() == 0; + } + + private: + int32_t ObjectAt(int32_t aIndex) { + void* v = nsDeque::ObjectAt(aIndex); +- // Ugly hack to work around "casting 64bit void* to 32bit int loses precision" +- // error on 64bit Linux. +- return *(reinterpret_cast(&v)); ++ return reinterpret_cast(v); + } + }; + + private: + int64_t BlockIndexToOffset(int32_t aBlockIndex) { + return static_cast(aBlockIndex) * BLOCK_SIZE; + } + diff --git a/xulrunner-mozconfig b/xulrunner-mozconfig index 7fed6ad..1ceaaf2 100644 --- a/xulrunner-mozconfig +++ b/xulrunner-mozconfig @@ -33,6 +33,7 @@ ac_add_options --disable-gnomevfs ac_add_options --disable-updater ac_add_options --enable-chrome-format=omni ac_add_options --disable-gstreamer +ac_add_options --enable-pulseaudio export BUILD_OFFICIAL=1 export MOZILLA_OFFICIAL=1 diff --git a/xulrunner.spec b/xulrunner.spec index abd691f..514723e 100644 --- a/xulrunner.spec +++ b/xulrunner.spec @@ -110,13 +110,15 @@ Patch17: xulrunner-24.0-gcc47.patch Patch18: xulrunner-24.0-jemalloc-ppc.patch # workaround linking issue on s390 (JSContext::updateMallocCounter(size_t) not found) Patch19: xulrunner-24.0-s390-inlines.patch +Patch20: mozilla-885002.patch # Fedora specific patches -Patch20: mozilla-193-pkgconfig.patch +Patch200: mozilla-193-pkgconfig.patch # Unable to install addons from https pages -Patch24: rhbz-966424.patch +Patch204: rhbz-966424.patch # Upstream patches +Patch300: mozilla-837563.patch # --------------------------------------------------- @@ -154,6 +156,7 @@ BuildRequires: libvpx-devel >= %{libvpx_version} BuildRequires: yasm %endif BuildRequires: autoconf213 +BuildRequires: pulseaudio-libs-devel %if 0%{?rhel} == 6 BuildRequires: python27 BuildRequires: devtoolset-2-toolchain @@ -280,9 +283,12 @@ cd %{tarballdir} %patch17 -p2 -b .gcc47 %patch18 -p2 -b .jemalloc-ppc %patch19 -p2 -b .s390-inlines +%patch20 -p1 -b .885002 -%patch20 -p2 -b .pk -%patch24 -p1 -b .966424 +%patch200 -p2 -b .pk +%patch204 -p1 -b .966424 + +%patch300 -p1 -b .837563 %{__rm} -f .mozconfig %{__cat} %{SOURCE10} \ @@ -599,6 +605,13 @@ fi #--------------------------------------------------------------------- %changelog +* Tue Nov 12 2013 Martin Stransky - 25.0-4 +- rhbz#1010916 - enabled pluseaudio backend + +* Fri Nov 8 2013 Martin Stransky - 25.0-3 +- Fixed rhbz#974718 - Segfault in FileBlockCache::Run + when playing a movie on ppc + * Wed Oct 30 2013 Remi Collet - 25.0-2 - sync with rawhide, update to 25.0 Build 3 - enable devtoolset-2 (gcc 4.8) for EL-6 -- cgit