Update to 52.0

This commit is contained in:
Jan Horak 2017-04-04 16:29:04 +02:00
parent 4a4b4016c3
commit 6b25e5ecf3
10 changed files with 142 additions and 277 deletions

3
.gitignore vendored
View File

@ -167,3 +167,6 @@ thunderbird-langpacks-3.1.2-20100803.tar.bz2
/thunderbird-45.8.0.source.tar.xz
/thunderbird-langpacks-45.8.0-20170308.tar.xz
/l10n-lightning-45.8.0.tar.xz
/thunderbird-52.0.source.tar.xz
/thunderbird-langpacks-52.0-20170404.tar.xz
/l10n-lightning-52.0.tar.xz

11
build-fix-dupes.patch Normal file
View File

@ -0,0 +1,11 @@
diff -up thunderbird-52.0/mail/installer/Makefile.in.fix-dupes thunderbird-52.0/mail/installer/Makefile.in
--- thunderbird-52.0/mail/installer/Makefile.in.fix-dupes 2017-04-04 13:06:17.414621079 +0200
+++ thunderbird-52.0/mail/installer/Makefile.in 2017-04-04 13:06:24.397611123 +0200
@@ -15,6 +15,7 @@ ifndef SYSTEM_LIBXUL
MOZ_PKG_FATAL_WARNINGS = 1
endif
MOZ_PKG_DUPEFLAGS = \
+ -w \
-f $(srcdir)/allowed-dupes.mn \
-f $(MOZILLA_DIR)/browser/installer/allowed-dupes.mn \
$(NULL)

View File

@ -0,0 +1,44 @@
diff -up firefox-52.0/dom/u2f/U2F.cpp.prbool firefox-52.0/dom/u2f/U2F.cpp
--- firefox-52.0/dom/u2f/U2F.cpp.prbool 2017-03-03 13:42:22.613691228 +0100
+++ firefox-52.0/dom/u2f/U2F.cpp 2017-03-03 13:48:20.864647727 +0100
@@ -4,6 +4,7 @@
* 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/. */
+#include "prtypes.h"
#include "hasht.h"
#include "mozilla/dom/CallbackFunction.h"
#include "mozilla/dom/ContentChild.h"
diff -up firefox-52.0/security/certverifier/CTLogVerifier.cpp.prbool firefox-52.0/security/certverifier/CTLogVerifier.cpp
--- firefox-52.0/security/certverifier/CTLogVerifier.cpp.prbool 2017-01-16 17:16:51.000000000 +0100
+++ firefox-52.0/security/certverifier/CTLogVerifier.cpp 2017-03-03 13:42:22.613691228 +0100
@@ -7,6 +7,7 @@
#include "CTLogVerifier.h"
#include "CTSerialization.h"
+#include "prtypes.h"
#include "hasht.h"
#include "mozilla/ArrayUtils.h"
#include "mozilla/Assertions.h"
diff -up firefox-52.0/security/certverifier/CTObjectsExtractor.cpp.prbool firefox-52.0/security/certverifier/CTObjectsExtractor.cpp
--- firefox-52.0/security/certverifier/CTObjectsExtractor.cpp.prbool 2017-01-16 17:16:51.000000000 +0100
+++ firefox-52.0/security/certverifier/CTObjectsExtractor.cpp 2017-03-03 13:42:22.613691228 +0100
@@ -6,6 +6,7 @@
#include "CTObjectsExtractor.h"
+#include "prtypes.h"
#include "hasht.h"
#include "mozilla/Assertions.h"
#include "mozilla/Casting.h"
diff -up firefox-52.0/security/certverifier/OCSPCache.h.prbool firefox-52.0/security/certverifier/OCSPCache.h
--- firefox-52.0/security/certverifier/OCSPCache.h.prbool 2017-02-27 17:11:06.000000000 +0100
+++ firefox-52.0/security/certverifier/OCSPCache.h 2017-03-03 13:42:22.613691228 +0100
@@ -25,6 +25,7 @@
#ifndef mozilla_psm_OCSPCache_h
#define mozilla_psm_OCSPCache_h
+#include "prtypes.h"
#include "hasht.h"
#include "mozilla/Mutex.h"
#include "mozilla/Vector.h"

View File

