Update to 52.0 (B2)

This commit is contained in:
Martin Stransky 2017-03-03 14:35:44 +01:00
parent 23da23838e
commit 20d7a16e95
9 changed files with 290 additions and 2176 deletions

2
.gitignore vendored
View File

@ -224,3 +224,5 @@ firefox-3.6.4.source.tar.bz2
/firefox-51.0.1.source.tar.xz
/firefox-langpacks-51.0.1-20170125.tar.xz
/firefox-langpacks-51.0.1-20170126.tar.xz
/firefox-52.0.source.tar.xz
/firefox-langpacks-52.0-20170303.tar.xz

View File

@ -1,28 +1,17 @@
diff -up firefox-48.0/dom/u2f/U2F.cpp.prbool firefox-48.0/dom/u2f/U2F.cpp
--- firefox-48.0/dom/u2f/U2F.cpp.prbool 2016-07-26 12:27:56.903381382 +0200
+++ firefox-48.0/dom/u2f/U2F.cpp 2016-07-26 12:28:08.924399413 +0200
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"
#include "mozilla/dom/CryptoBuffer.h"
diff -up firefox-48.0/security/certverifier/OCSPCache.h.prbool firefox-48.0/security/certverifier/OCSPCache.h
--- firefox-48.0/security/certverifier/OCSPCache.h.prbool 2016-05-12 19:13:32.000000000 +0200
+++ firefox-48.0/security/certverifier/OCSPCache.h 2016-07-26 12:26:56.366290580 +0200
@@ -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"
diff -up firefox-51.0/security/certverifier/CTLogVerifier.cpp.old firefox-51.0/security/certverifier/CTLogVerifier.cpp
--- firefox-51.0/security/certverifier/CTLogVerifier.cpp.old 2017-01-18 13:03:34.758386735 +0100
+++ firefox-51.0/security/certverifier/CTLogVerifier.cpp 2017-01-18 13:03:38.753367776 +0100
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"
@ -31,9 +20,9 @@ diff -up firefox-51.0/security/certverifier/CTLogVerifier.cpp.old firefox-51.0/s
#include "hasht.h"
#include "mozilla/ArrayUtils.h"
#include "mozilla/Assertions.h"
diff -up firefox-51.0/security/certverifier/CTObjectsExtractor.cpp.old firefox-51.0/security/certverifier/CTObjectsExtractor.cpp
--- firefox-51.0/security/certverifier/CTObjectsExtractor.cpp.old 2017-01-18 13:01:57.629847680 +0100
+++ firefox-51.0/security/certverifier/CTObjectsExtractor.cpp 2017-01-18 13:02:01.892827449 +0100
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"
@ -42,3 +31,14 @@ diff -up firefox-51.0/security/certverifier/CTObjectsExtractor.cpp.old firefox-5
#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,28 +0,0 @@
diff -up firefox-36.0/mozilla-release/gfx/skia/trunk/include/core/SkPreConfig.h.ppc64le firefox-36.0/mozilla-release/gfx/skia/trunk/include/core/SkPreConfig.h
--- firefox-36.0/mozilla-release/gfx/skia/skia/include/core/SkPreConfig.h.ppc64le 2015-02-20 03:01:40.000000000 +0100
+++ firefox-36.0/mozilla-release/gfx/skia/skia/include/core/SkPreConfig.h 2015-03-06 15:52:58.298050379 +0100
@@ -90,6 +90,13 @@
#endif
//////////////////////////////////////////////////////////////////////
+#if !defined(SK_CPU_BENDIAN) && !defined(SK_CPU_LENDIAN)
+ #if defined(__BIG_ENDIAN__)
+ #define SK_CPU_BENDIAN
+ #elif defined(__LITTLE_ENDIAN__)
+ #define SK_CPU_LENDIAN
+ #endif
+#endif
#if !defined(SK_CPU_BENDIAN) && !defined(SK_CPU_LENDIAN)
#if defined(__sparc) || defined(__sparc__) || \
diff -up firefox-36.0/mozilla-release/js/src/jsdtoa.cpp.ppc64le firefox-36.0/mozilla-release/js/src/jsdtoa.cpp
--- firefox-36.0/mozilla-release/js/src/jsdtoa.cpp.ppc64le 2015-02-20 03:01:49.000000000 +0100
+++ firefox-36.0/mozilla-release/js/src/jsdtoa.cpp 2015-03-06 15:54:38.348048226 +0100
@@ -52,6 +52,7 @@ static inline void dtoa_free(void* p) {
#define MALLOC dtoa_malloc
#define FREE dtoa_free
#include "dtoa.c"
+#undef CONST
/* Mapping of JSDToStrMode -> js_dtoa mode */
static const uint8_t dtoaModes[] = {

View File

@ -1,6 +1,3 @@
# Temporary disabled due to js crash
#ExcludeArch: armv7hl
# Use system nspr/nss?
%define system_nss 1
@ -96,14 +93,14 @@
Summary: Mozilla Firefox Web browser
Name: firefox
Version: 51.0.1
Release: 11%{?pre_tag}%{?dist}
Version: 52.0
Release: 1%{?pre_tag}%{?dist}
URL: https://www.mozilla.org/firefox/
License: MPLv1.1 or GPLv2+ or LGPLv2+
Group: Applications/Internet
Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version}/source/firefox-%{version}%{?pre_version}.source.tar.xz
%if %{build_langpacks}
Source1: firefox-langpacks-%{version}%{?pre_version}-20170126.tar.xz
Source1: firefox-langpacks-%{version}%{?pre_version}-20170303.tar.xz
%endif
Source10: firefox-mozconfig
Source12: firefox-redhat-default-prefs.js
@ -121,7 +118,6 @@ Patch18: xulrunner-24.0-jemalloc-ppc.patch
# workaround linking issue on s390 (JSContext::updateMallocCounter(size_t) not found)
Patch19: xulrunner-24.0-s390-inlines.patch
Patch20: firefox-build-prbool.patch
Patch21: firefox-ppc64le.patch
Patch24: firefox-debug.patch
Patch25: rhbz-1219542-s390-build.patch
@ -150,8 +146,6 @@ Patch406: mozilla-256180.patch
# Rebase Gtk3 widget code to latest trunk to
# fix various rendering problems
Patch407: widget-rebase.patch
Patch408: mozilla-1319374.patch
Patch409: mozilla-1321579.patch
# Debian patches
Patch500: mozilla-440908.patch
@ -280,7 +274,6 @@ cd %{tarballdir}
%patch18 -p1 -b .jemalloc-ppc
%patch19 -p2 -b .s390-inlines
%patch20 -p1 -b .prbool
%patch21 -p2 -b .ppc64le
%patch24 -p1 -b .debug
%ifarch s390
%patch25 -p1 -b .rhbz-1219542-s390
@ -309,9 +302,6 @@ cd %{tarballdir}
# Rebase Gtk3 widget code to latest trunk to
# fix various rendering problems
%patch407 -p1 -b .widget-rebase
# ppc64 build fix
%patch408 -p1 -b .1319374
%patch409 -p1 -b .1321579
# Debian extension patch
%patch500 -p1 -b .440908
@ -815,6 +805,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
#---------------------------------------------------------------------
%changelog
* Fri Mar 3 2017 Martin Stransky <stransky@redhat.com> - 52.0-1
- Update to 52.0 (B2)
* Thu Mar 02 2017 Kai Engert <kaie@redhat.com> - 51.0.1-11
- Enable upstream fix for rhbz#1400293 mozbz#1324096 on F26 and Rawhide.
Keep the old workaround on F24/F25, required base packages aren't

View File

@ -1,174 +0,0 @@
diff -up firefox-51.0/gfx/2d/BorrowedContext.h.1319374 firefox-51.0/gfx/2d/BorrowedContext.h
--- firefox-51.0/gfx/2d/BorrowedContext.h.1319374 2017-01-16 17:16:49.000000000 +0100
+++ firefox-51.0/gfx/2d/BorrowedContext.h 2017-01-20 12:17:56.589954310 +0100
@@ -195,8 +195,18 @@ public:
CGContextRef cg;
private:
+#ifdef USE_SKIA
static CGContextRef BorrowCGContextFromDrawTarget(DrawTarget *aDT);
static void ReturnCGContextToDrawTarget(DrawTarget *aDT, CGContextRef cg);
+#else
+ static CGContextRef BorrowCGContextFromDrawTarget(DrawTarget *aDT) {
+ MOZ_CRASH("Not supported without Skia");
+ }
+
+ static void ReturnCGContextToDrawTarget(DrawTarget *aDT, CGContextRef cg) {
+ MOZ_CRASH("not supported without Skia");
+ }
+#endif
DrawTarget *mDT;
};
#endif
diff -up firefox-51.0/gfx/layers/composite/LayerManagerComposite.cpp.1319374 firefox-51.0/gfx/layers/composite/LayerManagerComposite.cpp
--- firefox-51.0/gfx/layers/composite/LayerManagerComposite.cpp.1319374 2017-01-16 17:16:50.000000000 +0100
+++ firefox-51.0/gfx/layers/composite/LayerManagerComposite.cpp 2017-01-20 12:27:01.818193768 +0100
@@ -12,7 +12,6 @@
#include "CompositableHost.h" // for CompositableHost
#include "ContainerLayerComposite.h" // for ContainerLayerComposite, etc
#include "FPSCounter.h" // for FPSState, FPSCounter
-#include "PaintCounter.h" // For PaintCounter
#include "FrameMetrics.h" // for FrameMetrics
#include "GeckoProfiler.h" // for profiler_set_frame_number, etc
#include "ImageLayerComposite.h" // for ImageLayerComposite
@@ -72,6 +71,9 @@
#include "TextRenderer.h" // for TextRenderer
#include "mozilla/layers/CompositorBridgeParent.h"
#include "TreeTraversal.h" // for ForEachNode
+#ifdef USE_SKIA
+#include "PaintCounter.h" // For PaintCounter
+#endif
class gfxContext;
@@ -133,6 +135,10 @@ LayerManagerComposite::LayerManagerCompo
{
mTextRenderer = new TextRenderer(aCompositor);
MOZ_ASSERT(aCompositor);
+
+#ifdef USE_SKIA
+ mPaintCounter = nullptr;
+#endif
}
LayerManagerComposite::~LayerManagerComposite()
@@ -151,8 +157,11 @@ LayerManagerComposite::Destroy()
}
mRoot = nullptr;
mClonedLayerTreeProperties = nullptr;
- mPaintCounter = nullptr;
mDestroyed = true;
+
+#ifdef USE_SKIA
+ mPaintCounter = nullptr;
+#endif
}
}
@@ -564,7 +573,6 @@ LayerManagerComposite::InvalidateDebugOv
bool drawFps = gfxPrefs::LayersDrawFPS();
bool drawFrameCounter = gfxPrefs::DrawFrameCounter();
bool drawFrameColorBars = gfxPrefs::CompositorDrawColorBars();
- bool drawPaintTimes = gfxPrefs::AlwaysPaint();
if (drawFps || drawFrameCounter) {
aInvalidRegion.Or(aInvalidRegion, nsIntRect(0, 0, 256, 256));
@@ -572,11 +580,16 @@ LayerManagerComposite::InvalidateDebugOv
if (drawFrameColorBars) {
aInvalidRegion.Or(aInvalidRegion, nsIntRect(0, 0, 10, aBounds.height));
}
+
+#ifdef USE_SKIA
+ bool drawPaintTimes = gfxPrefs::AlwaysPaint();
if (drawPaintTimes) {
aInvalidRegion.Or(aInvalidRegion, nsIntRect(PaintCounter::GetPaintRect()));
}
+#endif
}
+#ifdef USE_SKIA
void
LayerManagerComposite::DrawPaintTimes(Compositor* aCompositor)
{
@@ -587,6 +600,7 @@ LayerManagerComposite::DrawPaintTimes(Co
TimeDuration compositeTime = TimeStamp::Now() - mRenderStartTime;
mPaintCounter->Draw(aCompositor, mLastPaintTime, compositeTime);
}
+#endif
static uint16_t sFrameCount = 0;
void
@@ -595,7 +609,6 @@ LayerManagerComposite::RenderDebugOverla
bool drawFps = gfxPrefs::LayersDrawFPS();
bool drawFrameCounter = gfxPrefs::DrawFrameCounter();
bool drawFrameColorBars = gfxPrefs::CompositorDrawColorBars();
- bool drawPaintTimes = gfxPrefs::AlwaysPaint();
TimeStamp now = TimeStamp::Now();
@@ -736,9 +749,12 @@ LayerManagerComposite::RenderDebugOverla
sFrameCount++;
}
+#ifdef USE_SKIA
+ bool drawPaintTimes = gfxPrefs::AlwaysPaint();
if (drawPaintTimes) {
DrawPaintTimes(mCompositor);
}
+#endif
}
RefPtr<CompositingRenderTarget>
diff -up firefox-51.0/gfx/layers/composite/LayerManagerComposite.h.1319374 firefox-51.0/gfx/layers/composite/LayerManagerComposite.h
--- firefox-51.0/gfx/layers/composite/LayerManagerComposite.h.1319374 2017-01-16 17:16:50.000000000 +0100
+++ firefox-51.0/gfx/layers/composite/LayerManagerComposite.h 2017-01-20 12:17:56.589954310 +0100
@@ -331,11 +331,6 @@ private:
#endif
/**
- * Render paint and composite times above the frame.
- */
- void DrawPaintTimes(Compositor* aCompositor);
-
- /**
* We need to know our invalid region before we're ready to render.
*/
void InvalidateDebugOverlay(nsIntRegion& aInvalidRegion, const gfx::IntRect& aBounds);
@@ -391,9 +386,16 @@ private:
bool mLastFrameMissedHWC;
bool mWindowOverlayChanged;
- RefPtr<PaintCounter> mPaintCounter;
TimeDuration mLastPaintTime;
TimeStamp mRenderStartTime;
+
+#ifdef USE_SKIA
+ /**
+ * Render paint and composite times above the frame.
+ */
+ void DrawPaintTimes(Compositor* aCompositor);
+ RefPtr<PaintCounter> mPaintCounter;
+#endif
};
/**
diff -up firefox-51.0/gfx/layers/moz.build.1319374 firefox-51.0/gfx/layers/moz.build
--- firefox-51.0/gfx/layers/moz.build.1319374 2017-01-16 17:16:50.000000000 +0100
+++ firefox-51.0/gfx/layers/moz.build 2017-01-20 12:17:56.589954310 +0100
@@ -340,7 +340,6 @@ UNIFIED_SOURCES += [
'composite/ImageHost.cpp',
'composite/ImageLayerComposite.cpp',
'composite/LayerManagerComposite.cpp',
- 'composite/PaintCounter.cpp',
'composite/PaintedLayerComposite.cpp',
'composite/TextRenderer.cpp',
'composite/TextureHost.cpp',
@@ -485,3 +484,8 @@ LOCAL_INCLUDES += CONFIG['SKIA_INCLUDES'
if CONFIG['GNU_CXX']:
CXXFLAGS += ['-Wno-error=shadow']
+
+if CONFIG['MOZ_ENABLE_SKIA']:
+ UNIFIED_SOURCES += [
+ 'composite/PaintCounter.cpp',
+ ]

View File

@ -1,39 +0,0 @@
diff --git a/build/autoconf/compiler-opts.m4 b/build/autoconf/compiler-opts.m4
--- a/build/autoconf/compiler-opts.m4
+++ b/build/autoconf/compiler-opts.m4
@@ -173,16 +173,34 @@ AC_SUBST([LD_IS_BFD])
if test "$GNU_CC"; then
if test -z "$DEVELOPER_OPTIONS"; then
CFLAGS="$CFLAGS -ffunction-sections -fdata-sections"
CXXFLAGS="$CXXFLAGS -ffunction-sections -fdata-sections"
fi
CFLAGS="$CFLAGS -fno-math-errno"
CXXFLAGS="$CXXFLAGS -fno-exceptions -fno-math-errno"
+
+ if test -z "$CLANG_CC"; then
+ case "$CC_VERSION" in
+ 4.*)
+ ;;
+ *)
+ # Lifetime Dead Store Elimination level 2 (default in GCC6+) breaks Gecko.
+ # Ideally, we'd use -flifetime-dse=1, but that means we'd forcefully
+ # enable it on optimization levels where it would otherwise not be enabled.
+ # So we disable it entirely. But since that would mean inconsistency with
+ # GCC5, which has level 1 depending on optimization level, disable it on
+ # GCC5 as well, because better safe than sorry.
+ # Add it first so that a mozconfig can override by setting CFLAGS/CXXFLAGS.
+ CFLAGS="-fno-lifetime-dse $CFLAGS"
+ CXXFLAGS="-fno-lifetime-dse $CXXFLAGS"
+ ;;
+ esac
+ fi
fi
dnl ========================================================
dnl = Identical Code Folding
dnl ========================================================
MOZ_ARG_DISABLE_BOOL(icf,
[ --disable-icf Disable Identical Code Folding],

View File

@ -1,6 +1,20 @@
diff -up firefox-46.0/media/webrtc/trunk/webrtc/build/common.gypi.arm firefox-46.0/media/webrtc/trunk/webrtc/build/common.gypi
--- firefox-46.0/media/webrtc/trunk/webrtc/build/common.gypi.arm 2016-04-25 12:03:12.486027089 +0200
+++ firefox-46.0/media/webrtc/trunk/webrtc/build/common.gypi 2016-04-25 12:05:55.714644873 +0200
diff -up firefox-52.0/gfx/skia/skia/include/core/SkPreConfig.h.arm firefox-52.0/gfx/skia/skia/include/core/SkPreConfig.h
--- firefox-52.0/gfx/skia/skia/include/core/SkPreConfig.h.arm 2017-03-03 13:53:52.480754536 +0100
+++ firefox-52.0/gfx/skia/skia/include/core/SkPreConfig.h 2017-03-03 13:56:01.476018102 +0100
@@ -203,6 +203,10 @@
#define SK_ARM_HAS_CRC32
#endif
+#if defined(__aarch64__)
+ #undef SK_ARM_HAS_NEON
+#endif
+
//////////////////////////////////////////////////////////////////////
#if !defined(SKIA_IMPLEMENTATION)
diff -up firefox-52.0/media/webrtc/trunk/webrtc/build/common.gypi.arm firefox-52.0/media/webrtc/trunk/webrtc/build/common.gypi
--- firefox-52.0/media/webrtc/trunk/webrtc/build/common.gypi.arm 2016-09-05 22:12:57.000000000 +0200
+++ firefox-52.0/media/webrtc/trunk/webrtc/build/common.gypi 2017-03-03 13:53:52.480754536 +0100
@@ -312,20 +312,6 @@
'defines': [
'WEBRTC_ARCH_ARM',
@ -22,18 +36,3 @@ diff -up firefox-46.0/media/webrtc/trunk/webrtc/build/common.gypi.arm firefox-46
}],
['os_bsd==1', {
'defines': [
diff -up firefox-51.0/gfx/skia/skia/include/core/SkPreConfig.h.old firefox-51.0/gfx/skia/skia/include/core/SkPreConfig.h
--- firefox-51.0/gfx/skia/skia/include/core/SkPreConfig.h.old 2017-01-20 10:22:48.921666380 +0100
+++ firefox-51.0/gfx/skia/skia/include/core/SkPreConfig.h 2017-01-20 10:23:23.600486691 +0100
@@ -208,6 +208,10 @@
#define SK_ARM_HAS_NEON
#endif
+#if defined(__aarch64__)
+ #undef SK_ARM_HAS_NEON
+#endif
+
//////////////////////////////////////////////////////////////////////
#if !defined(SKIA_IMPLEMENTATION)
diff -up firefox-51.0/media/webrtc/trunk/Makefile.old firefox-51.0/media/webrtc/trunk/Makefile

View File

@ -1,2 +1,2 @@
SHA512 (firefox-langpacks-51.0.1-20170126.tar.xz) = 5c36e7ca9dad921a350495a550ba78f387a462408dcff170f8944eb98ef66ac0bbfbe546378836d77cfd56c16403ecd874ac7c15a83fa8bfa44d3271a8a31858
SHA512 (firefox-51.0.1.source.tar.xz) = 556e31b717c0640ef5e181e00b9d2a6ea0ace7c16ae04333d0f2e9e120d0ab9efe82a4ca314ef43594c080523edf37953e65dbf694c7428be0a024f3719d8312
SHA512 (firefox-52.0.source.tar.xz) = bffe5fd9eee240f252bf8a882c46f04551d21f6f58b8da68779cd106ed012ea77ee16bc287c847f8a7b959203c79f1b1d3f50151111f9610e1ca7a57c7b811f7
SHA512 (firefox-langpacks-52.0-20170303.tar.xz) = c542fae511f35ed837f4a556fe5fe6aba936af7b2f2ba3f59aee1efdf68f4c8c31e6a53fc6bb806e0256f6a2ae00a5b4f98935243edbee40928bc25d6057e681

File diff suppressed because it is too large Load Diff