diff --git a/chromium-80-QuicStreamSendBuffer-deleted-move-constructor.patch b/chromium-80-QuicStreamSendBuffer-deleted-move-constructor.patch deleted file mode 100644 index aa3d5412..00000000 --- a/chromium-80-QuicStreamSendBuffer-deleted-move-constructor.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 00f47df999c9b19e80fdc01db0ae9ca1b6a12b3a Mon Sep 17 00:00:00 2001 -From: vasilvv -Date: Wed, 03 Apr 2019 13:58:53 -0700 -Subject: [PATCH] GCC: do not delete move constructor of QuicStreamSendBuffer - -QuicStreamSendBuffer constructor is implicitely required in the -initialization of the vector of substreams in QuicCryptoStream. -Though clang apparently ignores that, GCC fails to build. - -BUG=chromium:819294 - -Originally submitted by José Dapena Paz at https://quiche-review.googlesource.com/c/quiche/+/2420 - -PiperOrigin-RevId: 241800134 -Change-Id: I4e3c97d6e5895d85340e8c1b740e6196d9104066 ---- - -diff --git a/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h b/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h -index e34514b..74e9d0d 100644 ---- a/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h -+++ b/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h -@@ -62,7 +62,7 @@ - public: - explicit QuicStreamSendBuffer(QuicBufferAllocator* allocator); - QuicStreamSendBuffer(const QuicStreamSendBuffer& other) = delete; -- QuicStreamSendBuffer(QuicStreamSendBuffer&& other) = delete; -+ QuicStreamSendBuffer(QuicStreamSendBuffer&& other) = default; - ~QuicStreamSendBuffer(); - - // Save |data_length| of data starts at |iov_offset| in |iov| to send buffer. diff --git a/chromium-83.0.4103.97-gcc10-aarch64-hack.patch b/chromium-83.0.4103.97-gcc10-aarch64-hack.patch deleted file mode 100644 index 028b0248..00000000 --- a/chromium-83.0.4103.97-gcc10-aarch64-hack.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -up chromium-83.0.4103.97/third_party/skia/include/private/SkVx.h.gcc10-aarch64-hack chromium-83.0.4103.97/third_party/skia/include/private/SkVx.h ---- chromium-83.0.4103.97/third_party/skia/include/private/SkVx.h.gcc10-aarch64-hack 2020-06-18 14:47:30.912177044 +0000 -+++ chromium-83.0.4103.97/third_party/skia/include/private/SkVx.h 2020-06-18 14:51:08.230506417 +0000 -@@ -141,6 +141,15 @@ static inline D bit_pun(const S& s) { - return d; - } - -+// This is a hack to work around GCC PR95726 -+template -+static inline D bit_pun2(const S& s) { -+ static_assert(sizeof(D) == sizeof(S), ""); -+ D d; -+ memcpy(&d, &s, sizeof(D)); -+ return d; -+} -+ - // Translate from a value type T to its corresponding Mask, the result of a comparison. - template struct Mask { using type = T; }; - template <> struct Mask { using type = int32_t; }; -@@ -554,9 +563,9 @@ static inline Vec approx_scal - static inline Vec<4,float> if_then_else(const Vec<4,int >& c, - const Vec<4,float>& t, - const Vec<4,float>& e) { -- return bit_pun>(vbslq_f32(bit_pun (c), -- bit_pun(t), -- bit_pun(e))); -+ return bit_pun>(vbslq_f32(bit_pun2 (c), -+ bit_pun2(t), -+ bit_pun2(e))); - } - #endif - -@@ -581,9 +590,9 @@ static inline Vec approx_scal - const Vec<4,float>& y, - const Vec<4,float>& z) { - // These instructions tend to work like z += xy, so the order here is z,x,y. -- return bit_pun>(vfmaq_f32(bit_pun(z), -- bit_pun(x), -- bit_pun(y))); -+ return bit_pun>(vfmaq_f32(bit_pun2(z), -+ bit_pun2(x), -+ bit_pun2(y))); - } - #endif - diff --git a/chromium-85.0.4183.102-invalid-end-CookieMonster-53478ca.patch b/chromium-85.0.4183.102-invalid-end-CookieMonster-53478ca.patch deleted file mode 100644 index 34dd4f40..00000000 --- a/chromium-85.0.4183.102-invalid-end-CookieMonster-53478ca.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -up chromium-85.0.4183.102/net/cookies/cookie_monster.cc.fixme chromium-85.0.4183.102/net/cookies/cookie_monster.cc ---- chromium-85.0.4183.102/net/cookies/cookie_monster.cc.fixme 2020-09-21 14:52:06.606722391 -0400 -+++ chromium-85.0.4183.102/net/cookies/cookie_monster.cc 2020-09-21 14:53:40.247366159 -0400 -@@ -1151,9 +1151,14 @@ CookieMonster::CookieMap::iterator Cooki - // |num_keys_| counter. - bool different_prev = - inserted == cookies_.begin() || std::prev(inserted)->first != key; -- bool different_next = -- inserted == cookies_.end() || std::next(inserted)->first != key; -- if (different_prev && different_next) -+ // According to std::multiqueue documentation: -+ // "If the container has elements with equivalent key, inserts at the upper -+ // bound of that range. (since C++11)" -+ // This means that "inserted" iterator either points to the last element in -+ // the map, or the element succeeding it has to have different key. -+ DCHECK(std::next(inserted) == cookies_.end() || -+ std::next(inserted)->first != key); -+ if (different_prev) - ++num_keys_; - - return inserted; -@@ -1373,7 +1378,7 @@ void CookieMonster::InternalDeleteCookie - bool different_prev = - it == cookies_.begin() || std::prev(it)->first != it->first; - bool different_next = -- it == cookies_.end() || std::next(it)->first != it->first; -+ std::next(it) == cookies_.end() || std::next(it)->first != it->first; - if (different_prev && different_next) - --num_keys_; - diff --git a/chromium-86-ConsumeDurationNumber-constexpr.patch b/chromium-86-ConsumeDurationNumber-constexpr.patch deleted file mode 100644 index b6232237..00000000 --- a/chromium-86-ConsumeDurationNumber-constexpr.patch +++ /dev/null @@ -1,32 +0,0 @@ -From f64e2d2daa64749995253f8ad00679ce74abdc1b Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Wed, 19 Aug 2020 11:02:00 +0200 -Subject: [PATCH] GCC: ConsumeDurationNumber cannot be a constexpr - -Declaring base::ConsumeDurationNumber as constexpr is not valid, as it -uses the BasicStringPiece::begin method, that is not constexpr. - -build error in GCC: -../../base/time/time.cc: In function ‘constexpr base::Optional base::{anonymous}::ConsumeDurationNumber(base::StringPiece&)’: -../../base/time/time.cc:67:63: error: call to non-‘constexpr’ function ‘const value_type* base::BasicStringPiece::begin() const [with STRING_TYPE = std::__cxx11::basic_string; base::BasicStringPiece::const_iterator = const char*; base::BasicStringPiece::value_type = char]’ - 67 | StringPiece::const_iterator orig_start = number_string.begin(); - | ~~~~~~~~~~~~~~~~~~~^~ - -Bug: 859294 -Change-Id: Id987d003f66052848d7083bb33abc3acfd109b73 ---- - -diff --git a/base/time/time.cc b/base/time/time.cc -index 1b1a830..7c47419 100644 ---- a/base/time/time.cc -+++ b/base/time/time.cc -@@ -61,8 +61,7 @@ - // - // Adapted from absl: - // https://cs.chromium.org/chromium/src/third_party/abseil-cpp/absl/time/duration.cc?l=807&rcl=2c22e9135f107a4319582ae52e2e3e6b201b6b7c --constexpr Optional ConsumeDurationNumber( -- StringPiece& number_string) { -+Optional ConsumeDurationNumber(StringPiece& number_string) { - ParsedDecimal res; - StringPiece::const_iterator orig_start = number_string.begin(); - // Parse contiguous digits. diff --git a/chromium-86-ImageMemoryBarrierData-init.patch b/chromium-86-ImageMemoryBarrierData-init.patch deleted file mode 100644 index ff12a80f..00000000 --- a/chromium-86-ImageMemoryBarrierData-init.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 2879a6ba43b65c33e3c02432b4ae7a7462d24096 Mon Sep 17 00:00:00 2001 -From: Stephan Hartmann -Date: Fri, 28 Aug 2020 07:23:29 +0000 -Subject: [PATCH] GCC: fix ImageMemoryBarrierData initialization - -GCC can't convert constant string to char[40]. Use const char * instead. -Otherwise fails like this: - -src/libANGLE/renderer/vulkan/vk_helpers.cpp:121:1: error: could not convert -'...' from '' to -'const angle::PackedEnumMap' ---- - third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp b/third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp -index af957d7..7fe82ae 100644 ---- a/third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp -+++ b/third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp -@@ -73,7 +73,7 @@ enum BarrierType - - struct ImageMemoryBarrierData - { -- char name[40]; -+ const char *name; - - // The Vk layout corresponding to the ImageLayout key. - VkImageLayout layout; --- -2.26.2 - diff --git a/chromium-86-ServiceWorkerRunningInfo-noexcept.patch b/chromium-86-ServiceWorkerRunningInfo-noexcept.patch deleted file mode 100644 index ce692124..00000000 --- a/chromium-86-ServiceWorkerRunningInfo-noexcept.patch +++ /dev/null @@ -1,63 +0,0 @@ -From e4b5d6eddf876509c05cb377bc4ce67fae0f3b1c Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Fri, 21 Aug 2020 07:40:33 +0000 -Subject: [PATCH] GCC: default move constructor of ServiceWorkerRunningInfo noexcept requires StrongAlias noexcept too. - -Fix for this GCC compilation error: -../../content/public/browser/service_worker_running_info.cc:26:1: error: function ‘content::ServiceWorkerRunningInfo::ServiceWorkerRunningInfo(content::ServiceWorkerRunningInfo&&)’ defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification ‘’ - 26 | ServiceWorkerRunningInfo::ServiceWorkerRunningInfo( - | ^~~~~~~~~~~~~~~~~~~~~~~~ - -Problem comes from blink::ServiceWorkerToken move constructor being declared -noexcept, but its parent StrongAlias not having noexcept. - -Fix making StrongAlias move constructor noexcept too. - -Bug: 819294 -Change-Id: I127a435b3d1f52f01a40700457ce6e67d5d67af2 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2359077 -Reviewed-by: Daniel Cheng -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#800495} ---- - -diff --git a/base/util/type_safety/strong_alias.h b/base/util/type_safety/strong_alias.h -index ea93928..df49749 100644 ---- a/base/util/type_safety/strong_alias.h -+++ b/base/util/type_safety/strong_alias.h -@@ -70,7 +70,8 @@ - public: - constexpr StrongAlias() = default; - constexpr explicit StrongAlias(const UnderlyingType& v) : value_(v) {} -- constexpr explicit StrongAlias(UnderlyingType&& v) : value_(std::move(v)) {} -+ constexpr explicit StrongAlias(UnderlyingType&& v) noexcept -+ : value_(std::move(v)) {} - - constexpr UnderlyingType& value() & { return value_; } - constexpr const UnderlyingType& value() const& { return value_; } -From 4924144afd81017920885aecf4aedfe5d86ae71c Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Fri, 21 Aug 2020 18:32:11 +0200 -Subject: [PATCH] GCC: pending fix for ServiceWorkerRunningInfo noexcept in move constructor - -It is not enough to make StrongAlias noexcept. TokenType needs to also -provide noexcept move constructor. - -Bug: 819294 -Change-Id: Ib85faa18f66b41053fb71ecee32e818e05685080 ---- - -diff --git a/base/util/type_safety/token_type.h b/base/util/type_safety/token_type.h -index 0a12679..2cbfdb7 100644 ---- a/base/util/type_safety/token_type.h -+++ b/base/util/type_safety/token_type.h -@@ -23,6 +23,9 @@ - TokenType() : Super(base::UnguessableToken::Create()) {} - explicit TokenType(const base::UnguessableToken& token) : Super(token) {} - TokenType(const TokenType& token) : Super(token.value()) {} -+ TokenType(TokenType&& token) noexcept : Super(token.value()) {} -+ TokenType& operator=(const TokenType& token) = default; -+ TokenType& operator=(TokenType&& token) noexcept = default; - - // This object allows default assignment operators for compatibility with - // STL containers. diff --git a/chromium-86-nearby-explicit.patch b/chromium-86-nearby-explicit.patch deleted file mode 100644 index 84709cb0..00000000 --- a/chromium-86-nearby-explicit.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 849e5c6b3a8746d9205102bd3df4e140cead405a Mon Sep 17 00:00:00 2001 -From: Stephan Hartmann -Date: Sat, 18 Jul 2020 15:11:13 +0000 -Subject: [PATCH] GCC: remove explicit from AtomicReference constructor - ---- - .../nearby/src/cpp/platform_v2/public/atomic_reference.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/third_party/nearby/src/cpp/platform_v2/public/atomic_reference.h b/third_party/nearby/src/cpp/platform_v2/public/atomic_reference.h -index 5742724..bbb8c01 100644 ---- a/third_party/nearby/src/cpp/platform_v2/public/atomic_reference.h -+++ b/third_party/nearby/src/cpp/platform_v2/public/atomic_reference.h -@@ -37,7 +37,7 @@ class AtomicReference(value))) { - } - ~AtomicReference() = default; --- -2.26.2 - diff --git a/chromium-86-nearby-include.patch b/chromium-86-nearby-include.patch deleted file mode 100644 index d3f02c27..00000000 --- a/chromium-86-nearby-include.patch +++ /dev/null @@ -1,24 +0,0 @@ -From a5b2ee9dd7dfb186e26ec6c0c06c2ae1a9d27195 Mon Sep 17 00:00:00 2001 -From: Stephan Hartmann -Date: Sat, 18 Jul 2020 14:15:50 +0000 -Subject: [PATCH] IWYU: memcpy is defined in cstring - ---- - third_party/nearby/src/cpp/platform_v2/base/byte_array.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/third_party/nearby/src/cpp/platform_v2/base/byte_array.h b/third_party/nearby/src/cpp/platform_v2/base/byte_array.h -index ee5d0eb..4b1d79b 100644 ---- a/third_party/nearby/src/cpp/platform_v2/base/byte_array.h -+++ b/third_party/nearby/src/cpp/platform_v2/base/byte_array.h -@@ -17,6 +17,7 @@ - - #include - #include -+#include - #include - #include - #include --- -2.26.2 - diff --git a/chromium-87-ServiceWorkerContainerHost-crash.patch b/chromium-87-ServiceWorkerContainerHost-crash.patch new file mode 100644 index 00000000..5efc460c --- /dev/null +++ b/chromium-87-ServiceWorkerContainerHost-crash.patch @@ -0,0 +1,22 @@ +Bug: https://bugs.gentoo.org/750038 +Upstream bug: https://crbug.com/1135070 + +--- a/content/browser/service_worker/service_worker_container_host.cc ++++ b/content/browser/service_worker/service_worker_container_host.cc +@@ -626,6 +626,16 @@ + int64_t registration_id) { + DCHECK_CURRENTLY_ON(ServiceWorkerContext::GetCoreThreadId()); + DCHECK(base::Contains(registration_object_hosts_, registration_id)); ++ ++ // ServiceWorkerRegistrationObjectHost to be deleted may have the last reference to ++ // ServiceWorkerRegistration that indirectly owns this ServiceWorkerContainerHost. ++ // If we erase the object host directly from the map, |this| could be deleted ++ // during the map operation and may crash. To avoid the case, we take the ++ // ownership of the object host from the map first, and then erase the entry ++ // from the map. See https://crbug.com/1135070 for details. ++ std::unique_ptr to_be_deleted = ++ std::move(registration_object_hosts_[registration_id]); ++ DCHECK(to_be_deleted); + registration_object_hosts_.erase(registration_id); + } + diff --git a/chromium-88-vaapi-attribute.patch b/chromium-88-vaapi-attribute.patch new file mode 100644 index 00000000..c524a315 --- /dev/null +++ b/chromium-88-vaapi-attribute.patch @@ -0,0 +1,39 @@ +From 4f4604877f3b666ac7a373ae443e3c3795424569 Mon Sep 17 00:00:00 2001 +From: Stephan Hartmann +Date: Fri, 6 Nov 2020 11:18:42 +0000 +Subject: [PATCH] GCC: fix attribute on function definition + +GCC does not accept attributes at the end for function definitions. +Solution is to move it before function name. Otherwise GCC fails like +this: + +../../base/compiler_specific.h:97:28: error: attributes are not allowed +on a function-definition + 97 | #define WARN_UNUSED_RESULT __attribute__((warn_unused_result)) + | ^~~~~~~~~~~~~ + ../../media/gpu/vaapi/vaapi_wrapper.h:322:36: note: in + expansion of macro 'WARN_UNUSED_RESULT' + 322 | const T* data) WARN_UNUSED_RESULT { + | ^~~~~~~~~~~~~~~~~~ +--- + media/gpu/vaapi/vaapi_wrapper.h | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/media/gpu/vaapi/vaapi_wrapper.h b/media/gpu/vaapi/vaapi_wrapper.h +index fd1fd82..deeda1f 100644 +--- a/media/gpu/vaapi/vaapi_wrapper.h ++++ b/media/gpu/vaapi/vaapi_wrapper.h +@@ -318,8 +318,8 @@ class MEDIA_GPU_EXPORT VaapiWrapper + // Convenient templatized version of SubmitBuffer() where |size| is deduced to + // be the size of the type of |*data|. + template +- bool SubmitBuffer(VABufferType va_buffer_type, +- const T* data) WARN_UNUSED_RESULT { ++ bool WARN_UNUSED_RESULT SubmitBuffer(VABufferType va_buffer_type, ++ const T* data) { + return SubmitBuffer(va_buffer_type, sizeof(T), data); + } + // Batch-version of SubmitBuffer(), where the lock for accessing libva is +-- +2.26.2 + diff --git a/chromium-gcc11.patch b/chromium-gcc11.patch new file mode 100644 index 00000000..d190871e --- /dev/null +++ b/chromium-gcc11.patch @@ -0,0 +1,139 @@ +diff --git a/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc b/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +index 19f9aab5b..8073637e9 100644 +--- a/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc ++++ b/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +@@ -35,6 +35,7 @@ + + #include "absl/synchronization/internal/graphcycles.h" + ++#include + #include + #include + #include "absl/base/internal/hide_ptr.h" +diff --git a/third_party/angle/src/libANGLE/HandleAllocator.cpp b/third_party/angle/src/libANGLE/HandleAllocator.cpp +index 013f1dfb2..3ce63c192 100644 +--- a/third_party/angle/src/libANGLE/HandleAllocator.cpp ++++ b/third_party/angle/src/libANGLE/HandleAllocator.cpp +@@ -9,6 +9,7 @@ + + #include "libANGLE/HandleAllocator.h" + ++#include + #include + #include + +diff --git a/third_party/perfetto/src/trace_processor/containers/string_pool.cc b/third_party/perfetto/src/trace_processor/containers/string_pool.cc +index fd651958f..1e8d0606c 100644 +--- a/third_party/perfetto/src/trace_processor/containers/string_pool.cc ++++ b/third_party/perfetto/src/trace_processor/containers/string_pool.cc +@@ -14,9 +14,9 @@ + * limitations under the License. + */ + ++#include + #include "src/trace_processor/containers/string_pool.h" + +-#include + + #include "perfetto/base/logging.h" + #include "perfetto/ext/base/utils.h" +diff --git a/third_party/perfetto/src/trace_processor/db/column.cc b/third_party/perfetto/src/trace_processor/db/column.cc +index 00496b335..0dccfeb8a 100644 +--- a/third_party/perfetto/src/trace_processor/db/column.cc ++++ b/third_party/perfetto/src/trace_processor/db/column.cc +@@ -14,6 +14,7 @@ + * limitations under the License. + */ + ++#include + #include "src/trace_processor/db/column.h" + + #include "src/trace_processor/db/compare.h" +diff --git a/third_party/perfetto/src/trace_processor/types/variadic.cc b/third_party/perfetto/src/trace_processor/types/variadic.cc +index 837bfeba9..cdd56817d 100644 +--- a/third_party/perfetto/src/trace_processor/types/variadic.cc ++++ b/third_party/perfetto/src/trace_processor/types/variadic.cc +@@ -14,6 +14,7 @@ + * limitations under the License. + */ + ++#include + #include "src/trace_processor/types/variadic.h" + + namespace perfetto { +diff --git a/ui/accessibility/platform/ax_platform_atk_hyperlink.cc b/ui/accessibility/platform/ax_platform_atk_hyperlink.cc +index be91def6b..73f202356 100644 +--- a/ui/accessibility/platform/ax_platform_atk_hyperlink.cc ++++ b/ui/accessibility/platform/ax_platform_atk_hyperlink.cc +@@ -245,7 +245,7 @@ static void AXPlatformAtkHyperlinkInit(AXPlatformAtkHyperlink* self, gpointer) { + } + + GType ax_platform_atk_hyperlink_get_type() { +- static volatile gsize type_volatile = 0; ++ static gsize type_volatile = 0; + + AXPlatformNodeAuraLinux::EnsureGTypeInit(); + +diff --git a/ui/accessibility/platform/ax_platform_node_auralinux.cc b/ui/accessibility/platform/ax_platform_node_auralinux.cc +index 04125c6fd..6c64e5d8e 100644 +--- a/ui/accessibility/platform/ax_platform_node_auralinux.cc ++++ b/ui/accessibility/platform/ax_platform_node_auralinux.cc +@@ -2274,7 +2274,7 @@ void ClassInit(gpointer class_pointer, gpointer /* class_data */) { + GType GetType() { + AXPlatformNodeAuraLinux::EnsureGTypeInit(); + +- static volatile gsize type_volatile = 0; ++ static gsize type_volatile = 0; + if (g_once_init_enter(&type_volatile)) { + static const GTypeInfo type_info = { + sizeof(AXPlatformNodeAuraLinuxClass), // class_size +diff --git a/ui/gtk/gtk_key_bindings_handler.cc b/ui/gtk/gtk_key_bindings_handler.cc +index c663a2074..38a342484 100644 +--- a/ui/gtk/gtk_key_bindings_handler.cc ++++ b/ui/gtk/gtk_key_bindings_handler.cc +@@ -141,7 +141,7 @@ void GtkKeyBindingsHandler::HandlerClassInit(HandlerClass* klass) { + } + + GType GtkKeyBindingsHandler::HandlerGetType() { +- static volatile gsize type_id_volatile = 0; ++ static gsize type_id_volatile = 0; + if (g_once_init_enter(&type_id_volatile)) { + GType type_id = g_type_register_static_simple( + GTK_TYPE_TEXT_VIEW, g_intern_static_string("GtkKeyBindingsHandler"), +diff --git a/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc b/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc +index c0b5a805b..e6f921926 100644 +--- a/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc ++++ b/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc +@@ -2,6 +2,7 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include + #include "chrome/browser/ui/bookmarks/bookmark_tab_helper.h" + + #include "base/observer_list.h" +diff --git a/components/bookmarks/browser/bookmark_expanded_state_tracker.cc b/components/bookmarks/browser/bookmark_expanded_state_tracker.cc +index 4ad2afa1f..5c4596e12 100644 +--- a/components/bookmarks/browser/bookmark_expanded_state_tracker.cc ++++ b/components/bookmarks/browser/bookmark_expanded_state_tracker.cc +@@ -2,6 +2,7 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include + #include "components/bookmarks/browser/bookmark_expanded_state_tracker.h" + + #include +diff --git a/components/bookmarks/browser/base_bookmark_model_observer.cc b/components/bookmarks/browser/base_bookmark_model_observer.cc +index 657a3c96b..ad641a082 100644 +--- a/components/bookmarks/browser/base_bookmark_model_observer.cc ++++ b/components/bookmarks/browser/base_bookmark_model_observer.cc +@@ -2,6 +2,8 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include ++ + #include "components/bookmarks/browser/base_bookmark_model_observer.h" + + namespace bookmarks { diff --git a/chromium.spec b/chromium.spec index 6e309cd5..e56ac70e 100644 --- a/chromium.spec +++ b/chromium.spec @@ -177,14 +177,14 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 86 +%global majorversion 87 %if %{freeworld} Name: chromium%{chromium_channel}%{nsuffix} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.4240.198 +Version: %{majorversion}.0.4280.66 Release: 1%{?dist} %if %{?freeworld} %if %{?shared} @@ -240,8 +240,6 @@ Patch53: chromium-77.0.3865.75-gcc-include-memory.patch Patch54: chromium-79-gcc-protobuf-alignas.patch # https://github.com/stha09/chromium-patches/blob/master/chromium-78-protobuf-RepeatedPtrField-export.patch Patch55: chromium-78-protobuf-RepeatedPtrField-export.patch -# https://github.com/stha09/chromium-patches/blob/master/chromium-80-QuicStreamSendBuffer-deleted-move-constructor.patch -Patch56: chromium-80-QuicStreamSendBuffer-deleted-move-constructor.patch # ../../third_party/perfetto/include/perfetto/base/task_runner.h:48:55: error: 'uint32_t' has not been declared Patch57: chromium-80.0.3987.87-missing-cstdint-header.patch # Missing (thanks c++17) @@ -249,22 +247,19 @@ Patch58: chromium-80.0.3987.106-missing-cstring-header.patch # prepare for using system ffmpeg (clean) # http://svnweb.mageia.org/packages/cauldron/chromium-browser-stable/current/SOURCES/chromium-53-ffmpeg-no-deprecation-errors.patch?view=markup Patch59: chromium-53-ffmpeg-no-deprecation-errors.patch -# Work around aarch64 gcc bug (PR95726) -# Patch60: chromium-83.0.4103.97-gcc10-aarch64-hack.patch # https://github.com/stha09/chromium-patches/blob/master/chromium-84-blink-disable-clang-format.patch Patch61: chromium-84-blink-disable-clang-format.patch # https://github.com/stha09/chromium-patches/blob/master/chromium-fix-char_traits.patch Patch62: chromium-fix-char_traits.patch -# https://github.com/stha09/chromium-patches/blob/master/chromium-86-ConsumeDurationNumber-constexpr.patch -Patch63: chromium-86-ConsumeDurationNumber-constexpr.patch -# https://github.com/stha09/chromium-patches/blob/master/chromium-86-ImageMemoryBarrierData-init.patch -Patch64: chromium-86-ImageMemoryBarrierData-init.patch -# https://github.com/stha09/chromium-patches/blob/master/chromium-86-nearby-explicit.patch -Patch65: chromium-86-nearby-explicit.patch -# https://github.com/stha09/chromium-patches/blob/master/chromium-86-nearby-include.patch -Patch66: chromium-86-nearby-include.patch -# https://github.com/stha09/chromium-patches/blob/master/chromium-86-ServiceWorkerRunningInfo-noexcept.patch -Patch67: chromium-86-ServiceWorkerRunningInfo-noexcept.patch +# https://github.com/stha09/chromium-patches/blob/master/chromium-87-CursorFactory-include.patch +Patch63: chromium-87-CursorFactory-include.patch +# https://github.com/stha09/chromium-patches/blob/master/chromium-87-openscreen-include.patch +Patch64: chromium-87-openscreen-include.patch +# https://github.com/stha09/chromium-patches/blob/master/chromium-87-ServiceWorkerContainerHost-crash.patch +Patch65: chromium-87-ServiceWorkerContainerHost-crash.patch +# https://github.com/stha09/chromium-patches/blob/master/chromium-88-vaapi-attribute.patch +Patch66: chromium-88-vaapi-attribute.patch + # Silence GCC warnings during gn compile Patch68: chromium-84.0.4147.105-gn-gcc-cleanup.patch # Fix missing cstring in remoting code @@ -273,8 +268,6 @@ Patch69: chromium-84.0.4147.125-remoting-cstring.patch Patch70: chromium-84.0.4147.125-i686-fix_textrels.patch # Work around binutils bug in aarch64 (F33+) Patch71: chromium-84.0.4147.125-aarch64-clearkeycdm-binutils-workaround.patch -# https://github.com/chromium/chromium/commit/53478caee862624fc6d73516f8d64253854b146f -Patch72: chromium-85.0.4183.102-invalid-end-CookieMonster-53478ca.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch @@ -308,6 +301,9 @@ Patch205: chromium-86.0.4240.75-fix-vaapi-on-intel.patch # Apply these patches to work around EPEL8 issues Patch300: chromium-76.0.3809.132-rhel8-force-disable-use_gnome_keyring.patch +# And fixes for new compilers +Patch400: %{name}-gcc11.patch + # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ # For Chromium Fedora use chromium-latest.py --stable --ffmpegclean --ffmpegarm @@ -879,23 +875,19 @@ udev. %patch53 -p1 -b .gcc-include-memory %patch54 -p1 -b .base-gcc-no-alignas %patch55 -p1 -b .protobuf-export -%patch56 -p1 -b .gcc-quiche %patch57 -p1 -b .missing-cstdint %patch58 -p1 -b .missing-cstring %patch59 -p1 -b .ffmpeg-deprecations -# %%patch60 -p1 -b .gcc10-aarch64-hack %patch61 -p1 -b .blink-disable-clang-format %patch62 -p1 -b .fix-char_traits -%patch63 -p1 -b .ConsumeDurationNumber-constexpr -%patch64 -p1 -b .ImageMemoryBarrierData-init -%patch65 -p1 -b .nearby-explicit -%patch66 -p1 -b .nearby-include -%patch67 -p1 -b .ServiceWorkerRunningInfo-noexcept +%patch63 -p1 -b .CursorFactory-include +%patch64 -p1 -b .openscreen-include +%patch65 -p1 -b .ServiceWorkerContainerHost-crash +%patch66 -p1 -b .vaapi-attribute %patch68 -p1 -b .gn-gcc-cleanup %patch69 -p1 -b .remoting-cstring %patch70 -p1 -b .i686-textrels %patch71 -p1 -b .aarch64-clearkeycdm-binutils-workaround -%patch72 -p1 -b .invalid-end-CookieMonster # Fedora branded user agent %if 0%{?fedora} @@ -929,6 +921,8 @@ udev. %patch300 -p1 -b .disblegnomekeyring %endif +%patch400 -p1 -b .gcc11 + # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works find -type f -exec sed -iE '1s=^#! */usr/bin/\(python\|env python\)[23]\?=#!%{__python2}=' {} + @@ -1926,6 +1920,13 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Nov 18 2020 Tom Callaway - 87.0.4280.66-1 +- update to 87.0.4280.66 + +* Thu Nov 12 2020 Jeff Law - 86.0.4240.198-1 +- Fix missing #inclues for gcc-11 +- Fix bogus volatile caught by gcc-11 + * Thu Nov 12 2020 Tom Callaway - 86.0.4240.198-1 - update to 86.0.4240.198 diff --git a/sources b/sources index da8a9ea8..551eba1a 100644 --- a/sources +++ b/sources @@ -20,4 +20,4 @@ SHA512 (xcb-proto-1.14.tar.xz) = de66d568163b6da2be9d6c59984f3afa3acd119a7813786 SHA512 (depot_tools.git-master.tar.gz) = dc323888812b66cc92c53a24a8a58ccf9e2961be67aa21852bd091b8b49569071f06ae9104cb58950e6253ac3a29f0db0663e9f35ef2b1ea28696efb38b42708 SHA512 (NotoSansSymbols2-Regular.ttf) = 2644b42c3fdccfe12395f9b61553aced169a0f1dc09f5a0fd7898e9d0a372ee4422b6b1cdab3c86ecc91db437e9ae8a951e64e85edc3ac9e9fca428852dbb2ad SHA512 (NotoSansTibetan-Regular.ttf) = fb5a48fcaea80eebe7d692f6fcf00d59d47658a358d0ec8e046fc559873f88bd595b2da474d2826abd9e9305f3741c69058d867b1e6048f37fe7d71b5d3af36a -SHA512 (chromium-86.0.4240.198-clean.tar.xz) = f83f6126faa826a1040d183d535ad6ae0bee77ec3d4c504740b04ddc3ab6b69a76d30a7b855ce1da30e9716f50e52b24e66236272be795a947b1799504a2ce5c +SHA512 (chromium-87.0.4280.66-clean.tar.xz) = eba1c5e3a42c226dc4668aa995d14d05254fe2a9941eb712bf48e27a5055cd02de19c82e05f37e2e345305442063734de96e8d3e5a550ed6279d12bfbf5450ef