@ -1,12 +1,12 @@
diff -up firefox-45.0/firefox-45.0/js/src/jit/AtomicOperations.h.old firefox-45.0/firefox-45.0/js/src/jit/AtomicOperations.h
--- firefox-45.0/firefox-45.0/js/src/jit/AtomicOperations.h.old 2016-03-01 09:45:01.000000000 +0100
+++ firefox-45.0/firefox-45.0/js/src/jit/AtomicOperations.h 2016-03-03 13:13:34.915015391 +0100
@@ -305,7 +305,7 @@ AtomicOperations::isLockfree(int32_t siz
|| defined(__ppc__) || defined(__PPC__)
# include "jit/none/AtomicOperations-ppc.h"
#elif defined(JS_CODEGEN_NONE)
-# include "jit/none/AtomicOperations-none.h"
+# include "jit/none/AtomicOperations-ppc.h"
diff -up firefox-48.0/js/src/jit/AtomicOperations.h.old firefox-48.0/js/src/jit/AtomicOperations.h
--- firefox-48.0/js/src/jit/AtomicOperations.h.old 2016-07-27 09:42:43.148175449 +0200
+++ firefox-48.0/js/src/jit/AtomicOperations.h 2016-07-27 09:41:13.000000000 +0200
@@ -340,7 +340,7 @@ AtomicOperations::isLockfree(int32_t siz
# elif defined(__aarch64__)
# include "jit/arm64/AtomicOperations-arm64.h"
# else
-# include "jit/none/AtomicOperations-none.h" // These MOZ_CRASH() always
+# include "jit/none/AtomicOperations-ppc.h"
# endif
#elif defined(JS_CODEGEN_X86) || defined(JS_CODEGEN_X64)
# include "jit/x86-shared/AtomicOperations-x86-shared.h"
#else

View File

@ -1,212 +0,0 @@
From: Jens Lody <fedora@jenslody.de>
Date: Thu, 16 Feb 2017 09:31:56 +0100
Subject: Backport of fix for mozilla-bug 1269171, needed for gcc7.
diff --git a/config/gcc-stl-wrapper.template.h b/config/gcc-stl-wrapper.template.h
--- a/config/gcc-stl-wrapper.template.h
+++ b/config/gcc-stl-wrapper.template.h
@@ -17,25 +17,6 @@
// Silence "warning: #include_next is a GCC extension"
#pragma GCC system_header
-// mozalloc.h wants <new>; break the cycle by always explicitly
-// including <new> here. NB: this is a tad sneaky. Sez the gcc docs:
-//
-// `#include_next' does not distinguish between <file> and "file"
-// inclusion, nor does it check that the file you specify has the
-// same name as the current file. It simply looks for the file
-// named, starting with the directory in the search path after the
-// one where the current file was found.
-#include_next <new>
-
-// See if we're in code that can use mozalloc. NB: this duplicates
-// code in nscore.h because nscore.h pulls in prtypes.h, and chromium
-// can't build with that being included before base/basictypes.h.
-#if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC)
-# include "mozilla/mozalloc.h"
-#else
-# error "STL code can only be used with infallible ::operator new()"
-#endif
-
#if defined(DEBUG) && !defined(_GLIBCXX_DEBUG)
// Enable checked iterators and other goodies
//
@@ -46,10 +27,34 @@
// # define _GLIBCXX_DEBUG 1
#endif
+// Don't include mozalloc for cstdlib. See bug 1245076.
+#ifndef moz_dont_include_mozalloc_for_cstdlib
+# define moz_dont_include_mozalloc_for_cstdlib
+#endif
+
+// Include mozalloc after the STL header and all other headers it includes
+// have been preprocessed.
+#if !defined(MOZ_INCLUDE_MOZALLOC_H) && \
+ !defined(moz_dont_include_mozalloc_for_${HEADER})
+# define MOZ_INCLUDE_MOZALLOC_H
+# define MOZ_INCLUDE_MOZALLOC_H_FROM_${HEADER}
+#endif
+
#pragma GCC visibility push(default)
#include_next <${HEADER}>
#pragma GCC visibility pop
+#ifdef MOZ_INCLUDE_MOZALLOC_H_FROM_${HEADER}
+// See if we're in code that can use mozalloc. NB: this duplicates
+// code in nscore.h because nscore.h pulls in prtypes.h, and chromium
+// can't build with that being included before base/basictypes.h.
+# if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC)
+# include "mozilla/mozalloc.h"
+# else
+# error "STL code can only be used with infallible ::operator new()"
+# endif
+#endif
+
// gcc calls a __throw_*() function from bits/functexcept.h when it
// wants to "throw an exception". functexcept exists nominally to
// support -fno-exceptions, but since we'll always use the system
--- a/config/make-stl-wrappers.py
+++ b/config/make-stl-wrappers.py
@@ -25,28 +25,26 @@ def header_path(header, compiler):
def is_comment(line):
return re.match(r'\s*#.*', line)
def main(outdir, compiler, template_file, header_list_file):
if not os.path.isdir(outdir):
os.mkdir(outdir)
template = open(template_file, 'r').read()
- path_to_new = header_path('new', compiler)
for header in open(header_list_file, 'r'):
header = header.rstrip()
if 0 == len(header) or is_comment(header):
continue
path = header_path(header, compiler)
with FileAvoidWrite(os.path.join(outdir, header)) as f:
f.write(string.Template(template).substitute(HEADER=header,
- HEADER_PATH=path,
- NEW_HEADER_PATH=path_to_new))
+ HEADER_PATH=path))
if __name__ == '__main__':
if 5 != len(sys.argv):
print("""Usage:
python {0} OUT_DIR ('msvc'|'gcc') TEMPLATE_FILE HEADER_LIST_FILE
""".format(sys.argv[0]), file=sys.stderr)
sys.exit(1)
diff --git a/config/msvc-stl-wrapper.template.h b/config/msvc-stl-wrapper.template.h
--- a/config/msvc-stl-wrapper.template.h
+++ b/config/msvc-stl-wrapper.template.h
@@ -3,45 +3,33 @@
*/
/* 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/. */
#ifndef mozilla_${HEADER}_h
#define mozilla_${HEADER}_h
-#ifndef MOZ_HAVE_INCLUDED_ALLOC
-#define MOZ_HAVE_INCLUDED_ALLOC
-
#if _HAS_EXCEPTIONS
# error "STL code can only be used with -fno-exceptions"
#endif
+// Include mozalloc after the STL header and all other headers it includes
+// have been preprocessed.
+#if !defined(MOZ_INCLUDE_MOZALLOC_H)
+# define MOZ_INCLUDE_MOZALLOC_H
+# define MOZ_INCLUDE_MOZALLOC_H_FROM_${HEADER}
+#endif
+
// Code built with !_HAS_EXCEPTIONS calls std::_Throw(), but the win2k
// CRT doesn't export std::_Throw(). So we define it.
#ifndef mozilla_Throw_h
# include "mozilla/throw_msvc.h"
#endif
-// Code might include <new> before other wrapped headers, but <new>
-// includes <exception> and so we want to wrap it. But mozalloc.h
-// wants <new> also, so we break the cycle by always explicitly
-// including <new> here.
-#include <${NEW_HEADER_PATH}>
-
-// See if we're in code that can use mozalloc. NB: this duplicates
-// code in nscore.h because nscore.h pulls in prtypes.h, and chromium
-// can't build with that being included before base/basictypes.h.
-#if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC)
-# include "mozilla/mozalloc.h"
-#else
-# error "STL code can only be used with infallible ::operator new()"
-#endif
-#endif /* MOZ_HAVE_INCLUDED_ALLOC */
-
#ifdef _DEBUG
// From
// http://msdn.microsoft.com/en-us/library/aa985982%28VS.80%29.aspx
// and
// http://msdn.microsoft.com/en-us/library/aa985965%28VS.80%29.aspx
// there appear to be two types of STL container checking. The
// former is enabled by -D_DEBUG (which is implied by -MDd or -MTd), and
// looks to be full generation/mutation checked iterators as done by
@@ -70,9 +58,20 @@
// but that's OK because we're not throwing them.
#pragma warning( push )
#pragma warning( disable : 4275 4530 )
#include <${HEADER_PATH}>
#pragma warning( pop )
+#ifdef MOZ_INCLUDE_MOZALLOC_H_FROM_${HEADER}
+// See if we're in code that can use mozalloc. NB: this duplicates
+// code in nscore.h because nscore.h pulls in prtypes.h, and chromium
+// can't build with that being included before base/basictypes.h.
+# if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC)
+# include "mozilla/mozalloc.h"
+# else
+# error "STL code can only be used with infallible ::operator new()"
+# endif
+#endif
+
#endif // if mozilla_${HEADER}_h
diff --git a/memory/mozalloc/mozalloc.h b/memory/mozalloc/mozalloc.h
--- a/memory/mozalloc/mozalloc.h
+++ b/memory/mozalloc/mozalloc.h
@@ -7,20 +7,27 @@
#ifndef mozilla_mozalloc_h
#define mozilla_mozalloc_h
/*
* https://bugzilla.mozilla.org/show_bug.cgi?id=427099
*/
-#include <stdlib.h>
-#include <string.h>
#if defined(__cplusplus)
# include <new>
+// Since libstdc++ 6, including the C headers (e.g. stdlib.h) instead of the
+// corresponding C++ header (e.g. cstdlib) can cause confusion in C++ code
+// using things defined there. Specifically, with stdlib.h, the use of abs()
+// in gfx/graphite2/src/inc/UtfCodec.h somehow ends up picking the wrong abs()
+# include <cstdlib>
+# include <cstring>
+#else
+# include <stdlib.h>
+# include <string.h>
#endif
#if defined(__cplusplus)
#include "mozilla/fallible.h"
#include "mozilla/TemplateLib.h"
#endif
#include "mozilla/Attributes.h"
#include "mozilla/Types.h"

