aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Mk/Uses/gecko.mk10
-rw-r--r--Mk/bsd.gecko.mk25
-rw-r--r--mail/linux-thunderbird/Makefile2
-rw-r--r--mail/linux-thunderbird/distinfo4
-rw-r--r--mail/thunderbird-i18n/Makefile2
-rw-r--r--mail/thunderbird-i18n/distinfo220
-rw-r--r--mail/thunderbird/Makefile75
-rw-r--r--mail/thunderbird/distinfo8
-rw-r--r--mail/thunderbird/files/patch-bug10136753
-rw-r--r--mail/thunderbird/files/patch-bug101554711
-rw-r--r--mail/thunderbird/files/patch-bug102649968
-rw-r--r--mail/thunderbird/files/patch-bug102682820
-rw-r--r--mail/thunderbird/files/patch-bug104179548
-rw-r--r--mail/thunderbird/files/patch-bug292127232
-rw-r--r--mail/thunderbird/files/patch-bug70217936
-rw-r--r--mail/thunderbird/files/patch-bug77971375
-rw-r--r--mail/thunderbird/files/patch-bug78346314
-rw-r--r--mail/thunderbird/files/patch-bug803480102
-rw-r--r--mail/thunderbird/files/patch-bug807492628
-rw-r--r--mail/thunderbird/files/patch-bug81071668
-rw-r--r--mail/thunderbird/files/patch-bug82698552
-rw-r--r--mail/thunderbird/files/patch-bug847568 (renamed from mail/thunderbird/files/patch-z-bug847568)93
-rw-r--r--mail/thunderbird/files/patch-bug851992339
-rw-r--r--mail/thunderbird/files/patch-bug87615613
-rw-r--r--mail/thunderbird/files/patch-bug87879111
-rw-r--r--mail/thunderbird/files/patch-bug88618111
-rw-r--r--mail/thunderbird/files/patch-bug889699175
-rw-r--r--mail/thunderbird/files/patch-bug893397201
-rw-r--r--mail/thunderbird/files/patch-bug910875102
-rw-r--r--mail/thunderbird/files/patch-bug91621639
-rw-r--r--mail/thunderbird/files/patch-bug91658935
-rw-r--r--mail/thunderbird/files/patch-bug91817736
-rw-r--r--mail/thunderbird/files/patch-bug945046130
-rw-r--r--mail/thunderbird/files/patch-bug94656044
-rw-r--r--mail/thunderbird/files/patch-bug9612648
-rw-r--r--mail/thunderbird/files/patch-bug96181648
-rw-r--r--mail/thunderbird/files/patch-bug96234511
-rw-r--r--mail/thunderbird/files/patch-bug97563463
-rw-r--r--mail/thunderbird/files/patch-bug97745727
-rw-r--r--mail/thunderbird/files/patch-bug98134841
-rw-r--r--mail/thunderbird/files/patch-bug98584822
-rw-r--r--mail/thunderbird/files/patch-clang34-disable-stdcall4
-rw-r--r--mail/thunderbird/files/patch-config-baseconfig.mk4
-rw-r--r--mail/thunderbird/files/patch-mozilla-ipc-chromium-Makefile.in13
-rw-r--r--mail/thunderbird/files/patch-mozilla-ipc-chromium-src-base-message_pump_libevent.cc11
-rw-r--r--mail/thunderbird/files/patch-z-bug517422 (renamed from mail/thunderbird/files/patch-zz-bug517422)232
-rw-r--r--www/firefox-esr-i18n/Makefile2
-rw-r--r--www/firefox-esr-i18n/Makefile.option2
-rw-r--r--www/firefox-esr-i18n/distinfo356
-rw-r--r--www/firefox-esr/Makefile6
-rw-r--r--www/firefox-esr/distinfo4
-rw-r--r--www/firefox-esr/files/patch-bug102649968
-rw-r--r--www/firefox-esr/files/patch-bug104179570
-rw-r--r--www/firefox-esr/files/patch-bug70217935
-rw-r--r--www/firefox-esr/files/patch-bug77971372
-rw-r--r--www/firefox-esr/files/patch-bug93873035
-rw-r--r--www/firefox-esr/files/patch-ipc-chromium-Makefile.in13
-rw-r--r--www/firefox-esr/files/patch-ipc-chromium-src-base-message_pump_libevent.cc11
-rw-r--r--www/firefox-esr/files/patch-z-bug102682813
-rw-r--r--www/firefox-i18n/Makefile4
-rw-r--r--www/firefox-i18n/Makefile.lang29
-rw-r--r--www/firefox-i18n/Makefile.option11
-rw-r--r--www/firefox-i18n/distinfo348
-rw-r--r--www/firefox/Makefile15
-rw-r--r--www/firefox/Makefile.options3
-rw-r--r--www/firefox/distinfo4
-rw-r--r--www/firefox/files/patch-bug101388273
-rw-r--r--www/firefox/files/patch-bug102649968
-rw-r--r--www/firefox/files/patch-bug102682820
-rw-r--r--www/firefox/files/patch-bug104138112
-rw-r--r--www/firefox/files/patch-bug104179548
-rw-r--r--www/firefox/files/patch-bug70217936
-rw-r--r--www/firefox/files/patch-bug77971377
-rw-r--r--www/firefox/files/patch-bug8269854
-rw-r--r--www/firefox/files/patch-bug8475686
-rw-r--r--www/firefox/files/patch-bug893397201
-rw-r--r--www/firefox/files/patch-bug91658935
-rw-r--r--www/firefox/files/patch-bug9623459
-rw-r--r--www/firefox/files/patch-bug97539773
-rw-r--r--www/firefox/files/patch-ipc-chromium-Makefile.in11
-rw-r--r--www/firefox/files/patch-z-bug5174228
-rw-r--r--www/libxul/Makefile9
-rw-r--r--www/libxul/distinfo4
-rw-r--r--www/libxul/files/patch-bug102649968
-rw-r--r--www/libxul/files/patch-bug104179570
-rw-r--r--www/libxul/files/patch-bug70217935
-rw-r--r--www/libxul/files/patch-bug77971372
-rw-r--r--www/libxul/files/patch-bug93873035
-rw-r--r--www/libxul/files/patch-ipc-chromium-Makefile.in13
-rw-r--r--www/libxul/files/patch-ipc-chromium-src-base-message_pump_libevent.cc11
-rw-r--r--www/libxul/files/patch-z-bug102682813
-rw-r--r--www/libxul/files/pkg-deinstall.in28
-rw-r--r--www/libxul/files/pkg-install.in37
-rw-r--r--www/linux-firefox/Makefile2
-rw-r--r--www/linux-firefox/distinfo4
-rw-r--r--www/linux-seamonkey/Makefile2
-rw-r--r--www/linux-seamonkey/Makefile.common3
-rw-r--r--www/linux-seamonkey/distinfo4
-rw-r--r--www/seamonkey/Makefile15
-rw-r--r--www/seamonkey/distinfo4
-rw-r--r--www/seamonkey/files/extra-patch-mailnews-extensions-enigmail-config-getOsTarget.pl53
-rw-r--r--www/seamonkey/files/patch-bug102649968
-rw-r--r--www/seamonkey/files/patch-bug102682820
-rw-r--r--www/seamonkey/files/patch-bug104138112
-rw-r--r--www/seamonkey/files/patch-bug104179548
-rw-r--r--www/seamonkey/files/patch-bug292127232
-rw-r--r--www/seamonkey/files/patch-bug70217951
-rw-r--r--www/seamonkey/files/patch-bug77971377
-rw-r--r--www/seamonkey/files/patch-mozilla-ipc-chromium-Makefile.in13
-rw-r--r--www/seamonkey/files/patch-mozilla-ipc-chromium-src-base-message_pump_libevent.cc11
110 files changed, 2733 insertions, 3479 deletions
diff --git a/Mk/Uses/gecko.mk b/Mk/Uses/gecko.mk
index 60261709938c..92df7029c7b2 100644
--- a/Mk/Uses/gecko.mk
+++ b/Mk/Uses/gecko.mk
@@ -39,12 +39,12 @@ RUN_DEPENDS+= libxul>=24:${PORTSDIR}/www/libxul
.elif ${_GECKO_ARGS:Mfirefox}
_GECKO_DEFAULT_VERSION= 24
-_GECKO_VERSIONS= 24 30
+_GECKO_VERSIONS= 24 31
_GECKO_TYPE= firefox
# Dependence lines for different Firefox versions
24_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:${PORTSDIR}/www/firefox-esr
-30_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:${PORTSDIR}/www/firefox
+31_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:${PORTSDIR}/www/firefox
.if exists(${LOCALBASE}/bin/firefox)
_GECKO_INSTALLED_VER!= ${LOCALBASE}/bin/firefox --version 2>/dev/null
@@ -67,8 +67,8 @@ _GECKO_INSTALLED_VER:= ${_GECKO_INSTALLED_VER:M[0-9]*:C/[0-9].([0-9][0-9]).*/\1/
.elif ${_GECKO_ARGS:Mthunderbird}
-_GECKO_DEFAULT_VERSION= 24
-_GECKO_VERSIONS= 24
+_GECKO_DEFAULT_VERSION= 31
+_GECKO_VERSIONS= 31
_GECKO_TYPE= thunderbird
.if exists(${LOCALBASE}/bin/thunderbird)
@@ -77,7 +77,7 @@ _GECKO_INSTALLED_VER:= ${_GECKO_INSTALLED_VER:M[0-9][0-9]*:C/([0-9][0-9]).*/\1/g
.endif
# Dependence lines for different Thunderbird versions
-24_DEPENDS= ${LOCALBASE}/lib/thunderbird/thunderbird:${PORTSDIR}/mail/thunderbird
+31_DEPENDS= ${LOCALBASE}/lib/thunderbird/thunderbird:${PORTSDIR}/mail/thunderbird
.else
IGNORE= Unknown type of gecko dependency you may specify either libxul, firefox, seamonkey or thunderbird
diff --git a/Mk/bsd.gecko.mk b/Mk/bsd.gecko.mk
index 4f3f6feaf543..a133e17bee98 100644
--- a/Mk/bsd.gecko.mk
+++ b/Mk/bsd.gecko.mk
@@ -85,7 +85,8 @@ MOZILLA_VER?= ${PORTVERSION}
MOZILLA_BIN?= ${PORTNAME}-bin
MOZILLA_EXEC_NAME?=${MOZILLA}
MOZ_RPATH?= ${MOZILLA}
-USES+= compiler:c++11-lib gmake iconv perl5 pkgconfig desktop-file-utils
+USES+= cpe compiler:c++11-lib gmake iconv perl5 pkgconfig desktop-file-utils
+CPE_VENDOR?=mozilla
USE_PERL5= build
USE_XORG= xext xrender xt
@@ -185,7 +186,7 @@ pixman_EXTRACT_AFTER_ARGS= --exclude mozilla*/gfx/cairo/libpixman
png_LIB_DEPENDS= libpng15.so:${PORTSDIR}/graphics/png
png_MOZ_OPTIONS= --with-system-png=${LOCALBASE}
-png_EXTRACT_AFTER_ARGS= --exclude mozilla*/media/libpng
+#png_EXTRACT_AFTER_ARGS= --exclude mozilla*/media/libpng
.if exists(${FILESDIR}/patch-z-bug517422) || exists(${FILESDIR}/patch-zz-bug517422)
soundtouch_LIB_DEPENDS= libSoundTouch.so:${PORTSDIR}/audio/soundtouch
@@ -394,6 +395,15 @@ STRIP= # ports/184285
MOZ_OPTIONS+= --disable-debug --enable-release
.endif
+.if ${PORT_OPTIONS:MDTRACE}
+. if ${OSVERSION} < 1000510
+BROKEN= dtrace -G crashes with C++ object files
+. endif
+MOZ_OPTIONS+= --enable-dtrace
+LIBS+= -lelf
+STRIP=
+.endif
+
.if ${PORT_OPTIONS:MLOGGING} || ${PORT_OPTIONS:MDEBUG}
MOZ_OPTIONS+= --enable-logging
.else
@@ -420,6 +430,17 @@ MOZ_OPTIONS+= --disable-strip --disable-install-strip
MOZ_OPTIONS+= --enable-strip --enable-install-strip
.endif
+# _MAKE_JOBS is only available after bsd.port.post.mk, thus cannot be
+# used in .mozconfig. And client.mk automatically uses -jN where N
+# is what multiprocessing.cpu_count() returns.
+.if defined(MAKE_JOBS_NUMBER)
+MOZ_MAKE_FLAGS+=-j${MAKE_JOBS_NUMBER}
+.endif
+
+.if defined(MOZ_MAKE_FLAGS)
+MOZ_MK_OPTIONS+=MOZ_MAKE_FLAGS="${MOZ_MAKE_FLAGS}"
+.endif
+
MOZ_SED_ARGS+= -e's|@CPPFLAGS@|${CPPFLAGS}|g' \
-e 's|@CFLAGS@|${CFLAGS}|g' \
-e 's|@LDFLAGS@|${LDFLAGS}|g' \
diff --git a/mail/linux-thunderbird/Makefile b/mail/linux-thunderbird/Makefile
index dd20f6ac571e..bea08052ede5 100644
--- a/mail/linux-thunderbird/Makefile
+++ b/mail/linux-thunderbird/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= thunderbird
-DISTVERSION= 24.6.0
+DISTVERSION= 31.0
CATEGORIES= mail news net-im ipv6
DISTNAME= ${PORTNAME}-${DISTVERSION}
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/linux-i686/en-US
diff --git a/mail/linux-thunderbird/distinfo b/mail/linux-thunderbird/distinfo
index 8a7dac7a7552..68289d1df3bf 100644
--- a/mail/linux-thunderbird/distinfo
+++ b/mail/linux-thunderbird/distinfo
@@ -1,5 +1,5 @@
-SHA256 (thunderbird-24.6.0.tar.bz2) = ba35f578095f79582341e988ce7c5e07f489833f7a309756c80caf4f56367987
-SIZE (thunderbird-24.6.0.tar.bz2) = 28991898
+SHA256 (thunderbird-31.0.tar.bz2) = ee93df33057576bd55bc80b71aeec7c6f487028f0fe52f679614811be5c71bae
+SIZE (thunderbird-31.0.tar.bz2) = 33504321
SHA256 (glib2-2.22.2-2.fc12.i686.rpm) = e3b459c245ec14e7248e9de4b506963a4773407f3e58835db5070d0ed02ecc99
SIZE (glib2-2.22.2-2.fc12.i686.rpm) = 1162908
SHA256 (gtk2-2.18.3-19.fc12.i686.rpm) = aea9cf7ffe9c8dae0faa2bf3d2aa1b2117c55dce03da72dcce8c268279ec0a4b
diff --git a/mail/thunderbird-i18n/Makefile b/mail/thunderbird-i18n/Makefile
index 53c04823340b..aaa7b7b5fa72 100644
--- a/mail/thunderbird-i18n/Makefile
+++ b/mail/thunderbird-i18n/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= thunderbird-i18n
-PORTVERSION= 24.6.0
+PORTVERSION= 31.0
CATEGORIES= mail news net-im
MASTER_SITES= MOZILLA/${PORTNAME:S|-i18n||}/releases/${PORTVERSION}/linux-i686/xpi
PKGNAMEPREFIX=
diff --git a/mail/thunderbird-i18n/distinfo b/mail/thunderbird-i18n/distinfo
index 19eaefc1061d..b1fc2b548d1c 100644
--- a/mail/thunderbird-i18n/distinfo
+++ b/mail/thunderbird-i18n/distinfo
@@ -1,110 +1,110 @@
-SHA256 (xpi/thunderbird-i18n-24.6.0/ar.xpi) = 6aa3c326c9757751fe655242e446ae4d906a91ee86cc061a3dca1024fc57e88a
-SIZE (xpi/thunderbird-i18n-24.6.0/ar.xpi) = 457862
-SHA256 (xpi/thunderbird-i18n-24.6.0/ast.xpi) = e583f909925f6ecb4f72949bd99340f5a8524c21f2628594dee474c9307e1617
-SIZE (xpi/thunderbird-i18n-24.6.0/ast.xpi) = 373831
-SHA256 (xpi/thunderbird-i18n-24.6.0/be.xpi) = 1fb28fd586a69e277ed01b6d6d636e95c7157bb5327e50662f1faadf524d18d3
-SIZE (xpi/thunderbird-i18n-24.6.0/be.xpi) = 416882
-SHA256 (xpi/thunderbird-i18n-24.6.0/bg.xpi) = 9b3839d5d0b700d1b5258b47dd2cae555845e34c4dd3bc0a2c602dc0a4ff3503
-SIZE (xpi/thunderbird-i18n-24.6.0/bg.xpi) = 485024
-SHA256 (xpi/thunderbird-i18n-24.6.0/bn-BD.xpi) = 4fa1d881044ebc9b129e7f54b65278e5faa730ed5efc2f354f2ceaa6975398c1
-SIZE (xpi/thunderbird-i18n-24.6.0/bn-BD.xpi) = 537258
-SHA256 (xpi/thunderbird-i18n-24.6.0/br.xpi) = 31723061e78c394a75f2977a80378c6ceec8fbec7d980becd50dfc93c14e573a
-SIZE (xpi/thunderbird-i18n-24.6.0/br.xpi) = 427680
-SHA256 (xpi/thunderbird-i18n-24.6.0/ca.xpi) = e7fa72f56d0a3ab90dd3df581aab4154552be12f71408e04701e4d3aec2b9e94
-SIZE (xpi/thunderbird-i18n-24.6.0/ca.xpi) = 429746
-SHA256 (xpi/thunderbird-i18n-24.6.0/cs.xpi) = 360e5cb9097c16ac9fd626917777b491c7c00a95b2e1879ae0fad1b7bed2d870
-SIZE (xpi/thunderbird-i18n-24.6.0/cs.xpi) = 431476
-SHA256 (xpi/thunderbird-i18n-24.6.0/da.xpi) = ded61b233f3598f69352d92dc05a7ee9d0bd8852073e2835e0c3b05001f920a8
-SIZE (xpi/thunderbird-i18n-24.6.0/da.xpi) = 409627
-SHA256 (xpi/thunderbird-i18n-24.6.0/de.xpi) = aca6d21ea4176af021b27c67fd21707b0280cf0f1bf6ac34b03b6abf40d50e7e
-SIZE (xpi/thunderbird-i18n-24.6.0/de.xpi) = 408674
-SHA256 (xpi/thunderbird-i18n-24.6.0/el.xpi) = 63080f452b54b7275bfc09b8aa73fd202739c0afd00a1413729b384e86649525
-SIZE (xpi/thunderbird-i18n-24.6.0/el.xpi) = 464553
-SHA256 (xpi/thunderbird-i18n-24.6.0/en-GB.xpi) = dfdb57b440d21ea9e140fc528f25e6ab2a1966b3865fc87390362995d7c48067
-SIZE (xpi/thunderbird-i18n-24.6.0/en-GB.xpi) = 400962
-SHA256 (xpi/thunderbird-i18n-24.6.0/en-US.xpi) = 977732840ff02afdaa0c19c98faf088e799f1f97bb8d70c5e8240fcad862bc5f
-SIZE (xpi/thunderbird-i18n-24.6.0/en-US.xpi) = 402144
-SHA256 (xpi/thunderbird-i18n-24.6.0/es-AR.xpi) = 3ec3c00f39e98f81c045f6cd41c68bc50ea908c91d295ebd9fa9b18722b83080
-SIZE (xpi/thunderbird-i18n-24.6.0/es-AR.xpi) = 425657
-SHA256 (xpi/thunderbird-i18n-24.6.0/es-ES.xpi) = 14086fa0e85857aa6430bdbfdd5f1f333a14b846126fba2ebfa65d954b68b609
-SIZE (xpi/thunderbird-i18n-24.6.0/es-ES.xpi) = 366308
-SHA256 (xpi/thunderbird-i18n-24.6.0/et.xpi) = 01505e5154f27bea956f17bf1f8ae3ecac21857b9cc631750aaccb2ae3ed3438
-SIZE (xpi/thunderbird-i18n-24.6.0/et.xpi) = 422893
-SHA256 (xpi/thunderbird-i18n-24.6.0/eu.xpi) = 0277449af802ad6fac63b28e7b0383baf2c978ef15bc15a1dd373200762c3d8a
-SIZE (xpi/thunderbird-i18n-24.6.0/eu.xpi) = 418497
-SHA256 (xpi/thunderbird-i18n-24.6.0/fi.xpi) = 9999cf22d0baa8c5c35f560560e1a6ee86fdc37147c433c662f53ed062b251ea
-SIZE (xpi/thunderbird-i18n-24.6.0/fi.xpi) = 424265
-SHA256 (xpi/thunderbird-i18n-24.6.0/fr.xpi) = d053f8f6da0b1d5417342e160824fc0472fd15556b29b2d4a01f043efebbfcac
-SIZE (xpi/thunderbird-i18n-24.6.0/fr.xpi) = 431289
-SHA256 (xpi/thunderbird-i18n-24.6.0/fy-NL.xpi) = 39492e2d8c4d0783b0d3cbc4bdc2067805850041a3e159e7d2f87842e932c155
-SIZE (xpi/thunderbird-i18n-24.6.0/fy-NL.xpi) = 426098
-SHA256 (xpi/thunderbird-i18n-24.6.0/ga-IE.xpi) = 78223fedce58b23f0974b0795d90527778bda0ac07cc523345c471d724cc9d1e
-SIZE (xpi/thunderbird-i18n-24.6.0/ga-IE.xpi) = 437114
-SHA256 (xpi/thunderbird-i18n-24.6.0/gd.xpi) = cfb9655e0423bea9a7b9afe67fc0f38824f859b0bafeb6cacfa346a9e1f9f7db
-SIZE (xpi/thunderbird-i18n-24.6.0/gd.xpi) = 440092
-SHA256 (xpi/thunderbird-i18n-24.6.0/gl.xpi) = 41a888063bf5fc08f46280bb1d4e926b0162357bc2f76903d95272bf4d385683
-SIZE (xpi/thunderbird-i18n-24.6.0/gl.xpi) = 427543
-SHA256 (xpi/thunderbird-i18n-24.6.0/he.xpi) = bdc5f8002eeb770daac280431dcfd837e7e2d6e4b250b37b70dba658dba72437
-SIZE (xpi/thunderbird-i18n-24.6.0/he.xpi) = 457066
-SHA256 (xpi/thunderbird-i18n-24.6.0/hr.xpi) = 1e4cfebe1f3cb0e219e24e9ce2cfdf799a7df046dd4dec81b14f4b1c77104a85
-SIZE (xpi/thunderbird-i18n-24.6.0/hr.xpi) = 422387
-SHA256 (xpi/thunderbird-i18n-24.6.0/hu.xpi) = f374db7d1f05bf2bedb8da02ae4ba37b2cdacffbcbced929be2113525d16a971
-SIZE (xpi/thunderbird-i18n-24.6.0/hu.xpi) = 441512
-SHA256 (xpi/thunderbird-i18n-24.6.0/hy-AM.xpi) = c2c76a69dc3cb32a2009024d70ba25300bca706c72883f44e4894a679ecb5823
-SIZE (xpi/thunderbird-i18n-24.6.0/hy-AM.xpi) = 477923
-SHA256 (xpi/thunderbird-i18n-24.6.0/id.xpi) = d25be8b5e37035220e02b07f774d821290ec21d1802973a637abb5af878af690
-SIZE (xpi/thunderbird-i18n-24.6.0/id.xpi) = 457499
-SHA256 (xpi/thunderbird-i18n-24.6.0/is.xpi) = b87e04aa6d35bbb41692c72f9f9cb19246e49a54d4edc3e29fddca5db651a3c0
-SIZE (xpi/thunderbird-i18n-24.6.0/is.xpi) = 425710
-SHA256 (xpi/thunderbird-i18n-24.6.0/it.xpi) = fea724ca6ec33c7462fd4781390a0b310fb3a023aaa99771db83399b65f581fe
-SIZE (xpi/thunderbird-i18n-24.6.0/it.xpi) = 357933
-SHA256 (xpi/thunderbird-i18n-24.6.0/ja.xpi) = 0c2113e085d920d748a0424f89641f92901d9e97ae9c06cfdb561e980a276c99
-SIZE (xpi/thunderbird-i18n-24.6.0/ja.xpi) = 475559
-SHA256 (xpi/thunderbird-i18n-24.6.0/ko.xpi) = cbaa57d1df226fb6f921d90c3b7d93ee47d73b2bb4f7bf3c748171a1c7af2aac
-SIZE (xpi/thunderbird-i18n-24.6.0/ko.xpi) = 428071
-SHA256 (xpi/thunderbird-i18n-24.6.0/lt.xpi) = 6db3fa6fe593292d717b7077142381a038039365e8f14de74f74edbef64950e7
-SIZE (xpi/thunderbird-i18n-24.6.0/lt.xpi) = 443260
-SHA256 (xpi/thunderbird-i18n-24.6.0/nb-NO.xpi) = 1a773698c405c78a947d5bc2a276f770aa885fad724c9f2b8c04025215c0e994
-SIZE (xpi/thunderbird-i18n-24.6.0/nb-NO.xpi) = 418922
-SHA256 (xpi/thunderbird-i18n-24.6.0/nl.xpi) = 0761a699166bdcead5330af9691bb8437545dd24d3ce2cd1e642f1a48ecc7180
-SIZE (xpi/thunderbird-i18n-24.6.0/nl.xpi) = 418764
-SHA256 (xpi/thunderbird-i18n-24.6.0/nn-NO.xpi) = 4e1951dbdfdcf06dee95a6884d1e9e7b4cf141d95e078fa1fc5fb79feefe873e
-SIZE (xpi/thunderbird-i18n-24.6.0/nn-NO.xpi) = 421134
-SHA256 (xpi/thunderbird-i18n-24.6.0/pa-IN.xpi) = 8bfa8109aac418ac6650c8419f946250e569d8101f587f9d6f001a6a59b30385
-SIZE (xpi/thunderbird-i18n-24.6.0/pa-IN.xpi) = 508272
-SHA256 (xpi/thunderbird-i18n-24.6.0/pl.xpi) = e3514ebf5207fd6ae6caeb01c624ad015ffdb6e06aae3ffe39feade0bdbcdcce
-SIZE (xpi/thunderbird-i18n-24.6.0/pl.xpi) = 401753
-SHA256 (xpi/thunderbird-i18n-24.6.0/pt-BR.xpi) = 2bc7c139195fa661fbe0721df4cbb80e56cd193cd7807e8b16a7855d453b66e1
-SIZE (xpi/thunderbird-i18n-24.6.0/pt-BR.xpi) = 430909
-SHA256 (xpi/thunderbird-i18n-24.6.0/pt-PT.xpi) = 19c86db424f83dda485d655d80830d242850da1008cf2644e0e214d4bf56c745
-SIZE (xpi/thunderbird-i18n-24.6.0/pt-PT.xpi) = 425026
-SHA256 (xpi/thunderbird-i18n-24.6.0/rm.xpi) = 779d52491bfbc449ba87fc4ea11f5190021cb72a45d7167cdbcb8fc10cdbbdeb
-SIZE (xpi/thunderbird-i18n-24.6.0/rm.xpi) = 432384
-SHA256 (xpi/thunderbird-i18n-24.6.0/ro.xpi) = 6b1e81e6df2f2ee752aab0fe1b9290e6c287da4ca498df330601de2bc9f8086e
-SIZE (xpi/thunderbird-i18n-24.6.0/ro.xpi) = 497491
-SHA256 (xpi/thunderbird-i18n-24.6.0/ru.xpi) = 2c4b38d8d1581614ae481efbe1fb1d74e75e374c4360df2dcc5eef335627cab2
-SIZE (xpi/thunderbird-i18n-24.6.0/ru.xpi) = 425098
-SHA256 (xpi/thunderbird-i18n-24.6.0/si.xpi) = 7a5bac3f61891229cb933f82b8b5a196313951db10d157ea70688c69c0a4cf06
-SIZE (xpi/thunderbird-i18n-24.6.0/si.xpi) = 511167
-SHA256 (xpi/thunderbird-i18n-24.6.0/sk.xpi) = 3899a09c9b4f6269830217e5d8ebd26a78619cc95c0a81898ab84a246def5cd8
-SIZE (xpi/thunderbird-i18n-24.6.0/sk.xpi) = 440106
-SHA256 (xpi/thunderbird-i18n-24.6.0/sl.xpi) = 22d81c886d7a775e9b1464550c326c6d2adc32ed87c47fbc47e953ac5d4a388e
-SIZE (xpi/thunderbird-i18n-24.6.0/sl.xpi) = 421706
-SHA256 (xpi/thunderbird-i18n-24.6.0/sq.xpi) = 08a4bf603c50b67e28841e76d1cdb23ec250e52c9afbc04b35059c8ced37120a
-SIZE (xpi/thunderbird-i18n-24.6.0/sq.xpi) = 435215
-SHA256 (xpi/thunderbird-i18n-24.6.0/sr.xpi) = 7e8eb7dd6dd9846bbb704d80dd757086f6da1b38070716cad12e2d6e87a99311
-SIZE (xpi/thunderbird-i18n-24.6.0/sr.xpi) = 518890
-SHA256 (xpi/thunderbird-i18n-24.6.0/sv-SE.xpi) = 4b920e494be9abf2784dc8b8b282b0c022601458e1bdac5ca21b92157f1a0fa6
-SIZE (xpi/thunderbird-i18n-24.6.0/sv-SE.xpi) = 423816
-SHA256 (xpi/thunderbird-i18n-24.6.0/ta-LK.xpi) = 23ca919444d43bc104e282fb3dbaf5c71ebbbfacd80a5c8a1c72ece41971394c
-SIZE (xpi/thunderbird-i18n-24.6.0/ta-LK.xpi) = 534923
-SHA256 (xpi/thunderbird-i18n-24.6.0/tr.xpi) = e6d8de6e52b3bc0bd706d46a25f25e1fe8c5d37608d7d5c251b43008c5397fa6
-SIZE (xpi/thunderbird-i18n-24.6.0/tr.xpi) = 438067
-SHA256 (xpi/thunderbird-i18n-24.6.0/uk.xpi) = 650bbcb5e1879d756953cbe990e78730afbf6b93b4b4fceef6119d3618c00522
-SIZE (xpi/thunderbird-i18n-24.6.0/uk.xpi) = 480949
-SHA256 (xpi/thunderbird-i18n-24.6.0/vi.xpi) = 7c927599de8066f45e07ff338167b9dba1c9b7f179bb8f6c93cdc9b0fa6b4624
-SIZE (xpi/thunderbird-i18n-24.6.0/vi.xpi) = 495559
-SHA256 (xpi/thunderbird-i18n-24.6.0/zh-CN.xpi) = 63b2f4bfb24ad36d32529a79151a8b73195d4beb35eba9ef4a3e4cf8a2020139
-SIZE (xpi/thunderbird-i18n-24.6.0/zh-CN.xpi) = 449182
-SHA256 (xpi/thunderbird-i18n-24.6.0/zh-TW.xpi) = 0f99b8c4680ab081629535e79898081c568d3f57c01d7149c69118d4be125e55
-SIZE (xpi/thunderbird-i18n-24.6.0/zh-TW.xpi) = 450001
+SHA256 (xpi/thunderbird-i18n-31.0/ar.xpi) = 81314f4c47393b18c90f4ca64e71747dfc8005e72feb7b4f6c43f87fb7319521
+SIZE (xpi/thunderbird-i18n-31.0/ar.xpi) = 472809
+SHA256 (xpi/thunderbird-i18n-31.0/ast.xpi) = 3a78c9011c7c9e380ae05553b6fb30c4c8235a9910e979f8b7925cda9e036037
+SIZE (xpi/thunderbird-i18n-31.0/ast.xpi) = 393046
+SHA256 (xpi/thunderbird-i18n-31.0/be.xpi) = 40e22baac6e6714a63830bfc83d5652b9b671090d3296736e2dcd917a1f0ceaf
+SIZE (xpi/thunderbird-i18n-31.0/be.xpi) = 427485
+SHA256 (xpi/thunderbird-i18n-31.0/bg.xpi) = c74870d38573d783c47a2ed25cbf9bffe32a0ab389790cde98ce621154d55086
+SIZE (xpi/thunderbird-i18n-31.0/bg.xpi) = 493731
+SHA256 (xpi/thunderbird-i18n-31.0/bn-BD.xpi) = d8e6ff465fab861b49fb1828983b85d9f5dedd93c38dc7f74a62fc8977fe17a1
+SIZE (xpi/thunderbird-i18n-31.0/bn-BD.xpi) = 555610
+SHA256 (xpi/thunderbird-i18n-31.0/br.xpi) = 20fa4c71abf89888ff19ad87dc97c39f93c395f34690b3714ac38014be221cdd
+SIZE (xpi/thunderbird-i18n-31.0/br.xpi) = 441442
+SHA256 (xpi/thunderbird-i18n-31.0/ca.xpi) = 340b8029f83554beca5256296b0715f569b4ac8f00dde62ba25013bbcd672b13
+SIZE (xpi/thunderbird-i18n-31.0/ca.xpi) = 441711
+SHA256 (xpi/thunderbird-i18n-31.0/cs.xpi) = 5abfb0e1dd0d1b2344373044147ab8211342ec14385280b6d6d66db4cbb5e0a9
+SIZE (xpi/thunderbird-i18n-31.0/cs.xpi) = 444698
+SHA256 (xpi/thunderbird-i18n-31.0/da.xpi) = 412cab5c29ee7cd39f3620fcfce05c6753e6c0c6ce7761d8512ecf19d54a04a5
+SIZE (xpi/thunderbird-i18n-31.0/da.xpi) = 422049
+SHA256 (xpi/thunderbird-i18n-31.0/de.xpi) = e76186c43cbb0965f049bdf4770319d5e7595527a76bf2a0683d5c9bd01ac559
+SIZE (xpi/thunderbird-i18n-31.0/de.xpi) = 424663
+SHA256 (xpi/thunderbird-i18n-31.0/el.xpi) = b6f36094ed24b347eaaa4584f4d1459896a17cf1332713c8a7ef9fe44d63f056
+SIZE (xpi/thunderbird-i18n-31.0/el.xpi) = 484852
+SHA256 (xpi/thunderbird-i18n-31.0/en-GB.xpi) = 30db7504cde1359f4e940cee846481e713d6a66442baab9aa6e30287c52f54bf
+SIZE (xpi/thunderbird-i18n-31.0/en-GB.xpi) = 412513
+SHA256 (xpi/thunderbird-i18n-31.0/en-US.xpi) = 89da465c642d4d1aa6ada8b45333cfa2b01d39be2a83904b77c468cfdc351a46
+SIZE (xpi/thunderbird-i18n-31.0/en-US.xpi) = 413657
+SHA256 (xpi/thunderbird-i18n-31.0/es-AR.xpi) = 6467b60b34d140671737d1af81b88d18b09e427374a73c73daf95f59280af6e9
+SIZE (xpi/thunderbird-i18n-31.0/es-AR.xpi) = 438528
+SHA256 (xpi/thunderbird-i18n-31.0/es-ES.xpi) = 58707f9abfdb36f72b09c78c4469047d7ce43ac538b529d77141fd27b31a8b68
+SIZE (xpi/thunderbird-i18n-31.0/es-ES.xpi) = 374978
+SHA256 (xpi/thunderbird-i18n-31.0/et.xpi) = d1ed0b990d44be0317f150037a115b2652397ac0ca428a92972cfd0f6c0b213a
+SIZE (xpi/thunderbird-i18n-31.0/et.xpi) = 434361
+SHA256 (xpi/thunderbird-i18n-31.0/eu.xpi) = 8a569452945478c8ea436f24ca2d0b0067476094e3d83275f7cafce3dc61e551
+SIZE (xpi/thunderbird-i18n-31.0/eu.xpi) = 431446
+SHA256 (xpi/thunderbird-i18n-31.0/fi.xpi) = 847ab3e6bf668fb27a5b56c248ac506602ddb27054692956ccbfc857aa341358
+SIZE (xpi/thunderbird-i18n-31.0/fi.xpi) = 435630
+SHA256 (xpi/thunderbird-i18n-31.0/fr.xpi) = b6a8df2e7ddd74e4b115c8a507a8b09b79aa721537d77c44cac83b7b053505d7
+SIZE (xpi/thunderbird-i18n-31.0/fr.xpi) = 444141
+SHA256 (xpi/thunderbird-i18n-31.0/fy-NL.xpi) = 67430b6113dc2fa2606009f92580fb727d2827116d759cfb75fe3ae0587a249d
+SIZE (xpi/thunderbird-i18n-31.0/fy-NL.xpi) = 438542
+SHA256 (xpi/thunderbird-i18n-31.0/ga-IE.xpi) = 711efc1e1da56ef0c9e096f8fa1ce47715dd49b9b76b2f13a686b32e55dbc4a1
+SIZE (xpi/thunderbird-i18n-31.0/ga-IE.xpi) = 449359
+SHA256 (xpi/thunderbird-i18n-31.0/gd.xpi) = c375218c658607c40d27593ec75b83f937b361a3d8634557e1772abe32723aee
+SIZE (xpi/thunderbird-i18n-31.0/gd.xpi) = 453169
+SHA256 (xpi/thunderbird-i18n-31.0/gl.xpi) = efadaea55ac283c60f2092e9510c02aece8c9447830f0a648fe1afb2aa008815
+SIZE (xpi/thunderbird-i18n-31.0/gl.xpi) = 446785
+SHA256 (xpi/thunderbird-i18n-31.0/he.xpi) = 55cb02490acbbd34eebdbe05b5db90972c6c870d7c8bd18b2528d4ed2140a9dc
+SIZE (xpi/thunderbird-i18n-31.0/he.xpi) = 476108
+SHA256 (xpi/thunderbird-i18n-31.0/hr.xpi) = adc70cf28f04e0412b98705c457efb2001c1929494c1248c2237b51fac5073ab
+SIZE (xpi/thunderbird-i18n-31.0/hr.xpi) = 436977
+SHA256 (xpi/thunderbird-i18n-31.0/hu.xpi) = b82ed4a17349aaddb6298ec2152538f8ebf89642c222eb5bd8ba52fa0aa6c295
+SIZE (xpi/thunderbird-i18n-31.0/hu.xpi) = 454540
+SHA256 (xpi/thunderbird-i18n-31.0/hy-AM.xpi) = 87b39a9b72a892ce0825ca039b7b34c901ee48a0b8206fa6e64d5caefe182888
+SIZE (xpi/thunderbird-i18n-31.0/hy-AM.xpi) = 492763
+SHA256 (xpi/thunderbird-i18n-31.0/id.xpi) = 1409390f3ab8b3340ed1497fe38033f936fb35fcb99502f626d0da34a4bf6261
+SIZE (xpi/thunderbird-i18n-31.0/id.xpi) = 475874
+SHA256 (xpi/thunderbird-i18n-31.0/is.xpi) = c5bc5957acf8129ffde9ba0fb262ed7c2feddf88c97c1cc8bf49619ecce5dfff
+SIZE (xpi/thunderbird-i18n-31.0/is.xpi) = 437957
+SHA256 (xpi/thunderbird-i18n-31.0/it.xpi) = da5517cd37c21ec73d423a3b4efffe2ee587eb6a1ae1e3f05d2f539d2debc2c7
+SIZE (xpi/thunderbird-i18n-31.0/it.xpi) = 367999
+SHA256 (xpi/thunderbird-i18n-31.0/ja.xpi) = 7f4e51b28a6fe1164da52d0efa16f30db29f92a27f4babc09434b0cb6ca57074
+SIZE (xpi/thunderbird-i18n-31.0/ja.xpi) = 489264
+SHA256 (xpi/thunderbird-i18n-31.0/ko.xpi) = bb770426c776fc076655049c60f24b6e0dc797b04412172739b540e907058496
+SIZE (xpi/thunderbird-i18n-31.0/ko.xpi) = 448916
+SHA256 (xpi/thunderbird-i18n-31.0/lt.xpi) = 34227eeb66f796aeb7b0c55b17fb9705fdfabca9329bf063143f8eb0b836d9c3
+SIZE (xpi/thunderbird-i18n-31.0/lt.xpi) = 457810
+SHA256 (xpi/thunderbird-i18n-31.0/nb-NO.xpi) = d07c357b09adee7477b27720b22ba2840dafce8b10f3909968863e08d5c70043
+SIZE (xpi/thunderbird-i18n-31.0/nb-NO.xpi) = 430939
+SHA256 (xpi/thunderbird-i18n-31.0/nl.xpi) = 2094c7577c4e885f0c030d972947d2ccc3abcac9fcd2f927fc8541b567c8a35d
+SIZE (xpi/thunderbird-i18n-31.0/nl.xpi) = 431885
+SHA256 (xpi/thunderbird-i18n-31.0/nn-NO.xpi) = a35351f6a85807f90fd7c7a93978cd9d78e3c5bdd007d4f06974e457768b7177
+SIZE (xpi/thunderbird-i18n-31.0/nn-NO.xpi) = 433195
+SHA256 (xpi/thunderbird-i18n-31.0/pa-IN.xpi) = ce41c104128925d1b03cd2897997686e1f18d79a53fa4f83a401f413526abcfa
+SIZE (xpi/thunderbird-i18n-31.0/pa-IN.xpi) = 525320
+SHA256 (xpi/thunderbird-i18n-31.0/pl.xpi) = 9d12eec1c898e7f20f40134f6bffac186de015f39a3bf9e8bb3e6d3daca11af7
+SIZE (xpi/thunderbird-i18n-31.0/pl.xpi) = 410870
+SHA256 (xpi/thunderbird-i18n-31.0/pt-BR.xpi) = a678b187ac24ca1cabae53d064e5d748aa00a25ffbcb4c0b489449678561f1a9
+SIZE (xpi/thunderbird-i18n-31.0/pt-BR.xpi) = 450473
+SHA256 (xpi/thunderbird-i18n-31.0/pt-PT.xpi) = 61a1bc548da0e54f11b8bc5eb4440a2f62ca5a6d81e52f488c66588b87247c39
+SIZE (xpi/thunderbird-i18n-31.0/pt-PT.xpi) = 439601
+SHA256 (xpi/thunderbird-i18n-31.0/rm.xpi) = 6522ed5a7524a265b9b8d94c3cd7883b1eb69ace23b4844c6fda2649c92beee2
+SIZE (xpi/thunderbird-i18n-31.0/rm.xpi) = 439183
+SHA256 (xpi/thunderbird-i18n-31.0/ro.xpi) = 98edaf17dc690403a8dc3666e0949a3c2737f5855a81f19fb241078a8ee044be
+SIZE (xpi/thunderbird-i18n-31.0/ro.xpi) = 479744
+SHA256 (xpi/thunderbird-i18n-31.0/ru.xpi) = 3e12ee986ee7e69d44253a3ad93cc3776d3b03700100bcda14c357037139bcd6
+SIZE (xpi/thunderbird-i18n-31.0/ru.xpi) = 436153
+SHA256 (xpi/thunderbird-i18n-31.0/si.xpi) = 39845364164e805b9c9d4c1afa887419216842ac04cf9e0d9447cb0af0db0637
+SIZE (xpi/thunderbird-i18n-31.0/si.xpi) = 528810
+SHA256 (xpi/thunderbird-i18n-31.0/sk.xpi) = 390e494377e4c315941ac2650581ed7aa10afb62f65ac7080b8a3a367d758643
+SIZE (xpi/thunderbird-i18n-31.0/sk.xpi) = 452993
+SHA256 (xpi/thunderbird-i18n-31.0/sl.xpi) = 6bf7e8172f6532e44799517db99c7d2db29c7653dee8990fee4ac8a4c9b4bf6e
+SIZE (xpi/thunderbird-i18n-31.0/sl.xpi) = 433872
+SHA256 (xpi/thunderbird-i18n-31.0/sq.xpi) = 6d838ccf9ad458445724d7daafbe5a119405e00fc3b83ef369b911471fad18d0
+SIZE (xpi/thunderbird-i18n-31.0/sq.xpi) = 454692
+SHA256 (xpi/thunderbird-i18n-31.0/sr.xpi) = 7f3a9254300fc2484014d7337d6a776063cc6eb18fbedd18b918b9c65ab6b0ab
+SIZE (xpi/thunderbird-i18n-31.0/sr.xpi) = 537332
+SHA256 (xpi/thunderbird-i18n-31.0/sv-SE.xpi) = 00ca227318e586b8f0a821957358bc3f4e82dd835d9ebc8d4b6cb7951997fff6
+SIZE (xpi/thunderbird-i18n-31.0/sv-SE.xpi) = 436103
+SHA256 (xpi/thunderbird-i18n-31.0/ta-LK.xpi) = 25ecd571f6d36a210e7618f7a4b9080deebd0a23e4f67afaaea011d7f0106dc1
+SIZE (xpi/thunderbird-i18n-31.0/ta-LK.xpi) = 553506
+SHA256 (xpi/thunderbird-i18n-31.0/tr.xpi) = 41cb40d4080284e96239ff4a994d70dacfa4666b80b2500303a6cb8eb704e952
+SIZE (xpi/thunderbird-i18n-31.0/tr.xpi) = 457357
+SHA256 (xpi/thunderbird-i18n-31.0/uk.xpi) = 474c20ee148f732663b53164990934013b3c2620a26d3e9d320c28f83f8f2de9
+SIZE (xpi/thunderbird-i18n-31.0/uk.xpi) = 499654
+SHA256 (xpi/thunderbird-i18n-31.0/vi.xpi) = 36996d67d9c5f8948f0fae1373c559bb60afbe571865c874a5eeba0a82383ac3
+SIZE (xpi/thunderbird-i18n-31.0/vi.xpi) = 513833
+SHA256 (xpi/thunderbird-i18n-31.0/zh-CN.xpi) = 01310efee05f441f74f3d721bfdb24e94880fe450adf26689dedc31ee6483837
+SIZE (xpi/thunderbird-i18n-31.0/zh-CN.xpi) = 462666
+SHA256 (xpi/thunderbird-i18n-31.0/zh-TW.xpi) = e4b4b6d6b97cd77c6f3395c863042c390b1fa36a2fe012e77dfd5f7e3ddedd15
+SIZE (xpi/thunderbird-i18n-31.0/zh-TW.xpi) = 463406
diff --git a/mail/thunderbird/Makefile b/mail/thunderbird/Makefile
index b8df941dd717..d8d0d001f808 100644
--- a/mail/thunderbird/Makefile
+++ b/mail/thunderbird/Makefile
@@ -2,55 +2,55 @@
# $FreeBSD$
PORTNAME= thunderbird
-DISTVERSION= 24.6.0
-PORTREVISION= 3
+DISTVERSION= 31.0
CATEGORIES= mail news net-im ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \
- https://ftp.mozilla.org/pub/mozilla.org/${PORTNAME}/candidates/${DISTVERSION}-candidates/build2/source/
+ https://ftp.mozilla.org/pub/mozilla.org/${PORTNAME}/candidates/${DISTVERSION}-candidates/build1/source/
DISTFILES= ${PORTNAME}-${DISTVERSION}.source${EXTRACT_SUFX}
EXTRACT_ONLY= ${PORTNAME}-${DISTVERSION}.source${EXTRACT_SUFX}
MAINTAINER= gecko@FreeBSD.org
COMMENT= Mozilla Thunderbird is standalone mail and news that stands above
-BUILD_DEPENDS= nspr>=4.10.2:${PORTSDIR}/devel/nspr \
- nss>=3.15.4:${PORTSDIR}/security/nss \
- sqlite3>=3.7.17:${PORTSDIR}/databases/sqlite3 \
- ${PYTHON_PKGNAMEPREFIX}sqlite3>0:${PORTSDIR}/databases/py-sqlite3 \
- cairo>=1.10.2_1,1:${PORTSDIR}/graphics/cairo \
- soundtouch>=1.7.0:${PORTSDIR}/audio/soundtouch \
- harfbuzz>=0.9.16:${PORTSDIR}/print/harfbuzz \
- graphite2>=1.2.3:${PORTSDIR}/graphics/graphite2 \
+BUILD_DEPENDS= nspr>=4.10.6:${PORTSDIR}/devel/nspr \
+ nss>=3.16:${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.4.2:${PORTSDIR}/databases/sqlite3 \
+ ${PYTHON_PKGNAMEPREFIX}sqlite3>0:${PORTSDIR}/databases/py-sqlite3 \
v4l_compat>0:${PORTSDIR}/multimedia/v4l_compat \
zip:${PORTSDIR}/archivers/zip \
unzip:${PORTSDIR}/archivers/unzip
+# cairo>=1.12.16,2:${PORTSDIR}/graphics/cairo \
+
LIB_DEPENDS= libv4l2.so:${PORTSDIR}/multimedia/libv4l
-EM_VERSION= 1.6
-L_VERSION= 2.6.5
+EM_VERSION= 1.7
+L_VERSION= 3.3
SSP_UNSAFE= yes
USE_AUTOTOOLS= autoconf213:env
USE_PYTHON_BUILD=2
OBJDIR_BUILD= # in-tree build broken after bug 789837
USE_GECKO= gecko
-USE_MOZILLA= # empty
+USE_MOZILLA= -cairo
WANT_GNOME= yes
-USE_QT4= # empty
+USE_QT5= # empty
QT_NONSTANDARD= yes
ALL_TARGET= default
USE_GL= gl
USES= dos2unix tar:bzip2
DOS2UNIX_FILES= mozilla/media/webrtc/trunk/webrtc/system_wrappers/source/spreadsortlib/spreadsort.hpp
-MOZ_PROTOCOLS= http,ftp,file,viewsource,res,data,wyciwyg,websocket
MOZ_OPTIONS= --program-transform-name='s/thunderbird/${MOZILLA}/' \
--enable-single-profile --disable-profilesharing \
--enable-application=mail --enable-official-branding
-MOZ_MK_OPTIONS= MOZ_MOZ_THUNDERBIRD=1 MAIL_PKG_SHARED=1
+MOZ_MK_OPTIONS= MOZ_THUNDERBIRD=1 MAIL_PKG_SHARED=1
MOZ_EXPORT= MOZ_THUNDERBIRD=1 MAIL_PKG_SHARED=1
MOZ_PKGCONFIG_FILES=
@@ -74,13 +74,34 @@ OPTIONS_DEFAULT:=${OPTIONS_DEFAULT:S/GSTREAMER//}
.include <bsd.port.pre.mk>
-WRKSRC= ${WRKDIR}/comm-esr24
+WRKSRC= ${WRKDIR}/comm-esr31
MOZSRC:= ${WRKSRC}/mozilla
XPI_LIBDIR= ${PREFIX}/lib/xpi
+# avoid clang 3.2/3.3 crash in js/src/jsgc.cpp on refillFreeList<(js::AllowGC)1>
+# http://svnweb.freebsd.org/changeset/base/255804
+.if ${CHOSEN_COMPILER_TYPE} == clang && ${ARCH} == i386 && ${OSVERSION} < 1000056
+. if ${PORT_OPTIONS:MOPTIMIZED_CFLAGS}
+BROKEN= Cannot build with OPTIMIZED_CFLAGS option due to \
+ a ${CHOSEN_COMPILER_TYPE} bug: unset the option or \
+ use FAVORITE_COMPILER=gcc in Makefile.local/make.conf
+# apply workaround only for -O2 or greater
+. elif ${CXXFLAGS:M-O*} && ! ${CXXFLAGS:M-O[01]}
+. if ${MACHINE_CPU:Msse2}
+CXXFLAGS+= -msse2
+. else
+CXXFLAGS+= -O1
+. endif
+. endif
+.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}
+RUN_DEPENDS+= gstreamer1-libav>=1.2.4_1:${PORTSDIR}/multimedia/gstreamer1-libav
.endif
.if ${PORT_OPTIONS:MENIGMAIL}
@@ -89,7 +110,7 @@ DISTFILES+= ${EM_DISTFILE}:enigmail
RUN_DEPENDS+= gpg:${PORTSDIR}/security/gnupg
EM_DISTNAME= enigmail-${EM_VERSION}
EM_DISTFILE= ${EM_DISTNAME}.tar.gz
-EM_XPI_FILE= ${MOZ_OBJDIR}/mozilla/dist/bin/${EM_DISTNAME}-${OPSYS:tl}-${ARCH:S/amd64/x86_64/}.xpi
+EM_XPI_FILE= ${WRKSRC}/mailnews/extensions/enigmail/build/${EM_DISTNAME}-${OPSYS:tl}-${ARCH:S/amd64/x86_64/:S/i386/x86/}-gcc3.xpi
EM_ORIG_ID= {847b3a00-7ab1-11d4-8f02-006008948af5}
EM_ID= ${PORTNAME}@mozilla-enigmail.org
EM_ID_RFILES= ${XPI_LIBDIR}/${EM_ID}/install.rdf \
@@ -123,10 +144,12 @@ post-patch:
${WRKSRC}/mail/app/nsMailApp.cpp
.if ${PORT_OPTIONS:MENIGMAIL}
@${REINPLACE_CMD} -e 's,/usr/bin/perl,${PERL},' \
- ${WRKSRC}/mailnews/extensions/enigmail/makemake
+ ${WRKSRC}/mailnews/extensions/enigmail/util/fixlang.pl \
+ ${WRKSRC}/mailnews/extensions/enigmail/util/make-lang-xpi.pl
@${REINPLACE_CMD} -e '/^xpi/s/$$/ all/' \
+ -e '/^all/s/ xpi//' \
-e '/^XPI_MODULE_VERS/s/= .*/= ${EM_VERSION}/' \
- ${WRKSRC}/mailnews/extensions/enigmail/Makefile.in
+ ${WRKSRC}/mailnews/extensions/enigmail/Makefile
@${REINPLACE_CMD} -e '/em:version/s,>[^<]*<,>${EM_VERSION}<,' \
-e '/em:maxVersion/s/pre//' \
${WRKSRC}/mailnews/extensions/enigmail/package/install.rdf
@@ -138,11 +161,13 @@ pre-configure:
(cd ${MOZSRC}/js/src/ && ${AUTOCONF})
.if ${PORT_OPTIONS:MENIGMAIL}
+post-configure:
+ cd ${WRKSRC}/mailnews/extensions/enigmail/ && \
+ ${SETENV} ${MAKE_ENV} ./configure
+
post-build:
- cd ${WRKSRC}/mailnews/extensions/enigmail && \
- ./makemake -r -o ${MOZ_OBJDIR}
${SETENV} ${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} all xpi \
- -C ${MOZ_OBJDIR}/mailnews/extensions/enigmail
+ -C ${WRKSRC}/mailnews/extensions/enigmail
.endif
port-pre-install:
diff --git a/mail/thunderbird/distinfo b/mail/thunderbird/distinfo
index 0e5920fd5c3b..3a2e5612dd77 100644
--- a/mail/thunderbird/distinfo
+++ b/mail/thunderbird/distinfo
@@ -1,4 +1,4 @@
-SHA256 (thunderbird-24.6.0.source.tar.bz2) = ae9a7cbc8dc195bd9f4b7b4edcd33599fa08c5388a0690f77221e6c5566629ea
-SIZE (thunderbird-24.6.0.source.tar.bz2) = 140120461
-SHA256 (enigmail-1.6.tar.gz) = 10d5eb7ba364b9b6e6275aae8bba1d0e4321ed7d55a715337d566ccf2a56ea4d
-SIZE (enigmail-1.6.tar.gz) = 1231111
+SHA256 (thunderbird-31.0.source.tar.bz2) = 571f8cca980f077ae81999aea69a78153422a75e9e6c07ab74ec6659fe0d6ef4
+SIZE (thunderbird-31.0.source.tar.bz2) = 170977129
+SHA256 (enigmail-1.7.tar.gz) = cddbf35783194a4e994f9584ad5bee74750e25f690e81727ba9eccc4f814f161
+SIZE (enigmail-1.7.tar.gz) = 1414100
diff --git a/mail/thunderbird/files/patch-bug1013675 b/mail/thunderbird/files/patch-bug1013675
index 0632acbf91f5..c8b0a6bf02d0 100644
--- a/mail/thunderbird/files/patch-bug1013675
+++ b/mail/thunderbird/files/patch-bug1013675
@@ -2,7 +2,7 @@ diff --git xpcom/base/nsDebugImpl.cpp xpcom/base/nsDebugImpl.cpp
index 13a286f..293bd73 100644
--- mozilla/xpcom/base/nsDebugImpl.cpp
+++ mozilla/xpcom/base/nsDebugImpl.cpp
-@@ -45,13 +45,44 @@
+@@ -45,12 +45,43 @@
#endif
#endif
@@ -10,7 +10,6 @@ index 13a286f..293bd73 100644
+#if defined(XP_MACOSX) || defined(__DragonFly__) || defined(__FreeBSD__) \
+ || defined(__NetBSD__) || defined(__OpenBSD__)
#include <stdbool.h>
- #include <sys/types.h>
#include <unistd.h>
+#include <sys/param.h>
#include <sys/sysctl.h>
diff --git a/mail/thunderbird/files/patch-bug1015547 b/mail/thunderbird/files/patch-bug1015547
index f3cd7494c301..8e6189444b50 100644
--- a/mail/thunderbird/files/patch-bug1015547
+++ b/mail/thunderbird/files/patch-bug1015547
@@ -2,11 +2,12 @@ diff --git configure.in configure.in
index 7bed45f..053de17 100644
--- mozilla/configure.in
+++ mozilla/configure.in
-@@ -3166,6 +3166,7 @@ AC_CHECK_FUNCS(random strerror lchown fc
- AC_CHECK_FUNCS(statvfs64 statvfs statfs64 statfs)
- AC_CHECK_FUNCS(flockfile getpagesize)
- AC_CHECK_FUNCS(localtime_r strtok_r)
-+AC_CHECK_FUNCS(arc4random arc4random_buf)
+@@ -2950,7 +2950,7 @@ dnl Checks for library functions.
+ dnl ========================================================
+ AC_PROG_GCC_TRADITIONAL
+ AC_FUNC_MEMCMP
+-AC_CHECK_FUNCS(stat64 lstat64 truncate64 statvfs64 statvfs statfs64 statfs getpagesize localtime_r)
++AC_CHECK_FUNCS(stat64 lstat64 truncate64 statvfs64 statvfs statfs64 statfs getpagesize localtime_r arc4random arc4random_buf)
dnl check for clock_gettime(), the CLOCK_MONOTONIC clock
AC_CACHE_CHECK(for clock_gettime(CLOCK_MONOTONIC),
diff --git a/mail/thunderbird/files/patch-bug1026499 b/mail/thunderbird/files/patch-bug1026499
new file mode 100644
index 000000000000..729f91a5d8d4
--- /dev/null
+++ b/mail/thunderbird/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
+--- mozilla/ipc/ipdl/ipdl/cxx/ast.py
++++ mozilla/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
+--- mozilla/ipc/ipdl/ipdl/cxx/cgen.py
++++ mozilla/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
+--- mozilla/ipc/ipdl/ipdl/lower.py
++++ mozilla/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/mail/thunderbird/files/patch-bug1026828 b/mail/thunderbird/files/patch-bug1026828
new file mode 100644
index 000000000000..b52dcd4e9788
--- /dev/null
+++ b/mail/thunderbird/files/patch-bug1026828
@@ -0,0 +1,20 @@
+diff --git storage/src/moz.build storage/src/moz.build
+index 4cd2551..5c40536 100644
+--- mozilla/storage/src/moz.build
++++ mozilla/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/mail/thunderbird/files/patch-bug1041795 b/mail/thunderbird/files/patch-bug1041795
new file mode 100644
index 000000000000..5164776bdde7
--- /dev/null
+++ b/mail/thunderbird/files/patch-bug1041795
@@ -0,0 +1,48 @@
+diff --git config/rules.mk config/rules.mk
+index 4d67eda..783942f 100644
+--- mozilla/config/rules.mk
++++ mozilla/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
+--- mozilla/js/src/Makefile.in
++++ mozilla/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
+--- mozilla/probes/Makefile.in
++++ mozilla/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/mail/thunderbird/files/patch-bug292127 b/mail/thunderbird/files/patch-bug292127
new file mode 100644
index 000000000000..c20ff1d564a3
--- /dev/null
+++ b/mail/thunderbird/files/patch-bug292127
@@ -0,0 +1,232 @@
+--- ldap/sdks/c-sdk/ldap/include/ldap.h~
++++ ldap/sdks/c-sdk/ldap/include/ldap.h
+@@ -40,6 +40,229 @@
+ #ifndef _LDAP_H
+ #define _LDAP_H
+
++/* rename symbols to not clash with openldap (bug 292127) */
++#define ldap_abandon moz_ldap_abandon
++#define ldap_abandon_ext moz_ldap_abandon_ext
++#define ldap_abandoned moz_ldap_abandoned
++#define ldap_add moz_ldap_add
++#define ldap_add_ext moz_ldap_add_ext
++#define ldap_add_ext_s moz_ldap_add_ext_s
++#define ldap_add_result_entry moz_ldap_add_result_entry
++#define ldap_add_s moz_ldap_add_s
++#define ldap_ber_free moz_ldap_ber_free
++#define ldap_bind moz_ldap_bind
++#define ldap_bind_s moz_ldap_bind_s
++#define ldap_build_filter moz_ldap_build_filter
++#define ldap_cache_flush moz_ldap_cache_flush
++#define ldap_charray_add moz_ldap_charray_add
++#define ldap_charray_dup moz_ldap_charray_dup
++#define ldap_charray_free moz_ldap_charray_free
++#define ldap_charray_inlist moz_ldap_charray_inlist
++#define ldap_charray_merge moz_ldap_charray_merge
++#define ldap_charray_position moz_ldap_charray_position
++#define ldap_compare moz_ldap_compare
++#define ldap_compare_ext moz_ldap_compare_ext
++#define ldap_compare_ext_s moz_ldap_compare_ext_s
++#define ldap_compare_s moz_ldap_compare_s
++#define ldap_control_free moz_ldap_control_free
++#define ldap_controls_free moz_ldap_controls_free
++#define ldap_count_entries moz_ldap_count_entries
++#define ldap_count_messages moz_ldap_count_messages
++#define ldap_count_references moz_ldap_count_references
++#define ldap_count_values moz_ldap_count_values
++#define ldap_count_values_len moz_ldap_count_values_len
++#define ldap_create_authzid_control moz_ldap_create_authzid_control
++#define ldap_create_filter moz_ldap_create_filter
++#define ldap_create_geteffectiveRights_control moz_ldap_create_geteffectiveRights_control
++#define ldap_create_passwordpolicy_control moz_ldap_create_passwordpolicy_control
++#define ldap_create_passwordpolicy_control_ext moz_ldap_create_passwordpolicy_control_ext
++#define ldap_create_persistentsearch_control moz_ldap_create_persistentsearch_control
++#define ldap_create_proxiedauth_control moz_ldap_create_proxiedauth_control
++#define ldap_create_proxyauth_control moz_ldap_create_proxyauth_control
++#define ldap_create_sort_control moz_ldap_create_sort_control
++#define ldap_create_sort_keylist moz_ldap_create_sort_keylist
++#define ldap_create_userstatus_control moz_ldap_create_userstatus_control
++#define ldap_create_virtuallist_control moz_ldap_create_virtuallist_control
++#define ldap_delete moz_ldap_delete
++#define ldap_delete_ext moz_ldap_delete_ext
++#define ldap_delete_ext_s moz_ldap_delete_ext_s
++#define ldap_delete_result_entry moz_ldap_delete_result_entry
++#define ldap_delete_s moz_ldap_delete_s
++#define ldap_dn2ufn moz_ldap_dn2ufn
++#define ldap_entry2html moz_ldap_entry2html
++#define ldap_entry2html_search moz_ldap_entry2html_search
++#define ldap_entry2text moz_ldap_entry2text
++#define ldap_entry2text_search moz_ldap_entry2text_search
++#define ldap_err2string moz_ldap_err2string
++#define ldap_errlist moz_ldap_errlist
++#define ldap_explode moz_ldap_explode
++#define ldap_explode_dn moz_ldap_explode_dn
++#define ldap_explode_dns moz_ldap_explode_dns
++#define ldap_explode_rdn moz_ldap_explode_rdn
++#define ldap_extended_operation moz_ldap_extended_operation
++#define ldap_extended_operation_s moz_ldap_extended_operation_s
++#define ldap_find_control moz_ldap_find_control
++#define ldap_first_attribute moz_ldap_first_attribute
++#define ldap_first_disptmpl moz_ldap_first_disptmpl
++#define ldap_first_entry moz_ldap_first_entry
++#define ldap_first_message moz_ldap_first_message
++#define ldap_first_reference moz_ldap_first_reference
++#define ldap_first_searchobj moz_ldap_first_searchobj
++#define ldap_first_tmplcol moz_ldap_first_tmplcol
++#define ldap_first_tmplrow moz_ldap_first_tmplrow
++#define ldap_free_friendlymap moz_ldap_free_friendlymap
++#define ldap_free_searchprefs moz_ldap_free_searchprefs
++#define ldap_free_sort_keylist moz_ldap_free_sort_keylist
++#define ldap_free_templates moz_ldap_free_templates
++#define ldap_free_urldesc moz_ldap_free_urldesc
++#define ldap_friendly_name moz_ldap_friendly_name
++#define ldap_get_dn moz_ldap_get_dn
++#define ldap_get_entry_controls moz_ldap_get_entry_controls
++#define ldap_get_lang_values moz_ldap_get_lang_values
++#define ldap_get_lang_values_len moz_ldap_get_lang_values_len
++#define ldap_get_lderrno moz_ldap_get_lderrno
++#define ldap_get_option moz_ldap_get_option
++#define ldap_get_values moz_ldap_get_values
++#define ldap_get_values_len moz_ldap_get_values_len
++#define ldap_getfilter_free moz_ldap_getfilter_free
++#define ldap_getfirstfilter moz_ldap_getfirstfilter
++#define ldap_getnextfilter moz_ldap_getnextfilter
++#define ldap_init moz_ldap_init
++#define ldap_init_getfilter moz_ldap_init_getfilter
++#define ldap_init_getfilter_buf moz_ldap_init_getfilter_buf
++#define ldap_init_searchprefs moz_ldap_init_searchprefs
++#define ldap_init_searchprefs_buf moz_ldap_init_searchprefs_buf
++#define ldap_init_templates moz_ldap_init_templates
++#define ldap_init_templates_buf moz_ldap_init_templates_buf
++#define ldap_is_dns_dn moz_ldap_is_dns_dn
++#define ldap_is_ldap_url moz_ldap_is_ldap_url
++#define ldap_keysort_entries moz_ldap_keysort_entries
++#define ldap_ld_free moz_ldap_ld_free
++#define ldap_memcache_abandon moz_ldap_memcache_abandon
++#define ldap_memcache_append moz_ldap_memcache_append
++#define ldap_memcache_createkey moz_ldap_memcache_createkey
++#define ldap_memcache_destroy moz_ldap_memcache_destroy
++#define ldap_memcache_flush moz_ldap_memcache_flush
++#define ldap_memcache_flush_results moz_ldap_memcache_flush_results
++#define ldap_memcache_get moz_ldap_memcache_get
++#define ldap_memcache_init moz_ldap_memcache_init
++#define ldap_memcache_new moz_ldap_memcache_new
++#define ldap_memcache_result moz_ldap_memcache_result
++#define ldap_memcache_set moz_ldap_memcache_set
++#define ldap_memcache_update moz_ldap_memcache_update
++#define ldap_memfree moz_ldap_memfree
++#define ldap_modify moz_ldap_modify
++#define ldap_modify_ext moz_ldap_modify_ext
++#define ldap_modify_ext_s moz_ldap_modify_ext_s
++#define ldap_modify_s moz_ldap_modify_s
++#define ldap_modrdn moz_ldap_modrdn
++#define ldap_modrdn2 moz_ldap_modrdn2
++#define ldap_modrdn2_s moz_ldap_modrdn2_s
++#define ldap_modrdn_s moz_ldap_modrdn_s
++#define ldap_mods_free moz_ldap_mods_free
++#define ldap_msgdelete moz_ldap_msgdelete
++#define ldap_msgfree moz_ldap_msgfree
++#define ldap_msgid moz_ldap_msgid
++#define ldap_msgtype moz_ldap_msgtype
++#define ldap_multisort_entries moz_ldap_multisort_entries
++#define ldap_name2template moz_ldap_name2template
++#define ldap_next_attribute moz_ldap_next_attribute
++#define ldap_next_disptmpl moz_ldap_next_disptmpl
++#define ldap_next_entry moz_ldap_next_entry
++#define ldap_next_message moz_ldap_next_message
++#define ldap_next_reference moz_ldap_next_reference
++#define ldap_next_searchobj moz_ldap_next_searchobj
++#define ldap_next_tmplcol moz_ldap_next_tmplcol
++#define ldap_next_tmplrow moz_ldap_next_tmplrow
++#define ldap_oc2template moz_ldap_oc2template
++#define ldap_open moz_ldap_open
++#define ldap_parse_authzid_control moz_ldap_parse_authzid_control
++#define ldap_parse_entrychange_control moz_ldap_parse_entrychange_control
++#define ldap_parse_extended_result moz_ldap_parse_extended_result
++#define ldap_parse_passwd moz_ldap_parse_passwd
++#define ldap_parse_passwordpolicy_control moz_ldap_parse_passwordpolicy_control
++#define ldap_parse_passwordpolicy_control_ext moz_ldap_parse_passwordpolicy_control_ext
++#define ldap_parse_reference moz_ldap_parse_reference
++#define ldap_parse_result moz_ldap_parse_result
++#define ldap_parse_sasl_bind_result moz_ldap_parse_sasl_bind_result
++#define ldap_parse_sort_control moz_ldap_parse_sort_control
++#define ldap_parse_userstatus_control moz_ldap_parse_userstatus_control
++#define ldap_parse_virtuallist_control moz_ldap_parse_virtuallist_control
++#define ldap_parse_whoami moz_ldap_parse_whoami
++#define ldap_passwd moz_ldap_passwd
++#define ldap_passwd_s moz_ldap_passwd_s
++#define ldap_passwordpolicy_err2txt moz_ldap_passwordpolicy_err2txt
++#define ldap_perror moz_ldap_perror
++#define ldap_rename moz_ldap_rename
++#define ldap_rename_s moz_ldap_rename_s
++#define ldap_result moz_ldap_result
++#define ldap_result2error moz_ldap_result2error
++#define ldap_sasl_bind moz_ldap_sasl_bind
++#define ldap_sasl_bind_s moz_ldap_sasl_bind_s
++#define ldap_sasl_interactive_bind_ext_s moz_ldap_sasl_interactive_bind_ext_s
++#define ldap_sasl_interactive_bind_s moz_ldap_sasl_interactive_bind_s
++#define ldap_search moz_ldap_search
++#define ldap_search_ext moz_ldap_search_ext
++#define ldap_search_ext_s moz_ldap_search_ext_s
++#define ldap_search_s moz_ldap_search_s
++#define ldap_search_st moz_ldap_search_st
++#define ldap_set_filter_additions moz_ldap_set_filter_additions
++#define ldap_set_lderrno moz_ldap_set_lderrno
++#define ldap_set_option moz_ldap_set_option
++#define ldap_set_rebind_proc moz_ldap_set_rebind_proc
++#define ldap_setfilteraffixes moz_ldap_setfilteraffixes
++#define ldap_simple_bind moz_ldap_simple_bind
++#define ldap_simple_bind_s moz_ldap_simple_bind_s
++#define ldap_sort_entries moz_ldap_sort_entries
++#define ldap_sort_strcasecmp moz_ldap_sort_strcasecmp
++#define ldap_sort_values moz_ldap_sort_values
++#define ldap_start_tls_s moz_ldap_start_tls_s
++#define ldap_str2charray moz_ldap_str2charray
++#define ldap_tmplattrs moz_ldap_tmplattrs
++#define ldap_tmplerr2string moz_ldap_tmplerr2string
++#define ldap_tmplerrlist moz_ldap_tmplerrlist
++#define ldap_ufn_search_c moz_ldap_ufn_search_c
++#define ldap_ufn_search_ct moz_ldap_ufn_search_ct
++#define ldap_ufn_search_ctx moz_ldap_ufn_search_ctx
++#define ldap_ufn_search_s moz_ldap_ufn_search_s
++#define ldap_ufn_setfilter moz_ldap_ufn_setfilter
++#define ldap_ufn_setprefix moz_ldap_ufn_setprefix
++#define ldap_ufn_timeout moz_ldap_ufn_timeout
++#define ldap_unbind moz_ldap_unbind
++#define ldap_unbind_ext moz_ldap_unbind_ext
++#define ldap_unbind_s moz_ldap_unbind_s
++#define ldap_url_parse moz_ldap_url_parse
++#define ldap_url_parse_no_defaults moz_ldap_url_parse_no_defaults
++#define ldap_url_search moz_ldap_url_search
++#define ldap_url_search_s moz_ldap_url_search_s
++#define ldap_url_search_st moz_ldap_url_search_st
++#define ldap_utf8characters moz_ldap_utf8characters
++#define ldap_utf8copy moz_ldap_utf8copy
++#define ldap_utf8getcc moz_ldap_utf8getcc
++#define ldap_utf8isalnum moz_ldap_utf8isalnum
++#define ldap_utf8isalpha moz_ldap_utf8isalpha
++#define ldap_utf8isdigit moz_ldap_utf8isdigit
++#define ldap_utf8isspace moz_ldap_utf8isspace
++#define ldap_utf8isxdigit moz_ldap_utf8isxdigit
++#define ldap_utf8len moz_ldap_utf8len
++#define ldap_utf8next moz_ldap_utf8next
++#define ldap_utf8prev moz_ldap_utf8prev
++#define ldap_utf8strtok_r moz_ldap_utf8strtok_r
++#define ldap_vals2html moz_ldap_vals2html
++#define ldap_vals2text moz_ldap_vals2text
++#define ldap_value_free moz_ldap_value_free
++#define ldap_value_free_len moz_ldap_value_free_len
++#define ldap_version moz_ldap_version
++#define ldap_whoami moz_ldap_whoami
++#define ldap_whoami_s moz_ldap_whoami_s
++#define ldap_x_calloc moz_ldap_x_calloc
++#define ldap_x_free moz_ldap_x_free
++#define ldap_x_hostlist_first moz_ldap_x_hostlist_first
++#define ldap_x_hostlist_next moz_ldap_x_hostlist_next
++#define ldap_x_hostlist_statusfree moz_ldap_x_hostlist_statusfree
++#define ldap_x_malloc moz_ldap_x_malloc
++#define ldap_x_realloc moz_ldap_x_realloc
++
+ /* Standard LDAP API functions and declarations */
+ #include "ldap-standard.h"
+
diff --git a/mail/thunderbird/files/patch-bug702179 b/mail/thunderbird/files/patch-bug702179
new file mode 100644
index 000000000000..9f6977c5225e
--- /dev/null
+++ b/mail/thunderbird/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
+--- mozilla/configure.in
++++ mozilla/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
+--- mozilla/js/src/Makefile.in
++++ mozilla/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/mail/thunderbird/files/patch-bug779713 b/mail/thunderbird/files/patch-bug779713
new file mode 100644
index 000000000000..5137460a022c
--- /dev/null
+++ b/mail/thunderbird/files/patch-bug779713
@@ -0,0 +1,75 @@
+--- mozilla/mfbt/Alignment.h
++++ mozilla/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
+--- mozilla/mfbt/Attributes.h
++++ mozilla/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/mail/thunderbird/files/patch-bug783463 b/mail/thunderbird/files/patch-bug783463
deleted file mode 100644
index 7fc8ba00f21a..000000000000
--- a/mail/thunderbird/files/patch-bug783463
+++ /dev/null
@@ -1,14 +0,0 @@
---- mozilla/gfx/skia/moz.build~
-+++ mozilla/gfx/skia/moz.build
-@@ -188,10 +188,9 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'qt
- 'SkMMapStream.cpp',
- 'SkOSFile.cpp',
- ]
-- if CONFIG['OS_TARGET'] == 'Linux':
-+ if CONFIG['MOZ_X11'] == 1 or CONFIG['OS_TARGET'] == 'Linux':
- CPP_SOURCES += [
- 'SkFontHost_linux.cpp',
-- 'SkFontHost_tables.cpp',
- 'SkThread_pthread.cpp',
- 'SkTime_Unix.cpp',
- ]
diff --git a/mail/thunderbird/files/patch-bug803480 b/mail/thunderbird/files/patch-bug803480
deleted file mode 100644
index 3a64220a6ad7..000000000000
--- a/mail/thunderbird/files/patch-bug803480
+++ /dev/null
@@ -1,102 +0,0 @@
-diff --git configure.in configure.in
-index a0575dc..be327fd 100644
---- mozilla/configure.in
-+++ mozilla/configure.in
-@@ -4306,7 +4306,6 @@ NS_PRINTING=1
- MOZ_PDF_PRINTING=
- MOZ_DISABLE_CRYPTOLEGACY=
- NSS_DISABLE_DBM=
--NECKO_WIFI=1
- NECKO_COOKIES=1
- NECKO_PROTOCOLS_DEFAULT="about data file ftp http res viewsource websocket wyciwyg device"
- USE_ARM_KUSER=
-@@ -4336,11 +4335,6 @@ case "${target}" in
- fi
-
- NSS_DISABLE_DBM=1
-- if test -z "$gonkdir"; then
-- NECKO_WIFI=
-- else
-- NECKO_WIFI=1
-- fi
- MOZ_THEME_FASTSTRIPE=1
- MOZ_TREE_FREETYPE=1
- MOZ_MEMORY=1
-@@ -8485,28 +8479,39 @@ done
- dnl
- dnl option to disable necko's wifi scanner
- dnl
-+
-+case "$OS_TARGET" in
-+ OS2)
-+ dnl OS/2 implementation of Necko-WiFi support will be added in bug 506566
-+ ;;
-+ Android)
-+ if test -n "$gonkdir"; then
-+ NECKO_WIFI=1
-+ fi
-+ ;;
-+ Darwin|SunOS|WINNT)
-+ NECKO_WIFI=1
-+ ;;
-+ Linux)
-+ if test -z "$MOZ_ENABLE_DBUS"; then
-+ AC_MSG_ERROR([Necko WiFi scanning needs DBus on your platform, remove --disable-dbus or use --disable-necko-wifi])
-+ fi
-+ NECKO_WIFI=1
-+ NECKO_WIFI_DBUS=1
-+ ;;
-+esac
-+
- MOZ_ARG_DISABLE_BOOL(necko-wifi,
- [ --disable-necko-wifi Disable necko wifi scanner],
- NECKO_WIFI=,
- NECKO_WIFI=1)
-
--if test "$OS_ARCH" = "OS2"; then
-- dnl OS/2 implementation of Necko-WiFi support will be added in bug 506566
-- NECKO_WIFI=
--fi
--if test "$NECKO_WIFI" -a \
-- "$OS_ARCH" != "Linux" -a \
-- "$OS_ARCH" != "Darwin" -a \
-- "$OS_ARCH" != "SunOS" -a \
-- "$OS_ARCH" != "WINNT"; then
-- AC_MSG_ERROR([Necko WiFi scanning not supported on your platform, use --disable-necko-wifi])
--fi
--
- if test "$NECKO_WIFI"; then
- AC_DEFINE(NECKO_WIFI)
- _NON_GLOBAL_ACDEFINES="$_NON_GLOBAL_ACDEFINES NECKO_WIFI"
- fi
- AC_SUBST(NECKO_WIFI)
-+AC_SUBST(NECKO_WIFI_DBUS)
-
- dnl
- dnl option to disable cookies
-diff --git netwerk/wifi/Makefile.in netwerk/wifi/Makefile.in
-index 26dbd79..4cbf912 100644
---- mozilla/netwerk/wifi/Makefile.in
-+++ mozilla/netwerk/wifi/Makefile.in
-@@ -20,7 +20,7 @@ ifeq ($(OS_ARCH),SunOS)
- OS_INCLUDES += $(GLIB_CFLAGS)
- endif
-
--ifdef MOZ_ENABLE_DBUS
-+ifdef NECKO_WIFI_DBUS
- OS_INCLUDES += $(MOZ_DBUS_GLIB_CFLAGS)
- endif
-
-diff --git netwerk/wifi/moz.build netwerk/wifi/moz.build
-index 5e70211..07b01de 100644
---- mozilla/netwerk/wifi/moz.build
-+++ mozilla/netwerk/wifi/moz.build
-@@ -43,7 +43,7 @@ elif CONFIG['OS_ARCH'] == 'SunOS':
- 'nsWifiScannerSolaris.cpp',
- ]
-
--if CONFIG['MOZ_ENABLE_DBUS']:
-+if CONFIG['NECKO_WIFI_DBUS']:
- CPP_SOURCES += [
- 'nsWifiScannerDBus.cpp',
- ]
diff --git a/mail/thunderbird/files/patch-bug807492 b/mail/thunderbird/files/patch-bug807492
deleted file mode 100644
index f486428a2a4d..000000000000
--- a/mail/thunderbird/files/patch-bug807492
+++ /dev/null
@@ -1,628 +0,0 @@
-JJdiff --git configure.in configure.in
-index c167461..8346c11 100644
---- mozilla/configure.in
-+++ mozilla/configure.in
-@@ -5246,17 +5246,17 @@ if test "$NS_PRINTING"; then
- AC_DEFINE(NS_PRINT_PREVIEW)
- fi
-
- dnl Turn off webrtc for OS's we don't handle yet, but allow
- dnl --enable-webrtc to override. Can disable for everything in
- dnl the master list above.
- if test -n "$MOZ_WEBRTC"; then
- case "$target" in
-- *-linux*|*-mingw*|*-darwin*|*-android*|*-linuxandroid*)
-+ *-linux*|*-mingw*|*-darwin*|*-android*|*-linuxandroid*|*-dragonfly*|*-freebsd*|*-netbsd*|*-openbsd*)
- dnl Leave enabled
- ;;
- *)
- dnl default to disabled for all others
- MOZ_WEBRTC=
- ;;
- esac
- fi
-diff --git media/mtransport/objs.mk media/mtransport/objs.mk
-index f1fc85f..141e8ca 100644
---- mozilla/media/mtransport/objs.mk
-+++ mozilla/media/mtransport/objs.mk
-@@ -18,22 +18,26 @@ LOCAL_INCLUDES += \
- -I$(topsrcdir)/media/mtransport/third_party/nrappkit/src/util/libekr \
- -I$(topsrcdir)/media/mtransport/third_party/nrappkit/src/log \
- -I$(topsrcdir)/media/mtransport/third_party/nrappkit/src/registry \
- -I$(topsrcdir)/media/mtransport/third_party/nrappkit/src/stats \
- -I$(topsrcdir)/media/mtransport/third_party/nrappkit/src/plugin \
- -I$(topsrcdir)/media/mtransport/third_party/nrappkit/src/event \
- $(NULL)
-
--ifeq ($(OS_TARGET), Darwin)
-+ifneq (,$(filter Darwin DragonFly FreeBSD NetBSD OpenBSD,$(OS_TARGET)))
- LOCAL_INCLUDES += \
- -I$(topsrcdir)/media/mtransport/third_party/nrappkit/src/port/darwin/include \
- -I$(topsrcdir)/media/mtransport/third_party/nrappkit/src/port/generic/include \
- $(NULL)
-+ifeq ($(OS_TARGET), Darwin)
- DEFINES += -DDARWIN
-+else
-+DEFINES += -DBSD
-+endif
- endif
-
- ifeq ($(OS_TARGET), Linux)
- LOCAL_INCLUDES += \
- -I$(topsrcdir)/media/mtransport/third_party/nrappkit/src/port/linux/include \
- -I$(topsrcdir)/media/mtransport/third_party/nrappkit/src/port/generic/include \
- $(NULL)
- DEFINES += -DLINUX
-diff --git media/mtransport/test/Makefile.in media/mtransport/test/Makefile.in
-index c1d5bf4..2ecf2c7 100644
---- mozilla/media/mtransport/test/Makefile.in
-+++ mozilla/media/mtransport/test/Makefile.in
-@@ -73,22 +73,24 @@ DEFINES += -D__Userspace_os_FreeBSD=1
- else
- #default_fallback; probably doesn't work
- DEFINES += -D__Userspace_os_$(OS_TARGET)=1
- endif
- endif
- endif
- endif
-
--ifeq ($(OS_TARGET), Darwin)
-+ifneq (,$(filter Darwin DragonFly FreeBSD NetBSD OpenBSD,$(OS_TARGET)))
- LOCAL_INCLUDES += -I$(topsrcdir)/media/mtransport/third_party/nrappkit/src/port/darwin/include
-+ifeq ($(OS_TARGET), Darwin)
- DEFINES += \
- -DGTEST_USE_OWN_TR1_TUPLE=1 \
- $(NULL)
- endif
-+endif
-
- ifeq ($(OS_TARGET), Linux)
- LOCAL_INCLUDES += -I$(topsrcdir)/media/mtransport/third_party/nrappkit/src/port/linux/include
- endif
-
- ifeq ($(OS_TARGET), Android)
- LOCAL_INCLUDES += -I$(topsrcdir)/media/mtransport/third_party/nrappkit/src/port/android/include
-
-diff --git media/mtransport/third_party/nICEr/nicer.gyp media/mtransport/third_party/nICEr/nicer.gyp
-index 0e1f8b4..9a4b995 100644
---- mozilla/media/mtransport/third_party/nICEr/nicer.gyp
-+++ mozilla/media/mtransport/third_party/nICEr/nicer.gyp
-@@ -126,26 +126,36 @@
- 'R_DEFINED_UINT2=uint16_t',
- 'R_DEFINED_INT4=int32_t',
- 'R_DEFINED_UINT4=uint32_t',
- 'R_DEFINED_INT8=int64_t',
- 'R_DEFINED_UINT8=uint64_t',
- ],
-
- 'conditions' : [
-- ## Mac
-+ ## Mac and BSDs
- [ 'OS == "mac"', {
-+ 'defines' : [
-+ 'DARWIN',
-+ 'HAVE_XLOCALE',
-+ ],
-+ }],
-+ [ 'os_bsd == 1', {
-+ 'defines' : [
-+ 'BSD',
-+ ],
-+ }],
-+ [ 'OS == "mac" or os_bsd == 1', {
- 'cflags_mozilla': [
- '-Wall',
- '-Wno-parentheses',
- '-Wno-strict-prototypes',
- '-Wmissing-prototypes',
- ],
- 'defines' : [
-- 'DARWIN',
- 'HAVE_LIBM=1',
- 'HAVE_STRDUP=1',
- 'HAVE_STRLCPY=1',
- 'HAVE_SYS_TIME_H=1',
- 'HAVE_VFPRINTF=1',
- 'NEW_STDIO'
- 'RETSIGTYPE=void',
- 'TIME_WITH_SYS_TIME_H=1',
-diff --git media/mtransport/third_party/nICEr/src/stun/addrs.c media/mtransport/third_party/nICEr/src/stun/addrs.c
-index b0b66b2..04fea94 100644
---- mozilla/media/mtransport/third_party/nICEr/src/stun/addrs.c
-+++ mozilla/media/mtransport/third_party/nICEr/src/stun/addrs.c
-@@ -50,17 +50,19 @@ static char *RCSSTRING __UNUSED__="$Id: addrs.c,v 1.2 2008/04/28 18:21:30 ekr Ex
- #else
- #include <syslog.h>
- /* Work around an Android NDK < r8c bug */
- #undef __unused
- #include <linux/sysctl.h>
- #endif
- #include <net/if.h>
- #ifndef LINUX
-+#if !defined(__OpenBSD__) && !defined(__NetBSD__)
- #include <net/if_var.h>
-+#endif
- #include <net/if_dl.h>
- #include <net/if_types.h>
- #include <sys/sockio.h>
- #else
- #include <linux/if.h>
- #endif
- #include <net/route.h>
-
-@@ -75,17 +77,17 @@ static char *RCSSTRING __UNUSED__="$Id: addrs.c,v 1.2 2008/04/28 18:21:30 ekr Ex
- #include <netdb.h>
- #endif /* UNIX */
-
- #include "stun.h"
- #include "addrs.h"
-
-
-
--#ifdef DARWIN
-+#if defined(BSD) || defined(DARWIN)
- /*
- * Copyright (c) 1983, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
-@@ -685,17 +687,17 @@ nr_stun_remove_duplicate_addrs(nr_transport_addr addrs[], int remove_loopback, i
- }
-
- int
- nr_stun_get_addrs(nr_transport_addr addrs[], int maxaddrs, int drop_loopback, int *count)
- {
- int _status=0;
- int i;
-
--#ifdef DARWIN
-+#if defined(BSD) || defined(DARWIN)
- _status = stun_get_mib_addrs(addrs, maxaddrs, count);
- #elif defined(WIN32)
- _status = stun_get_win32_addrs(addrs, maxaddrs, count);
- #elif defined(__sparc__)
- _status = stun_get_sparc_addrs(addrs, maxaddrs, count);
- #else
- _status = stun_get_siocgifconf_addrs(addrs, maxaddrs, count);
- #endif
-diff --git media/mtransport/third_party/nICEr/src/stun/stun.h media/mtransport/third_party/nICEr/src/stun/stun.h
-index a3c51f9..eb65ac8 100644
---- mozilla/media/mtransport/third_party/nICEr/src/stun/stun.h
-+++ mozilla/media/mtransport/third_party/nICEr/src/stun/stun.h
-@@ -36,21 +36,25 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
- #ifdef WIN32
- #include <winsock2.h>
- #else
- #include <sys/param.h>
- #include <sys/socket.h>
- #include <net/if.h>
- #ifndef LINUX
-+#if !defined(__OpenBSD__) && !defined(__NetBSD__)
- #include <net/if_var.h>
-+#endif
- #include <net/if_dl.h>
- #include <net/if_types.h>
- #endif
-+#ifndef BSD
- #include <net/route.h>
-+#endif
- #include <netinet/in.h>
- #ifndef LINUX
- #include <netinet/in_var.h>
- #endif
- #include <arpa/inet.h>
- #include <netdb.h>
- #endif
- #include <time.h>
-diff --git media/mtransport/third_party/nICEr/src/util/mbslen.c media/mtransport/third_party/nICEr/src/util/mbslen.c
-index cc260b7..66af2d7 100644
---- mozilla/media/mtransport/third_party/nICEr/src/util/mbslen.c
-+++ mozilla/media/mtransport/third_party/nICEr/src/util/mbslen.c
-@@ -38,50 +38,58 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
- #include <errno.h>
- #include <csi_platform.h>
-
- #include <assert.h>
- #include <locale.h>
- #include <stdlib.h>
- #include <wchar.h>
--#ifdef DARWIN
-+
-+#ifdef __FreeBSD__
-+#include <osreldate.h>
-+# if __FreeBSD_version > 900505
-+# define HAVE_XLOCALE
-+# endif
-+#endif
-+
-+#ifdef HAVE_XLOCALE
- #include <xlocale.h>
--#endif /* DARWIN */
-+#endif /* HAVE_XLOCALE */
-
- #include "nr_api.h"
- #include "mbslen.h"
-
- /* get number of characters in a mult-byte character string */
- int
- mbslen(const char *s, size_t *ncharsp)
- {
--#ifdef DARWIN
-+#ifdef HAVE_XLOCALE
- static locale_t loc = 0;
- static int initialized = 0;
--#endif /* DARWIN */
-+#endif /* HAVE_XLOCALE */
- #ifdef WIN32
- char *my_locale=0;
- unsigned int i;
- #endif /* WIN32 */
- int _status;
- size_t nbytes;
- int nchars;
- mbstate_t mbs;
-
--#ifdef DARWIN
-+#ifdef HAVE_XLOCALE
- if (! initialized) {
- initialized = 1;
- loc = newlocale(LC_CTYPE_MASK, "UTF-8", LC_GLOBAL_LOCALE);
- }
-
- if (loc == 0) {
- /* unable to create the UTF-8 locale */
- assert(loc != 0); /* should never happen */
--#endif /* DARWIN */
-+#endif /* HAVE_XLOCALE */
-
- #ifdef WIN32
- if (!setlocale(LC_CTYPE, 0))
- ABORT(R_INTERNAL);
-
- if (!(my_locale = r_strdup(setlocale(LC_CTYPE, 0))))
- ABORT(R_NO_MEMORY);
-
-@@ -94,28 +102,28 @@ mbslen(const char *s, size_t *ncharsp)
- /* can't count UTF-8 characters with mbrlen if the locale isn't UTF-8 */
- /* null-checking setlocale is required because Android */
- char *locale = setlocale(LC_CTYPE, 0);
- /* some systems use "utf8" instead of "UTF-8" like Fedora 17 */
- if (!locale || (!strcasestr(locale, "UTF-8") && !strcasestr(locale, "UTF8")))
- ABORT(R_NOT_FOUND);
- #endif
-
--#ifdef DARWIN
-+#ifdef HAVE_XLOCALE
- }
--#endif /* DARWIN */
-+#endif /* HAVE_XLOCALE */
-
- memset(&mbs, 0, sizeof(mbs));
- nchars = 0;
-
--#ifdef DARWIN
-+#ifdef HAVE_XLOCALE
- while (*s != '\0' && (nbytes = mbrlen_l(s, strlen(s), &mbs, loc)) != 0)
- #else
- while (*s != '\0' && (nbytes = mbrlen(s, strlen(s), &mbs)) != 0)
--#endif /* DARWIN */
-+#endif /* HAVE_XLOCALE */
- {
- if (nbytes == (size_t)-1) /* should never happen */ {
- ABORT(R_INTERNAL);
- }
- if (nbytes == (size_t)-2) /* encoding error */ {
- ABORT(R_BAD_DATA);
- }
-
-diff --git media/mtransport/third_party/nrappkit/nrappkit.gyp media/mtransport/third_party/nrappkit/nrappkit.gyp
-index 3cc8e1c..74016c6 100644
---- mozilla/media/mtransport/third_party/nrappkit/nrappkit.gyp
-+++ mozilla/media/mtransport/third_party/nrappkit/nrappkit.gyp
-@@ -142,26 +142,35 @@
- 'R_DEFINED_UINT2=uint16_t',
- 'R_DEFINED_INT4=int32_t',
- 'R_DEFINED_UINT4=uint32_t',
- 'R_DEFINED_INT8=int64_t',
- 'R_DEFINED_UINT8=uint64_t',
- ],
-
- 'conditions' : [
-- ## Mac
-+ ## Mac and BSDs
- [ 'OS == "mac"', {
-+ 'defines' : [
-+ 'DARWIN',
-+ ],
-+ }],
-+ [ 'os_bsd == 1', {
-+ 'defines' : [
-+ 'BSD',
-+ ],
-+ }],
-+ [ 'OS == "mac" or os_bsd == 1', {
- 'cflags_mozilla': [
- '-Wall',
- '-Wno-parentheses',
- '-Wno-strict-prototypes',
- '-Wmissing-prototypes',
- ],
- 'defines' : [
-- 'DARWIN',
- 'HAVE_LIBM=1',
- 'HAVE_STRDUP=1',
- 'HAVE_STRLCPY=1',
- 'HAVE_SYS_TIME_H=1',
- 'HAVE_VFPRINTF=1',
- 'NEW_STDIO'
- 'RETSIGTYPE=void',
- 'TIME_WITH_SYS_TIME_H=1',
-diff --git media/mtransport/third_party/nrappkit/src/log/r_log.c media/mtransport/third_party/nrappkit/src/log/r_log.c
-index efb7ef2..aebf578 100644
---- mozilla/media/mtransport/third_party/nrappkit/src/log/r_log.c
-+++ mozilla/media/mtransport/third_party/nrappkit/src/log/r_log.c
-@@ -43,16 +43,17 @@ static char *RCSSTRING __UNUSED__ ="$Id: r_log.c,v 1.10 2008/11/25 22:25:18 adam
- #ifdef LINUX
- #define _BSD_SOURCE
- #endif
-
- #include "r_log.h"
- #include "hex.h"
-
- #include <string.h>
-+#include <errno.h>
- #ifndef _MSC_VER
- #include <strings.h>
- #include <syslog.h>
- #endif
- #include <registry.h>
- #include <time.h>
-
-
-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 bcb1ec0..bb73591 100644
---- mozilla/media/mtransport/third_party/nrappkit/src/port/generic/include/sys/queue.h
-+++ mozilla/media/mtransport/third_party/nrappkit/src/port/generic/include/sys/queue.h
-@@ -33,7 +33,7 @@
- #ifndef _SYS_QUEUE_H_
- #define _SYS_QUEUE_H_
-
--#ifndef DARWIN
-+#if !defined(__FreeBSD__) && !defined(DARWIN)
- #include <stddef.h>
- #define __offsetof offsetof
- #endif
-diff --git media/mtransport/third_party/nrappkit/src/util/util.c media/mtransport/third_party/nrappkit/src/util/util.c
-index a7d4ff1..ff11a60 100644
---- mozilla/media/mtransport/third_party/nrappkit/src/util/util.c
-+++ mozilla/media/mtransport/third_party/nrappkit/src/util/util.c
-@@ -40,16 +40,17 @@
- static char *RCSSTRING __UNUSED__ ="$Id: util.c,v 1.5 2007/11/21 00:09:13 adamcain Exp $";
-
- #ifndef WIN32
- #include <sys/uio.h>
- #include <pwd.h>
- #include <dirent.h>
- #endif
- #include <string.h>
-+#include <errno.h>
- #include <ctype.h>
- #include <sys/stat.h>
- #ifdef OPENSSL
- #include <openssl/evp.h>
- #endif
- #include "nr_common.h"
- #include "r_common.h"
- #include "registry.h"
-diff --git media/webrtc/signaling/signaling.gyp media/webrtc/signaling/signaling.gyp
-index 2a91e3d..31de641 100644
---- mozilla/media/webrtc/signaling/signaling.gyp
-+++ mozilla/media/webrtc/signaling/signaling.gyp
-@@ -212,16 +212,29 @@
- 'SIPCC_BUILD',
- 'HAVE_WINSOCK2_H',
- 'CPR_STDINT_INCLUDE=\\"mozilla/StandardInteger.h\\"'
- ],
-
- 'cflags_mozilla': [
- ],
- }],
-+ ['os_bsd==1', {
-+ 'include_dirs': [
-+ ],
-+ 'defines': [
-+ # avoiding pointless ifdef churn
-+ 'SIP_OS_OSX',
-+ 'OSX',
-+ 'SECLIB_OPENSSL',
-+ ],
-+
-+ 'cflags_mozilla': [
-+ ],
-+ }],
- ['OS=="mac"', {
- 'include_dirs': [
- ],
- 'defines': [
- 'SIP_OS_OSX',
- 'OSX',
- '_FORTIFY_SOURCE=2',
- ],
-@@ -747,17 +760,17 @@
- 'EXTERNAL_TICK_REQUIRED',
- 'GIPS_VER=3480',
- ],
-
- 'cflags_mozilla': [
- ],
-
- }],
-- ['OS=="mac"', {
-+ ['OS=="mac" or os_bsd==1', {
-
- 'include_dirs': [
- ],
-
- 'sources': [
- # SIPSTACK
- './src/sipcc/core/sipstack/sip_platform_task.c',
-
-@@ -792,24 +805,23 @@
- './src/sipcc/cpr/darwin/cpr_darwin_timers_using_select.c',
- './src/sipcc/cpr/darwin/cpr_darwin_tst.h',
- './src/sipcc/cpr/darwin/cpr_darwin_types.h',
- ],
-
-
- 'defines' : [
- 'SIP_OS_OSX',
-- '_POSIX_SOURCE',
-+ # using BSD extensions, leave _POSIX_SOURCE undefined
- 'CPR_MEMORY_LITTLE_ENDIAN',
- 'NO_SOCKET_POLLING',
- 'USE_TIMER_SELECT_BASED',
- 'FULL_BUILD',
- 'STUBBED_OUT',
- 'USE_PRINTF',
-- '_DARWIN_C_SOURCE',
- 'NO_NSPR_10_SUPPORT',
- ],
-
- 'cflags_mozilla': [
- ],
- }],
- ],
-
-diff --git media/webrtc/signaling/src/sipcc/cpr/darwin/cpr_darwin_ipc.c media/webrtc/signaling/src/sipcc/cpr/darwin/cpr_darwin_ipc.c
-index a7c47e1..4f191de 100644
---- mozilla/media/webrtc/signaling/src/sipcc/cpr/darwin/cpr_darwin_ipc.c
-+++ mozilla/media/webrtc/signaling/src/sipcc/cpr/darwin/cpr_darwin_ipc.c
-@@ -317,21 +317,25 @@ cprGetMessage (cprMsgQueue_t msgQueue, boolean waitForever, void **ppUserData)
- {
- static const char fname[] = "cprGetMessage";
-
- void *buffer = 0;
- cpr_msg_queue_t *msgq;
- cpr_msgq_node_t *node;
- struct timespec timeout;
- struct timeval tv;
-+#ifndef __APPLE__
-+ struct timezone tz;
-+#else
- // On the iPhone, there is a DarwinAlias problem with "timezone"
- struct _timezone {
- int tz_minuteswest; /* of Greenwich */
- int tz_dsttime; /* type of dst correction to apply */
- } tz;
-+#endif
-
- /* Initialize ppUserData */
- if (ppUserData) {
- *ppUserData = NULL;
- }
-
- msgq = (cpr_msg_queue_t *) msgQueue;
- if (msgq == NULL) {
-diff --git media/webrtc/signaling/test/Makefile.in media/webrtc/signaling/test/Makefile.in
-index a30e330..cfbd8a3 100644
---- mozilla/media/webrtc/signaling/test/Makefile.in
-+++ mozilla/media/webrtc/signaling/test/Makefile.in
-@@ -81,17 +81,17 @@ endif
- ifeq (qt,$(MOZ_WIDGET_TOOLKIT))
- LIBS += \
- $(XLIBS) \
- $(TK_LIBS) \
- $(MOZ_PANGO_LIBS) \
- $(NULL)
- endif
-
--ifeq ($(OS_TARGET),Linux)
-+ifneq (,$(filter Linux DragonFly FreeBSD NetBSD OpenBSD,$(OS_TARGET)))
- LIBS += \
- $(MOZ_CAIRO_OSLIBS) \
- $(NULL)
- endif
-
- ifeq ($(OS_TARGET),Darwin)
- LIBS += \
- -framework AudioToolbox \
-diff --git media/webrtc/trunk/tools/gyp/pylib/gyp/generator/mozmake.py media/webrtc/trunk/tools/gyp/pylib/gyp/generator/mozmake.py
-index 338d0b7..2241d41 100644
---- mozilla/media/webrtc/trunk/tools/gyp/pylib/gyp/generator/mozmake.py
-+++ mozilla/media/webrtc/trunk/tools/gyp/pylib/gyp/generator/mozmake.py
-@@ -1,16 +1,17 @@
- # Copyright (c) 2012 Mozilla Foundation. All rights reserved.
- # Use of this source code is governed by a BSD-style license that can be
- # found in the LICENSE file.
-
- import collections
- import gyp
- import gyp.common
- import sys
-+import platform
- import os
- import re
- import shlex
-
- generator_wants_sorted_dependencies = True
-
- generator_default_variables = {
- }
-@@ -107,30 +108,44 @@ endif
-
- def ensure_directory_exists(path):
- dir = os.path.dirname(path)
- if dir and not os.path.exists(dir):
- os.makedirs(dir)
-
- def GetFlavor(params):
- """Returns |params.flavor| if it's set, the system's default flavor else."""
-+ system = platform.system().lower()
- flavors = {
-- 'win32': 'win',
-- 'darwin': 'mac',
-- 'sunos5': 'solaris',
-- 'freebsd7': 'freebsd',
-- 'freebsd8': 'freebsd',
-+ 'microsoft': 'win',
-+ 'windows' : 'win',
-+ 'darwin' : 'mac',
-+ 'sunos' : 'solaris',
-+ 'dragonfly': 'bsd',
-+ 'freebsd' : 'bsd',
-+ 'netbsd' : 'bsd',
-+ 'openbsd' : 'bsd',
- }
-- flavor = flavors.get(sys.platform, 'linux')
-- return params.get('flavor', flavor)
-+
-+ if 'flavor' in params:
-+ return params['flavor']
-+ if system.startswith('cygwin'):
-+ return 'win'
-+ if system in flavors:
-+ return flavors[system]
-+
-+ return 'linux'
-
-
- def CalculateVariables(default_variables, params):
-+ flavor = GetFlavor(params)
-+ if flavor == 'bsd':
-+ flavor = platform.system().lower()
- generator_flags = params.get('generator_flags', {})
-- default_variables['OS'] = generator_flags.get('os', GetFlavor(params))
-+ default_variables['OS'] = generator_flags.get('os', flavor)
-
-
- def CalculateGeneratorInputInfo(params):
- """Calculate the generator specific info that gets fed to input (called by
- gyp)."""
- generator_flags = params.get('generator_flags', {})
- if generator_flags.get('adjust_static_libraries', False):
- global generator_wants_static_library_dependencies_adjusted
diff --git a/mail/thunderbird/files/patch-bug810716 b/mail/thunderbird/files/patch-bug810716
deleted file mode 100644
index 05637dc71251..000000000000
--- a/mail/thunderbird/files/patch-bug810716
+++ /dev/null
@@ -1,68 +0,0 @@
-diff --git configure.in configure.in
-index 2084be9..eb6eeb2 100644
---- mozilla/configure.in
-+++ mozilla/configure.in
-@@ -3369,14 +3369,19 @@ fi
- AC_CACHE_CHECK(
- [for res_ninit()],
- ac_cv_func_res_ninit,
-- [AC_TRY_LINK([
-+ [AC_TRY_RUN([
- #ifdef linux
- #define _BSD_SOURCE 1
- #endif
-+ #include <sys/types.h>
-+ #include <netinet/in.h>
-+ #include <arpa/nameser.h>
- #include <resolv.h>
-- ],
-- [int foo = res_ninit(&_res);],
-+ int main(int argc, char **argv){
-+ int foo = res_ninit(&_res);
-+ }],
- [ac_cv_func_res_ninit=yes],
-+ [ac_cv_func_res_ninit=no],
- [ac_cv_func_res_ninit=no])
- ])
-
-diff --git extensions/auth/nsAuthGSSAPI.cpp extensions/auth/nsAuthGSSAPI.cpp
-index e828beb..6444246 100644
---- mozilla/extensions/auth/nsAuthGSSAPI.cpp
-+++ mozilla/extensions/auth/nsAuthGSSAPI.cpp
-@@ -39,6 +39,9 @@ typedef KLStatus (*KLCacheHasValidTickets_type)(
- #endif
-
- #if defined(HAVE_RES_NINIT)
-+#include <sys/types.h>
-+#include <netinet/in.h>
-+#include <arpa/nameser.h>
- #include <resolv.h>
- #endif
-
-diff --git js/src/configure.in js/src/configure.in
-index e25f569..b9722f9 100644
---- mozilla/js/src/configure.in
-+++ mozilla/js/src/configure.in
-@@ -2797,14 +2797,19 @@ fi
- AC_CACHE_CHECK(
- [for res_ninit()],
- ac_cv_func_res_ninit,
-- [AC_TRY_LINK([
-+ [AC_TRY_RUN([
- #ifdef linux
- #define _BSD_SOURCE 1
- #endif
-+ #include <sys/types.h>
-+ #include <netinet/in.h>
-+ #include <arpa/nameser.h>
- #include <resolv.h>
-- ],
-- [int foo = res_ninit(&_res);],
-+ int main(int argc, char **argv){
-+ int foo = res_ninit(&_res);
-+ }],
- [ac_cv_func_res_ninit=yes],
-+ [ac_cv_func_res_ninit=no],
- [ac_cv_func_res_ninit=no])
- ])
-
diff --git a/mail/thunderbird/files/patch-bug826985 b/mail/thunderbird/files/patch-bug826985
index c7bd5a99a7f9..66399a394266 100644
--- a/mail/thunderbird/files/patch-bug826985
+++ b/mail/thunderbird/files/patch-bug826985
@@ -26,22 +26,23 @@ index 55e4cd1..76567b3 100644
dnl enable once Signaling lands
MOZ_WEBRTC_SIGNALING=1
AC_DEFINE(MOZ_WEBRTC_SIGNALING)
-@@ -8981,6 +8984,10 @@ elif test "${OS_TARGET}" = "Android"; then
- fi
- fi
-
-+if test -n "$MOZ_LIBV4L2_LIBS"; then
-+ EXTRA_GYP_DEFINES="$EXTRA_GYP_DEFINES -D use_libv4l2=1"
-+fi
-+
- if test -n "$MOZ_WEBRTC"; then
- AC_MSG_RESULT("generating WebRTC Makefiles...")
-
+diff --git build/gyp.mozbuild build/gyp.mozbuild
+index b483cd1..f1dd1f0 100644
+--- mozilla/build/gyp.mozbuild
++++ mozilla/build/gyp.mozbuild
+@@ -11,6 +11,7 @@ gyp_vars = {
+ 'have_ethtool_cmd_speed_hi': 1 if CONFIG['MOZ_WEBRTC_HAVE_ETHTOOL_SPEED_HI'] else 0,
+ 'include_alsa_audio': 1 if CONFIG['MOZ_ALSA'] else 0,
+ 'include_pulse_audio': 1 if CONFIG['MOZ_PULSEAUDIO'] else 0,
++ 'use_libv4l2': 1 if CONFIG['MOZ_LIBV4L2_LIBS'] else 0,
+ # basic stuff for everything
+ 'include_internal_video_render': 0,
+ 'clang_use_chrome_plugins': 0,
diff --git media/webrtc/signaling/test/Makefile.in media/webrtc/signaling/test/Makefile.in
index b483cd1..f1dd1f0 100644
--- mozilla/media/webrtc/signaling/test/Makefile.in
+++ mozilla/media/webrtc/signaling/test/Makefile.in
-@@ -17,6 +17,7 @@ LIBS = \
+@@ -7,6 +7,7 @@ LIBS = \
$(NSPR_LIBS) \
$(NSS_LIBS) \
$(REALTIME_LIBS) \
@@ -53,7 +54,7 @@ diff --git media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_lin
index 239a292..bab496c 100644
--- mozilla/media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc
+++ mozilla/media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc
-@@ -26,11 +26,23 @@
+@@ -25,10 +25,21 @@
#else
#include <linux/videodev2.h>
#endif
@@ -61,9 +62,8 @@ index 239a292..bab496c 100644
+#include <libv4l2.h>
+#endif
- #include "ref_count.h"
- #include "trace.h"
-
+ #include "webrtc/system_wrappers/interface/ref_count.h"
+ #include "webrtc/system_wrappers/interface/trace.h"
+#ifdef HAVE_LIBV4L2
+#define open v4l2_open
@@ -73,10 +73,9 @@ index 239a292..bab496c 100644
+#define mmap v4l2_mmap
+#define munmap v4l2_munmap
+#endif
-+
+
namespace webrtc
{
- namespace videocapturemodule
@@ -130,6 +142,11 @@ WebRtc_Word32 DeviceInfoLinux::GetDeviceName(
memset(deviceNameUTF8, 0, deviceNameLength);
memcpy(cameraName, cap.card, sizeof(cap.card));
@@ -152,13 +151,16 @@ index d46b5aa..e452223 100644
],
diff --git toolkit/library/Makefile.in toolkit/library/Makefile.in
index 9c16ffa..1db3794 100644
---- mozilla/toolkit/library/Makefile.in
-+++ mozilla/toolkit/library/Makefile.in
-@@ -405,6 +405,7 @@ endif
+--- mozilla/toolkit/library/libxul.mk
++++ mozilla/toolkit/library/libxul.mk
+@@ -182,6 +182,10 @@ endif
+
EXTRA_DSO_LDOPTS += $(call EXPAND_LIBNAME_PATH,gkmedias,$(DIST)/lib)
- ifdef MOZ_WEBRTC
++ifdef MOZ_LIBV4L2_LIBS
+EXTRA_DSO_LDOPTS += $(MOZ_LIBV4L2_LIBS)
- ifdef MOZ_PEERCONNECTION
- COMPONENT_LIBS += peerconnection
- endif
++endif
++
+ ifdef MOZ_WEBRTC
+ ifeq (WINNT,$(OS_TARGET))
+ EXTRA_DSO_LDOPTS += \
diff --git a/mail/thunderbird/files/patch-z-bug847568 b/mail/thunderbird/files/patch-bug847568
index 24b8db490685..2eb54438a5b6 100644
--- a/mail/thunderbird/files/patch-z-bug847568
+++ b/mail/thunderbird/files/patch-bug847568
@@ -33,7 +33,7 @@ diff --git configure.in configure.in
index ac38f40..87536b7 100644
--- mozilla/configure.in
+++ mozilla/configure.in
-@@ -8032,6 +8032,56 @@ if test "$USE_FC_FREETYPE"; then
+@@ -8032,6 +8032,52 @@ if test "$USE_FC_FREETYPE"; then
fi
dnl ========================================================
@@ -46,9 +46,7 @@ index ac38f40..87536b7 100644
+MOZ_NATIVE_HARFBUZZ=)
+
+if test -n "$MOZ_NATIVE_HARFBUZZ"; then
-+ PKG_CHECK_MODULES(MOZ_HARFBUZZ, harfbuzz >= 0.9.16)
-+else
-+ MOZ_HARFBUZZ_LIBS='$(DEPTH)/gfx/harfbuzz/src/$(LIB_PREFIX)mozharfbuzz.$(LIB_SUFFIX)'
++ PKG_CHECK_MODULES(MOZ_HARFBUZZ, harfbuzz >= 0.9.25)
+fi
+
+AC_SUBST(MOZ_NATIVE_HARFBUZZ)
@@ -64,7 +62,7 @@ index ac38f40..87536b7 100644
+MOZ_NATIVE_GRAPHITE2=)
+
+if test -n "$MOZ_NATIVE_GRAPHITE2"; then
-+ PKG_CHECK_MODULES(MOZ_GRAPHITE, graphite2)
++ PKG_CHECK_MODULES(MOZ_GRAPHITE2, graphite2)
+
+ dnl graphite2.pc has bogus version, check manually
+ AC_TRY_COMPILE([ #include <graphite2/Font.h>
@@ -73,57 +71,35 @@ index ac38f40..87536b7 100644
+ * 100 + GR2_VERSION_BUGFIX >= \
+ (major) * 10000 + (minor) * 100 + (bugfix) )
+ ], [
-+ #if !GR2_VERSION_REQUIRE(1,2,3)
++ #if !GR2_VERSION_REQUIRE(1,2,4)
+ #error "Insufficient graphite2 version."
+ #endif
+ ], [],
+ [AC_MSG_ERROR([--with-system-graphite2 requested but no working libgraphite2 found])])
-++else
-++ MOZ_GRAPHITE_LIBS='$(DEPTH)/gfx/graphite2/src/$(LIB_PREFIX)mozgraphite2.$(LIB_SUFFIX)'
+fi
+
+AC_SUBST(MOZ_NATIVE_GRAPHITE2)
-+AC_SUBST(MOZ_GRAPHITE_CFLAGS)
-+AC_SUBST(MOZ_GRAPHITE_LIBS)
++AC_SUBST(MOZ_GRAPHITE2_CFLAGS)
++AC_SUBST(MOZ_GRAPHITE2_LIBS)
+
+dnl ========================================================
dnl Check for pixman and cairo
dnl ========================================================
-@@ -8379,18 +8412,6 @@ QCMS_LIBS='$(DEPTH)/gfx/qcms/$(LIB_PREFI
- AC_SUBST(QCMS_LIBS)
+diff --git content/base/src/moz.build content/base/src/moz.build
+index d4f6380..0ee55df 100644
+--- mozilla/content/base/src/moz.build
++++ mozilla/content/base/src/moz.build
+@@ -179,6 +179,9 @@ SOURCES += [
+ 'nsObjectLoadingContent.cpp',
+ ]
- dnl ========================================================
--dnl HarfBuzz
--dnl ========================================================
--MOZ_HARFBUZZ_LIBS='$(DEPTH)/gfx/harfbuzz/src/$(LIB_PREFIX)mozharfbuzz.$(LIB_SUFFIX)'
--AC_SUBST(MOZ_HARFBUZZ_LIBS)
--
--dnl ========================================================
--dnl SIL Graphite
--dnl ========================================================
--MOZ_GRAPHITE_LIBS='$(DEPTH)/gfx/graphite2/src/$(LIB_PREFIX)mozgraphite2.$(LIB_SUFFIX)'
--AC_SUBST(MOZ_GRAPHITE_LIBS)
--
--dnl ========================================================
- dnl OTS
- dnl ========================================================
- MOZ_OTS_LIBS='$(DEPTH)/gfx/ots/src/$(LIB_PREFIX)mozots.$(LIB_SUFFIX)'
-diff --git content/base/src/Makefile.in content/base/src/Makefile.in
-index a618096..596901a 100644
---- mozilla/content/base/src/Makefile.in
-+++ mozilla/content/base/src/Makefile.in
-@@ -5,6 +5,10 @@
-
- include $(topsrcdir)/config/rules.mk
-
-+ifdef MOZ_NATIVE_HARFBUZZ
-+nsContentUtils.$(OBJ_SUFFIX): CXXFLAGS+=$(MOZ_HARFBUZZ_CFLAGS)
-+endif
++if CONFIG['MOZ_NATIVE_HARFBUZZ']:
++ SOURCES['nsContentUtils.cpp'].flags += [CONFIG['MOZ_HARFBUZZ_CFLAGS']]
+
- # gcc requires -msse2 for this file since it uses SSE2 intrinsics. (See bug
- # 585538 comment 12.)
- ifneq (,$(INTEL_ARCHITECTURE))
+ EXTRA_COMPONENTS += [
+ 'contentAreaDropListener.js',
+ 'contentAreaDropListener.manifest',
diff --git gfx/moz.build gfx/moz.build
index 519aa46..6929751 100644
--- mozilla/gfx/moz.build
@@ -174,7 +150,7 @@ index 45c36ae..79d32cf 100644
CFLAGS += $(MOZ_CAIRO_CFLAGS) $(TK_CFLAGS)
+ifdef MOZ_NATIVE_GRAPHITE2
-+CXXFLAGS += $(MOZ_GRAPHITE_CFLAGS)
++CXXFLAGS += $(MOZ_GRAPHITE2_CFLAGS)
+endif
+
+ifdef MOZ_NATIVE_HARFBUZZ
@@ -196,29 +172,6 @@ index f6b9f7c..60863f4 100644
+ifdef MOZ_NATIVE_HARFBUZZ
+CXXFLAGS += $(MOZ_HARFBUZZ_CFLAGS)
+endif
-diff --git layout/media/Makefile.in layout/media/Makefile.in
-index 1cacbd7..a8cd156 100644
---- mozilla/layout/media/Makefile.in
-+++ mozilla/layout/media/Makefile.in
-@@ -18,10 +18,16 @@ endif
- SHARED_LIBRARY_LIBS = \
- $(MOZ_OTS_LIBS) \
- $(QCMS_LIBS) \
-- $(MOZ_GRAPHITE_LIBS) \
-- $(MOZ_HARFBUZZ_LIBS) \
- $(NULL)
-
-+ifndef MOZ_NATIVE_GRAPHITE2
-+SHARED_LIBRARY_LIBS += $(MOZ_GRAPHITE_LIBS)
-+endif
-+
-+ifndef MOZ_NATIVE_HARFBUZZ
-+SHARED_LIBRARY_LIBS += $(MOZ_HARFBUZZ_LIBS)
-+endif
-+
- ifdef MOZ_TREE_CAIRO
- SHARED_LIBRARY_LIBS += $(MOZ_CAIRO_LIBS)
- endif
diff --git netwerk/dns/Makefile.in netwerk/dns/Makefile.in
index 1cacbd7..f5d72bb 100644
--- mozilla/netwerk/dns/Makefile.in
@@ -234,16 +187,16 @@ 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
---- mozilla/toolkit/library/Makefile.in
-+++ mozilla/toolkit/library/Makefile.in
+--- mozilla/toolkit/library/libxul.mk
++++ mozilla/toolkit/library/libxul.mk
@@ -89,6 +89,14 @@ ifndef MOZ_TREE_PIXMAN
EXTRA_DSO_LDOPTS += $(MOZ_PIXMAN_LIBS)
endif
+ifdef MOZ_NATIVE_GRAPHITE2
-+EXTRA_DSO_LDOPTS += $(MOZ_GRAPHITE_LIBS)
++EXTRA_DSO_LDOPTS += $(MOZ_GRAPHITE2_LIBS)
+endif
+
+ifdef MOZ_NATIVE_HARFBUZZ
diff --git a/mail/thunderbird/files/patch-bug851992 b/mail/thunderbird/files/patch-bug851992
deleted file mode 100644
index 693ae6e57b90..000000000000
--- a/mail/thunderbird/files/patch-bug851992
+++ /dev/null
@@ -1,339 +0,0 @@
-diff --git a/config/Makefile.in b/config/Makefile.in
---- mozilla/config/Makefile.in
-+++ mozilla/config/Makefile.in
-@@ -97,16 +97,17 @@ export:: $(export-preqs)
- -DMOZ_TREE_PIXMAN=$(MOZ_TREE_PIXMAN) \
- -DMOZ_NATIVE_HUNSPELL=$(MOZ_NATIVE_HUNSPELL) \
- -DMOZ_NATIVE_BZ2=$(MOZ_NATIVE_BZ2) \
- -DMOZ_NATIVE_ZLIB=$(MOZ_NATIVE_ZLIB) \
- -DMOZ_NATIVE_PNG=$(MOZ_NATIVE_PNG) \
- -DMOZ_NATIVE_JPEG=$(MOZ_NATIVE_JPEG) \
- -DMOZ_NATIVE_LIBEVENT=$(MOZ_NATIVE_LIBEVENT) \
- -DMOZ_NATIVE_LIBVPX=$(MOZ_NATIVE_LIBVPX) \
-+ -DMOZ_NATIVE_ICU=$(MOZ_NATIVE_ICU) \
- $(srcdir)/system-headers | $(PERL) $(topsrcdir)/nsprpub/config/make-system-wrappers.pl system_wrappers
- $(INSTALL) system_wrappers $(DIST)
-
- GARBAGE_DIRS += system_wrappers
- endif
-
- ifdef WRAP_STL_INCLUDES
- ifdef GNU_CXX
-diff --git a/config/system-headers b/config/system-headers
---- mozilla/config/system-headers
-+++ mozilla/config/system-headers
-@@ -1125,8 +1125,19 @@ gst/video/video.h
- sys/msg.h
- sys/ipc.h
- sys/thr.h
- sys/user.h
- kvm.h
- spawn.h
- err.h
- xlocale.h
-+#if MOZ_NATIVE_ICU==1
-+unicode/locid.h
-+unicode/numsys.h
-+unicode/ucal.h
-+unicode/ucol.h
-+unicode/udat.h
-+unicode/udatpg.h
-+unicode/uenum.h
-+unicode/unum.h
-+unicode/ustring.h
-+#endif
-diff --git a/configure.in b/configure.in
---- mozilla/configure.in
-+++ mozilla/configure.in
-@@ -4134,16 +4134,32 @@ if test -n "$MOZ_NATIVE_FFI"; then
- PKG_CHECK_MODULES(MOZ_FFI, libffi > 3.0.9)
- else
- PKG_CHECK_MODULES(MOZ_FFI, libffi >= 3.0.9)
- fi
- MOZ_JS_STATIC_LIBS="$MOZ_JS_STATIC_LIBS $MOZ_FFI_LIBS"
- fi
-
- dnl ========================================================
-+dnl system icu support
-+dnl ========================================================
-+MOZ_NATIVE_ICU=
-+MOZ_ARG_WITH_BOOL(system-icu,
-+[ --with-system-icu
-+ Use system icu (located with pkgconfig)],
-+ MOZ_NATIVE_ICU=1)
-+
-+if test -n "$MOZ_NATIVE_ICU"; then
-+ PKG_CHECK_MODULES(MOZ_ICU, icu-i18n >= 50.1)
-+ MOZ_JS_STATIC_LIBS="$MOZ_JS_STATIC_LIBS $MOZ_ICU_LIBS"
-+fi
-+
-+AC_SUBST(MOZ_NATIVE_ICU)
-+
-+dnl ========================================================
- dnl Java SDK support
- dnl ========================================================
-
- JAVA_BIN_PATH=
- MOZ_ARG_WITH_STRING(java-bin-path,
- [ --with-java-bin-path=dir
- Location of Java binaries (java, javac, jar)],
- JAVA_BIN_PATH=$withval)
-diff --git a/js/src/Makefile.in b/js/src/Makefile.in
---- mozilla/js/src/Makefile.in.orig 2013-10-22 08:19:02.000000000 +0200
-+++ mozilla/js/src/Makefile.in 2013-10-29 10:11:58.272605098 +0100
-@@ -237,10 +237,14 @@
- # ICU headers need to be available whether we build with the complete
- # Internationalization API or not - ICU stubs rely on them.
-
-+ifdef MOZ_NATIVE_ICU
-+LOCAL_INCLUDES += $(MOZ_ICU_CFLAGS)
-+else
- LOCAL_INCLUDES += \
- -I$(topsrcdir)/../../intl/icu/source/common \
- -I$(topsrcdir)/../../intl/icu/source/i18n \
- $(NULL)
-+endif
-
- ifdef ENABLE_INTL_API
-
-@@ -260,6 +264,7 @@
- ICU_MAKE = $(MAKE)
- endif
-
-+ifndef MOZ_NATIVE_ICU
- # - Build ICU as part of the "export" target, so things get built
- # in the right order.
- # - ICU requires GNU make according to its readme.html. pymake can't be used
-@@ -276,6 +281,7 @@
- $(call SUBMAKE,$@,intl/icu)
-
- endif
-+endif
-
- #
- # END ECMAScript Internationalization API
-@@ -413,7 +419,11 @@
- DEFINES += -DUSE_ZLIB
- endif
-
--SHARED_LIBRARY_LIBS += $(ICU_LIBS)
-+ifdef MOZ_NATIVE_ICU
-+EXTRA_DSO_LDOPTS += $(MOZ_ICU_LIBS)
-+else
-+SHARED_LIBRARY_LIBS += $(MOZ_ICU_LIBS)
-+endif
-
- # Prevent floating point errors caused by VC++ optimizations
- ifdef _MSC_VER
-diff --git a/js/src/config/Makefile.in b/js/src/config/Makefile.in
---- mozilla/js/src/config/Makefile.in
-+++ mozilla/js/src/config/Makefile.in
-@@ -54,16 +54,17 @@ include $(topsrcdir)/config/rules.mk
-
- HOST_CFLAGS += -DUNICODE -D_UNICODE
-
- ifdef WRAP_SYSTEM_INCLUDES
- export:: \
- $(call mkdir_deps,system_wrappers_js) \
- $(NULL)
- $(PYTHON) $(srcdir)/Preprocessor.py $(DEFINES) $(ACDEFINES) \
-+ -DMOZ_NATIVE_ICU=$(MOZ_NATIVE_ICU) \
- $(srcdir)/system-headers | $(PERL) $(srcdir)/make-system-wrappers.pl system_wrappers_js
- $(INSTALL) system_wrappers_js $(DIST)
-
- GARBAGE_DIRS += system_wrappers_js
- endif
-
- GARBAGE += $(srcdir)/*.pyc *.pyc
-
-diff --git a/js/src/config/system-headers b/js/src/config/system-headers
---- mozilla/js/src/config/system-headers
-+++ mozilla/js/src/config/system-headers
-@@ -1125,8 +1125,19 @@ gst/video/video.h
- sys/msg.h
- sys/ipc.h
- sys/thr.h
- sys/user.h
- kvm.h
- spawn.h
- err.h
- xlocale.h
-+#if MOZ_NATIVE_ICU==1
-+unicode/locid.h
-+unicode/numsys.h
-+unicode/ucal.h
-+unicode/ucol.h
-+unicode/udat.h
-+unicode/udatpg.h
-+unicode/uenum.h
-+unicode/unum.h
-+unicode/ustring.h
-+#endif
-diff --git a/js/src/configure.in b/js/src/configure.in
---- mozilla/js/src/configure.in
-+++ mozilla/js/src/configure.in
-@@ -4406,59 +4406,68 @@ if test "$ACCESSIBILITY" -a "$MOZ_ENABLE
- AC_DEFINE_UNQUOTED(ATK_MINOR_VERSION, $ATK_MINOR_VERSION)
- AC_DEFINE_UNQUOTED(ATK_REV_VERSION, $ATK_REV_VERSION)
- fi
-
-
- dnl ========================================================
- dnl ECMAScript Internationalization API Support (uses ICU)
- dnl ========================================================
-+ICU_LIB_NAMES=
-+MOZ_NATIVE_ICU=
-+MOZ_ARG_WITH_BOOL(system-icu,
-+[ --with-system-icu
-+ Use system icu (located with pkgconfig)],
-+ MOZ_NATIVE_ICU=1)
-+
-+if test -n "$MOZ_NATIVE_ICU"; then
-+ PKG_CHECK_MODULES(MOZ_ICU, icu-i18n >= 50.1)
-+fi
-
- if test -n "$JS_STANDALONE"; then
- ENABLE_INTL_API=1
- fi
- MOZ_ARG_ENABLE_BOOL(intl-api,
- [ --enable-intl-api Enable ECMAScript Internationalization API (default=yes for standalone JS)],
- ENABLE_INTL_API=1,
- ENABLE_INTL_API= )
-
- dnl Settings for the implementation of the ECMAScript Internationalization API
- if test -n "$ENABLE_INTL_API"; then
- AC_DEFINE(ENABLE_INTL_API)
-- # We build ICU as a static library.
-- AC_DEFINE(U_STATIC_IMPLEMENTATION)
--
-- case "$OS_TARGET" in
-- WINNT)
-- ICU_LIB_NAMES="icuin icuuc icudt"
-- ;;
-- Darwin|Linux)
-- ICU_LIB_NAMES="icui18n icuuc icudata"
-- ;;
-- *)
-- AC_MSG_ERROR([ECMAScript Internationalization API is not yet supported on this platform])
-- esac
--
-- ICU_LIBS='$(call EXPAND_LIBNAME_PATH,$(ICU_LIB_NAMES),$(DEPTH)/intl/icu/lib)'
--else
-- ICU_LIB_NAMES=
-- ICU_LIBS=
-+
-+ if test -z "$MOZ_NATIVE_ICU"; then
-+ case "$OS_TARGET" in
-+ WINNT)
-+ ICU_LIB_NAMES="icuin icuuc icudt"
-+ ;;
-+ Darwin|Linux)
-+ ICU_LIB_NAMES="icui18n icuuc icudata"
-+ ;;
-+ *)
-+ AC_MSG_ERROR([ECMAScript Internationalization API is not yet supported on this platform])
-+ esac
-+ MOZ_ICU_LIBS='$(call EXPAND_LIBNAME_PATH,$(ICU_LIB_NAMES),$(DEPTH)/intl/icu/lib)'
-+ fi
- fi
-
- AC_SUBST(ENABLE_INTL_API)
- AC_SUBST(ICU_LIB_NAMES)
--AC_SUBST(ICU_LIBS)
--
--dnl Source files that use ICU should have control over which parts of the ICU
--dnl namespace they want to use.
--AC_DEFINE(U_USING_ICU_NAMESPACE,0)
--
-+AC_SUBST(MOZ_ICU_LIBS)
-+AC_SUBST(MOZ_NATIVE_ICU)
-
- dnl Settings for ICU
--if test -n "$ENABLE_INTL_API" ; then
-+if test -n "$ENABLE_INTL_API" -a -z "$MOZ_NATIVE_ICU"; then
-+ dnl We build ICU as a static library.
-+ AC_DEFINE(U_STATIC_IMPLEMENTATION)
-+
-+ dnl Source files that use ICU should have control over which parts of the ICU
-+ dnl namespace they want to use.
-+ AC_DEFINE(U_USING_ICU_NAMESPACE,0)
-+
- # Set ICU compile options
- ICU_CPPFLAGS=""
- # don't use icu namespace automatically in client code
- ICU_CPPFLAGS="$ICU_CPPFLAGS -DU_USING_ICU_NAMESPACE=0"
- # don't include obsolete header files
- ICU_CPPFLAGS="$ICU_CPPFLAGS -DU_NO_DEFAULT_INCLUDE_UTF_HEADERS=1"
- # remove chunks of the library that we don't need (yet)
- ICU_CPPFLAGS="$ICU_CPPFLAGS -DUCONFIG_NO_LEGACY_CONVERSION"
-diff --git a/js/src/gdb/Makefile.in b/js/src/gdb/Makefile.in
---- mozilla/js/src/gdb/Makefile.in
-+++ mozilla/js/src/gdb/Makefile.in
-@@ -14,16 +14,20 @@ include $(DEPTH)/config/autoconf.mk
- # Building against js_static requires that we declare mfbt sybols "exported"
- # on its behalf.
- DEFINES += -DEXPORT_JS_API -DIMPL_MFBT
-
- LIBS = $(DEPTH)/$(LIB_PREFIX)js_static.$(LIB_SUFFIX) $(NSPR_LIBS) $(MOZ_ZLIB_LIBS)
-
- LOCAL_INCLUDES += -I$(topsrcdir) -I..
-
-+ifdef MOZ_NATIVE_ICU
-+EXTRA_LIBS += $(MOZ_ICU_LIBS)
-+endif
-+
- EXTRA_LIBS += $(MOZ_FFI_LIBS)
-
- # Place a GDB Python auto-load file next to the gdb-tests executable, both
- # in the build directory and in the dist/bin directory.
- PP_TARGETS += GDB_AUTOLOAD
- GDB_AUTOLOAD := gdb-tests-gdb.py.in
- GDB_AUTOLOAD_FLAGS := -Dtopsrcdir=$(abspath $(topsrcdir))
-
-diff --git a/js/src/jsapi-tests/Makefile.in b/js/src/jsapi-tests/Makefile.in
---- mozilla/js/src/jsapi-tests/Makefile.in
-+++ mozilla/js/src/jsapi-tests/Makefile.in
-@@ -15,16 +15,20 @@ DEFINES += -DEXPORT_JS_API
- # Building against js_static requires that we declare mfbt sybols "exported"
- # on its behalf.
- DEFINES += -DIMPL_MFBT
-
- LIBS = $(DEPTH)/$(LIB_PREFIX)js_static.$(LIB_SUFFIX) $(NSPR_LIBS) $(MOZ_ZLIB_LIBS)
-
- LOCAL_INCLUDES += -I$(topsrcdir) -I..
-
-+ifdef MOZ_NATIVE_ICU
-+EXTRA_LIBS += $(MOZ_ICU_LIBS)
-+endif
-+
- EXTRA_LIBS += $(MOZ_FFI_LIBS)
-
- ifdef QEMU_EXE
- MOZ_POST_PROGRAM_COMMAND = $(topsrcdir)/build/qemu-wrap --qemu $(QEMU_EXE) --libdir $(CROSS_LIB)
- endif
-
- # Place a GDB Python auto-load file next to the jsapi-tests executable in
- # the build directory.
-diff --git a/js/src/shell/Makefile.in b/js/src/shell/Makefile.in
---- mozilla/js/src/shell/Makefile.in
-+++ mozilla/js/src/shell/Makefile.in
-@@ -22,16 +22,19 @@ DEFINES += -DEXPORT_JS_API
- # Building against js_static requires that we declare mfbt sybols "exported"
- # on its behalf.
- DEFINES += -DIMPL_MFBT
-
- LIBS = $(NSPR_LIBS) $(EDITLINE_LIBS) $(DEPTH)/$(LIB_PREFIX)js_static.$(LIB_SUFFIX) $(MOZ_ZLIB_LIBS)
- ifdef MOZ_NATIVE_FFI
- EXTRA_LIBS += $(MOZ_FFI_LIBS)
- endif
-+ifdef MOZ_NATIVE_ICU
-+EXTRA_LIBS += $(MOZ_ICU_LIBS)
-+endif
-
- LOCAL_INCLUDES += -I$(topsrcdir) -I..
-
- ifeq ($(OS_ARCH),Darwin)
- ifeq ($(TARGET_CPU),x86_64)
- DARWIN_EXE_LDFLAGS += -pagezero_size 10000 -image_base 100000000
- endif
- endif
diff --git a/mail/thunderbird/files/patch-bug876156 b/mail/thunderbird/files/patch-bug876156
deleted file mode 100644
index 91e93b9b4cae..000000000000
--- a/mail/thunderbird/files/patch-bug876156
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git mfbt/Atomics.h mfbt/Atomics.h
-index d79af6c..40b9336 100644
---- mozilla/mfbt/Atomics.h
-+++ mozilla/mfbt/Atomics.h
-@@ -35,7 +35,7 @@
- */
- # if !defined(__linux__) && !defined(__OpenBSD__) && \
- (__cplusplus >= 201103L || defined(__GXX_EXPERIMENTAL_CXX0X__)) && \
-- __has_include(<atomic>)
-+ __has_include_next(<atomic>)
- # define MOZ_HAVE_CXX11_ATOMICS
- # endif
- /*
diff --git a/mail/thunderbird/files/patch-bug878791 b/mail/thunderbird/files/patch-bug878791
deleted file mode 100644
index aa22938269e3..000000000000
--- a/mail/thunderbird/files/patch-bug878791
+++ /dev/null
@@ -1,11 +0,0 @@
---- mozilla/toolkit/components/osfile/osfile_unix_allthreads.jsm.orig 2013-05-11 21:19:53.000000000 +0200
-+++ mozilla/toolkit/components/osfile/osfile_unix_allthreads.jsm 2013-06-02 17:15:05.000000000 +0200
-@@ -40,7 +40,7 @@ if (typeof Components != "undefined") {
- // Open libc
- let libc;
- let libc_candidates = [ "libSystem.B.dylib",
-- "libc.so.6",
-+ "libc.so.7",
- "libc.so" ];
- for (let i = 0; i < libc_candidates.length; ++i) {
- try {
diff --git a/mail/thunderbird/files/patch-bug886181 b/mail/thunderbird/files/patch-bug886181
deleted file mode 100644
index 892f123b4a52..000000000000
--- a/mail/thunderbird/files/patch-bug886181
+++ /dev/null
@@ -1,11 +0,0 @@
---- mozilla/modules/libpref/src/init/all.js~
-+++ mozilla/modules/libpref/src/init/all.js
-@@ -193,7 +193,7 @@ pref("media.webm.enabled", true);
- pref("media.dash.enabled", false);
- #endif
- #ifdef MOZ_GSTREAMER
--pref("media.gstreamer.enabled", false);
-+pref("media.gstreamer.enabled", true);
- #endif
- #ifdef MOZ_WEBRTC
- pref("media.navigator.enabled", true);
diff --git a/mail/thunderbird/files/patch-bug889699 b/mail/thunderbird/files/patch-bug889699
deleted file mode 100644
index 13cc64c9a171..000000000000
--- a/mail/thunderbird/files/patch-bug889699
+++ /dev/null
@@ -1,175 +0,0 @@
-commit 7eb5827
-Author: Edwin Flores <eflores@mozilla.com>
-Date: Sat Jul 20 12:03:08 2013 +1200
-
- Bug 889699 - Make gstreamer backend return more accurate results for canPlayType() r=alessandro.d
----
- content/media/gstreamer/GStreamerFormatHelper.cpp | 90 +++++++++++++++++------
- 1 file changed, 66 insertions(+), 24 deletions(-)
-
-diff --git content/media/gstreamer/GStreamerFormatHelper.cpp content/media/gstreamer/GStreamerFormatHelper.cpp
-index f05ff8f..39f1fdf 100644
---- mozilla/content/media/gstreamer/GStreamerFormatHelper.cpp
-+++ mozilla/content/media/gstreamer/GStreamerFormatHelper.cpp
-@@ -6,7 +6,7 @@
-
- #include "GStreamerFormatHelper.h"
- #include "nsCharSeparatedTokenizer.h"
--#include "nsXPCOMStrings.h"
-+#include "nsString.h"
- #include "GStreamerLoader.h"
-
- #define ENTRY_FORMAT(entry) entry[0]
-@@ -36,7 +36,7 @@ void GStreamerFormatHelper::Shutdown() {
- }
- }
-
--char const *const GStreamerFormatHelper::mContainers[6][2] = {
-+static char const *const sContainers[6][2] = {
- {"video/mp4", "video/quicktime"},
- {"video/quicktime", "video/quicktime"},
- {"audio/mp4", "audio/x-m4a"},
-@@ -45,7 +45,7 @@ char const *const GStreamerFormatHelper::mContainers[6][2] = {
- {"audio/mp3", "audio/mpeg, mpegversion=(int)1"},
- };
-
--char const *const GStreamerFormatHelper::mCodecs[9][2] = {
-+static char const *const sCodecs[9][2] = {
- {"avc1.42E01E", "video/x-h264"},
- {"avc1.42001E", "video/x-h264"},
- {"avc1.58A01E", "video/x-h264"},
-@@ -57,6 +57,15 @@ char const *const GStreamerFormatHelper::mCodecs[9][2] = {
- {"mp3", "audio/mpeg, mpegversion=(int)1"},
- };
-
-+static char const * const sDefaultCodecCaps[][2] = {
-+ {"video/mp4", "video/x-h264"},
-+ {"video/quicktime", "video/x-h264"},
-+ {"audio/mp4", "audio/mpeg, mpegversion=(int)4"},
-+ {"audio/x-m4a", "audio/mpeg, mpegversion=(int)4"},
-+ {"audio/mp3", "audio/mpeg, layer=(int)3"},
-+ {"audio/mpeg", "audio/mpeg, layer=(int)3"}
-+};
-+
- GStreamerFormatHelper::GStreamerFormatHelper()
- : mFactories(nullptr),
- mCookie(static_cast<uint32_t>(-1))
-@@ -66,15 +75,15 @@ GStreamerFormatHelper::GStreamerFormatHelper()
- }
-
- mSupportedContainerCaps = gst_caps_new_empty();
-- for (unsigned int i = 0; i < G_N_ELEMENTS(mContainers); i++) {
-- const char* capsString = mContainers[i][1];
-+ for (unsigned int i = 0; i < G_N_ELEMENTS(sContainers); i++) {
-+ const char* capsString = sContainers[i][1];
- GstCaps* caps = gst_caps_from_string(capsString);
- gst_caps_append(mSupportedContainerCaps, caps);
- }
-
- mSupportedCodecCaps = gst_caps_new_empty();
-- for (unsigned int i = 0; i < G_N_ELEMENTS(mCodecs); i++) {
-- const char* capsString = mCodecs[i][1];
-+ for (unsigned int i = 0; i < G_N_ELEMENTS(sCodecs); i++) {
-+ const char* capsString = sCodecs[i][1];
- GstCaps* caps = gst_caps_from_string(capsString);
- gst_caps_append(mSupportedCodecCaps, caps);
- }
-@@ -92,6 +101,41 @@ GStreamerFormatHelper::~GStreamerFormatHelper() {
- g_list_free(mFactories);
- }
-
-+static GstCaps *
-+GetContainerCapsFromMIMEType(const char *aType) {
-+ /* convert aMIMEType to gst container caps */
-+ const char* capsString = nullptr;
-+ for (uint32_t i = 0; i < G_N_ELEMENTS(sContainers); i++) {
-+ if (!strcmp(ENTRY_FORMAT(sContainers[i]), aType)) {
-+ capsString = ENTRY_CAPS(sContainers[i]);
-+ break;
-+ }
-+ }
-+
-+ if (!capsString) {
-+ /* we couldn't find any matching caps */
-+ return nullptr;
-+ }
-+
-+ return gst_caps_from_string(capsString);
-+}
-+
-+static GstCaps *
-+GetDefaultCapsFromMIMEType(const char *aType) {
-+ GstCaps *caps = GetContainerCapsFromMIMEType(aType);
-+
-+ for (uint32_t i = 0; i < G_N_ELEMENTS(sDefaultCodecCaps); i++) {
-+ if (!strcmp(sDefaultCodecCaps[i][0], aType)) {
-+ GstCaps *tmp = gst_caps_from_string(sDefaultCodecCaps[i][1]);
-+
-+ gst_caps_append(caps, tmp);
-+ return caps;
-+ }
-+ }
-+
-+ return nullptr;
-+}
-+
- bool GStreamerFormatHelper::CanHandleMediaType(const nsACString& aMIMEType,
- const nsAString* aCodecs) {
- if (!sLoadOK) {
-@@ -101,7 +145,15 @@ bool GStreamerFormatHelper::CanHandleMediaType(const nsACString& aMIMEType,
- const char *type;
- NS_CStringGetData(aMIMEType, &type, NULL);
-
-- GstCaps* caps = ConvertFormatsToCaps(type, aCodecs);
-+ GstCaps *caps;
-+ if (aCodecs && !aCodecs->IsEmpty()) {
-+ caps = ConvertFormatsToCaps(type, aCodecs);
-+ } else {
-+ // Get a minimal set of codec caps for this MIME type we should support so
-+ // that we don't overreport MIME types we are able to play.
-+ caps = GetDefaultCapsFromMIMEType(type);
-+ }
-+
- if (!caps) {
- return false;
- }
-@@ -118,21 +170,11 @@ GstCaps* GStreamerFormatHelper::ConvertFormatsToCaps(const char* aMIMEType,
-
- unsigned int i;
-
-- /* convert aMIMEType to gst container caps */
-- const char* capsString = nullptr;
-- for (i = 0; i < G_N_ELEMENTS(mContainers); i++) {
-- if (!strcmp(ENTRY_FORMAT(mContainers[i]), aMIMEType)) {
-- capsString = ENTRY_CAPS(mContainers[i]);
-- break;
-- }
-- }
--
-- if (!capsString) {
-- /* we couldn't find any matching caps */
-+ GstCaps *caps = GetContainerCapsFromMIMEType(aMIMEType);
-+ if (!caps) {
- return nullptr;
- }
-
-- GstCaps* caps = gst_caps_from_string(capsString);
- /* container only */
- if (!aCodecs) {
- return caps;
-@@ -141,11 +183,11 @@ GstCaps* GStreamerFormatHelper::ConvertFormatsToCaps(const char* aMIMEType,
- nsCharSeparatedTokenizer tokenizer(*aCodecs, ',');
- while (tokenizer.hasMoreTokens()) {
- const nsSubstring& codec = tokenizer.nextToken();
-- capsString = nullptr;
-+ const char *capsString = nullptr;
-
-- for (i = 0; i < G_N_ELEMENTS(mCodecs); i++) {
-- if (codec.EqualsASCII(ENTRY_FORMAT(mCodecs[i]))) {
-- capsString = ENTRY_CAPS(mCodecs[i]);
-+ for (i = 0; i < G_N_ELEMENTS(sCodecs); i++) {
-+ if (codec.EqualsASCII(ENTRY_FORMAT(sCodecs[i]))) {
-+ capsString = ENTRY_CAPS(sCodecs[i]);
- break;
- }
- }
diff --git a/mail/thunderbird/files/patch-bug893397 b/mail/thunderbird/files/patch-bug893397
deleted file mode 100644
index 16013eba0445..000000000000
--- a/mail/thunderbird/files/patch-bug893397
+++ /dev/null
@@ -1,201 +0,0 @@
-diff --git configure.in configure.in
-index 549ad06..2878d9f 100644
---- mozilla/configure.in
-+++ mozilla/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
---- mozilla/netwerk/wifi/moz.build
-+++ mozilla/netwerk/wifi/moz.build
-@@ -31,6 +31,10 @@ if CONFIG['OS_ARCH'] == 'Darwin':
- CPP_SOURCES += [
- 'nsWifiScannerMac.cpp',
- ]
-+elif CONFIG['OS_ARCH'] == 'FreeBSD':
-+ CPP_SOURCES += [
-+ 'nsWifiScannerFreeBSD.cpp',
-+ ]
- elif CONFIG['OS_ARCH'] == 'WINNT':
- CPP_SOURCES += [
- 'nsWifiScannerWin.cpp',
-diff --git netwerk/wifi/nsWifiScannerFreeBSD.cpp netwerk/wifi/nsWifiScannerFreeBSD.cpp
-new file mode 100644
-index 0000000..80d4cb6
---- /dev/null
-+++ mozilla/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/mail/thunderbird/files/patch-bug910875 b/mail/thunderbird/files/patch-bug910875
deleted file mode 100644
index 41fc23b3653d..000000000000
--- a/mail/thunderbird/files/patch-bug910875
+++ /dev/null
@@ -1,102 +0,0 @@
-diff --git media/webrtc/trunk/webrtc/modules/audio_device/audio_device_impl.cc media/webrtc/trunk/webrtc/modules/audio_device/audio_device_impl.cc
-index f231b1e..6087696 100644
---- mozilla/media/webrtc/trunk/webrtc/modules/audio_device/audio_device_impl.cc
-+++ mozilla/media/webrtc/trunk/webrtc/modules/audio_device/audio_device_impl.cc
-@@ -16,7 +16,9 @@
- #include <assert.h>
- #include <string.h>
-
--#if defined(_WIN32)
-+#if defined(WEBRTC_DUMMY_AUDIO_BUILD)
-+// do not include platform specific headers
-+#elif defined(_WIN32)
- #include "audio_device_utility_win.h"
- #include "audio_device_wave_win.h"
- #if defined(WEBRTC_WINDOWS_CORE_AUDIO_BUILD)
-@@ -32,14 +34,8 @@
- #include <stdlib.h>
- #include "audio_device_utility_android.h"
- #include "audio_device_jni_android.h"
--#elif defined(WEBRTC_LINUX)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
- #include "audio_device_utility_linux.h"
-- #if defined(LINUX_ALSA)
-- #include "audio_device_alsa_linux.h"
-- #endif
-- #if defined(LINUX_PULSE)
-- #include "audio_device_pulse_linux.h"
-- #endif
- #elif defined(WEBRTC_IOS)
- #include "audio_device_utility_ios.h"
- #include "audio_device_ios.h"
-@@ -47,6 +43,12 @@
- #include "audio_device_utility_mac.h"
- #include "audio_device_mac.h"
- #endif
-+#if defined(LINUX_ALSA)
-+ #include "audio_device_alsa_linux.h"
-+#endif
-+#if defined(LINUX_PULSE)
-+ #include "audio_device_pulse_linux.h"
-+#endif
- #include "audio_device_dummy.h"
- #include "audio_device_utility_dummy.h"
- #include "critical_section_wrapper.h"
-@@ -161,7 +163,7 @@ WebRtc_Word32 AudioDeviceModuleImpl::Che
- #elif defined(WEBRTC_ANDROID)
- platform = kPlatformAndroid;
- WEBRTC_TRACE(kTraceInfo, kTraceAudioDevice, _id, "current platform is ANDROID");
--#elif defined(WEBRTC_LINUX)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
- platform = kPlatformLinux;
- WEBRTC_TRACE(kTraceInfo, kTraceAudioDevice, _id, "current platform is LINUX");
- #elif defined(WEBRTC_IOS)
-@@ -309,7 +311,7 @@ int32_t AudioDeviceModuleImpl::CreatePlatformSpecificObjects()
-
- // Create the *Linux* implementation of the Audio Device
- //
--#elif defined(WEBRTC_LINUX)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
- if ((audioLayer == kLinuxPulseAudio) || (audioLayer == kPlatformDefaultAudio))
- {
- #if defined(LINUX_PULSE)
-@@ -355,7 +357,7 @@ int32_t AudioDeviceModuleImpl::CreatePlatformSpecificObjects()
- //
- ptrAudioDeviceUtility = new AudioDeviceUtilityLinux(Id());
- }
--#endif // #if defined(WEBRTC_LINUX)
-+#endif // #if defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
-
- // Create the *iPhone* implementation of the Audio Device
- //
-diff --git media/webrtc/trunk/webrtc/modules/audio_device/test/audio_device_test_api.cc media/webrtc/trunk/webrtc/modules/audio_device/test/audio_device_test_api.cc
-index defd7f8..906c4a2 100644
---- mozilla/media/webrtc/trunk/webrtc/modules/audio_device/test/audio_device_test_api.cc
-+++ mozilla/media/webrtc/trunk/webrtc/modules/audio_device/test/audio_device_test_api.cc
-@@ -197,7 +197,7 @@ class AudioDeviceAPITest: public testing::Test {
- // Create default implementation instance
- EXPECT_TRUE((audio_device_ = AudioDeviceModuleImpl::Create(
- kId, AudioDeviceModule::kPlatformDefaultAudio)) != NULL);
--#elif defined(WEBRTC_LINUX)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
- EXPECT_TRUE((audio_device_ = AudioDeviceModuleImpl::Create(
- kId, AudioDeviceModule::kWindowsWaveAudio)) == NULL);
- EXPECT_TRUE((audio_device_ = AudioDeviceModuleImpl::Create(
-@@ -1690,7 +1690,7 @@ TEST_F(AudioDeviceAPITest, CPULoad) {
-
- // TODO(kjellander): Fix flakiness causing failures on Windows.
- // TODO(phoglund): Fix flakiness causing failures on Linux.
--#if !defined(_WIN32) && !defined(WEBRTC_LINUX)
-+#if !defined(_WIN32) && !defined(WEBRTC_LINUX) && !defined(WEBRTC_BSD)
- TEST_F(AudioDeviceAPITest, StartAndStopRawOutputFileRecording) {
- // NOTE: this API is better tested in a functional test
- CheckInitialPlayoutStates();
-@@ -1759,7 +1759,7 @@ TEST_F(AudioDeviceAPITest, StartAndStopRawInputFileRecording) {
- // - size of raw_input_not_recording.pcm shall be 0
- // - size of raw_input_not_recording.pcm shall be > 0
- }
--#endif // !WIN32 && !WEBRTC_LINUX
-+#endif // !WIN32 && !WEBRTC_LINUX && !defined(WEBRTC_BSD)
-
- TEST_F(AudioDeviceAPITest, RecordingSampleRate) {
- uint32_t sampleRate(0);
diff --git a/mail/thunderbird/files/patch-bug916216 b/mail/thunderbird/files/patch-bug916216
deleted file mode 100644
index 2dd125855cb9..000000000000
--- a/mail/thunderbird/files/patch-bug916216
+++ /dev/null
@@ -1,39 +0,0 @@
---- mozilla/media/webrtc/trunk/build/build_config.h~
-+++ mozilla/media/webrtc/trunk/build/build_config.h
-@@ -37,9 +37,15 @@
- #elif defined(_WIN32)
- #define OS_WIN 1
- #define TOOLKIT_VIEWS 1
--#elif defined(__FreeBSD__)
-+#elif defined(__DragonFly__)
-+#define OS_DRAGONFLY 1
-+#define TOOLKIT_GTK
-+#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
- #define OS_FREEBSD 1
- #define TOOLKIT_GTK
-+#elif defined(__NetBSD__)
-+#define OS_NETBSD 1
-+#define TOOLKIT_GTK
- #elif defined(__OpenBSD__)
- #define OS_OPENBSD 1
- #define TOOLKIT_GTK
-@@ -56,15 +62,15 @@
-
- // For access to standard BSD features, use OS_BSD instead of a
- // more specific macro.
--#if defined(OS_FREEBSD) || defined(OS_OPENBSD)
-+#if defined(OS_DRAGONFLY) || defined(OS_FREEBSD) \
-+ || defined(OS_NETBSD) || defined(OS_OPENBSD)
- #define OS_BSD 1
- #endif
-
- // For access to standard POSIXish features, use OS_POSIX instead of a
- // more specific macro.
--#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_FREEBSD) || \
-- defined(OS_OPENBSD) || defined(OS_SOLARIS) || defined(OS_ANDROID) || \
-- defined(OS_NACL)
-+#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD) || \
-+ defined(OS_SOLARIS) || defined(OS_ANDROID) || defined(OS_NACL)
- #define OS_POSIX 1
- #endif
-
diff --git a/mail/thunderbird/files/patch-bug916589 b/mail/thunderbird/files/patch-bug916589
deleted file mode 100644
index 3c24bf7ef332..000000000000
--- a/mail/thunderbird/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
---- mozilla/media/mtransport/third_party/nrappkit/src/port/generic/include/sys/queue.h
-+++ mozilla/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/mail/thunderbird/files/patch-bug918177 b/mail/thunderbird/files/patch-bug918177
deleted file mode 100644
index 96ce225c25a8..000000000000
--- a/mail/thunderbird/files/patch-bug918177
+++ /dev/null
@@ -1,36 +0,0 @@
-diff --git config/stl-headers config/stl-headers
-index c057d8e..dc7f6f0 100644
---- mozilla/config/stl-headers
-+++ mozilla/config/stl-headers
-@@ -21,6 +21,7 @@ algorithm
- atomic
- deque
- ios
-+iosfwd
- iostream
- iterator
- limits
-diff --git config/system-headers config/system-headers
-index d31c94e..570c82a 100644
---- mozilla/config/system-headers
-+++ mozilla/config/system-headers
-@@ -469,6 +469,7 @@ IOKit/IOMessage.h
- IOKit/pwr_mgt/IOPMLib.h
- iomanip
- ios
-+iosfwd
- iostream
- iostream.h
- iterator
-diff --git js/src/config/system-headers js/src/config/system-headers
-index d31c94e..570c82a 100644
---- mozilla/js/src/config/system-headers
-+++ mozilla/js/src/config/system-headers
-@@ -469,6 +469,7 @@ IOKit/IOMessage.h
- IOKit/pwr_mgt/IOPMLib.h
- iomanip
- ios
-+iosfwd
- iostream
- iostream.h
- iterator
diff --git a/mail/thunderbird/files/patch-bug945046 b/mail/thunderbird/files/patch-bug945046
deleted file mode 100644
index 79f9ecaf36c2..000000000000
--- a/mail/thunderbird/files/patch-bug945046
+++ /dev/null
@@ -1,130 +0,0 @@
-diff --git config/system-headers config/system-headers
-index 432cba6..18a9627 100644
---- mozilla/config/system-headers
-+++ mozilla/config/system-headers
-@@ -1157,3 +1157,4 @@ unicode/uenum.h
- unicode/unum.h
- unicode/ustring.h
- #endif
-+libutil.h
-diff --git js/src/config/system-headers js/src/config/system-headers
-index 432cba6..18a9627 100644
---- mozilla/js/src/config/system-headers
-+++ mozilla/js/src/config/system-headers
-@@ -1157,3 +1157,4 @@ unicode/uenum.h
- unicode/unum.h
- unicode/ustring.h
- #endif
-+libutil.h
-diff --git toolkit/library/Makefile.in toolkit/library/Makefile.in
-index 9975621..b4b037d 100644
---- mozilla/toolkit/library/Makefile.in
-+++ mozilla/toolkit/library/Makefile.in
-@@ -289,6 +289,10 @@ OS_LIBS += $(call EXPAND_LIBNAME,kvm)
- EXTRA_DSO_LDOPTS += -Wl,--warn-unresolved-symbols
- endif
-
-+ifeq ($(OS_ARCH),FreeBSD)
-+OS_LIBS += $(call EXPAND_LIBNAME,util)
-+endif
-+
- ifeq ($(OS_ARCH),WINNT)
- OS_LIBS += $(call EXPAND_LIBNAME,shell32 ole32 version winspool comdlg32 imm32 msimg32 shlwapi psapi ws2_32 dbghelp rasapi32 rasdlg iphlpapi uxtheme setupapi secur32 sensorsapi portabledeviceguids windowscodecs wininet wbemuuid)
- ifdef ACCESSIBILITY
-diff --git xpcom/base/nsMemoryReporterManager.cpp xpcom/base/nsMemoryReporterManager.cpp
-index b8147c8..0ffb34e 100644
---- mozilla/xpcom/base/nsMemoryReporterManager.cpp
-+++ mozilla/xpcom/base/nsMemoryReporterManager.cpp
-@@ -153,6 +153,43 @@ static nsresult GetResidentFast(int64_t
- return GetResident(n);
- }
-
-+#ifdef __FreeBSD__
-+#include <libutil.h>
-+
-+static nsresult
-+GetKinfoVmentrySelf(int64_t* prss)
-+{
-+ int cnt;
-+ struct kinfo_vmentry *vmmap, *kve;
-+ if ((vmmap = kinfo_getvmmap(getpid(), &cnt)) == NULL)
-+ return NS_ERROR_FAILURE;
-+
-+ if (prss)
-+ *prss = 0;
-+
-+ for (int i = 0; i < cnt; i++) {
-+ kve = &vmmap[i];
-+ if (prss)
-+ *prss += kve->kve_private_resident;
-+ }
-+
-+ free(vmmap);
-+ return NS_OK;
-+}
-+
-+#define HAVE_PRIVATE_REPORTER
-+static nsresult
-+GetPrivate(int64_t* aN)
-+{
-+ int64_t priv;
-+ nsresult rv = GetKinfoVmentrySelf(&priv);
-+ if (NS_SUCCEEDED(rv))
-+ *aN = priv * getpagesize();
-+
-+ return NS_OK;
-+}
-+#endif // FreeBSD
-+
- #elif defined(SOLARIS)
-
- #include <procfs.h>
-@@ -327,6 +364,24 @@ static nsresult GetResidentFast(int64_t
- }
-
- #define HAVE_PRIVATE_REPORTER
-+static nsresult
-+GetPrivate(int64_t* aN)
-+{
-+ PROCESS_MEMORY_COUNTERS_EX pmcex;
-+ pmcex.cb = sizeof(PROCESS_MEMORY_COUNTERS_EX);
-+
-+ if (!GetProcessMemoryInfo(
-+ GetCurrentProcess(),
-+ (PPROCESS_MEMORY_COUNTERS) &pmcex, sizeof(pmcex))) {
-+ return NS_ERROR_FAILURE;
-+ }
-+
-+ *aN = pmcex.PrivateUsage;
-+ return NS_OK;
-+}
-+#endif // XP_<PLATFORM>
-+
-+#ifdef HAVE_PRIVATE_REPORTER
- class PrivateReporter MOZ_FINAL : public MemoryReporterBase
- {
- public:
-@@ -339,21 +394,10 @@ public:
-
- NS_IMETHOD GetAmount(int64_t *aAmount)
- {
-- PROCESS_MEMORY_COUNTERS_EX pmcex;
-- pmcex.cb = sizeof(PROCESS_MEMORY_COUNTERS_EX);
--
-- if (!GetProcessMemoryInfo(
-- GetCurrentProcess(),
-- (PPROCESS_MEMORY_COUNTERS) &pmcex, sizeof(pmcex))) {
-- return NS_ERROR_FAILURE;
-- }
--
-- *aAmount = pmcex.PrivateUsage;
-- return NS_OK;
-+ return GetPrivate(aAmount);
- }
- };
--
--#endif // XP_<PLATFORM>
-+#endif
-
- #ifdef HAVE_VSIZE_AND_RESIDENT_REPORTERS
- class VsizeReporter MOZ_FINAL : public MemoryReporterBase
diff --git a/mail/thunderbird/files/patch-bug946560 b/mail/thunderbird/files/patch-bug946560
deleted file mode 100644
index f1ab78af9cce..000000000000
--- a/mail/thunderbird/files/patch-bug946560
+++ /dev/null
@@ -1,44 +0,0 @@
-diff --git xpcom/base/nsMemoryInfoDumper.cpp xpcom/base/nsMemoryInfoDumper.cpp
-index 0b2f78c..d857374 100644
---- mozilla/xpcom/base/nsMemoryInfoDumper.cpp
-+++ mozilla/xpcom/base/nsMemoryInfoDumper.cpp
-@@ -30,7 +30,7 @@
- #include <unistd.h>
- #endif
-
--#ifdef XP_LINUX
-+#if defined(XP_LINUX) || defined(__FreeBSD__)
- #include <fcntl.h>
- #include <sys/types.h>
- #include <sys/stat.h>
-@@ -109,7 +109,7 @@ private:
-
- } // anonymous namespace
-
--#ifdef XP_LINUX // {
-+#if defined(XP_LINUX) || defined(__FreeBSD__) // {
- namespace {
-
- /*
-@@ -548,7 +548,7 @@ nsMemoryInfoDumper::~nsMemoryInfoDumper(
- /* static */ void
- nsMemoryInfoDumper::Initialize()
- {
--#ifdef XP_LINUX
-+#if defined(XP_LINUX) || defined(__FreeBSD__)
- SignalPipeWatcher::Create();
- FifoWatcher::MaybeCreate();
- #endif
-diff --git xpcom/base/nsMemoryReporterManager.cpp xpcom/base/nsMemoryReporterManager.cpp
-index 8c65665..8f6d0e9 100644
---- mozilla/xpcom/base/nsMemoryReporterManager.cpp
-+++ mozilla/xpcom/base/nsMemoryReporterManager.cpp
-@@ -824,7 +824,7 @@ nsMemoryReporterManager::Init()
- RegisterReporter(new mozilla::dmd::DMDReporter);
- #endif
-
--#if defined(XP_LINUX)
-+#if defined(XP_LINUX) || defined(__FreeBSD__)
- nsMemoryInfoDumper::Initialize();
- #endif
-
diff --git a/mail/thunderbird/files/patch-bug961264 b/mail/thunderbird/files/patch-bug961264
index 00d077b235db..1a4cd035ab7f 100644
--- a/mail/thunderbird/files/patch-bug961264
+++ b/mail/thunderbird/files/patch-bug961264
@@ -142,9 +142,9 @@ diff --git js/src/configure.in js/src/configure.in
index bddd46d..d4b522e 100644
--- mozilla/js/src/configure.in
+++ mozilla/js/src/configure.in
-@@ -2348,116 +2348,13 @@ fi
+@@ -2077,116 +2077,13 @@ AC_LANG_CPLUSPLUS
- AC_LANG_C
+ MOZ_CXX11
-dnl Check for .hidden assembler directive and visibility attribute.
-dnl Borrowed from glibc configure.in
@@ -249,7 +249,7 @@ index bddd46d..d4b522e 100644
- ])
- if test "$ac_cv_have_visibility_builtin_bug" = "no" -a \
- "$ac_cv_have_visibility_class_bug" = "no"; then
-- VISIBILITY_FLAGS='-I$(DIST)/system_wrappers_js -include $(topsrcdir)/config/gcc_hidden.h'
+- VISIBILITY_FLAGS='-I$(DIST)/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h'
- WRAP_SYSTEM_INCLUDES=1
- else
- VISIBILITY_FLAGS='-fvisibility=hidden'
@@ -259,7 +259,7 @@ index bddd46d..d4b522e 100644
- fi # have visibility(hidden) attribute
+ AC_DEFINE(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE)
+ AC_DEFINE(HAVE_VISIBILITY_ATTRIBUTE)
-+ VISIBILITY_FLAGS='-I$(DIST)/system_wrappers_js -include $(topsrcdir)/config/gcc_hidden.h'
++ VISIBILITY_FLAGS='-I$(DIST)/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h'
+ WRAP_SYSTEM_INCLUDES=1
fi # GNU_CC
diff --git a/mail/thunderbird/files/patch-bug961816 b/mail/thunderbird/files/patch-bug961816
deleted file mode 100644
index 12c7441f5c83..000000000000
--- a/mail/thunderbird/files/patch-bug961816
+++ /dev/null
@@ -1,48 +0,0 @@
-diff --git config/system-headers config/system-headers
-index 8803150..ae38d68 100644
---- mozilla/config/system-headers
-+++ mozilla/config/system-headers
-@@ -1158,3 +1158,4 @@ unicode/unum.h
- unicode/ustring.h
- #endif
- libutil.h
-+unwind.h
-diff --git configure.in configure.in
-index f452a5e..a1ebbcc 100644
---- mozilla/configure.in
-+++ mozilla/configure.in
-@@ -7455,7 +7455,10 @@ dnl ========================================================
- dnl = Support for gcc stack unwinding (from gcc 3.3)
- dnl ========================================================
- if test -z "$SKIP_LIBRARY_CHECKS"; then
-+ AC_LANG_SAVE
-+ AC_LANG_CPLUSPLUS
- MOZ_CHECK_HEADER(unwind.h, AC_CHECK_FUNCS(_Unwind_Backtrace))
-+ AC_LANG_RESTORE
- fi
-
- dnl ========================================================
-diff --git config/system-headers config/system-headers
-index 8803150..ae38d68 100644
---- mozilla/js/src/config/system-headers
-+++ mozilla/js/src/config/system-headers
-@@ -1158,3 +1158,4 @@ unicode/unum.h
- unicode/ustring.h
- #endif
- libutil.h
-+unwind.h
-diff --git configure.in configure.in
-index f452a5e..a1ebbcc 100644
---- mozilla/js/src/configure.in
-+++ mozilla/js/src/configure.in
-@@ -7455,7 +7455,10 @@ dnl ========================================================
- dnl = Support for gcc stack unwinding (from gcc 3.3)
- dnl ========================================================
- if test -z "$SKIP_LIBRARY_CHECKS"; then
-+ AC_LANG_SAVE
-+ AC_LANG_CPLUSPLUS
- MOZ_CHECK_HEADER(unwind.h, AC_CHECK_FUNCS(_Unwind_Backtrace))
-+ AC_LANG_RESTORE
- fi
-
- dnl ========================================================
diff --git a/mail/thunderbird/files/patch-bug962345 b/mail/thunderbird/files/patch-bug962345
index d000cc7d11ee..d59fb9528285 100644
--- a/mail/thunderbird/files/patch-bug962345
+++ b/mail/thunderbird/files/patch-bug962345
@@ -2,16 +2,7 @@ diff --git config/system-headers config/system-headers
index 8803150..ae38d68 100644
--- mozilla/config/system-headers
+++ mozilla/config/system-headers
-@@ -1159,3 +1159,4 @@ unicode/ustring.h
- #endif
- libutil.h
- unwind.h
-+cairo-qt.h
-diff --git config/system-headers config/system-headers
-index 8803150..ae38d68 100644
---- mozilla/js/src/config/system-headers
-+++ mozilla/js/src/config/system-headers
-@@ -1159,3 +1159,4 @@ unicode/ustring.h
+@@ -1144,3 +1144,4 @@ unicode/utypes.h
#endif
libutil.h
unwind.h
diff --git a/mail/thunderbird/files/patch-bug975634 b/mail/thunderbird/files/patch-bug975634
deleted file mode 100644
index e2ab4063c5a0..000000000000
--- a/mail/thunderbird/files/patch-bug975634
+++ /dev/null
@@ -1,63 +0,0 @@
-diff --git configure.in configure.in
-index 0d9236a..0447104 100644
---- mozilla/configure.in
-+++ mozilla/configure.in
-@@ -9034,6 +9034,20 @@ AC_SUBST(MOZ_FOLD_LIBS)
- AC_SUBST(MOZ_ENABLE_SZIP)
- AC_SUBST(MOZ_SZIP_FLAGS)
-
-+AC_MSG_CHECKING([for posix_fadvise])
-+AC_TRY_LINK([#define _XOPEN_SOURCE 600
-+ #include <fcntl.h>],
-+ [posix_fadvise(0, 0, 0, 0);],
-+ [ac_cv___posix_fadvise=true],
-+ [ac_cv___posix_fadvise=false])
-+
-+if test "$ac_cv___posix_fadvise" = true ; then
-+ AC_DEFINE(HAVE_POSIX_FADVISE)
-+ AC_MSG_RESULT(yes)
-+else
-+ AC_MSG_RESULT(no)
-+fi
-+
- AC_MSG_CHECKING([for posix_fallocate])
- AC_TRY_LINK([#define _XOPEN_SOURCE 600
- #include <fcntl.h>],
-diff --git js/src/configure.in js/src/configure.in
-index da9767c..352ba14 100644
---- mozilla/js/src/configure.in
-+++ mozilla/js/src/configure.in
-@@ -4025,6 +4025,20 @@ AC_SUBST(CXX_VERSION)
- AC_SUBST(MSMANIFEST_TOOL)
- AC_SUBST(MOZ_LINKER)
-
-+AC_MSG_CHECKING([for posix_fadvise])
-+AC_TRY_LINK([#define _XOPEN_SOURCE 600
-+ #include <fcntl.h>],
-+ [posix_fadvise(0, 0, 0, 0);],
-+ [ac_cv___posix_fadvise=true],
-+ [ac_cv___posix_fadvise=false])
-+
-+if test "$ac_cv___posix_fadvise" = true ; then
-+ AC_DEFINE(HAVE_POSIX_FADVISE)
-+ AC_MSG_RESULT(yes)
-+else
-+ AC_MSG_RESULT(no)
-+fi
-+
- AC_MSG_CHECKING([for posix_fallocate])
- AC_TRY_LINK([#define _XOPEN_SOURCE 600
- #include <fcntl.h>],
-diff --git xpcom/io/nsLocalFileUnix.cpp xpcom/io/nsLocalFileUnix.cpp
-index bacf06c..0e46e4a 100644
---- mozilla/xpcom/io/nsLocalFileUnix.cpp
-+++ mozilla/xpcom/io/nsLocalFileUnix.cpp
-@@ -382,7 +382,7 @@ nsLocalFile::OpenNSPRFileDesc(int32_t flags, int32_t mode, PRFileDesc **_retval)
- PR_Delete(mPath.get());
- }
-
--#if defined(LINUX) && !defined(ANDROID)
-+#if defined(HAVE_POSIX_FADVISE)
- if (flags & OS_READAHEAD) {
- posix_fadvise(PR_FileDesc2NativeHandle(*_retval), 0, 0,
- POSIX_FADV_SEQUENTIAL);
diff --git a/mail/thunderbird/files/patch-bug977457 b/mail/thunderbird/files/patch-bug977457
deleted file mode 100644
index 82209ce2ec29..000000000000
--- a/mail/thunderbird/files/patch-bug977457
+++ /dev/null
@@ -1,27 +0,0 @@
-diff --git xpcom/base/nsStackWalk.cpp xpcom/base/nsStackWalk.cpp
-index bb0e15b..7641267 100644
---- mozilla/xpcom/base/nsStackWalk.cpp
-+++ mozilla/xpcom/base/nsStackWalk.cpp
-@@ -23,6 +23,12 @@ struct CriticalAddress {
- };
- static CriticalAddress gCriticalAddress;
-
-+// for _Unwind_Backtrace from libcxxrt or libunwind
-+// cxxabi.h from libcxxrt implicitly includes unwind.h first
-+#if defined(HAVE__UNWIND_BACKTRACE) && !defined(_GNU_SOURCE)
-+#define _GNU_SOURCE
-+#endif
-+
- #if defined(HAVE_DLOPEN) || defined(XP_MACOSX)
- #include <dlfcn.h>
- #endif
-@@ -1222,9 +1228,6 @@ NS_StackWalk(NS_WalkStackCallback aCallback, uint32_t aSkipFrames,
- #elif defined(HAVE__UNWIND_BACKTRACE)
-
- // libgcc_s.so symbols _Unwind_Backtrace@@GCC_3.3 and _Unwind_GetIP@@GCC_3.0
--#ifndef _GNU_SOURCE
--#define _GNU_SOURCE
--#endif
- #include <unwind.h>
-
- struct unwind_info {
diff --git a/mail/thunderbird/files/patch-bug981348 b/mail/thunderbird/files/patch-bug981348
new file mode 100644
index 000000000000..d24dec68d05a
--- /dev/null
+++ b/mail/thunderbird/files/patch-bug981348
@@ -0,0 +1,41 @@
+diff --git dom/system/OSFileConstants.cpp dom/system/OSFileConstants.cpp
+index 4b21361..cb3be32 100644
+--- mozilla/dom/system/OSFileConstants.cpp
++++ mozilla/dom/system/OSFileConstants.cpp
+@@ -596,7 +596,7 @@ static const dom::ConstantSpec gLibcProperties[] =
+
+ { "OSFILE_SIZEOF_STATVFS", INT_TO_JSVAL(sizeof (struct statvfs)) },
+
+- { "OSFILE_OFFSETOF_STATVFS_F_BSIZE", INT_TO_JSVAL(offsetof (struct statvfs, f_bsize)) },
++ { "OSFILE_OFFSETOF_STATVFS_F_FRSIZE", INT_TO_JSVAL(offsetof (struct statvfs, f_frsize)) },
+ { "OSFILE_OFFSETOF_STATVFS_F_BAVAIL", INT_TO_JSVAL(offsetof (struct statvfs, f_bavail)) },
+
+ #endif // defined(XP_UNIX)
+diff --git toolkit/components/osfile/modules/osfile_unix_back.jsm toolkit/components/osfile/modules/osfile_unix_back.jsm
+index b59fca4..0cf220b 100644
+--- mozilla/toolkit/components/osfile/modules/osfile_unix_back.jsm
++++ mozilla/toolkit/components/osfile/modules/osfile_unix_back.jsm
+@@ -228,8 +228,8 @@
+ let statvfs = new SharedAll.HollowStructure("statvfs",
+ Const.OSFILE_SIZEOF_STATVFS);
+
+- statvfs.add_field_at(Const.OSFILE_OFFSETOF_STATVFS_F_BSIZE,
+- "f_bsize", Type.unsigned_long.implementation);
++ statvfs.add_field_at(Const.OSFILE_OFFSETOF_STATVFS_F_FRSIZE,
++ "f_frsize", Type.unsigned_long.implementation);
+ statvfs.add_field_at(Const.OSFILE_OFFSETOF_STATVFS_F_BAVAIL,
+ "f_bavail", Type.fsblkcnt_t.implementation);
+
+diff --git toolkit/components/osfile/modules/osfile_unix_front.jsm toolkit/components/osfile/modules/osfile_unix_front.jsm
+index 99e5e9b..de642c5 100644
+--- mozilla/toolkit/components/osfile/modules/osfile_unix_front.jsm
++++ mozilla/toolkit/components/osfile/modules/osfile_unix_front.jsm
+@@ -373,7 +373,7 @@
+ throw_on_negative("statvfs", UnixFile.statvfs(sourcePath, fileSystemInfoPtr));
+
+ let bytes = new Type.uint64_t.implementation(
+- fileSystemInfo.f_bsize * fileSystemInfo.f_bavail);
++ fileSystemInfo.f_frsize * fileSystemInfo.f_bavail);
+
+ return bytes.value;
+ };
diff --git a/mail/thunderbird/files/patch-bug985848 b/mail/thunderbird/files/patch-bug985848
deleted file mode 100644
index f23d04ad6157..000000000000
--- a/mail/thunderbird/files/patch-bug985848
+++ /dev/null
@@ -1,22 +0,0 @@
---- mozilla/media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc
-+++ mozilla/media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc
-@@ -19,7 +19,7 @@
- #include <stdlib.h>
-
- //v4l includes
--#if defined(__DragonFly__) || defined(__NetBSD__) || defined(__OpenBSD__)
-+#if defined(__NetBSD__) || defined(__OpenBSD__)
- #include <sys/videoio.h>
- #elif defined(__sun)
- #include <sys/videodev2.h>
---- mozilla/media/webrtc/trunk/webrtc/modules/video_capture/linux/video_capture_linux.cc
-+++ mozilla/media/webrtc/trunk/webrtc/modules/video_capture/linux/video_capture_linux.cc
-@@ -18,7 +18,7 @@
- #include <string.h>
-
- //v4l includes
--#if defined(__DragonFly__) || defined(__NetBSD__) || defined(__OpenBSD__)
-+#if defined(__NetBSD__) || defined(__OpenBSD__)
- #include <sys/videoio.h>
- #elif defined(__sun)
- #include <sys/videodev2.h>
diff --git a/mail/thunderbird/files/patch-clang34-disable-stdcall b/mail/thunderbird/files/patch-clang34-disable-stdcall
index 6abb13eb72ef..2b91fba7197f 100644
--- a/mail/thunderbird/files/patch-clang34-disable-stdcall
+++ b/mail/thunderbird/files/patch-clang34-disable-stdcall
@@ -6,8 +6,8 @@
* NS_HIDDEN_(int) NS_FASTCALL func2(char *foo);
*/
--#if defined(__i386__) && defined(__GNUC__) && !defined(XP_OS2)
-+#if defined(__i386__) && defined(__GNUC__) && !defined(XP_OS2) && !(defined(__clang__) && __clang_major__ == 3 && __clang_minor__ == 4 && __clang_patchlevel__ == 0)
+-#if defined(__i386__) && defined(__GNUC__)
++#if defined(__i386__) && defined(__GNUC__) && !(defined(__clang__) && __clang_major__ == 3 && __clang_minor__ == 4 && __clang_patchlevel__ == 0)
#define NS_FASTCALL __attribute__ ((regparm (3), stdcall))
#define NS_CONSTRUCTOR_FASTCALL __attribute__ ((regparm (3), stdcall))
#elif defined(XP_WIN) && !defined(_WIN64)
diff --git a/mail/thunderbird/files/patch-config-baseconfig.mk b/mail/thunderbird/files/patch-config-baseconfig.mk
index 20a51fe6ac1b..fedf7c5d8a8e 100644
--- a/mail/thunderbird/files/patch-config-baseconfig.mk
+++ b/mail/thunderbird/files/patch-config-baseconfig.mk
@@ -1,8 +1,6 @@
--- config/baseconfig.mk~
+++ config/baseconfig.mk
-@@ -1,9 +1,9 @@
- INCLUDED_AUTOCONF_MK = 1
-
+@@ -1,7 +1,7 @@
-includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
-idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
-installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
diff --git a/mail/thunderbird/files/patch-mozilla-ipc-chromium-Makefile.in b/mail/thunderbird/files/patch-mozilla-ipc-chromium-Makefile.in
deleted file mode 100644
index 727a86a4c3bc..000000000000
--- a/mail/thunderbird/files/patch-mozilla-ipc-chromium-Makefile.in
+++ /dev/null
@@ -1,13 +0,0 @@
---- mozilla/ipc/chromium/Makefile.in~
-+++ mozilla/ipc/chromium/Makefile.in
-@@ -55,9 +60,7 @@ vpath %.c \
- $(srcdir)/src/third_party/libevent \
- $(NULL)
- else # } else {
--# message_pump_libevent.cc includes third_party/libevent/event.h,
--# which we put in $(DIST), see export rule below
--LOCAL_INCLUDES += -I$(DIST)
-+LOCAL_INCLUDES += $(filter %/compat, $(MOZ_LIBEVENT_CFLAGS))
- endif # }
-
- vpath %.cc \
diff --git a/mail/thunderbird/files/patch-mozilla-ipc-chromium-src-base-message_pump_libevent.cc b/mail/thunderbird/files/patch-mozilla-ipc-chromium-src-base-message_pump_libevent.cc
deleted file mode 100644
index ba9c0d6d3416..000000000000
--- a/mail/thunderbird/files/patch-mozilla-ipc-chromium-src-base-message_pump_libevent.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- mozilla/ipc/chromium/src/base/message_pump_libevent.cc~
-+++ mozilla/ipc/chromium/src/base/message_pump_libevent.cc
-@@ -16,7 +16,7 @@
- #include "base/scoped_ptr.h"
- #include "base/time.h"
- #include "nsDependentSubstring.h"
--#include "third_party/libevent/event.h"
-+#include "event.h"
-
- // Lifecycle of struct event
- // Libevent uses two main data structures:
diff --git a/mail/thunderbird/files/patch-zz-bug517422 b/mail/thunderbird/files/patch-z-bug517422
index 413a57a17e82..bc7f0c545bb8 100644
--- a/mail/thunderbird/files/patch-zz-bug517422
+++ b/mail/thunderbird/files/patch-z-bug517422
@@ -18,52 +18,53 @@ index 5383399..0410004 100644
$(srcdir)/system-headers | $(PERL) $(topsrcdir)/nsprpub/config/make-system-wrappers.pl system_wrappers
$(INSTALL) system_wrappers $(DIST)
-diff --git toolkit/toolkit.mozbuild toolkit/toolkit.mozbuild
-index c22a36c..2febb45 100644
---- mozilla/toolkit/toolkit.mozbuild
-+++ mozilla/toolkit/toolkit.mozbuild
-@@ -64,13 +64,13 @@ add_tier_dir('platform', 'rdf')
- if CONFIG['MOZ_JSDEBUGGER']:
- add_tier_dir('platform', 'js/jsd')
+diff --git config/external/moz.build config/external/moz.build
+index f67c5c7..eb909ce 100644
+--- mozilla/config/external/moz.build
++++ mozilla/config/external/moz.build
+@@ -15,13 +15,19 @@ if CONFIG['MOZ_UPDATER']:
+ if not CONFIG['MOZ_NATIVE_BZ2']:
+ external_dirs += ['modules/libbz2']
-if CONFIG['MOZ_VORBIS']:
++if not CONFIG['MOZ_NATIVE_OGG']:
++ external_dirs += ['media/libogg']
++
++if not CONFIG['MOZ_NATIVE_THEORA']:
++ external_dirs += ['media/libtheora']
++
+if CONFIG['MOZ_VORBIS'] and not CONFIG['MOZ_NATIVE_VORBIS']:
- add_tier_dir('platform', 'media/libvorbis')
+ external_dirs += ['media/libvorbis']
-if CONFIG['MOZ_TREMOR']:
+if CONFIG['MOZ_TREMOR'] and not CONFIG['MOZ_NATIVE_TREMOR']:
- add_tier_dir('platform', 'media/libtremor')
+ external_dirs += ['media/libtremor']
-if CONFIG['MOZ_OPUS']:
+if CONFIG['MOZ_OPUS'] and not CONFIG['MOZ_NATIVE_OPUS']:
- add_tier_dir('platform', 'media/libopus')
+ external_dirs += ['media/libopus']
if CONFIG['MOZ_WEBM']:
-@@ -82,7 +82,10 @@ if CONFIG['MOZ_VP8'] and not CONFIG['MOZ
- add_tier_dir('platform', 'media/libvpx')
-
- if CONFIG['MOZ_OGG']:
-- add_tier_dir('platform', ['media/libogg', 'media/libtheora'])
-+ if not CONFIG['MOZ_NATIVE_OGG']:
-+ add_tier_dir('platform', 'media/libogg')
-+ if not CONFIG['MOZ_NATIVE_THEORA']:
-+ add_tier_dir('platform', 'media/libtheora')
-
- if CONFIG['MOZ_WEBRTC']:
- add_tier_dir('platform', [
-@@ -92,10 +95,10 @@ if CONFIG['MOZ_WEBRTC']:
- 'media/mtransport/standalone',
- ])
+@@ -36,13 +42,15 @@ if CONFIG['MOZ_VPX'] and not CONFIG['MOZ_NATIVE_LIBVPX']:
+ if not CONFIG['MOZ_NATIVE_PNG']:
+ external_dirs += ['media/libpng']
--if CONFIG['MOZ_SPEEX_RESAMPLER']:
-+if CONFIG['MOZ_SPEEX_RESAMPLER'] and not CONFIG['MOZ_NATIVE_SPEEX']:
- add_tier_dir('platform', 'media/libspeex_resampler')
++if not CONFIG['MOZ_NATIVE_SPEEX']:
++ external_dirs += ['media/libspeex_resampler']
++
++if not CONFIG['MOZ_NATIVE_SOUNDTOUCH']:
++ external_dirs += ['media/libsoundtouch']
++
+ external_dirs += [
+ 'media/kiss_fft',
+ 'media/libcubeb',
+- 'media/libogg',
+- 'media/libtheora',
+- 'media/libspeex_resampler',
+- 'media/libsoundtouch',
+ ]
--if CONFIG['MOZ_SOUNDTOUCH']:
-+if CONFIG['MOZ_SOUNDTOUCH'] and not CONFIG['MOZ_NATIVE_SOUNDTOUCH']:
- add_tier_dir('platform', 'media/libsoundtouch')
-
- if CONFIG['MOZ_CUBEB']:
+ PARALLEL_DIRS += ['../../' + i for i in external_dirs]
diff --git config/system-headers config/system-headers
index bef567c..9807c29 100644
--- mozilla/config/system-headers
@@ -120,7 +121,7 @@ diff --git configure.in configure.in
index 87db361..7947626 100644
--- mozilla/configure.in
+++ mozilla/configure.in
-@@ -5211,6 +5211,57 @@ if test "${ac_cv_c_attribute_aligned}" != "0"; then
+@@ -5211,6 +5211,63 @@ if test "${ac_cv_c_attribute_aligned}" != "0"; then
fi
dnl ========================================================
@@ -134,6 +135,12 @@ index 87db361..7947626 100644
+
+if test -n "$MOZ_NATIVE_OGG"; then
+ PKG_CHECK_MODULES(MOZ_OGG, ogg >= 1.2.1)
++
++ _SAVE_LIBS=$LIBS
++ LIBS="$LIBS $MOZ_OGG_LIBS"
++ AC_CHECK_FUNC(ogg_set_mem_functions, [],
++ [AC_DEFINE(MOZ_OGG_NO_MEM_REPORTING)])
++ LIBS=$_SAVE_LIBS
+fi
+
+AC_SUBST(MOZ_NATIVE_OGG)
@@ -244,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
@@ -276,15 +283,28 @@ index 87db361..7947626 100644
dnl = Disable VP8 decoder support
dnl ========================================================
MOZ_ARG_DISABLE_BOOL(webm,
+diff --git content/media/AudioStream.h content/media/AudioStream.h
+index 085676d..00c54fb 100644
+--- mozilla/content/media/AudioStream.h
++++ mozilla/content/media/AudioStream.h
+@@ -26,7 +26,7 @@ public:
+ };
+
+ namespace soundtouch {
+-class SoundTouch;
++class MOZ_IMPORT_API SoundTouch;
+ }
+
+ namespace mozilla {
diff --git content/media/Makefile.in content/media/Makefile.in
index fd34449..c6c42c8 100644
--- mozilla/content/media/Makefile.in
+++ mozilla/content/media/Makefile.in
-@@ -6,4 +6,31 @@ include $(topsrcdir)/config/rules.mk
+@@ -6,3 +6,31 @@ include $(topsrcdir)/config/rules.mk
CFLAGS += $(GSTREAMER_CFLAGS)
CXXFLAGS += $(GSTREAMER_CFLAGS)
-
++
+ifdef MOZ_NATIVE_OGG
+CXXFLAGS += $(MOZ_OGG_CFLAGS)
+endif
@@ -324,98 +344,16 @@ index 4c14494..1cb98e2 100644
+ifdef MOZ_NATIVE_SPEEX
+CFLAGS += $(MOZ_SPEEX_CFLAGS)
+endif
-+
- AudioNodeEngineNEON.$(OBJ_SUFFIX): CXXFLAGS += -mfpu=neon
-diff --git layout/media/Makefile.in layout/media/Makefile.in
-index 1cacbd7..a8cd156 100644
---- mozilla/layout/media/Makefile.in
-+++ mozilla/layout/media/Makefile.in
-@@ -36,31 +36,45 @@ ifdef MOZ_TREE_PIXMAN
- SHARED_LIBRARY_LIBS += $(MOZ_PIXMAN_LIBS)
- endif
-
-+ifdef MOZ_OGG
-+ifndef MOZ_NATIVE_OGG
-+SHARED_LIBRARY_LIBS += \
-+ $(DEPTH)/media/libogg/src/$(LIB_PREFIX)ogg.$(LIB_SUFFIX) \
-+ $(NULL)
-+endif
-+endif
-+
- ifdef MOZ_VORBIS
-+ifndef MOZ_NATIVE_VORBIS
- SHARED_LIBRARY_LIBS += \
- $(DEPTH)/media/libvorbis/lib/$(LIB_PREFIX)vorbis.$(LIB_SUFFIX) \
-- $(DEPTH)/media/libogg/src/$(LIB_PREFIX)ogg.$(LIB_SUFFIX) \
- $(NULL)
- endif
-+endif
-
- ifdef MOZ_TREMOR
-+ifndef MOZ_NATIVE_TREMOR
- SHARED_LIBRARY_LIBS += \
- $(DEPTH)/media/libtremor/lib/$(LIB_PREFIX)tremor.$(LIB_SUFFIX) \
-- $(DEPTH)/media/libogg/src/$(LIB_PREFIX)ogg.$(LIB_SUFFIX) \
- $(NULL)
- endif
-+endif
-
- ifdef MOZ_OGG
-+ifndef MOZ_NATIVE_THEORA
- SHARED_LIBRARY_LIBS += \
- $(DEPTH)/media/libtheora/lib/$(LIB_PREFIX)theora.$(LIB_SUFFIX) \
- $(NULL)
- endif
-+endif
-
- ifdef MOZ_OPUS
-+ifndef MOZ_NATIVE_OPUS
- SHARED_LIBRARY_LIBS += \
- $(DEPTH)/media/libopus/$(LIB_PREFIX)opus.$(LIB_SUFFIX) \
- $(NULL)
- endif
-+endif
-
- ifdef MOZ_WEBM
- SHARED_LIBRARY_LIBS += \
-@@ -77,16 +91,20 @@ endif
- endif
-
- ifdef MOZ_SPEEX_RESAMPLER
-+ifndef MOZ_NATIVE_SPEEX
- SHARED_LIBRARY_LIBS += \
- $(DEPTH)/media/libspeex_resampler/src/$(LIB_PREFIX)speex_resampler.$(LIB_SUFFIX) \
- $(NULL)
- endif
-+endif
-
- ifdef MOZ_SOUNDTOUCH
-+ifndef MOZ_NATIVE_SOUNDTOUCH
- SHARED_LIBRARY_LIBS += \
- $(DEPTH)/media/libsoundtouch/src/$(LIB_PREFIX)soundtouch.$(LIB_SUFFIX) \
- $(NULL)
- endif
-+endif
-
- ifdef MOZ_CUBEB
- SHARED_LIBRARY_LIBS += \
diff --git media/libtheora/Makefile.in media/libtheora/Makefile.in
new file mode 100644
index 0000000..1f02dc0
--- /dev/null
+++ mozilla/media/libtheora/Makefile.in
-@@ -0,0 +1,16 @@
+@@ -0,0 +1,9 @@
+# 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/.
+
-+DEPTH = @DEPTH@
-+topsrcdir = @top_srcdir@
-+srcdir = @srcdir@
-+VPATH = @srcdir@
-+
-+include $(DEPTH)/config/autoconf.mk
-+
+include $(topsrcdir)/config/rules.mk
+
+ifdef MOZ_NATIVE_OGG
@@ -426,18 +364,11 @@ new file mode 100644
index 0000000..1f02dc0
--- /dev/null
+++ mozilla/media/libtremor/Makefile.in
-@@ -0,0 +1,16 @@
+@@ -0,0 +1,9 @@
+# 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/.
+
-+DEPTH = @DEPTH@
-+topsrcdir = @top_srcdir@
-+srcdir = @srcdir@
-+VPATH = @srcdir@
-+
-+include $(DEPTH)/config/autoconf.mk
-+
+include $(topsrcdir)/config/rules.mk
+
+ifdef MOZ_NATIVE_OGG
@@ -448,18 +379,11 @@ new file mode 100644
index 0000000..1f02dc0
--- /dev/null
+++ mozilla/media/libvorbis/Makefile.in
-@@ -0,0 +1,16 @@
+@@ -0,0 +1,9 @@
+# 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/.
+
-+DEPTH = @DEPTH@
-+topsrcdir = @top_srcdir@
-+srcdir = @srcdir@
-+VPATH = @srcdir@
-+
-+include $(DEPTH)/config/autoconf.mk
-+
+include $(topsrcdir)/config/rules.mk
+
+ifdef MOZ_NATIVE_OGG
@@ -491,7 +415,7 @@ index 00e77e7..55f48ab 100644
['build_with_mozilla==1', {
# Mozilla provides its own build of the opus library.
- 'include_dirs': [
-- '$(DIST)/include/opus',
+- '/media/libopus/include',
- ]
+ 'cflags_mozilla': [
+ '$(MOZ_OPUS_CFLAGS)',
@@ -499,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
---- mozilla/toolkit/library/Makefile.in
-+++ mozilla/toolkit/library/Makefile.in
+--- mozilla/toolkit/library/libxul.mk
++++ mozilla/toolkit/library/libxul.mk
@@ -77,6 +77,34 @@ ifdef MOZ_NATIVE_HUNSPELL
EXTRA_DSO_LDOPTS += $(MOZ_HUNSPELL_LIBS)
endif
@@ -538,3 +462,31 @@ index d42137a..695e75a8 100644
ifdef MOZ_NATIVE_LIBEVENT
EXTRA_DSO_LDOPTS += $(MOZ_LIBEVENT_LIBS)
endif
+diff --git xpcom/build/nsXPComInit.cpp xpcom/build/nsXPComInit.cpp
+index 2cf281e..6d7af0e 100644
+--- mozilla/xpcom/build/nsXPComInit.cpp
++++ mozilla/xpcom/build/nsXPComInit.cpp
+@@ -130,7 +130,9 @@ extern nsresult nsStringInputStreamConstructor(nsISupports *, REFNSIID, void **)
+ #include "mozilla/VisualEventTracer.h"
+ #endif
+
++#ifndef MOZ_OGG_NO_MEM_REPORTING
+ #include "ogg/ogg.h"
++#endif
+ #if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING)
+ #include "vpx_mem/vpx_mem.h"
+ #endif
+@@ -571,11 +573,13 @@ NS_InitXPCOM2(nsIServiceManager* *result,
+ // this oddness.
+ mozilla::SetICUMemoryFunctions();
+
++#ifndef MOZ_OGG_NO_MEM_REPORTING
+ // Do the same for libogg.
+ ogg_set_mem_functions(OggReporter::CountingMalloc,
+ OggReporter::CountingCalloc,
+ OggReporter::CountingRealloc,
+ OggReporter::CountingFree);
++#endif
+
+ #if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING)
+ // And for VPX.
diff --git a/www/firefox-esr-i18n/Makefile b/www/firefox-esr-i18n/Makefile
index 16bca4b00878..6a1c7dc5a893 100644
--- a/www/firefox-esr-i18n/Makefile
+++ b/www/firefox-esr-i18n/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= firefox
-PORTVERSION= 24.6.0
+PORTVERSION= 24.7.0
CATEGORIES= www
MASTER_SITES= MOZILLA/${PORTNAME:S|-i18n||}/releases/${PORTVERSION}esr/linux-i686/xpi
PKGNAMEPREFIX=
diff --git a/www/firefox-esr-i18n/Makefile.option b/www/firefox-esr-i18n/Makefile.option
index 5714eec30ce3..d9bc864db303 100644
--- a/www/firefox-esr-i18n/Makefile.option
+++ b/www/firefox-esr-i18n/Makefile.option
@@ -99,6 +99,6 @@ OPTIONS_DEFAULT=LANG_AR LANG_BN LANG_BR LANG_CN LANG_ET LANG_DE LANG_FR \
LANG_ACH_DESC?= Acholi language support
LANG_AS_DESC?= Assamese language support
LANG_CSB_DESC?= Kashubian language support
-LANG_FF_DESC?= Pulaar Fulfulde language support
+LANG_FF_DESC?= Fulah language support
LANG_KM_DESC?= Khmer language support
LANG_LIJ_DESC?= Ligurian (Genoa) language support
diff --git a/www/firefox-esr-i18n/distinfo b/www/firefox-esr-i18n/distinfo
index a26a865488aa..88d593b9e9a0 100644
--- a/www/firefox-esr-i18n/distinfo
+++ b/www/firefox-esr-i18n/distinfo
@@ -1,178 +1,178 @@
-SHA256 (xpi/firefox-24.6.0/ach.xpi) = 760eaa7d308061e43ba9c57e28ed6f26e3821d286f8425bcb06fe31fa4f375c3
-SIZE (xpi/firefox-24.6.0/ach.xpi) = 339946
-SHA256 (xpi/firefox-24.6.0/af.xpi) = 51aa87f6ff3126bbbc93a62554b3f1ff7c3405279a29acea57a0674a2e53d7c2
-SIZE (xpi/firefox-24.6.0/af.xpi) = 333184
-SHA256 (xpi/firefox-24.6.0/ak.xpi) = 205083dd4890ac6ec3e1b26595e63820fdcfc91d408a1c56d963b084673ed910
-SIZE (xpi/firefox-24.6.0/ak.xpi) = 340940
-SHA256 (xpi/firefox-24.6.0/ar.xpi) = eda2edbf07efa2f1f70c30b3bb699e5db353f7854b8aa1f7e9b8599576b2fca5
-SIZE (xpi/firefox-24.6.0/ar.xpi) = 360850
-SHA256 (xpi/firefox-24.6.0/as.xpi) = 2893b39b73b5ca71b5b562af155db917e5ac1aa0ab02941e400b9cd055346601
-SIZE (xpi/firefox-24.6.0/as.xpi) = 378085
-SHA256 (xpi/firefox-24.6.0/ast.xpi) = 38c5ef1342b84f6f399746a05a2fa03743d19955efa88c34bf33ff6b9bba95e0
-SIZE (xpi/firefox-24.6.0/ast.xpi) = 292876
-SHA256 (xpi/firefox-24.6.0/be.xpi) = 0bc49ac841663b42e769bf26da9f18649762896aef0ba92f5b8399d94219d91f
-SIZE (xpi/firefox-24.6.0/be.xpi) = 316955
-SHA256 (xpi/firefox-24.6.0/bg.xpi) = f7835756fbb5ffcc74359200b4f2be3a4a7eca275285a4e5412d076625d52e35
-SIZE (xpi/firefox-24.6.0/bg.xpi) = 373136
-SHA256 (xpi/firefox-24.6.0/bn-BD.xpi) = 1ab701bbf5183df5d89d67adc0fc39eca12b5650b5076d0bc06811e193c0febd
-SIZE (xpi/firefox-24.6.0/bn-BD.xpi) = 394939
-SHA256 (xpi/firefox-24.6.0/bn-IN.xpi) = 4934052d84af60e3232799c3a7f5e84d253902e68385344269d69bb2ee891f3c
-SIZE (xpi/firefox-24.6.0/bn-IN.xpi) = 427780
-SHA256 (xpi/firefox-24.6.0/br.xpi) = 812c636e08adbdcbebaf9aa3995ed842fe61dd2c5487543df093a8167d30c37f
-SIZE (xpi/firefox-24.6.0/br.xpi) = 330509
-SHA256 (xpi/firefox-24.6.0/bs.xpi) = 182ad06c417103df56cd9bac37b7392cafa54b23e38d7b811300ccfb7f4b90c9
-SIZE (xpi/firefox-24.6.0/bs.xpi) = 341620
-SHA256 (xpi/firefox-24.6.0/ca.xpi) = 0b49401392e73469a8296f8319f42e220ad3012db1dd6012c1b45ce8fb359e1d
-SIZE (xpi/firefox-24.6.0/ca.xpi) = 341257
-SHA256 (xpi/firefox-24.6.0/cs.xpi) = 87f456f90093e9443c0718ffc9b3eed2bc8992329203a888adf0c78872859960
-SIZE (xpi/firefox-24.6.0/cs.xpi) = 335946
-SHA256 (xpi/firefox-24.6.0/csb.xpi) = d878fc7e6240283850ddd85567b0e3007c73f3cf2242327f1ad6629ce9f79a23
-SIZE (xpi/firefox-24.6.0/csb.xpi) = 329796
-SHA256 (xpi/firefox-24.6.0/cy.xpi) = 7c9c7400ac93e04e5335d359516facb371b77535b86a4731c1fb310f3cd9c151
-SIZE (xpi/firefox-24.6.0/cy.xpi) = 330643
-SHA256 (xpi/firefox-24.6.0/da.xpi) = 018ed2c01fb9df4a83e39c7a25b4d0f2190a7f288d6f1fd6b817e44d29d5948d
-SIZE (xpi/firefox-24.6.0/da.xpi) = 326882
-SHA256 (xpi/firefox-24.6.0/de.xpi) = fbaba3f3356377bfc71de91a5943f473d661f2daba32a881e3def5ed5a1244e1
-SIZE (xpi/firefox-24.6.0/de.xpi) = 323258
-SHA256 (xpi/firefox-24.6.0/el.xpi) = c33759d7fe6e3a7f5117af81e82d29e9a05f9384825a8ba8e85943f84d8c4991
-SIZE (xpi/firefox-24.6.0/el.xpi) = 365320
-SHA256 (xpi/firefox-24.6.0/en-GB.xpi) = 886959f3bdd2f14d243812982c5fcc68af7acc742cfad0dc58e3d30fa790256e
-SIZE (xpi/firefox-24.6.0/en-GB.xpi) = 318297
-SHA256 (xpi/firefox-24.6.0/en-US.xpi) = 5fb0d62bf3e08c73db0086a5a4721f588dc4b8282d098aff52c83078f1751ce0
-SIZE (xpi/firefox-24.6.0/en-US.xpi) = 320993
-SHA256 (xpi/firefox-24.6.0/en-ZA.xpi) = 207ae891c739deded157f390981ead19120184df069a790d1ed84276df792ea9
-SIZE (xpi/firefox-24.6.0/en-ZA.xpi) = 319321
-SHA256 (xpi/firefox-24.6.0/eo.xpi) = 81818d5f309e35351691a2a8821f90a50772847b5f41bed6bbf01319fe7fb3c1
-SIZE (xpi/firefox-24.6.0/eo.xpi) = 334940
-SHA256 (xpi/firefox-24.6.0/es-AR.xpi) = 7e338148ffa757c40dfa2967b7df02af4865b059f4f50a6569f13355d5a5c1f0
-SIZE (xpi/firefox-24.6.0/es-AR.xpi) = 334010
-SHA256 (xpi/firefox-24.6.0/es-CL.xpi) = 586b97eaeb957c38c93b43499a7ee262622da5c107ebad53c5e0e6026053e12f
-SIZE (xpi/firefox-24.6.0/es-CL.xpi) = 287027
-SHA256 (xpi/firefox-24.6.0/es-ES.xpi) = b6ace28a3609016e7f3a54ce39383d0a62355d4a7f9a20e226aae6986247d619
-SIZE (xpi/firefox-24.6.0/es-ES.xpi) = 277859
-SHA256 (xpi/firefox-24.6.0/es-MX.xpi) = a98e55f3ed4d5541ebbae2c301ea76ed87aaaeffc6fbb5d100e30f043135719b
-SIZE (xpi/firefox-24.6.0/es-MX.xpi) = 302625
-SHA256 (xpi/firefox-24.6.0/et.xpi) = 857193177866e9ba9d77570c4398522c06e899a5ace1818546c37aa8e8862529
-SIZE (xpi/firefox-24.6.0/et.xpi) = 327697
-SHA256 (xpi/firefox-24.6.0/eu.xpi) = 1822d8c824126df5cd3f7819787173d009420fed02d9e858acd78140d8c4e8d4
-SIZE (xpi/firefox-24.6.0/eu.xpi) = 332422
-SHA256 (xpi/firefox-24.6.0/fa.xpi) = 4d4e10237d0e69a0aac83c7e4c5045a199bc0e263bb46b10e936d8a5484cb456
-SIZE (xpi/firefox-24.6.0/fa.xpi) = 375633
-SHA256 (xpi/firefox-24.6.0/ff.xpi) = 9fe433bed01296ccd02ce631bfbb8eb29cb87da27ce987dfe23bfff6c1a7bb5a
-SIZE (xpi/firefox-24.6.0/ff.xpi) = 332815
-SHA256 (xpi/firefox-24.6.0/fi.xpi) = 0023d056329ef77db77fcb85cecc5779a12575679be4aa7480a472fbf1a64fb2
-SIZE (xpi/firefox-24.6.0/fi.xpi) = 328892
-SHA256 (xpi/firefox-24.6.0/fr.xpi) = 204c57d85444cae922e51884a089158a47c5200fa7b67b5ff9be25b3a00b2ff4
-SIZE (xpi/firefox-24.6.0/fr.xpi) = 339178
-SHA256 (xpi/firefox-24.6.0/fy-NL.xpi) = 646692c071f645783c603e3221de9517443af146255354fcf98b2afe230d4924
-SIZE (xpi/firefox-24.6.0/fy-NL.xpi) = 336589
-SHA256 (xpi/firefox-24.6.0/ga-IE.xpi) = d03b520fc2f94bf4b5ff56a29f892a79b48ba3470d024a68cd7674b382c1a9e1
-SIZE (xpi/firefox-24.6.0/ga-IE.xpi) = 345294
-SHA256 (xpi/firefox-24.6.0/gd.xpi) = 110d017c8ca20a29dd940df750d7868d47297c0e8742ad6b05f36016068a4dc3
-SIZE (xpi/firefox-24.6.0/gd.xpi) = 344811
-SHA256 (xpi/firefox-24.6.0/gl.xpi) = 50579a1852c2b482aedf224ed2e520471dc9330263b7fb78ab790348b7c52693
-SIZE (xpi/firefox-24.6.0/gl.xpi) = 336919
-SHA256 (xpi/firefox-24.6.0/gu-IN.xpi) = c8bb7bb276c09cfed037179bf72ba5438b80636b5a700e5db9e84b3ee08edeae
-SIZE (xpi/firefox-24.6.0/gu-IN.xpi) = 359359
-SHA256 (xpi/firefox-24.6.0/he.xpi) = 46ef2e3b53745da0cad551efef985adb7933f0b6090c3e187dc4609b207608bd
-SIZE (xpi/firefox-24.6.0/he.xpi) = 354631
-SHA256 (xpi/firefox-24.6.0/hi-IN.xpi) = e0ce6c822817a759f08f2fd3978cff91ca010fd4712981a1c5fa2351d7e89be8
-SIZE (xpi/firefox-24.6.0/hi-IN.xpi) = 379121
-SHA256 (xpi/firefox-24.6.0/hr.xpi) = de54dbfb350806e3292859f48d3689ed4716c0dec7fefacc8f895538a3c0d1c0
-SIZE (xpi/firefox-24.6.0/hr.xpi) = 336841
-SHA256 (xpi/firefox-24.6.0/hu.xpi) = 1d279c602f65db04708f1670d192dad2c81823b4f8774ef472e11bf454571c03
-SIZE (xpi/firefox-24.6.0/hu.xpi) = 344103
-SHA256 (xpi/firefox-24.6.0/hy-AM.xpi) = 0b278c52903e631e9ebcebec5416ed82191ec5df9f3544d723747806f69d5425
-SIZE (xpi/firefox-24.6.0/hy-AM.xpi) = 385180
-SHA256 (xpi/firefox-24.6.0/id.xpi) = f152bb87a56aa251324922afc9e5b03d28b96a4cca0a307bb3af4a7d4c0cfb05
-SIZE (xpi/firefox-24.6.0/id.xpi) = 319795
-SHA256 (xpi/firefox-24.6.0/is.xpi) = cfd12ce9a56d5f7e909f59757b2bf88b03e662c56b451680550ce1cb72b93fd9
-SIZE (xpi/firefox-24.6.0/is.xpi) = 331826
-SHA256 (xpi/firefox-24.6.0/it.xpi) = 0eb5b78f7cd1e310e62abc916b108cc660bd55c4f3bb164fc904bf1edcfc6bf1
-SIZE (xpi/firefox-24.6.0/it.xpi) = 271926
-SHA256 (xpi/firefox-24.6.0/ja.xpi) = e3fe0983fc34d84e732975b74a45dd65e25b4bb5e63ebe4f9a4f8c3fc321b78c
-SIZE (xpi/firefox-24.6.0/ja.xpi) = 370904
-SHA256 (xpi/firefox-24.6.0/kk.xpi) = 71767c2c1d2d5925861bd56222f18d97b19923b36d07baaae11c1ceb113ad219
-SIZE (xpi/firefox-24.6.0/kk.xpi) = 377502
-SHA256 (xpi/firefox-24.6.0/km.xpi) = d41f31a75c2f84fa40ac71e74c6666e0838ebd2c8113cf9fbc67aa29f7b74142
-SIZE (xpi/firefox-24.6.0/km.xpi) = 400559
-SHA256 (xpi/firefox-24.6.0/kn.xpi) = 65ffea88d62e5fcb6b762f7d966d0744b5a46fc3efea8837f1c1abd2360737b5
-SIZE (xpi/firefox-24.6.0/kn.xpi) = 391034
-SHA256 (xpi/firefox-24.6.0/ko.xpi) = e03decad990bca524ca2f741f75951664b8cebbc48659804a2fe85227fae96fd
-SIZE (xpi/firefox-24.6.0/ko.xpi) = 346164
-SHA256 (xpi/firefox-24.6.0/ku.xpi) = 0c14fcab9c376ffd2f0a48782e405c608e3b10c6a3047337c0c3257e63e5a76e
-SIZE (xpi/firefox-24.6.0/ku.xpi) = 355632
-SHA256 (xpi/firefox-24.6.0/lg.xpi) = 4cdf9b295ecab6e8f4ee9d1829273878c18cb609f32594af76b1ce1a4bbbce5c
-SIZE (xpi/firefox-24.6.0/lg.xpi) = 351111
-SHA256 (xpi/firefox-24.6.0/lij.xpi) = 025d1ddc5446b554000feeeca66023aa3c4234aeba50cd7f1fb2461f404fecfb
-SIZE (xpi/firefox-24.6.0/lij.xpi) = 322703
-SHA256 (xpi/firefox-24.6.0/lt.xpi) = 9ada99285be0aef762953cf2c0a5ef1b1ce45d286787a883d0908d2176c1bebc
-SIZE (xpi/firefox-24.6.0/lt.xpi) = 352045
-SHA256 (xpi/firefox-24.6.0/lv.xpi) = dfac1a3f01537c6df9a39f05b5ac9c29fdedb3745120c07dc9dbe8bf200244d2
-SIZE (xpi/firefox-24.6.0/lv.xpi) = 328664
-SHA256 (xpi/firefox-24.6.0/mai.xpi) = ccd6b3cc898738961fedce93f5f21ce0e122e51bcd9c4fb4b2d795011cd93ecf
-SIZE (xpi/firefox-24.6.0/mai.xpi) = 379767
-SHA256 (xpi/firefox-24.6.0/mk.xpi) = 87a5117d48ae0b5cb2ad00087f0e33a5c41034197ac77f252d7f017fcc05ffa7
-SIZE (xpi/firefox-24.6.0/mk.xpi) = 376316
-SHA256 (xpi/firefox-24.6.0/ml.xpi) = 4d876e6121199dba2e2aaa801c30aa31137515e2ac0bbd54ec6705cf0c8803fa
-SIZE (xpi/firefox-24.6.0/ml.xpi) = 399677
-SHA256 (xpi/firefox-24.6.0/mr.xpi) = 9ab7192bdfa84253dc1fe4dd903e578bb2b8be53450361941d96f02ff1d909e7
-SIZE (xpi/firefox-24.6.0/mr.xpi) = 380232
-SHA256 (xpi/firefox-24.6.0/nb-NO.xpi) = 4d3fbcc7ab4fd6d9417e93e9bb2583633368268c3cf167686e9a7cc9aabb69b9
-SIZE (xpi/firefox-24.6.0/nb-NO.xpi) = 330966
-SHA256 (xpi/firefox-24.6.0/nl.xpi) = eb87f884362fd4593f386a8f86086f8c22fcfc225fb8abf96a9c6ff32c74b171
-SIZE (xpi/firefox-24.6.0/nl.xpi) = 331404
-SHA256 (xpi/firefox-24.6.0/nn-NO.xpi) = 3b039307b362d9712c7d046baaddf781b6a14cf3ffdef29a508bf951a3241b2c
-SIZE (xpi/firefox-24.6.0/nn-NO.xpi) = 333907
-SHA256 (xpi/firefox-24.6.0/nso.xpi) = 128fb0c052af4b3fff3d59d820560ce8c743090b7e70f637772917422e17d2cf
-SIZE (xpi/firefox-24.6.0/nso.xpi) = 336298
-SHA256 (xpi/firefox-24.6.0/or.xpi) = 2907e2f67266186499d845d4e5ca413e8567e619ccad58568e91ad304029910b
-SIZE (xpi/firefox-24.6.0/or.xpi) = 364593
-SHA256 (xpi/firefox-24.6.0/pa-IN.xpi) = 5359438a698deb45572471a959cc7dbcb60d667b99b38ca3289e52d657bb5514
-SIZE (xpi/firefox-24.6.0/pa-IN.xpi) = 365653
-SHA256 (xpi/firefox-24.6.0/pl.xpi) = 23d1a216333643bd4f3e24b5e72be7653fce4ac125ca28de28f957f081987457
-SIZE (xpi/firefox-24.6.0/pl.xpi) = 341995
-SHA256 (xpi/firefox-24.6.0/pt-BR.xpi) = 4dedb31cca4cf75d1a89b598d5eaaca4e4c61eba6c0eee2a8bfdec45dca7ae86
-SIZE (xpi/firefox-24.6.0/pt-BR.xpi) = 334606
-SHA256 (xpi/firefox-24.6.0/pt-PT.xpi) = 99a74250f123d9e5a53a45f8fae43c5b58a09c8856898f4a4eb87aedf9e1e65c
-SIZE (xpi/firefox-24.6.0/pt-PT.xpi) = 332739
-SHA256 (xpi/firefox-24.6.0/rm.xpi) = 444ae4667d29f81051d0f214eb70816daae1ae0f532d16d63c0fac562808b33f
-SIZE (xpi/firefox-24.6.0/rm.xpi) = 339698
-SHA256 (xpi/firefox-24.6.0/ro.xpi) = f6f3131386fc0b9f40c64f7e28f7c3309ddeca6b533915f2fbe11e3918a35936
-SIZE (xpi/firefox-24.6.0/ro.xpi) = 362236
-SHA256 (xpi/firefox-24.6.0/ru.xpi) = f23aabad84b0da7967eaf4741f39fda0a9491fca11f6b7551912388772d5169e
-SIZE (xpi/firefox-24.6.0/ru.xpi) = 322761
-SHA256 (xpi/firefox-24.6.0/si.xpi) = e0addba9bab8c09b8cf8ec58f776bd28018b66959f06dff56c2c657248fa6ac6
-SIZE (xpi/firefox-24.6.0/si.xpi) = 372982
-SHA256 (xpi/firefox-24.6.0/sk.xpi) = 8b513cb6acc9df9ae84800114bcf361a119f3f9e9c55b72ead5833fb111d9193
-SIZE (xpi/firefox-24.6.0/sk.xpi) = 347879
-SHA256 (xpi/firefox-24.6.0/sl.xpi) = cedb15a7b0a0b6ed54be366226634111fd8e9a547497dd7ed9196d698193cdd8
-SIZE (xpi/firefox-24.6.0/sl.xpi) = 331572
-SHA256 (xpi/firefox-24.6.0/son.xpi) = 34a568be2b0254416ed0ccd6f38fd56bafe6f7a048130c6b56ce107ca82cc107
-SIZE (xpi/firefox-24.6.0/son.xpi) = 328899
-SHA256 (xpi/firefox-24.6.0/sq.xpi) = 831722b244cc5c6b74a50f31303cd20ff47cfc29f52bad805dde8c021d9c4c8b
-SIZE (xpi/firefox-24.6.0/sq.xpi) = 340677
-SHA256 (xpi/firefox-24.6.0/sr.xpi) = 233297df3bfbd044c36bb7cf678690631b30bcdfee2fa8765aac36014708508f
-SIZE (xpi/firefox-24.6.0/sr.xpi) = 385108
-SHA256 (xpi/firefox-24.6.0/sv-SE.xpi) = 530ceff17481052717b8f32e8563ba53b05d837494f281d9ebf5a67c81549f56
-SIZE (xpi/firefox-24.6.0/sv-SE.xpi) = 333507
-SHA256 (xpi/firefox-24.6.0/ta-LK.xpi) = c9743edd650e1146744fe836ec09d6e330d3b30f66b72dfa41cca218ca9b619a
-SIZE (xpi/firefox-24.6.0/ta-LK.xpi) = 384155
-SHA256 (xpi/firefox-24.6.0/ta.xpi) = 18fc1bd29581ce6f748a16c097c4370b97b0febf8c74ae2975b168659e2f3002
-SIZE (xpi/firefox-24.6.0/ta.xpi) = 381423
-SHA256 (xpi/firefox-24.6.0/te.xpi) = 3812771caa640514ebc9abd1d170402b7fdaf53a447d355bd91ae13ec7746372
-SIZE (xpi/firefox-24.6.0/te.xpi) = 394563
-SHA256 (xpi/firefox-24.6.0/th.xpi) = 14288fe4d0d69795df4aa4fb40471b6398f536c1c00398aedcc539a9ce16ea2d
-SIZE (xpi/firefox-24.6.0/th.xpi) = 379823
-SHA256 (xpi/firefox-24.6.0/tr.xpi) = ac03cc9c2c401f15a4bc29d972831195b1465421fed09003f2fcd4351b8b652d
-SIZE (xpi/firefox-24.6.0/tr.xpi) = 340387
-SHA256 (xpi/firefox-24.6.0/uk.xpi) = 45f8bf56a2a503074ee2e234f6f336914f0bdba2b1dcfe8e7ed69bbb33ece252
-SIZE (xpi/firefox-24.6.0/uk.xpi) = 365699
-SHA256 (xpi/firefox-24.6.0/vi.xpi) = 9b2fb878254624d8c36cc87aeace3287e06811d457aeba13d1708111f13235b1
-SIZE (xpi/firefox-24.6.0/vi.xpi) = 358430
-SHA256 (xpi/firefox-24.6.0/zh-CN.xpi) = b0387855eb292541034e1b6840920065af40caaee4a1ad67da3bf022947aac61
-SIZE (xpi/firefox-24.6.0/zh-CN.xpi) = 358182
-SHA256 (xpi/firefox-24.6.0/zh-TW.xpi) = fe8aae3ab4b25e242ba2b284e029b9803285e7524bacdecc2af3954bcc5d642b
-SIZE (xpi/firefox-24.6.0/zh-TW.xpi) = 351833
-SHA256 (xpi/firefox-24.6.0/zu.xpi) = 4b2ade2bdf3f39900ae3f3b82b9677eca8f2350c6b9c4aff8ee8074c716c9314
-SIZE (xpi/firefox-24.6.0/zu.xpi) = 340395
+SHA256 (xpi/firefox-24.7.0/ach.xpi) = f940313ce154018ae3f0db0fc88ba8d92f0e9e7fcc65b644f545a413e331d3ad
+SIZE (xpi/firefox-24.7.0/ach.xpi) = 339946
+SHA256 (xpi/firefox-24.7.0/af.xpi) = f937d489c6cb379496c6150280165055ce5d4b2ef135e72892f247fe1814af58
+SIZE (xpi/firefox-24.7.0/af.xpi) = 333184
+SHA256 (xpi/firefox-24.7.0/ak.xpi) = 153ef421ba2d902bc321d9d23c115d113f8268e4bbf33af4620af963a0a477c2
+SIZE (xpi/firefox-24.7.0/ak.xpi) = 340940
+SHA256 (xpi/firefox-24.7.0/ar.xpi) = 9864288d7cd21e455429f2456c1af1b314c25bb65df28674feebb6ad9d6958aa
+SIZE (xpi/firefox-24.7.0/ar.xpi) = 360849
+SHA256 (xpi/firefox-24.7.0/as.xpi) = 7464b4e668b41769108a45575dd7dac8acbec34c4c39227ee170735af5247425
+SIZE (xpi/firefox-24.7.0/as.xpi) = 378085
+SHA256 (xpi/firefox-24.7.0/ast.xpi) = 553072a75cffda5a4e111b0f98052f9fb36e5d0edfd33140c8e1fad83d4ee2ba
+SIZE (xpi/firefox-24.7.0/ast.xpi) = 292876
+SHA256 (xpi/firefox-24.7.0/be.xpi) = e2097990955dfdbe034ae0f2dc407daad3743084281f9d23ad871002c0b6a1e6
+SIZE (xpi/firefox-24.7.0/be.xpi) = 316955
+SHA256 (xpi/firefox-24.7.0/bg.xpi) = 2d7417869c9dcbed79438e2310a12d039361927b1bb3531e61c5c743aab52dd8
+SIZE (xpi/firefox-24.7.0/bg.xpi) = 373136
+SHA256 (xpi/firefox-24.7.0/bn-BD.xpi) = 988897d6a1828ab757c86d36dcbfc16888d2490e41b8727311af7da2d5e822cc
+SIZE (xpi/firefox-24.7.0/bn-BD.xpi) = 394939
+SHA256 (xpi/firefox-24.7.0/bn-IN.xpi) = 6cfa702e3e034d33e7a7a78ffd62de6906f71867c33ae3716e84da075c266f05
+SIZE (xpi/firefox-24.7.0/bn-IN.xpi) = 427780
+SHA256 (xpi/firefox-24.7.0/br.xpi) = a44c7fc4146c885039e1096d3d70c5ee17fc7d9a543c709e43bf9e2646397bbd
+SIZE (xpi/firefox-24.7.0/br.xpi) = 330509
+SHA256 (xpi/firefox-24.7.0/bs.xpi) = 8307c45a4931031b7a7d6e74e7afda1e707c1823d9408e30b74f35ec23a2f841
+SIZE (xpi/firefox-24.7.0/bs.xpi) = 341620
+SHA256 (xpi/firefox-24.7.0/ca.xpi) = ab2d08cc5cfcca50c2bab93c442ea2cae3f02598eabe10be6e23eae3031b7516
+SIZE (xpi/firefox-24.7.0/ca.xpi) = 341257
+SHA256 (xpi/firefox-24.7.0/cs.xpi) = 8c738335db9e88682744d9241481df1b27edad55d6e89acd436bd87cc71e35f7
+SIZE (xpi/firefox-24.7.0/cs.xpi) = 335946
+SHA256 (xpi/firefox-24.7.0/csb.xpi) = 93fe9ad1e9fb3da3c2104700cecf9c234176b989dc3bb7b43ddfe53fd238ab9c
+SIZE (xpi/firefox-24.7.0/csb.xpi) = 329796
+SHA256 (xpi/firefox-24.7.0/cy.xpi) = 971948bc5bc53c9862ac2e1fa54fe33c3a36f8b822e29eda319b89ad503cd85e
+SIZE (xpi/firefox-24.7.0/cy.xpi) = 330643
+SHA256 (xpi/firefox-24.7.0/da.xpi) = bf57f6740768062ab2689b1f9bf20976fb99f849d88631c9ad588330ad840b41
+SIZE (xpi/firefox-24.7.0/da.xpi) = 326882
+SHA256 (xpi/firefox-24.7.0/de.xpi) = e7eaa5d25ef88d4c67db837eaf30dc25e3b9afaebaeee57a5a6fc4fd46a64603
+SIZE (xpi/firefox-24.7.0/de.xpi) = 323258
+SHA256 (xpi/firefox-24.7.0/el.xpi) = 297a81b011fa708bb9ac26f6a51141b187db4834fe4ac5df58cf788c9aa78189
+SIZE (xpi/firefox-24.7.0/el.xpi) = 365320
+SHA256 (xpi/firefox-24.7.0/en-GB.xpi) = 79054637a96d53119d26a951f78fa6b6164cad67a66037fe0bbc6ab9364678f5
+SIZE (xpi/firefox-24.7.0/en-GB.xpi) = 318297
+SHA256 (xpi/firefox-24.7.0/en-US.xpi) = 2cf6b23099fbd59be55eea29a50f475b6686183824498bdbac0cdfce0d68c4fa
+SIZE (xpi/firefox-24.7.0/en-US.xpi) = 320993
+SHA256 (xpi/firefox-24.7.0/en-ZA.xpi) = d78fc0ea1e53ae99c6f3d40a5ecffa3e784ecd5f882932d014c84a7d67124401
+SIZE (xpi/firefox-24.7.0/en-ZA.xpi) = 319321
+SHA256 (xpi/firefox-24.7.0/eo.xpi) = 758901309f103b7806c9683e529b72fa16bcad6d8faa3c9d98ea505e8a63005a
+SIZE (xpi/firefox-24.7.0/eo.xpi) = 334939
+SHA256 (xpi/firefox-24.7.0/es-AR.xpi) = 2f6767e1d2fde732462614c3e54afa4ee94b91a1e220bb1c0f6eef841e223e1b
+SIZE (xpi/firefox-24.7.0/es-AR.xpi) = 334010
+SHA256 (xpi/firefox-24.7.0/es-CL.xpi) = 74a39f1aac19f76eded85d3e4f41c17e3091350fd19a2c76cc96d7bb8a628073
+SIZE (xpi/firefox-24.7.0/es-CL.xpi) = 287027
+SHA256 (xpi/firefox-24.7.0/es-ES.xpi) = e6372cd3b94f16c8eb7482d586fa2519112fb3ab0c1565d2bfca4f03034817cb
+SIZE (xpi/firefox-24.7.0/es-ES.xpi) = 277860
+SHA256 (xpi/firefox-24.7.0/es-MX.xpi) = 330d4b52f47f771f8f4f6c27afa1e5f275e765f372cbcef88003eaacfa69faeb
+SIZE (xpi/firefox-24.7.0/es-MX.xpi) = 302624
+SHA256 (xpi/firefox-24.7.0/et.xpi) = 3da8caca8f54b05ff3f93dd39d2911ca82185b26b60cc26e9d2bd93ec7846c78
+SIZE (xpi/firefox-24.7.0/et.xpi) = 327697
+SHA256 (xpi/firefox-24.7.0/eu.xpi) = 58c117d0e970aa39774335e3d06371ae1ca081c61bde92026a6b3b3645b9d5c6
+SIZE (xpi/firefox-24.7.0/eu.xpi) = 332422
+SHA256 (xpi/firefox-24.7.0/fa.xpi) = 4dc13f2b95c112ac4f04c0daa818006360f671702ee8f080fb3632a5e29fbb22
+SIZE (xpi/firefox-24.7.0/fa.xpi) = 375633
+SHA256 (xpi/firefox-24.7.0/ff.xpi) = 19524c4259acc043c449617e6b414fd8a1cc0572422e9e37fcd145b5324b6804
+SIZE (xpi/firefox-24.7.0/ff.xpi) = 332815
+SHA256 (xpi/firefox-24.7.0/fi.xpi) = 87bd26680ec30aa7d44b916bf9dc9b045df55a9a4d7161fa6839d645461b211c
+SIZE (xpi/firefox-24.7.0/fi.xpi) = 328892
+SHA256 (xpi/firefox-24.7.0/fr.xpi) = 329ceed1b6afe295a6051b46a056e1770406009d211b642cefa90ea734c35c36
+SIZE (xpi/firefox-24.7.0/fr.xpi) = 339178
+SHA256 (xpi/firefox-24.7.0/fy-NL.xpi) = 1b5715111ecdc84f17c677439f4672b610afb06c5001b4560be7f62c6a9a1ea2
+SIZE (xpi/firefox-24.7.0/fy-NL.xpi) = 336592
+SHA256 (xpi/firefox-24.7.0/ga-IE.xpi) = e121a7600bafa8836318fb6dcf3e10f226e9e8aa833958937fa81efba1ce1eca
+SIZE (xpi/firefox-24.7.0/ga-IE.xpi) = 345295
+SHA256 (xpi/firefox-24.7.0/gd.xpi) = 9bb98908a2b974d8c5d5d3234888710247a88a500fd48aceb3c0a099d7274ee8
+SIZE (xpi/firefox-24.7.0/gd.xpi) = 344811
+SHA256 (xpi/firefox-24.7.0/gl.xpi) = 1d31c1178caa74443e9a1223f04c6f421181408bc93a52f00e937b9a84cdfd36
+SIZE (xpi/firefox-24.7.0/gl.xpi) = 336919
+SHA256 (xpi/firefox-24.7.0/gu-IN.xpi) = 380965d2c04ea879f921765aaede0f9014a51c04997344a05a03ec38ac0e560e
+SIZE (xpi/firefox-24.7.0/gu-IN.xpi) = 359359
+SHA256 (xpi/firefox-24.7.0/he.xpi) = 46cd7dbd12ed166b1766818c741657680a8d681812553fdcecf03e5266a08924
+SIZE (xpi/firefox-24.7.0/he.xpi) = 354631
+SHA256 (xpi/firefox-24.7.0/hi-IN.xpi) = 21c918a4b1e24435d930b49f9d92556bc6b3ea5cf0802d0628b38de9162e1f3b
+SIZE (xpi/firefox-24.7.0/hi-IN.xpi) = 379121
+SHA256 (xpi/firefox-24.7.0/hr.xpi) = 89335d257914298f2f539f0d49b041d9c4e0ab4955f4f44a733d1abb84bf32b5
+SIZE (xpi/firefox-24.7.0/hr.xpi) = 336841
+SHA256 (xpi/firefox-24.7.0/hu.xpi) = 48f2decd7e839ec98f42a9b4c9ee08dce110fb8a04d7c740be48bad802b2b202
+SIZE (xpi/firefox-24.7.0/hu.xpi) = 344103
+SHA256 (xpi/firefox-24.7.0/hy-AM.xpi) = c860749f1667eea3344c3d6df8822f58b21865c99d1a96a461ff30fedaf3bf66
+SIZE (xpi/firefox-24.7.0/hy-AM.xpi) = 385180
+SHA256 (xpi/firefox-24.7.0/id.xpi) = 8f18244f0054cfa90ba67bd2cff8b634888dfe884f5b203d03db37fd93d9ea2a
+SIZE (xpi/firefox-24.7.0/id.xpi) = 319795
+SHA256 (xpi/firefox-24.7.0/is.xpi) = 7cfc3bbd901b2ac6bc0c516b094d50f2136cf9cd66eee3e2072b1d75ff0ff442
+SIZE (xpi/firefox-24.7.0/is.xpi) = 331826
+SHA256 (xpi/firefox-24.7.0/it.xpi) = 2f1adc10bb304063a8ea1ababb8a962be6358a3a446027a531de05dce9493527
+SIZE (xpi/firefox-24.7.0/it.xpi) = 271925
+SHA256 (xpi/firefox-24.7.0/ja.xpi) = 105ca5ce49dadf6f760fe553b0287a4ffd4cc7f51c176277e363d7908652c280
+SIZE (xpi/firefox-24.7.0/ja.xpi) = 370903
+SHA256 (xpi/firefox-24.7.0/kk.xpi) = e7c885c219c9e813d1346e9dd9594130f84e588f219da84f83d10e6721096672
+SIZE (xpi/firefox-24.7.0/kk.xpi) = 377502
+SHA256 (xpi/firefox-24.7.0/km.xpi) = aa5c1beca1a05ee0770bf2de511daba15850245de9bd8fea087868733b0411b6
+SIZE (xpi/firefox-24.7.0/km.xpi) = 400559
+SHA256 (xpi/firefox-24.7.0/kn.xpi) = b9f69eddefe02a990c7dd55bc1b716669d12fd29dee945aac50a6f5e08a76bf0
+SIZE (xpi/firefox-24.7.0/kn.xpi) = 391033
+SHA256 (xpi/firefox-24.7.0/ko.xpi) = 1e438ae1f5d4ad7438591c263429740ac5fd91b3fa4da58327d838555b693d41
+SIZE (xpi/firefox-24.7.0/ko.xpi) = 346164
+SHA256 (xpi/firefox-24.7.0/ku.xpi) = 6984334c62b2fe712d60c96de29cd56a84b170df8b5881760a4164607e704887
+SIZE (xpi/firefox-24.7.0/ku.xpi) = 355631
+SHA256 (xpi/firefox-24.7.0/lg.xpi) = 326cfb288bd8db88cf4f3432d0b545bbf57a72c58060bd6b4a833a07c3fd48a3
+SIZE (xpi/firefox-24.7.0/lg.xpi) = 351111
+SHA256 (xpi/firefox-24.7.0/lij.xpi) = c4a8d33ad3ef73d4cb013f6e48cefac6b648bd65e83cb9ee6f6d5a79eb07dbc5
+SIZE (xpi/firefox-24.7.0/lij.xpi) = 322701
+SHA256 (xpi/firefox-24.7.0/lt.xpi) = 910f02e8cef6286da9a3612412ebf32ec86421f817b86cefb8b8e2e1806759e8
+SIZE (xpi/firefox-24.7.0/lt.xpi) = 352045
+SHA256 (xpi/firefox-24.7.0/lv.xpi) = a3cf06c57646011d052e581fe831ccea079c13f72fb7ead974e6bb2724ffcf27
+SIZE (xpi/firefox-24.7.0/lv.xpi) = 328664
+SHA256 (xpi/firefox-24.7.0/mai.xpi) = b42de25c99c9605683ee272ca3be95b2fcbbe61a304af68b10d195adb3489e0e
+SIZE (xpi/firefox-24.7.0/mai.xpi) = 379767
+SHA256 (xpi/firefox-24.7.0/mk.xpi) = 23653b29139bbd55aed4d151b7c0eba825ea7576bf1bd72131a5076523313f27
+SIZE (xpi/firefox-24.7.0/mk.xpi) = 376316
+SHA256 (xpi/firefox-24.7.0/ml.xpi) = 091a666d6db3f5f889fa8c4201e723f5c10b504c2ddbebb5df01c2badf545371
+SIZE (xpi/firefox-24.7.0/ml.xpi) = 399677
+SHA256 (xpi/firefox-24.7.0/mr.xpi) = f6f9c848f9f268a60385d30b858d01d9ac2fcd700584fcf9ded503321cbb7694
+SIZE (xpi/firefox-24.7.0/mr.xpi) = 380231
+SHA256 (xpi/firefox-24.7.0/nb-NO.xpi) = ff63351bbb5a485d24f8e3af28eddd54aafb34e41d7346f1850ef2032016ecc9
+SIZE (xpi/firefox-24.7.0/nb-NO.xpi) = 330966
+SHA256 (xpi/firefox-24.7.0/nl.xpi) = 7f5f36b378130f29fb43371a5dba05966e712b3e2556848ff3871ece75478b53
+SIZE (xpi/firefox-24.7.0/nl.xpi) = 331404
+SHA256 (xpi/firefox-24.7.0/nn-NO.xpi) = 58e1585021e07e0b7cabdce6bb2389c40c344cecf4e2753355b4d7d0454e963a
+SIZE (xpi/firefox-24.7.0/nn-NO.xpi) = 333906
+SHA256 (xpi/firefox-24.7.0/nso.xpi) = b3d168a9c73598d28bb58c63698ce3f8177cbf6c1b25f50ef0b596613b012209
+SIZE (xpi/firefox-24.7.0/nso.xpi) = 336298
+SHA256 (xpi/firefox-24.7.0/or.xpi) = 63cb6830d2c6ebfc19d8349d642700622744cc6ca6abb4f819c240625d505fde
+SIZE (xpi/firefox-24.7.0/or.xpi) = 364592
+SHA256 (xpi/firefox-24.7.0/pa-IN.xpi) = d51831d82776986a1ef5736e515a209858272dd57fb790844996626930ab2146
+SIZE (xpi/firefox-24.7.0/pa-IN.xpi) = 365653
+SHA256 (xpi/firefox-24.7.0/pl.xpi) = 09fae70f04ea97739e6c471fc7fe5e6fa2296200681464eff0ebbe051627c878
+SIZE (xpi/firefox-24.7.0/pl.xpi) = 341995
+SHA256 (xpi/firefox-24.7.0/pt-BR.xpi) = 948ea89ed6ef71cfa32b382c2d882f7b3bd032db46180c029a3e02476a0f5e47
+SIZE (xpi/firefox-24.7.0/pt-BR.xpi) = 334605
+SHA256 (xpi/firefox-24.7.0/pt-PT.xpi) = 98d01041af83fe5e64004811408a8f47a2f0ed70804fa32f2a99ed9f9c0f894c
+SIZE (xpi/firefox-24.7.0/pt-PT.xpi) = 332739
+SHA256 (xpi/firefox-24.7.0/rm.xpi) = 3ffbcd851bb0e946e77c6ff10d89ab66d6889ed05d3b6325edab55e94b840f0a
+SIZE (xpi/firefox-24.7.0/rm.xpi) = 339698
+SHA256 (xpi/firefox-24.7.0/ro.xpi) = a69f7f6cf186c46cc9656dd262f78845c36b5ae168c04c31db8b205852feecf3
+SIZE (xpi/firefox-24.7.0/ro.xpi) = 362236
+SHA256 (xpi/firefox-24.7.0/ru.xpi) = dbc4b101b541488447e1089fb35ed9efeb663405a5f38b082c0e878ab805e7da
+SIZE (xpi/firefox-24.7.0/ru.xpi) = 322761
+SHA256 (xpi/firefox-24.7.0/si.xpi) = 4dc33ca1990aa77df04c1ba793900e021750941434f7ea4d6472777dbf3b1d8d
+SIZE (xpi/firefox-24.7.0/si.xpi) = 372982
+SHA256 (xpi/firefox-24.7.0/sk.xpi) = 9a810b4270053253aa4e7bd3431b583432344ffe98a4cdd9ef651848844ec5b2
+SIZE (xpi/firefox-24.7.0/sk.xpi) = 347879
+SHA256 (xpi/firefox-24.7.0/sl.xpi) = ec6d1c844e912624be9b30bb6542e3c98126846f8df2ba11951693ba2949fd02
+SIZE (xpi/firefox-24.7.0/sl.xpi) = 331572
+SHA256 (xpi/firefox-24.7.0/son.xpi) = 6e0b0df77fb982dbc8c06bc853f113b088b947213035d84b59b3e73f5b24c229
+SIZE (xpi/firefox-24.7.0/son.xpi) = 328903
+SHA256 (xpi/firefox-24.7.0/sq.xpi) = 6b6049dd304e533a083b676f64e73b0b6feaf9e03c5a8fb9d33a8b8d4543c96a
+SIZE (xpi/firefox-24.7.0/sq.xpi) = 340676
+SHA256 (xpi/firefox-24.7.0/sr.xpi) = 089c41d55dccf3dcadea47322b8f3ddc80af71e05ec7013b16f1f27e82b82da9
+SIZE (xpi/firefox-24.7.0/sr.xpi) = 385108
+SHA256 (xpi/firefox-24.7.0/sv-SE.xpi) = f65abb15e3f93ebd47b5c7414dd159a86f01e830a9dc3b38c3440707cd721d5d
+SIZE (xpi/firefox-24.7.0/sv-SE.xpi) = 333506
+SHA256 (xpi/firefox-24.7.0/ta-LK.xpi) = 3d370a12633a01e8553a0a8cd0dc1ed4d44bee14356e0acb5786abbbd293ace3
+SIZE (xpi/firefox-24.7.0/ta-LK.xpi) = 384155
+SHA256 (xpi/firefox-24.7.0/ta.xpi) = 677c740e09f735626cb222dd44c8c84b6dc509161c3b4920a0940429d256fb05
+SIZE (xpi/firefox-24.7.0/ta.xpi) = 381423
+SHA256 (xpi/firefox-24.7.0/te.xpi) = 80b4204d77cdede04b0cbd08355991bb0fa4a2fd6602f3c8dd9fbe906292fc17
+SIZE (xpi/firefox-24.7.0/te.xpi) = 394563
+SHA256 (xpi/firefox-24.7.0/th.xpi) = abc1ab05073ee02249e686d94e40083bdc85764ccd2de69d36fa198bea29c704
+SIZE (xpi/firefox-24.7.0/th.xpi) = 379822
+SHA256 (xpi/firefox-24.7.0/tr.xpi) = f529f80def331ce2cdd12fd01cbc0c4a969fc1724a72bbddd263e4a33f5ed0bd
+SIZE (xpi/firefox-24.7.0/tr.xpi) = 340387
+SHA256 (xpi/firefox-24.7.0/uk.xpi) = 4db4261bbb2a8df7fc05a902b7663fb9d1fdb5b14af086f6ea5962c218f59c91
+SIZE (xpi/firefox-24.7.0/uk.xpi) = 365699
+SHA256 (xpi/firefox-24.7.0/vi.xpi) = f933ef30b842a623da7fb0e81af06035f521a771cff15f9e511d7379fdb3601b
+SIZE (xpi/firefox-24.7.0/vi.xpi) = 358430
+SHA256 (xpi/firefox-24.7.0/zh-CN.xpi) = 9c604f48c6cedae58298da89a518fc19d404d517a02df7c77b1f2072ecd9bdfb
+SIZE (xpi/firefox-24.7.0/zh-CN.xpi) = 358182
+SHA256 (xpi/firefox-24.7.0/zh-TW.xpi) = 4630f77bfd34565455b62be1a81f3a415628ae815bd48dbdb6832df3af9f10f2
+SIZE (xpi/firefox-24.7.0/zh-TW.xpi) = 351833
+SHA256 (xpi/firefox-24.7.0/zu.xpi) = bb7f07f2160185c25c9a336eaa81cb426813b24addfe5ef35331558fb743470f
+SIZE (xpi/firefox-24.7.0/zu.xpi) = 340394
diff --git a/www/firefox-esr/Makefile b/www/firefox-esr/Makefile
index 74e3e8a3e01f..a920ef61b548 100644
--- a/www/firefox-esr/Makefile
+++ b/www/firefox-esr/Makefile
@@ -2,8 +2,7 @@
# $FreeBSD$
PORTNAME= firefox
-DISTVERSION= 24.6.0
-PORTREVISION= 2
+DISTVERSION= 24.7.0
PORTEPOCH= 1
CATEGORIES= www ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}esr/source
@@ -32,6 +31,7 @@ USE_AUTOTOOLS= autoconf213:env
USE_PYTHON_BUILD=2
OBJDIR_BUILD= # in-tree build broken after bug 789837
USE_GECKO= gecko
+CPE_PRODUCT= ${PORTNAME}_esr
CONFLICTS= firefox-2[0-35-9].* firefox-1[1-689].*
MOZ_PKGCONFIG_FILES= # empty
USE_MOZILLA= # empty
@@ -59,7 +59,7 @@ MOZ_OPTIONS= --program-transform-name='s/firefox/${MOZILLA}/' \
WRKSRC:= ${WRKDIR}/mozilla-esr24
.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
post-extract:
diff --git a/www/firefox-esr/distinfo b/www/firefox-esr/distinfo
index 8137a3cde37b..ff44c811e43b 100644
--- a/www/firefox-esr/distinfo
+++ b/www/firefox-esr/distinfo
@@ -1,2 +1,2 @@
-SHA256 (firefox-24.6.0esr.source.tar.bz2) = 02ee0424ddefd912768a3ae700a4581053ef68f9dea46c34e43e833c119289e4
-SIZE (firefox-24.6.0esr.source.tar.bz2) = 119465935
+SHA256 (firefox-24.7.0esr.source.tar.bz2) = 079b6021f153ba11658cefe41d467e25357cd78e84d3d66c6abcfecb5a00121f
+SIZE (firefox-24.7.0esr.source.tar.bz2) = 119967111
diff --git a/www/firefox-esr/files/patch-bug1026499 b/www/firefox-esr/files/patch-bug1026499
new file mode 100644
index 000000000000..e446f22c64cf
--- /dev/null
+++ b/www/firefox-esr/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-esr/files/patch-bug1041795 b/www/firefox-esr/files/patch-bug1041795
new file mode 100644
index 000000000000..ba567f83dcac
--- /dev/null
+++ b/www/firefox-esr/files/patch-bug1041795
@@ -0,0 +1,70 @@
+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/config/rules.mk js/src/config/rules.mk
+index 4d67eda..783942f 100644
+--- js/src/config/rules.mk
++++ js/src/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-esr/files/patch-bug702179 b/www/firefox-esr/files/patch-bug702179
new file mode 100644
index 000000000000..5754b607ad57
--- /dev/null
+++ b/www/firefox-esr/files/patch-bug702179
@@ -0,0 +1,35 @@
+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
+@@ -35,7 +35,6 @@ ifdef JS_SHARED_LIBRARY
+ FORCE_SHARED_LIB = 1
+ endif
+ FORCE_STATIC_LIB = 1
+-DIST_INSTALL = 1
+
+ ###############################################
+ # BEGIN include sources for low-level code shared with mfbt
diff --git a/www/firefox-esr/files/patch-bug779713 b/www/firefox-esr/files/patch-bug779713
new file mode 100644
index 000000000000..1398d36f6a15
--- /dev/null
+++ b/www/firefox-esr/files/patch-bug779713
@@ -0,0 +1,72 @@
+diff --git mfbt/Util.h mfbt/Util.h
+index e0843ca..353ec36 100644
+--- mfbt/Util.h
++++ mfbt/Util.h
+@@ -19,6 +19,13 @@
+
+ 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, figure out how many
+ * bytes of alignment a given type needs.
+@@ -37,6 +44,7 @@ class AlignmentFinder
+ };
+
+ #define MOZ_ALIGNOF(T) mozilla::AlignmentFinder<T>::alignment
++#endif
+
+ /*
+ * Declare the MOZ_ALIGNED_DECL macro for declaring aligned types.
+@@ -48,7 +56,10 @@ class AlignmentFinder
+ * 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
+@@ -67,6 +67,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
+@@ -85,6 +88,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
+@@ -102,6 +108,9 @@
+ # define MOZ_HAVE_NEVER_INLINE __attribute__((noinline))
+ # define MOZ_HAVE_NORETURN __attribute__((noreturn))
+ #elif defined(_MSC_VER)
++# if _MSC_VER >= 1800
++# define MOZ_HAVE_CXX11_ALIGNAS
++# endif
+ # if _MSC_VER >= 1700
+ # define MOZ_HAVE_CXX11_FINAL final
+ # else
diff --git a/www/firefox-esr/files/patch-bug938730 b/www/firefox-esr/files/patch-bug938730
new file mode 100644
index 000000000000..ac444b228ae6
--- /dev/null
+++ b/www/firefox-esr/files/patch-bug938730
@@ -0,0 +1,35 @@
+commit 1961aa2
+Author: Kai Engert <kaie@kuix.de>
+Date: Wed Nov 20 20:25:12 2013 +0100
+
+ Bug 938730 - avoid mix of memory allocators (crashes) when using system sqlite, r=asuth
+---
+ storage/src/Makefile.in | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git storage/src/Makefile.in storage/src/Makefile.in
+index 9418640..c7391ed 100644
+--- storage/src/Makefile.in
++++ storage/src/Makefile.in
+@@ -6,14 +6,21 @@
+ # Don't use the jemalloc allocator on Android, because we can't guarantee
+ # that Gecko will configure sqlite before it is first used (bug 730495).
+ #
++# Don't use the jemalloc allocator when using system sqlite. Linked in libraries
++# (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).
++#
+ # 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.
+ ifdef MOZ_MEMORY
++ifndef MOZ_NATIVE_SQLITE
+ ifneq ($(OS_TARGET), Android)
+ DEFINES += -DMOZ_STORAGE_MEMORY
+ endif
+ endif
++endif
+
+ # For nsDependentJSString
+ LOCAL_INCLUDES = \
diff --git a/www/firefox-esr/files/patch-ipc-chromium-Makefile.in b/www/firefox-esr/files/patch-ipc-chromium-Makefile.in
deleted file mode 100644
index 0e20edf2ee37..000000000000
--- a/www/firefox-esr/files/patch-ipc-chromium-Makefile.in
+++ /dev/null
@@ -1,13 +0,0 @@
---- ipc/chromium/Makefile.in~
-+++ ipc/chromium/Makefile.in
-@@ -55,9 +60,7 @@ vpath %.c \
- $(srcdir)/src/third_party/libevent \
- $(NULL)
- else # } else {
--# message_pump_libevent.cc includes third_party/libevent/event.h,
--# which we put in $(DIST), see export rule below
--LOCAL_INCLUDES += -I$(DIST)
-+LOCAL_INCLUDES += $(filter %/compat, $(MOZ_LIBEVENT_CFLAGS))
- endif # }
-
- vpath %.cc \
diff --git a/www/firefox-esr/files/patch-ipc-chromium-src-base-message_pump_libevent.cc b/www/firefox-esr/files/patch-ipc-chromium-src-base-message_pump_libevent.cc
deleted file mode 100644
index 02b6a5e90eca..000000000000
--- a/www/firefox-esr/files/patch-ipc-chromium-src-base-message_pump_libevent.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- ipc/chromium/src/base/message_pump_libevent.cc~
-+++ ipc/chromium/src/base/message_pump_libevent.cc
-@@ -16,7 +16,7 @@
- #include "base/scoped_ptr.h"
- #include "base/time.h"
- #include "nsDependentSubstring.h"
--#include "third_party/libevent/event.h"
-+#include "event.h"
-
- // Lifecycle of struct event
- // Libevent uses two main data structures:
diff --git a/www/firefox-esr/files/patch-z-bug1026828 b/www/firefox-esr/files/patch-z-bug1026828
new file mode 100644
index 000000000000..5d2020cd091f
--- /dev/null
+++ b/www/firefox-esr/files/patch-z-bug1026828
@@ -0,0 +1,13 @@
+diff --git storage/src/Makefile.in storage/src/Makefile.in
+index 4cd2551..5c40536 100644
+--- storage/src/Makefile.in
++++ storage/src/Makefile.in
+@@ -31,7 +31,7 @@ endif
+ # MOZ_STORAGE_MEMORY on Windows, you will also need to change the "ifdef
+ # MOZ_MEMORY" options in db/sqlite3/src/Makefile.in.
+ ifdef MOZ_MEMORY
+-ifndef MOZ_NATIVE_SQLITE
++ifneq (,$(not $(MOZ_NATIVE_SQLITE))$(MOZ_NATIVE_JEMALLOC))
+ ifneq ($(OS_TARGET), Android)
+ DEFINES += -DMOZ_STORAGE_MEMORY
+ endif
diff --git a/www/firefox-i18n/Makefile b/www/firefox-i18n/Makefile
index 99f14efe8d43..bae05930cd7a 100644
--- a/www/firefox-i18n/Makefile
+++ b/www/firefox-i18n/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= firefox-i18n
-PORTVERSION= 30.0
+PORTVERSION= 31.0
CATEGORIES= www
MASTER_SITES= MOZILLA/${PORTNAME:S|-i18n||}/releases/${PORTVERSION}/linux-i686/xpi
PKGNAMEPREFIX=
@@ -14,7 +14,7 @@ COMMENT= Localized interface for Firefox
EXTRACT_DEPENDS= zip:${PORTSDIR}/archivers/zip
-USES= zip:infozip gecko:firefox,30
+USES= zip:infozip gecko:firefox,31
USE_XPI= firefox linux-firefox
NO_ARCH= yes
diff --git a/www/firefox-i18n/Makefile.lang b/www/firefox-i18n/Makefile.lang
index 7a3986b4cd44..c8852f07af38 100644
--- a/www/firefox-i18n/Makefile.lang
+++ b/www/firefox-i18n/Makefile.lang
@@ -1,13 +1,13 @@
# Created by: Koji Yokota <yokota@res.otaru-uc.ac.jp>
# $FreeBSD$
-FIREFOX_I18N_ALL_= ach af ar as ast be bg bn-BD bn-IN br bs ca cs csb \
- cy da de el en-GB en-US en-ZA eo es-AR es-CL es-ES \
- es-MX et eu fa ff fi fr fy-NL ga-IE gd gl gu-IN he \
- hi-IN hr hu hy-AM id is it ja kk km kn ko ku lij lt \
- lv mai mk ml mr nb-NO nl nn-NO or pa-IN pl pt-BR \
- pt-PT rm ro ru si sk sl son sq sr sv-SE ta te th \
- tr uk vi zh-CN zh-TW zu
+FIREFOX_I18N_ALL_= ach af an ar as ast be bg bn-BD bn-IN br bs ca cs \
+ csb cy da de el en-GB en-US en-ZA eo es-AR es-CL \
+ es-ES es-MX et eu fa ff fi fr fy-NL ga-IE gd gl \
+ gu-IN he hi-IN hr hsb hu hy-AM id is it ja kk km \
+ kn ko ku lij lt lv mai mk ml mr ms nb-NO nl nn-NO \
+ or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq \
+ sr sv-SE ta te th tr uk vi xh zh-CN zh-TW zu
.if defined(FIREFOX_I18N_ALL) || defined(PACKAGE_BUILDING) || target(package)
FIREFOX_I18N= ${FIREFOX_I18N_ALL_}
@@ -18,6 +18,9 @@ FIREFOX_I18N+= ach
.if ${PORT_OPTIONS:MLANG_AF}
FIREFOX_I18N+= af
.endif
+.if ${PORT_OPTIONS:MLANG_AN}
+FIREFOX_I18N+= an
+.endif
.if ${PORT_OPTIONS:MLANG_AR}
FIREFOX_I18N+= ar
.endif
@@ -132,6 +135,9 @@ FIREFOX_I18N+= hi-IN
.if ${PORT_OPTIONS:MLANG_HR}
FIREFOX_I18N+= hr
.endif
+.if ${PORT_OPTIONS:MLANG_HSB}
+FIREFOX_I18N+= hsb
+.endif
.if ${PORT_OPTIONS:MLANG_HU}
FIREFOX_I18N+= hu
.endif
@@ -186,6 +192,9 @@ FIREFOX_I18N+= ml
.if ${PORT_OPTIONS:MLANG_MR}
FIREFOX_I18N+= mr
.endif
+.if ${PORT_OPTIONS:MLANG_MS}
+FIREFOX_I18N+= ms
+.endif
.if ${PORT_OPTIONS:MLANG_NB}
FIREFOX_I18N+= nb-NO
.endif
@@ -240,6 +249,9 @@ FIREFOX_I18N+= sr
.if ${PORT_OPTIONS:MLANG_SV}
FIREFOX_I18N+= sv-SE
.endif
+.if ${PORT_OPTIONS:MLANG_SW}
+FIREFOX_I18N+= sw
+.endif
.if ${PORT_OPTIONS:MLANG_TA}
FIREFOX_I18N+= ta
.endif
@@ -258,6 +270,9 @@ FIREFOX_I18N+= uk
.if ${PORT_OPTIONS:MLANG_VI}
FIREFOX_I18N+= vi
.endif
+.if ${PORT_OPTIONS:MLANG_XH}
+FIREFOX_I18N+= xh
+.endif
.if ${PORT_OPTIONS:MLANG_CN}
FIREFOX_I18N+= zh-CN
.endif
diff --git a/www/firefox-i18n/Makefile.option b/www/firefox-i18n/Makefile.option
index a485a35997f4..851b8b322a42 100644
--- a/www/firefox-i18n/Makefile.option
+++ b/www/firefox-i18n/Makefile.option
@@ -3,6 +3,7 @@
OPTIONS_DEFINE= LANG_ACH \
LANG_AF \
+ LANG_AN \
LANG_SQ \
LANG_AR \
LANG_AS \
@@ -38,6 +39,7 @@ OPTIONS_DEFINE= LANG_ACH \
LANG_HE \
LANG_HI \
LANG_HR \
+ LANG_HSB \
LANG_HU \
LANG_IS \
LANG_ID \
@@ -56,6 +58,7 @@ OPTIONS_DEFINE= LANG_ACH \
LANG_ML \
LANG_MR \
LANG_MN \
+ LANG_MS \
LANG_NB \
LANG_NN \
LANG_OR \
@@ -85,6 +88,7 @@ OPTIONS_DEFINE= LANG_ACH \
LANG_UK \
LANG_VI \
LANG_CY \
+ LANG_XH \
LANG_ZA \
LANG_ZU
@@ -93,8 +97,13 @@ OPTIONS_DEFAULT=LANG_AR LANG_BN LANG_BR LANG_CN LANG_ET LANG_DE LANG_FR \
LANG_MN LANG_PBR LANG_PA LANG_RU LANG_ES LANG_SON LANG_TE
LANG_ACH_DESC?= Acholi language support
+LANG_AN_DESC?= Aragonese language support
LANG_AS_DESC?= Assamese language support
LANG_CSB_DESC?= Kashubian language support
-LANG_FF_DESC?= Pulaar Fulfulde language support
+LANG_FF_DESC?= Fulah language support
+LANG_HSB_DESC?= Upper Sorbian language support
LANG_KM_DESC?= Khmer language support
LANG_LIJ_DESC?= Ligurian (Genoa) language support
+LANG_MS_DESC?= Malay language support
+LANG_SW_DESC?= Swahili language support
+LANG_XH_DESC?= Xhosa language support
diff --git a/www/firefox-i18n/distinfo b/www/firefox-i18n/distinfo
index 9497c4a6374e..332d84b18c2e 100644
--- a/www/firefox-i18n/distinfo
+++ b/www/firefox-i18n/distinfo
@@ -1,170 +1,178 @@
-SHA256 (xpi/firefox-i18n-30.0/ach.xpi) = f5053187ef0c83bf72bd5c71ab09a7ddc1e63baefb416ac1d6b68ba2314ac701
-SIZE (xpi/firefox-i18n-30.0/ach.xpi) = 375205
-SHA256 (xpi/firefox-i18n-30.0/af.xpi) = 1f39dc94db67d1b0f936a21237d98c25fd452a69636e53c6d7ece6c844307c39
-SIZE (xpi/firefox-i18n-30.0/af.xpi) = 369085
-SHA256 (xpi/firefox-i18n-30.0/ar.xpi) = ec7beaee554067af17a3a62220b8f038f75b618a186d2eb73ec948056765c428
-SIZE (xpi/firefox-i18n-30.0/ar.xpi) = 397913
-SHA256 (xpi/firefox-i18n-30.0/as.xpi) = cf9716f7b62bd6f34bb453420dec17a039199d11197c1920553ab299c496d654
-SIZE (xpi/firefox-i18n-30.0/as.xpi) = 416813
-SHA256 (xpi/firefox-i18n-30.0/ast.xpi) = fd83fe909ecb39803f0f7b43d159f34be70d2975584b4246d3625da72f8de09a
-SIZE (xpi/firefox-i18n-30.0/ast.xpi) = 321937
-SHA256 (xpi/firefox-i18n-30.0/be.xpi) = 325f8bddf7131f3e7a4a2daa8c632848ade0557bdfe8f8591898c9266ea6349f
-SIZE (xpi/firefox-i18n-30.0/be.xpi) = 341619
-SHA256 (xpi/firefox-i18n-30.0/bg.xpi) = b0603d804c90164d3059b86036e67d3f12491c5b698e51ac03f57c909effc2e6
-SIZE (xpi/firefox-i18n-30.0/bg.xpi) = 406716
-SHA256 (xpi/firefox-i18n-30.0/bn-BD.xpi) = 3e044ca099473c577e8849605d3341ab51bafc939e79713da7cb85193b29be77
-SIZE (xpi/firefox-i18n-30.0/bn-BD.xpi) = 428542
-SHA256 (xpi/firefox-i18n-30.0/bn-IN.xpi) = 9dcb9cff07bf636bedf835bb373fa4bc35260824d9d505c4a09fa1f0a1bf9ce4
-SIZE (xpi/firefox-i18n-30.0/bn-IN.xpi) = 426490
-SHA256 (xpi/firefox-i18n-30.0/br.xpi) = 43c85f1d81bc421104577519cd5bee9aaa3893627fd4540cbb24b2e2275f1a6b
-SIZE (xpi/firefox-i18n-30.0/br.xpi) = 365142
-SHA256 (xpi/firefox-i18n-30.0/bs.xpi) = c1efd1ae60586b16e50f61d20ffaf41e836c62e7371e3f2bda8e8e45f39bcd31
-SIZE (xpi/firefox-i18n-30.0/bs.xpi) = 373273
-SHA256 (xpi/firefox-i18n-30.0/ca.xpi) = 5f20854d7168d20f5b595ff415ca50417a2ad5e39f7bbe0f6f67a9eaede2aaf6
-SIZE (xpi/firefox-i18n-30.0/ca.xpi) = 371485
-SHA256 (xpi/firefox-i18n-30.0/cs.xpi) = 3197bcc9e38f2b5720a0ae1aa9ed61ebcde6518e675e0ed98c8d3d0feee4d512
-SIZE (xpi/firefox-i18n-30.0/cs.xpi) = 366052
-SHA256 (xpi/firefox-i18n-30.0/csb.xpi) = 989e01fbdf3516295429d3da58331078c9e41ba79ae31e24f34d9c828fbd9944
-SIZE (xpi/firefox-i18n-30.0/csb.xpi) = 358268
-SHA256 (xpi/firefox-i18n-30.0/cy.xpi) = b2327cac42ebd5880653f7ed02835b3a0b85441a0d514d72518231acc32e5dea
-SIZE (xpi/firefox-i18n-30.0/cy.xpi) = 366034
-SHA256 (xpi/firefox-i18n-30.0/da.xpi) = 2a0b1447de518bd3c714dd0fa023ae0f3189d98b6035eeb8e2f87f1a37bf4c1f
-SIZE (xpi/firefox-i18n-30.0/da.xpi) = 356771
-SHA256 (xpi/firefox-i18n-30.0/de.xpi) = fefa0eee68d3cae832e9afee0a64271b7dd621c0d14479eec472c28a8bb55f25
-SIZE (xpi/firefox-i18n-30.0/de.xpi) = 366021
-SHA256 (xpi/firefox-i18n-30.0/el.xpi) = b70382f47ff0e0999d4b9ff13e13eabee4ac6771ce1d3560b7fbfd1e6452b76b
-SIZE (xpi/firefox-i18n-30.0/el.xpi) = 398962
-SHA256 (xpi/firefox-i18n-30.0/en-GB.xpi) = 4fae63b6e5236ef8f21e411165aa1919bb285fe0bb3905d7daf00c6a3cccd480
-SIZE (xpi/firefox-i18n-30.0/en-GB.xpi) = 353587
-SHA256 (xpi/firefox-i18n-30.0/en-US.xpi) = 73879a12023d35214a85cff0d722652f669dba1e62631e815e7b850dfb403e69
-SIZE (xpi/firefox-i18n-30.0/en-US.xpi) = 353451
-SHA256 (xpi/firefox-i18n-30.0/en-ZA.xpi) = 9750f4362f8304c5665153d008ae3b158249a7cba5bd3a79cef7e822959c4bef
-SIZE (xpi/firefox-i18n-30.0/en-ZA.xpi) = 345015
-SHA256 (xpi/firefox-i18n-30.0/eo.xpi) = 0f77949f980f8037484f5a3ce2669d732f036772ccecfcb16ced1decc53a9f1b
-SIZE (xpi/firefox-i18n-30.0/eo.xpi) = 370141
-SHA256 (xpi/firefox-i18n-30.0/es-AR.xpi) = 263d318d53cd9e64c0a3f4122fa399f4fcbf528c7151dce352f4084e1784f2cd
-SIZE (xpi/firefox-i18n-30.0/es-AR.xpi) = 368587
-SHA256 (xpi/firefox-i18n-30.0/es-CL.xpi) = 7bfbb5aa80e61082736383b01190d97c3b066f97c79cef479c97322695267f7f
-SIZE (xpi/firefox-i18n-30.0/es-CL.xpi) = 315322
-SHA256 (xpi/firefox-i18n-30.0/es-ES.xpi) = a42b61243fc1596f5352daf6bf27ecf27c0eb70d960bfcfb401c7dc9b22b0bad
-SIZE (xpi/firefox-i18n-30.0/es-ES.xpi) = 306415
-SHA256 (xpi/firefox-i18n-30.0/es-MX.xpi) = 077a9c0741e8c6dfe560c11503700713fa46c31f26436d7ab482ccda93a9b6bb
-SIZE (xpi/firefox-i18n-30.0/es-MX.xpi) = 373549
-SHA256 (xpi/firefox-i18n-30.0/et.xpi) = b3405694ba783f2b4724ee77438d43c5bb9fa9c99b062179da83359b75def75e
-SIZE (xpi/firefox-i18n-30.0/et.xpi) = 353707
-SHA256 (xpi/firefox-i18n-30.0/eu.xpi) = 470e1e96f57a1d34b657446a226305729ac9e4cfee102eba603c252c9a176596
-SIZE (xpi/firefox-i18n-30.0/eu.xpi) = 369555
-SHA256 (xpi/firefox-i18n-30.0/fa.xpi) = 72aee9607616834fb9bf7fa3dda0fd468d2bdcc973cdfa6ba49debe05a35f90c
-SIZE (xpi/firefox-i18n-30.0/fa.xpi) = 410903
-SHA256 (xpi/firefox-i18n-30.0/ff.xpi) = b261a6ddcd9b077df4e89603ffcb6fe6568c5a2125fc6a8750bbc61994d59a2d
-SIZE (xpi/firefox-i18n-30.0/ff.xpi) = 370692
-SHA256 (xpi/firefox-i18n-30.0/fi.xpi) = e99f6bce22b9e7ce27233d37d1d5c5e465d5737118c2cacfee132aae88de1891
-SIZE (xpi/firefox-i18n-30.0/fi.xpi) = 364259
-SHA256 (xpi/firefox-i18n-30.0/fr.xpi) = cde387fb6d2ac70793a387b79b1193f1578d4e09b7e1b551edcda0176c853981
-SIZE (xpi/firefox-i18n-30.0/fr.xpi) = 377371
-SHA256 (xpi/firefox-i18n-30.0/fy-NL.xpi) = 298865967f4c80a3521c01a4e22e9c7cdda1edbb85755f4e9fc69fcfe73e8e8a
-SIZE (xpi/firefox-i18n-30.0/fy-NL.xpi) = 373136
-SHA256 (xpi/firefox-i18n-30.0/ga-IE.xpi) = 8351b8f50482fc719081dca1cd848aaed271c15922b8e2939ef335c4eb62ffb7
-SIZE (xpi/firefox-i18n-30.0/ga-IE.xpi) = 381256
-SHA256 (xpi/firefox-i18n-30.0/gd.xpi) = 24efa269698b83eeab9ed138ff0c239fd53e0c8c89e07864ce0c1017e586b947
-SIZE (xpi/firefox-i18n-30.0/gd.xpi) = 378207
-SHA256 (xpi/firefox-i18n-30.0/gl.xpi) = 860b3cbe4fa38ed7607ec6416286a1210d27a63ef48d3c3dcd25d45e0fda9569
-SIZE (xpi/firefox-i18n-30.0/gl.xpi) = 365569
-SHA256 (xpi/firefox-i18n-30.0/gu-IN.xpi) = 3d5e6dc2b975001df42725dabbdb513999438a75427284dd9b3235ea6b46d3ae
-SIZE (xpi/firefox-i18n-30.0/gu-IN.xpi) = 394097
-SHA256 (xpi/firefox-i18n-30.0/he.xpi) = 43ad9bb68e7f2f9c7934ec411725e5b9883f8ebabad5f7e716b6e39b420e3a45
-SIZE (xpi/firefox-i18n-30.0/he.xpi) = 387621
-SHA256 (xpi/firefox-i18n-30.0/hi-IN.xpi) = 053751b323b6faeef472833b24494ddbe018bd9cd917b19e096184972bb4d19a
-SIZE (xpi/firefox-i18n-30.0/hi-IN.xpi) = 412281
-SHA256 (xpi/firefox-i18n-30.0/hr.xpi) = 9ffdb635b3ed103ab3f434d8472f4d66fabc29326d8dd53431b854e6c7a92ad6
-SIZE (xpi/firefox-i18n-30.0/hr.xpi) = 377103
-SHA256 (xpi/firefox-i18n-30.0/hu.xpi) = 4eac70ba043bcc51a23beb322ef1cc55267b8d6eec339bc2479c38238c4cc706
-SIZE (xpi/firefox-i18n-30.0/hu.xpi) = 373672
-SHA256 (xpi/firefox-i18n-30.0/hy-AM.xpi) = 1584743623016ef2c922b3d1d861880e1c2ba8864836089ed173d37bb0f59a78
-SIZE (xpi/firefox-i18n-30.0/hy-AM.xpi) = 420567
-SHA256 (xpi/firefox-i18n-30.0/id.xpi) = 6b9331cab4a2ebc9b23d44ba02c5f8262cec1733e22f80eaba2b194dffa34521
-SIZE (xpi/firefox-i18n-30.0/id.xpi) = 353458
-SHA256 (xpi/firefox-i18n-30.0/is.xpi) = 58112df3ea4cc57b99d002f19ac1bf414b17b6c1d1941c7b5806f0f524fc8b9f
-SIZE (xpi/firefox-i18n-30.0/is.xpi) = 365850
-SHA256 (xpi/firefox-i18n-30.0/it.xpi) = d84b4cf65fbd1a23c2683346887da15334f48c64381998aa7d5422e303b0656e
-SIZE (xpi/firefox-i18n-30.0/it.xpi) = 304978
-SHA256 (xpi/firefox-i18n-30.0/ja.xpi) = 94e0b3d7535ca00cb7229cd7c20fd0760b51bec25f0ccd93e3a1797a8ae94c7a
-SIZE (xpi/firefox-i18n-30.0/ja.xpi) = 405379
-SHA256 (xpi/firefox-i18n-30.0/kk.xpi) = 87a73e136e2ebfebc5cbd92d7b20e16a065eef04df9b6050afd29de83e1a6785
-SIZE (xpi/firefox-i18n-30.0/kk.xpi) = 409876
-SHA256 (xpi/firefox-i18n-30.0/km.xpi) = 0979630969fa1c4c40ef5ea4e2a17df39e452cade2d0ccdda10d55b756ec5c70
-SIZE (xpi/firefox-i18n-30.0/km.xpi) = 440407
-SHA256 (xpi/firefox-i18n-30.0/kn.xpi) = feace52a5744fd754b807c84eac24319224781de30ccd295ba8442fb724620de
-SIZE (xpi/firefox-i18n-30.0/kn.xpi) = 423620
-SHA256 (xpi/firefox-i18n-30.0/ko.xpi) = 2e49e1e6cffb892ea14089a6b49bdfa21de49fc60eb4c13cfe13cf613792d4b4
-SIZE (xpi/firefox-i18n-30.0/ko.xpi) = 374829
-SHA256 (xpi/firefox-i18n-30.0/ku.xpi) = 06e1c16dcd80db781fc734ecb41445e07f5fb3a4ae895c71a50fe7dc409ddc8b
-SIZE (xpi/firefox-i18n-30.0/ku.xpi) = 379930
-SHA256 (xpi/firefox-i18n-30.0/lij.xpi) = 86e1b4ba7acef11d4bbb211679bf8f810e8bdf466cc22aa670cda79fad2055e7
-SIZE (xpi/firefox-i18n-30.0/lij.xpi) = 356150
-SHA256 (xpi/firefox-i18n-30.0/lt.xpi) = d51545cfec7b8b26724f73e80cc8f9db1b1ba502b6668f01983013a69362fbd1
-SIZE (xpi/firefox-i18n-30.0/lt.xpi) = 383890
-SHA256 (xpi/firefox-i18n-30.0/lv.xpi) = 0d51417b425a2136d33701bda3eb4f510f8db4e8e3a47f59ac9438771eced133
-SIZE (xpi/firefox-i18n-30.0/lv.xpi) = 359059
-SHA256 (xpi/firefox-i18n-30.0/mai.xpi) = a2f3563cfb10731fd7a20e2d3817daeb6273d46e7f610786719274fa4c9de053
-SIZE (xpi/firefox-i18n-30.0/mai.xpi) = 412127
-SHA256 (xpi/firefox-i18n-30.0/mk.xpi) = 8c123ce0d0829adc001fb01714303733e21cade4287a388ed0a5195a89918504
-SIZE (xpi/firefox-i18n-30.0/mk.xpi) = 413366
-SHA256 (xpi/firefox-i18n-30.0/ml.xpi) = 8d877768025f6138a880f2d921d4386181b737a423a35367063794b608728f56
-SIZE (xpi/firefox-i18n-30.0/ml.xpi) = 432785
-SHA256 (xpi/firefox-i18n-30.0/mr.xpi) = 5e72c1a4722333b9aad812e172b781bea624d8a0ec0aeec5b52f5729e2df3da7
-SIZE (xpi/firefox-i18n-30.0/mr.xpi) = 410579
-SHA256 (xpi/firefox-i18n-30.0/nb-NO.xpi) = 6e8dbff214a16125ff907669b269b7b2e0b3a83de4cff6a2fe39ebd38f59f49d
-SIZE (xpi/firefox-i18n-30.0/nb-NO.xpi) = 363801
-SHA256 (xpi/firefox-i18n-30.0/nl.xpi) = bb2988b3089fbb3f617d5dc4da317d6bda6a16f3c812dd01d593ad0d9595d948
-SIZE (xpi/firefox-i18n-30.0/nl.xpi) = 362382
-SHA256 (xpi/firefox-i18n-30.0/nn-NO.xpi) = e9d3e938083fdafb1010e962302e34300eb9c599b9bfe5de6daed0e85207c00b
-SIZE (xpi/firefox-i18n-30.0/nn-NO.xpi) = 360851
-SHA256 (xpi/firefox-i18n-30.0/or.xpi) = fdff4fb0c596aa26a1bf53aabbba9f536194616b9914b3fe31dada0377f937a5
-SIZE (xpi/firefox-i18n-30.0/or.xpi) = 428965
-SHA256 (xpi/firefox-i18n-30.0/pa-IN.xpi) = d2e5cd1c396bdfe4ebac57ca90d20dd59d7c6c31c51d92c0752adedc4dd0821a
-SIZE (xpi/firefox-i18n-30.0/pa-IN.xpi) = 406759
-SHA256 (xpi/firefox-i18n-30.0/pl.xpi) = 7b0fcbfbdbab445fb1be5b3e6a787a706f26ca72bfe811e2a1cf39b7d9fc6a4a
-SIZE (xpi/firefox-i18n-30.0/pl.xpi) = 353581
-SHA256 (xpi/firefox-i18n-30.0/pt-BR.xpi) = 53c41242f436d3814ffb1bea6b00d0bf9b758bd08120d9a8444d11271e8530de
-SIZE (xpi/firefox-i18n-30.0/pt-BR.xpi) = 373136
-SHA256 (xpi/firefox-i18n-30.0/pt-PT.xpi) = 9aef188d9a9f55f68db712880ce464b95be7b064b6fdc2eb2fc09953261a3996
-SIZE (xpi/firefox-i18n-30.0/pt-PT.xpi) = 360707
-SHA256 (xpi/firefox-i18n-30.0/rm.xpi) = c6f7d1006cf56eedcfbceb25f66a1eaa957d6f40d4715ba92b74d1ca35b62b78
-SIZE (xpi/firefox-i18n-30.0/rm.xpi) = 370536
-SHA256 (xpi/firefox-i18n-30.0/ro.xpi) = 9293bd081bd00590962f9c51a838f1a3304e0f1db00be0039c47e782350b16f6
-SIZE (xpi/firefox-i18n-30.0/ro.xpi) = 399527
-SHA256 (xpi/firefox-i18n-30.0/ru.xpi) = 0fec86cfbb14f2e2962b94f81aeaa2925cb26af912dd8fbec15f71f7891c8ba8
-SIZE (xpi/firefox-i18n-30.0/ru.xpi) = 345465
-SHA256 (xpi/firefox-i18n-30.0/si.xpi) = fb2e952ddbbf870665450a8632b276cbb62e37dbeb29130513e3d66dab872060
-SIZE (xpi/firefox-i18n-30.0/si.xpi) = 405107
-SHA256 (xpi/firefox-i18n-30.0/sk.xpi) = 6397df9319a6df628445255085b53c14bb1a3200d9c735de15f3fe0b2d7eb2e1
-SIZE (xpi/firefox-i18n-30.0/sk.xpi) = 376836
-SHA256 (xpi/firefox-i18n-30.0/sl.xpi) = 7704430faf5c7e70a37a3dd6a0e22904c9c205f34e624006e939eda68b09a64a
-SIZE (xpi/firefox-i18n-30.0/sl.xpi) = 358783
-SHA256 (xpi/firefox-i18n-30.0/son.xpi) = 6817b48334da873f9a177c2d02456b4608cc6e97f3e1f1ff2b257f4420282e91
-SIZE (xpi/firefox-i18n-30.0/son.xpi) = 360519
-SHA256 (xpi/firefox-i18n-30.0/sq.xpi) = 8c0c9ea9c1b3a004bd95284ccaaaf33274056dcbed42e46b061f66785e115f4a
-SIZE (xpi/firefox-i18n-30.0/sq.xpi) = 375451
-SHA256 (xpi/firefox-i18n-30.0/sr.xpi) = 6ec3951f21f71b6623172e5d55375e6ea286fa771480bb34d57be370a6bdf027
-SIZE (xpi/firefox-i18n-30.0/sr.xpi) = 414412
-SHA256 (xpi/firefox-i18n-30.0/sv-SE.xpi) = 881d929aad2ae887652840256db032c6f82459172608faf4360981909ad64205
-SIZE (xpi/firefox-i18n-30.0/sv-SE.xpi) = 369471
-SHA256 (xpi/firefox-i18n-30.0/ta.xpi) = 99695ce5a90a717ce71bc0ecfd4c2a0423190e0b1ed6e0dba20f88c7cb103d13
-SIZE (xpi/firefox-i18n-30.0/ta.xpi) = 421293
-SHA256 (xpi/firefox-i18n-30.0/te.xpi) = cb6895dc2722b1b896be519ed92724f691392d47fd4931978cb07b28ae272856
-SIZE (xpi/firefox-i18n-30.0/te.xpi) = 431168
-SHA256 (xpi/firefox-i18n-30.0/th.xpi) = 19b4b26bb6680d4e6d4012bd368436cf4b189bf76c20dad775a241a9e3ebfcd4
-SIZE (xpi/firefox-i18n-30.0/th.xpi) = 415959
-SHA256 (xpi/firefox-i18n-30.0/tr.xpi) = 11c3dc80161c8381aab9ca174b6067ae72b0ef3ebcda918fb6cbb4ed9477ae8f
-SIZE (xpi/firefox-i18n-30.0/tr.xpi) = 370698
-SHA256 (xpi/firefox-i18n-30.0/uk.xpi) = ec8f6faf6c271f7fa7c06113134cb7f8c5e77466cfe1f337e1a875614ba6a950
-SIZE (xpi/firefox-i18n-30.0/uk.xpi) = 401695
-SHA256 (xpi/firefox-i18n-30.0/vi.xpi) = 26be5d152903c759092fa998806dd06aff400aa240f994cf043676b2c9f01f32
-SIZE (xpi/firefox-i18n-30.0/vi.xpi) = 388346
-SHA256 (xpi/firefox-i18n-30.0/zh-CN.xpi) = 6c145b57901063e2edde3d9fed91e5fa6fee9eba6a2b1d6ae539c47b7ecd1d40
-SIZE (xpi/firefox-i18n-30.0/zh-CN.xpi) = 390679
-SHA256 (xpi/firefox-i18n-30.0/zh-TW.xpi) = f9adbf394304da88af89a100840f08a15cc5cdd1dfe0604f3748d360beacac3e
-SIZE (xpi/firefox-i18n-30.0/zh-TW.xpi) = 387316
-SHA256 (xpi/firefox-i18n-30.0/zu.xpi) = 2f1d7b072fe28cebd49de1ca825db5cad33be27290c183df772a27426cad60af
-SIZE (xpi/firefox-i18n-30.0/zu.xpi) = 375213
+SHA256 (xpi/firefox-i18n-31.0/ach.xpi) = c043fd049cecd1a6af52f30563498e9dacdabe919178cec8928c682497eacbb4
+SIZE (xpi/firefox-i18n-31.0/ach.xpi) = 445518
+SHA256 (xpi/firefox-i18n-31.0/af.xpi) = b3c52bc4d0cd348a04c0149936314c82c6734ed65f76ec8acc754106e0d26f9b
+SIZE (xpi/firefox-i18n-31.0/af.xpi) = 431284
+SHA256 (xpi/firefox-i18n-31.0/an.xpi) = fc9f0fe1868f062212c522f828cebd1065d5d9f06a411e2278f57da44ac64b1d
+SIZE (xpi/firefox-i18n-31.0/an.xpi) = 407344
+SHA256 (xpi/firefox-i18n-31.0/ar.xpi) = abaeb915d12d54e327150c2554440bc96a5b21c5bbf6d8634f8855e988b84bab
+SIZE (xpi/firefox-i18n-31.0/ar.xpi) = 460017
+SHA256 (xpi/firefox-i18n-31.0/as.xpi) = 9fc2e6dd303f11d8658a1a0fb97b089566a467d0f1e9155980cd409c0f384c6b
+SIZE (xpi/firefox-i18n-31.0/as.xpi) = 448762
+SHA256 (xpi/firefox-i18n-31.0/ast.xpi) = 137b0b28087a434fab6580a1386f0a57d211660bb1d5bb420b946b08eaa19d1e
+SIZE (xpi/firefox-i18n-31.0/ast.xpi) = 352533
+SHA256 (xpi/firefox-i18n-31.0/be.xpi) = 10ecc313fbade0f094c047b609e616b2ddeec642fd62d5a886f5382217f7e530
+SIZE (xpi/firefox-i18n-31.0/be.xpi) = 378861
+SHA256 (xpi/firefox-i18n-31.0/bg.xpi) = dcbc8c838f92856a15ce675c35385a3c0c55d9305e0d7750e4977eec66b5c17e
+SIZE (xpi/firefox-i18n-31.0/bg.xpi) = 438254
+SHA256 (xpi/firefox-i18n-31.0/bn-BD.xpi) = 72d769635a3be48bd7816d447806b258ec777ac0cb2abb21f62be7cef86255a3
+SIZE (xpi/firefox-i18n-31.0/bn-BD.xpi) = 472819
+SHA256 (xpi/firefox-i18n-31.0/bn-IN.xpi) = f795e7f10cc816f648e8ff784207558ea9987d2dc7ab4b8e95129f644f572610
+SIZE (xpi/firefox-i18n-31.0/bn-IN.xpi) = 462786
+SHA256 (xpi/firefox-i18n-31.0/br.xpi) = 7388e70a4856a65746533cf98c65102dbfab5f2e56c6b065e7b0e1cb9756b7b6
+SIZE (xpi/firefox-i18n-31.0/br.xpi) = 389897
+SHA256 (xpi/firefox-i18n-31.0/bs.xpi) = e8df928e3468740b5038612fc23a67852f45632a834e32fd750a635c5dab07ea
+SIZE (xpi/firefox-i18n-31.0/bs.xpi) = 429208
+SHA256 (xpi/firefox-i18n-31.0/ca.xpi) = 644a69818eebe1833887e7afeb558a59c24c4f7c74bf77a64e067f5fa09b7181
+SIZE (xpi/firefox-i18n-31.0/ca.xpi) = 403769
+SHA256 (xpi/firefox-i18n-31.0/cs.xpi) = 7c058bb27ccbd10af2c8434b70b597444fd557fccba0eddf63cdf44f62a1fdea
+SIZE (xpi/firefox-i18n-31.0/cs.xpi) = 391171
+SHA256 (xpi/firefox-i18n-31.0/csb.xpi) = d0a9396d135530b940f6f6e96129cf2dfaccbaaf00400dfd1531543f1f48eaca
+SIZE (xpi/firefox-i18n-31.0/csb.xpi) = 383887
+SHA256 (xpi/firefox-i18n-31.0/cy.xpi) = 93a6c7b7e88216dece3a77fa5608a2d08e1dce81f0bfdc59140730ae741e4f1b
+SIZE (xpi/firefox-i18n-31.0/cy.xpi) = 390920
+SHA256 (xpi/firefox-i18n-31.0/da.xpi) = 99d1f942ae49ae2eb47d93c6ee351cb46b475d4963148367b6dd87d062ec65e8
+SIZE (xpi/firefox-i18n-31.0/da.xpi) = 397940
+SHA256 (xpi/firefox-i18n-31.0/de.xpi) = 0d2c095c405538441074125d14937e707f5638bd9c74e0ae69a9671354bfb6a2
+SIZE (xpi/firefox-i18n-31.0/de.xpi) = 395358
+SHA256 (xpi/firefox-i18n-31.0/el.xpi) = 2f0b8beb3b573c241c500183d65ae4cc08f7e55dda59bf4d2400b26696ee0e13
+SIZE (xpi/firefox-i18n-31.0/el.xpi) = 443175
+SHA256 (xpi/firefox-i18n-31.0/en-GB.xpi) = d141edce4aeb7bd6a4ad828cc80767bf00607bb2a3eaaf0a1f022ab3f808d402
+SIZE (xpi/firefox-i18n-31.0/en-GB.xpi) = 390311
+SHA256 (xpi/firefox-i18n-31.0/en-US.xpi) = a44ff56095949010b30a76a2af1c22cb8c7d09cb8610c50d91c04ee2c903d4bb
+SIZE (xpi/firefox-i18n-31.0/en-US.xpi) = 422982
+SHA256 (xpi/firefox-i18n-31.0/en-ZA.xpi) = 44b71794ec3612b74da254b1a4e4e2deaa6fb32adccc8e0f26d196eab3f4d836
+SIZE (xpi/firefox-i18n-31.0/en-ZA.xpi) = 388722
+SHA256 (xpi/firefox-i18n-31.0/eo.xpi) = 5766f74e5c601991edad4143befb2eba4a8b41e86d0a0ee739640158a8200574
+SIZE (xpi/firefox-i18n-31.0/eo.xpi) = 432024
+SHA256 (xpi/firefox-i18n-31.0/es-AR.xpi) = 96d7ca36f5af5eb6e0b1080f509fc891ccb6ea473a57692e2ce28067828de9f2
+SIZE (xpi/firefox-i18n-31.0/es-AR.xpi) = 400131
+SHA256 (xpi/firefox-i18n-31.0/es-CL.xpi) = 8156b29bf446480778aa45a48a75518c6e0e60daf014436c2db7168cba1cdd62
+SIZE (xpi/firefox-i18n-31.0/es-CL.xpi) = 343001
+SHA256 (xpi/firefox-i18n-31.0/es-ES.xpi) = b0e2f582b606e52fb8671a8a62295a86cb8d8b9653206bf6a944cc8ed608f576
+SIZE (xpi/firefox-i18n-31.0/es-ES.xpi) = 336074
+SHA256 (xpi/firefox-i18n-31.0/es-MX.xpi) = f814a2a1fdf793b65db619c22fd9eaa1bdc15498abec01f77598add5d0491ab5
+SIZE (xpi/firefox-i18n-31.0/es-MX.xpi) = 402865
+SHA256 (xpi/firefox-i18n-31.0/et.xpi) = a377291ac4126abc10984a397b1acf67e2c37040d15f9bab410e69249eb34717
+SIZE (xpi/firefox-i18n-31.0/et.xpi) = 390554
+SHA256 (xpi/firefox-i18n-31.0/eu.xpi) = fc2db5d0730742d70c6071c2016179e33b8465ef792700ef6e38cf88de8d65eb
+SIZE (xpi/firefox-i18n-31.0/eu.xpi) = 413192
+SHA256 (xpi/firefox-i18n-31.0/fa.xpi) = bf393bb5fc57d269b435d8ccff8b40d990ae225b51f19151e916ae3bb75e3f31
+SIZE (xpi/firefox-i18n-31.0/fa.xpi) = 461050
+SHA256 (xpi/firefox-i18n-31.0/ff.xpi) = c609b12714067f3a073d4243f743112fa3aa0282099fbb0bfa2bd11a313a94e3
+SIZE (xpi/firefox-i18n-31.0/ff.xpi) = 400336
+SHA256 (xpi/firefox-i18n-31.0/fi.xpi) = 788e0584160f1b4fb1558754e8d901cae5532115bf174346f67394683b43f111
+SIZE (xpi/firefox-i18n-31.0/fi.xpi) = 392932
+SHA256 (xpi/firefox-i18n-31.0/fr.xpi) = 07302d95a22577813ceaf42557120ca4937d6ee4cd54fe47173bed0ceb073a3d
+SIZE (xpi/firefox-i18n-31.0/fr.xpi) = 406655
+SHA256 (xpi/firefox-i18n-31.0/fy-NL.xpi) = a9c2e97a247c7a8d57c84542b4920c2b248b0bf6b35bfd485eba9c740d2f4a86
+SIZE (xpi/firefox-i18n-31.0/fy-NL.xpi) = 402122
+SHA256 (xpi/firefox-i18n-31.0/ga-IE.xpi) = 536bcead2a0f0a6aab897110f3359378e06aa84e964f619a09bcb06619b3a3d8
+SIZE (xpi/firefox-i18n-31.0/ga-IE.xpi) = 410269
+SHA256 (xpi/firefox-i18n-31.0/gd.xpi) = 7aee0379d2654965caa379d6f848d37d7208f26eb1b828425c816d4595b76864
+SIZE (xpi/firefox-i18n-31.0/gd.xpi) = 403207
+SHA256 (xpi/firefox-i18n-31.0/gl.xpi) = 51a640b99a5f534262c730ab9f28ca8070ea4d9d0c99f32bf37c44eefb123f5a
+SIZE (xpi/firefox-i18n-31.0/gl.xpi) = 390792
+SHA256 (xpi/firefox-i18n-31.0/gu-IN.xpi) = 822c226488c566fdfb2e03bc741809ad8a5b0ef828c42b8442e06f4c9743f3fa
+SIZE (xpi/firefox-i18n-31.0/gu-IN.xpi) = 423693
+SHA256 (xpi/firefox-i18n-31.0/he.xpi) = 7536dd41ee7a7c5363405086dcb233902758578a0bd52b7f74262c7e959042c4
+SIZE (xpi/firefox-i18n-31.0/he.xpi) = 427822
+SHA256 (xpi/firefox-i18n-31.0/hi-IN.xpi) = fe1c61fd3f8d2908c0b000c01c058ff2253a9ce7ea81d3fd9b8f976d10edd619
+SIZE (xpi/firefox-i18n-31.0/hi-IN.xpi) = 441594
+SHA256 (xpi/firefox-i18n-31.0/hr.xpi) = 57085c743a3adbb5dab962aa71f526552a43d38cfd91eef7df78852e70e6c867
+SIZE (xpi/firefox-i18n-31.0/hr.xpi) = 424564
+SHA256 (xpi/firefox-i18n-31.0/hsb.xpi) = 11595a4332552906d5126cda6ad64baf678b11817113911d8bff7f882f8d9edd
+SIZE (xpi/firefox-i18n-31.0/hsb.xpi) = 413268
+SHA256 (xpi/firefox-i18n-31.0/hu.xpi) = bdffc3f0a4fc0debabe78fbbe639d7fe3ede2bea402b6e619de96464e022cd55
+SIZE (xpi/firefox-i18n-31.0/hu.xpi) = 398838
+SHA256 (xpi/firefox-i18n-31.0/hy-AM.xpi) = 45581de0b5ebd615c7ac6ca71085b72955a9a24360dbf2d47947447a7a1d49ab
+SIZE (xpi/firefox-i18n-31.0/hy-AM.xpi) = 478936
+SHA256 (xpi/firefox-i18n-31.0/id.xpi) = 4da6927d727a8cb9111c544ddfdcb13c3ad417b665b5565e01fa896b354042b4
+SIZE (xpi/firefox-i18n-31.0/id.xpi) = 378494
+SHA256 (xpi/firefox-i18n-31.0/is.xpi) = d745aebf2d8da70efe62c5aeadc14c5bf4bed1f52e114d520c7f9ca9f4256de8
+SIZE (xpi/firefox-i18n-31.0/is.xpi) = 427521
+SHA256 (xpi/firefox-i18n-31.0/it.xpi) = 3c62b7106c34fac3ce3b2a8a06a5b202605e268e820e18bc3ac005eccfc2baee
+SIZE (xpi/firefox-i18n-31.0/it.xpi) = 331099
+SHA256 (xpi/firefox-i18n-31.0/ja.xpi) = 3d442fddac1853701add6ce9a90b7ccb3f284b635d04b9f8040384c05743926d
+SIZE (xpi/firefox-i18n-31.0/ja.xpi) = 421663
+SHA256 (xpi/firefox-i18n-31.0/kk.xpi) = 9bd6447af21f63178f0d6c67cbb8161eb777a47bcfad1a4221bc2023394198e2
+SIZE (xpi/firefox-i18n-31.0/kk.xpi) = 439310
+SHA256 (xpi/firefox-i18n-31.0/km.xpi) = 2b6127ea6010c1b21db460e0708822d434a523c75e1ccab2b6d175fee6c57dc8
+SIZE (xpi/firefox-i18n-31.0/km.xpi) = 506670
+SHA256 (xpi/firefox-i18n-31.0/kn.xpi) = a0204756151beeed2af17114bef9d94d3106b4f47bc6e779319fdfbca2a9baf8
+SIZE (xpi/firefox-i18n-31.0/kn.xpi) = 459084
+SHA256 (xpi/firefox-i18n-31.0/ko.xpi) = a6dd52bfebfca2129f7895fe95116f64b0849e4debfc11728f0cdffcf8a25cd9
+SIZE (xpi/firefox-i18n-31.0/ko.xpi) = 403008
+SHA256 (xpi/firefox-i18n-31.0/ku.xpi) = d56bbdf2d87d23f854527c46a2cb243921195ed43063ff5eb557735da7f0f1ef
+SIZE (xpi/firefox-i18n-31.0/ku.xpi) = 420256
+SHA256 (xpi/firefox-i18n-31.0/lij.xpi) = 6f7999831c517b0a6484f6c4221be57690443bc42df47aebd5ce08736df995aa
+SIZE (xpi/firefox-i18n-31.0/lij.xpi) = 386057
+SHA256 (xpi/firefox-i18n-31.0/lt.xpi) = fd34ecfc10a5d277fba87b8d756d0671f162a362ba3b65a6768317c499fb87a7
+SIZE (xpi/firefox-i18n-31.0/lt.xpi) = 435625
+SHA256 (xpi/firefox-i18n-31.0/lv.xpi) = 64ec68a9e91ec7e23eb610615bfaaa0b8511d9728cd60da65fd594fe58e433ed
+SIZE (xpi/firefox-i18n-31.0/lv.xpi) = 398770
+SHA256 (xpi/firefox-i18n-31.0/mai.xpi) = 1854eae057ca51a928d2d75605a8b09c49e5ce37859a1c2be668522303e74e0c
+SIZE (xpi/firefox-i18n-31.0/mai.xpi) = 445078
+SHA256 (xpi/firefox-i18n-31.0/mk.xpi) = 2d05606f289a6d7fd7c7362197d4a30ef62b124c4f802d73803987f96d50a365
+SIZE (xpi/firefox-i18n-31.0/mk.xpi) = 475677
+SHA256 (xpi/firefox-i18n-31.0/ml.xpi) = ed265f781b769d690e9d70c1809dda688648822a8ff0cf06b1c76955adc1019f
+SIZE (xpi/firefox-i18n-31.0/ml.xpi) = 466447
+SHA256 (xpi/firefox-i18n-31.0/mr.xpi) = b52360035998ea66829e9d3bb8cd2fa462ae0adb5a248716aa7afc0f63a10f5b
+SIZE (xpi/firefox-i18n-31.0/mr.xpi) = 451485
+SHA256 (xpi/firefox-i18n-31.0/ms.xpi) = 9c82c6883e19d67d94e101272ebbf8367bc75106ee2fce6fe54477d93cf3435e
+SIZE (xpi/firefox-i18n-31.0/ms.xpi) = 436424
+SHA256 (xpi/firefox-i18n-31.0/nb-NO.xpi) = 4d05a61dc863bd7abe378d7565712784bf69efc287dafae555dd21736fef4678
+SIZE (xpi/firefox-i18n-31.0/nb-NO.xpi) = 392199
+SHA256 (xpi/firefox-i18n-31.0/nl.xpi) = 39b53bdf906dd8273c397be1b1b10bc45da62af4f28eb33f3f9bc291e1464c1d
+SIZE (xpi/firefox-i18n-31.0/nl.xpi) = 391078
+SHA256 (xpi/firefox-i18n-31.0/nn-NO.xpi) = 52496ba650ddd38d74d50214e2eb7d15195711264b2d904363a0c1e06f209023
+SIZE (xpi/firefox-i18n-31.0/nn-NO.xpi) = 386475
+SHA256 (xpi/firefox-i18n-31.0/or.xpi) = 7ed8338eabd6a15990272891d18e393819583efadb4aed842c1efb9d4a950cff
+SIZE (xpi/firefox-i18n-31.0/or.xpi) = 464943
+SHA256 (xpi/firefox-i18n-31.0/pa-IN.xpi) = 5607d16fe6a474a7530e5731e0891fee0d6c38a7c7dc27ea71c490fad1e9981c
+SIZE (xpi/firefox-i18n-31.0/pa-IN.xpi) = 439519
+SHA256 (xpi/firefox-i18n-31.0/pl.xpi) = 68bae55ad08937c94603c00cb81723406400884c2af671289ab4228969d60c8c
+SIZE (xpi/firefox-i18n-31.0/pl.xpi) = 374940
+SHA256 (xpi/firefox-i18n-31.0/pt-BR.xpi) = 0702c144569fa1b4acc4b88c4b723a93a2c7be5751e69276c94d84558e3abe92
+SIZE (xpi/firefox-i18n-31.0/pt-BR.xpi) = 405758
+SHA256 (xpi/firefox-i18n-31.0/pt-PT.xpi) = 92a99b29b6b078b36934d29e81462f3508842f99ce64fd13e97866dbc3b7dba0
+SIZE (xpi/firefox-i18n-31.0/pt-PT.xpi) = 386536
+SHA256 (xpi/firefox-i18n-31.0/rm.xpi) = a2f708b1710fc2d473d5b0c8edbb9f8b88f58c8b28c7c62960df80e5d3bc849a
+SIZE (xpi/firefox-i18n-31.0/rm.xpi) = 399478
+SHA256 (xpi/firefox-i18n-31.0/ro.xpi) = 23c3a042262d6c7be84b7065d0eafcfaf069176ef474155bc606f3c2cc3d629d
+SIZE (xpi/firefox-i18n-31.0/ro.xpi) = 439581
+SHA256 (xpi/firefox-i18n-31.0/ru.xpi) = f336f59840fc21761aaaef3f38f38d73a5984eb211de711594dcafe419e2cb0c
+SIZE (xpi/firefox-i18n-31.0/ru.xpi) = 368090
+SHA256 (xpi/firefox-i18n-31.0/si.xpi) = efba0e0146a324c6ba79ac6fc83899236907166f45d4d59de3a26d43257c64dd
+SIZE (xpi/firefox-i18n-31.0/si.xpi) = 463418
+SHA256 (xpi/firefox-i18n-31.0/sk.xpi) = fb69c49c0d71946950e38fef73f1fa823517a1b8c81602f0921353b327706042
+SIZE (xpi/firefox-i18n-31.0/sk.xpi) = 413995
+SHA256 (xpi/firefox-i18n-31.0/sl.xpi) = 6cca51d1ba210c54e296ddbb0caaecd56caf4615e1305fad7e62f8f52c72e99d
+SIZE (xpi/firefox-i18n-31.0/sl.xpi) = 387326
+SHA256 (xpi/firefox-i18n-31.0/son.xpi) = 2d76dc5a37d7fccf277b1d671f50d1368273736c54e5d3616a2af251e0f0c387
+SIZE (xpi/firefox-i18n-31.0/son.xpi) = 395336
+SHA256 (xpi/firefox-i18n-31.0/sq.xpi) = 22b10959e5e6054ccf03864afedbeaeb59e88f8fd12e82888b8901af4abfd596
+SIZE (xpi/firefox-i18n-31.0/sq.xpi) = 431331
+SHA256 (xpi/firefox-i18n-31.0/sr.xpi) = b544f98dee89a043859ae5c554657c258f30e059bbb3a73f62c516e4f0c706c4
+SIZE (xpi/firefox-i18n-31.0/sr.xpi) = 426095
+SHA256 (xpi/firefox-i18n-31.0/sv-SE.xpi) = 066d3cad0cbb20b1e172d9bb98a2dab21cb425f3d644bf58b3e0df52977290de
+SIZE (xpi/firefox-i18n-31.0/sv-SE.xpi) = 399219
+SHA256 (xpi/firefox-i18n-31.0/ta.xpi) = 19dfc532b13b47d652068c34b01430cb53dce3aa9035919f216e4294e3109abe
+SIZE (xpi/firefox-i18n-31.0/ta.xpi) = 447878
+SHA256 (xpi/firefox-i18n-31.0/te.xpi) = 4e08ca67cdd3b926032db97a16c7a16aa984789c79c5f40a46451063b6eb07b0
+SIZE (xpi/firefox-i18n-31.0/te.xpi) = 462785
+SHA256 (xpi/firefox-i18n-31.0/th.xpi) = 1e387122bbb76988a1aaa110019d1dde87192d8c387f58ea54bb41433cd818f8
+SIZE (xpi/firefox-i18n-31.0/th.xpi) = 478321
+SHA256 (xpi/firefox-i18n-31.0/tr.xpi) = 73eddd42b90504f9ed160ecf569fc6067fd7476adc389c4b2630413b4e24f648
+SIZE (xpi/firefox-i18n-31.0/tr.xpi) = 417564
+SHA256 (xpi/firefox-i18n-31.0/uk.xpi) = 962051f56490be60f047bb807b01c63e2ac0fe24165e37f41110fbfd59879908
+SIZE (xpi/firefox-i18n-31.0/uk.xpi) = 428197
+SHA256 (xpi/firefox-i18n-31.0/vi.xpi) = 67a1d478b02d2885d4b5735aab2b040fd7d3c8ead7d5948f6cc15f4d37f487b8
+SIZE (xpi/firefox-i18n-31.0/vi.xpi) = 413568
+SHA256 (xpi/firefox-i18n-31.0/xh.xpi) = 33a833ba8aa8597f8a9bd34a15a62d2d1cedd3b4f2ed64b9e20a0b7ce9ff6b78
+SIZE (xpi/firefox-i18n-31.0/xh.xpi) = 398070
+SHA256 (xpi/firefox-i18n-31.0/zh-CN.xpi) = 0b35be1cc865baae8740ff08de5f5cd334d38618efa03ef633c410358fedf5ce
+SIZE (xpi/firefox-i18n-31.0/zh-CN.xpi) = 419823
+SHA256 (xpi/firefox-i18n-31.0/zh-TW.xpi) = d76aab32932b42273b7f85b8c04c95823bd242804cf439c7a11b43c865977ef7
+SIZE (xpi/firefox-i18n-31.0/zh-TW.xpi) = 412714
+SHA256 (xpi/firefox-i18n-31.0/zu.xpi) = df473118aee16a915c98f275dcc27a22c7fc8aeb0f57dd92257fb4d517275667
+SIZE (xpi/firefox-i18n-31.0/zu.xpi) = 433409
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
diff --git a/www/libxul/Makefile b/www/libxul/Makefile
index 12658ef3d295..9cf474b39e60 100644
--- a/www/libxul/Makefile
+++ b/www/libxul/Makefile
@@ -2,11 +2,9 @@
# $FreeBSD$
PORTNAME= libxul
-DISTVERSION= 24.6.0
-PORTREVISION= 1
+DISTVERSION= 24.7.0
CATEGORIES?= www devel
-MASTER_SITES= MOZILLA/firefox/releases/${DISTVERSION}esr/source \
- https://ftp.mozilla.org/pub/mozilla.org/firefox/candidates/${DISTVERSION}esr-candidates/build1/source/
+MASTER_SITES= MOZILLA/firefox/releases/${DISTVERSION}esr/source
DISTNAME= firefox-${DISTVERSION}esr.source
MAINTAINER?= gecko@FreeBSD.org
@@ -48,6 +46,7 @@ USE_LDCONFIG= ${PREFIX}/lib/${MOZILLA}
MOZ_OPTIONS?= --enable-application=xulrunner
MOZ_EXTENSIONS= default,cookie,permissions
USE_GECKO= gecko
+CPE_PRODUCT= firefox_esr
OBJDIR_BUILD= # in-tree build broken after bug 789837
MOZILLA_EXEC_NAME=xulrunner
USE_MOZILLA= # empty
@@ -64,7 +63,7 @@ MOZ_PKGCONFIG_FILES+= mozilla-nss
.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
post-patch:
diff --git a/www/libxul/distinfo b/www/libxul/distinfo
index 8137a3cde37b..ff44c811e43b 100644
--- a/www/libxul/distinfo
+++ b/www/libxul/distinfo
@@ -1,2 +1,2 @@
-SHA256 (firefox-24.6.0esr.source.tar.bz2) = 02ee0424ddefd912768a3ae700a4581053ef68f9dea46c34e43e833c119289e4
-SIZE (firefox-24.6.0esr.source.tar.bz2) = 119465935
+SHA256 (firefox-24.7.0esr.source.tar.bz2) = 079b6021f153ba11658cefe41d467e25357cd78e84d3d66c6abcfecb5a00121f
+SIZE (firefox-24.7.0esr.source.tar.bz2) = 119967111
diff --git a/www/libxul/files/patch-bug1026499 b/www/libxul/files/patch-bug1026499
new file mode 100644
index 000000000000..e446f22c64cf
--- /dev/null
+++ b/www/libxul/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/libxul/files/patch-bug1041795 b/www/libxul/files/patch-bug1041795
new file mode 100644
index 000000000000..ba567f83dcac
--- /dev/null
+++ b/www/libxul/files/patch-bug1041795
@@ -0,0 +1,70 @@
+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/config/rules.mk js/src/config/rules.mk
+index 4d67eda..783942f 100644
+--- js/src/config/rules.mk
++++ js/src/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/libxul/files/patch-bug702179 b/www/libxul/files/patch-bug702179
new file mode 100644
index 000000000000..5754b607ad57
--- /dev/null
+++ b/www/libxul/files/patch-bug702179
@@ -0,0 +1,35 @@
+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
+@@ -35,7 +35,6 @@ ifdef JS_SHARED_LIBRARY
+ FORCE_SHARED_LIB = 1
+ endif
+ FORCE_STATIC_LIB = 1
+-DIST_INSTALL = 1
+
+ ###############################################
+ # BEGIN include sources for low-level code shared with mfbt
diff --git a/www/libxul/files/patch-bug779713 b/www/libxul/files/patch-bug779713
new file mode 100644
index 000000000000..1398d36f6a15
--- /dev/null
+++ b/www/libxul/files/patch-bug779713
@@ -0,0 +1,72 @@
+diff --git mfbt/Util.h mfbt/Util.h
+index e0843ca..353ec36 100644
+--- mfbt/Util.h
++++ mfbt/Util.h
+@@ -19,6 +19,13 @@
+
+ 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, figure out how many
+ * bytes of alignment a given type needs.
+@@ -37,6 +44,7 @@ class AlignmentFinder
+ };
+
+ #define MOZ_ALIGNOF(T) mozilla::AlignmentFinder<T>::alignment
++#endif
+
+ /*
+ * Declare the MOZ_ALIGNED_DECL macro for declaring aligned types.
+@@ -48,7 +56,10 @@ class AlignmentFinder
+ * 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
+@@ -67,6 +67,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
+@@ -85,6 +88,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
+@@ -102,6 +108,9 @@
+ # define MOZ_HAVE_NEVER_INLINE __attribute__((noinline))
+ # define MOZ_HAVE_NORETURN __attribute__((noreturn))
+ #elif defined(_MSC_VER)
++# if _MSC_VER >= 1800
++# define MOZ_HAVE_CXX11_ALIGNAS
++# endif
+ # if _MSC_VER >= 1700
+ # define MOZ_HAVE_CXX11_FINAL final
+ # else
diff --git a/www/libxul/files/patch-bug938730 b/www/libxul/files/patch-bug938730
new file mode 100644
index 000000000000..ac444b228ae6
--- /dev/null
+++ b/www/libxul/files/patch-bug938730
@@ -0,0 +1,35 @@
+commit 1961aa2
+Author: Kai Engert <kaie@kuix.de>
+Date: Wed Nov 20 20:25:12 2013 +0100
+
+ Bug 938730 - avoid mix of memory allocators (crashes) when using system sqlite, r=asuth
+---
+ storage/src/Makefile.in | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git storage/src/Makefile.in storage/src/Makefile.in
+index 9418640..c7391ed 100644
+--- storage/src/Makefile.in
++++ storage/src/Makefile.in
+@@ -6,14 +6,21 @@
+ # Don't use the jemalloc allocator on Android, because we can't guarantee
+ # that Gecko will configure sqlite before it is first used (bug 730495).
+ #
++# Don't use the jemalloc allocator when using system sqlite. Linked in libraries
++# (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).
++#
+ # 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.
+ ifdef MOZ_MEMORY
++ifndef MOZ_NATIVE_SQLITE
+ ifneq ($(OS_TARGET), Android)
+ DEFINES += -DMOZ_STORAGE_MEMORY
+ endif
+ endif
++endif
+
+ # For nsDependentJSString
+ LOCAL_INCLUDES = \
diff --git a/www/libxul/files/patch-ipc-chromium-Makefile.in b/www/libxul/files/patch-ipc-chromium-Makefile.in
deleted file mode 100644
index 0e20edf2ee37..000000000000
--- a/www/libxul/files/patch-ipc-chromium-Makefile.in
+++ /dev/null
@@ -1,13 +0,0 @@
---- ipc/chromium/Makefile.in~
-+++ ipc/chromium/Makefile.in
-@@ -55,9 +60,7 @@ vpath %.c \
- $(srcdir)/src/third_party/libevent \
- $(NULL)
- else # } else {
--# message_pump_libevent.cc includes third_party/libevent/event.h,
--# which we put in $(DIST), see export rule below
--LOCAL_INCLUDES += -I$(DIST)
-+LOCAL_INCLUDES += $(filter %/compat, $(MOZ_LIBEVENT_CFLAGS))
- endif # }
-
- vpath %.cc \
diff --git a/www/libxul/files/patch-ipc-chromium-src-base-message_pump_libevent.cc b/www/libxul/files/patch-ipc-chromium-src-base-message_pump_libevent.cc
deleted file mode 100644
index 02b6a5e90eca..000000000000
--- a/www/libxul/files/patch-ipc-chromium-src-base-message_pump_libevent.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- ipc/chromium/src/base/message_pump_libevent.cc~
-+++ ipc/chromium/src/base/message_pump_libevent.cc
-@@ -16,7 +16,7 @@
- #include "base/scoped_ptr.h"
- #include "base/time.h"
- #include "nsDependentSubstring.h"
--#include "third_party/libevent/event.h"
-+#include "event.h"
-
- // Lifecycle of struct event
- // Libevent uses two main data structures:
diff --git a/www/libxul/files/patch-z-bug1026828 b/www/libxul/files/patch-z-bug1026828
new file mode 100644
index 000000000000..5d2020cd091f
--- /dev/null
+++ b/www/libxul/files/patch-z-bug1026828
@@ -0,0 +1,13 @@
+diff --git storage/src/Makefile.in storage/src/Makefile.in
+index 4cd2551..5c40536 100644
+--- storage/src/Makefile.in
++++ storage/src/Makefile.in
+@@ -31,7 +31,7 @@ endif
+ # MOZ_STORAGE_MEMORY on Windows, you will also need to change the "ifdef
+ # MOZ_MEMORY" options in db/sqlite3/src/Makefile.in.
+ ifdef MOZ_MEMORY
+-ifndef MOZ_NATIVE_SQLITE
++ifneq (,$(not $(MOZ_NATIVE_SQLITE))$(MOZ_NATIVE_JEMALLOC))
+ ifneq ($(OS_TARGET), Android)
+ DEFINES += -DMOZ_STORAGE_MEMORY
+ endif
diff --git a/www/libxul/files/pkg-deinstall.in b/www/libxul/files/pkg-deinstall.in
deleted file mode 100644
index 2544ee4ed3a2..000000000000
--- a/www/libxul/files/pkg-deinstall.in
+++ /dev/null
@@ -1,28 +0,0 @@
-#!/bin/sh
-#
-# $MCom: ports/www/mozilla/pkg-deinstall.in,v 1.25 2008/07/26 19:07:07 ahze Exp $
-#
-# Date created: Mon Nov 29, 2003
-# Whom: Thierry Thomas (<thierry@pompo.net>)
-# Fix the chrome registry.
-
-umask 022
-PATH=/bin:/usr/bin
-
-[ "x$1" = "x" ] && exit 1
-[ "x$2" != "xDEINSTALL" ] && exit 0
-
-MOZDIR=%%MOZDIR%%
-
-rm -rf ${MOZDIR}/chrome/overlayinfo
-rm -f ${MOZDIR}/chrome/*.rdf
-rm -f ${MOZDIR}/component.reg
-rm -f ${MOZDIR}/components/*.dat
-rm -f ${MOZDIR}/components.ini
-rm -f ${MOZDIR}/defaults.ini
-rm -f ${MOZDIR}/chrome/app-chrome.manifest
-rm -rf ${MOZDIR}/updates
-find %%MOZDIR%%/plugins/ -depth 1 -type l -delete > /dev/null 2>&1
-find %%MOZDIR%%/extensions/ -depth 1 -type l -delete > /dev/null 2>&1
-
-exit 0
diff --git a/www/libxul/files/pkg-install.in b/www/libxul/files/pkg-install.in
deleted file mode 100644
index 9feab2225a78..000000000000
--- a/www/libxul/files/pkg-install.in
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/bin/sh
-#
-# $MCom: ports/www/mozilla/pkg-install.in,v 1.26 2008/08/04 16:58:03 mezz Exp $
-#
-# Date created: Mon Nov 29, 2003
-# Whom: Thierry Thomas (<thierry@pompo.net>)
-# Fix the chrome registry.
-
-umask 022
-PATH=/bin:/usr/bin
-
-[ "x$1" = "x" ] && exit 1
-[ "x$2" != "xPOST-INSTALL" ] && exit 0
-
-MOZDIR=%%MOZDIR%%
-MOZBIN=${MOZDIR}/%%MOZILLA_BIN%%
-REGXPCOM=${MOZDIR}/regxpcom
-REGCHROME=${MOZDIR}/regchrome
-
-rm -rf ${MOZDIR}/chrome/overlayinfo
-rm -f ${MOZDIR}/chrome/*.rdf
-mkdir -p ${MOZDIR}/chrome/overlayinfo
-rm -f ${MOZDIR}/component.reg
-
-cd ${MOZDIR} || exit 1
-if [ -f ${REGXPCOM} ]; then
- ./run-mozilla.sh ${REGXPCOM} || true
-fi
-if [ -f ${REGCHROME} ]; then
- ./run-mozilla.sh ${REGCHROME} || true
-fi
-if [ -f ${MOZBIN} -a "${1%-*}" = "nvu" ]; then
- ./run-mozilla.sh ${MOZBIN} -register > /dev/null 2>&1
-fi
-cp -R %%LOCALBASE%%/lib/xpi/symlinks/%%MOZILLA%%/ %%MOZDIR%%/extensions/ > /dev/null 2>&1
-
-exit 0
diff --git a/www/linux-firefox/Makefile b/www/linux-firefox/Makefile
index 4f117bab68e4..8da7b9a9b8dc 100644
--- a/www/linux-firefox/Makefile
+++ b/www/linux-firefox/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= firefox
-DISTVERSION= 30.0
+DISTVERSION= 31.0
PORTEPOCH= 1
CATEGORIES= www ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/linux-i686/en-US
diff --git a/www/linux-firefox/distinfo b/www/linux-firefox/distinfo
index a9c089c426e3..0a159dcce19a 100644
--- a/www/linux-firefox/distinfo
+++ b/www/linux-firefox/distinfo
@@ -1,5 +1,5 @@
-SHA256 (firefox-30.0.tar.bz2) = 4bca44a1ba94bf5616f7ea650e37cd3e5a719546def9e4a08ee88aedbc3a4db6
-SIZE (firefox-30.0.tar.bz2) = 37350490
+SHA256 (firefox-31.0.tar.bz2) = 13b4297db52ef851b38f292eba2b2136e4c2f1453e004012fe8b1fbcf000abce
+SIZE (firefox-31.0.tar.bz2) = 39743397
SHA256 (glib2-2.22.2-2.fc12.i686.rpm) = e3b459c245ec14e7248e9de4b506963a4773407f3e58835db5070d0ed02ecc99
SIZE (glib2-2.22.2-2.fc12.i686.rpm) = 1162908
SHA256 (gtk2-2.18.3-19.fc12.i686.rpm) = aea9cf7ffe9c8dae0faa2bf3d2aa1b2117c55dce03da72dcce8c268279ec0a4b
diff --git a/www/linux-seamonkey/Makefile b/www/linux-seamonkey/Makefile
index 3ade38aa8c28..4ec42f867bd1 100644
--- a/www/linux-seamonkey/Makefile
+++ b/www/linux-seamonkey/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= seamonkey
-DISTVERSION= 2.26.1
+DISTVERSION= 2.26
CATEGORIES= www mail news editors irc ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/linux-i686/en-US
diff --git a/www/linux-seamonkey/Makefile.common b/www/linux-seamonkey/Makefile.common
index 0d64935cc148..d99f66f9a835 100644
--- a/www/linux-seamonkey/Makefile.common
+++ b/www/linux-seamonkey/Makefile.common
@@ -21,6 +21,9 @@ GTK218_FILES= lib/libgio-2.0.so.0 \
usr/lib/libgtk-x11-2.0.so.0
.endif
+USES+= cpe
+CPE_VENDOR?= mozilla
+CPE_TARGET_SW?= linux
NO_BUILD= yes
ONLY_FOR_ARCHS= i386 amd64
APP_NAME= ${PKGBASE}
diff --git a/www/linux-seamonkey/distinfo b/www/linux-seamonkey/distinfo
index b085d32b1404..605d95fac5ea 100644
--- a/www/linux-seamonkey/distinfo
+++ b/www/linux-seamonkey/distinfo
@@ -1,5 +1,5 @@
-SHA256 (seamonkey-2.26.1.tar.bz2) = ce16da8005748b38068e409e1c861e0faa5291afccd07b53616492c49db7f089
-SIZE (seamonkey-2.26.1.tar.bz2) = 30921432
+SHA256 (seamonkey-2.26.tar.bz2) = 4b306933c629bfaa0f6f4a8e5db08a47055061e3db87010b4c1e058d4ee4e0b2
+SIZE (seamonkey-2.26.tar.bz2) = 30916325
SHA256 (glib2-2.22.2-2.fc12.i686.rpm) = e3b459c245ec14e7248e9de4b506963a4773407f3e58835db5070d0ed02ecc99
SIZE (glib2-2.22.2-2.fc12.i686.rpm) = 1162908
SHA256 (gtk2-2.18.3-19.fc12.i686.rpm) = aea9cf7ffe9c8dae0faa2bf3d2aa1b2117c55dce03da72dcce8c268279ec0a4b
diff --git a/www/seamonkey/Makefile b/www/seamonkey/Makefile
index 6d1848b80757..59290f8b7713 100644
--- a/www/seamonkey/Makefile
+++ b/www/seamonkey/Makefile
@@ -3,7 +3,7 @@
PORTNAME= seamonkey
DISTVERSION= 2.26.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES?= www mail news editors irc ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \
https://ftp.mozilla.org/pub/mozilla.org/${PORTNAME}/candidates/${DISTVERSION}-candidates/build1/source/
@@ -30,7 +30,7 @@ BUILD_DEPENDS= nspr>=4.10.3:${PORTSDIR}/devel/nspr \
LIB_DEPENDS= libv4l2.so:${PORTSDIR}/multimedia/libv4l
-EM_VERSION= 1.6.1_pre20140112
+EM_VERSION= 1.7
L_VERSION= 3.1
SSP_UNSAFE= yes
@@ -104,11 +104,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
.if ! ${PORT_OPTIONS:MMAILNEWS}
@@ -121,19 +121,17 @@ MOZ_OPTIONS+= --disable-ldap --enable-mailnews
MOZ_OPTIONS+= --enable-ldap --enable-mailnews
.endif
.if ${PORT_OPTIONS:MENIGMAIL}
-#MASTER_SITES+= https://www.enigmail.net/download/source/:enigmail
-MASTER_SITES+= https://dev.gentoo.org/~polynomial-c/mozilla/:enigmail
+MASTER_SITES+= https://www.enigmail.net/download/source/:enigmail
DISTFILES+= ${EM_DISTFILE}:enigmail
RUN_DEPENDS+= gpg:${PORTSDIR}/security/gnupg
EM_DISTNAME= enigmail-${EM_VERSION}
-EM_DISTFILE= ${EM_DISTNAME}.tar.xz
+EM_DISTFILE= ${EM_DISTNAME}.tar.gz
EM_XPI_FILE= ${WRKSRC}/mailnews/extensions/enigmail/build/${EM_DISTNAME}-${OPSYS:tl}-${ARCH:S/amd64/x86_64/:S/i386/x86/}-gcc3.xpi
EM_ORIG_ID= {847b3a00-7ab1-11d4-8f02-006008948af5}
EM_ID= ${PORTNAME}@mozilla-enigmail.org
EM_ID_RFILES= ${XPI_LIBDIR}/${EM_ID}/install.rdf \
${XPI_LIBDIR}/${EM_ID}/components/enigmail.js \
${XPI_LIBDIR}/${EM_ID}/modules/enigmailCommon.jsm
-EXTRA_PATCHES+= ${FILESDIR}/extra-patch-mailnews-extensions-enigmail-config-getOsTarget.pl
.endif
.endif
@@ -173,6 +171,7 @@ post-patch:
${WRKSRC}/mailnews/extensions/enigmail/util/fixlang.pl \
${WRKSRC}/mailnews/extensions/enigmail/util/make-lang-xpi.pl
@${REINPLACE_CMD} -e '/^xpi/s/$$/ all/' \
+ -e '/^all/s/ xpi//' \
-e '/^XPI_MODULE_VERS/s/= .*/= ${EM_VERSION}/' \
${WRKSRC}/mailnews/extensions/enigmail/Makefile
@${REINPLACE_CMD} -e '/em:version/s,>[^<]*<,>${EM_VERSION}<,' \
diff --git a/www/seamonkey/distinfo b/www/seamonkey/distinfo
index 99f153860ac0..1ecb6b2fc7c2 100644
--- a/www/seamonkey/distinfo
+++ b/www/seamonkey/distinfo
@@ -1,4 +1,4 @@
SHA256 (seamonkey-2.26.1.source.tar.bz2) = 741d383c87cc58e38b8d5eef34033a88a4352ff7d76064914bfc05fef1c5d2f3
SIZE (seamonkey-2.26.1.source.tar.bz2) = 165537001
-SHA256 (enigmail-1.6.1_pre20140112.tar.xz) = 2d89a9186c3ccfc9397c933c6f63c0518224fea0096d7a292dba3765de088149
-SIZE (enigmail-1.6.1_pre20140112.tar.xz) = 916028
+SHA256 (enigmail-1.7.tar.gz) = cddbf35783194a4e994f9584ad5bee74750e25f690e81727ba9eccc4f814f161
+SIZE (enigmail-1.7.tar.gz) = 1414100
diff --git a/www/seamonkey/files/extra-patch-mailnews-extensions-enigmail-config-getOsTarget.pl b/www/seamonkey/files/extra-patch-mailnews-extensions-enigmail-config-getOsTarget.pl
deleted file mode 100644
index 06cc849dd649..000000000000
--- a/www/seamonkey/files/extra-patch-mailnews-extensions-enigmail-config-getOsTarget.pl
+++ /dev/null
@@ -1,53 +0,0 @@
-commit 49a1daf
-Author: Patrick Brunschwig <patrick@enigmail.net>
-Date: Tue Jan 28 18:10:54 2014 +0100
-
- fixed detection of compiler type for better supporting cross-compilers
----
- config/getOsTarget.pl | 8 +++++---
- 1 file changed, 5 insertions(+), 3 deletions(-)
-
-diff --git config/getOsTarget.pl config/getOsTarget.pl
-index 91285cd..cf4a233 100755
---- mailnews/extensions/enigmail/config/getOsTarget.pl
-+++ mailnews/extensions/enigmail/config/getOsTarget.pl
-@@ -9,13 +9,15 @@
- # -c : CPU and compiler type
- # -o : OS type
-
-+use File::Basename;
-+
- if ($#ARGV != 3) {
- exit (1);
- }
-
- my $srcOs = $ARGV[1];
- my $srcCpu = $ARGV[2];
--my $srcComp = $ARGV[3];
-+my $srcComp = basename($ARGV[3]);
-
- my $targetOs = "";
- my $targetCpu = "";
-@@ -95,10 +97,10 @@ else {
- if ($targetOs eq "WINNT") {
- $targetComp = "msvc";
- }
--if ($srcComp =~ /^gcc/) {
-+elsif ($srcComp =~ /gcc/ || $srcComp =~ /clang/) {
- $targetComp = "gcc3";
- }
--elsif ($srcComp =~ /^cc/) {
-+elsif ($srcComp =~ /cc/) {
- if ($targetOs eq "SunOS") {
- $targetComp = "sunc";
- }
-@@ -107,6 +109,9 @@ elsif ($srcComp =~ /cc/) {
- elsif ($targetOs eq "AIX") {
- $targetComp = "ibmc";
- }
-+ else {
-+ $targetComp = "gcc3";
-+ }
- }
- else {
- $targetComp = $srcComp;
diff --git a/www/seamonkey/files/patch-bug1026499 b/www/seamonkey/files/patch-bug1026499
new file mode 100644
index 000000000000..729f91a5d8d4
--- /dev/null
+++ b/www/seamonkey/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
+--- mozilla/ipc/ipdl/ipdl/cxx/ast.py
++++ mozilla/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
+--- mozilla/ipc/ipdl/ipdl/cxx/cgen.py
++++ mozilla/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
+--- mozilla/ipc/ipdl/ipdl/lower.py
++++ mozilla/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/seamonkey/files/patch-bug1026828 b/www/seamonkey/files/patch-bug1026828
new file mode 100644
index 000000000000..b52dcd4e9788
--- /dev/null
+++ b/www/seamonkey/files/patch-bug1026828
@@ -0,0 +1,20 @@
+diff --git storage/src/moz.build storage/src/moz.build
+index 4cd2551..5c40536 100644
+--- mozilla/storage/src/moz.build
++++ mozilla/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/seamonkey/files/patch-bug1041381 b/www/seamonkey/files/patch-bug1041381
new file mode 100644
index 000000000000..a6113b85f077
--- /dev/null
+++ b/www/seamonkey/files/patch-bug1041381
@@ -0,0 +1,12 @@
+diff --git config/rules.mk config/rules.mk
+index 1dee8c3..4d67eda 100644
+--- mozilla/config/rules.mk
++++ mozilla/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/seamonkey/files/patch-bug1041795 b/www/seamonkey/files/patch-bug1041795
new file mode 100644
index 000000000000..5164776bdde7
--- /dev/null
+++ b/www/seamonkey/files/patch-bug1041795
@@ -0,0 +1,48 @@
+diff --git config/rules.mk config/rules.mk
+index 4d67eda..783942f 100644
+--- mozilla/config/rules.mk
++++ mozilla/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
+--- mozilla/js/src/Makefile.in
++++ mozilla/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
+--- mozilla/probes/Makefile.in
++++ mozilla/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/seamonkey/files/patch-bug292127 b/www/seamonkey/files/patch-bug292127
new file mode 100644
index 000000000000..c20ff1d564a3
--- /dev/null
+++ b/www/seamonkey/files/patch-bug292127
@@ -0,0 +1,232 @@
+--- ldap/sdks/c-sdk/ldap/include/ldap.h~
++++ ldap/sdks/c-sdk/ldap/include/ldap.h
+@@ -40,6 +40,229 @@
+ #ifndef _LDAP_H
+ #define _LDAP_H
+
++/* rename symbols to not clash with openldap (bug 292127) */
++#define ldap_abandon moz_ldap_abandon
++#define ldap_abandon_ext moz_ldap_abandon_ext
++#define ldap_abandoned moz_ldap_abandoned
++#define ldap_add moz_ldap_add
++#define ldap_add_ext moz_ldap_add_ext
++#define ldap_add_ext_s moz_ldap_add_ext_s
++#define ldap_add_result_entry moz_ldap_add_result_entry
++#define ldap_add_s moz_ldap_add_s
++#define ldap_ber_free moz_ldap_ber_free
++#define ldap_bind moz_ldap_bind
++#define ldap_bind_s moz_ldap_bind_s
++#define ldap_build_filter moz_ldap_build_filter
++#define ldap_cache_flush moz_ldap_cache_flush
++#define ldap_charray_add moz_ldap_charray_add
++#define ldap_charray_dup moz_ldap_charray_dup
++#define ldap_charray_free moz_ldap_charray_free
++#define ldap_charray_inlist moz_ldap_charray_inlist
++#define ldap_charray_merge moz_ldap_charray_merge
++#define ldap_charray_position moz_ldap_charray_position
++#define ldap_compare moz_ldap_compare
++#define ldap_compare_ext moz_ldap_compare_ext
++#define ldap_compare_ext_s moz_ldap_compare_ext_s
++#define ldap_compare_s moz_ldap_compare_s
++#define ldap_control_free moz_ldap_control_free
++#define ldap_controls_free moz_ldap_controls_free
++#define ldap_count_entries moz_ldap_count_entries
++#define ldap_count_messages moz_ldap_count_messages
++#define ldap_count_references moz_ldap_count_references
++#define ldap_count_values moz_ldap_count_values
++#define ldap_count_values_len moz_ldap_count_values_len
++#define ldap_create_authzid_control moz_ldap_create_authzid_control
++#define ldap_create_filter moz_ldap_create_filter
++#define ldap_create_geteffectiveRights_control moz_ldap_create_geteffectiveRights_control
++#define ldap_create_passwordpolicy_control moz_ldap_create_passwordpolicy_control
++#define ldap_create_passwordpolicy_control_ext moz_ldap_create_passwordpolicy_control_ext
++#define ldap_create_persistentsearch_control moz_ldap_create_persistentsearch_control
++#define ldap_create_proxiedauth_control moz_ldap_create_proxiedauth_control
++#define ldap_create_proxyauth_control moz_ldap_create_proxyauth_control
++#define ldap_create_sort_control moz_ldap_create_sort_control
++#define ldap_create_sort_keylist moz_ldap_create_sort_keylist
++#define ldap_create_userstatus_control moz_ldap_create_userstatus_control
++#define ldap_create_virtuallist_control moz_ldap_create_virtuallist_control
++#define ldap_delete moz_ldap_delete
++#define ldap_delete_ext moz_ldap_delete_ext
++#define ldap_delete_ext_s moz_ldap_delete_ext_s
++#define ldap_delete_result_entry moz_ldap_delete_result_entry
++#define ldap_delete_s moz_ldap_delete_s
++#define ldap_dn2ufn moz_ldap_dn2ufn
++#define ldap_entry2html moz_ldap_entry2html
++#define ldap_entry2html_search moz_ldap_entry2html_search
++#define ldap_entry2text moz_ldap_entry2text
++#define ldap_entry2text_search moz_ldap_entry2text_search
++#define ldap_err2string moz_ldap_err2string
++#define ldap_errlist moz_ldap_errlist
++#define ldap_explode moz_ldap_explode
++#define ldap_explode_dn moz_ldap_explode_dn
++#define ldap_explode_dns moz_ldap_explode_dns
++#define ldap_explode_rdn moz_ldap_explode_rdn
++#define ldap_extended_operation moz_ldap_extended_operation
++#define ldap_extended_operation_s moz_ldap_extended_operation_s
++#define ldap_find_control moz_ldap_find_control
++#define ldap_first_attribute moz_ldap_first_attribute
++#define ldap_first_disptmpl moz_ldap_first_disptmpl
++#define ldap_first_entry moz_ldap_first_entry
++#define ldap_first_message moz_ldap_first_message
++#define ldap_first_reference moz_ldap_first_reference
++#define ldap_first_searchobj moz_ldap_first_searchobj
++#define ldap_first_tmplcol moz_ldap_first_tmplcol
++#define ldap_first_tmplrow moz_ldap_first_tmplrow
++#define ldap_free_friendlymap moz_ldap_free_friendlymap
++#define ldap_free_searchprefs moz_ldap_free_searchprefs
++#define ldap_free_sort_keylist moz_ldap_free_sort_keylist
++#define ldap_free_templates moz_ldap_free_templates
++#define ldap_free_urldesc moz_ldap_free_urldesc
++#define ldap_friendly_name moz_ldap_friendly_name
++#define ldap_get_dn moz_ldap_get_dn
++#define ldap_get_entry_controls moz_ldap_get_entry_controls
++#define ldap_get_lang_values moz_ldap_get_lang_values
++#define ldap_get_lang_values_len moz_ldap_get_lang_values_len
++#define ldap_get_lderrno moz_ldap_get_lderrno
++#define ldap_get_option moz_ldap_get_option
++#define ldap_get_values moz_ldap_get_values
++#define ldap_get_values_len moz_ldap_get_values_len
++#define ldap_getfilter_free moz_ldap_getfilter_free
++#define ldap_getfirstfilter moz_ldap_getfirstfilter
++#define ldap_getnextfilter moz_ldap_getnextfilter
++#define ldap_init moz_ldap_init
++#define ldap_init_getfilter moz_ldap_init_getfilter
++#define ldap_init_getfilter_buf moz_ldap_init_getfilter_buf
++#define ldap_init_searchprefs moz_ldap_init_searchprefs
++#define ldap_init_searchprefs_buf moz_ldap_init_searchprefs_buf
++#define ldap_init_templates moz_ldap_init_templates
++#define ldap_init_templates_buf moz_ldap_init_templates_buf
++#define ldap_is_dns_dn moz_ldap_is_dns_dn
++#define ldap_is_ldap_url moz_ldap_is_ldap_url
++#define ldap_keysort_entries moz_ldap_keysort_entries
++#define ldap_ld_free moz_ldap_ld_free
++#define ldap_memcache_abandon moz_ldap_memcache_abandon
++#define ldap_memcache_append moz_ldap_memcache_append
++#define ldap_memcache_createkey moz_ldap_memcache_createkey
++#define ldap_memcache_destroy moz_ldap_memcache_destroy
++#define ldap_memcache_flush moz_ldap_memcache_flush
++#define ldap_memcache_flush_results moz_ldap_memcache_flush_results
++#define ldap_memcache_get moz_ldap_memcache_get
++#define ldap_memcache_init moz_ldap_memcache_init
++#define ldap_memcache_new moz_ldap_memcache_new
++#define ldap_memcache_result moz_ldap_memcache_result
++#define ldap_memcache_set moz_ldap_memcache_set
++#define ldap_memcache_update moz_ldap_memcache_update
++#define ldap_memfree moz_ldap_memfree
++#define ldap_modify moz_ldap_modify
++#define ldap_modify_ext moz_ldap_modify_ext
++#define ldap_modify_ext_s moz_ldap_modify_ext_s
++#define ldap_modify_s moz_ldap_modify_s
++#define ldap_modrdn moz_ldap_modrdn
++#define ldap_modrdn2 moz_ldap_modrdn2
++#define ldap_modrdn2_s moz_ldap_modrdn2_s
++#define ldap_modrdn_s moz_ldap_modrdn_s
++#define ldap_mods_free moz_ldap_mods_free
++#define ldap_msgdelete moz_ldap_msgdelete
++#define ldap_msgfree moz_ldap_msgfree
++#define ldap_msgid moz_ldap_msgid
++#define ldap_msgtype moz_ldap_msgtype
++#define ldap_multisort_entries moz_ldap_multisort_entries
++#define ldap_name2template moz_ldap_name2template
++#define ldap_next_attribute moz_ldap_next_attribute
++#define ldap_next_disptmpl moz_ldap_next_disptmpl
++#define ldap_next_entry moz_ldap_next_entry
++#define ldap_next_message moz_ldap_next_message
++#define ldap_next_reference moz_ldap_next_reference
++#define ldap_next_searchobj moz_ldap_next_searchobj
++#define ldap_next_tmplcol moz_ldap_next_tmplcol
++#define ldap_next_tmplrow moz_ldap_next_tmplrow
++#define ldap_oc2template moz_ldap_oc2template
++#define ldap_open moz_ldap_open
++#define ldap_parse_authzid_control moz_ldap_parse_authzid_control
++#define ldap_parse_entrychange_control moz_ldap_parse_entrychange_control
++#define ldap_parse_extended_result moz_ldap_parse_extended_result
++#define ldap_parse_passwd moz_ldap_parse_passwd
++#define ldap_parse_passwordpolicy_control moz_ldap_parse_passwordpolicy_control
++#define ldap_parse_passwordpolicy_control_ext moz_ldap_parse_passwordpolicy_control_ext
++#define ldap_parse_reference moz_ldap_parse_reference
++#define ldap_parse_result moz_ldap_parse_result
++#define ldap_parse_sasl_bind_result moz_ldap_parse_sasl_bind_result
++#define ldap_parse_sort_control moz_ldap_parse_sort_control
++#define ldap_parse_userstatus_control moz_ldap_parse_userstatus_control
++#define ldap_parse_virtuallist_control moz_ldap_parse_virtuallist_control
++#define ldap_parse_whoami moz_ldap_parse_whoami
++#define ldap_passwd moz_ldap_passwd
++#define ldap_passwd_s moz_ldap_passwd_s
++#define ldap_passwordpolicy_err2txt moz_ldap_passwordpolicy_err2txt
++#define ldap_perror moz_ldap_perror
++#define ldap_rename moz_ldap_rename
++#define ldap_rename_s moz_ldap_rename_s
++#define ldap_result moz_ldap_result
++#define ldap_result2error moz_ldap_result2error
++#define ldap_sasl_bind moz_ldap_sasl_bind
++#define ldap_sasl_bind_s moz_ldap_sasl_bind_s
++#define ldap_sasl_interactive_bind_ext_s moz_ldap_sasl_interactive_bind_ext_s
++#define ldap_sasl_interactive_bind_s moz_ldap_sasl_interactive_bind_s
++#define ldap_search moz_ldap_search
++#define ldap_search_ext moz_ldap_search_ext
++#define ldap_search_ext_s moz_ldap_search_ext_s
++#define ldap_search_s moz_ldap_search_s
++#define ldap_search_st moz_ldap_search_st
++#define ldap_set_filter_additions moz_ldap_set_filter_additions
++#define ldap_set_lderrno moz_ldap_set_lderrno
++#define ldap_set_option moz_ldap_set_option
++#define ldap_set_rebind_proc moz_ldap_set_rebind_proc
++#define ldap_setfilteraffixes moz_ldap_setfilteraffixes
++#define ldap_simple_bind moz_ldap_simple_bind
++#define ldap_simple_bind_s moz_ldap_simple_bind_s
++#define ldap_sort_entries moz_ldap_sort_entries
++#define ldap_sort_strcasecmp moz_ldap_sort_strcasecmp
++#define ldap_sort_values moz_ldap_sort_values
++#define ldap_start_tls_s moz_ldap_start_tls_s
++#define ldap_str2charray moz_ldap_str2charray
++#define ldap_tmplattrs moz_ldap_tmplattrs
++#define ldap_tmplerr2string moz_ldap_tmplerr2string
++#define ldap_tmplerrlist moz_ldap_tmplerrlist
++#define ldap_ufn_search_c moz_ldap_ufn_search_c
++#define ldap_ufn_search_ct moz_ldap_ufn_search_ct
++#define ldap_ufn_search_ctx moz_ldap_ufn_search_ctx
++#define ldap_ufn_search_s moz_ldap_ufn_search_s
++#define ldap_ufn_setfilter moz_ldap_ufn_setfilter
++#define ldap_ufn_setprefix moz_ldap_ufn_setprefix
++#define ldap_ufn_timeout moz_ldap_ufn_timeout
++#define ldap_unbind moz_ldap_unbind
++#define ldap_unbind_ext moz_ldap_unbind_ext
++#define ldap_unbind_s moz_ldap_unbind_s
++#define ldap_url_parse moz_ldap_url_parse
++#define ldap_url_parse_no_defaults moz_ldap_url_parse_no_defaults
++#define ldap_url_search moz_ldap_url_search
++#define ldap_url_search_s moz_ldap_url_search_s
++#define ldap_url_search_st moz_ldap_url_search_st
++#define ldap_utf8characters moz_ldap_utf8characters
++#define ldap_utf8copy moz_ldap_utf8copy
++#define ldap_utf8getcc moz_ldap_utf8getcc
++#define ldap_utf8isalnum moz_ldap_utf8isalnum
++#define ldap_utf8isalpha moz_ldap_utf8isalpha
++#define ldap_utf8isdigit moz_ldap_utf8isdigit
++#define ldap_utf8isspace moz_ldap_utf8isspace
++#define ldap_utf8isxdigit moz_ldap_utf8isxdigit
++#define ldap_utf8len moz_ldap_utf8len
++#define ldap_utf8next moz_ldap_utf8next
++#define ldap_utf8prev moz_ldap_utf8prev
++#define ldap_utf8strtok_r moz_ldap_utf8strtok_r
++#define ldap_vals2html moz_ldap_vals2html
++#define ldap_vals2text moz_ldap_vals2text
++#define ldap_value_free moz_ldap_value_free
++#define ldap_value_free_len moz_ldap_value_free_len
++#define ldap_version moz_ldap_version
++#define ldap_whoami moz_ldap_whoami
++#define ldap_whoami_s moz_ldap_whoami_s
++#define ldap_x_calloc moz_ldap_x_calloc
++#define ldap_x_free moz_ldap_x_free
++#define ldap_x_hostlist_first moz_ldap_x_hostlist_first
++#define ldap_x_hostlist_next moz_ldap_x_hostlist_next
++#define ldap_x_hostlist_statusfree moz_ldap_x_hostlist_statusfree
++#define ldap_x_malloc moz_ldap_x_malloc
++#define ldap_x_realloc moz_ldap_x_realloc
++
+ /* Standard LDAP API functions and declarations */
+ #include "ldap-standard.h"
+
diff --git a/www/seamonkey/files/patch-bug702179 b/www/seamonkey/files/patch-bug702179
new file mode 100644
index 000000000000..5f90f96d19ae
--- /dev/null
+++ b/www/seamonkey/files/patch-bug702179
@@ -0,0 +1,51 @@
+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
+--- mozilla/configure.in
++++ mozilla/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/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
+--- mozilla/js/src/Makefile.in
++++ mozilla/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 suite/build/Makefile.in suite/build/Makefile.in
+index 66549c1..75b848d 100644
+--- suite/build/Makefile.in
++++ suite/build/Makefile.in
+@@ -33,6 +33,10 @@ EXTRA_DSO_LDOPTS += \
+ $(TK_LIBS) \
+ $(NULL)
+
++ifndef ZLIB_IN_MOZGLUE
++EXTRA_DSO_LDOPTS += $(MOZ_ZLIB_LIBS)
++endif
++
+ include $(topsrcdir)/config/rules.mk
+
+ # Ensure that we don't embed a manifest referencing the CRT.
diff --git a/www/seamonkey/files/patch-bug779713 b/www/seamonkey/files/patch-bug779713
new file mode 100644
index 000000000000..cb721cba24a4
--- /dev/null
+++ b/www/seamonkey/files/patch-bug779713
@@ -0,0 +1,77 @@
+diff --git mfbt/Alignment.h mfbt/Alignment.h
+index e0843ca..353ec36 100644
+--- mozilla/mfbt/Alignment.h
++++ mozilla/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
+--- mozilla/mfbt/Attributes.h
++++ mozilla/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/seamonkey/files/patch-mozilla-ipc-chromium-Makefile.in b/www/seamonkey/files/patch-mozilla-ipc-chromium-Makefile.in
deleted file mode 100644
index 727a86a4c3bc..000000000000
--- a/www/seamonkey/files/patch-mozilla-ipc-chromium-Makefile.in
+++ /dev/null
@@ -1,13 +0,0 @@
---- mozilla/ipc/chromium/Makefile.in~
-+++ mozilla/ipc/chromium/Makefile.in
-@@ -55,9 +60,7 @@ vpath %.c \
- $(srcdir)/src/third_party/libevent \
- $(NULL)
- else # } else {
--# message_pump_libevent.cc includes third_party/libevent/event.h,
--# which we put in $(DIST), see export rule below
--LOCAL_INCLUDES += -I$(DIST)
-+LOCAL_INCLUDES += $(filter %/compat, $(MOZ_LIBEVENT_CFLAGS))
- endif # }
-
- vpath %.cc \
diff --git a/www/seamonkey/files/patch-mozilla-ipc-chromium-src-base-message_pump_libevent.cc b/www/seamonkey/files/patch-mozilla-ipc-chromium-src-base-message_pump_libevent.cc
deleted file mode 100644
index ba9c0d6d3416..000000000000
--- a/www/seamonkey/files/patch-mozilla-ipc-chromium-src-base-message_pump_libevent.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- mozilla/ipc/chromium/src/base/message_pump_libevent.cc~
-+++ mozilla/ipc/chromium/src/base/message_pump_libevent.cc
-@@ -16,7 +16,7 @@
- #include "base/scoped_ptr.h"
- #include "base/time.h"
- #include "nsDependentSubstring.h"
--#include "third_party/libevent/event.h"
-+#include "event.h"
-
- // Lifecycle of struct event
- // Libevent uses two main data structures: