diff options
author | bapt <bapt@FreeBSD.org> | 2014-08-04 17:11:25 +0800 |
---|---|---|
committer | bapt <bapt@FreeBSD.org> | 2014-08-04 17:11:25 +0800 |
commit | 29ca14298ef0db26d8ef8810f35a8e8d4368e12f (patch) | |
tree | 1e9acf477fa72cf7c888cc484c96bd4f207a487a /www/firefox | |
parent | 95cd0aca7d833ed9707fa1bc2d6528f8ed54c76d (diff) | |
download | freebsd-ports-gnome-29ca14298ef0db26d8ef8810f35a8e8d4368e12f.tar.gz freebsd-ports-gnome-29ca14298ef0db26d8ef8810f35a8e8d4368e12f.tar.zst freebsd-ports-gnome-29ca14298ef0db26d8ef8810f35a8e8d4368e12f.zip |
Update mozilla ports:
- firefox 31.0
- firefox-esr 24.7.0
- libxul 24.7.0
- seamonkey 2.26.1
- thunderbird 31.0
Among changes:
- add workaround for crash with openldap on thunderbird and seamonkey [1]
- add crashfix for architectures with strict alignmentment
- backport crashfix with system sqlite/nss on firefox-esr and thunderbird
- restore hooking jemalloc in sqlite on freebsd 10+
- fix thunderbird build with -jN [2]
- respect MAKE_JOBS_NUMBER regardless of kern.smp.cpus [2]
- define CPE_URI for nspr/nss and firefox/thunderbird/seamonkey
- require recent gstreamer1-libav i386 crashfix
- add DTRACE option for use with DTraceToolkit (js_flowtime.d, js_who.d, etc)
PR: 165263 [1]
PR: 184630 [2]
Submitted by: Jan Beich
Diffstat (limited to 'www/firefox')
-rw-r--r-- | www/firefox/Makefile | 15 | ||||
-rw-r--r-- | www/firefox/Makefile.options | 3 | ||||
-rw-r--r-- | www/firefox/distinfo | 4 | ||||
-rw-r--r-- | www/firefox/files/patch-bug1013882 | 73 | ||||
-rw-r--r-- | www/firefox/files/patch-bug1026499 | 68 | ||||
-rw-r--r-- | www/firefox/files/patch-bug1026828 | 20 | ||||
-rw-r--r-- | www/firefox/files/patch-bug1041381 | 12 | ||||
-rw-r--r-- | www/firefox/files/patch-bug1041795 | 48 | ||||
-rw-r--r-- | www/firefox/files/patch-bug702179 | 36 | ||||
-rw-r--r-- | www/firefox/files/patch-bug779713 | 77 | ||||
-rw-r--r-- | www/firefox/files/patch-bug826985 | 4 | ||||
-rw-r--r-- | www/firefox/files/patch-bug847568 | 6 | ||||
-rw-r--r-- | www/firefox/files/patch-bug893397 | 201 | ||||
-rw-r--r-- | www/firefox/files/patch-bug916589 | 35 | ||||
-rw-r--r-- | www/firefox/files/patch-bug962345 | 9 | ||||
-rw-r--r-- | www/firefox/files/patch-bug975397 | 73 | ||||
-rw-r--r-- | www/firefox/files/patch-ipc-chromium-Makefile.in | 11 | ||||
-rw-r--r-- | www/firefox/files/patch-z-bug517422 | 8 |
18 files changed, 345 insertions, 358 deletions
diff --git a/www/firefox/Makefile b/www/firefox/Makefile index c1b58eb7b498..09d96e9e4913 100644 --- a/www/firefox/Makefile +++ b/www/firefox/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= firefox -DISTVERSION= 30.0 -PORTREVISION= 2 +DISTVERSION= 31.0 PORTEPOCH= 1 CATEGORIES= www ipv6 MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \ @@ -13,15 +12,15 @@ DISTNAME= ${PORTNAME}-${DISTVERSION}.source MAINTAINER= gecko@FreeBSD.org COMMENT= Web browser based on the browser portion of Mozilla -BUILD_DEPENDS= nspr>=4.10.3:${PORTSDIR}/devel/nspr \ - nss>=3.16:${PORTSDIR}/security/nss \ - soundtouch>=1.7.0:${PORTSDIR}/audio/soundtouch \ +BUILD_DEPENDS= nspr>=4.10.6:${PORTSDIR}/devel/nspr \ + nss>=3.16.2:${PORTSDIR}/security/nss \ + soundtouch>=1.8.0:${PORTSDIR}/audio/soundtouch \ harfbuzz>=0.9.25:${PORTSDIR}/print/harfbuzz \ graphite2>=1.2.4:${PORTSDIR}/graphics/graphite2 \ libvorbis>=1.3.4:${PORTSDIR}/audio/libvorbis \ opus>=1.1:${PORTSDIR}/audio/opus \ libvpx>=1.3.0:${PORTSDIR}/multimedia/libvpx \ - sqlite3>=3.8.3.1:${PORTSDIR}/databases/sqlite3 \ + sqlite3>=3.8.4.2:${PORTSDIR}/databases/sqlite3 \ ${PYTHON_PKGNAMEPREFIX}sqlite3>0:${PORTSDIR}/databases/py-sqlite3 \ v4l_compat>0:${PORTSDIR}/multimedia/v4l_compat \ zip:${PORTSDIR}/archivers/zip \ @@ -78,11 +77,11 @@ CXXFLAGS+= -O1 .endif .if ${PORT_OPTIONS:MALSA} -BUILD_DEPENDS+= alsa-lib>=1.0.27.2_1:${PORTSDIR}/audio/alsa-lib +RUN_DEPENDS+= alsa-lib>=1.0.27.2_1:${PORTSDIR}/audio/alsa-lib .endif .if ${PORT_OPTIONS:MGSTREAMER} -BUILD_DEPENDS+= gstreamer1-libav>=1.2.4:${PORTSDIR}/multimedia/gstreamer1-libav +RUN_DEPENDS+= gstreamer1-libav>=1.2.4_1:${PORTSDIR}/multimedia/gstreamer1-libav .endif post-extract: diff --git a/www/firefox/Makefile.options b/www/firefox/Makefile.options index 22c59d7d5bda..d7db550caedc 100644 --- a/www/firefox/Makefile.options +++ b/www/firefox/Makefile.options @@ -1,12 +1,13 @@ # -*- makefile-bsdmake -*- -OPTIONS_DEFINE+= DBUS DEBUG GCONF GIO GNOMEUI GNOMEVFS2 GSTREAMER \ +OPTIONS_DEFINE+= DBUS DEBUG DTRACE GCONF GIO GNOMEUI GNOMEVFS2 GSTREAMER \ LIBPROXY LOGGING OPTIMIZED_CFLAGS PGO PROFILE TEST OPTIONS_DEFAULT+= ALSA DBUS GIO GSTREAMER LOGGING OPTIMIZED_CFLAGS OPTIONS_MULTI+= AUDIO OPTIONS_MULTI_AUDIO= ALSA PULSEAUDIO +DTRACE_DESC?= Build with DTrace probes # move to bsd.options.desc.mk ENIGMAIL_DESC?= Enigmail extension GIO_DESC?= GIO for file I/O # move to bsd.options.desc.mk GNOMEUI_DESC?= libgnomeui support module diff --git a/www/firefox/distinfo b/www/firefox/distinfo index 1170517eb1b6..49e93b662165 100644 --- a/www/firefox/distinfo +++ b/www/firefox/distinfo @@ -1,2 +1,2 @@ -SHA256 (firefox-30.0.source.tar.bz2) = 1e95740a8cf7095e210fb6a2313c4d0fba4fdf44ee7c327d01f202638403c22c -SIZE (firefox-30.0.source.tar.bz2) = 143171952 +SHA256 (firefox-31.0.source.tar.bz2) = 95c789f2f171c4c7bd832999a22bfa9461ac47ba33e97a46392c90e576baf9db +SIZE (firefox-31.0.source.tar.bz2) = 147507120 diff --git a/www/firefox/files/patch-bug1013882 b/www/firefox/files/patch-bug1013882 index 14b1e81df5b1..86dc379fe50f 100644 --- a/www/firefox/files/patch-bug1013882 +++ b/www/firefox/files/patch-bug1013882 @@ -1,14 +1,69 @@ ---- browser/installer/package-manifest.in~ +diff --git b2g/installer/Makefile.in b2g/installer/Makefile.in +index 754312a..c69904c 100644 +--- b2g/installer/Makefile.in ++++ b2g/installer/Makefile.in +@@ -63,6 +63,10 @@ ifneq (,$(filter rtsp,$(NECKO_PROTOCOLS))) + DEFINES += -DMOZ_RTSP + endif + ++ifdef MOZ_DEBUG ++DEFINES += -DMOZ_DEBUG=1 ++endif ++ + ifdef GKMEDIAS_SHARED_LIBRARY + DEFINES += -DGKMEDIAS_SHARED_LIBRARY + endif +diff --git b2g/installer/package-manifest.in b2g/installer/package-manifest.in +index 17d433c..0416187 100644 +--- b2g/installer/package-manifest.in ++++ b2g/installer/package-manifest.in +@@ -576,7 +576,7 @@ + @BINPATH@/components/MozKeyboard.js + @BINPATH@/components/InputMethod.manifest + +-#ifdef MOZ_DEBUG ++#if defined(ENABLE_TESTS) && defined(MOZ_DEBUG) + @BINPATH@/components/TestInterfaceJS.js + @BINPATH@/components/TestInterfaceJS.manifest + #endif +diff --git browser/installer/package-manifest.in browser/installer/package-manifest.in +index b509fd4..195345c 100644 +--- browser/installer/package-manifest.in +++ browser/installer/package-manifest.in -@@ -573,11 +573,6 @@ +@@ -583,7 +583,7 @@ @BINPATH@/components/MozKeyboard.js @BINPATH@/components/InputMethod.manifest -#ifdef MOZ_DEBUG --@BINPATH@/components/TestInterfaceJS.js --@BINPATH@/components/TestInterfaceJS.manifest --#endif -- - ; Modules - @BINPATH@/browser/modules/* - @BINPATH@/modules/* ++#if defined(ENABLE_TESTS) && defined(MOZ_DEBUG) + @BINPATH@/components/TestInterfaceJS.js + @BINPATH@/components/TestInterfaceJS.manifest + #endif +diff --git mobile/android/installer/Makefile.in mobile/android/installer/Makefile.in +index 96dceab..3528ad6 100644 +--- mobile/android/installer/Makefile.in ++++ mobile/android/installer/Makefile.in +@@ -41,6 +41,10 @@ BINPATH = bin + endif + DEFINES += -DBINPATH=$(BINPATH) + ++ifdef MOZ_DEBUG ++DEFINES += -DMOZ_DEBUG=1 ++endif ++ + ifdef ENABLE_MARIONETTE + DEFINES += -DENABLE_MARIONETTE=1 + endif +diff --git mobile/android/installer/package-manifest.in mobile/android/installer/package-manifest.in +index 994580b..cf142df 100644 +--- mobile/android/installer/package-manifest.in ++++ mobile/android/installer/package-manifest.in +@@ -440,7 +440,7 @@ + @BINPATH@/components/dom_webspeechsynth.xpt + #endif + +-#ifdef MOZ_DEBUG ++#if defined(ENABLE_TESTS) && defined(MOZ_DEBUG) + @BINPATH@/components/TestInterfaceJS.js + @BINPATH@/components/TestInterfaceJS.manifest + #endif diff --git a/www/firefox/files/patch-bug1026499 b/www/firefox/files/patch-bug1026499 new file mode 100644 index 000000000000..e446f22c64cf --- /dev/null +++ b/www/firefox/files/patch-bug1026499 @@ -0,0 +1,68 @@ +commit 8d0efe4 +Author: Martin Husemann <martin@NetBSD.org> +Date: Wed Jun 18 18:12:22 2014 +0200 + + Bug 1026499 - Use MOZ_ALIGNED_DECL to declare union members in ipdl value declarations. r=bsmedberg +--- + ipc/ipdl/ipdl/cxx/ast.py | 7 ++++--- + ipc/ipdl/ipdl/cxx/cgen.py | 5 ++++- + ipc/ipdl/ipdl/lower.py | 2 +- + 4 files changed, 10 insertions(+), 5 deletions(-) + +diff --git ipc/ipdl/ipdl/cxx/ast.py ipc/ipdl/ipdl/cxx/ast.py +index 3180a65..c2d945b 100644 +--- ipc/ipdl/ipdl/cxx/ast.py ++++ ipc/ipdl/ipdl/cxx/ast.py +@@ -336,12 +336,13 @@ Type.VOID = Type('void') + Type.VOIDPTR = Type('void', ptr=1) + + class TypeArray(Node): +- def __init__(self, basetype, nmemb): +- '''the type |basetype DECLNAME[nmemb]|. |nmemb| is an Expr''' ++ def __init__(self, basetype, nmemb, alignType): ++ '''the type |basetype DECLNAME[nmemb]|. |nmemb| is an Expr, |alignType| is a type''' + self.basetype = basetype + self.nmemb = nmemb ++ self.alignType = alignType + def __deepcopy__(self, memo): +- return TypeArray(deepcopy(self.basetype, memo), nmemb) ++ return TypeArray(deepcopy(self.basetype, memo), nmemb, alignType) + + class TypeEnum(Node): + def __init__(self, name=None): +diff --git ipc/ipdl/ipdl/cxx/cgen.py ipc/ipdl/ipdl/cxx/cgen.py +index 48b0988..bc914cf 100644 +--- ipc/ipdl/ipdl/cxx/cgen.py ++++ ipc/ipdl/ipdl/cxx/cgen.py +@@ -101,6 +101,7 @@ class CxxCodeGen(CodePrinter, Visitor): + def visitDecl(self, d): + # C-syntax arrays make code generation much more annoying + if isinstance(d.type, TypeArray): ++ self.write('MOZ_ALIGNED_DECL(') + d.type.basetype.accept(self) + else: + d.type.accept(self) +@@ -111,7 +112,9 @@ class CxxCodeGen(CodePrinter, Visitor): + if isinstance(d.type, TypeArray): + self.write('[') + d.type.nmemb.accept(self) +- self.write(']') ++ self.write('], MOZ_ALIGNOF(') ++ d.type.alignType.accept(self) ++ self.write('))') + + def visitParam(self, p): + self.visitDecl(p) +diff --git ipc/ipdl/ipdl/lower.py ipc/ipdl/ipdl/lower.py +index e97a34c..9360f3c 100644 +--- ipc/ipdl/ipdl/lower.py ++++ ipc/ipdl/ipdl/lower.py +@@ -768,7 +768,7 @@ IPDL union type.""" + if self.recursive: + return self.ptrToType() + else: +- return TypeArray(Type('char'), ExprSizeof(self.internalType())) ++ return TypeArray(Type('char'), ExprSizeof(self.internalType()), self.internalType()) + + def unionValue(self): + # NB: knows that Union's storage C union is named |mValue| diff --git a/www/firefox/files/patch-bug1026828 b/www/firefox/files/patch-bug1026828 new file mode 100644 index 000000000000..69e79f5ac560 --- /dev/null +++ b/www/firefox/files/patch-bug1026828 @@ -0,0 +1,20 @@ +diff --git storage/src/moz.build storage/src/moz.build +index 4cd2551..5c40536 100644 +--- storage/src/moz.build ++++ storage/src/moz.build +@@ -50,11 +50,14 @@ FINAL_LIBRARY = 'storagecomps' + # (such as NSS) might trigger an initialization of sqlite and allocation + # of memory using the default allocator, prior to the storage service + # registering its allocator, causing memory management failures (bug 938730). ++# However, this is not an issue if both the jemalloc allocator and the default ++# allocator are the same thing. + # + # Note: On Windows our sqlite build assumes we use jemalloc. If you disable + # MOZ_STORAGE_MEMORY on Windows, you will also need to change the "ifdef + # MOZ_MEMORY" options in db/sqlite3/src/Makefile.in. +-if CONFIG['MOZ_MEMORY'] and not CONFIG['MOZ_NATIVE_SQLITE']: ++if CONFIG['MOZ_MEMORY'] and (not CONFIG['MOZ_NATIVE_SQLITE'] ++ or CONFIG['MOZ_NATIVE_JEMALLOC']): + if CONFIG['OS_TARGET'] != 'Android': + DEFINES['MOZ_STORAGE_MEMORY'] = True + diff --git a/www/firefox/files/patch-bug1041381 b/www/firefox/files/patch-bug1041381 new file mode 100644 index 000000000000..ef90b7b00c3f --- /dev/null +++ b/www/firefox/files/patch-bug1041381 @@ -0,0 +1,12 @@ +diff --git config/rules.mk config/rules.mk +index 1dee8c3..4d67eda 100644 +--- config/rules.mk ++++ config/rules.mk +@@ -822,6 +822,7 @@ endif + ifdef DTRACE_PROBE_OBJ + EXTRA_DEPS += $(DTRACE_PROBE_OBJ) + OBJS += $(DTRACE_PROBE_OBJ) ++EXCLUDED_OBJS += $(DTRACE_PROBE_OBJ) + endif + + $(filter %.$(LIB_SUFFIX),$(LIBRARY)): $(OBJS) $(EXTRA_DEPS) $(GLOBAL_DEPS) diff --git a/www/firefox/files/patch-bug1041795 b/www/firefox/files/patch-bug1041795 new file mode 100644 index 000000000000..3e92884412fb --- /dev/null +++ b/www/firefox/files/patch-bug1041795 @@ -0,0 +1,48 @@ +diff --git config/rules.mk config/rules.mk +index 4d67eda..783942f 100644 +--- config/rules.mk ++++ config/rules.mk +@@ -858,7 +858,7 @@ ifdef DTRACE_PROBE_OBJ + ifndef DTRACE_LIB_DEPENDENT + NON_DTRACE_OBJS := $(filter-out $(DTRACE_PROBE_OBJ),$(OBJS)) + $(DTRACE_PROBE_OBJ): $(NON_DTRACE_OBJS) +- dtrace -G -C -s $(MOZILLA_DTRACE_SRC) -o $(DTRACE_PROBE_OBJ) $(NON_DTRACE_OBJS) ++ dtrace -x nolibs -G -C -s $(MOZILLA_DTRACE_SRC) -o $(DTRACE_PROBE_OBJ) $(NON_DTRACE_OBJS) + endif + endif + endif +@@ -876,7 +876,7 @@ ifndef INCREMENTAL_LINKER + endif + ifdef DTRACE_LIB_DEPENDENT + ifndef XP_MACOSX +- dtrace -G -C -s $(MOZILLA_DTRACE_SRC) -o $(DTRACE_PROBE_OBJ) $(shell $(EXPAND_LIBS) $(MOZILLA_PROBE_LIBS)) ++ dtrace -x nolibs -G -C -s $(MOZILLA_DTRACE_SRC) -o $(DTRACE_PROBE_OBJ) $(shell $(EXPAND_LIBS) $(MOZILLA_PROBE_LIBS)) + endif + $(EXPAND_MKSHLIB) $(SHLIB_LDSTARTFILE) $(OBJS) $(SUB_SHLOBJS) $(DTRACE_PROBE_OBJ) $(MOZILLA_PROBE_LIBS) $(RESFILE) $(LDFLAGS) $(WRAP_LDFLAGS) $(SHARED_LIBRARY_LIBS) $(EXTRA_DSO_LDOPTS) $(MOZ_GLUE_LDFLAGS) $(OS_LIBS) $(EXTRA_LIBS) $(DEF_FILE) $(SHLIB_LDENDFILE) $(if $(LIB_IS_C_ONLY),,$(STLPORT_LIBS)) + @$(RM) $(DTRACE_PROBE_OBJ) +diff --git js/src/Makefile.in js/src/Makefile.in +index 28ca5e8..96793d7 100644 +--- js/src/Makefile.in ++++ js/src/Makefile.in +@@ -342,7 +342,7 @@ endif + + ifdef HAVE_DTRACE + $(CURDIR)/javascript-trace.h: $(srcdir)/devtools/javascript-trace.d +- dtrace -h -s $(srcdir)/devtools/javascript-trace.d -o javascript-trace.h.in ++ dtrace -x nolibs -h -s $(srcdir)/devtools/javascript-trace.d -o javascript-trace.h.in + sed -e 's/if _DTRACE_VERSION/ifdef INCLUDE_MOZILLA_DTRACE/' \ + -e '/const/!s/char \*/const char */g' \ + javascript-trace.h.in > javascript-trace.h +diff --git probes/Makefile.in probes/Makefile.in +index 6d18f34..deec83f 100644 +--- probes/Makefile.in ++++ probes/Makefile.in +@@ -7,7 +7,7 @@ export:: $(DIST)/include/mozilla-trace.h + + # Replace _DTRACE_VERSION with INCLUDE_MOZILLA_DTRACE + $(DIST)/include/mozilla-trace.h: mozilla-trace.d Makefile +- dtrace -h -s $(srcdir)/mozilla-trace.d -o mozilla-trace.h.tmp ++ dtrace -x nolibs -h -s $(srcdir)/mozilla-trace.d -o mozilla-trace.h.tmp + sed -e 's/if _DTRACE_VERSION/ifdef INCLUDE_MOZILLA_DTRACE/' \ + mozilla-trace.h.tmp > $(DIST)/include/mozilla-trace.h + rm mozilla-trace.h.tmp diff --git a/www/firefox/files/patch-bug702179 b/www/firefox/files/patch-bug702179 new file mode 100644 index 000000000000..d7b90a082519 --- /dev/null +++ b/www/firefox/files/patch-bug702179 @@ -0,0 +1,36 @@ +commit 6ddaacd +Author: Ginn Chen <ginn.chen@oracle.com> +Date: Wed Nov 30 07:23:46 2011 +0800 + + Bug 702179 dtrace probes are not installed on Solaris with static js lib r=glandium +--- + configure.in | 2 +- + js/src/Makefile.in | 2 -- + 2 files changed, 1 insertion(+), 3 deletions(-) + +diff --git configure.in configure.in +index 66549c1..75b848d 100644 +--- configure.in ++++ configure.in +@@ -966,7 +966,7 @@ MOZ_BZ2_LIBS='$(call EXPAND_LIBNAME_PATH,bz2,$(DEPTH)/modules/libbz2/src)' + MOZ_PNG_CFLAGS="-I$_objdir/dist/include" # needed for freetype compilation + MOZ_PNG_LIBS='$(call EXPAND_LIBNAME_PATH,mozpng,$(DEPTH)/media/libpng)' + +-MOZ_JS_STATIC_LIBS='$(call EXPAND_LIBNAME_PATH,js_static,$(LIBXUL_DIST)/lib)' ++MOZ_JS_STATIC_LIBS='$(call EXPAND_LIBNAME_PATH,js_static,$(DEPTH)/js/src)' + MOZ_JS_SHARED_LIBS='$(call EXPAND_LIBNAME_PATH,mozjs,$(LIBXUL_DIST)/lib)' + MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin -Wl,-rpath-link,$(prefix)/lib' + XPCOM_FROZEN_LDOPTS='$(call EXPAND_LIBNAME_PATH,xul mozalloc,$(LIBXUL_DIST)/bin)' +diff --git js/src/Makefile.in js/src/Makefile.in +index e28160a..28ca5e8 100644 +--- js/src/Makefile.in ++++ js/src/Makefile.in +@@ -18,8 +18,6 @@ run_for_side_effects := $(shell echo 'MAKE: $(MAKE)') + STATIC_LIBRARY_NAME = js_static + LIBS = $(NSPR_LIBS) + +-DIST_INSTALL = 1 +- + ifdef JS_STANDALONE + SHARED_LIBRARY_LIBS += $(call EXPAND_LIBNAME_PATH,mfbt,$(DEPTH)/mfbt) + ifndef MOZ_NATIVE_ZLIB diff --git a/www/firefox/files/patch-bug779713 b/www/firefox/files/patch-bug779713 new file mode 100644 index 000000000000..e4643f4422cb --- /dev/null +++ b/www/firefox/files/patch-bug779713 @@ -0,0 +1,77 @@ +diff --git mfbt/Alignment.h mfbt/Alignment.h +index e0843ca..353ec36 100644 +--- mfbt/Alignment.h ++++ mfbt/Alignment.h +@@ -9,11 +9,20 @@ + #ifndef mozilla_Alignment_h + #define mozilla_Alignment_h + ++#include "mozilla/Attributes.h" ++ + #include <stddef.h> + #include <stdint.h> + + namespace mozilla { + ++#if defined(MOZ_HAVE_CXX11_ALIGNAS) ++#define MOZ_ALIGNOF(T) alignof(T) ++#elif defined(__GNUC__) ++#define MOZ_ALIGNOF(T) __alignof__(T) ++#elif defined(_MSC_VER) ++#define MOZ_ALIGNOF(T) __alignof(T) ++#else + /* + * This class, and the corresponding macro MOZ_ALIGNOF, figures out how many + * bytes of alignment a given type needs. +@@ -32,6 +41,7 @@ public: + }; + + #define MOZ_ALIGNOF(T) mozilla::AlignmentFinder<T>::alignment ++#endif + + /* + * Declare the MOZ_ALIGNED_DECL macro for declaring aligned types. +@@ -43,7 +53,10 @@ public: + * will declare a two-character array |arr| aligned to 8 bytes. + */ + +-#if defined(__GNUC__) ++#if defined(MOZ_HAVE_CXX11_ALIGNAS) ++# define MOZ_ALIGNED_DECL(_type, _align) \ ++ alignas(_align) _type ++#elif defined(__GNUC__) + # define MOZ_ALIGNED_DECL(_type, _align) \ + _type __attribute__((aligned(_align))) + #elif defined(_MSC_VER) +diff --git mfbt/Attributes.h mfbt/Attributes.h +index d317766..ddb13da 100644 +--- mfbt/Attributes.h ++++ mfbt/Attributes.h +@@ -54,6 +54,9 @@ + # ifndef __has_extension + # define __has_extension __has_feature /* compatibility, for older versions of clang */ + # endif ++# if __has_extension(cxx_alignas) ++# define MOZ_HAVE_CXX11_ALIGNAS ++# endif + # if __has_extension(cxx_constexpr) + # define MOZ_HAVE_CXX11_CONSTEXPR + # endif +@@ -75,6 +78,9 @@ + # endif + #elif defined(__GNUC__) + # if defined(__GXX_EXPERIMENTAL_CXX0X__) || __cplusplus >= 201103L ++# if MOZ_GCC_VERSION_AT_LEAST(4, 8, 0) ++# define MOZ_HAVE_CXX11_ALIGNAS ++# endif + # if MOZ_GCC_VERSION_AT_LEAST(4, 7, 0) + # define MOZ_HAVE_CXX11_OVERRIDE + # define MOZ_HAVE_CXX11_FINAL final +@@ -96,6 +102,7 @@ + # define MOZ_HAVE_NORETURN __attribute__((noreturn)) + #elif defined(_MSC_VER) + # if _MSC_VER >= 1800 ++# define MOZ_HAVE_CXX11_ALIGNAS + # define MOZ_HAVE_CXX11_DELETE + # endif + # if _MSC_VER >= 1700 diff --git a/www/firefox/files/patch-bug826985 b/www/firefox/files/patch-bug826985 index 3c633bbb466c..b8eee831f66d 100644 --- a/www/firefox/files/patch-bug826985 +++ b/www/firefox/files/patch-bug826985 @@ -151,8 +151,8 @@ index d46b5aa..e452223 100644 ], diff --git toolkit/library/Makefile.in toolkit/library/Makefile.in index 9c16ffa..1db3794 100644 ---- toolkit/library/Makefile.in -+++ toolkit/library/Makefile.in +--- toolkit/library/libxul.mk ++++ toolkit/library/libxul.mk @@ -182,6 +182,10 @@ endif EXTRA_DSO_LDOPTS += $(call EXPAND_LIBNAME_PATH,gkmedias,$(DIST)/lib) diff --git a/www/firefox/files/patch-bug847568 b/www/firefox/files/patch-bug847568 index aa188f985b8b..1504654a4341 100644 --- a/www/firefox/files/patch-bug847568 +++ b/www/firefox/files/patch-bug847568 @@ -187,10 +187,10 @@ index 1cacbd7..f5d72bb 100644 # Generate the include file containing compact, static definitions # for effective TLD data. etld_data.inc: $(srcdir)/prepare_tlds.py $(srcdir)/effective_tld_names.dat -diff --git toolkit/library/Makefile.in toolkit/library/Makefile.in +diff --git toolkit/library/libxul.mk toolkit/library/libxul.mk index 67f0db9..d42137a 100644 ---- toolkit/library/Makefile.in -+++ toolkit/library/Makefile.in +--- toolkit/library/libxul.mk ++++ toolkit/library/libxul.mk @@ -89,6 +89,14 @@ ifndef MOZ_TREE_PIXMAN EXTRA_DSO_LDOPTS += $(MOZ_PIXMAN_LIBS) endif diff --git a/www/firefox/files/patch-bug893397 b/www/firefox/files/patch-bug893397 deleted file mode 100644 index 24ff54b9bc99..000000000000 --- a/www/firefox/files/patch-bug893397 +++ /dev/null @@ -1,201 +0,0 @@ -diff --git configure.in configure.in -index 549ad06..2878d9f 100644 ---- configure.in -+++ configure.in -@@ -8091,7 +8091,7 @@ case "$OS_TARGET" in - NECKO_WIFI=1 - fi - ;; -- Darwin|SunOS|WINNT) -+ Darwin|FreeBSD|SunOS|WINNT) - NECKO_WIFI=1 - ;; - Linux) -diff --git netwerk/wifi/moz.build netwerk/wifi/moz.build -index 07b01de..11706af 100644 ---- netwerk/wifi/moz.build -+++ netwerk/wifi/moz.build -@@ -35,6 +35,10 @@ if CONFIG['OS_ARCH'] == 'Darwin': - UNIFIED_SOURCES += [ - 'osx_corewlan.mm', - ] -+elif CONFIG['OS_ARCH'] == 'FreeBSD': -+ UNIFIED_SOURCES += [ -+ 'nsWifiScannerFreeBSD.cpp', -+ ] - elif CONFIG['OS_ARCH'] == 'WINNT': - UNIFIED_SOURCES += [ - 'nsWifiScannerWin.cpp', -diff --git netwerk/wifi/nsWifiScannerFreeBSD.cpp netwerk/wifi/nsWifiScannerFreeBSD.cpp -new file mode 100644 -index 0000000..80d4cb6 ---- /dev/null -+++ netwerk/wifi/nsWifiScannerFreeBSD.cpp -@@ -0,0 +1,167 @@ -+/* This Source Code Form is subject to the terms of the Mozilla Public -+ * License, v. 2.0. If a copy of the MPL was not distributed with this -+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -+ -+// Developed by J.R. Oldroyd <fbsd@opal.com>, December 2012. -+ -+// For FreeBSD we use the getifaddrs(3) to obtain the list of interfaces -+// and then check for those with an 802.11 media type and able to return -+// a list of stations. This is similar to ifconfig(8). -+ -+#include <sys/types.h> -+#include <sys/ioctl.h> -+#include <sys/socket.h> -+#include <net/if.h> -+#include <net/if_media.h> -+#include <net80211/ieee80211_ioctl.h> -+ -+#include <ifaddrs.h> -+#include <string.h> -+#include <unistd.h> -+ -+#include "nsWifiAccessPoint.h" -+ -+using namespace mozilla; -+ -+static nsresult -+FreeBSDGetAccessPointData(nsCOMArray<nsWifiAccessPoint> &accessPoints) -+{ -+ // get list of interfaces -+ struct ifaddrs *ifal; -+ if (getifaddrs(&ifal) < 0) { -+ return NS_ERROR_FAILURE; -+ } -+ -+ accessPoints.Clear(); -+ -+ // loop through the interfaces -+ nsresult rv = NS_ERROR_FAILURE; -+ struct ifaddrs *ifa; -+ for (ifa = ifal; ifa; ifa = ifa->ifa_next) { -+ // limit to one interface per address -+ if (ifa->ifa_addr->sa_family != AF_LINK) { -+ continue; -+ } -+ -+ // store interface name in socket structure -+ struct ifreq ifr; -+ memset(&ifr, 0, sizeof(ifr)); -+ strncpy(ifr.ifr_name, ifa->ifa_name, sizeof(ifr.ifr_name)); -+ ifr.ifr_addr.sa_family = AF_LOCAL; -+ -+ // open socket to interface -+ int s = socket(ifr.ifr_addr.sa_family, SOCK_DGRAM, 0); -+ if (s < 0) { -+ continue; -+ } -+ -+ // clear interface media structure -+ struct ifmediareq ifmr; -+ memset(&ifmr, 0, sizeof(ifmr)); -+ strncpy(ifmr.ifm_name, ifa->ifa_name, sizeof(ifmr.ifm_name)); -+ -+ // get interface media information -+ if (ioctl(s, SIOCGIFMEDIA, (caddr_t)&ifmr) < 0) { -+ close(s); -+ continue; -+ } -+ -+ // check interface is a WiFi interface -+ if (IFM_TYPE(ifmr.ifm_active) != IFM_IEEE80211) { -+ close(s); -+ continue; -+ } -+ -+ // perform WiFi scan -+ struct ieee80211req i802r; -+ char iscanbuf[32*1024]; -+ memset(&i802r, 0, sizeof(i802r)); -+ strncpy(i802r.i_name, ifa->ifa_name, sizeof(i802r.i_name)); -+ i802r.i_type = IEEE80211_IOC_SCAN_RESULTS; -+ i802r.i_data = iscanbuf; -+ i802r.i_len = sizeof(iscanbuf); -+ if (ioctl(s, SIOCG80211, &i802r) < 0) { -+ close(s); -+ continue; -+ } -+ -+ // close socket -+ close(s); -+ -+ // loop through WiFi networks and build geoloc-lookup structure -+ char *vsr = (char *) i802r.i_data; -+ unsigned len = i802r.i_len; -+ while (len >= sizeof(struct ieee80211req_scan_result)) { -+ struct ieee80211req_scan_result *isr = -+ (struct ieee80211req_scan_result *) vsr; -+ -+ // determine size of this entry -+ char *id; -+ int idlen; -+ if (isr->isr_meshid_len) { -+ id = vsr + isr->isr_ie_off + isr->isr_ssid_len; -+ idlen = isr->isr_meshid_len; -+ } else { -+ id = vsr + isr->isr_ie_off; -+ idlen = isr->isr_ssid_len; -+ } -+ -+ // copy network data -+ char ssid[IEEE80211_NWID_LEN+1]; -+ strncpy(ssid, id, idlen); -+ ssid[idlen] = '\0'; -+ nsWifiAccessPoint *ap = new nsWifiAccessPoint(); -+ ap->setSSID(ssid, strlen(ssid)); -+ ap->setMac(isr->isr_bssid); -+ ap->setSignal(isr->isr_rssi); -+ accessPoints.AppendObject(ap); -+ rv = NS_OK; -+ -+ // log the data -+ LOG(( "FreeBSD access point: " -+ "SSID: %s, MAC: %02x-%02x-%02x-%02x-%02x-%02x, " -+ "Strength: %d, Channel: %dMHz\n", -+ ssid, isr->isr_bssid[0], isr->isr_bssid[1], isr->isr_bssid[2], -+ isr->isr_bssid[3], isr->isr_bssid[4], isr->isr_bssid[5], -+ isr->isr_rssi, isr->isr_freq)); -+ -+ // increment pointers -+ len -= isr->isr_len; -+ vsr += isr->isr_len; -+ } -+ } -+ -+ freeifaddrs(ifal); -+ -+ return rv; -+} -+ -+nsresult -+nsWifiMonitor::DoScan() -+{ -+ // Regularly get the access point data. -+ -+ nsCOMArray<nsWifiAccessPoint> lastAccessPoints; -+ nsCOMArray<nsWifiAccessPoint> accessPoints; -+ -+ do { -+ nsresult rv = FreeBSDGetAccessPointData(accessPoints); -+ if (NS_FAILED(rv)) -+ return rv; -+ -+ bool accessPointsChanged = !AccessPointsEqual(accessPoints, lastAccessPoints); -+ ReplaceArray(lastAccessPoints, accessPoints); -+ -+ rv = CallWifiListeners(lastAccessPoints, accessPointsChanged); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ // wait for some reasonable amount of time. pref? -+ LOG(("waiting on monitor\n")); -+ -+ ReentrantMonitorAutoEnter mon(mReentrantMonitor); -+ mon.Wait(PR_SecondsToInterval(60)); -+ } -+ while (mKeepGoing); -+ -+ return NS_OK; -+} diff --git a/www/firefox/files/patch-bug916589 b/www/firefox/files/patch-bug916589 deleted file mode 100644 index c6c6c58c9175..000000000000 --- a/www/firefox/files/patch-bug916589 +++ /dev/null @@ -1,35 +0,0 @@ -diff --git media/mtransport/third_party/nrappkit/src/port/generic/include/sys/queue.h media/mtransport/third_party/nrappkit/src/port/generic/include/sys/queue.h -index 5b50785..7cf47d5 100644 ---- media/mtransport/third_party/nrappkit/src/port/generic/include/sys/queue.h -+++ media/mtransport/third_party/nrappkit/src/port/generic/include/sys/queue.h -@@ -33,9 +33,10 @@ - #ifndef _SYS_QUEUE_H_ - #define _SYS_QUEUE_H_ - --#if !defined(__FreeBSD__) && !defined(DARWIN) - #include <stddef.h> --#define __offsetof offsetof -+ -+#ifndef offsetof -+#define offsetof(type, field) ((size_t)(&((type *)0)->field)) - #endif - - #define STAILQ_FOREACH_SAFE(var, head, field, tvar) \ -@@ -43,8 +44,6 @@ - (var) && ((tvar) = STAILQ_NEXT((var), field), 1); \ - (var) = (tvar)) - --// #define __offsetof(type, field) ((size_t)(&((type *)0)->field)) -- - /* - * This file defines four types of data structures: singly-linked lists, - * singly-linked tail queues, lists and tail queues. -@@ -285,7 +284,7 @@ struct { \ - (STAILQ_EMPTY((head)) ? \ - NULL : \ - ((struct type *) \ -- ((char *)((head)->stqh_last) - __offsetof(struct type, field)))) -+ ((char *)((head)->stqh_last) - offsetof(struct type, field)))) - - #define STAILQ_NEXT(elm, field) ((elm)->field.stqe_next) - diff --git a/www/firefox/files/patch-bug962345 b/www/firefox/files/patch-bug962345 deleted file mode 100644 index 98bb02ffd8c3..000000000000 --- a/www/firefox/files/patch-bug962345 +++ /dev/null @@ -1,9 +0,0 @@ -diff --git config/system-headers config/system-headers -index 8803150..ae38d68 100644 ---- config/system-headers -+++ config/system-headers -@@ -1144,3 +1144,4 @@ unicode/utypes.h - #endif - libutil.h - unwind.h -+cairo-qt.h diff --git a/www/firefox/files/patch-bug975397 b/www/firefox/files/patch-bug975397 deleted file mode 100644 index 6257e53e772d..000000000000 --- a/www/firefox/files/patch-bug975397 +++ /dev/null @@ -1,73 +0,0 @@ -commit 2fe45fb -Author: L. David Baron <dbaron@dbaron.org> -Date: Wed Apr 2 22:56:19 2014 -0700 - - Bug 975397 - Call TrackImage when constructing a new nsStyleBorder. r=heycam - - I confirmed that the crashtest crashes in the harness without the patch. - - --HG-- - rename : layout/reftests/backgrounds/blue-32x32.png => layout/style/crashtests/blue-32x32.png ---- - layout/base/nsCSSRendering.cpp | 9 +++++++++ - layout/style/crashtests/blue-32x32.png | Bin 0 -> 110 bytes - layout/style/crashtests/border-image-visited-link.html | 10 ++++++++++ - layout/style/crashtests/crashtests.list | 1 + - 4 files changed, 20 insertions(+) - -diff --git layout/base/nsCSSRendering.cpp layout/base/nsCSSRendering.cpp -index d91309b..2d8bb46 100644 ---- layout/base/nsCSSRendering.cpp -+++ layout/base/nsCSSRendering.cpp -@@ -419,6 +419,10 @@ nsCSSRendering::PaintBorder(nsPresContext* aPresContext, - } - - nsStyleBorder newStyleBorder(*styleBorder); -+ // We could do something fancy to avoid the TrackImage/UntrackImage -+ // work, but it doesn't seem worth it. (We need to call TrackImage -+ // since we're not going through nsRuleNode::ComputeBorderData.) -+ newStyleBorder.TrackImage(aPresContext); - - NS_FOR_CSS_SIDES(side) { - newStyleBorder.SetBorderColor(side, -@@ -428,6 +432,11 @@ nsCSSRendering::PaintBorder(nsPresContext* aPresContext, - PaintBorderWithStyleBorder(aPresContext, aRenderingContext, aForFrame, - aDirtyRect, aBorderArea, newStyleBorder, - aStyleContext, aSkipSides); -+ -+ // We could do something fancy to avoid the TrackImage/UntrackImage -+ // work, but it doesn't seem worth it. (We need to call UntrackImage -+ // since we're not going through nsStyleBorder::Destroy.) -+ newStyleBorder.UntrackImage(aPresContext); - } - - void -diff --git layout/style/crashtests/blue-32x32.png layout/style/crashtests/blue-32x32.png -new file mode 100644 -index 0000000..deefd19 -Binary files /dev/null and layout/style/crashtests/blue-32x32.png differ -diff --git layout/style/crashtests/border-image-visited-link.html layout/style/crashtests/border-image-visited-link.html -new file mode 100644 -index 0000000..b6e3ae5 ---- /dev/null -+++ layout/style/crashtests/border-image-visited-link.html -@@ -0,0 +1,10 @@ -+<!DOCTYPE HTML> -+<title>border-image on link with visited styles</title> -+<style> -+ -+:link { color: blue } -+:visited { color: purple } -+:link, :visited { border: medium solid; border-image: url(blue-32x32.png) 4 4 4 4; } -+ -+</style> -+<a href="http://example.com/">test</a> -diff --git layout/style/crashtests/crashtests.list layout/style/crashtests/crashtests.list -index e414f28..acd709c3 100644 ---- layout/style/crashtests/crashtests.list -+++ layout/style/crashtests/crashtests.list -@@ -104,3 +104,4 @@ load 945048-1.html - load 972199-1.html - load 989965-1.html - load large_border_image_width.html -+load border-image-visited-link.html diff --git a/www/firefox/files/patch-ipc-chromium-Makefile.in b/www/firefox/files/patch-ipc-chromium-Makefile.in deleted file mode 100644 index fc5808594fb4..000000000000 --- a/www/firefox/files/patch-ipc-chromium-Makefile.in +++ /dev/null @@ -1,11 +0,0 @@ ---- ipc/chromium/Makefile.in~ -+++ ipc/chromium/Makefile.in -@@ -28,6 +28,8 @@ include $(topsrcdir)/config/rules.mk - - ifdef MOZ_NATIVE_LIBEVENT # { - -+OS_CPPFLAGS += $(filter %/compat, $(MOZ_LIBEVENT_CFLAGS)) -+ - export-preqs = \ - $(call mkdir_deps,$(CURDIR)/third_party/libevent) \ - $(NULL) diff --git a/www/firefox/files/patch-z-bug517422 b/www/firefox/files/patch-z-bug517422 index f1d0278a49af..17432a29775c 100644 --- a/www/firefox/files/patch-z-bug517422 +++ b/www/firefox/files/patch-z-bug517422 @@ -251,7 +251,7 @@ index 87db361..7947626 100644 +MOZ_NATIVE_SOUNDTOUCH=) + +if test -n "$MOZ_NATIVE_SOUNDTOUCH"; then -+ PKG_CHECK_MODULES(MOZ_SOUNDTOUCH, soundtouch >= 1.7.0) ++ PKG_CHECK_MODULES(MOZ_SOUNDTOUCH, soundtouch >= 1.8.0) + + AC_LANG_SAVE + AC_LANG_CPLUSPLUS @@ -423,10 +423,10 @@ index 00e77e7..55f48ab 100644 }, { 'dependencies': [ '<(DEPTH)/third_party/opus/opus.gyp:opus' -diff --git toolkit/library/Makefile.in toolkit/library/Makefile.in +diff --git toolkit/library/libxul.mk toolkit/library/libxul.mk index d42137a..695e75a8 100644 ---- toolkit/library/Makefile.in -+++ toolkit/library/Makefile.in +--- toolkit/library/libxul.mk ++++ toolkit/library/libxul.mk @@ -77,6 +77,34 @@ ifdef MOZ_NATIVE_HUNSPELL EXTRA_DSO_LDOPTS += $(MOZ_HUNSPELL_LIBS) endif |