View File

@ -1,3 +1,3 @@
SHA512 (thunderbird-45.8.0.source.tar.xz) = f8ba08d874fb1a09ac9ba5d4d1f46cefe801783ba4bf82eee682ac2ecc4e231d07033a80e036ad04bda7780c093fb7bc3122a23dc6e19c12f18fb7168dc78deb
SHA512 (thunderbird-langpacks-45.8.0-20170308.tar.xz) = e4902855908283e35007135cf65fa2ee8a91eefd27c4e929d15d8b032109e65ead77765e724e0615fbe14861262e860fc87f3f45d3202130ff7eb902d29e83d1
SHA512 (l10n-lightning-45.8.0.tar.xz) = 17bb5b82b80aaf0de876fbbb06507ee695552190626910fcc43769cf348328cc258273bba30313d921eaa87bf9a844a5864346ae11386711954199354a4a12ce
SHA512 (thunderbird-52.0.source.tar.xz) = 215de8ae386f6f12d7a4338bb03bac956410be0dd4de5cca218e12241e3948c8c2540756e149bfde597cd10e399b4cb4db86619a2aa50a368ba323b413c1f93c
SHA512 (thunderbird-langpacks-52.0-20170404.tar.xz) = be92897cd7b07ba2d342ac680d1e555cebda2fa92ba3639d9f07973382ae73f9fd01c0d8bad5c04b3c6bdb4c87ba2de9c04368c16b7855bbff1e0d0fe039c0e2
SHA512 (l10n-lightning-52.0.tar.xz) = 59ad2611c2c658bc0c7c136f116adc8e11e51a7db7fadea3aaf1ffeafda6d6230e888be2af3f38a6ebb87a760145d79a2c7f62d2724c977307238a149dc2969a

