aboutsummaryrefslogtreecommitdiffstats
path: root/mail/thunderbird-esr
diff options
context:
space:
mode:
Diffstat (limited to 'mail/thunderbird-esr')
-rw-r--r--mail/thunderbird-esr/Makefile71
-rw-r--r--mail/thunderbird-esr/distinfo6
-rw-r--r--mail/thunderbird-esr/files/patch-bug35118128
-rw-r--r--mail/thunderbird-esr/files/patch-bug54324111
-rw-r--r--mail/thunderbird-esr/files/patch-bug7530463
-rw-r--r--mail/thunderbird-esr/files/patch-bug78147411
-rw-r--r--mail/thunderbird-esr/files/patch-bug785638168
-rw-r--r--mail/thunderbird-esr/files/patch-bug78810820
-rw-r--r--mail/thunderbird-esr/files/patch-bug78943627
-rw-r--r--mail/thunderbird-esr/files/patch-bug789693108
-rw-r--r--mail/thunderbird-esr/files/patch-bug791305107
-rw-r--r--mail/thunderbird-esr/files/patch-bug791366124
-rw-r--r--mail/thunderbird-esr/files/patch-clang32-libc++-visibility-hack57
-rw-r--r--mail/thunderbird-esr/files/patch-clang32-visibility-hack30
-rw-r--r--mail/thunderbird-esr/files/patch-mozilla-extensions-spellcheck-hunspell-src-mozHunspell.cpp15
-rw-r--r--mail/thunderbird-esr/files/patch-mozilla_toolkit_xre_glxtest.cpp25
16 files changed, 513 insertions, 298 deletions
diff --git a/mail/thunderbird-esr/Makefile b/mail/thunderbird-esr/Makefile
index b9299623ddf5..0930420585ac 100644
--- a/mail/thunderbird-esr/Makefile
+++ b/mail/thunderbird-esr/Makefile
@@ -6,21 +6,24 @@
#
PORTNAME= thunderbird
-DISTVERSION= 10.0.7
+DISTVERSION= 10.0.8
CATEGORIES= mail ipv6
MASTER_SITES= ${MASTER_SITE_MOZILLA}
MASTER_SITE_SUBDIR= ${PORTNAME}/releases/${DISTVERSION}esr/source
-DISTNAME= ${PORTNAME}-${DISTVERSION}esr.source
+DISTFILES= ${PORTNAME}-${DISTVERSION}esr.source${EXTRACT_SUFX}
+EXTRACT_ONLY= ${PORTNAME}-${DISTVERSION}esr.source${EXTRACT_SUFX}
MAINTAINER= gecko@FreeBSD.org
COMMENT= Mozilla Thunderbird is standalone mail and news that stands above
BUILD_DEPENDS= nspr>=4.8.8:${PORTSDIR}/devel/nspr \
- nss>=3.13.1:${PORTSDIR}/security/nss \
+ nss>=3.13.6_1:${PORTSDIR}/security/nss \
sqlite3>=3.7.7.1:${PORTSDIR}/databases/sqlite3 \
cairo>=1.10.2_1,1:${PORTSDIR}/graphics/cairo \
unzip:${PORTSDIR}/archivers/unzip
+EM_VERSION= 1.4.5
+
USE_AUTOTOOLS= autoconf213:env
LATEST_LINK= thunderbird-esr
USE_GECKO= gecko
@@ -51,7 +54,8 @@ PORTNAME_ICON_SRC= ${PREFIX}/lib/${MOZILLA}/chrome/icons/default/default48.png
SYSTEM_PREFS= ${FAKEDIR}/lib/${PORTNAME}/defaults/pref/${PORTNAME}.js
MOZ_PIS_SCRIPTS=moz_pis_S50cleanhome
-OPTIONS_DEFINE= LIGHTNING
+OPTIONS_DEFINE= ENIGMAIL LIGHTNING
+OPTIONS_DEFAULT=ENIGMAIL LIGHTNING
.include "${.CURDIR}/../../www/firefox/Makefile.options"
.include <bsd.port.pre.mk>
@@ -59,6 +63,8 @@ OPTIONS_DEFINE= LIGHTNING
WRKSRC= ${WRKDIR}/comm-esr10
MOZSRC:= ${WRKSRC}/mozilla
+XPI_LIBDIR= ${PREFIX}/lib/xpi
+
.if ${ARCH} == amd64
CONFIGURE_TARGET=x86_64-portbld-freebsd${OSREL}
.elif ${ARCH} == powerpc64
@@ -78,12 +84,25 @@ BUILD_DEPENDS+= yasm:${PORTSDIR}/devel/yasm
CFLAGS+= -Wno-return-type-c-linkage
.endif
+.if ${PORT_OPTIONS:MENIGMAIL}
+MASTER_SITES+= http://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.gz
+EM_XPI_FILE= ${MOZ_OBJDIR}/mozilla/dist/bin/${EM_DISTNAME}-freebsd-${ARCH:S/amd64/x86_64/}.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
+.endif
+
.if ${PORT_OPTIONS:MLIGHTNING}
MOZ_OPTIONS+= --enable-calendar
MOZ_MK_OPTIONS+= MOZ_CO_PROJECT=calendar
LIGHTNING_DIR= share/lightning
XPI_FILE= ${MOZ_OBJDIR}/mozilla/dist/xpi-stage/lightning.xpi
-XPI_LIBDIR= ${PREFIX}/lib/xpi
XPI_ORIG_ID= {e2fda1a4-762b-4020-b5ad-a41df1933103}
XPI_ID= lightning@thunderbird.mozilla.org
.else
@@ -93,16 +112,38 @@ MOZ_OPTIONS+= --disable-calendar
post-extract:
@${SED} -e 's|@PORTNAME_ICON@|${PORTNAME_ICON}|;s|@MOZILLA@|${MOZILLA}|' \
<${FILESDIR}/thunderbird.desktop.in >${WRKDIR}/${MOZILLA_EXEC_NAME}.desktop
+.if ${PORT_OPTIONS:MENIGMAIL}
+ @${TAR} -xf ${_DISTDIR}/${EM_DISTFILE} \
+ -C ${WRKSRC}/mailnews/extensions
+.endif
post-patch:
@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
${WRKSRC}/mail/app/nsMailApp.cpp
+.if ${PORT_OPTIONS:MENIGMAIL}
+ @${REINPLACE_CMD} -e 's,/usr/bin/perl,${PERL},' \
+ ${WRKSRC}/mailnews/extensions/enigmail/makemake
+ @${REINPLACE_CMD} -e '/^xpi/s/$$/ all/' \
+ -e '/^XPI_MODULE_VERS/s/= .*/= ${EM_VERSION}/' \
+ ${WRKSRC}/mailnews/extensions/enigmail/Makefile.in
+ @${REINPLACE_CMD} -e '/em:version/s,>[^<]*<,>${EM_VERSION}<,' \
+ -e '/em:maxVersion/s/pre//' \
+ ${WRKSRC}/mailnews/extensions/enigmail/package/install.rdf
+.endif
pre-configure:
(cd ${WRKSRC} && ${AUTOCONF})
(cd ${MOZSRC} && ${AUTOCONF})
(cd ${MOZSRC}/js/src/ && ${AUTOCONF})
+.if ${PORT_OPTIONS:MENIGMAIL}
+post-build:
+ cd ${WRKSRC}/mailnews/extensions/enigmail && \
+ ./makemake -r -o ${MOZ_OBJDIR}
+ ${SETENV} ${MAKE_ENV} ${GMAKE} ${_MAKE_JOBS} all xpi \
+ -C ${MOZ_OBJDIR}/mailnews/extensions/enigmail
+.endif
+
port-pre-install:
${MKDIR} ${FAKEDIR}/lib/${PORTNAME}/defaults
@@ -130,7 +171,25 @@ post-install:
@${ECHO_CMD} '@unexec ${RM} -f ${LOCALBASE}/lib/thunderbird/extensions/${XPI_ID}' >> ${TMPPLIST}
@(cd ${XPI_LIBDIR}; ${FIND} ${XPI_ID} -type d) | ${SORT} -r | \
${SED} -ne 's,^,@dirrm lib/xpi/,p' >> ${TMPPLIST}
- @${ECHO_CMD} '@unexec rmdir %D/lib/xpi/symlinks/thunderbird 2>/dev/null || true' >> ${TMPPLIST}
+.endif
+.if ${PORT_OPTIONS:MENIGMAIL}
+ @${MKDIR} ${XPI_LIBDIR}/${EM_ID} ${XPI_LIBDIR}/symlinks/${PORTNAME}
+ @(cd ${XPI_LIBDIR}/${EM_ID}; ${TAR} -xf ${EM_XPI_FILE})
+ @${CHOWN} -R ${SHAREOWN}:${SHAREGRP} ${XPI_LIBDIR}/${EM_ID}
+ @${REINPLACE_CMD} -i "" "s/${EM_ORIG_ID}/${EM_ID}/" ${EM_ID_RFILES}
+ @${CHMOD} -R a+rX,go-w ${XPI_LIBDIR}/${EM_ID}
+ @${LN} -sf ${XPI_LIBDIR}/${EM_ID} ${LOCALBASE}/lib/${PORTNAME}/extensions 2>/dev/null || true
+ @${LN} -sf ${XPI_LIBDIR}/${EM_ID} ${XPI_LIBDIR}/symlinks/${PORTNAME} 2>/dev/null || true
+ @(cd ${XPI_LIBDIR}; ${FIND} ${EM_ID} -not -type d) | ${SORT} | \
+ ${SED} -ne 's,^,lib/xpi/,p' >> ${TMPPLIST}
+ @${ECHO_CMD} 'lib/xpi/symlinks/${PORTNAME}/${EM_ID}' >> ${TMPPLIST}
+ @${ECHO_CMD} '@exec ${LN} -sf %D/lib/xpi/${EM_ID} ${LOCALBASE}/lib/${PORTNAME}/extensions 2>/dev/null || true' >> ${TMPPLIST}
+ @${ECHO_CMD} '@unexec ${RM} -f ${LOCALBASE}/lib/${PORTNAME}/extensions/${EM_ID}' >> ${TMPPLIST}
+ @(cd ${XPI_LIBDIR}; ${FIND} ${EM_ID} -type d) | ${SORT} -r | \
+ ${SED} -ne 's,^,@dirrm lib/xpi/,p' >> ${TMPPLIST}
+.endif
+.if ${PORT_OPTIONS:MLIGHTNING} || ${PORT_OPTIONS:MENIGMAIL}
+ @${ECHO_CMD} '@unexec rmdir %D/lib/xpi/symlinks/${PORTNAME} 2>/dev/null || true' >> ${TMPPLIST}
@${ECHO_CMD} '@unexec rmdir %D/lib/xpi/symlinks 2>/dev/null || true' >> ${TMPPLIST}
@${ECHO_CMD} '@unexec rmdir %D/lib/xpi 2>/dev/null || true' >> ${TMPPLIST}
.endif
diff --git a/mail/thunderbird-esr/distinfo b/mail/thunderbird-esr/distinfo
index b9363cb1d1a8..5daa78ce2bd4 100644
--- a/mail/thunderbird-esr/distinfo
+++ b/mail/thunderbird-esr/distinfo
@@ -1,2 +1,4 @@
-SHA256 (thunderbird-10.0.7esr.source.tar.bz2) = 994ca16a01e4446747b54b1b5fb2bda11aec2c92359571bffa0f6c8e45f27c35
-SIZE (thunderbird-10.0.7esr.source.tar.bz2) = 97590919
+SHA256 (thunderbird-10.0.8esr.source.tar.bz2) = 9575f9f97fab48d36b3a24040db83fb9b92de913b3689e9910afaf39a486fbbd
+SIZE (thunderbird-10.0.8esr.source.tar.bz2) = 97594384
+SHA256 (enigmail-1.4.5.tar.gz) = fa59491fba21de9414a003933349074a8ec1833a1d64cac9f0a9f7020ed6c020
+SIZE (enigmail-1.4.5.tar.gz) = 1269207
diff --git a/mail/thunderbird-esr/files/patch-bug351181 b/mail/thunderbird-esr/files/patch-bug351181
deleted file mode 100644
index c52535eaca09..000000000000
--- a/mail/thunderbird-esr/files/patch-bug351181
+++ /dev/null
@@ -1,28 +0,0 @@
---- mozilla/js/src/jsnum.cpp.orig Sun Nov 5 18:37:07 2006
-+++ mozilla/js/src/jsnum.cpp Sun Nov 5 18:42:31 2006
-@@ -45,6 +45,9 @@
- #if defined(XP_WIN) || defined(XP_OS2)
- #include <float.h>
- #endif
-+#if defined(__FreeBSD__)
-+#include <sys/param.h>
-+#endif
- #include <locale.h>
- #include <limits.h>
- #include <math.h>
-@@ -532,7 +535,15 @@ static jsdouble NaN;
-
- #else
-
-+#if defined(__FreeBSD__) && __FreeBSD_version >= 601000
-+#include <fenv.h>
-+#define FIX_FPU() (fedisableexcept(FE_ALL_EXCEPT))
-+
-+#else
-+
- #define FIX_FPU() ((void)0)
-+
-+#endif /* defined(__FreeBSD__) && __FreeBSD_version >= 503000 */
-
- #endif
-
diff --git a/mail/thunderbird-esr/files/patch-bug543241 b/mail/thunderbird-esr/files/patch-bug543241
index 36f97229af92..6e4afce640ae 100644
--- a/mail/thunderbird-esr/files/patch-bug543241
+++ b/mail/thunderbird-esr/files/patch-bug543241
@@ -1,5 +1,16 @@
--- ./mozilla/xpcom/threads/nsThreadManager.cpp.orig 2011-08-25 02:37:45.000000000 +0200
+++ ./mozilla/xpcom/threads/nsThreadManager.cpp 2011-08-28 17:14:14.000000000 +0200
+@@ -12,6 +12,10 @@
+ #include "nsAutoPtr.h"
+ #include "nsCycleCollectorUtils.h"
+
++#if defined(__FreeBSD__)
++#include <osreldate.h>
++#endif
++
+ using namespace mozilla;
+
+ #ifdef XP_WIN
@@ -89,6 +89,11 @@
nsresult
nsThreadManager::Init()
diff --git a/mail/thunderbird-esr/files/patch-bug753046 b/mail/thunderbird-esr/files/patch-bug753046
index 7aff5f1c2a22..63700c2f41d8 100644
--- a/mail/thunderbird-esr/files/patch-bug753046
+++ b/mail/thunderbird-esr/files/patch-bug753046
@@ -451,7 +451,7 @@ $NetBSD: patch-ipc_chromium_src_base_platform__thread.h,v 1.1 2012/03/06 12:34:0
--- mozilla/ipc/chromium/src/base/platform_thread.h.orig 2011-12-20 23:28:19.000000000 +0000
+++ mozilla/ipc/chromium/src/base/platform_thread.h
-@@ -22,9 +22,11 @@ typedef void* PlatformThreadHandle; // HANDLE
+@@ -22,9 +22,12 @@ typedef void* PlatformThreadHandle; // HANDLE
#elif defined(OS_POSIX)
#include <pthread.h>
typedef pthread_t PlatformThreadHandle;
@@ -460,6 +460,7 @@ $NetBSD: patch-ipc_chromium_src_base_platform__thread.h,v 1.1 2012/03/06 12:34:0
#include <unistd.h>
typedef pid_t PlatformThreadId;
+#elif defined(OS_BSD)
++#include <sys/types.h>
+typedef lwpid_t PlatformThreadId;
#elif defined(OS_MACOSX)
#include <mach/mach.h>
diff --git a/mail/thunderbird-esr/files/patch-bug781474 b/mail/thunderbird-esr/files/patch-bug781474
deleted file mode 100644
index 358d40c1f988..000000000000
--- a/mail/thunderbird-esr/files/patch-bug781474
+++ /dev/null
@@ -1,11 +0,0 @@
---- mozilla/content/base/public/nsContentUtils.h.orig 2011-07-07 10:44:49.000000000 +0200
-+++ mozilla/content/base/public/nsContentUtils.h 2011-07-07 10:46:12.000000000 +0200
-@@ -54,7 +54,7 @@
- //A trick to handle IEEE floating point exceptions on FreeBSD - E.D.
- #ifdef __FreeBSD__
- #include <ieeefp.h>
--#ifdef __alpha__
-+#if !defined(__amd64__) && !defined(__i386__)
- static fp_except_t allmask = FP_X_INV|FP_X_OFL|FP_X_UFL|FP_X_DZ|FP_X_IMP;
- #else
- static fp_except_t allmask = FP_X_INV|FP_X_OFL|FP_X_UFL|FP_X_DZ|FP_X_IMP|FP_X_DNML;
diff --git a/mail/thunderbird-esr/files/patch-bug785638 b/mail/thunderbird-esr/files/patch-bug785638
deleted file mode 100644
index 99632c6b496f..000000000000
--- a/mail/thunderbird-esr/files/patch-bug785638
+++ /dev/null
@@ -1,168 +0,0 @@
-diff --git configure.in configure.in
-index cef992b..3bd39ca 100644
---- mozilla/configure.in
-+++ mozilla/configure.in
-@@ -5353,22 +5353,6 @@ if test -n "$MOZ_VP8" -a -z "$MOZ_NATIVE_LIBVPX"; then
-
- dnl See if we have assembly on this platform.
- case "$OS_ARCH:$CPU_ARCH" in
-- Linux:x86)
-- VPX_ASFLAGS="-f elf32 -rnasm -pnasm"
-- VPX_X86_ASM=1
-- ;;
-- Linux:x86_64)
-- VPX_ASFLAGS="-f elf64 -rnasm -pnasm -DPIC"
-- VPX_X86_ASM=1
-- ;;
-- SunOS:x86)
-- VPX_ASFLAGS="-f elf32 -rnasm -pnasm"
-- VPX_X86_ASM=1
-- ;;
-- SunOS:x86_64)
-- VPX_ASFLAGS="-f elf64 -rnasm -pnasm -DPIC"
-- VPX_X86_ASM=1
-- ;;
- Darwin:x86)
- VPX_ASFLAGS="-f macho32 -rnasm -pnasm -DPIC"
- VPX_X86_ASM=1
-@@ -5412,6 +5388,19 @@ if test -n "$MOZ_VP8" -a -z "$MOZ_NATIVE_LIBVPX"; then
- VPX_ASM_SUFFIX="$ASM_SUFFIX"
- VPX_ARM_ASM=1
- fi
-+ ;;
-+ *:x86)
-+ if $CC -E -dM -</dev/null | grep -q __ELF__; then
-+ VPX_ASFLAGS="-f elf32 -rnasm -pnasm"
-+ VPX_X86_ASM=1
-+ fi
-+ ;;
-+ *:x86_64)
-+ if $CC -E -dM -</dev/null | grep -q __ELF__; then
-+ VPX_ASFLAGS="-f elf64 -rnasm -pnasm -DPIC"
-+ VPX_X86_ASM=1
-+ fi
-+ ;;
- esac
-
- if test -n "$COMPILE_ENVIRONMENT" -a -n "$VPX_X86_ASM" -a -z "$VPX_AS"; then
-@@ -5843,22 +5832,6 @@ if test -n "$MOZ_LIBJPEG_TURBO"; then
-
- dnl Do we support libjpeg-turbo on this platform?
- case "$OS_ARCH:$OS_TEST" in
-- Linux:x86|Linux:i?86)
-- LIBJPEG_TURBO_ASFLAGS="-f elf32 -rnasm -pnasm -DPIC -DELF"
-- LIBJPEG_TURBO_X86_ASM=1
-- ;;
-- Linux:x86_64)
-- LIBJPEG_TURBO_ASFLAGS="-f elf64 -rnasm -pnasm -D__x86_64__ -DPIC -DELF"
-- LIBJPEG_TURBO_X64_ASM=1
-- ;;
-- SunOS:i?86)
-- LIBJPEG_TURBO_ASFLAGS="-f elf32 -rnasm -pnasm -DPIC -DELF"
-- LIBJPEG_TURBO_X86_ASM=1
-- ;;
-- SunOS:x86_64)
-- LIBJPEG_TURBO_ASFLAGS="-f elf64 -rnasm -pnasm -D__x86_64__ -DPIC -DELF"
-- LIBJPEG_TURBO_X64_ASM=1
-- ;;
- Darwin:i?86)
- LIBJPEG_TURBO_ASFLAGS="-f macho32 -rnasm -pnasm -DPIC -DMACHO"
- LIBJPEG_TURBO_X86_ASM=1
-@@ -5879,6 +5852,18 @@ if test -n "$MOZ_LIBJPEG_TURBO"; then
- LIBJPEG_TURBO_ASFLAGS="-march=armv7-a -mfpu=neon"
- LIBJPEG_TURBO_ARM_ASM=1
- ;;
-+ *:x86|*:i?86)
-+ if $CC -E -dM -</dev/null | grep -q __ELF__; then
-+ LIBJPEG_TURBO_ASFLAGS="-f elf32 -rnasm -pnasm -DPIC -DELF"
-+ LIBJPEG_TURBO_X86_ASM=1
-+ fi
-+ ;;
-+ *:x86_64)
-+ if $CC -E -dM -</dev/null | grep -q __ELF__; then
-+ LIBJPEG_TURBO_ASFLAGS="-f elf64 -rnasm -pnasm -D__x86_64__ -DPIC -DELF"
-+ LIBJPEG_TURBO_X64_ASM=1
-+ fi
-+ ;;
- esac
-
- fi
-diff --git media/libvpx/update.sh media/libvpx/update.sh
-index 79e0fb1..51956af 100755
---- mozilla/media/libvpx/update.sh
-+++ mozilla/media/libvpx/update.sh
-@@ -363,12 +363,12 @@ cp $1/objdir/x86-win32-vs8/vpx_config.h vpx_config_x86-win32-vs8.h
- # Should be same for all platforms...
- cp $1/objdir/x86-win32-vs8/vpx_version.h vpx_version.h
-
--# Config files for x86-linux-gcc and Solaris x86
-+# Config files for x86-linux-gcc and other x86 elf platforms
- cp $1/objdir/x86-linux-gcc/vpx_config.c vpx_config_x86-linux-gcc.c
- cp $1/objdir/x86-linux-gcc/vpx_config.asm vpx_config_x86-linux-gcc.asm
- cp $1/objdir/x86-linux-gcc/vpx_config.h vpx_config_x86-linux-gcc.h
-
--# Config files for x86_64-linux-gcc and Solaris x86_64
-+# Config files for x86_64-linux-gcc and other x86_64 elf platforms
- cp $1/objdir/x86_64-linux-gcc/vpx_config.c vpx_config_x86_64-linux-gcc.c
- cp $1/objdir/x86_64-linux-gcc/vpx_config.asm vpx_config_x86_64-linux-gcc.asm
- cp $1/objdir/x86_64-linux-gcc/vpx_config.h vpx_config_x86_64-linux-gcc.h
-diff --git media/libvpx/vpx_config.h media/libvpx/vpx_config.h
-index 55433f3..36e1780 100644
---- mozilla/media/libvpx/vpx_config.h
-+++ mozilla/media/libvpx/vpx_config.h
-@@ -16,20 +16,12 @@
- /* 32 bit MacOS. */
- #include "vpx_config_x86-darwin9-gcc.h"
-
--#elif defined(__linux__) && defined(__i386__)
--/* 32 bit Linux. */
-+#elif defined(__ELF__) && (defined(__i386) || defined(__i386__))
-+/* 32 bit ELF platforms. */
- #include "vpx_config_x86-linux-gcc.h"
-
--#elif defined(__linux__) && defined(__x86_64__)
--/* 64 bit Linux. */
--#include "vpx_config_x86_64-linux-gcc.h"
--
--#elif defined(__sun) && defined(__i386)
--/* 32 bit Solaris. */
--#include "vpx_config_x86-linux-gcc.h"
--
--#elif defined(__sun) && defined(__x86_64)
--/* 64 bit Solaris. */
-+#elif defined(__ELF__) && (defined(__x86_64) || defined(__x86_64__))
-+/* 64 bit ELF platforms. */
- #include "vpx_config_x86_64-linux-gcc.h"
-
- #else
-diff --git media/libvpx/vpx_config_c.c media/libvpx/vpx_config_c.c
-index eedd515..c8b5375 100644
---- mozilla/media/libvpx/vpx_config_c.c
-+++ mozilla/media/libvpx/vpx_config_c.c
-@@ -12,22 +12,14 @@
- /* 32 bit MacOS. */
- #include "vpx_config_x86-darwin9-gcc.c"
-
--#elif defined(__linux__) && defined(__i386__)
--/* 32 bit Linux. */
-+#elif defined(__ELF__) && (defined(__i386) || defined(__i386__))
-+/* 32 bit ELF platforms. */
- #include "vpx_config_x86-linux-gcc.c"
-
--#elif defined(__linux__) && defined(__x86_64__)
--/* 64 bit Linux. */
-+#elif defined(__ELF__) && (defined(__x86_64) || defined(__x86_64__))
-+/* 64 bit ELF platforms. */
- #include "vpx_config_x86_64-linux-gcc.c"
-
--#elif defined(__sun) && defined(__i386)
--/* 32 bit Solaris. */
--#include "vpx_config_x86-linux-gcc.h"
--
--#elif defined(__sun) && defined(__x86_64)
--/* 64 bit Solaris. */
--#include "vpx_config_x86_64-linux-gcc.h"
--
- #elif defined(_MSC_VER) && defined(_M_X64)
- #include "vpx_config_x86_64-win64-vs8.c"
-
diff --git a/mail/thunderbird-esr/files/patch-bug788108 b/mail/thunderbird-esr/files/patch-bug788108
new file mode 100644
index 000000000000..db2399499397
--- /dev/null
+++ b/mail/thunderbird-esr/files/patch-bug788108
@@ -0,0 +1,20 @@
+--- mozilla/content/base/public/nsContentUtils.h~
++++ mozilla/content/base/public/nsContentUtils.h
+@@ -18,17 +18,6 @@
+ #include <ieeefp.h>
+ #endif
+
+-//A trick to handle IEEE floating point exceptions on FreeBSD - E.D.
+-#ifdef __FreeBSD__
+-#include <ieeefp.h>
+-#ifdef __alpha__
+-static fp_except_t allmask = FP_X_INV|FP_X_OFL|FP_X_UFL|FP_X_DZ|FP_X_IMP;
+-#else
+-static fp_except_t allmask = FP_X_INV|FP_X_OFL|FP_X_UFL|FP_X_DZ|FP_X_IMP|FP_X_DNML;
+-#endif
+-static fp_except_t oldmask = fpsetmask(~allmask);
+-#endif
+-
+ #include "nsAString.h"
+ #include "nsIStatefulFrame.h"
+ #include "nsNodeInfoManager.h"
diff --git a/mail/thunderbird-esr/files/patch-bug789436 b/mail/thunderbird-esr/files/patch-bug789436
new file mode 100644
index 000000000000..2479d8e69c78
--- /dev/null
+++ b/mail/thunderbird-esr/files/patch-bug789436
@@ -0,0 +1,27 @@
+--- mozilla/toolkit/xre/nsAppRunner.cpp~
++++ mozilla/toolkit/xre/nsAppRunner.cpp
+@@ -1388,11 +1388,6 @@ static int MSCRTReportHook( int aReportType, char *aMessage, int *oReturnValue)
+
+ #endif
+
+-#if defined(FREEBSD)
+-// pick up fpsetmask prototype.
+-#include <ieeefp.h>
+-#endif
+-
+ static inline void
+ DumpVersion()
+ {
+@@ -4136,12 +4131,5 @@ SetupErrorHandling(const char* progname)
+
+ // Unbuffer stdout, needed for tinderbox tests.
+ setbuf(stdout, 0);
+-
+-#if defined(FREEBSD)
+- // Disable all SIGFPE's on FreeBSD, as it has non-IEEE-conformant fp
+- // trap behavior that trips up on floating-point tests performed by
+- // the JS engine. See bugzilla bug 9967 details.
+- fpsetmask(0);
+-#endif
+ }
+
diff --git a/mail/thunderbird-esr/files/patch-bug789693 b/mail/thunderbird-esr/files/patch-bug789693
new file mode 100644
index 000000000000..82b76c8d0a7c
--- /dev/null
+++ b/mail/thunderbird-esr/files/patch-bug789693
@@ -0,0 +1,108 @@
+--- mozilla/toolkit/components/startup/nsAppStartup.cpp
++++ mozilla/toolkit/components/startup/nsAppStartup.cpp
+@@ -50,17 +50,40 @@
+ #include <sys/syscall.h>
+ #endif
+
+-#ifdef XP_MACOSX
++#if defined(XP_MACOSX) || defined(__DragonFly__) || defined(__FreeBSD__) \
++ || defined(__NetBSD__) || defined(__OpenBSD__)
++#include <sys/param.h>
+ #include <sys/sysctl.h>
+ #endif
+
+-#ifdef __OpenBSD__
+-#include <sys/param.h>
+-#include <sys/sysctl.h>
++#if defined(__DragonFly__) || defined(__FreeBSD__)
++#include <sys/user.h>
+ #endif
+
+ #include "mozilla/Telemetry.h"
+
++#if defined(__NetBSD__)
++#undef KERN_PROC
++#define KERN_PROC KERN_PROC2
++#define KINFO_PROC struct kinfo_proc2
++#else
++#define KINFO_PROC struct kinfo_proc
++#endif
++
++#if defined(XP_MACOSX)
++#define KP_START_SEC kp_proc.p_un.__p_starttime.tv_sec
++#define KP_START_USEC kp_proc.p_un.__p_starttime.tv_usec
++#elif defined(__DragonFly__)
++#define KP_START_SEC kp_start.tv_sec
++#define KP_START_USEC kp_start.tv_usec
++#elif defined(__FreeBSD__)
++#define KP_START_SEC ki_start.tv_sec
++#define KP_START_USEC ki_start.tv_usec
++#else
++#define KP_START_SEC p_ustart_sec
++#define KP_START_USEC p_ustart_usec
++#endif
++
+ static NS_DEFINE_CID(kAppShellCID, NS_APPSHELL_CID);
+
+ using namespace mozilla;
+@@ -836,42 +859,30 @@ CalculateProcessCreationTimestamp()
+ #endif
+ return timestamp;
+ }
+-#elif defined(XP_MACOSX)
++#elif defined(XP_MACOSX) || defined(__DragonFly__) || defined(__FreeBSD__) \
++ || defined(__NetBSD__) || defined(__OpenBSD__)
+ static PRTime
+ CalculateProcessCreationTimestamp()
+ {
+- int mib[4] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, getpid() };
+- size_t buffer_size;
+- if (sysctl(mib, 4, NULL, &buffer_size, NULL, 0))
+- return 0;
++ int mib[] = {
++ CTL_KERN,
++ KERN_PROC,
++ KERN_PROC_PID,
++ getpid(),
++#if defined(__NetBSD__) || defined(__OpenBSD__)
++ sizeof(KINFO_PROC),
++ 1,
++#endif
++ };
++ u_int miblen = sizeof(mib) / sizeof(mib[0]);
+
+- struct kinfo_proc *proc = (kinfo_proc*) malloc(buffer_size);
+- if (sysctl(mib, 4, proc, &buffer_size, NULL, 0)) {
+- free(proc);
+- return 0;
+- }
+- PRTime starttime = static_cast<PRTime>(proc->kp_proc.p_un.__p_starttime.tv_sec) * PR_USEC_PER_SEC;
+- starttime += proc->kp_proc.p_un.__p_starttime.tv_usec;
+- free(proc);
+- return starttime;
+-}
+-#elif defined(__OpenBSD__)
+-static PRTime
+-CalculateProcessCreationTimestamp()
+-{
+- int mib[6] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, getpid(), sizeof(struct kinfo_proc), 1 };
+- size_t buffer_size;
+- if (sysctl(mib, 6, NULL, &buffer_size, NULL, 0))
++ KINFO_PROC proc;
++ size_t buffer_size = sizeof(proc);
++ if (sysctl(mib, miblen, &proc, &buffer_size, NULL, 0))
+ return 0;
+
+- struct kinfo_proc *proc = (struct kinfo_proc*) malloc(buffer_size);
+- if (sysctl(mib, 6, proc, &buffer_size, NULL, 0)) {
+- free(proc);
+- return 0;
+- }
+- PRTime starttime = static_cast<PRTime>(proc->p_ustart_sec) * PR_USEC_PER_SEC;
+- starttime += proc->p_ustart_usec;
+- free(proc);
++ PRTime starttime = static_cast<PRTime>(proc.KP_START_SEC) * PR_USEC_PER_SEC;
++ starttime += proc.KP_START_USEC;
+ return starttime;
+ }
+ #else
diff --git a/mail/thunderbird-esr/files/patch-bug791305 b/mail/thunderbird-esr/files/patch-bug791305
new file mode 100644
index 000000000000..e4c44a405f57
--- /dev/null
+++ b/mail/thunderbird-esr/files/patch-bug791305
@@ -0,0 +1,107 @@
+commit c269a16
+Author: Jeff Muizelaar <jmuizelaar@mozilla.com>
+Date: Fri Sep 14 15:54:55 2012 -0400
+
+ Bug 791305. Use libjpeg's color conversion code instead of our own. r=joe,r=khuey
+
+ libjpeg-turbo supports converting directly to a format compatible with cairo's
+ FORMAT_RGB24. Use that instead of our own handcoded function. This also gives
+ us SSE2 and NEON version of this function.
+
+ --HG--
+ extra : rebase_source : 18f48925f023a33ec2a097d4f4e5cc2ab40be1e9
+---
+ configure.in | 6 +-
+ image/decoders/nsJPEGDecoder.cpp | 311 ++-------------------------------------
+ 2 files changed, 20 insertions(+), 297 deletions(-)
+
+diff --git mozilla/image/decoders/nsJPEGDecoder.cpp mozilla/image/decoders/nsJPEGDecoder.cpp
+index c1fb515..1d2a259 100644
+--- mozilla/image/decoders/nsJPEGDecoder.cpp
++++ mozilla/image/decoders/nsJPEGDecoder.cpp
+@@ -22,6 +22,13 @@
+ extern "C" {
+ #include "iccjpeg.h"
+
++#ifdef JCS_EXTENSIONS
++#if defined(IS_BIG_ENDIAN)
++#define MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB JCS_EXT_XRGB
++#else
++#define MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB JCS_EXT_BGRX
++#endif
++#else
+ /* Colorspace conversion (copied from jpegint.h) */
+ struct jpeg_color_deconverter {
+ JMETHOD(void, start_pass, (j_decompress_ptr cinfo));
+@@ -34,6 +41,7 @@ METHODDEF(void)
+ ycc_rgb_convert_argb (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION input_row,
+ JSAMPARRAY output_buf, int num_rows);
++#endif
+ }
+
+ static void cmyk_convert_rgb(JSAMPROW row, JDIMENSION width);
+@@ -329,7 +340,18 @@ nsJPEGDecoder::WriteInternal(const char *aBuffer, PRUint32 aCount)
+ case JCS_GRAYSCALE:
+ case JCS_RGB:
+ case JCS_YCbCr:
++#ifdef JCS_EXTENSIONS
++ // if we're not color managing we can decode directly to
++ // MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB
++ if (mCMSMode != eCMSMode_All) {
++ mInfo.out_color_space = MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB;
++ mInfo.out_color_components = 4;
++ } else {
++ mInfo.out_color_space = JCS_RGB;
++ }
++#else
+ mInfo.out_color_space = JCS_RGB;
++#endif
+ break;
+ case JCS_CMYK:
+ case JCS_YCCK:
+@@ -397,6 +419,7 @@ nsJPEGDecoder::WriteInternal(const char *aBuffer, PRUint32 aCount)
+ return; /* I/O suspension */
+ }
+
++#ifndef JCS_EXTENSIONS
+ /* Force to use our YCbCr to Packed RGB converter when possible */
+ if (!mTransform && (mCMSMode != eCMSMode_All) &&
+ mInfo.jpeg_color_space == JCS_YCbCr && mInfo.out_color_space == JCS_RGB) {
+@@ -404,6 +427,7 @@ nsJPEGDecoder::WriteInternal(const char *aBuffer, PRUint32 aCount)
+ mInfo.out_color_components = 4; /* Packed ARGB pixels are always 4 bytes...*/
+ mInfo.cconvert->color_convert = ycc_rgb_convert_argb;
+ }
++#endif
+
+ /* If this is a progressive JPEG ... */
+ mState = mInfo.buffered_image ? JPEG_DECOMPRESS_PROGRESSIVE : JPEG_DECOMPRESS_SEQUENTIAL;
+@@ -542,7 +566,11 @@ nsJPEGDecoder::OutputScanlines(bool* suspend)
+ PRUint32 *imageRow = ((PRUint32*)mImageData) +
+ (mInfo.output_scanline * mInfo.output_width);
+
++#ifdef JCS_EXTENSIONS
++ if (mInfo.out_color_space == MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB) {
++#else
+ if (mInfo.cconvert->color_convert == ycc_rgb_convert_argb) {
++#endif
+ /* Special case: scanline will be directly converted into packed ARGB */
+ if (jpeg_read_scanlines(&mInfo, (JSAMPARRAY)&imageRow, 1) != 1) {
+ *suspend = true; /* suspend */
+@@ -858,6 +887,7 @@ term_source (j_decompress_ptr jd)
+ } // namespace mozilla
+
+
++#ifndef JCS_EXTENSIONS
+ /**************** YCbCr -> Cairo's RGB24/ARGB32 conversion: most common case **************/
+
+ /*
+@@ -1130,7 +1160,8 @@ ycc_rgb_convert_argb (j_decompress_ptr cinfo,
+ }
+ }
+ }
++#endif
+
+
+ /**************** Inverted CMYK -> RGB conversion **************/
+ /*
diff --git a/mail/thunderbird-esr/files/patch-bug791366 b/mail/thunderbird-esr/files/patch-bug791366
new file mode 100644
index 000000000000..f7eb443b9a26
--- /dev/null
+++ b/mail/thunderbird-esr/files/patch-bug791366
@@ -0,0 +1,124 @@
+diff --git mozilla/xpcom/base/nsMemoryReporterManager.cpp mozilla/xpcom/base/nsMemoryReporterManager.cpp
+index a9aff58..674e757 100644
+--- mozilla/xpcom/base/nsMemoryReporterManager.cpp
++++ mozilla/xpcom/base/nsMemoryReporterManager.cpp
+@@ -64,7 +64,7 @@ extern void jemalloc_stats(jemalloc_stat
+ # endif // XP_LINUX
+ #endif // MOZ_MEMORY
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX)
++#ifdef XP_UNIX
+
+ #include <sys/time.h>
+ #include <sys/resource.h>
+@@ -122,6 +122,78 @@ static PRInt64 GetResident()
+ return GetProcSelfStatmField(1);
+ }
+
++#elif defined(__DragonFly__) || defined(__FreeBSD__) \
++ || defined(__NetBSD__) || defined(__OpenBSD__)
++
++#include <sys/param.h>
++#include <sys/sysctl.h>
++#if defined(__DragonFly__) || defined(__FreeBSD__)
++#include <sys/user.h>
++#endif
++
++#include <unistd.h>
++
++#if defined(__NetBSD__)
++#undef KERN_PROC
++#define KERN_PROC KERN_PROC2
++#define KINFO_PROC struct kinfo_proc2
++#else
++#define KINFO_PROC struct kinfo_proc
++#endif
++
++#if defined(__DragonFly__)
++#define KP_SIZE(kp) (kp.kp_vm_map_size)
++#define KP_RSS(kp) (kp.kp_vm_rssize * getpagesize())
++#elif defined(__FreeBSD__)
++#define KP_SIZE(kp) (kp.ki_size)
++#define KP_RSS(kp) (kp.ki_rssize * getpagesize())
++#elif defined(__NetBSD__)
++#define KP_SIZE(kp) (kp.p_vm_msize * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#elif defined(__OpenBSD__)
++#define KP_SIZE(kp) ((kp.p_vm_dsize + kp.p_vm_ssize \
++ + kp.p_vm_tsize) * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#endif
++
++static nsresult GetKinfoProcSelf(KINFO_PROC *proc)
++{
++ int mib[] = {
++ CTL_KERN,
++ KERN_PROC,
++ KERN_PROC_PID,
++ getpid(),
++#if defined(__NetBSD__) || defined(__OpenBSD__)
++ sizeof(KINFO_PROC),
++ 1,
++#endif
++ };
++ u_int miblen = sizeof(mib) / sizeof(mib[0]);
++ size_t size = sizeof(KINFO_PROC);
++ if (sysctl(mib, miblen, proc, &size, NULL, 0))
++ return NS_ERROR_FAILURE;
++
++ return NS_OK;
++}
++
++static PRInt64 GetVsize()
++{
++ KINFO_PROC proc;
++ if (NS_SUCCEEDED(GetKinfoProcSelf(&proc)))
++ return KP_SIZE(proc);
++
++ return -1;
++}
++
++static PRInt64 GetResident()
++{
++ KINFO_PROC proc;
++ if (NS_SUCCEEDED(GetKinfoProcSelf(&proc)))
++ return KP_RSS(proc);
++
++ return -1;
++}
++
+ #elif defined(XP_MACOSX)
+
+ #include <mach/mach_init.h>
+@@ -224,7 +297,7 @@ static PRInt64 GetResident()
+
+ #endif
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX) || defined(XP_WIN)
++#if defined(XP_UNIX) || defined(XP_WIN)
+ NS_MEMORY_REPORTER_IMPLEMENT(Vsize,
+ "vsize",
+ KIND_OTHER,
+@@ -239,7 +312,7 @@ NS_MEMORY_REPORTER_IMPLEMENT(Vsize,
+ "measure of the memory resources used by the process.")
+ #endif
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX)
++#if defined(XP_UNIX)
+ NS_MEMORY_REPORTER_IMPLEMENT(PageFaultsSoft,
+ "page-faults-soft",
+ KIND_OTHER,
+@@ -457,11 +530,11 @@ nsMemoryReporterManager::Init()
+ REGISTER(HeapUnallocated);
+ REGISTER(Resident);
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX) || defined(XP_WIN)
++#if defined(XP_UNIX) || defined(XP_WIN)
+ REGISTER(Vsize);
+ #endif
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX)
++#if defined(XP_UNIX)
+ REGISTER(PageFaultsSoft);
+ REGISTER(PageFaultsHard);
+ #endif
diff --git a/mail/thunderbird-esr/files/patch-clang32-libc++-visibility-hack b/mail/thunderbird-esr/files/patch-clang32-libc++-visibility-hack
deleted file mode 100644
index 9b920f63be0f..000000000000
--- a/mail/thunderbird-esr/files/patch-clang32-libc++-visibility-hack
+++ /dev/null
@@ -1,57 +0,0 @@
---- configure.in~
-+++ configure.in
-@@ -2855,6 +2855,7 @@ EOF
- #pragma GCC visibility push(hidden)
- #pragma GCC visibility push(default)
- #include <string.h>
-+#include <iterator>
- #pragma GCC visibility pop
-
- __attribute__ ((visibility ("default"))) void Func() {
-@@ -2863,7 +2864,7 @@ __attribute__ ((visibility ("default"))) void Func() {
- }
- EOF
- ac_cv_have_visibility_builtin_bug=no
-- if ! ${CC-cc} ${CFLAGS} ${DSO_PIC_CFLAGS} ${DSO_LDOPTS} -O2 -S -o conftest.S conftest.c > /dev/null 2>&1 ; then
-+ if ! ${CXX-c++} ${CXXFLAGS} ${DSO_PIC_CFLAGS} ${DSO_LDOPTS} -O2 -S -o conftest.S conftest.c > /dev/null 2>&1 ; then
- ac_cv_have_visibility_builtin_bug=yes
- else
- if test `grep -c "@PLT" conftest.S` = 0; then
---- mozilla/configure.in~
-+++ mozilla/configure.in
-@@ -2855,6 +2855,7 @@ EOF
- #pragma GCC visibility push(hidden)
- #pragma GCC visibility push(default)
- #include <string.h>
-+#include <iterator>
- #pragma GCC visibility pop
-
- __attribute__ ((visibility ("default"))) void Func() {
-@@ -2863,7 +2864,7 @@ __attribute__ ((visibility ("default"))) void Func() {
- }
- EOF
- ac_cv_have_visibility_builtin_bug=no
-- if ! ${CC-cc} ${CFLAGS} ${DSO_PIC_CFLAGS} ${DSO_LDOPTS} -O2 -S -o conftest.S conftest.c > /dev/null 2>&1 ; then
-+ if ! ${CXX-c++} ${CXXFLAGS} ${DSO_PIC_CFLAGS} ${DSO_LDOPTS} -O2 -S -o conftest.S conftest.c > /dev/null 2>&1 ; then
- ac_cv_have_visibility_builtin_bug=yes
- else
- if test `grep -c "@PLT" conftest.S` = 0; then
---- mozilla/js/src/configure.in~
-+++ mozilla/js/src/configure.in
-@@ -2855,6 +2855,7 @@ EOF
- #pragma GCC visibility push(hidden)
- #pragma GCC visibility push(default)
- #include <string.h>
-+#include <iterator>
- #pragma GCC visibility pop
-
- __attribute__ ((visibility ("default"))) void Func() {
-@@ -2863,7 +2864,7 @@ __attribute__ ((visibility ("default"))) void Func() {
- }
- EOF
- ac_cv_have_visibility_builtin_bug=no
-- if ! ${CC-cc} ${CFLAGS} ${DSO_PIC_CFLAGS} ${DSO_LDOPTS} -O2 -S -o conftest.S conftest.c > /dev/null 2>&1 ; then
-+ if ! ${CXX-c++} ${CXXFLAGS} ${DSO_PIC_CFLAGS} ${DSO_LDOPTS} -O2 -S -o conftest.S conftest.c > /dev/null 2>&1 ; then
- ac_cv_have_visibility_builtin_bug=yes
- else
- if test `grep -c "@PLT" conftest.S` = 0; then
diff --git a/mail/thunderbird-esr/files/patch-clang32-visibility-hack b/mail/thunderbird-esr/files/patch-clang32-visibility-hack
new file mode 100644
index 000000000000..010130bc7a44
--- /dev/null
+++ b/mail/thunderbird-esr/files/patch-clang32-visibility-hack
@@ -0,0 +1,30 @@
+--- configure.in~
++++ configure.in
+@@ -3230,6 +3230,7 @@ EOF
+ ac_cv_have_visibility_class_bug,
+ [cat > conftest.c <<EOF
+ #pragma GCC visibility push(hidden)
++struct TestStruct;
+ struct __attribute__ ((visibility ("default"))) TestStruct {
+ static void Init();
+ };
+--- mozilla/configure.in~
++++ mozilla/configure.in
+@@ -3230,6 +3230,7 @@ EOF
+ ac_cv_have_visibility_class_bug,
+ [cat > conftest.c <<EOF
+ #pragma GCC visibility push(hidden)
++struct TestStruct;
+ struct __attribute__ ((visibility ("default"))) TestStruct {
+ static void Init();
+ };
+--- mozilla/js/src/configure.in~
++++ mozilla/js/src/configure.in
+@@ -3230,6 +3230,7 @@ EOF
+ ac_cv_have_visibility_class_bug,
+ [cat > conftest.c <<EOF
+ #pragma GCC visibility push(hidden)
++struct TestStruct;
+ struct __attribute__ ((visibility ("default"))) TestStruct {
+ static void Init();
+ };
diff --git a/mail/thunderbird-esr/files/patch-mozilla-extensions-spellcheck-hunspell-src-mozHunspell.cpp b/mail/thunderbird-esr/files/patch-mozilla-extensions-spellcheck-hunspell-src-mozHunspell.cpp
new file mode 100644
index 000000000000..165e7f647be3
--- /dev/null
+++ b/mail/thunderbird-esr/files/patch-mozilla-extensions-spellcheck-hunspell-src-mozHunspell.cpp
@@ -0,0 +1,15 @@
+--- mozilla/extensions/spellcheck/hunspell/src/mozHunspell.cpp~
++++ mozilla/extensions/spellcheck/hunspell/src/mozHunspell.cpp
+@@ -400,6 +400,12 @@ mozHunspell::LoadDictionaryList()
+ }
+ }
+
++ // load system hunspell dictionaries
++ nsIFile* hunDir;
++ NS_NewNativeLocalFile(NS_LITERAL_CSTRING("%%LOCALBASE%%/share/hunspell"),
++ true, (nsILocalFile**)&hunDir);
++ LoadDictionariesFromDir(hunDir);
++
+ // find dictionaries from extensions requiring restart
+ nsCOMPtr<nsISimpleEnumerator> dictDirs;
+ rv = dirSvc->Get(DICTIONARY_SEARCH_DIRECTORY_LIST,
diff --git a/mail/thunderbird-esr/files/patch-mozilla_toolkit_xre_glxtest.cpp b/mail/thunderbird-esr/files/patch-mozilla_toolkit_xre_glxtest.cpp
deleted file mode 100644
index f338b4bdedb5..000000000000
--- a/mail/thunderbird-esr/files/patch-mozilla_toolkit_xre_glxtest.cpp
+++ /dev/null
@@ -1,25 +0,0 @@
---- mozilla/toolkit/xre/glxtest.cpp.orig 2011-08-19 18:57:10.604870746 +0300
-+++ mozilla/toolkit/xre/glxtest.cpp 2011-08-19 18:59:43.620447963 +0300
-@@ -51,6 +51,8 @@
- // which runs the glxtest() static function. This creates a X connection, a GLX context, calls glGetString, and writes that
- // to the 'write' end of the pipe.
-
-+#include <sys/types.h>
-+#include <sys/wait.h>
- #include <cstdio>
- #include <cstdlib>
- #include <unistd.h>
-@@ -224,6 +226,7 @@
- void fire_glxtest_process()
- {
- int pfd[2];
-+ int status;
- if (pipe(pfd) == -1) {
- perror("pipe");
- exit(EXIT_FAILURE);
-@@ -244,4 +247,5 @@
- close(pfd[1]);
- mozilla::widget::glxtest_pipe = pfd[0];
- mozilla::widget::glxtest_pid = pid;
-+ waitpid(pid, &status, 0);
- }