aboutsummaryrefslogtreecommitdiffstats
path: root/www/firefox
diff options
context:
space:
mode:
authorflo <flo@FreeBSD.org>2012-11-21 07:01:15 +0800
committerflo <flo@FreeBSD.org>2012-11-21 07:01:15 +0800
commit863d3363c2d8ac1786cfdb304a12a6d367d9307a (patch)
treed56a366dfc71562e65a02f0224eed5e9c21419cd /www/firefox
parentf99cfe91e355cbafa8c8f72438f0e7e4e2544523 (diff)
downloadfreebsd-ports-gnome-863d3363c2d8ac1786cfdb304a12a6d367d9307a.tar.gz
freebsd-ports-gnome-863d3363c2d8ac1786cfdb304a12a6d367d9307a.tar.zst
freebsd-ports-gnome-863d3363c2d8ac1786cfdb304a12a6d367d9307a.zip
- Update firefox and thunderbird to 17.0
- Update seamonkey to 2.14 - Update ESR ports and libxul to 10.0.11 - support more h264 codecs when using GSTREAMER with YouTube - Unbreak firefox-esr, thunderbird-esr and libxul on head >= 1000024 [1] - Buildsystem is not python 3 aware, use python up to 2.7 [2] PR: ports/173679 [1] Submitted by: swills [1], demon [2] In collaboration with: Jan Beich <jbeich@tormail.org> Security: d23119df-335d-11e2-b64c-c8600054b392 Approved by: portmgr (beat) Feature safe: yes
Diffstat (limited to 'www/firefox')
-rw-r--r--www/firefox/Makefile10
-rw-r--r--www/firefox/distinfo4
-rw-r--r--www/firefox/files/extra-bug78053141
-rw-r--r--www/firefox/files/patch-alsapulse80
-rw-r--r--www/firefox/files/patch-bug75304684
-rw-r--r--www/firefox/files/patch-bug76107788
-rw-r--r--www/firefox/files/patch-bug77467140
-rw-r--r--www/firefox/files/patch-bug77525727
-rw-r--r--www/firefox/files/patch-bug77769632
-rw-r--r--www/firefox/files/patch-bug77805621
-rw-r--r--www/firefox/files/patch-bug77984728
-rw-r--r--www/firefox/files/patch-bug78346320
-rw-r--r--www/firefox/files/patch-bug78474143
-rw-r--r--www/firefox/files/patch-bug78477633
-rw-r--r--www/firefox/files/patch-bug78803911
-rw-r--r--www/firefox/files/patch-bug7881082
-rw-r--r--www/firefox/files/patch-bug78895510
-rw-r--r--www/firefox/files/patch-bug80613929
-rw-r--r--www/firefox/files/patch-js-src-js-confdefs.h.in (renamed from www/firefox/files/patch-js-src-configure.in)6
19 files changed, 121 insertions, 488 deletions
diff --git a/www/firefox/Makefile b/www/firefox/Makefile
index df5dbb6ab087..dda00a4deb31 100644
--- a/www/firefox/Makefile
+++ b/www/firefox/Makefile
@@ -1,12 +1,8 @@
-# New ports collection makefile for: phoenix
-# Date created: 2002/10/21
-# Whom: Alan Eldridge <alane@FreeBSD.org>
-#
+# Created by: Alan Eldridge <alane@FreeBSD.org>
# $FreeBSD$
-#
PORTNAME= firefox
-DISTVERSION= 16.0.2
+DISTVERSION= 17.0
PORTEPOCH= 1
CATEGORIES= www ipv6
MASTER_SITES= ${MASTER_SITE_MOZILLA}
@@ -24,7 +20,7 @@ BUILD_DEPENDS= nspr>=4.9:${PORTSDIR}/devel/nspr \
unzip:${PORTSDIR}/archivers/unzip
USE_AUTOTOOLS= autoconf213:env
-USE_PYTHON_BUILD=yes
+USE_PYTHON_BUILD=-2.7
USE_GECKO= gecko
CONFLICTS= firefox-10.*
MOZ_PKGCONFIG_FILES= # empty
diff --git a/www/firefox/distinfo b/www/firefox/distinfo
index b3a39f169f69..5076e24d6154 100644
--- a/www/firefox/distinfo
+++ b/www/firefox/distinfo
@@ -1,2 +1,2 @@
-SHA256 (firefox-16.0.2.source.tar.bz2) = cefe00d1440eefbe2534b119558d8ebc4adb55eb2fdaaff1ce101b9e70d02820
-SIZE (firefox-16.0.2.source.tar.bz2) = 89452077
+SHA256 (firefox-17.0.source.tar.bz2) = 7f05658701be88505747ea3537546b98a1c0e74ba23ba428d754ea838a192348
+SIZE (firefox-17.0.source.tar.bz2) = 90780755
diff --git a/www/firefox/files/extra-bug780531 b/www/firefox/files/extra-bug780531
index c237bd26e509..aa3547c397a4 100644
--- a/www/firefox/files/extra-bug780531
+++ b/www/firefox/files/extra-bug780531
@@ -1,32 +1,13 @@
--- configure.in~
+++ configure.in
-@@ -5282,10 +5282,13 @@ if test -n "$MOZ_OGG"; then
- MOZ_SYDNEYAUDIO=1
- MOZ_CUBEB=1
- MOZ_MEDIA=1
-- case "$target_cpu" in
-+ case "$target" in
- arm*)
- MOZ_TREMOR=1
- ;;
-+ *-freebsd*)
-+ MOZ_TREMOR=1
-+ ;;
- *)
- MOZ_VORBIS=1
- ;;
-@@ -5417,10 +5420,13 @@ if test "$MOZ_WEBM"; then
- MOZ_SYDNEYAUDIO=1
- MOZ_CUBEB=1
- MOZ_MEDIA=1
-- case "$target_cpu" in
-+ case "$target" in
- arm*)
- MOZ_TREMOR=1
- ;;
-+ *-freebsd*)
-+ MOZ_TREMOR=1
-+ ;;
- *)
- MOZ_VORBIS=1
- ;;
+@@ -5151,8 +5148,8 @@ fi
+
+ AC_SUBST(MOZ_WEBRTC)
+
+-case "$target_cpu" in
+-arm*)
++case "$target" in
++arm-*-linux*|*-dragonfly*|*-freebsd*|*-netbsd*|*-openbsd*)
+ MOZ_SAMPLE_TYPE_S16LE=1
+ AC_DEFINE(MOZ_SAMPLE_TYPE_S16LE)
+ AC_SUBST(MOZ_SAMPLE_TYPE_S16LE)
diff --git a/www/firefox/files/patch-alsapulse b/www/firefox/files/patch-alsapulse
index 9ca7c05af946..f0c38d347bea 100644
--- a/www/firefox/files/patch-alsapulse
+++ b/www/firefox/files/patch-alsapulse
@@ -1,27 +1,8 @@
-diff --git config/autoconf.mk.in config/autoconf.mk.in
-index 44c0b06..748511b 100644
---- config/autoconf.mk.in
-+++ config/autoconf.mk.in
-@@ -536,9 +536,14 @@ MOZ_LIBNOTIFY_CFLAGS = @MOZ_LIBNOTIFY_CFLAGS@
- 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@
diff --git configure.in configure.in
index 5980b76..11f5f77 100644
--- configure.in
+++ configure.in
-@@ -5600,13 +5600,45 @@ dnl ========================================================
+@@ -5600,13 +5600,25 @@ dnl ========================================================
dnl = Check alsa availability on Linux if using sydneyaudio
dnl ========================================================
@@ -45,28 +26,8 @@ index 5980b76..11f5f77 100644
+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
-+ AC_DEFINE(MOZ_CUBEB)
-+ 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 = Enable GStreamer
+ dnl = Enable PulseAudio
dnl ========================================================
diff --git media/libcubeb/src/Makefile.in media/libcubeb/src/Makefile.in
index 5ab4dd8..c8df26f 100644
@@ -83,7 +44,7 @@ index 5ab4dd8..c8df26f 100644
endif
ifeq ($(OS_TARGET),Darwin)
-@@ -42,4 +38,16 @@ CSRCS = \
+@@ -42,6 +38,12 @@ CSRCS = \
$(NULL)
endif
@@ -93,25 +54,9 @@ index 5ab4dd8..c8df26f 100644
+ $(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,6 +6,6 @@
- #undef NDEBUG
- #define _BSD_SOURCE
--#define _POSIX_SOURCE
-+#define _XOPEN_SOURCE 500
- #include <pthread.h>
- #include <sys/time.h>
- #include <assert.h>
+ 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
@@ -150,7 +95,7 @@ diff --git toolkit/library/Makefile.in toolkit/library/Makefile.in
index 43384e9..e46a6e3 100644
--- toolkit/library/Makefile.in
+++ toolkit/library/Makefile.in
-@@ -379,10 +379,13 @@ endif
+@@ -370,14 +370,11 @@ endif
EXTRA_DSO_LDOPTS += $(call EXPAND_LIBNAME_PATH,gkmedias,$(DIST)/lib)
@@ -160,9 +105,10 @@ index 43384e9..e46a6e3 100644
+ifdef MOZ_ALSA
EXTRA_DSO_LDOPTS += $(MOZ_ALSA_LIBS)
endif
-+ifdef MOZ_PULSEAUDIO
-+EXTRA_DSO_LDOPTS += $(MOZ_PULSEAUDIO_LIBS)
-+endif
+-endif
+-
+ ifdef MOZ_PULSEAUDIO
+-ifdef MOZ_CUBEB
+ EXTRA_DSO_LDOPTS += $(MOZ_PULSEAUDIO_LIBS)
+ endif
endif
-
- ifdef HAVE_CLOCK_MONOTONIC
diff --git a/www/firefox/files/patch-bug753046 b/www/firefox/files/patch-bug753046
index 601e0c13e948..c5ecdbd8af1b 100644
--- a/www/firefox/files/patch-bug753046
+++ b/www/firefox/files/patch-bug753046
@@ -56,7 +56,7 @@ $NetBSD: patch-ipc_chromium_Makefile.in,v 1.1 2012/03/06 12:34:09 ryoon Exp $
--- ipc/chromium/Makefile.in.orig 2012-02-16 06:40:33.000000000 +0000
+++ ipc/chromium/Makefile.in
-@@ -278,6 +278,34 @@ endif
+@@ -278,6 +278,33 @@ endif
endif # } OS_LINUX
@@ -64,7 +64,6 @@ $NetBSD: patch-ipc_chromium_Makefile.in,v 1.1 2012/03/06 12:34:09 ryoon Exp $
+
+CPPSRCS += \
+ atomicops_internals_x86_gcc.cc \
-+ file_util_linux.cc \
+ process_util_bsd.cc \
+ time_posix.cc \
+ $(NULL)
@@ -404,19 +403,6 @@ index 9a34492..62b280c 100644
#else
typedef DirReaderFallback DirReaderPosix;
#endif
-diff --git ipc/chromium/src/base/file_util_linux.cc ipc/chromium/src/base/file_util_linux.cc
-index 171e44f..0c6dfcc 100644
---- ipc/chromium/src/base/file_util_linux.cc
-+++ ipc/chromium/src/base/file_util_linux.cc
-@@ -28,7 +28,7 @@ bool GetTempDir(FilePath* path) {
- }
-
- bool GetShmemTempDir(FilePath* path) {
--#ifdef ANDROID
-+#if defined(ANDROID) || defined(OS_BSD)
- return GetTempDir(path);
- #else
- *path = FilePath("/dev/shm");
$NetBSD: patch-ipc_chromium_src_base_file__util__posix.cc,v 1.2 2012/03/06 12:34:09 ryoon Exp $
--- ipc/chromium/src/base/file_util_posix.cc.orig 2011-12-20 23:28:19.000000000 +0000
@@ -541,8 +527,7 @@ $NetBSD: patch-ipc_chromium_src_base_platform__thread__posix.cc,v 1.4 2012/04/01
pthread_set_name_np(pthread_self(), name);
-#elif defined(__NetBSD__)
+#elif defined(OS_NETBSD)
-- pthread_setname_np(pthread_self(), "%s", name);
-+ pthread_setname_np(pthread_self(), "%s", (void *)name);
+ pthread_setname_np(pthread_self(), "%s", (void *)name);
#else
prctl(PR_SET_NAME, reinterpret_cast<uintptr_t>(name), 0, 0, 0);
$NetBSD: patch-ipc_chromium_src_base_process__util.h,v 1.1 2012/03/06 12:34:09 ryoon Exp $
@@ -586,7 +571,7 @@ $NetBSD: patch-ipc_chromium_src_base_process__util__bsd.cc,v 1.4 2012/04/01 15:1
--- ipc/chromium/src/base/process_util_bsd.cc.orig 2012-04-01 00:04:28.000000000 +0000
+++ ipc/chromium/src/base/process_util_bsd.cc
-@@ -0,0 +1,318 @@
+@@ -0,0 +1,367 @@
+// Copyright (c) 2008 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
@@ -621,6 +606,20 @@ $NetBSD: patch-ipc_chromium_src_base_process__util__bsd.cc,v 1.4 2012/04/01 15:1
+#define HAVE_POSIX_SPAWN 1
+#endif
+
++/*
++ * On platforms that are not gonk based, we fall back to an arbitrary
++ * UID. This is generally the UID for user `nobody', albeit it is not
++ * always the case.
++ */
++
++#if defined(OS_NETBSD) || defined(OS_OPENBSD)
++# define CHILD_UNPRIVILEGED_UID 32767
++# define CHILD_UNPRIVILEGED_GID 32767
++#else
++# define CHILD_UNPRIVILEGED_UID 65534
++# define CHILD_UNPRIVILEGED_GID 65534
++#endif
++
+#ifndef __dso_public
+# ifdef __exported
+# define __dso_public __exported
@@ -669,6 +668,17 @@ $NetBSD: patch-ipc_chromium_src_base_process__util__bsd.cc,v 1.4 2012/04/01 15:1
+ const environment_map& env_vars_to_set,
+ bool wait, ProcessHandle* process_handle,
+ ProcessArchitecture arch) {
++ return LaunchApp(argv, fds_to_remap, env_vars_to_set,
++ SAME_PRIVILEGES_AS_PARENT,
++ wait, process_handle);
++}
++
++bool LaunchApp(const std::vector<std::string>& argv,
++ const file_handle_mapping_vector& fds_to_remap,
++ const environment_map& env_vars_to_set,
++ ChildPrivileges privs,
++ bool wait, ProcessHandle* process_handle,
++ ProcessArchitecture arch) {
+ bool retval = true;
+
+ char* argv_copy[argv.size() + 1];
@@ -783,6 +793,17 @@ $NetBSD: patch-ipc_chromium_src_base_process__util__bsd.cc,v 1.4 2012/04/01 15:1
+ const environment_map& env_vars_to_set,
+ bool wait, ProcessHandle* process_handle,
+ ProcessArchitecture arch) {
++ return LaunchApp(argv, fds_to_remap, env_vars_to_set,
++ SAME_PRIVILEGES_AS_PARENT,
++ wait, process_handle);
++}
++
++bool LaunchApp(const std::vector<std::string>& argv,
++ const file_handle_mapping_vector& fds_to_remap,
++ const environment_map& env_vars_to_set,
++ ChildPrivileges privs,
++ bool wait, ProcessHandle* process_handle,
++ ProcessArchitecture arch) {
+ scoped_array<char*> argv_cstr(new char*[argv.size() + 1]);
+ // Illegal to allocate memory after fork and before execvp
+ InjectiveMultimap fd_shuffle1, fd_shuffle2;
@@ -805,19 +826,32 @@ $NetBSD: patch-ipc_chromium_src_base_process__util__bsd.cc,v 1.4 2012/04/01 15:1
+
+ CloseSuperfluousFds(fd_shuffle2);
+
++ for (size_t i = 0; i < argv.size(); i++)
++ argv_cstr[i] = const_cast<char*>(argv[i].c_str());
++ argv_cstr[argv.size()] = NULL;
++
++ if (privs == UNPRIVILEGED) {
++ if (setgid(CHILD_UNPRIVILEGED_GID) != 0) {
++ DLOG(ERROR) << "FAILED TO setgid() CHILD PROCESS, path: " << argv_cstr[0];
++ _exit(127);
++ }
++ if (setuid(CHILD_UNPRIVILEGED_UID) != 0) {
++ DLOG(ERROR) << "FAILED TO setuid() CHILD PROCESS, path: " << argv_cstr[0];
++ _exit(127);
++ }
++ if (chdir("/") != 0)
++ gProcessLog.print("==> could not chdir()\n");
++ }
++
+ for (environment_map::const_iterator it = env_vars_to_set.begin();
+ it != env_vars_to_set.end(); ++it) {
+ if (setenv(it->first.c_str(), it->second.c_str(), 1/*overwrite*/))
+ _exit(127);
+ }
-+
-+ for (size_t i = 0; i < argv.size(); i++)
-+ argv_cstr[i] = const_cast<char*>(argv[i].c_str());
-+ argv_cstr[argv.size()] = NULL;
-+ execvp(argv_cstr[0], argv_cstr.get());
++ execv(argv_cstr[0], argv_cstr.get());
+ // if we get here, we're in serious trouble and should complain loudly
+ DLOG(ERROR) << "FAILED TO exec() CHILD PROCESS, path: " << argv_cstr[0];
-+ exit(127);
++ _exit(127);
+ } else {
+ gProcessLog.print("==> process %d launched child process %d\n",
+ GetCurrentProcId(), pid);
@@ -1144,7 +1178,7 @@ $NetBSD: patch-ipc_glue_GeckoChildProcessHost.cpp,v 1.2 2012/03/15 08:30:06 ryoo
base::LaunchApp(childArgv, mFileMap,
-#if defined(OS_LINUX) || defined(OS_MACOSX)
+#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_BSD)
- newEnvVars,
+ newEnvVars, privs,
#endif
false, &process, arch);
diff --git ipc/glue/SharedMemorySysV.h ipc/glue/SharedMemorySysV.h
diff --git a/www/firefox/files/patch-bug761077 b/www/firefox/files/patch-bug761077
deleted file mode 100644
index 922fa55131e8..000000000000
--- a/www/firefox/files/patch-bug761077
+++ /dev/null
@@ -1,88 +0,0 @@
-diff --git xpcom/reflect/xptcall/public/genstubs.pl xpcom/reflect/xptcall/public/genstubs.pl
-index b8a87a5..918c4cf 100644
---- xpcom/reflect/xptcall/public/genstubs.pl
-+++ xpcom/reflect/xptcall/public/genstubs.pl
-@@ -44,7 +44,7 @@ print OUTFILE "* 0 is QueryInterface\n";
- print OUTFILE "* 1 is AddRef\n";
- print OUTFILE "* 2 is Release\n";
- print OUTFILE "*/\n";
--print OUTFILE "#if !defined(__ia64) || (!defined(__hpux) && !defined(__linux__))\n";
-+print OUTFILE "#if !defined(__ia64) || (!defined(__hpux) && !defined(__linux__) && !defined(__FreeBSD__))\n";
- for($i = 0; $i < $entry_count; $i++) {
- print OUTFILE "NS_IMETHOD Stub",$i+3,"();\n";
- }
-diff --git xpcom/reflect/xptcall/public/xptcstubsdecl.inc xpcom/reflect/xptcall/public/xptcstubsdecl.inc
-index eb66761..807db26 100644
---- xpcom/reflect/xptcall/public/xptcstubsdecl.inc
-+++ xpcom/reflect/xptcall/public/xptcstubsdecl.inc
-@@ -8,7 +8,7 @@
- * 1 is AddRef
- * 2 is Release
- */
--#if !defined(__ia64) || (!defined(__hpux) && !defined(__linux__))
-+#if !defined(__ia64) || (!defined(__hpux) && !defined(__linux__) && !defined(__FreeBSD__))
- NS_IMETHOD Stub3();
- NS_IMETHOD Stub4();
- NS_IMETHOD Stub5();
-diff --git xpcom/reflect/xptcall/src/md/unix/Makefile.in xpcom/reflect/xptcall/src/md/unix/Makefile.in
-index ae6ed66..2783957 100644
---- xpcom/reflect/xptcall/src/md/unix/Makefile.in
-+++ xpcom/reflect/xptcall/src/md/unix/Makefile.in
-@@ -70,7 +70,7 @@ endif
- endif
- endif
- # IA64 Linux
--ifneq (,$(filter Linux,$(OS_ARCH)))
-+ifneq (,$(filter Linux FreeBSD,$(OS_ARCH)))
- ifneq (,$(findstring ia64,$(OS_TEST)))
- CPPSRCS := xptcinvoke_ipf64.cpp xptcstubs_ipf64.cpp
- ASFILES := xptcstubs_asm_ipf64.s xptcinvoke_asm_ipf64.s
-@@ -269,7 +269,7 @@ endif
- #
- # Linux/PPC
- #
--ifeq ($(OS_ARCH)$(OS_TEST),Linuxpowerpc)
-+ifneq (,$(filter Linuxpowerpc FreeBSDpowerpc,$(OS_ARCH)$(OS_TEST)))
- CPPSRCS := xptcinvoke_ppc_linux.cpp xptcstubs_ppc_linux.cpp
- ASFILES := xptcinvoke_asm_ppc_linux.s xptcstubs_asm_ppc_linux.s
- AS := $(CC) -c -x assembler-with-cpp
-@@ -278,7 +278,7 @@ endif
- #
- # Linux/PPC64
- #
--ifeq ($(OS_ARCH)$(OS_TEST),Linuxpowerpc64)
-+ifneq (,$(filter Linuxpowerpc64 FreeBSDpowerpc64,$(OS_ARCH)$(OS_TEST)))
- CPPSRCS := xptcinvoke_ppc64_linux.cpp xptcstubs_ppc64_linux.cpp
- ASFILES := xptcinvoke_asm_ppc64_linux.s xptcstubs_asm_ppc64_linux.s
- AS := $(CC) -c -x assembler-with-cpp
-@@ -350,7 +350,7 @@ endif
- #
- # OpenBSD/SPARC64
- #
--ifeq ($(OS_ARCH)$(OS_TEST),OpenBSDsparc64)
-+ifneq (,$(filter OpenBSDsparc64 FreeBSDsparc64,$(OS_ARCH)$(OS_TEST)))
- CPPSRCS := xptcinvoke_sparc64_openbsd.cpp xptcstubs_sparc64_openbsd.cpp
- ASFILES := xptcinvoke_asm_sparc64_openbsd.s xptcstubs_asm_sparc64_openbsd.s
- endif
-diff --git xpcom/reflect/xptcall/src/xptcprivate.h xpcom/reflect/xptcall/src/xptcprivate.h
-index d903ced..e4ec832 100644
---- xpcom/reflect/xptcall/src/xptcprivate.h
-+++ xpcom/reflect/xptcall/src/xptcprivate.h
-@@ -14,7 +14,7 @@
-
- class xptiInterfaceEntry;
-
--#if !defined(__ia64) || (!defined(__hpux) && !defined(__linux__))
-+#if !defined(__ia64) || (!defined(__hpux) && !defined(__linux__) && !defined(__FreeBSD__))
- #define STUB_ENTRY(n) NS_IMETHOD Stub##n() = 0;
- #else
- #define STUB_ENTRY(n) NS_IMETHOD Stub##n(PRUint64,PRUint64,PRUint64,PRUint64,PRUint64,PRUint64,PRUint64,PRUint64) = 0;
-@@ -31,7 +31,7 @@ public:
- #undef STUB_ENTRY
- #undef SENTINEL_ENTRY
-
--#if !defined(__ia64) || (!defined(__hpux) && !defined(__linux__))
-+#if !defined(__ia64) || (!defined(__hpux) && !defined(__linux__) && !defined(__FreeBSD__))
- #define STUB_ENTRY(n) NS_IMETHOD Stub##n();
- #else
- #define STUB_ENTRY(n) NS_IMETHOD Stub##n(PRUint64,PRUint64,PRUint64,PRUint64,PRUint64,PRUint64,PRUint64,PRUint64);
diff --git a/www/firefox/files/patch-bug774671 b/www/firefox/files/patch-bug774671
deleted file mode 100644
index 97ad3415e4d0..000000000000
--- a/www/firefox/files/patch-bug774671
+++ /dev/null
@@ -1,40 +0,0 @@
-commit 7e9eda2
-Author: Rafael Ávila de Espíndola <respindola@mozilla.com>
-Date: Tue Jul 17 12:54:41 2012 -0400
-
- Bug 774671 - Fix mismatched declarations. r=luke.
----
- js/src/jsproxy.h | 2 +-
- js/src/jsprvtd.h | 6 +++---
- 2 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git js/src/jsproxy.h js/src/jsproxy.h
-index ec26e3a..aa0e782 100644
---- js/src/jsproxy.h
-+++ js/src/jsproxy.h
-@@ -13,7 +13,7 @@
-
- namespace js {
-
--class Wrapper;
-+class JS_FRIEND_API(Wrapper);
-
- /*
- * A proxy is a JSObject that implements generic behavior by providing custom
-diff --git js/src/jsprvtd.h js/src/jsprvtd.h
-index 19b5aef..93e1216 100644
---- js/src/jsprvtd.h
-+++ js/src/jsprvtd.h
-@@ -146,9 +146,9 @@ struct TreeContext;
- class UpvarCookie;
-
- class Proxy;
--class BaseProxyHandler;
--class DirectWrapper;
--class CrossCompartmentWrapper;
-+class JS_FRIEND_API(BaseProxyHandler);
-+class JS_FRIEND_API(DirectWrapper);
-+class JS_FRIEND_API(CrossCompartmentWrapper);
-
- class TempAllocPolicy;
- class RuntimeAllocPolicy;
diff --git a/www/firefox/files/patch-bug775257 b/www/firefox/files/patch-bug775257
deleted file mode 100644
index 7a6dbb9d86ed..000000000000
--- a/www/firefox/files/patch-bug775257
+++ /dev/null
@@ -1,27 +0,0 @@
-commit 8fc8b74
-Author: Oleg Romashin <oleg.romashin@nokia.com>
-Date: Wed Jul 18 22:46:11 2012 -0400
-
- Bug 775257 - Gstreamer backend on Meego N9 produce extra noise in audio playback.r=giles
----
- content/media/gstreamer/nsGStreamerReader.cpp | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git content/media/gstreamer/nsGStreamerReader.cpp content/media/gstreamer/nsGStreamerReader.cpp
-index c48f92e..0fb801a 100644
---- content/media/gstreamer/nsGStreamerReader.cpp
-+++ content/media/gstreamer/nsGStreamerReader.cpp
-@@ -130,8 +130,13 @@ nsresult nsGStreamerReader::Init(nsBuiltinDecoderReader* aCloneDonor)
- gst_object_unref(sinkpad);
-
- mAudioSink = gst_parse_bin_from_description("capsfilter name=filter ! "
-+#ifndef MOZ_TREMOR
- "appsink name=audiosink sync=true caps=audio/x-raw-float,"
- "channels={1,2},rate=44100,width=32,endianness=1234", TRUE, NULL);
-+#else
-+ "appsink name=audiosink sync=true caps=audio/x-raw-int,"
-+ "channels={1,2},rate=48000,width=16,endianness=1234", TRUE, NULL);
-+#endif
- mAudioAppSink = GST_APP_SINK(gst_bin_get_by_name(GST_BIN(mAudioSink),
- "audiosink"));
- gst_app_sink_set_callbacks(mAudioAppSink, &mSinkCallbacks,
diff --git a/www/firefox/files/patch-bug777696 b/www/firefox/files/patch-bug777696
deleted file mode 100644
index 364608926d5a..000000000000
--- a/www/firefox/files/patch-bug777696
+++ /dev/null
@@ -1,32 +0,0 @@
-commit 0c0d1a8
-Author: Landry Breuil <landry@openbsd.org>
-Date: Mon Jul 30 17:57:15 2012 +0200
-
- Bug 777696: Fix gstreamer backend on big endian architectures. r=doublec
----
- content/media/gstreamer/nsGStreamerReader.cpp | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git content/media/gstreamer/nsGStreamerReader.cpp content/media/gstreamer/nsGStreamerReader.cpp
-index 0fb801a..4a69196 100644
---- content/media/gstreamer/nsGStreamerReader.cpp
-+++ content/media/gstreamer/nsGStreamerReader.cpp
-@@ -132,10 +132,18 @@ nsresult nsGStreamerReader::Init(nsBuiltinDecoderReader* aCloneDonor)
- mAudioSink = gst_parse_bin_from_description("capsfilter name=filter ! "
- #ifdef MOZ_TREMOR
- "appsink name=audiosink sync=true caps=audio/x-raw-float,"
-+#ifdef IS_LITTLE_ENDIAN
- "channels={1,2},rate=44100,width=32,endianness=1234", TRUE, NULL);
- #else
-+ "channels={1,2},rate=44100,width=32,endianness=4321", TRUE, NULL);
-+#endif
-+#else
- "appsink name=audiosink sync=true caps=audio/x-raw-int,"
-+#ifdef IS_LITTLE_ENDIAN
- "channels={1,2},rate=48000,width=16,endianness=1234", TRUE, NULL);
-+#else
-+ "channels={1,2},rate=48000,width=16,endianness=4321", TRUE, NULL);
-+#endif
- #endif
- mAudioAppSink = GST_APP_SINK(gst_bin_get_by_name(GST_BIN(mAudioSink),
- "audiosink"));
diff --git a/www/firefox/files/patch-bug778056 b/www/firefox/files/patch-bug778056
deleted file mode 100644
index 9515b967764e..000000000000
--- a/www/firefox/files/patch-bug778056
+++ /dev/null
@@ -1,21 +0,0 @@
---- memory/mozalloc/mozalloc.cpp~
-+++ memory/mozalloc/mozalloc.cpp
-@@ -19,6 +19,9 @@
- #if defined(XP_UNIX)
- # include <unistd.h> // for valloc on *BSD
- #endif //if defined(XP_UNIX)
-+#if defined(__FreeBSD__)
-+# include <malloc_np.h> // for malloc_usable_size
-+#endif // if defined(__FreeBSD__)
-
- #if defined(XP_WIN) || (defined(XP_OS2) && defined(__declspec))
- # define MOZALLOC_EXPORT __declspec(dllexport)
-@@ -210,7 +213,7 @@ moz_malloc_usable_size(void *ptr)
-
- #if defined(XP_MACOSX)
- return malloc_size(ptr);
--#elif defined(MOZ_MEMORY) || (defined(XP_LINUX) && !defined(ANDROID))
-+#elif defined(MOZ_MEMORY) || (defined(XP_LINUX) && !defined(ANDROID)) || defined(__FreeBSD__)
- // Android bionic libc doesn't have malloc_usable_size.
- return malloc_usable_size(ptr);
- #elif defined(XP_WIN)
diff --git a/www/firefox/files/patch-bug779847 b/www/firefox/files/patch-bug779847
deleted file mode 100644
index f431c4a8d3c5..000000000000
--- a/www/firefox/files/patch-bug779847
+++ /dev/null
@@ -1,28 +0,0 @@
---- gfx/ycbcr/Makefile.in
-+++ gfx/ycbcr/Makefile.in
-@@ -54,23 +54,13 @@ CPPSRCS += yuv_row_win.cpp \
- $(NULL)
- endif
- else
--ifeq ($(OS_ARCH),Linux)
--CPPSRCS += yuv_row_posix.cpp \
-- $(NULL)
--else
--ifeq ($(OS_ARCH),SunOS)
--CPPSRCS += yuv_row_posix.cpp \
-- $(NULL)
--else
--ifeq ($(OS_ARCH),Darwin)
-+ifneq (,$(filter Linux SunOS Darwin DragonFly FreeBSD NetBSD OpenBSD, $(OS_ARCH)))
- CPPSRCS += yuv_row_posix.cpp \
- $(NULL)
- else
- CPPSRCS += yuv_row_other.cpp \
- $(NULL)
--endif # Darwin
--endif # SunOS
--endif # linux
-+endif # posix
- endif # windows
-
- ifeq (arm,$(findstring arm,$(OS_TEST)))
diff --git a/www/firefox/files/patch-bug783463 b/www/firefox/files/patch-bug783463
index 0409fd29f662..b27a1997c534 100644
--- a/www/firefox/files/patch-bug783463
+++ b/www/firefox/files/patch-bug783463
@@ -12,23 +12,3 @@
SkTime_Unix.cpp \
$(NULL)
endif
---- widget/qt/nsNativeThemeQt.cpp~
-+++ widget/qt/nsNativeThemeQt.cpp
-@@ -25,7 +25,6 @@
- #include "nsThemeConstants.h"
- #include "nsIServiceManager.h"
- #include "nsIDOMHTMLInputElement.h"
--#include <malloc.h>
-
-
- #include "gfxASurface.h"
---- widget/qt/nsSound.cpp~
-+++ widget/qt/nsSound.cpp
-@@ -40,6 +40,7 @@
- #include <QSound>
-
- #include <string.h>
-+#include <unistd.h>
-
- #include "nscore.h"
- #include "plstr.h"
diff --git a/www/firefox/files/patch-bug784741 b/www/firefox/files/patch-bug784741
deleted file mode 100644
index 83de74061eb5..000000000000
--- a/www/firefox/files/patch-bug784741
+++ /dev/null
@@ -1,43 +0,0 @@
-diff --git js/src/Makefile.in js/src/Makefile.in
-index 8eb385f..01bd8e3 100644
---- js/src/Makefile.in
-+++ js/src/Makefile.in
-@@ -323,6 +323,7 @@ endif
-
- ifneq (,$(filter arm% sparc %86 x86_64 mips%,$(TARGET_CPU)))
- ENABLE_YARR_JIT = 1
-+DEFINES += -DENABLE_YARR_JIT=1
-
- VPATH += $(srcdir)/assembler/assembler \
- $(srcdir)/methodjit \
-diff --git js/src/assembler/wtf/Platform.h js/src/assembler/wtf/Platform.h
-index 6570f2d..0c84896 100644
---- js/src/assembler/wtf/Platform.h
-+++ js/src/assembler/wtf/Platform.h
-@@ -1102,9 +1102,7 @@
- #if WTF_PLATFORM_CHROMIUM
- #define ENABLE_YARR_JIT 0
-
--#elif ENABLE_JIT && !defined(ENABLE_YARR_JIT)
--#define ENABLE_YARR_JIT 1
--
-+#elif ENABLE_YARR_JIT
- /* Setting this flag compares JIT results with interpreter results. */
- #define ENABLE_YARR_JIT_DEBUG 0
- #endif
-diff --git js/src/configure.in js/src/configure.in
-index c142eb7..34f98b9 100644
---- js/src/configure.in
-+++ js/src/configure.in
-@@ -3347,7 +3347,10 @@ MOZ_ARG_ENABLE_STRING(debug,
- (using compiler flags DBG)],
- [ if test "$enableval" != "no"; then
- MOZ_DEBUG=1
-- ENABLE_METHODJIT_SPEW=1
-+ if test "$ENABLE_METHODJIT"; then
-+ # needs MethodJIT or YarrJIT
-+ ENABLE_METHODJIT_SPEW=1
-+ fi
- if test -n "$enableval" -a "$enableval" != "yes"; then
- MOZ_DEBUG_FLAGS=`echo $enableval | sed -e 's|\\\ | |g'`
- _MOZ_DEBUG_FLAGS_SET=1
diff --git a/www/firefox/files/patch-bug784776 b/www/firefox/files/patch-bug784776
deleted file mode 100644
index 3fe665e7140c..000000000000
--- a/www/firefox/files/patch-bug784776
+++ /dev/null
@@ -1,33 +0,0 @@
---- gfx/layers/opengl/ImageLayerOGL.cpp~
-+++ gfx/layers/opengl/ImageLayerOGL.cpp
-@@ -936,7 +936,7 @@ ShadowImageLayerOGL::CleanupResources()
- {
- if (mSharedHandle) {
- gl()->ReleaseSharedHandle(mShareType, mSharedHandle);
-- mSharedHandle = NULL;
-+ mSharedHandle = 0;
- }
-
- mYUVTexture[0].Release();
---- intl/locale/src/unix/nsDateTimeFormatUnix.cpp~
-+++ intl/locale/src/unix/nsDateTimeFormatUnix.cpp
-@@ -100,7 +100,7 @@ void nsDateTimeFormatUnix::LocalePreferr
- struct tm *tmc;
- int i;
-
-- tt = time((time_t)NULL);
-+ tt = time(NULL);
- tmc = localtime(&tt);
-
- tmc->tm_hour=22; // put the test sample hour to 22:00 which is 10PM
---- ipc/glue/CrossProcessMutex_unimplemented.cpp~
-+++ ipc/glue/CrossProcessMutex_unimplemented.cpp
-@@ -40,7 +40,7 @@ CrossProcessMutexHandle
- CrossProcessMutex::ShareToProcess(base::ProcessHandle aHandle)
- {
- NS_RUNTIMEABORT("Cross-process mutices not allowed on this platform - woah! We should've aborted by now!");
-- return NULL;
-+ return 0;
- }
-
- }
diff --git a/www/firefox/files/patch-bug788039 b/www/firefox/files/patch-bug788039
index 678f0d493eae..a678de2eab4f 100644
--- a/www/firefox/files/patch-bug788039
+++ b/www/firefox/files/patch-bug788039
@@ -1,16 +1,5 @@
# Bug 788039 - With no prefix search libevent via pkg-config.
---- config/autoconf.mk.in~
-+++ config/autoconf.mk.in
-@@ -227,7 +227,7 @@ MOZ_HUNSPELL_CFLAGS = @MOZ_HUNSPELL_CFLA
-
- MOZ_NATIVE_LIBEVENT = @MOZ_NATIVE_LIBEVENT@
- MOZ_LIBEVENT_LIBS = @MOZ_LIBEVENT_LIBS@
--MOZ_LIBEVENT_INCLUDES = @MOZ_LIBEVENT_INCLUDES@
-+MOZ_LIBEVENT_CFLAGS = @MOZ_LIBEVENT_CFLAGS@
-
- MOZ_NATIVE_LIBVPX = @MOZ_NATIVE_LIBVPX@
- MOZ_LIBVPX_LIBS = @MOZ_LIBVPX_LIBS@
--- configure.in~
+++ configure.in
@@ -3854,7 +3854,7 @@ fi
diff --git a/www/firefox/files/patch-bug788108 b/www/firefox/files/patch-bug788108
index 746146760c62..80ff18649882 100644
--- a/www/firefox/files/patch-bug788108
+++ b/www/firefox/files/patch-bug788108
@@ -7,7 +7,7 @@
-//A trick to handle IEEE floating point exceptions on FreeBSD - E.D.
-#ifdef __FreeBSD__
-#include <ieeefp.h>
--#ifdef __alpha__
+-#if !defined(__i386__) && !defined(__x86_64__)
-static fp_except_t allmask = FP_X_INV|FP_X_OFL|FP_X_UFL|FP_X_DZ|FP_X_IMP;
-#else
-static fp_except_t allmask = FP_X_INV|FP_X_OFL|FP_X_UFL|FP_X_DZ|FP_X_IMP|FP_X_DNML;
diff --git a/www/firefox/files/patch-bug788955 b/www/firefox/files/patch-bug788955
index 39a8cd7ff70d..57c5f12d7ed4 100644
--- a/www/firefox/files/patch-bug788955
+++ b/www/firefox/files/patch-bug788955
@@ -26,16 +26,6 @@ index 6a9be4b..d2e49e3 100755
add_makefiles "
memory/jemalloc/Makefile
"
---- config/autoconf.mk.in
-+++ config/autoconf.mk.in
-@@ -74,6 +74,7 @@ MOZ_JSDEBUGGER = @MOZ_JSDEBUGGER@
- MOZ_IPDL_TESTS = @MOZ_IPDL_TESTS@
- MOZ_MEMORY = @MOZ_MEMORY@
- MOZ_JEMALLOC = @MOZ_JEMALLOC@
-+MOZ_NATIVE_JEMALLOC = @MOZ_NATIVE_JEMALLOC@
- MOZ_PROFILING = @MOZ_PROFILING@
- MOZ_ENABLE_PROFILER_SPS = @MOZ_ENABLE_PROFILER_SPS@
- MOZ_JPROF = @MOZ_JPROF@
diff --git configure.in configure.in
index bb05782..2f32516 100644
--- configure.in
diff --git a/www/firefox/files/patch-bug806139 b/www/firefox/files/patch-bug806139
new file mode 100644
index 000000000000..56791e71fb61
--- /dev/null
+++ b/www/firefox/files/patch-bug806139
@@ -0,0 +1,29 @@
+--- content/html/content/public/nsHTMLMediaElement.h~
++++ content/html/content/public/nsHTMLMediaElement.h
+@@ -311,7 +311,7 @@ public:
+ static bool IsH264Enabled();
+ static bool IsH264Type(const nsACString& aType);
+ static const char gH264Types[3][16];
+- static char const *const gH264Codecs[7];
++ static char const *const gH264Codecs[9];
+ #endif
+
+ #ifdef MOZ_MEDIA_PLUGINS
+--- content/html/content/src/nsHTMLMediaElement.cpp~
++++ content/html/content/src/nsHTMLMediaElement.cpp
+@@ -2114,12 +2114,14 @@ const char nsHTMLMediaElement::gH264Type
+ "video/quicktime",
+ };
+
+-char const *const nsHTMLMediaElement::gH264Codecs[7] = {
++char const *const nsHTMLMediaElement::gH264Codecs[9] = {
+ "avc1.42E01E",
+ "avc1.42001E",
+ "avc1.58A01E",
+ "avc1.4D401E",
+ "avc1.64001E",
++ "avc1.64001F",
++ "mp4v.20.3",
+ "mp4a.40.2",
+ nullptr
+ };
diff --git a/www/firefox/files/patch-js-src-configure.in b/www/firefox/files/patch-js-src-js-confdefs.h.in
index b3ed4d332e2b..cb032237b2cc 100644
--- a/www/firefox/files/patch-js-src-configure.in
+++ b/www/firefox/files/patch-js-src-js-confdefs.h.in
@@ -1,6 +1,6 @@
---- js/src/configure.in.orig 2012-02-22 17:06:28.000000000 +0100
-+++ js/src/configure.in 2012-03-07 21:03:11.000000000 +0100
-@@ -5946,6 +5946,7 @@ _EGREP_PATTERN="${_EGREP_PATTERN}dummy_n
+--- js/src/js-confdefs.h.in~
++++ js/src/js-confdefs.h.in
+@@ -12,6 +12,7 @@
* C++ implementations should define these macros only when __STDC_LIMIT_MACROS
* is defined before <stdint.h> is included. */
#define __STDC_LIMIT_MACROS