View File

@ -1,38 +1,13 @@
diff -up comm-esr31/mail/app/profile/all-thunderbird.js.addons comm-esr31/mail/app/profile/all-thunderbird.js
--- comm-esr31/mail/app/profile/all-thunderbird.js.addons 2014-07-18 02:04:05.000000000 +0200
+++ comm-esr31/mail/app/profile/all-thunderbird.js 2014-07-29 15:29:11.949728141 +0200
@@ -174,7 +174,7 @@ pref("extensions.update.autoUpdateDefaul
@@ -174,7 +174,8 @@ pref("extensions.update.autoUpdateDefaul
// Disable add-ons installed into the shared user and shared system areas by
// default. This does not include the application directory. See the SCOPE
// constants in AddonManager.jsm for values to use here
-pref("extensions.autoDisableScopes", 15);
+pref("extensions.autoDisableScopes", 0);
+pref("extensions.showMismatchUI", false);
// Preferences for AMO integration
pref("extensions.getAddons.cache.enabled", true);
diff -up comm-esr31/mozilla/toolkit/mozapps/extensions/internal/XPIProvider.jsm.addons comm-esr31/mozilla/toolkit/mozapps/extensions/internal/XPIProvider.jsm
--- comm-esr31/mozilla/toolkit/mozapps/extensions/internal/XPIProvider.jsm.addons 2014-07-29 15:29:11.951728146 +0200
+++ comm-esr31/mozilla/toolkit/mozapps/extensions/internal/XPIProvider.jsm 2014-07-29 15:30:51.879030210 +0200
@@ -2102,11 +2102,7 @@ this.XPIProvider = {
AddonManagerPrivate.markProviderSafe(this);
- if (aAppChanged === undefined) {
- // For new profiles we will never need to show the add-on selection UI
- Services.prefs.setBoolPref(PREF_SHOWN_SELECTION_UI, true);
- }
- else if (aAppChanged && !this.allAppGlobal &&
+ if (aAppChanged && !this.allAppGlobal &&
Preferences.get(PREF_EM_SHOW_MISMATCH_UI, true)) {
if (!Preferences.get(PREF_SHOWN_SELECTION_UI, false)) {
// Flip a flag to indicate that we interrupted startup with an interactive prompt
@@ -2126,6 +2122,9 @@ this.XPIProvider = {
flushCaches = true;
}
}
+ } else {
+ // For new profiles we will never need to show the add-on selection UI
+ Services.prefs.setBoolPref(PREF_SHOWN_SELECTION_UI, true);
}
if (flushCaches) {

View File

@ -11,24 +11,15 @@ ac_add_options --with-system-zlib
ac_add_options --with-system-libvpx
ac_add_options --with-pthreads
ac_add_options --disable-tests
ac_add_options --disable-installer
ac_add_options --enable-xinerama
ac_add_options --enable-default-toolkit=cairo-gtk2
ac_add_options --disable-xprint
ac_add_options --disable-strip
ac_add_options --disable-install-strip
ac_add_options --enable-pango
# temporary disable system cairo, because compilation fails
#ac_add_options --enable-system-cairo
ac_add_options --enable-svg
ac_add_options --enable-canvas
ac_add_options --enable-system-hunspell
ac_add_options --disable-necko-wifi
ac_add_options --disable-updater
ac_add_options --enable-startup-notification
ac_add_options --enable-gio
ac_add_options --disable-gnomevfs
ac_add_options --disable-gstreamer
ac_add_options --enable-pie
ac_add_options --with-system-icu

View File

@ -33,14 +33,31 @@
# Use system libvpx?
%define system_libvpx 1
%define system_jpeg 1
# Use system libicu?
%if 0%{?fedora} > 27
%define system_libicu 1
%else
%define system_libicu 0
%endif
%define build_with_rust 0
%if 0%{?fedora} > 23
%ifarch x86_64
%define build_with_rust 1
%endif
%endif
%define tb_version 45.6.0
%define tarballdir thunderbird-45.8.0
%define tarballdir thunderbird-52.0
%define thunderbird_app_id \{3550f703-e582-4d05-9a08-453d09bdfdc6\}
# Bump one with each minor lightning release
%define gdata_version 2.6
%define gdata_version 3.3
# BUMP VERSION THERE:
%define gdata_version_internal 0.13
%define gdata_version_internal 0.1
%global gdata_extname %{_libdir}/mozilla/extensions/{3550f703-e582-4d05-9a08-453d09bdfdc6}/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}
# The tarball is pretty inconsistent with directory structure.
@ -62,14 +79,14 @@
Summary: Mozilla Thunderbird mail/newsgroup client
Name: thunderbird
Version: 45.8.0
Version: 52.0
Release: 1%{?dist}
URL: http://www.mozilla.org/projects/thunderbird/
License: MPLv1.1 or GPLv2+ or LGPLv2+
Group: Applications/Internet
Source0: ftp://ftp.mozilla.org/pub/thunderbird/releases/%{version}%{?pre_version}/source/thunderbird-%{version}%{?pre_version}.source.tar.xz
%if %{build_langpacks}
Source1: thunderbird-langpacks-%{version}-20170308.tar.xz
Source1: thunderbird-langpacks-%{version}-20170404.tar.xz
%endif
# Locales for lightning
Source2: l10n-lightning-%{version}.tar.xz
@ -84,6 +101,7 @@ Source21: thunderbird.sh.in
# Mozilla (XULRunner) patches
Patch0: thunderbird-install-dir.patch
Patch9: mozilla-build-arm.patch
Patch10: firefox-build-prbool.patch
# Build patches
Patch100: thunderbird-objdir.patch
@ -101,7 +119,7 @@ Patch301: mozilla-1228540-1.patch
Patch302: mozilla-1228540.patch
Patch303: mozilla-1253216.patch
Patch304: mozilla-1245783.patch
Patch305: mozilla-1269171-badalloc.patch
Patch305: build-fix-dupes.patch
# Fedora specific patches
Patch400: rhbz-966424.patch
@ -212,9 +230,10 @@ cd %{tarballdir}
# Mozilla (XULRunner) patches
cd mozilla
%patch9 -p2 -b .arm
%patch10 -p1 -b .build-prbool
%patch300 -p2 -b .852698
#%patch302 -p1 -b .mozbz-1228540
%patch303 -p2 -b .mozilla-1253216
%patch303 -p1 -b .mozilla-1253216
#%patch301 -p1 -b .mozbz-1228540-1
#%patch102 -p2 -b .build-werror
#%patch101 -p1 -b .nspr-prbool
@ -225,9 +244,8 @@ cd mozilla
%patch400 -p1 -b .966424
#%patch402 -p1 -b .rhbz-1014858 FIXME musi byt
%patch304 -p1 -b .1245783
%patch305 -p1 -b .mozilla-1269171-badalloc
cd ..
%patch305 -p1 -b .fix-dupes
%patch105 -p1 -b .bad-langs
%patch200 -p1 -b .addons
@ -318,6 +336,32 @@ echo "ac_add_options --with-system-libvpx" >> .mozconfig
echo "ac_add_options --without-system-libvpx" >> .mozconfig
%endif
%if %{?system_libicu}
echo "ac_add_options --with-system-icu" >> .mozconfig
%else
echo "ac_add_options --without-system-icu" >> .mozconfig
%endif
%if %{?build_with_rust}
echo "ac_add_options --enable-rust" >> .mozconfig
%endif
%ifarch aarch64 ppc64 s390x
echo "ac_add_options --disable-skia" >> .mozconfig
%endif
%if !%{?system_jpeg}
echo "ac_add_options --without-system-jpeg" >> .mozconfig
%else
echo "ac_add_options --with-system-jpeg" >> .mozconfig
%endif
%if %{?system_libvpx}
echo "ac_add_options --with-system-libvpx" >> .mozconfig
%else
echo "ac_add_options --without-system-libvpx" >> .mozconfig
%endif
# install lightning langpacks
cd ..
%{__tar} xf %{SOURCE2}
@ -610,10 +654,19 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%exclude %{_includedir}/%{name}-%{tb_version}
%{mozappdir}/dependentlibs.list
%{mozappdir}/distribution
%if !%{?system_libicu}
%{mozappdir}/icudt*.dat
%endif
%{mozappdir}/fonts
%{mozappdir}/chrome.manifest
#===============================================================================
%changelog
* Tue Apr 4 2017 Jan Horak <jhorak@redhat.com> - 52.0-1
- Update to 52.0
* Wed Mar 8 2017 Jan Horak <jhorak@redhat.com> - 45.8.0-1
- Update to 45.8.0

View File

@ -1,12 +1,12 @@
diff -up xulrunner-24.0/mozilla-release/memory/mozjemalloc/jemalloc.c.jemalloc-ppc xulrunner-24.0/mozilla-release/memory/mozjemalloc/jemalloc.c
--- xulrunner-24.0/mozilla-release/memory/mozjemalloc/jemalloc.c.jemalloc-ppc 2013-09-11 01:15:18.000000000 +0200
+++ xulrunner-24.0/mozilla-release/memory/mozjemalloc/jemalloc.c 2013-09-13 13:36:34.171680919 +0200
@@ -1104,7 +1104,7 @@ static unsigned ncpus;
diff -up thunderbird-52.0/mozilla/memory/mozjemalloc/jemalloc.c.852698 thunderbird-52.0/mozilla/memory/mozjemalloc/jemalloc.c
--- thunderbird-52.0/mozilla/memory/mozjemalloc/jemalloc.c.852698 2017-04-04 10:32:15.667281885 +0200
+++ thunderbird-52.0/mozilla/memory/mozjemalloc/jemalloc.c 2017-04-04 10:35:15.907018486 +0200
@@ -1096,7 +1096,7 @@ static const bool config_recycle = false
* controlling the malloc behavior are defined as compile-time constants
* for best performance and cannot be altered at runtime.
*/
-#if !defined(__ia64__) && !defined(__sparc__) && !defined(__mips__)
+#if !defined(__ia64__) && !defined(__sparc__) && !defined(__mips__) && !(defined(__powerpc__))
-#if !defined(__ia64__) && !defined(__sparc__) && !defined(__mips__) && !defined(__aarch64__)
+#if !defined(__ia64__) && !defined(__sparc__) && !defined(__mips__) && !defined(__aarch64__) && !defined(__powerpc__)
#define MALLOC_STATIC_SIZES 1
#endif