diff options
Diffstat (limited to 'recipes-wam/chromium')
4 files changed, 1 insertions, 194 deletions
diff --git a/recipes-wam/chromium/chromium84_git.bb b/recipes-wam/chromium/chromium84_git.bb index 24613db95..aaff50bdd 100644 --- a/recipes-wam/chromium/chromium84_git.bb +++ b/recipes-wam/chromium/chromium84_git.bb @@ -3,15 +3,12 @@ require chromium.inc SRC_URI = "\ git://github.com/igalia/${PN};branch=marlin;protocol=https;rev=${SRCREV_chromium84};name=chromium84 \ git://github.com/webosose/chromium-v8;branch=@chromium84;destsuffix=git/src/v8;rev=${SRCREV_v8};name=v8;protocol=https \ - file://add-a-delay-to-agl-ready-event.patch \ - file://chromium-quiche-invalid-offsetof.patch \ - file://chromium-skia-no_sanitize.patch \ " # Needed by catapult DEPENDS += "python-six-native python-beautifulsoup4-native python-lxml-native python-html5lib-native python-webencodings-native" -SRCREV_chromium84 = "3d6fd5dd0b836dbda2ea356ee1b25a9149419fef" +SRCREV_chromium84 = "005a9257d3ba9eb363e19f5a8efc6758924dbf9b" SRCREV_v8 = "5c1d89dd2945a10cf7a6a3458050b3177a870b09" BROWSER_APPLICATION = "chromium84-browser" diff --git a/recipes-wam/chromium/files/add-a-delay-to-agl-ready-event.patch b/recipes-wam/chromium/files/add-a-delay-to-agl-ready-event.patch deleted file mode 100644 index 20caccbf6..000000000 --- a/recipes-wam/chromium/files/add-a-delay-to-agl-ready-event.patch +++ /dev/null @@ -1,70 +0,0 @@ -From d2d09d3e13a3874961971d343553106a1f3d5ac7 Mon Sep 17 00:00:00 2001 -From: Roger Zanoni <rzanoni@igalia.com> -Date: Thu, 3 Jun 2021 10:53:40 +0200 -Subject: [PATCH] Add a delay to agl ready event - -Delay ready() to ensure that all the window and surfaces setup -is done before notifying the compositor ---- - .../ozone/platform/wayland/host/wayland_window.cc | 14 +++++++++++++- - .../ozone/platform/wayland/host/wayland_window.h | 5 +++++ - 2 files changed, 18 insertions(+), 1 deletion(-) - -diff --git a/src/ui/ozone/platform/wayland/host/wayland_window.cc b/src/ui/ozone/platform/wayland/host/wayland_window.cc -index d2a9b0dae5..27749fd70d 100644 ---- a/src/ui/ozone/platform/wayland/host/wayland_window.cc -+++ b/src/ui/ozone/platform/wayland/host/wayland_window.cc -@@ -299,7 +299,19 @@ WaylandWindow::SetAglReady(void) - if (!connection_->agl_shell_manager) { - return; - } -- connection_->agl_shell_manager->ready(); -+ -+ // Delay activation to ensure that all the setup is done -+ // TODO(rzanoni): find a more deterministic way of doing this -+ set_ready_timer_.Start(FROM_HERE, -+ base::TimeDelta::FromMilliseconds(500), -+ this, -+ &WaylandWindow::SetReadyCallback); -+} -+ -+ -+void WaylandWindow::SetReadyCallback() { -+ connection_->agl_shell_manager->ready(); -+ connection_->ScheduleFlush(); - } - - bool WaylandWindow::CanDispatchEvent(const PlatformEvent& event) { -diff --git a/src/ui/ozone/platform/wayland/host/wayland_window.h b/src/ui/ozone/platform/wayland/host/wayland_window.h -index 2acac98ae9..c10db38d21 100644 ---- a/src/ui/ozone/platform/wayland/host/wayland_window.h -+++ b/src/ui/ozone/platform/wayland/host/wayland_window.h -@@ -15,6 +15,7 @@ - #include "base/containers/flat_set.h" - #include "base/gtest_prod_util.h" - #include "base/memory/ref_counted.h" -+#include "base/timer/timer.h" - #include "ui/events/platform/platform_event_dispatcher.h" - #include "ui/gfx/geometry/rect.h" - #include "ui/gfx/native_widget_types.h" -@@ -232,6 +233,8 @@ class WaylandWindow : public PlatformWindow, public PlatformEventDispatcher { - // Returns a root parent window. - WaylandWindow* GetRootParentWindow(); - -+ void SetReadyCallback(); -+ - // Install a surface listener and start getting wl_output enter/leave events. - void AddSurfaceListener(); - -@@ -311,6 +314,8 @@ class WaylandWindow : public PlatformWindow, public PlatformEventDispatcher { - // The type of the current WaylandWindow object. - ui::PlatformWindowType type_ = ui::PlatformWindowType::kWindow; - -+ base::OneShotTimer set_ready_timer_; -+ - DISALLOW_COPY_AND_ASSIGN(WaylandWindow); - }; - --- -2.32.0 - diff --git a/recipes-wam/chromium/files/chromium-quiche-invalid-offsetof.patch b/recipes-wam/chromium/files/chromium-quiche-invalid-offsetof.patch deleted file mode 100644 index 4fdd98de4..000000000 --- a/recipes-wam/chromium/files/chromium-quiche-invalid-offsetof.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 4cea86e76af28b28aa72cb7c69ff7cf242b2bd5d Mon Sep 17 00:00:00 2001 -From: Stephan Hartmann <stha09@googlemail.com> -Date: Sat, 27 Jun 2020 12:18:05 +0000 -Subject: [PATCH] GCC: supress invalid-offsetof warning - -GCC emits a warning if offsetof is used for non-POD -types. However, GCC supports this and prints only -the warning, because it might be nonportable code. -Disable the warning for GCC with a pragma. ---- - src/net/third_party/quiche/src/quic/core/frames/quic_frame.h | 7 +++++++ - .../quiche/src/quic/core/frames/quic_inlined_frame.h | 7 +++++++ - 2 files changed, 14 insertions(+) - -diff --git a/src/net/third_party/quiche/src/quic/core/frames/quic_frame.h b/src/net/third_party/quiche/src/quic/core/frames/quic_frame.h -index 756b69f..aceba76 100644 ---- a/src/net/third_party/quiche/src/quic/core/frames/quic_frame.h -+++ b/src/net/third_party/quiche/src/quic/core/frames/quic_frame.h -@@ -110,8 +110,15 @@ struct QUIC_EXPORT_PRIVATE QuicFrame { - - static_assert(sizeof(QuicFrame) <= 24, - "Frames larger than 24 bytes should be referenced by pointer."); -+#if defined(__GNUC__) -+#pragma GCC diagnostic push -+#pragma GCC diagnostic ignored "-Winvalid-offsetof" -+#endif - static_assert(offsetof(QuicStreamFrame, type) == offsetof(QuicFrame, type), - "Offset of |type| must match in QuicFrame and QuicStreamFrame"); -+#if defined(__GNUC__) -+#pragma GCC diagnostic pop -+#endif - - // A inline size of 1 is chosen to optimize the typical use case of - // 1-stream-frame in QuicTransmissionInfo.retransmittable_frames. -diff --git a/src/net/third_party/quiche/src/quic/core/frames/quic_inlined_frame.h b/src/net/third_party/quiche/src/quic/core/frames/quic_inlined_frame.h -index 08c4869..804e4bb 100644 ---- a/src/net/third_party/quiche/src/quic/core/frames/quic_inlined_frame.h -+++ b/src/net/third_party/quiche/src/quic/core/frames/quic_inlined_frame.h -@@ -17,8 +17,15 @@ namespace quic { - template <typename DerivedT> - struct QUIC_EXPORT_PRIVATE QuicInlinedFrame { - QuicInlinedFrame(QuicFrameType type) : type(type) { -+#if defined(__GNUC__) -+#pragma GCC diagnostic push -+#pragma GCC diagnostic ignored "-Winvalid-offsetof" -+#endif - static_assert(offsetof(DerivedT, type) == 0, - "type must be the first field."); -+#if defined(__GNUC__) -+#pragma GCC diagnostic pop -+#endif - static_assert(sizeof(DerivedT) <= 24, - "Frames larger than 24 bytes should not be inlined."); - } --- -2.26.2 - diff --git a/recipes-wam/chromium/files/chromium-skia-no_sanitize.patch b/recipes-wam/chromium/files/chromium-skia-no_sanitize.patch deleted file mode 100644 index abfba57ab..000000000 --- a/recipes-wam/chromium/files/chromium-skia-no_sanitize.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 04765936a0a8dd3ac3f530786fce6b5cea826d3e Mon Sep 17 00:00:00 2001 -From: Roger Zanoni <rzanoni@igalia.com> -Date: Wed, 24 Feb 2021 13:50:27 +0100 -Subject: [PATCH] [skia][build] fix skia no_sanitize build issues for gcc - -Based on https://src.fedoraproject.org/rpms/chromium/blob/rawhide/f/chromium-skia-no_sanitize.patch - ---- - .../skia/include/private/SkFloatingPoint.h | 24 +++++++++++++++++++ - 1 file changed, 24 insertions(+) - -diff --git a/src/third_party/skia/include/private/SkFloatingPoint.h b/src/third_party/skia/include/private/SkFloatingPoint.h -index 110dda2ae4..8223e9b57d 100644 ---- a/src/third_party/skia/include/private/SkFloatingPoint.h -+++ b/src/third_party/skia/include/private/SkFloatingPoint.h -@@ -159,7 +159,15 @@ static inline int64_t sk_float_saturate2int64(float x) { - // Cast double to float, ignoring any warning about too-large finite values being cast to float. - // Clang thinks this is undefined, but it's actually implementation defined to return either - // the largest float or infinity (one of the two bracketing representable floats). Good enough! -+#if defined(__GNUC__) && __GNUC__ >= 8 -+__attribute__((no_sanitize("float-cast-overflow"))) -+#else -+# if defined(__GNUC__) -+__attribute__((no_sanitize_undefined)) -+# else - [[clang::no_sanitize("float-cast-overflow")]] -+# endif -+#endif - static inline float sk_double_to_float(double x) { - return static_cast<float>(x); - } -@@ -226,12 +234,28 @@ static inline float sk_float_rsqrt(float x) { - // IEEE defines how float divide behaves for non-finite values and zero-denoms, but C does not - // so we have a helper that suppresses the possible undefined-behavior warnings. - -+#if defined(__GNUC__) && __GNUC__ >= 8 -+__attribute__((no_sanitize("float-divide-by-zero"))) -+#else -+# if defined(__GNUC__) -+__attribute__((no_sanitize_undefined)) -+# else - [[clang::no_sanitize("float-divide-by-zero")]] -+# endif -+#endif - static inline float sk_ieee_float_divide(float numer, float denom) { - return numer / denom; - } - -+#if defined(__GNUC__) && __GNUC__ >= 8 -+__attribute__((no_sanitize("float-cast-overflow"))) -+#else -+# if defined(__GNUC__) -+__attribute__((no_sanitize_undefined)) -+# else - [[clang::no_sanitize("float-divide-by-zero")]] -+# endif -+#endif - static inline double sk_ieee_double_divide(double numer, double denom) { - return numer / denom; - } --- -2.30.1 - |