From c9fb83af3da5344e42d1225588a34a98c62bb9b9 Mon Sep 17 00:00:00 2001 From: MSVSphere Packaging Team Date: Thu, 18 Apr 2024 01:54:03 +0300 Subject: [PATCH] import chromium-124.0.6367.60-1.el8 --- .chromium.metadata | 2 +- .gitignore | 2 +- SOURCES/chromium-115-clang-warnings.patch | 57 -------------- ...m-123-python3-assignment-expressions.patch | 27 ------- .../chromium-123-shape_result-assert.patch | 46 ------------ ... => chromium-124-clang16-buildflags.patch} | 10 ++- ...=> chromium-124-el8-support-64kpage.patch} | 75 ++++++++++--------- SOURCES/chromium-124-libavif-deps.patch | 11 +++ ...m-124-python3-assignment-expressions.patch | 13 ++++ SPECS/chromium.spec | 46 ++++++------ 10 files changed, 92 insertions(+), 197 deletions(-) delete mode 100644 SOURCES/chromium-115-clang-warnings.patch delete mode 100644 SOURCES/chromium-123-python3-assignment-expressions.patch delete mode 100644 SOURCES/chromium-123-shape_result-assert.patch rename SOURCES/{chromium-122-clang16-buildflags.patch => chromium-124-clang16-buildflags.patch} (50%) rename SOURCES/{chromium-122-el8-support-64kpage.patch => chromium-124-el8-support-64kpage.patch} (64%) create mode 100644 SOURCES/chromium-124-libavif-deps.patch create mode 100644 SOURCES/chromium-124-python3-assignment-expressions.patch diff --git a/.chromium.metadata b/.chromium.metadata index f9837dfc..e7906fe9 100644 --- a/.chromium.metadata +++ b/.chromium.metadata @@ -1,4 +1,4 @@ -a565baaf0d5489941b76b8329c6920420435aef5 SOURCES/chromium-123.0.6312.122-clean.tar.xz +909b0a81ff419fcfc0e0ead0406e5117cdca3bbb SOURCES/chromium-124.0.6367.60-clean.tar.xz 7e5d2c7864c5c83ec789b59c77cd9c20d2594916 SOURCES/linux-arm64-0.19.2.tgz dea187019741602d57aaf189a80abba261fbd2aa SOURCES/linux-x64-0.19.2.tgz 3e94bb4f999c636293bc745b02d98e7925da5616 SOURCES/node-v20.6.1-linux-arm64.tar.xz diff --git a/.gitignore b/.gitignore index 5ead979d..84818df6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ -SOURCES/chromium-123.0.6312.122-clean.tar.xz +SOURCES/chromium-124.0.6367.60-clean.tar.xz SOURCES/linux-arm64-0.19.2.tgz SOURCES/linux-x64-0.19.2.tgz SOURCES/node-v20.6.1-linux-arm64.tar.xz diff --git a/SOURCES/chromium-115-clang-warnings.patch b/SOURCES/chromium-115-clang-warnings.patch deleted file mode 100644 index 2bbd08f5..00000000 --- a/SOURCES/chromium-115-clang-warnings.patch +++ /dev/null @@ -1,57 +0,0 @@ -diff -up chromium-115.0.5790.98/sql/recover_module/cursor.h.me chromium-115.0.5790.98/sql/recover_module/cursor.h ---- chromium-115.0.5790.98/sql/recover_module/cursor.h.me 2023-07-21 20:13:43.587451992 +0200 -+++ chromium-115.0.5790.98/sql/recover_module/cursor.h 2023-07-21 20:16:24.989457148 +0200 -@@ -61,6 +61,10 @@ class VirtualCursor { - // The VirtualCursor instance that embeds a given SQLite virtual table cursor. - // - // |sqlite_cursor| must have been returned by VirtualTable::SqliteCursor(). -+#ifdef __GNUC__ -+#pragma GCC diagnostic push -+#pragma GCC diagnostic ignored "-Winvalid-offsetof" -+#endif - static inline VirtualCursor* FromSqliteCursor( - sqlite3_vtab_cursor* sqlite_cursor) { - VirtualCursor* result = reinterpret_cast( -@@ -69,6 +73,9 @@ class VirtualCursor { - CHECK_EQ(sqlite_cursor, &result->sqlite_cursor_); - return result; - } -+#ifdef __GNUC__ -+#pragma GCC diagnostic pop -+#endif - - // Seeks the cursor to the first readable row. Returns a SQLite status code. - int First(); -diff -up chromium-115.0.5790.98/third_party/angle/src/libANGLE/BlobCache.cpp.me chromium-115.0.5790.98/third_party/angle/src/libANGLE/BlobCache.cpp ---- chromium-115.0.5790.98/third_party/angle/src/libANGLE/BlobCache.cpp.me 2023-07-21 20:10:05.119385885 +0200 -+++ chromium-115.0.5790.98/third_party/angle/src/libANGLE/BlobCache.cpp 2023-07-21 20:10:14.386558331 +0200 -@@ -14,7 +14,6 @@ - #include "libANGLE/histogram_macros.h" - #include "platform/PlatformMethods.h" - --#define USE_SYSTEM_ZLIB - #include "compression_utils_portable.h" - - namespace egl -diff -up chromium-115.0.5790.98/third_party/angle/src/libANGLE/MemoryProgramCache.cpp.me chromium-115.0.5790.98/third_party/angle/src/libANGLE/MemoryProgramCache.cpp ---- chromium-115.0.5790.98/third_party/angle/src/libANGLE/MemoryProgramCache.cpp.me 2023-07-21 20:10:36.864976619 +0200 -+++ chromium-115.0.5790.98/third_party/angle/src/libANGLE/MemoryProgramCache.cpp 2023-07-21 20:11:07.629549228 +0200 -@@ -8,7 +8,6 @@ - // layer to warm up the cache from disk. - - // Include zlib first, otherwise FAR gets defined elsewhere. --#define USE_SYSTEM_ZLIB - #include "compression_utils_portable.h" - - #include "libANGLE/MemoryProgramCache.h" -diff -up chromium-115.0.5790.98/third_party/angle/src/libANGLE/renderer/vulkan/vk_internal_shaders_autogen.cpp.me chromium-115.0.5790.98/third_party/angle/src/libANGLE/renderer/vulkan/vk_internal_shaders_autogen.cpp ---- chromium-115.0.5790.98/third_party/angle/src/libANGLE/renderer/vulkan/vk_internal_shaders_autogen.cpp.me 2023-07-21 20:09:44.206996746 +0200 -+++ chromium-115.0.5790.98/third_party/angle/src/libANGLE/renderer/vulkan/vk_internal_shaders_autogen.cpp 2023-07-21 20:09:51.834138674 +0200 -@@ -10,7 +10,6 @@ - - #include "libANGLE/renderer/vulkan/vk_internal_shaders_autogen.h" - --#define USE_SYSTEM_ZLIB - #include "compression_utils_portable.h" - - namespace rx diff --git a/SOURCES/chromium-123-python3-assignment-expressions.patch b/SOURCES/chromium-123-python3-assignment-expressions.patch deleted file mode 100644 index bb0df8c4..00000000 --- a/SOURCES/chromium-123-python3-assignment-expressions.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff -up chromium-122.0.6261.57/tools/json_to_struct/json_to_struct.py.me chromium-122.0.6261.57/tools/json_to_struct/json_to_struct.py ---- chromium-122.0.6261.57/tools/json_to_struct/json_to_struct.py.me 2024-02-23 12:04:45.451423995 +0100 -+++ chromium-122.0.6261.57/tools/json_to_struct/json_to_struct.py 2024-02-23 12:18:04.099824392 +0100 -@@ -124,7 +124,8 @@ def _GenerateH(basepath, fileroot, head, - f.write(u'#include \n') - f.write(u'\n') - -- if system_headers := schema.get(u'system-headers', []): -+ system_headers = schema.get(u'system-headers', []) -+ if system_headers: - for header in system_headers: - f.write(u'#include <%s>\n' % header) - f.write(u'\n') -diff -up chromium-123.0.6312.46/tools/metrics/histograms/expand_owners.py.me chromium-123.0.6312.46/tools/metrics/histograms/expand_owners.py ---- chromium-123.0.6312.46/tools/metrics/histograms/expand_owners.py.me 2024-03-18 14:40:57.871904209 +0100 -+++ chromium-123.0.6312.46/tools/metrics/histograms/expand_owners.py 2024-03-18 14:47:12.238907146 +0100 -@@ -209,8 +209,8 @@ def _ComponentFromDirmd(json_data, subpa - """ - dirmd = json_data.get('dirs', {}).get(subpath, {}) - # If a public Buganizer component is listed, return its component ID. -- if buganizer_component := dirmd.get('buganizerPublic', -- {}).get('componentId', ''): -+ buganizer_component = dirmd.get('buganizerPublic',{}).get('componentId', '') -+ if buganizer_component: - return buganizer_component - # If no component exists for the directory, or if METADATA migration is - # incomplete there will be no component information. diff --git a/SOURCES/chromium-123-shape_result-assert.patch b/SOURCES/chromium-123-shape_result-assert.patch deleted file mode 100644 index 5b5d5cc7..00000000 --- a/SOURCES/chromium-123-shape_result-assert.patch +++ /dev/null @@ -1,46 +0,0 @@ -commit 4bdca157e7edfeb5b9c0ac77e3afbfe288f7f9cf -Author: Stefan Zager -Date: Mon Feb 26 02:36:37 2024 +0000 - - Make SameSizeAsShapeResult robust against uncommon gn args - - When using uncommon build configurations, it's currently possible - to fail this assert due to details of struct field packing: - - ASSERT_SIZE(ShapeResult, SameSizeAsShapeResult); - - In particular, `cppgc_enable_pointer_compression = false` in args.gn - will trigger it. - - This changes makes the struct layout of SameSizeAsShapeResult more - closely match that of ShapeResult, which should make it harder to - fail the assert. - - Change-Id: I7406b0ac333303b6808807fa1eaf5cbecb85d858 - Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5323558 - Auto-Submit: Stefan Zager - Reviewed-by: Ian Kilpatrick - Commit-Queue: Ian Kilpatrick - Cr-Commit-Position: refs/heads/main@{#1265024} - -diff --git a/third_party/blink/renderer/platform/fonts/shaping/shape_result.cc b/third_party/blink/renderer/platform/fonts/shaping/shape_result.cc -index 28aabc7d66cd8..a2bfdec2775e4 100644 ---- a/third_party/blink/renderer/platform/fonts/shaping/shape_result.cc -+++ b/third_party/blink/renderer/platform/fonts/shaping/shape_result.cc -@@ -78,10 +78,13 @@ struct SameSizeAsRunInfo { - ASSERT_SIZE(ShapeResult::RunInfo, SameSizeAsRunInfo); - - struct SameSizeAsShapeResult { -- Vector vectors[2]; -- UntracedMember members[2]; - float width; -- unsigned integers[2]; -+ UntracedMember deprecated_ink_bounds_; -+ Vector runs_; -+ Vector character_position_; -+ UntracedMember primary_font_; -+ unsigned start_index_; -+ unsigned num_characters_; - unsigned bitfields : 32; - }; - diff --git a/SOURCES/chromium-122-clang16-buildflags.patch b/SOURCES/chromium-124-clang16-buildflags.patch similarity index 50% rename from SOURCES/chromium-122-clang16-buildflags.patch rename to SOURCES/chromium-124-clang16-buildflags.patch index 6725f3b5..b53b2a89 100644 --- a/SOURCES/chromium-122-clang16-buildflags.patch +++ b/SOURCES/chromium-124-clang16-buildflags.patch @@ -1,7 +1,7 @@ -diff -up chromium-122.0.6261.39/build/config/compiler/BUILD.gn.me chromium-122.0.6261.39/build/config/compiler/BUILD.gn ---- chromium-122.0.6261.39/build/config/compiler/BUILD.gn.me 2024-02-19 21:58:15.835818177 +0100 -+++ chromium-122.0.6261.39/build/config/compiler/BUILD.gn 2024-02-19 21:59:11.661880633 +0100 -@@ -1856,15 +1856,12 @@ config("default_warnings") { +diff -up chromium-124.0.6367.49/build/config/compiler/BUILD.gn.orig chromium-124.0.6367.49/build/config/compiler/BUILD.gn +--- chromium-124.0.6367.49/build/config/compiler/BUILD.gn.orig 2024-04-14 22:43:02.906578948 +0200 ++++ chromium-124.0.6367.49/build/config/compiler/BUILD.gn 2024-04-14 22:46:19.513353809 +0200 +@@ -1890,9 +1890,6 @@ config("default_warnings") { # TODO(crbug.com/1494809): Evaluate and possibly enable. "-Wno-vla-extension", @@ -10,6 +10,8 @@ diff -up chromium-122.0.6261.39/build/config/compiler/BUILD.gn.me chromium-122.0 - "-Wno-thread-safety-reference-return", ] + cflags_cc += [ +@@ -1903,7 +1900,7 @@ config("default_warnings") { if (!is_nacl) { cflags_cc += [ # TODO(https://crbug.com/1513724): Fix and re-enable. diff --git a/SOURCES/chromium-122-el8-support-64kpage.patch b/SOURCES/chromium-124-el8-support-64kpage.patch similarity index 64% rename from SOURCES/chromium-122-el8-support-64kpage.patch rename to SOURCES/chromium-124-el8-support-64kpage.patch index 0c8a8ac0..97e4c76e 100644 --- a/SOURCES/chromium-122-el8-support-64kpage.patch +++ b/SOURCES/chromium-124-el8-support-64kpage.patch @@ -1,7 +1,7 @@ -diff -up chromium-121.0.6167.139/base/allocator/partition_allocator/src/partition_alloc/partition_bucket.h.el8-support-64kpage.patch chromium-121.0.6167.139/base/allocator/partition_allocator/src/partition_alloc/partition_bucket.h ---- chromium-121.0.6167.139/base/allocator/partition_allocator/src/partition_alloc/partition_bucket.h.el8-support-64kpage.patch 2024-01-30 21:24:10.000000000 +0100 -+++ chromium-121.0.6167.139/base/allocator/partition_allocator/src/partition_alloc/partition_bucket.h 2024-02-01 17:20:37.178877448 +0100 -@@ -146,7 +146,13 @@ struct PartitionBucket { +diff -up chromium-124.0.6367.49/base/allocator/partition_allocator/src/partition_alloc/partition_bucket.h.orig chromium-124.0.6367.49/base/allocator/partition_allocator/src/partition_alloc/partition_bucket.h +--- chromium-124.0.6367.49/base/allocator/partition_allocator/src/partition_alloc/partition_bucket.h.orig 2024-04-12 21:56:54.000000000 +0200 ++++ chromium-124.0.6367.49/base/allocator/partition_allocator/src/partition_alloc/partition_bucket.h 2024-04-14 20:53:16.043867871 +0200 +@@ -147,7 +147,13 @@ struct PartitionBucket { // Returns a slot number starting from the beginning of the slot span. PA_ALWAYS_INLINE size_t GetSlotNumber(size_t offset_in_slot_span) const { // See the static assertion for `kReciprocalShift` above. @@ -12,17 +12,17 @@ diff -up chromium-121.0.6167.139/base/allocator/partition_allocator/src/partitio + // from overlapping. For now this will allow 64k pages + // to function on Aarch64/Linux systems, albeit not + // very efficiently. -+ // PA_DCHECK(offset_in_slot_span <= kMaxBucketed); ++ PA_DCHECK(internal::SystemPageSize() == (size_t{1} << 16) || offset_in_slot_span <= kMaxBucketed); PA_DCHECK(slot_size <= kMaxBucketed); const size_t offset_in_slot = -diff -up chromium-121.0.6167.139/base/allocator/partition_allocator/src/partition_alloc/partition_page_constants.h.el8-support-64kpage.patch chromium-121.0.6167.139/base/allocator/partition_allocator/src/partition_alloc/partition_page_constants.h ---- chromium-121.0.6167.139/base/allocator/partition_allocator/src/partition_alloc/partition_page_constants.h.el8-support-64kpage.patch 2024-02-01 17:20:37.178877448 +0100 -+++ chromium-121.0.6167.139/base/allocator/partition_allocator/src/partition_alloc/partition_page_constants.h 2024-02-01 17:31:08.500268457 +0100 +diff -up chromium-124.0.6367.49/base/allocator/partition_allocator/src/partition_alloc/partition_page_constants.h.orig chromium-124.0.6367.49/base/allocator/partition_allocator/src/partition_alloc/partition_page_constants.h +--- chromium-124.0.6367.49/base/allocator/partition_allocator/src/partition_alloc/partition_page_constants.h.orig 2024-04-14 20:53:16.043867871 +0200 ++++ chromium-124.0.6367.49/base/allocator/partition_allocator/src/partition_alloc/partition_page_constants.h 2024-04-14 21:39:18.147052845 +0200 @@ -17,10 +17,8 @@ namespace partition_alloc::internal { // PartitionPageSize() is 4 times the OS page size. static constexpr size_t kMaxSlotsPerSlotSpan = 4 * (1 << 14) / kSmallestBucket; - #elif (BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX)) && defined(ARCH_CPU_ARM64) + #elif defined(PARTITION_ALLOCATOR_CONSTANTS_POSIX_NONCONST_PAGE_SIZE) -// System page size can be 4, 16, or 64 kiB on Linux on arm64. 64 kiB is -// currently (kMaxSlotsPerSlotSpanBits == 13) not supported by the code, -// so we use the 16 kiB maximum (64 kiB will crash). @@ -32,10 +32,30 @@ diff -up chromium-121.0.6167.139/base/allocator/partition_allocator/src/partitio #else // A slot span can "span" multiple PartitionPages, but then its slot size is // larger, so it doesn't have as many slots. -diff -up chromium-121.0.6167.139/base/allocator/partition_allocator/src/partition_alloc/partition_page.h.el8-support-64kpage.patch chromium-121.0.6167.139/base/allocator/partition_allocator/src/partition_alloc/partition_page.h ---- chromium-121.0.6167.139/base/allocator/partition_allocator/src/partition_alloc/partition_page.h.el8-support-64kpage.patch 2024-01-30 21:24:10.000000000 +0100 -+++ chromium-121.0.6167.139/base/allocator/partition_allocator/src/partition_alloc/partition_page.h 2024-02-01 17:20:37.178877448 +0100 -@@ -95,26 +95,25 @@ struct SlotSpanMetadata { +diff -up chromium-124.0.6367.49/base/allocator/partition_allocator/src/partition_alloc/partition_root.cc.orig chromium-124.0.6367.49/base/allocator/partition_allocator/src/partition_alloc/partition_root.cc +--- chromium-124.0.6367.49/base/allocator/partition_allocator/src/partition_alloc/partition_root.cc.orig 2024-04-14 20:53:16.044867889 +0200 ++++ chromium-124.0.6367.49/base/allocator/partition_allocator/src/partition_alloc/partition_root.cc 2024-04-14 21:50:57.926716718 +0200 +@@ -952,12 +952,11 @@ void PartitionRoot::Init(PartitionOption + (internal::SystemPageSize() == (size_t{1} << 14))); + #elif BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_ARM64) + // Check runtime pagesize. Though the code is currently the same, it is +- // not merged with the IS_APPLE case above as a 1 << 16 case needs to be +- // added here in the future, to allow 64 kiB pagesize. That is only +- // supported on Linux on arm64, not on IS_APPLE, but not yet present here +- // as the rest of the PartitionAlloc does not currently support it. ++ // not merged with the IS_APPLE case above as a 1 << 16 case is only ++ // supported on Linux on AArch64. + PA_CHECK((internal::SystemPageSize() == (size_t{1} << 12)) || +- (internal::SystemPageSize() == (size_t{1} << 14))); ++ (internal::SystemPageSize() == (size_t{1} << 14)) || ++ (internal::SystemPageSize() == (size_t{1} << 16))); + #endif + + ::partition_alloc::internal::ScopedGuard guard{lock_}; +diff -up chromium-124.0.6367.49/base/allocator/partition_allocator/src/partition_alloc/partition_page.h.me chromium-124.0.6367.49/base/allocator/partition_allocator/src/partition_alloc/partition_page.h +--- chromium-124.0.6367.49/base/allocator/partition_allocator/src/partition_alloc/partition_page.h.me 2024-04-14 22:08:40.655011536 +0200 ++++ chromium-124.0.6367.49/base/allocator/partition_allocator/src/partition_alloc/partition_page.h 2024-04-14 22:12:46.665731577 +0200 +@@ -86,27 +86,25 @@ struct SlotSpanMetadata { // CHECK()ed in AllocNewSlotSpan(). // The maximum number of bits needed to cover all currently supported OSes. @@ -66,14 +86,15 @@ diff -up chromium-121.0.6167.139/base/allocator/partition_allocator/src/partitio // If |in_empty_cache_|==1, |empty_cache_index| is undefined and mustn't be // used. - uint16_t in_empty_cache_ : 1; -- uint16_t empty_cache_index_ : kEmptyCacheIndexBits; // < kMaxFreeableSpans. -- uint16_t unused2_ : (16 - 1 - kEmptyCacheIndexBits); +- uint16_t empty_cache_index_ +- : kMaxEmptyCacheIndexBits; // < kMaxFreeableSpans. +- uint16_t unused2_ : (16 - 1 - kMaxEmptyCacheIndexBits); + bool in_empty_cache_ : 1; + uint8_t empty_cache_index_ : kEmptyCacheIndexBits; // < kMaxFreeableSpans. // Can use only 48 bits (6B) in this bitfield, as this structure is embedded // in PartitionPage which has 2B worth of fields and must fit in 32B. -@@ -279,18 +278,13 @@ static_assert(sizeof(SlotSpanMetadata) < +@@ -246,18 +244,13 @@ static_assert(sizeof(SlotSpanMetadata) < "SlotSpanMetadata must fit into a Page Metadata slot."); inline constexpr SlotSpanMetadata::SlotSpanMetadata() noexcept @@ -95,7 +116,7 @@ diff -up chromium-121.0.6167.139/base/allocator/partition_allocator/src/partitio inline SlotSpanMetadata::SlotSpanMetadata(const SlotSpanMetadata&) = default; -@@ -883,7 +877,7 @@ PA_ALWAYS_INLINE void SlotSpanMetadata:: +@@ -752,7 +745,7 @@ PA_ALWAYS_INLINE void SlotSpanMetadata:: size_t num_slots_per_span = bucket->get_slots_per_span(); PA_DCHECK(num_slots_per_span <= kMaxSlotsPerSlotSpan); @@ -104,23 +125,3 @@ diff -up chromium-121.0.6167.139/base/allocator/partition_allocator/src/partitio PA_DCHECK(num_unprovisioned_slots); ToSuperPageExtent()->IncrementNumberOfNonemptySlotSpans(); -diff -up chromium-121.0.6167.139/base/allocator/partition_allocator/src/partition_alloc/partition_root.cc.el8-support-64kpage.patch chromium-121.0.6167.139/base/allocator/partition_allocator/src/partition_alloc/partition_root.cc ---- chromium-121.0.6167.139/base/allocator/partition_allocator/src/partition_alloc/partition_root.cc.el8-support-64kpage.patch 2024-01-30 21:24:10.000000000 +0100 -+++ chromium-121.0.6167.139/base/allocator/partition_allocator/src/partition_alloc/partition_root.cc 2024-02-01 17:20:37.178877448 +0100 -@@ -950,12 +950,11 @@ void PartitionRoot::Init(PartitionOption - (internal::SystemPageSize() == (size_t{1} << 14))); - #elif BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_ARM64) - // Check runtime pagesize. Though the code is currently the same, it is -- // not merged with the IS_APPLE case above as a 1 << 16 case needs to be -- // added here in the future, to allow 64 kiB pagesize. That is only -- // supported on Linux on arm64, not on IS_APPLE, but not yet present here -- // as the rest of the partition allocator does not currently support it. -+ // not merged with the IS_APPLE case above as a 1 << 16 case is only -+ // supported on Linux on AArch64. - PA_CHECK((internal::SystemPageSize() == (size_t{1} << 12)) || -- (internal::SystemPageSize() == (size_t{1} << 14))); -+ (internal::SystemPageSize() == (size_t{1} << 14)) || -+ (internal::SystemPageSize() == (size_t{1} << 16))); - #endif - - ::partition_alloc::internal::ScopedGuard guard{lock_}; diff --git a/SOURCES/chromium-124-libavif-deps.patch b/SOURCES/chromium-124-libavif-deps.patch new file mode 100644 index 00000000..6298217f --- /dev/null +++ b/SOURCES/chromium-124-libavif-deps.patch @@ -0,0 +1,11 @@ +diff -up chromium-124.0.6367.49/third_party/libavif/BUILD.gn.me chromium-124.0.6367.49/third_party/libavif/BUILD.gn +--- chromium-124.0.6367.49/third_party/libavif/BUILD.gn.me 2024-04-15 22:29:28.024287328 +0200 ++++ chromium-124.0.6367.49/third_party/libavif/BUILD.gn 2024-04-15 22:29:33.205411066 +0200 +@@ -85,7 +85,6 @@ component("libavif_enc") { + configs += [ ":avif_config" ] + + deps = [ +- "//third_party/libwebp:libwebp_sharpyuv", + "//third_party/libyuv", + ] + defines = [ "AVIF_LIBSHARPYUV_ENABLED" ] diff --git a/SOURCES/chromium-124-python3-assignment-expressions.patch b/SOURCES/chromium-124-python3-assignment-expressions.patch new file mode 100644 index 00000000..61ce0378 --- /dev/null +++ b/SOURCES/chromium-124-python3-assignment-expressions.patch @@ -0,0 +1,13 @@ +diff -up chromium-122.0.6261.57/tools/json_to_struct/json_to_struct.py.me chromium-122.0.6261.57/tools/json_to_struct/json_to_struct.py +--- chromium-122.0.6261.57/tools/json_to_struct/json_to_struct.py.me 2024-02-23 12:04:45.451423995 +0100 ++++ chromium-122.0.6261.57/tools/json_to_struct/json_to_struct.py 2024-02-23 12:18:04.099824392 +0100 +@@ -124,7 +124,8 @@ def _GenerateH(basepath, fileroot, head, + f.write(u'#include \n') + f.write(u'\n') + +- if system_headers := schema.get(u'system-headers', []): ++ system_headers = schema.get(u'system-headers', []) ++ if system_headers: + for header in system_headers: + f.write(u'#include <%s>\n' % header) + f.write(u'\n') diff --git a/SPECS/chromium.spec b/SPECS/chromium.spec index 124de21b..d60c402e 100644 --- a/SPECS/chromium.spec +++ b/SPECS/chromium.spec @@ -73,8 +73,12 @@ %if 0%{?rhel} == 7 %global chromium_pybin /usr/bin/python3 %else +%if 0%{?rhel} == 8 +%global chromium_pybin /usr/bin/python3.9 +%else %global chromium_pybin %{__python3} %endif +%endif # va-api only supported in rhel >= 9 and fedora %global use_vaapi 1 @@ -179,17 +183,13 @@ %global toolchain gcc %endif -# enable qt backend for el >= 8 and fedora -%if 0%{?rhel} >= 8 || 0%{?fedora} -%global use_qt 1 -%else -%global use_qt 0 -%endif - -%if 0%{?rhel} > 9 || 0%{?fedora} +# enable qt backend +%if 0%{?fedora} >= 40 %global use_qt6 1 +%global use_qt 0 %else %global use_qt6 0 +%global use_qt 1 %endif # Chromium's fork of ICU is now something we can't unbundle. @@ -306,7 +306,7 @@ %endif Name: chromium%{chromium_channel} -Version: 123.0.6312.122 +Version: 124.0.6367.60 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser that Google doesn't want you to use Url: http://www.chromium.org/Home @@ -446,19 +446,16 @@ Patch309: chromium-123-constexpr.patch # missing include header files Patch310: chromium-123-missing-header-files.patch -# clang warnings -Patch311: chromium-115-clang-warnings.patch - # enable fstack-protector-strong Patch312: chromium-123-fstack-protector-strong.patch # rust is old, function or associated item not found in `OsStr` Patch313: chromium-123-rust-clap_lex.patch -Patch314: chromium-122-clang16-buildflags.patch +Patch314: chromium-124-clang16-buildflags.patch # assignment-expressions not suport in python < 3.8 on el 7/8 -Patch315: chromium-123-python3-assignment-expressions.patch +Patch315: chromium-124-python3-assignment-expressions.patch # add -ftrivial-auto-var-init=zero and -fwrapv Patch316: chromium-122-clang-build-flags.patch @@ -483,6 +480,9 @@ Patch357: chromium-122-clang16-disable-auto-upgrade-debug-info.patch # set clang_lib path Patch358: chromium-122-rust-clang_lib.patch +# ERROR Unresolved dependencies +Patch359: chromium-124-libavif-deps.patch + # PowerPC64 LE support # Patches taken from Debian, Timothy Pearson's patchset # https://salsa.debian.org/chromium-team/chromium/-/tree/master/debian/patches/ppc64le?ref_type=heads @@ -565,9 +565,7 @@ Patch415: fix-clang-selection.patch # upstream patches # 64kpage support on el8 -Patch500: chromium-122-el8-support-64kpage.patch -# error: static assertion failed due to requirement '::WTF::internal::SizesEqual<72, 64>::value': ShapeResult should stay small -Patch501: chromium-123-shape_result-assert.patch +Patch500: chromium-124-el8-support-64kpage.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -1211,7 +1209,7 @@ udev. %patch -P130 -p1 -b .revert-av1enc %endif -%if 0%{?rhel} <= 8 +%if 0%{?rhel} && 0%{?rhel} <= 8 %patch -P315 -p1 -b .assignment-expressions %ifarch aarch64 %patch -P305 -p1 -b .memory_tagging @@ -1221,12 +1219,10 @@ udev. %if 0%{?rhel} || 0%{?fedora} && 0%{?fedora} < 39 %patch -P307 -p1 -R -b .v8-c++20 %patch -P308 -p1 -R -b .v8-c++20 -%patch -P309 -p1 -b .constexpr %patch -P314 -p1 -b .clang16-buildflag %endif %patch -P310 -p1 -b .missing-header-files -%patch -P311 -p1 -b .clang-warnings %patch -P312 -p1 -b .fstack-protector-strong %if 0%{?rhel} && 0%{?rhel} < 10 @@ -1248,6 +1244,7 @@ udev. %patch -P356 -p1 -b .disable-FFmpegAllowLists %patch -P357 -p1 -b .clang16-disable-auto-upgrade-debug-info %patch -P358 -p1 -b .rust-clang_lib +%patch -P359 -p1 -b .libavif-deps %ifarch ppc64le %patch -P360 -p1 -b .0001-linux-seccomp-bpf-ppc64-glibc-workaround-in-SIGSYS-h @@ -1289,7 +1286,7 @@ udev. %patch -P390 -p1 -b .0002-third-party-boringssl-add-generated-files %patch -P391 -p1 -b .0003-third_party-libvpx-Add-ppc64-generated-config #patch -P392 -p1 -b .0003-third_party-libvpx-Add-ppc64-vsx-files -%patch -P393 -p1 -b .0003-third_party-ffmpeg-Add-ppc64-generated-config +#patch -P393 -p1 -b .0003-third_party-ffmpeg-Add-ppc64-generated-config %patch -P394 -p1 -b .0004-third_party-libvpx-work-around-ambiguous-vsx %patch -P395 -p1 -b .skia-vsx-instructions @@ -1326,11 +1323,9 @@ udev. %endif %endif -%patch -P501 -p1 -b .shape_result-assert - # 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 \( -iname "*.py" \) -exec sed -i '1s=^#! */usr/bin/\(python\|env python\)[23]\?=#!%{__python3}=' {} + +find -type f \( -iname "*.py" \) -exec sed -i '1s=^#! */usr/bin/\(python\|env python\)[23]\?=#!%{chromium_pybin}=' {} + # Add correct path for nodejs binary %if ! %{system_nodejs} @@ -2120,6 +2115,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %endif %changelog +* Tue Apr 16 2024 Than Ngo - 124.0.6367.60-1 +- update to 124.0.6367.60 + * Thu Apr 11 2024 Than Ngo - 123.0.6312.122-1 - update to 123.0.6312.122 * High CVE-2024-3157: Out of bounds write in Compositing