forked from pool/nodejs-electron
Accepting request 1301193 from devel:languages:nodejs
electron 37 OBS-URL: https://build.opensuse.org/request/show/1301193 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/nodejs-electron?expand=0&rev=164
This commit is contained in:
229
ANNOTATE_CONTIGUOUS_CONTAINER-Wodr.patch
Normal file
229
ANNOTATE_CONTIGUOUS_CONTAINER-Wodr.patch
Normal file
@@ -0,0 +1,229 @@
|
||||
This collides with an abseil macro causing ODR miscompiles
|
||||
|
||||
diff '--color=auto' -urp src.old/third_party/blink/renderer/platform/heap/collection_support/heap_vector_backing.h src/third_party/blink/renderer/platform/heap/collection_support/heap_vector_backing.h
|
||||
--- src.old/third_party/blink/renderer/platform/heap/collection_support/heap_vector_backing.h 2025-08-15 17:32:29.517405064 +0200
|
||||
+++ src/third_party/blink/renderer/platform/heap/collection_support/heap_vector_backing.h 2025-08-17 14:47:13.834152160 +0200
|
||||
@@ -100,9 +100,9 @@ HeapVectorBacking<T, Traits>::~HeapVecto
|
||||
const size_t length = object_size / sizeof(T);
|
||||
using ByteBuffer = uint8_t*;
|
||||
ByteBuffer payload = reinterpret_cast<ByteBuffer>(this);
|
||||
-#ifdef ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#ifdef WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
ANNOTATE_CHANGE_SIZE(payload, length * sizeof(T), 0, length * sizeof(T));
|
||||
-#endif // ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#endif // WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
// HeapVectorBacking calls finalizers for unused slots and expects them to be
|
||||
// no-ops.
|
||||
if (std::is_polymorphic<T>::value) {
|
||||
@@ -176,11 +176,11 @@ struct TraceInCollectionTrait<kNoWeakHan
|
||||
cppgc::subtle::ObjectSizeTrait<const Backing>::GetSize(
|
||||
*reinterpret_cast<const Backing*>(self)) /
|
||||
sizeof(T);
|
||||
-#ifdef ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#ifdef WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
// As commented above, HeapVectorBacking can trace unused slots (which are
|
||||
// already zeroed out).
|
||||
ANNOTATE_CHANGE_SIZE(array, length, 0, length);
|
||||
-#endif // ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#endif // WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
if constexpr (IsTraceable<T>::value) {
|
||||
for (unsigned i = 0; i < length; ++i) {
|
||||
if (!std::is_polymorphic_v<T> ||
|
||||
diff '--color=auto' -urp src.old/third_party/blink/renderer/platform/heap/test/heap_test.cc src/third_party/blink/renderer/platform/heap/test/heap_test.cc
|
||||
--- src.old/third_party/blink/renderer/platform/heap/test/heap_test.cc 2025-08-15 17:32:29.517405064 +0200
|
||||
+++ src/third_party/blink/renderer/platform/heap/test/heap_test.cc 2025-08-17 14:47:13.834152160 +0200
|
||||
@@ -854,7 +854,7 @@ TEST_F(HeapTest, HeapVectorShrinkInlineC
|
||||
// Vector inline buffers are disabled; that constraint should be attempted
|
||||
// removed, but until that time, disable testing handling of capacities
|
||||
// of inline buffers.
|
||||
-#if !defined(ANNOTATE_CONTIGUOUS_CONTAINER)
|
||||
+#if !defined(WTF_ANNOTATE_CONTIGUOUS_CONTAINER)
|
||||
// Shrinking switches the buffer from the external one to the inline one.
|
||||
vector1.Shrink(kInlineCapacity - 1);
|
||||
vector1.shrink_to_fit();
|
||||
@@ -2446,7 +2446,7 @@ class InlinedVectorObjectWithVtableWrapp
|
||||
|
||||
// TODO(Oilpan): when Vector.h's contiguous container support no longer disables
|
||||
// Vector<>s with inline capacity, enable this test.
|
||||
-#if !defined(ANNOTATE_CONTIGUOUS_CONTAINER)
|
||||
+#if !defined(WTF_ANNOTATE_CONTIGUOUS_CONTAINER)
|
||||
TEST_F(HeapTest, VectorDestructorsWithVtable) {
|
||||
ClearOutOldGarbage();
|
||||
InlinedVectorObjectWithVtable::destructor_calls_ = 0;
|
||||
diff '--color=auto' -urp src.old/third_party/blink/renderer/platform/sparse_vector_test.cc src/third_party/blink/renderer/platform/sparse_vector_test.cc
|
||||
--- src.old/third_party/blink/renderer/platform/sparse_vector_test.cc 2025-08-15 17:32:29.549405057 +0200
|
||||
+++ src/third_party/blink/renderer/platform/sparse_vector_test.cc 2025-08-17 14:47:13.846152160 +0200
|
||||
@@ -240,9 +240,9 @@ TEST(SparseVectorPtrTest, SettingToNullp
|
||||
EXPECT_FALSE(sparse_vector.HasField(FieldId::kFoo));
|
||||
}
|
||||
|
||||
-// WTF::Vector always uses 0 inline capacity when ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+// WTF::Vector always uses 0 inline capacity when WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
// is defined.
|
||||
-#ifndef ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#ifndef WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
TEST(SparseVectorInlineCapacityTest, Basic) {
|
||||
SparseVector<FieldId, int, 16> sparse_vector;
|
||||
EXPECT_EQ(16u, sparse_vector.capacity());
|
||||
diff '--color=auto' -urp src.old/third_party/blink/renderer/platform/wtf/container_annotations.h src/third_party/blink/renderer/platform/wtf/container_annotations.h
|
||||
--- src.old/third_party/blink/renderer/platform/wtf/container_annotations.h 2025-08-15 17:32:29.573405052 +0200
|
||||
+++ src/third_party/blink/renderer/platform/wtf/container_annotations.h 2025-08-17 14:47:13.842152160 +0200
|
||||
@@ -18,7 +18,7 @@
|
||||
// documentation:
|
||||
// https://github.com/llvm-mirror/compiler-rt/blob/master/include/sanitizer/common_interface_defs.h#L154
|
||||
|
||||
-#define ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#define WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
|
||||
#define ANNOTATE_NEW_BUFFER(buffer, capacity, newSize) \
|
||||
if (buffer) { \
|
||||
diff '--color=auto' -urp src.old/third_party/blink/renderer/platform/wtf/size_assertions.cc src/third_party/blink/renderer/platform/wtf/size_assertions.cc
|
||||
--- src.old/third_party/blink/renderer/platform/wtf/size_assertions.cc 2025-08-15 17:32:29.577405052 +0200
|
||||
+++ src/third_party/blink/renderer/platform/wtf/size_assertions.cc 2025-08-17 14:47:13.838152160 +0200
|
||||
@@ -61,7 +61,7 @@ struct SameSizeAsVectorWithInlineCapacit
|
||||
template <typename T, unsigned inlineCapacity>
|
||||
struct SameSizeAsVectorWithInlineCapacity {
|
||||
SameSizeAsVectorWithInlineCapacity<T, 0> base_capacity;
|
||||
-#if !defined(ANNOTATE_CONTIGUOUS_CONTAINER)
|
||||
+#if !defined(WTF_ANNOTATE_CONTIGUOUS_CONTAINER)
|
||||
T inline_buffer[inlineCapacity];
|
||||
#endif
|
||||
};
|
||||
diff '--color=auto' -urp src.old/third_party/blink/renderer/platform/wtf/vector.h src/third_party/blink/renderer/platform/wtf/vector.h
|
||||
--- src.old/third_party/blink/renderer/platform/wtf/vector.h 2025-08-15 17:32:29.581405051 +0200
|
||||
+++ src/third_party/blink/renderer/platform/wtf/vector.h 2025-08-17 14:47:13.842152160 +0200
|
||||
@@ -59,7 +59,7 @@
|
||||
|
||||
// For ASAN builds, disable inline buffers completely as they cause various
|
||||
// issues.
|
||||
-#ifdef ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#ifdef WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
#define INLINE_CAPACITY 0
|
||||
#else
|
||||
#define INLINE_CAPACITY InlineCapacity
|
||||
@@ -471,7 +471,7 @@ class VectorBufferBase {
|
||||
}
|
||||
|
||||
void CheckUnusedSlots(const T* from, const T* to) {
|
||||
-#if DCHECK_IS_ON() && !defined(ANNOTATE_CONTIGUOUS_CONTAINER)
|
||||
+#if DCHECK_IS_ON() && !defined(WTF_ANNOTATE_CONTIGUOUS_CONTAINER)
|
||||
if constexpr (NeedsToClearUnusedSlots()) {
|
||||
const unsigned char* unused_area =
|
||||
reinterpret_cast<const unsigned char*>(from);
|
||||
@@ -606,7 +606,7 @@ class VectorBuffer<T, 0, Allocator> : pr
|
||||
DCHECK(buffer_);
|
||||
DCHECK_LT(new_capacity, capacity());
|
||||
size_t size_to_allocate = AllocationSize(new_capacity);
|
||||
-#ifdef ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#ifdef WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
ANNOTATE_DELETE_BUFFER(buffer_, capacity_, size_);
|
||||
#endif
|
||||
bool succeeded = false;
|
||||
@@ -615,7 +615,7 @@ class VectorBuffer<T, 0, Allocator> : pr
|
||||
capacity_ = static_cast<wtf_size_t>(size_to_allocate / sizeof(T));
|
||||
succeeded = true;
|
||||
}
|
||||
-#ifdef ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#ifdef WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
MARKING_AWARE_ANNOTATE_NEW_BUFFER(Allocator, buffer_, capacity_, size_);
|
||||
#endif
|
||||
return succeeded;
|
||||
@@ -740,7 +740,7 @@ class VectorBuffer : protected VectorBuf
|
||||
DCHECK_NE(buffer_, InlineBuffer());
|
||||
size_t new_size = AllocationSize(new_capacity);
|
||||
bool succeeded = false;
|
||||
-#ifdef ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#ifdef WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
ANNOTATE_DELETE_BUFFER(buffer_, capacity_, size_);
|
||||
#endif
|
||||
if (Allocator::ShrinkVectorBacking(buffer_, AllocationSize(capacity()),
|
||||
@@ -748,7 +748,7 @@ class VectorBuffer : protected VectorBuf
|
||||
capacity_ = static_cast<wtf_size_t>(new_size / sizeof(T));
|
||||
succeeded = true;
|
||||
}
|
||||
-#ifdef ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#ifdef WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
MARKING_AWARE_ANNOTATE_NEW_BUFFER(Allocator, buffer_, capacity_, size_);
|
||||
#endif
|
||||
return succeeded;
|
||||
@@ -2145,7 +2145,7 @@ void Vector<T, InlineCapacity, Allocator
|
||||
Shrink(new_capacity);
|
||||
|
||||
T* old_buffer = data();
|
||||
-#ifdef ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#ifdef WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
wtf_size_t old_capacity = capacity();
|
||||
#endif
|
||||
if (new_capacity > 0) {
|
||||
@@ -2160,7 +2160,7 @@ void Vector<T, InlineCapacity, Allocator
|
||||
return;
|
||||
}
|
||||
Base::ResetBufferPointer();
|
||||
-#ifdef ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#ifdef WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
if (old_buffer != data()) {
|
||||
MARKING_AWARE_ANNOTATE_NEW_BUFFER(Allocator, data(), capacity(), size_);
|
||||
ANNOTATE_DELETE_BUFFER(old_buffer, old_capacity, size_);
|
||||
@@ -2270,7 +2270,7 @@ template <typename T, wtf_size_t InlineC
|
||||
template <typename U>
|
||||
ALWAYS_INLINE void Vector<T, InlineCapacity, Allocator>::UncheckedAppend(
|
||||
U&& val) {
|
||||
-#ifdef ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#ifdef WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
// Vectors in ASAN builds don't have InlineCapacity.
|
||||
push_back(std::forward<U>(val));
|
||||
#else
|
||||
@@ -2460,10 +2460,10 @@ void TraceInlinedBuffer(VisitorDispatche
|
||||
const T* buffer_begin,
|
||||
size_t capacity) {
|
||||
const T* buffer_end = buffer_begin + capacity;
|
||||
-#ifdef ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#ifdef WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
// Vector can trace unused slots (which are already zeroed out).
|
||||
ANNOTATE_CHANGE_SIZE(buffer_begin, capacity, 0, capacity);
|
||||
-#endif // ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#endif // WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
for (const T* buffer_entry = buffer_begin; buffer_entry != buffer_end;
|
||||
buffer_entry++) {
|
||||
Allocator::template Trace<T, VectorTraits<T>>(visitor, *buffer_entry);
|
||||
@@ -2542,7 +2542,7 @@ void Vector<T, InlineCapacity, Allocator
|
||||
}
|
||||
// Shrinking to inline buffer from out-of-line one.
|
||||
T *old_begin = data(), *old_end = DataEnd();
|
||||
-#ifdef ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#ifdef WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
const wtf_size_t old_capacity = capacity();
|
||||
#endif
|
||||
Base::ResetBufferPointer();
|
||||
diff '--color=auto' -urp src.old/third_party/blink/renderer/platform/wtf/vector_test.cc src/third_party/blink/renderer/platform/wtf/vector_test.cc
|
||||
--- src.old/third_party/blink/renderer/platform/wtf/vector_test.cc 2025-08-15 17:32:29.581405051 +0200
|
||||
+++ src/third_party/blink/renderer/platform/wtf/vector_test.cc 2025-08-17 14:47:13.846152160 +0200
|
||||
@@ -377,7 +377,7 @@ TEST(VectorTest, SwapWithInlineCapacity)
|
||||
vector_b.swap(vector_a);
|
||||
}
|
||||
|
||||
-#if defined(ANNOTATE_CONTIGUOUS_CONTAINER)
|
||||
+#if defined(WTF_ANNOTATE_CONTIGUOUS_CONTAINER)
|
||||
TEST(VectorTest, ContainerAnnotations) {
|
||||
Vector<int> vector_a;
|
||||
vector_a.push_back(10);
|
||||
@@ -415,7 +415,7 @@ TEST(VectorTest, ContainerAnnotations) {
|
||||
volatile int* int_pointer_b3 = vector_b.data();
|
||||
EXPECT_DEATH((void)int_pointer_b3[2], "container-overflow");
|
||||
}
|
||||
-#endif // defined(ANNOTATE_CONTIGUOUS_CONTAINER)
|
||||
+#endif // defined(WTF_ANNOTATE_CONTIGUOUS_CONTAINER)
|
||||
|
||||
class Comparable {};
|
||||
bool operator==(const Comparable& a, const Comparable& b) {
|
||||
--- src/third_party/blink/renderer/core/html/parser/literal_buffer.h.orig 2025-08-15 17:32:29.197405123 +0200
|
||||
+++ src/third_party/blink/renderer/core/html/parser/literal_buffer.h 2025-08-17 16:56:06.586499195 +0200
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
// For ASAN builds, disable inline buffers completely as they cause various
|
||||
// issues.
|
||||
-#ifdef ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
+#ifdef WTF_ANNOTATE_CONTIGUOUS_CONTAINER
|
||||
#define BUFFER_INLINE_CAPACITY 0
|
||||
#else
|
||||
#define BUFFER_INLINE_CAPACITY kInlineSize
|
||||
@@ -1,16 +0,0 @@
|
||||
Actually disable the fontations code flag since we don't build that library. Otherwise chromium crashes with a null dereference
|
||||
|
||||
--- src/third_party/blink/renderer/platform/runtime_enabled_features.json5.orig 2025-04-21 18:29:28.190307211 +0200
|
||||
+++ src/third_party/blink/renderer/platform/runtime_enabled_features.json5 2025-04-21 23:33:49.257769003 +0200
|
||||
@@ -2165,11 +2165,9 @@
|
||||
},
|
||||
{
|
||||
name: "FontationsFontBackend",
|
||||
- status: "stable",
|
||||
},
|
||||
{
|
||||
name: "FontationsForSelectedFormats",
|
||||
- status: "stable",
|
||||
},
|
||||
{
|
||||
name: "FontFamilyPostscriptMatchingCTMigration",
|
||||
14
angle-BlobCache-Success.patch
Normal file
14
angle-BlobCache-Success.patch
Normal file
@@ -0,0 +1,14 @@
|
||||
--- src/third_party/angle/src/common/vulkan/vk_headers.h.orig 2025-08-15 17:33:15.429396781 +0200
|
||||
+++ src/third_party/angle/src/common/vulkan/vk_headers.h 2025-08-15 21:50:06.831979165 +0200
|
||||
@@ -16,6 +16,11 @@
|
||||
# include <vulkan/vulkan.h>
|
||||
#endif
|
||||
|
||||
+// braindead change https://chromium-review.googlesource.com/c/angle/angle/+/5273491
|
||||
+#undef Success
|
||||
+#undef None
|
||||
+#undef Always
|
||||
+
|
||||
#if !defined(ANGLE_SHARED_LIBVULKAN)
|
||||
|
||||
namespace rx
|
||||
@@ -1,44 +0,0 @@
|
||||
From 0b4b5b0ae81dca83d3d602e905732e2c82bd340d Mon Sep 17 00:00:00 2001
|
||||
From: Sergey Silkin <ssilkin@webrtc.org>
|
||||
Date: Fri, 30 Aug 2024 13:37:32 +0200
|
||||
Subject: [PATCH] Use AV1E_SET_AUTO_TILES
|
||||
|
||||
Delegate control over number of times to encoder using AV1E_SET_AUTO_TILES that was added in https://aomedia-review.googlesource.com/c/aom/+/191102.
|
||||
|
||||
Bug: webrtc:351644568
|
||||
Change-Id: I87ed11734e907c7f6c6508ac7389c84ececf5b21
|
||||
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/361140
|
||||
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
|
||||
Reviewed-by: Marco Paniconi <marpan@webrtc.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#42903}
|
||||
---
|
||||
.../codecs/av1/libaom_av1_encoder.cc | 16 +---------------
|
||||
1 file changed, 1 insertion(+), 15 deletions(-)
|
||||
|
||||
diff --git a/modules/video_coding/codecs/av1/libaom_av1_encoder.cc b/modules/video_coding/codecs/av1/libaom_av1_encoder.cc
|
||||
index db9238477d..c06792207e 100644
|
||||
--- a/third_party/webrtc/modules/video_coding/codecs/av1/libaom_av1_encoder.cc
|
||||
+++ b/third_party/webrtc/modules/video_coding/codecs/av1/libaom_av1_encoder.cc
|
||||
@@ -307,21 +307,7 @@ int LibaomAv1Encoder::InitEncode(const VideoCodec* codec_settings,
|
||||
SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_ENABLE_PALETTE, 0);
|
||||
}
|
||||
|
||||
- if (cfg_.g_threads == 8) {
|
||||
- // Values passed to AV1E_SET_TILE_ROWS and AV1E_SET_TILE_COLUMNS are log2()
|
||||
- // based.
|
||||
- // Use 4 tile columns x 2 tile rows for 8 threads.
|
||||
- SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_TILE_ROWS, 1);
|
||||
- SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_TILE_COLUMNS, 2);
|
||||
- } else if (cfg_.g_threads == 4) {
|
||||
- // Use 2 tile columns x 2 tile rows for 4 threads.
|
||||
- SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_TILE_ROWS, 1);
|
||||
- SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_TILE_COLUMNS, 1);
|
||||
- } else {
|
||||
- SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_TILE_COLUMNS,
|
||||
- static_cast<int>(log2(cfg_.g_threads)));
|
||||
- }
|
||||
-
|
||||
+ SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_AUTO_TILES, 1);
|
||||
SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_ROW_MT, 1);
|
||||
SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_ENABLE_OBMC, 0);
|
||||
SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_NOISE_SENSITIVITY, 0);
|
||||
@@ -1,66 +0,0 @@
|
||||
From 84273f56d92953f15269cdb1d95d1851f83a8fe9 Mon Sep 17 00:00:00 2001
|
||||
From: Sergey Silkin <ssilkin@webrtc.org>
|
||||
Date: Fri, 30 Aug 2024 12:32:52 +0200
|
||||
Subject: [PATCH] Specify max number of consecutive drops using time units
|
||||
|
||||
AV1E_SET_MAX_CONSEC_FRAME_DROP_MS_CBR was added in https://aomedia-review.googlesource.com/c/aom/+/192402. It allows to configure max number of consecutive frame drops using time units. Use it instead of AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR.
|
||||
|
||||
Bug: webrtc:351644568
|
||||
Change-Id: I73265d5258d681926eb5b65e32c2a61b26c310ba
|
||||
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/360842
|
||||
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
|
||||
Reviewed-by: Marco Paniconi <marpan@webrtc.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#42995}
|
||||
---
|
||||
.../codecs/av1/libaom_av1_encoder.cc | 24 ++++---------------
|
||||
1 file changed, 5 insertions(+), 19 deletions(-)
|
||||
|
||||
diff --git a/modules/video_coding/codecs/av1/libaom_av1_encoder.cc b/modules/video_coding/codecs/av1/libaom_av1_encoder.cc
|
||||
index 6b71874c3f..262cb9d36b 100644
|
||||
--- a/third_party/webrtc/modules/video_coding/codecs/av1/libaom_av1_encoder.cc
|
||||
+++ b/third_party/webrtc/modules/video_coding/codecs/av1/libaom_av1_encoder.cc
|
||||
@@ -166,14 +166,6 @@ int32_t VerifyCodecSettings(const VideoCodec& codec_settings) {
|
||||
return WEBRTC_VIDEO_CODEC_OK;
|
||||
}
|
||||
|
||||
-int GetMaxConsecDrops(double framerate_fps) {
|
||||
- // Consecutive frame drops result in a video freeze. We want to minimize the
|
||||
- // max number of consecutive drops and, at the same time, keep the value high
|
||||
- // enough to let encoder drain the buffer at overshoot.
|
||||
- constexpr double kMaxFreezeSeconds = 0.25;
|
||||
- return std::ceil(kMaxFreezeSeconds * framerate_fps);
|
||||
-}
|
||||
-
|
||||
LibaomAv1Encoder::LibaomAv1Encoder(const Environment& env,
|
||||
LibaomAv1EncoderSettings settings)
|
||||
: inited_(false),
|
||||
@@ -339,6 +331,11 @@ int LibaomAv1Encoder::InitEncode(const VideoCodec* codec_settings,
|
||||
SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_ENABLE_TX64, 0);
|
||||
SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_MAX_REFERENCE_FRAMES, 3);
|
||||
|
||||
+ if (adaptive_max_consec_drops_) {
|
||||
+ SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_MAX_CONSEC_FRAME_DROP_MS_CBR,
|
||||
+ 250);
|
||||
+ }
|
||||
+
|
||||
return WEBRTC_VIDEO_CODEC_OK;
|
||||
}
|
||||
|
||||
@@ -815,17 +812,6 @@ void LibaomAv1Encoder::SetRates(const RateControlParameters& parameters) {
|
||||
SetEncoderControlParameters(AV1E_SET_SVC_PARAMS, &*svc_params_);
|
||||
}
|
||||
|
||||
- if (adaptive_max_consec_drops_ &&
|
||||
- (!rates_configured_ || framerate_fps_ != parameters.framerate_fps)) {
|
||||
- int max_consec_drops = GetMaxConsecDrops(parameters.framerate_fps);
|
||||
- if (!SetEncoderControlParameters(AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR,
|
||||
- max_consec_drops)) {
|
||||
- RTC_LOG(LS_WARNING)
|
||||
- << "Failed to set AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR to "
|
||||
- << max_consec_drops;
|
||||
- }
|
||||
- }
|
||||
-
|
||||
framerate_fps_ = parameters.framerate_fps;
|
||||
|
||||
rates_configured_ = true;
|
||||
@@ -2,28 +2,28 @@ Partially revert https://github.com/chromium/chromium/commit/c1dc375391403442935
|
||||
and disable dependent code. This removes `brs` from Accept-Encoding list.
|
||||
This feature does not build with brotli < 1.1
|
||||
|
||||
--- src/net/filter/brotli_source_stream.cc.orig 2024-07-24 12:50:53.542464800 +0200
|
||||
+++ src/net/filter/brotli_source_stream.cc 2024-08-04 21:07:52.674333900 +0200
|
||||
@@ -12,7 +12,6 @@
|
||||
#include "base/metrics/histogram_macros.h"
|
||||
--- src/net/filter/brotli_source_stream.cc.orig 2025-08-21 17:44:48.616409315 +0200
|
||||
+++ src/net/filter/brotli_source_stream.cc 2025-08-22 18:23:03.535047458 +0200
|
||||
@@ -18,7 +18,6 @@
|
||||
#include "net/base/io_buffer.h"
|
||||
#include "net/filter/source_stream_type.h"
|
||||
#include "third_party/brotli/include/brotli/decode.h"
|
||||
-#include "third_party/brotli/include/brotli/shared_dictionary.h"
|
||||
|
||||
namespace net {
|
||||
|
||||
@@ -24,21 +23,11 @@ const char kBrotli[] = "BROTLI";
|
||||
@@ -30,21 +29,11 @@ const char kBrotli[] = "BROTLI";
|
||||
// Brotli format specification: http://www.ietf.org/id/draft-alakuijala-brotli.
|
||||
class BrotliSourceStream : public FilterSourceStream {
|
||||
public:
|
||||
- explicit BrotliSourceStream(std::unique_ptr<SourceStream> upstream,
|
||||
- scoped_refptr<IOBuffer> dictionary = nullptr,
|
||||
- size_t dictionary_size = 0u)
|
||||
- : FilterSourceStream(SourceStream::TYPE_BROTLI, std::move(upstream)),
|
||||
- : FilterSourceStream(SourceStreamType::kBrotli, std::move(upstream)),
|
||||
- dictionary_(std::move(dictionary)),
|
||||
- dictionary_size_(dictionary_size) {
|
||||
+ explicit BrotliSourceStream(std::unique_ptr<SourceStream> upstream)
|
||||
+ : FilterSourceStream(SourceStream::TYPE_BROTLI, std::move(upstream)) {
|
||||
+ : FilterSourceStream(SourceStreamType::kBrotli, std::move(upstream)) {
|
||||
brotli_state_ =
|
||||
BrotliDecoderCreateInstance(AllocateMemory, FreeMemory, this);
|
||||
CHECK(brotli_state_);
|
||||
@@ -36,7 +36,7 @@ This feature does not build with brotli < 1.1
|
||||
}
|
||||
|
||||
BrotliSourceStream(const BrotliSourceStream&) = delete;
|
||||
@@ -174,9 +163,6 @@ class BrotliSourceStream : public Filter
|
||||
@@ -180,9 +169,6 @@ class BrotliSourceStream : public Filter
|
||||
free(&array[-1]);
|
||||
}
|
||||
|
||||
@@ -46,7 +46,7 @@ This feature does not build with brotli < 1.1
|
||||
raw_ptr<BrotliDecoderState> brotli_state_;
|
||||
|
||||
DecodingStatus decoding_status_ = DecodingStatus::DECODING_IN_PROGRESS;
|
||||
@@ -198,8 +184,7 @@ std::unique_ptr<FilterSourceStream> Crea
|
||||
@@ -204,8 +190,7 @@ std::unique_ptr<FilterSourceStream> Crea
|
||||
std::unique_ptr<SourceStream> previous,
|
||||
scoped_refptr<IOBuffer> dictionary,
|
||||
size_t dictionary_size) {
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
"manifest_handlers/webview_info.h",
|
||||
"manifest_url_handlers.cc",
|
||||
@@ -481,8 +467,6 @@ static_library("common") {
|
||||
"user_script.h",
|
||||
"user_scripts_availability.h",
|
||||
"utils/base_string.cc",
|
||||
"utils/base_string.h",
|
||||
- "utils/content_script_utils.cc",
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
--- src/chrome/test/BUILD.gn.orig 2024-12-08 18:44:32.671357320 +0100
|
||||
+++ src/chrome/test/BUILD.gn 2025-01-01 21:35:00.776064485 +0100
|
||||
@@ -8317,7 +8317,6 @@ test("unit_tests") {
|
||||
"//chrome/browser/user_annotations",
|
||||
"//chrome/browser/web_applications:web_applications_test_support",
|
||||
"//chrome/common/read_anything:mojo_bindings",
|
||||
- "//chrome/services/speech:unit_tests",
|
||||
"//components/app_constants",
|
||||
"//components/color",
|
||||
"//components/commerce/core:account_checker_test_support",
|
||||
@@ -21,9 +21,9 @@ Subject: [PATCH] Disable various compiler configs
|
||||
build/config/compiler/BUILD.gn | 114 +++++----------------------------
|
||||
1 file changed, 17 insertions(+), 97 deletions(-)
|
||||
|
||||
--- src/build/config/compiler/BUILD.gn.orig 2025-04-21 18:29:05.106306929 +0200
|
||||
+++ src/build/config/compiler/BUILD.gn 2025-04-22 20:59:45.689108303 +0200
|
||||
@@ -308,9 +308,7 @@ config("compiler") {
|
||||
--- src/build/config/compiler/BUILD.gn.orig 2025-07-19 11:32:29.581980058 +0200
|
||||
+++ src/build/config/compiler/BUILD.gn 2025-07-19 16:12:37.505818698 +0200
|
||||
@@ -310,9 +310,7 @@ config("compiler") {
|
||||
|
||||
configs += [
|
||||
# See the definitions below.
|
||||
@@ -32,8 +32,8 @@ Subject: [PATCH] Disable various compiler configs
|
||||
- ":compiler_cpu_abi",
|
||||
":compiler_codegen",
|
||||
":compiler_deterministic",
|
||||
]
|
||||
@@ -325,7 +323,6 @@ config("compiler") {
|
||||
":clang_warning_suppression",
|
||||
@@ -338,7 +336,6 @@ config("compiler") {
|
||||
# See: https://gcc.gnu.org/PR97913
|
||||
# TODO(mpdenton): remove is_clang once GCC bug is fixed.
|
||||
if ((!is_nacl || is_nacl_saigo) && !is_ubsan && is_clang) {
|
||||
@@ -41,15 +41,15 @@ Subject: [PATCH] Disable various compiler configs
|
||||
}
|
||||
|
||||
# Make signed overflow and pointer overflowdefined to wrap.
|
||||
@@ -335,7 +332,6 @@ config("compiler") {
|
||||
@@ -348,7 +345,6 @@ config("compiler") {
|
||||
if (is_win) {
|
||||
cflags += [ "/clang:-fwrapv" ]
|
||||
cflags += [ "/clang:-fno-strict-overflow" ]
|
||||
} else {
|
||||
- cflags += [ "-fwrapv" ]
|
||||
- cflags += [ "-fno-strict-overflow" ]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -351,7 +347,12 @@ config("compiler") {
|
||||
@@ -364,7 +360,12 @@ config("compiler") {
|
||||
if (!is_win) {
|
||||
# Common POSIX compiler flags setup.
|
||||
# --------------------------------
|
||||
@@ -63,7 +63,7 @@ Subject: [PATCH] Disable various compiler configs
|
||||
|
||||
# Stack protection. ShadowCallStack and Stack protector address the same
|
||||
# problems. Therefore, we only enable one or the other. Clang advertises SCS as
|
||||
@@ -498,10 +499,6 @@ config("compiler") {
|
||||
@@ -500,10 +501,6 @@ config("compiler") {
|
||||
# Linux/Android/Fuchsia common flags setup.
|
||||
# ---------------------------------
|
||||
if (is_linux || is_chromeos || is_android || is_fuchsia) {
|
||||
@@ -74,7 +74,7 @@ Subject: [PATCH] Disable various compiler configs
|
||||
|
||||
if (!is_clang) {
|
||||
# Use pipes for communicating between sub-processes. Faster.
|
||||
@@ -1124,11 +1121,6 @@ config("libcxx_hardening") {
|
||||
@@ -1148,11 +1145,6 @@ config("libcxx_hardening") {
|
||||
defines = [ "_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_NONE" ]
|
||||
}
|
||||
|
||||
@@ -86,7 +86,7 @@ Subject: [PATCH] Disable various compiler configs
|
||||
}
|
||||
|
||||
# The BUILDCONFIG file sets this config on targets by default, which means when
|
||||
@@ -1194,7 +1186,8 @@ config("thinlto_optimize_max") {
|
||||
@@ -1218,7 +1210,8 @@ config("thinlto_optimize_max") {
|
||||
# without using everything that "compiler" brings in. Options that
|
||||
# tweak code generation for a particular CPU do not belong here!
|
||||
# See "compiler_codegen", below.
|
||||
@@ -96,17 +96,17 @@ Subject: [PATCH] Disable various compiler configs
|
||||
cflags = []
|
||||
ldflags = []
|
||||
defines = []
|
||||
@@ -1824,7 +1817,8 @@ config("treat_warnings_as_errors") {
|
||||
# Collects all warning flags that are used by default. This is used as a
|
||||
# subconfig of both chromium_code and no_chromium_code. This way these
|
||||
@@ -1994,7 +1987,8 @@ config("tot_warnings") {
|
||||
# Collects all warning flags that are used by default. This is used as a
|
||||
# subconfig of both chromium_code and no_chromium_code. This way these
|
||||
# flags are guaranteed to appear on the compile command line after -Wall.
|
||||
-config("default_warnings") {
|
||||
+config("default_warnings") { }
|
||||
+config("xdefault_warnings") {
|
||||
cflags = []
|
||||
cflags_c = []
|
||||
cflags_cc = []
|
||||
@@ -2071,11 +2065,7 @@ config("chromium_code") {
|
||||
ldflags = []
|
||||
@@ -2262,11 +2256,7 @@ config("chromium_code") {
|
||||
defines = [ "_HAS_NODISCARD" ]
|
||||
}
|
||||
} else {
|
||||
@@ -119,7 +119,7 @@ Subject: [PATCH] Disable various compiler configs
|
||||
|
||||
# In Chromium code, we define __STDC_foo_MACROS in order to get the
|
||||
# C99 macros on Mac and Linux.
|
||||
@@ -2084,24 +2074,6 @@ config("chromium_code") {
|
||||
@@ -2275,24 +2265,6 @@ config("chromium_code") {
|
||||
"__STDC_FORMAT_MACROS",
|
||||
]
|
||||
|
||||
@@ -144,15 +144,15 @@ Subject: [PATCH] Disable various compiler configs
|
||||
if (is_apple) {
|
||||
cflags_objc = [ "-Wimplicit-retain-self" ]
|
||||
cflags_objcc = [ "-Wimplicit-retain-self" ]
|
||||
@@ -2268,7 +2240,6 @@ config("no_rtti") {
|
||||
@@ -2451,7 +2423,6 @@ config("no_rtti") {
|
||||
# to heap-allocated memory are passed over shared library boundaries.
|
||||
config("export_dynamic") {
|
||||
# TODO(crbug.com/40118868): Revisit after target_os flip is completed.
|
||||
if (is_linux || is_chromeos_lacros || export_libcxxabi_from_executables) {
|
||||
if (is_linux || export_libcxxabi_from_executables) {
|
||||
- ldflags = [ "-rdynamic" ]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2366,7 +2337,8 @@ config("wexit_time_destructors") {
|
||||
@@ -2550,7 +2521,8 @@ config("wexit_time_destructors") {
|
||||
# gcc 4.9 and earlier had no way of suppressing this warning without
|
||||
# suppressing the rest of them. Here we centralize the identification of
|
||||
# the gcc 4.9 toolchains.
|
||||
@@ -162,7 +162,7 @@ Subject: [PATCH] Disable various compiler configs
|
||||
cflags = []
|
||||
if (is_clang) {
|
||||
cflags += [ "-Wno-incompatible-pointer-types" ]
|
||||
@@ -2483,7 +2455,8 @@ if (is_win) {
|
||||
@@ -2667,7 +2639,8 @@ if (is_win) {
|
||||
common_optimize_on_cflags += [ "-fno-math-errno" ]
|
||||
}
|
||||
|
||||
@@ -172,7 +172,7 @@ Subject: [PATCH] Disable various compiler configs
|
||||
if (!is_win) {
|
||||
if (enable_frame_pointers) {
|
||||
cflags = [ "-fno-omit-frame-pointer" ]
|
||||
@@ -2524,7 +2497,8 @@ config("default_stack_frames") {
|
||||
@@ -2708,7 +2681,8 @@ config("default_stack_frames") {
|
||||
# [0]: https://pinpoint-dot-chromeperf.appspot.com/job/147634a8be0000
|
||||
# [1]: https://pinpoint-dot-chromeperf.appspot.com/job/132bc772be0000
|
||||
# [2]: https://crrev.com/c/5447532
|
||||
@@ -182,7 +182,7 @@ Subject: [PATCH] Disable various compiler configs
|
||||
if (is_win) {
|
||||
# clang-cl's /O2 corresponds to clang's -O3, and really want -O2 for
|
||||
# consistency with the other platforms.
|
||||
@@ -2573,7 +2547,8 @@ config("optimize") {
|
||||
@@ -2757,7 +2731,8 @@ config("optimize") {
|
||||
}
|
||||
|
||||
# Turn off optimizations.
|
||||
@@ -192,7 +192,7 @@ Subject: [PATCH] Disable various compiler configs
|
||||
if (is_win) {
|
||||
cflags = [
|
||||
"/Od", # Disable optimization.
|
||||
@@ -2613,7 +2588,8 @@ config("no_optimize") {
|
||||
@@ -2792,7 +2767,8 @@ config("no_optimize") {
|
||||
# Turns up the optimization level. Used to explicitly enable -O2 instead of
|
||||
# -Os for select targets on platforms that use optimize_for_size. No-op
|
||||
# elsewhere.
|
||||
@@ -202,7 +202,7 @@ Subject: [PATCH] Disable various compiler configs
|
||||
if (is_nacl && is_nacl_irt) {
|
||||
# The NaCl IRT is a special case and always wants its own config.
|
||||
# Various components do:
|
||||
@@ -2646,7 +2622,8 @@ config("optimize_max") {
|
||||
@@ -2825,7 +2801,8 @@ config("optimize_max") {
|
||||
#
|
||||
# TODO(crbug.com/41259697) - rework how all of these configs are related
|
||||
# so that we don't need this disclaimer.
|
||||
@@ -212,7 +212,7 @@ Subject: [PATCH] Disable various compiler configs
|
||||
if (is_nacl && is_nacl_irt) {
|
||||
# The NaCl IRT is a special case and always wants its own config.
|
||||
# Various components do:
|
||||
@@ -2675,7 +2652,8 @@ config("optimize_speed") {
|
||||
@@ -2854,7 +2831,8 @@ config("optimize_speed") {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -222,7 +222,7 @@ Subject: [PATCH] Disable various compiler configs
|
||||
cflags = [ "-O1" ] + common_optimize_on_cflags
|
||||
rustflags = [ "-Copt-level=1" ]
|
||||
ldflags = common_optimize_on_ldflags
|
||||
@@ -2806,7 +2784,8 @@ config("win_pdbaltpath") {
|
||||
@@ -2985,7 +2963,8 @@ config("win_pdbaltpath") {
|
||||
}
|
||||
|
||||
# Full symbols.
|
||||
@@ -232,7 +232,7 @@ Subject: [PATCH] Disable various compiler configs
|
||||
rustflags = []
|
||||
configs = []
|
||||
if (is_win) {
|
||||
@@ -2968,7 +2947,8 @@ config("symbols") {
|
||||
@@ -3159,7 +3138,8 @@ config("symbols") {
|
||||
# Minimal symbols.
|
||||
# This config guarantees to hold symbol for stack trace which are shown to user
|
||||
# when crash happens in unittests running on buildbot.
|
||||
@@ -242,7 +242,7 @@ Subject: [PATCH] Disable various compiler configs
|
||||
rustflags = []
|
||||
if (is_win) {
|
||||
# Functions, files, and line tables only.
|
||||
@@ -3053,7 +3033,8 @@ config("minimal_symbols") {
|
||||
@@ -3244,7 +3224,8 @@ config("minimal_symbols") {
|
||||
# This configuration contains function names only. That is, the compiler is
|
||||
# told to not generate debug information and the linker then just puts function
|
||||
# names in the final debug information.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
--- src/skia/BUILD.gn.orig 2025-04-11 12:05:22.085153891 +0200
|
||||
+++ src/skia/BUILD.gn 2025-04-11 20:35:59.999827501 +0200
|
||||
--- a/skia/BUILD.gn
|
||||
+++ b/skia/BUILD.gn
|
||||
@@ -8,7 +8,6 @@ import("//build/config/features.gni")
|
||||
import("//build/config/freetype/freetype.gni")
|
||||
import("//build/config/rust.gni")
|
||||
@@ -19,13 +19,13 @@
|
||||
-rust_static_library("bridge_rust_side") {
|
||||
- allow_unsafe = true
|
||||
- crate_root = skia_fontations_bridge_root
|
||||
- sources = skia_fontations_bridge_sources
|
||||
- cxx_bindings = skia_fontations_bridge_sources
|
||||
- sources = skia_ports_fontations_bridge_rust_side_sources
|
||||
- cxx_bindings = [ skia_fontations_bridge_root ]
|
||||
- deps = [
|
||||
- ":path_bridge",
|
||||
- "//third_party/rust/font_types/v0_8:lib",
|
||||
- "//third_party/rust/read_fonts/v0_25:lib",
|
||||
- "//third_party/rust/skrifa/v0_26:lib",
|
||||
- "//third_party/rust/read_fonts/v0_27:lib",
|
||||
- "//third_party/rust/skrifa/v0_29:lib",
|
||||
- ]
|
||||
- configs -= [ "//build/config/compiler:chromium_code" ]
|
||||
- configs += [
|
||||
@@ -36,7 +36,7 @@
|
||||
|
||||
# External-facing config for dependent code.
|
||||
config("skia_config") {
|
||||
@@ -182,7 +160,6 @@ config("skia_library_config") {
|
||||
@@ -190,7 +168,6 @@ config("skia_library_config") {
|
||||
if (use_blink && enable_freetype) {
|
||||
defines += [
|
||||
"SK_TYPEFACE_FACTORY_FREETYPE",
|
||||
@@ -44,7 +44,7 @@
|
||||
"SK_FONTMGR_FREETYPE_EMPTY_AVAILABLE",
|
||||
]
|
||||
}
|
||||
@@ -417,14 +394,6 @@ component("skia") {
|
||||
@@ -428,14 +405,6 @@ component("skia") {
|
||||
public += skia_ports_fontmgr_empty_public
|
||||
}
|
||||
sources += skia_ports_typeface_proxy_sources
|
||||
@@ -59,7 +59,7 @@
|
||||
}
|
||||
|
||||
if (is_win) {
|
||||
@@ -719,13 +688,7 @@ skia_source_set("skia_core_and_effects")
|
||||
@@ -730,13 +699,7 @@ skia_source_set("skia_core_and_effects")
|
||||
# skia_core_and_effects rather than the other way around.
|
||||
public_deps = [ "//third_party/dawn/include/dawn:cpp_headers" ]
|
||||
}
|
||||
@@ -74,37 +74,139 @@
|
||||
visibility = [ ":skia" ]
|
||||
}
|
||||
|
||||
--- src/third_party/blink/renderer/platform/fonts/web_font_typeface_factory.cc.orig 2025-04-11 12:05:22.929220697 +0200
|
||||
+++ src/third_party/blink/renderer/platform/fonts/web_font_typeface_factory.cc 2025-04-11 20:35:59.999827501 +0200
|
||||
@@ -13,7 +13,6 @@
|
||||
--- a/skia/ext/font_utils.cc
|
||||
+++ b/skia/ext/font_utils.cc
|
||||
@@ -69,13 +69,7 @@ static sk_sp<SkFontMgr> fontmgr_factory(
|
||||
return SkFontMgr_New_CoreText(nullptr);
|
||||
#elif BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)
|
||||
sk_sp<SkFontConfigInterface> fci(SkFontConfigInterface::RefGlobal());
|
||||
- if (base::FeatureList::IsEnabled(skia::kFontationsLinuxSystemFonts)) {
|
||||
- return fci ? SkFontMgr_New_FCI(std::move(fci),
|
||||
- SkFontScanner_Make_Fontations())
|
||||
- : nullptr;
|
||||
- } else {
|
||||
- return fci ? SkFontMgr_New_FCI(std::move(fci)) : nullptr;
|
||||
- }
|
||||
+ return fci ? SkFontMgr_New_FCI(std::move(fci)) : nullptr;
|
||||
#elif BUILDFLAG(IS_FUCHSIA)
|
||||
fuchsia::fonts::ProviderSyncPtr provider;
|
||||
base::ComponentContextForProcess()->svc()->Connect(provider.NewRequest());
|
||||
--- a/third_party/blink/renderer/platform/fonts/skia/sktypeface_factory.cc
|
||||
+++ b/third_party/blink/renderer/platform/fonts/skia/sktypeface_factory.cc
|
||||
@@ -29,11 +29,7 @@ sk_sp<SkTypeface> SkTypeface_Factory::Fr
|
||||
font_identity.fID = config_id;
|
||||
font_identity.fTTCIndex = ttc_index;
|
||||
|
||||
- if (base::FeatureList::IsEnabled(skia::kFontationsLinuxSystemFonts)) {
|
||||
- return fci->makeTypeface(font_identity, SkFontMgr_New_Fontations_Empty());
|
||||
- } else {
|
||||
return fci->makeTypeface(font_identity, skia::DefaultFontMgr());
|
||||
- }
|
||||
#else
|
||||
NOTREACHED();
|
||||
#endif
|
||||
@@ -46,12 +42,7 @@ sk_sp<SkTypeface> SkTypeface_Factory::Fr
|
||||
#if !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_FUCHSIA) && \
|
||||
!BUILDFLAG(IS_APPLE)
|
||||
|
||||
- if (base::FeatureList::IsEnabled(skia::kFontationsLinuxSystemFonts)) {
|
||||
- return SkFontMgr_New_Fontations_Empty()->makeFromFile(filename.c_str(),
|
||||
- ttc_index);
|
||||
- } else {
|
||||
return skia::DefaultFontMgr()->makeFromFile(filename.c_str(), ttc_index);
|
||||
- }
|
||||
#else
|
||||
NOTREACHED();
|
||||
#endif
|
||||
--- a/third_party/blink/renderer/platform/fonts/web_font_typeface_factory.cc
|
||||
+++ b/third_party/blink/renderer/platform/fonts/web_font_typeface_factory.cc
|
||||
@@ -12,7 +12,6 @@
|
||||
#include "third_party/blink/renderer/platform/fonts/opentype/font_format_check.h"
|
||||
#include "third_party/freetype_buildflags.h"
|
||||
#include "third_party/skia/include/core/SkStream.h"
|
||||
#include "third_party/skia/include/core/SkTypeface.h"
|
||||
-#include "third_party/skia/include/ports/SkTypeface_fontations.h"
|
||||
|
||||
#if BUILDFLAG(IS_WIN)
|
||||
#include "third_party/blink/renderer/platform/fonts/win/dwrite_font_format_support.h"
|
||||
@@ -55,7 +54,7 @@ bool IsFreeTypeSystemRasterizer() {
|
||||
@@ -38,11 +37,7 @@ bool IsWin() {
|
||||
}
|
||||
|
||||
bool IsFreeTypeSystemRasterizer() {
|
||||
-#if !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_APPLE)
|
||||
return true;
|
||||
-#else
|
||||
- return false;
|
||||
-#endif
|
||||
}
|
||||
|
||||
sk_sp<SkTypeface> MakeTypefaceDefaultFontMgr(sk_sp<SkData> data) {
|
||||
@@ -50,13 +45,7 @@ sk_sp<SkTypeface> MakeTypefaceDefaultFon
|
||||
return FontCache::Get().FontManager()->makeFromData(data, 0);
|
||||
#endif
|
||||
|
||||
-#if BUILDFLAG(IS_APPLE)
|
||||
return skia::DefaultFontMgr()->makeFromData(data, 0);
|
||||
-#endif
|
||||
-
|
||||
-#if !(BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE))
|
||||
+#if (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE))
|
||||
if (RuntimeEnabledFeatures::FontationsFontBackendEnabled()) {
|
||||
std::unique_ptr<SkStreamAsset> stream(new SkMemoryStream(data));
|
||||
return SkTypeface_Make_Fontations(std::move(stream), SkFontArguments());
|
||||
@@ -83,10 +82,6 @@ sk_sp<SkTypeface> MakeTypefaceFallback(s
|
||||
- return SkTypeface_Make_Fontations(data, SkFontArguments());
|
||||
-#endif
|
||||
}
|
||||
|
||||
#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE)
|
||||
@@ -65,10 +54,6 @@ sk_sp<SkTypeface> MakeTypefaceFallback(s
|
||||
}
|
||||
#endif
|
||||
|
||||
-sk_sp<SkTypeface> MakeTypefaceFontations(sk_sp<SkData> data) {
|
||||
- std::unique_ptr<SkStreamAsset> stream(new SkMemoryStream(data));
|
||||
- return SkTypeface_Make_Fontations(std::move(stream), SkFontArguments());
|
||||
- return SkTypeface_Make_Fontations(data, SkFontArguments());
|
||||
-}
|
||||
|
||||
-
|
||||
sk_sp<SkTypeface> MakeVariationsTypeface(
|
||||
sk_sp<SkData> data,
|
||||
@@ -188,7 +183,6 @@ bool WebFontTypefaceFactory::CreateTypef
|
||||
const WebFontTypefaceFactory::FontInstantiator& instantiator) {
|
||||
@@ -88,9 +73,6 @@ sk_sp<SkTypeface> MakeSbixTypeface(
|
||||
const WebFontTypefaceFactory::FontInstantiator& instantiator) {
|
||||
// If we're on a OS with FreeType as backend, or on Windows, where we used to
|
||||
// use FreeType for SBIX, switch to Fontations for SBIX.
|
||||
- if (IsFreeTypeSystemRasterizer() || IsWin()) {
|
||||
- return instantiator.make_fontations(data);
|
||||
- }
|
||||
|
||||
// Remaining case, on Mac, CoreText can handle creating SBIX fonts.
|
||||
return instantiator.make_system(data);
|
||||
@@ -99,29 +81,21 @@ sk_sp<SkTypeface> MakeSbixTypeface(
|
||||
sk_sp<SkTypeface> MakeColrV0Typeface(
|
||||
sk_sp<SkData> data,
|
||||
const WebFontTypefaceFactory::FontInstantiator& instantiator) {
|
||||
- if (IsWin()) {
|
||||
// On Windows Skia's DirectWrite
|
||||
// backend handles COLRv0.
|
||||
return instantiator.make_system(data);
|
||||
- }
|
||||
- return instantiator.make_fontations(data);
|
||||
}
|
||||
|
||||
sk_sp<SkTypeface> MakeColrV0VariationsTypeface(
|
||||
sk_sp<SkData> data,
|
||||
const WebFontTypefaceFactory::FontInstantiator& instantiator) {
|
||||
-#if BUILDFLAG(IS_WIN)
|
||||
- if (DWriteVersionSupportsVariations()) {
|
||||
return instantiator.make_system(data);
|
||||
- }
|
||||
-#endif
|
||||
- return instantiator.make_fontations(data);
|
||||
}
|
||||
|
||||
sk_sp<SkTypeface> MakeFontationsFallbackPreferred(
|
||||
sk_sp<SkData> data,
|
||||
const WebFontTypefaceFactory::FontInstantiator& instantiator) {
|
||||
- return instantiator.make_fontations(data);
|
||||
+ return instantiator.make_system(data);
|
||||
}
|
||||
|
||||
} // namespace
|
||||
@@ -131,7 +105,6 @@ bool WebFontTypefaceFactory::CreateTypef
|
||||
const FontFormatCheck format_check(data);
|
||||
const FontInstantiator instantiator = {
|
||||
MakeTypefaceDefaultFontMgr,
|
||||
|
||||
@@ -1,15 +1,44 @@
|
||||
--- a/BUILD.gn
|
||||
+++ b/BUILD.gn
|
||||
@@ -27,7 +27,6 @@ import("//extensions/buildflags/buildfla
|
||||
import("//gpu/vulkan/features.gni")
|
||||
import("//media/gpu/args.gni")
|
||||
import("//media/media_options.gni")
|
||||
-import("//mojo/public/rust/rust.gni")
|
||||
import("//pdf/features.gni")
|
||||
import("//ppapi/buildflags/buildflags.gni")
|
||||
import("//printing/buildflags/buildflags.gni")
|
||||
@@ -885,17 +884,10 @@ group("all_rust") {
|
||||
|
||||
deps = [
|
||||
":rust_build_tests",
|
||||
- "//base:base_unittests", # There is rust stuff in here.
|
||||
- "//third_party/cloud_authenticator/processor",
|
||||
]
|
||||
|
||||
- # TODO(https://crbug.com/405379314): This fails to build on some iOS ASAN
|
||||
- # builders.
|
||||
- if (!is_ios || !is_asan) {
|
||||
- deps += [ "//testing/rust_gtest_interop:rust_gtest_interop_unittests" ]
|
||||
- }
|
||||
|
||||
- if (enable_rust_mojo) {
|
||||
+ if (false) {
|
||||
deps += [
|
||||
"//mojo/public/rust:mojo_rust",
|
||||
"//mojo/public/rust:mojo_rust_integration_unittests",
|
||||
--- a/base/BUILD.gn
|
||||
+++ b/base/BUILD.gn
|
||||
@@ -38,8 +38,6 @@
|
||||
@@ -36,8 +36,6 @@ import("//build/config/sanitizers/saniti
|
||||
import("//build/config/sysroot.gni")
|
||||
import("//build/config/ui.gni")
|
||||
import("//build/nocompile.gni")
|
||||
-import("//build/rust/rust_bindgen.gni")
|
||||
-import("//build/rust/rust_static_library.gni")
|
||||
import("//build/timestamp.gni")
|
||||
import("//build/util/process_version.gni")
|
||||
import("//build_overrides/build.gni")
|
||||
@@ -1022,11 +1020,6 @@
|
||||
import("//testing/libfuzzer/fuzzer_test.gni")
|
||||
@@ -1053,11 +1051,6 @@ component("base") {
|
||||
# Used by metrics/crc32, except on NaCl builds.
|
||||
deps += [ "//third_party/zlib" ]
|
||||
|
||||
@@ -21,7 +50,7 @@
|
||||
}
|
||||
|
||||
# `raw_ptr` cannot be made a component due to CRT symbol issues.
|
||||
@@ -1063,7 +1056,7 @@
|
||||
@@ -1093,7 +1086,7 @@ component("base") {
|
||||
"//third_party/abseil-cpp:absl",
|
||||
]
|
||||
|
||||
@@ -30,7 +59,7 @@
|
||||
sources += [
|
||||
"containers/span_rust.h",
|
||||
"strings/string_view_rust.h",
|
||||
@@ -1543,8 +1536,6 @@
|
||||
@@ -1598,8 +1591,6 @@ component("base") {
|
||||
"files/scoped_temp_file.h",
|
||||
"json/json_file_value_serializer.cc",
|
||||
"json/json_file_value_serializer.h",
|
||||
@@ -39,7 +68,7 @@
|
||||
"memory/discardable_memory.cc",
|
||||
"memory/discardable_memory.h",
|
||||
"memory/discardable_memory_allocator.cc",
|
||||
@@ -2447,40 +2438,6 @@
|
||||
@@ -2542,62 +2533,6 @@ component("base") {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -55,21 +84,43 @@
|
||||
- deps = [ ":debugging_buildflags" ]
|
||||
-}
|
||||
-
|
||||
-rust_bindgen("logging_rust_log_integration_bindgen") {
|
||||
- header = "logging/rust_log_integration.h"
|
||||
- cpp = true
|
||||
- visibility = [ ":*" ]
|
||||
-
|
||||
- # Transitive generated header dependency.
|
||||
- deps = [ ":debugging_buildflags" ]
|
||||
-}
|
||||
-
|
||||
-rust_static_library("rust_logger") {
|
||||
- allow_unsafe = true # Unsafe needed for FFI.
|
||||
- deps = [
|
||||
- ":logging_log_severity_bindgen",
|
||||
- ":logging_rust_log_integration_bindgen",
|
||||
- ":tracing_buildflags",
|
||||
- "//build:chromeos_buildflags",
|
||||
- "//third_party/rust/log/v0_4:lib",
|
||||
-
|
||||
- # Needed because of circular dependency: base depends on this target and by
|
||||
- # extension the cxx-generated C++ code, but the cxx-generated code includes
|
||||
- # base headers and calls base code. This seems to generally not cause
|
||||
- # issues, except for partition_alloc which applies configs when depended on.
|
||||
- #
|
||||
- # This allows the generated C++ code to transitively include partition alloc
|
||||
- # headers without issue.
|
||||
- #
|
||||
- # TODO(collinbaker): determine how to handle these cxx bindings-induced
|
||||
- # circular dependencies more robustly.
|
||||
- "//base/allocator/partition_allocator:raw_ptr",
|
||||
-
|
||||
- # Needed because logging/rust_logger.rs contains:
|
||||
- # include!("base/logging/rust_log_integration.h");
|
||||
- # rust_log_integration.h ends up transitively #including
|
||||
- # debug/debugging_buildflags.h, which is a generated header that needs to
|
||||
- # be written first.
|
||||
- #
|
||||
- # Technically it would be more correct to depend on :base, which is the
|
||||
- # target for rust_log_integration.h, but that's not possible due to circular
|
||||
- # dependencies.
|
||||
- #
|
||||
- # Note if this is removed the build may still work by accident because
|
||||
- # debug/debugging_buildflags.h still ends up being generated through a
|
||||
- # dependency chain via :logging_log_severity_bindgen. But we should not
|
||||
- # rely on that.
|
||||
- #
|
||||
- # See also https://crbug.com/406267472.
|
||||
- ":debugging_buildflags",
|
||||
- ]
|
||||
- visibility = [ ":base" ]
|
||||
- sources = [ "logging/rust_logger.rs" ]
|
||||
@@ -80,7 +131,7 @@
|
||||
|
||||
if (is_linux || is_chromeos) {
|
||||
# Split out as a separate target for two reasons:
|
||||
@@ -3564,7 +3521,7 @@
|
||||
@@ -3736,7 +3671,7 @@ test("base_unittests") {
|
||||
sources += [ "location_unittest.cc" ]
|
||||
}
|
||||
|
||||
@@ -89,7 +140,7 @@
|
||||
sources += [
|
||||
"containers/span_rust_unittest.cc",
|
||||
"strings/string_piece_rust_unittest.cc",
|
||||
@@ -3617,7 +3574,7 @@
|
||||
@@ -3791,7 +3726,7 @@ test("base_unittests") {
|
||||
deps += [ "allocator/partition_allocator/src/partition_alloc:unittests" ]
|
||||
}
|
||||
|
||||
@@ -98,33 +149,67 @@
|
||||
deps += [ "//build/rust:cxx_cppdeps" ]
|
||||
}
|
||||
|
||||
--- a/BUILD.gn
|
||||
+++ b/BUILD.gn
|
||||
@@ -28,7 +28,6 @@
|
||||
import("//gpu/vulkan/features.gni")
|
||||
import("//media/gpu/args.gni")
|
||||
import("//media/media_options.gni")
|
||||
-import("//mojo/public/rust/rust.gni")
|
||||
import("//pdf/features.gni")
|
||||
import("//ppapi/buildflags/buildflags.gni")
|
||||
import("//printing/buildflags/buildflags.gni")
|
||||
@@ -888,12 +887,9 @@
|
||||
--- a/base/json/json_reader.cc
|
||||
+++ b/base/json/json_reader.cc
|
||||
@@ -13,7 +13,7 @@
|
||||
#include "base/strings/string_number_conversions.h"
|
||||
#include "build/build_config.h"
|
||||
|
||||
deps = [
|
||||
":rust_build_tests",
|
||||
- "//base:base_unittests", # There is rust stuff in here.
|
||||
- "//testing/rust_gtest_interop:rust_gtest_interop_unittests",
|
||||
- "//third_party/cloud_authenticator/processor",
|
||||
]
|
||||
-#if BUILDFLAG(IS_NACL)
|
||||
+#if !BUILDFLAG(IS_NACL)
|
||||
#include "base/json/json_parser.h"
|
||||
#else
|
||||
#include "base/strings/string_view_rust.h"
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
- if (enable_rust_mojo) {
|
||||
+ if (false) {
|
||||
deps += [
|
||||
"//mojo/public/rust:mojo_rust",
|
||||
"//mojo/public/rust:mojo_rust_integration_unittests",
|
||||
// TODO(crbug.com/40811643): Move the C++ parser into components/nacl to just
|
||||
// run in-process there. Don't compile base::JSONReader on NaCL at all.
|
||||
-#if !BUILDFLAG(IS_NACL)
|
||||
+#if BUILDFLAG(IS_NACL)
|
||||
|
||||
namespace {
|
||||
const char kSecurityJsonParsingTime[] = "Security.JSONParser.ParsingTime";
|
||||
@@ -144,7 +144,7 @@ std::string JSONReader::Error::ToString(
|
||||
std::optional<Value> JSONReader::Read(std::string_view json,
|
||||
int options,
|
||||
size_t max_depth) {
|
||||
-#if BUILDFLAG(IS_NACL)
|
||||
+#if !BUILDFLAG(IS_NACL)
|
||||
internal::JSONParser parser(options, max_depth);
|
||||
return parser.Parse(json);
|
||||
#else // BUILDFLAG(IS_NACL)
|
||||
@@ -185,7 +185,7 @@ std::optional<Value::List> JSONReader::R
|
||||
JSONReader::Result JSONReader::ReadAndReturnValueWithError(
|
||||
std::string_view json,
|
||||
int options) {
|
||||
-#if BUILDFLAG(IS_NACL)
|
||||
+#if !BUILDFLAG(IS_NACL)
|
||||
internal::JSONParser parser(options);
|
||||
auto value = parser.Parse(json);
|
||||
if (!value) {
|
||||
--- a/base/logging.cc
|
||||
+++ b/base/logging.cc
|
||||
@@ -117,7 +117,7 @@ typedef FILE* FileHandle;
|
||||
#include "base/fuchsia/scoped_fx_logger.h"
|
||||
#endif
|
||||
|
||||
-#if !BUILDFLAG(IS_NACL)
|
||||
+#if BUILDFLAG(IS_NACL)
|
||||
#include "base/logging/rust_logger.rs.h"
|
||||
#endif
|
||||
|
||||
@@ -529,7 +529,7 @@ bool BaseInitLoggingImpl(const LoggingSe
|
||||
}
|
||||
#endif
|
||||
|
||||
-#if !BUILDFLAG(IS_NACL)
|
||||
+#if BUILDFLAG(IS_NACL)
|
||||
// Connects Rust logging with the //base logging functionality.
|
||||
internal::init_rust_log_crate();
|
||||
#endif
|
||||
--- a/base/test/BUILD.gn
|
||||
+++ b/base/test/BUILD.gn
|
||||
@@ -7,7 +7,6 @@
|
||||
@@ -6,7 +6,6 @@ import("//build/compiled_action.gni")
|
||||
import("//build/config/features.gni")
|
||||
import("//build/config/nacl/config.gni")
|
||||
import("//build/config/ui.gni")
|
||||
@@ -132,7 +217,7 @@
|
||||
import("//build_overrides/build.gni")
|
||||
import("//third_party/protobuf/proto_library.gni")
|
||||
|
||||
@@ -39,16 +38,6 @@
|
||||
@@ -38,16 +37,6 @@ static_library("test_config") {
|
||||
]
|
||||
}
|
||||
|
||||
@@ -149,7 +234,7 @@
|
||||
|
||||
static_library("test_support") {
|
||||
testonly = true
|
||||
@@ -189,7 +178,6 @@
|
||||
@@ -192,7 +181,6 @@ static_library("test_support") {
|
||||
|
||||
public_deps = [
|
||||
":test_config",
|
||||
@@ -157,109 +242,36 @@
|
||||
"//base",
|
||||
"//base:base_static",
|
||||
"//base:i18n",
|
||||
--- a/services/on_device_model/ml/BUILD.gn
|
||||
+++ b/services/on_device_model/ml/BUILD.gn
|
||||
@@ -71,7 +71,6 @@ if (use_blink || (is_ios && build_with_i
|
||||
]
|
||||
if (enable_constraints) {
|
||||
defines += [ "ENABLE_ON_DEVICE_CONSTRAINTS" ]
|
||||
- deps += [ "//third_party/rust/llguidance/v0_7:lib" ]
|
||||
}
|
||||
if (use_blink) {
|
||||
deps += [ "//gpu/config" ]
|
||||
--- a/services/on_device_model/ml/chrome_ml.cc
|
||||
+++ b/services/on_device_model/ml/chrome_ml.cc
|
||||
@@ -24,7 +24,6 @@
|
||||
#include "third_party/dawn/include/dawn/dawn_proc.h"
|
||||
#include "third_party/dawn/include/dawn/native/DawnNative.h"
|
||||
#include "third_party/dawn/include/dawn/webgpu_cpp.h"
|
||||
-#include "third_party/rust/chromium_crates_io/vendor/llguidance-v0_7/llguidance.h"
|
||||
|
||||
#if !BUILDFLAG(IS_IOS)
|
||||
#include "gpu/config/gpu_info_collector.h"
|
||||
--- a/third_party/blink/common/BUILD.gn
|
||||
+++ b/third_party/blink/common/BUILD.gn
|
||||
@@ -341,7 +341,6 @@
|
||||
"//services/metrics/public/cpp:ukm_builders",
|
||||
@@ -311,7 +311,6 @@ source_set("common") {
|
||||
"//services/metrics/public/mojom:mojom",
|
||||
"//services/network/public/cpp:cpp",
|
||||
"//services/network/public/mojom:mojom_permissions_policy",
|
||||
- "//third_party/blink/common/rust_crash",
|
||||
"//third_party/blink/public/common:buildflags",
|
||||
"//third_party/re2",
|
||||
"//ui/base:base",
|
||||
--- a/third_party/breakpad/BUILD.gn
|
||||
+++ b/third_party/breakpad/BUILD.gn
|
||||
@@ -494,11 +494,6 @@
|
||||
# For breakpad/src/common/stabs_reader.h.
|
||||
defines = [ "HAVE_MACH_O_NLIST_H" ]
|
||||
|
||||
- # Rust demangle support.
|
||||
- deps = [ "//third_party/rust/rustc_demangle_capi/v0_1:lib" ]
|
||||
- defines += [ "HAVE_RUSTC_DEMANGLE" ]
|
||||
- include_dirs += [ "//third_party/rust/chromium_crates_io/vendor/rustc-demangle-capi-0.1.0/include" ]
|
||||
- sources += [ "//third_party/rust/chromium_crates_io/vendor/rustc-demangle-capi-0.1.0/include/rustc_demangle.h" ]
|
||||
}
|
||||
test("breakpad_unittests") {
|
||||
sources = [ "breakpad/src/common/module_unittest.cc" ]
|
||||
@@ -742,11 +737,6 @@
|
||||
|
||||
include_dirs = [ "breakpad/src" ]
|
||||
|
||||
- # Rust demangle support.
|
||||
- deps = [ "//third_party/rust/rustc_demangle_capi/v0_1:lib" ]
|
||||
- defines += [ "HAVE_RUSTC_DEMANGLE" ]
|
||||
- include_dirs += [ "//third_party/rust/chromium_crates_io/vendor/rustc-demangle-capi-0.1.0/include" ]
|
||||
- sources += [ "//third_party/rust/chromium_crates_io/vendor/rustc-demangle-capi-0.1.0/include/rustc_demangle.h" ]
|
||||
|
||||
libs = [ "z" ]
|
||||
}
|
||||
--- a/base/json/json_reader.cc
|
||||
+++ b/base/json/json_reader.cc
|
||||
@@ -13,7 +13,7 @@
|
||||
#include "base/metrics/histogram_macros.h"
|
||||
#include "build/build_config.h"
|
||||
|
||||
-#if !BUILDFLAG(IS_NACL)
|
||||
+#if BUILDFLAG(IS_NACL)
|
||||
#include "base/strings/string_view_rust.h"
|
||||
#include "third_party/rust/serde_json_lenient/v0_2/wrapper/functions.h"
|
||||
#include "third_party/rust/serde_json_lenient/v0_2/wrapper/lib.rs.h"
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
// TODO(crbug.com/40811643): Move the C++ parser into components/nacl to just
|
||||
// run in-process there. Don't compile base::JSONReader on NaCL at all.
|
||||
-#if !BUILDFLAG(IS_NACL)
|
||||
+#if BUILDFLAG(IS_NACL)
|
||||
|
||||
namespace {
|
||||
using serde_json_lenient::ContextPointer;
|
||||
@@ -140,7 +140,7 @@
|
||||
std::optional<Value> JSONReader::Read(std::string_view json,
|
||||
int options,
|
||||
size_t max_depth) {
|
||||
-#if BUILDFLAG(IS_NACL)
|
||||
+#if !BUILDFLAG(IS_NACL)
|
||||
internal::JSONParser parser(options, max_depth);
|
||||
return parser.Parse(json);
|
||||
#else // BUILDFLAG(IS_NACL)
|
||||
@@ -173,7 +173,7 @@
|
||||
JSONReader::Result JSONReader::ReadAndReturnValueWithError(
|
||||
std::string_view json,
|
||||
int options) {
|
||||
-#if BUILDFLAG(IS_NACL)
|
||||
+#if !BUILDFLAG(IS_NACL)
|
||||
internal::JSONParser parser(options);
|
||||
auto value = parser.Parse(json);
|
||||
if (!value) {
|
||||
@@ -213,7 +213,7 @@
|
||||
if (!base::FeatureList::GetInstance()) {
|
||||
return false;
|
||||
}
|
||||
-#if BUILDFLAG(IS_NACL)
|
||||
+#if !BUILDFLAG(IS_NACL)
|
||||
return false;
|
||||
#else
|
||||
return base::FeatureList::IsEnabled(base::features::kUseRustJsonParser);
|
||||
--- a/base/logging.cc
|
||||
+++ b/base/logging.cc
|
||||
@@ -126,7 +126,7 @@
|
||||
#include "base/fuchsia/scoped_fx_logger.h"
|
||||
#endif
|
||||
|
||||
-#if !BUILDFLAG(IS_NACL)
|
||||
+#if BUILDFLAG(IS_NACL)
|
||||
#include "base/logging/rust_logger.rs.h"
|
||||
#endif
|
||||
|
||||
@@ -526,7 +526,7 @@
|
||||
}
|
||||
#endif
|
||||
|
||||
-#if !BUILDFLAG(IS_NACL)
|
||||
+#if BUILDFLAG(IS_NACL)
|
||||
// Connects Rust logging with the //base logging functionality.
|
||||
internal::init_rust_log_crate();
|
||||
#endif
|
||||
--- a/third_party/blink/common/chrome_debug_urls.cc
|
||||
+++ b/third_party/blink/common/chrome_debug_urls.cc
|
||||
@@ -11,7 +11,6 @@
|
||||
@@ -270,7 +282,7 @@
|
||||
#include "url/gurl.h"
|
||||
|
||||
#if BUILDFLAG(IS_WIN)
|
||||
@@ -117,7 +116,7 @@
|
||||
@@ -117,7 +116,7 @@ NOINLINE void MaybeTriggerAsanError(cons
|
||||
// Ensure that ASAN works even in Rust code.
|
||||
LOG(ERROR) << "Intentionally causing ASAN heap overflow in Rust"
|
||||
<< " because user navigated to " << url.spec();
|
||||
@@ -279,7 +291,7 @@
|
||||
}
|
||||
}
|
||||
#endif // ADDRESS_SANITIZER
|
||||
@@ -137,7 +136,7 @@
|
||||
@@ -137,7 +136,7 @@ void HandleChromeDebugURL(const GURL& ur
|
||||
} else if (url == kChromeUICrashRustURL) {
|
||||
// Cause a typical crash in Rust code, so we can test that call stack
|
||||
// collection and symbol mangling work across the language boundary.
|
||||
@@ -288,3 +300,32 @@
|
||||
} else if (url == kChromeUIDumpURL) {
|
||||
// This URL will only correctly create a crash dump file if content is
|
||||
// hosted in a process that has correctly called
|
||||
--- a/third_party/breakpad/BUILD.gn
|
||||
+++ b/third_party/breakpad/BUILD.gn
|
||||
@@ -494,12 +494,7 @@ if (is_mac) {
|
||||
# For breakpad/src/common/stabs_reader.h.
|
||||
defines = [ "HAVE_MACH_O_NLIST_H" ]
|
||||
|
||||
- # Rust demangle support.
|
||||
- deps = [ "//third_party/rust/rustc_demangle_capi/v0_1:lib" ]
|
||||
- defines += [ "HAVE_RUSTC_DEMANGLE" ]
|
||||
- include_dirs += [ "//third_party/rust/chromium_crates_io/vendor/rustc-demangle-capi-v0_1/include" ]
|
||||
- sources += [ "//third_party/rust/chromium_crates_io/vendor/rustc-demangle-capi-v0_1/include/rustc_demangle.h" ]
|
||||
- }
|
||||
+ }
|
||||
test("breakpad_unittests") {
|
||||
sources = [ "breakpad/src/common/module_unittest.cc" ]
|
||||
deps = [
|
||||
@@ -742,12 +737,6 @@ if (is_linux || is_chromeos || is_androi
|
||||
|
||||
include_dirs = [ "breakpad/src" ]
|
||||
|
||||
- # Rust demangle support.
|
||||
- deps = [ "//third_party/rust/rustc_demangle_capi/v0_1:lib" ]
|
||||
- defines += [ "HAVE_RUSTC_DEMANGLE" ]
|
||||
- include_dirs += [ "//third_party/rust/chromium_crates_io/vendor/rustc-demangle-capi-v0_1/include" ]
|
||||
- sources += [ "//third_party/rust/chromium_crates_io/vendor/rustc-demangle-capi-v0_1/include/rustc_demangle.h" ]
|
||||
-
|
||||
libs = [ "z" ]
|
||||
}
|
||||
} else if (current_toolchain == default_toolchain) {
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
--- src/third_party/electron_node/common.gypi.orig 2025-04-10 20:07:02.154742467 +0200
|
||||
+++ src/third_party/electron_node/common.gypi 2025-04-11 11:45:57.996110023 +0200
|
||||
@@ -514,15 +514,19 @@
|
||||
--- src/third_party/electron_node/common.gypi.orig 2025-07-19 11:44:59.181882205 +0200
|
||||
+++ src/third_party/electron_node/common.gypi 2025-07-19 16:21:44.297731896 +0200
|
||||
@@ -534,15 +534,19 @@
|
||||
'ldflags': [ '-pthread' ],
|
||||
}],
|
||||
[ 'OS in "linux freebsd openbsd solaris android aix os400 cloudabi"', {
|
||||
[ 'OS in "linux freebsd openbsd solaris android aix os400 cloudabi openharmony"', {
|
||||
- 'cflags': [ '-Wall', '-Wextra', '-Wno-unused-parameter', ],
|
||||
+ # Add some useful flags which need to be specified on all modules anyway.
|
||||
+ # `-fpic -fno-semantic-interposition` is the best relocation model for code that will live in a dlopened library
|
||||
@@ -23,7 +23,7 @@
|
||||
'target_conditions': [
|
||||
# The 1990s toolchain on SmartOS can't handle thin archives.
|
||||
['_type=="static_library" and OS=="solaris"', {
|
||||
@@ -700,29 +704,7 @@
|
||||
@@ -720,29 +724,7 @@
|
||||
'-Wl,--export-dynamic',
|
||||
],
|
||||
}],
|
||||
|
||||
@@ -14,6 +14,6 @@ since we compile everything with -fasynchronous-unwind-tables anyway.
|
||||
- # frames otherwise, even with --call-graph dwarf.
|
||||
- 'cflags': [ '-fno-omit-frame-pointer' ],
|
||||
- }],
|
||||
['OS=="linux"', {
|
||||
['OS=="linux" or OS=="openharmony"', {
|
||||
'conditions': [
|
||||
['enable_pgo_generate=="true"', {
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
--- src/content/public/browser/content_browser_client.cc.orig 2025-04-16 14:45:09.657704679 +0200
|
||||
+++ src/content/public/browser/content_browser_client.cc 2025-04-17 16:18:19.395831947 +0200
|
||||
@@ -53,6 +53,7 @@
|
||||
#include "content/public/browser/vpn_service_proxy.h"
|
||||
#include "content/public/browser/web_contents.h"
|
||||
#include "content/public/browser/web_contents_view_delegate.h"
|
||||
+#include "content/public/browser/web_ui_controller.h"
|
||||
#include "content/public/common/alternative_error_page_override_info.mojom.h"
|
||||
#include "content/public/common/content_features.h"
|
||||
#include "content/public/common/url_utils.h"
|
||||
@@ -1,6 +1,14 @@
|
||||
--- src/third_party/abseil-cpp/BUILD.gn.orig 2025-04-11 12:05:22.125274194 +0200
|
||||
+++ src/third_party/abseil-cpp/BUILD.gn 2025-04-12 14:23:17.763743696 +0200
|
||||
@@ -84,13 +84,9 @@ group("absl_component_deps") {
|
||||
--- src/third_party/abseil-cpp/BUILD.gn.orig 2025-07-19 11:32:36.617980004 +0200
|
||||
+++ src/third_party/abseil-cpp/BUILD.gn 2025-08-15 17:20:46.305540851 +0200
|
||||
@@ -62,7 +62,6 @@ group("absl_component_deps") {
|
||||
"//third_party/abseil-cpp/absl/base",
|
||||
"//third_party/abseil-cpp/absl/base:config",
|
||||
"//third_party/abseil-cpp/absl/base:core_headers",
|
||||
- "//third_party/abseil-cpp/absl/base:fast_type_id",
|
||||
"//third_party/abseil-cpp/absl/base:log_severity",
|
||||
"//third_party/abseil-cpp/absl/base:no_destructor",
|
||||
"//third_party/abseil-cpp/absl/base:nullability",
|
||||
@@ -85,13 +84,9 @@ group("absl_component_deps") {
|
||||
"//third_party/abseil-cpp/absl/hash",
|
||||
"//third_party/abseil-cpp/absl/log:absl_check",
|
||||
"//third_party/abseil-cpp/absl/log:absl_log",
|
||||
@@ -14,7 +22,23 @@
|
||||
"//third_party/abseil-cpp/absl/memory",
|
||||
"//third_party/abseil-cpp/absl/meta:type_traits",
|
||||
"//third_party/abseil-cpp/absl/numeric:bits",
|
||||
@@ -290,8 +286,6 @@ if (absl_build_tests) {
|
||||
@@ -102,7 +97,6 @@ group("absl_component_deps") {
|
||||
"//third_party/abseil-cpp/absl/status",
|
||||
"//third_party/abseil-cpp/absl/status:statusor",
|
||||
"//third_party/abseil-cpp/absl/strings",
|
||||
- "//third_party/abseil-cpp/absl/strings:charset",
|
||||
"//third_party/abseil-cpp/absl/strings:cord",
|
||||
"//third_party/abseil-cpp/absl/strings:has_ostream_operator",
|
||||
"//third_party/abseil-cpp/absl/strings:str_format",
|
||||
@@ -125,7 +119,6 @@ group("absl_component_deps") {
|
||||
"//third_party/abseil-cpp/absl/base:raw_logging_internal",
|
||||
|
||||
# absl internal utilities used by protobuf.
|
||||
- "//third_party/abseil-cpp/absl/container:layout",
|
||||
]
|
||||
|
||||
if (is_component_build) {
|
||||
@@ -295,8 +288,6 @@ if (absl_build_tests) {
|
||||
"absl/container:flat_hash_set_test",
|
||||
"absl/container:hash_function_defaults_test",
|
||||
"absl/container:inlined_vector_test",
|
||||
@@ -22,8 +46,8 @@
|
||||
- "absl/container:node_hash_set_test",
|
||||
"absl/container:node_slot_policy_test",
|
||||
"absl/container:raw_hash_set_allocator_test",
|
||||
"absl/container:raw_hash_set_test",
|
||||
@@ -300,11 +294,8 @@ if (absl_build_tests) {
|
||||
"absl/container:raw_hash_set_resize_impl_test",
|
||||
@@ -305,11 +296,8 @@ if (absl_build_tests) {
|
||||
"absl/crc:crc_cord_state_test",
|
||||
"absl/crc:crc_memcpy_test",
|
||||
"absl/crc:non_temporal_memcpy_test",
|
||||
@@ -35,7 +59,7 @@
|
||||
"absl/flags:flag_test",
|
||||
"absl/functional:any_invocable_test",
|
||||
"absl/functional:function_ref_test",
|
||||
@@ -328,7 +319,6 @@ if (absl_build_tests) {
|
||||
@@ -333,7 +321,6 @@ if (absl_build_tests) {
|
||||
"absl/log:vlog_is_on_test",
|
||||
"absl/log/internal:fnmatch_test",
|
||||
"absl/log/internal:stderr_log_sink_test",
|
||||
@@ -43,7 +67,7 @@
|
||||
"absl/memory:memory_test",
|
||||
"absl/meta:type_traits_test",
|
||||
"absl/numeric:int128_test",
|
||||
@@ -336,7 +326,6 @@ if (absl_build_tests) {
|
||||
@@ -341,7 +328,6 @@ if (absl_build_tests) {
|
||||
"absl/profiling:periodic_sampler_test",
|
||||
"absl/random:distributions_test",
|
||||
"absl/random:mock_distributions_test",
|
||||
@@ -51,7 +75,7 @@
|
||||
"absl/status:status_matchers_test",
|
||||
"absl/status:status_test",
|
||||
"absl/status:statusor_test",
|
||||
@@ -359,7 +348,6 @@ if (absl_build_tests) {
|
||||
@@ -367,7 +353,6 @@ if (absl_build_tests) {
|
||||
"absl/strings:has_absl_stringify_test",
|
||||
"absl/strings:has_ostream_operator_test",
|
||||
"absl/strings:match_test",
|
||||
@@ -59,7 +83,7 @@
|
||||
"absl/strings:str_format_arg_test",
|
||||
"absl/strings:str_format_bind_test",
|
||||
"absl/strings:str_format_checker_test",
|
||||
@@ -370,11 +358,7 @@ if (absl_build_tests) {
|
||||
@@ -378,11 +363,7 @@ if (absl_build_tests) {
|
||||
"absl/strings:str_format_test",
|
||||
"absl/strings:str_replace_test",
|
||||
"absl/strings:string_view_test",
|
||||
@@ -70,4 +94,4 @@
|
||||
- "absl/synchronization:per_thread_sem_test",
|
||||
"absl/synchronization:waiter_test",
|
||||
"absl/time:time_test",
|
||||
"absl/types:optional_test",
|
||||
"absl/types:span_test",
|
||||
|
||||
@@ -221,7 +221,6 @@ keeplibs=(
|
||||
third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/third_party/parsel-js
|
||||
third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/third_party/rxjs
|
||||
third_party/devtools-frontend/src/third_party/i18n #javascript
|
||||
third_party/distributed_point_functions #not in any distro
|
||||
third_party/dom_distiller_js #javascript
|
||||
#third_party/eigen3 #Used only by tflite which is not used in electron
|
||||
third_party/electron_node #Integral part of electron
|
||||
@@ -234,6 +233,11 @@ keeplibs=(
|
||||
third_party/ipcz #not in any distro
|
||||
third_party/khronos #Modified to add ANGLE definitions
|
||||
third_party/leveldatabase #use of private headers
|
||||
third_party/libaom #15.6 too old
|
||||
third_party/libaom/source/libaom/third_party/fastfeat
|
||||
third_party/libaom/source/libaom/third_party/SVT-AV1
|
||||
third_party/libaom/source/libaom/third_party/vector
|
||||
third_party/libaom/source/libaom/third_party/x86inc
|
||||
third_party/libgav1 #Usage of private headers (ObuFrameHeader from utils/types.h)
|
||||
third_party/libsrtp #Needs to be built against boringssl, not openssl
|
||||
third_party/libsync #not yet in any distro
|
||||
@@ -271,6 +275,7 @@ keeplibs=(
|
||||
third_party/pffft #not in any distro, also heavily patched
|
||||
third_party/polymer #javascript
|
||||
third_party/protobuf #Heavily forked. Apparently was officially unbundlable back in the GYP days, and may be again in the future.
|
||||
third_party/protobuf/third_party/utf8_range # Integral part of protobuf
|
||||
third_party/rapidhash #Fork
|
||||
third_party/re2 # fedora too old
|
||||
third_party/rnnoise #use of private headers
|
||||
@@ -297,7 +302,6 @@ keeplibs=(
|
||||
third_party/webrtc/modules/third_party/fft #derived code, not vendored dep
|
||||
third_party/webrtc/modules/third_party/g711 #Fork. Original is from spandsp. Might be debundled if upstream ever accepts WebRTC's patches.
|
||||
third_party/webrtc/modules/third_party/g722 #Fork. Original is from spandsp.
|
||||
third_party/webrtc/rtc_base/third_party/base64 #derived code, not vendored dep
|
||||
third_party/webrtc/rtc_base/third_party/sigslot #derived code, not vendored dep
|
||||
third_party/webrtc_overrides #Integral part of chrome
|
||||
third_party/widevine #Integral part of chrome. Needed.
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
--- src/third_party/blink/renderer/core/css/css_shape_value.h.orig 2025-04-16 14:36:32.392070147 +0200
|
||||
+++ src/third_party/blink/renderer/core/css/css_shape_value.h 2025-04-16 22:22:56.896578913 +0200
|
||||
@@ -96,7 +96,7 @@ using CSSShapeControlPoint = std::pair<C
|
||||
template <wtf_size_t NumControlPoints>
|
||||
class CSSShapeCurveCommand : public CSSShapeCommand {
|
||||
public:
|
||||
- CSSShapeCurveCommand<1>(Type type,
|
||||
+ CSSShapeCurveCommand(Type type,
|
||||
const CSSValuePair& end_point,
|
||||
const CSSShapeControlPoint control_point)
|
||||
: CSSShapeCommand(type, end_point), control_points_{control_point} {}
|
||||
@@ -167,21 +167,21 @@ author: Michael Gilbert <mgilbert@debian.org>
|
||||
"//media/mojo/mojom:speech_recognition",
|
||||
"//ui/base",
|
||||
]
|
||||
--- src/chrome/chrome_paks.gni.orig 2024-12-08 18:34:54.604673311 +0100
|
||||
+++ src/chrome/chrome_paks.gni 2024-12-18 12:15:07.247395616 +0100
|
||||
@@ -202,8 +202,6 @@ template("chrome_extra_paks") {
|
||||
--- src/chrome/chrome_paks.gni.orig 2025-07-19 11:32:31.785979797 +0200
|
||||
+++ src/chrome/chrome_paks.gni 2025-07-19 16:32:46.337623073 +0200
|
||||
@@ -230,8 +230,6 @@ template("chrome_extra_paks") {
|
||||
"$root_gen_dir/chrome/web_app_internals_resources.pak",
|
||||
"$root_gen_dir/chrome/webui_gallery_resources.pak",
|
||||
"$root_gen_dir/chrome/whats_new_resources.pak",
|
||||
"$root_gen_dir/content/browser/devtools/devtools_resources.pak",
|
||||
- "$root_gen_dir/content/browser/tracing/tracing_resources.pak",
|
||||
- "$root_gen_dir/content/traces_internals_resources.pak",
|
||||
]
|
||||
deps += [
|
||||
"//chrome/browser/resources:component_extension_resources",
|
||||
@@ -215,7 +213,6 @@ template("chrome_extra_paks") {
|
||||
"//chrome/browser/resources:dev_ui_paks",
|
||||
@@ -241,7 +239,6 @@ template("chrome_extra_paks") {
|
||||
"//chrome/browser/resources/lens/shared:resources",
|
||||
"//chrome/browser/resources/search_engine_choice:resources",
|
||||
"//content/browser/devtools:devtools_resources",
|
||||
"//chrome/browser/resources/tabs/tab_group_home:resources",
|
||||
- "//content/browser/tracing:resources",
|
||||
]
|
||||
if (is_chrome_branded) {
|
||||
@@ -313,8 +313,8 @@ author: Michael Gilbert <mgilbert@debian.org>
|
||||
"//third_party/perfetto/src/trace_processor:trace_processor_shell",
|
||||
]
|
||||
data = [
|
||||
--- src/electron/electron_paks.gni.orig 2025-04-11 12:02:41.243100651 +0200
|
||||
+++ src/electron/electron_paks.gni 2025-04-11 12:28:19.897748625 +0200
|
||||
--- src/electron/build/electron_paks.gni.orig 2025-04-11 12:02:41.243100651 +0200
|
||||
+++ src/electron/build/electron_paks.gni 2025-04-11 12:28:19.897748625 +0200
|
||||
@@ -57,7 +57,6 @@ template("electron_extra_paks") {
|
||||
"$root_gen_dir/chrome/common_resources.pak",
|
||||
"$root_gen_dir/components/components_resources.pak",
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
--- src/third_party/devtools-frontend/src/BUILD.gn.orig 2024-12-08 18:36:42.531343187 +0100
|
||||
+++ src/third_party/devtools-frontend/src/BUILD.gn 2024-12-18 12:29:53.036757634 +0100
|
||||
@@ -16,7 +16,6 @@ import("./third_party/blink/public/publi
|
||||
devtools_frontend_resources_deps = [
|
||||
":favicon",
|
||||
"front_end",
|
||||
- "test",
|
||||
]
|
||||
|
||||
group("devtools_all_files") {
|
||||
@@ -101,9 +101,9 @@ Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
||||
if ((is_linux || is_chromeos) && use_dbus) {
|
||||
deps += [ "//dbus" ]
|
||||
}
|
||||
-- src/content/browser/browser_interface_binders.cc.orig 2025-04-11 12:05:19.980351905 +0200
|
||||
+++ src/content/browser/browser_interface_binders.cc 2025-04-11 19:48:15.944587282 +0200
|
||||
@@ -61,7 +61,9 @@
|
||||
--- src/content/browser/browser_interface_binders.cc.orig 2025-07-19 11:32:34.193979827 +0200
|
||||
+++ src/content/browser/browser_interface_binders.cc 2025-07-20 14:51:05.789212478 +0200
|
||||
@@ -62,7 +62,9 @@
|
||||
#include "content/browser/renderer_host/render_process_host_impl.h"
|
||||
#include "content/browser/service_worker/service_worker_host.h"
|
||||
#include "content/browser/shared_storage/shared_storage_worklet_host.h"
|
||||
@@ -113,7 +113,7 @@ Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
||||
#include "content/browser/storage_access/storage_access_handle.h"
|
||||
#include "content/browser/tracing/trace_report/trace_report.mojom.h"
|
||||
#include "content/browser/tracing/trace_report/trace_report_internals_ui.h"
|
||||
@@ -100,7 +102,9 @@
|
||||
@@ -101,7 +103,9 @@
|
||||
#include "media/mojo/mojom/media_metrics_provider.mojom.h"
|
||||
#include "media/mojo/mojom/media_player.mojom.h"
|
||||
#include "media/mojo/mojom/remoting.mojom.h"
|
||||
@@ -123,7 +123,7 @@ Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
||||
#include "media/mojo/mojom/video_decode_perf_history.mojom.h"
|
||||
#include "media/mojo/mojom/video_encoder_metrics_provider.mojom.h"
|
||||
#include "media/mojo/mojom/webrtc_video_perf.mojom.h"
|
||||
@@ -206,7 +210,9 @@
|
||||
@@ -209,7 +213,9 @@
|
||||
#else // BUILDFLAG(IS_ANDROID)
|
||||
#include "content/browser/direct_sockets/direct_sockets_service_impl.h"
|
||||
#include "media/mojo/mojom/renderer_extensions.mojom.h"
|
||||
@@ -132,7 +132,7 @@ Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
||||
+#endif
|
||||
#include "third_party/blink/public/mojom/hid/hid.mojom.h"
|
||||
#include "third_party/blink/public/mojom/installedapp/installed_app_provider.mojom.h"
|
||||
#include "third_party/blink/public/mojom/serial/serial.mojom.h"
|
||||
#endif // BUILDFLAG(IS_ANDROID)
|
||||
@@ -865,11 +871,13 @@ void PopulateFrameBinders(RenderFrameHos
|
||||
map->Add<blink::mojom::SharedWorkerConnector>(
|
||||
base::BindRepeating(&BindSharedWorkerConnector, base::Unretained(host)));
|
||||
@@ -147,7 +147,7 @@ Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
||||
|
||||
map->Add<blink::mojom::SpeechSynthesis>(base::BindRepeating(
|
||||
&RenderFrameHostImpl::GetSpeechSynthesis, base::Unretained(host)));
|
||||
@@ -1197,6 +1205,7 @@ void PopulateBinderMapWithContext(
|
||||
@@ -1194,6 +1202,7 @@ void PopulateBinderMapWithContext(
|
||||
#if !BUILDFLAG(IS_ANDROID)
|
||||
map->Add<blink::mojom::DirectSocketsService>(
|
||||
base::BindRepeating(&DirectSocketsServiceImpl::CreateForFrame));
|
||||
@@ -155,7 +155,7 @@ Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
||||
map->Add<media::mojom::SpeechRecognitionContext>(base::BindRepeating(
|
||||
&EmptyBinderForFrame<media::mojom::SpeechRecognitionContext>));
|
||||
map->Add<media::mojom::SpeechRecognitionClientBrowserInterface>(
|
||||
@@ -1208,6 +1217,7 @@ void PopulateBinderMapWithContext(
|
||||
@@ -1205,6 +1214,7 @@ void PopulateBinderMapWithContext(
|
||||
map->Add<media::mojom::MediaPlayerObserverClient>(base::BindRepeating(
|
||||
&EmptyBinderForFrame<media::mojom::MediaPlayerObserverClient>));
|
||||
#endif
|
||||
@@ -163,13 +163,11 @@ Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
||||
#if BUILDFLAG(ENABLE_UNHANDLED_TAP)
|
||||
map->Add<blink::mojom::UnhandledTapNotifier>(base::BindRepeating(
|
||||
&EmptyBinderForFrame<blink::mojom::UnhandledTapNotifier>));
|
||||
diff --git a/chromium/content/browser/browser_main_loop.cc b/chromium/content/browser/browser_main_loop.cc
|
||||
index aaa752bec61..b3a1ed50d20 100644
|
||||
--- a/content/browser/browser_main_loop.cc
|
||||
+++ b/content/browser/browser_main_loop.cc
|
||||
@@ -87,7 +87,9 @@
|
||||
#include "content/browser/screenlock_monitor/screenlock_monitor.h"
|
||||
--- src/content/browser/browser_main_loop.cc.orig 2025-07-19 11:32:34.193979827 +0200
|
||||
+++ src/content/browser/browser_main_loop.cc 2025-07-20 14:51:05.789212478 +0200
|
||||
@@ -91,7 +91,9 @@
|
||||
#include "content/browser/screenlock_monitor/screenlock_monitor_device_source.h"
|
||||
#include "content/browser/service_host/utility_process_host.h"
|
||||
#include "content/browser/sms/sms_provider.h"
|
||||
+#if BUILDFLAG(ENABLE_WEB_SPEECH)
|
||||
#include "content/browser/speech/speech_recognition_manager_impl.h"
|
||||
@@ -177,7 +175,7 @@ index aaa752bec61..b3a1ed50d20 100644
|
||||
#include "content/browser/speech/tts_controller_impl.h"
|
||||
#include "content/browser/startup_data_impl.h"
|
||||
#include "content/browser/startup_task_runner.h"
|
||||
@@ -1114,12 +1116,14 @@ void BrowserMainLoop::ShutdownThreadsAndCleanUp() {
|
||||
@@ -1162,12 +1164,14 @@ void BrowserMainLoop::ShutdownThreadsAnd
|
||||
midi_service_->Shutdown();
|
||||
}
|
||||
|
||||
@@ -192,7 +190,7 @@ index aaa752bec61..b3a1ed50d20 100644
|
||||
|
||||
TtsControllerImpl::GetInstance()->Shutdown();
|
||||
|
||||
@@ -1364,13 +1368,14 @@ void BrowserMainLoop::PostCreateThreadsImpl() {
|
||||
@@ -1405,13 +1409,14 @@ void BrowserMainLoop::PostCreateThreadsI
|
||||
media_stream_manager_ =
|
||||
std::make_unique<MediaStreamManager>(audio_system_.get());
|
||||
}
|
||||
@@ -235,18 +233,16 @@ index 3a2e713ccc3..6af5afde20e 100644
|
||||
{wrf::EnableScriptedSpeechSynthesis, switches::kDisableSpeechSynthesisAPI,
|
||||
false},
|
||||
{wrf::EnableSharedWorker, switches::kDisableSharedWorkers, false},
|
||||
diff --git a/chromium/media/BUILD.gn b/chromium/media/BUILD.gn
|
||||
index 01e0910666e..6ce78127e3f 100644
|
||||
--- src/media/BUILD.gn 2025-04-11 12:05:21.244153535 +0200
|
||||
+++ src/media/BUILD.gn 2025-04-11 19:48:51.764578046 +0200
|
||||
--- src/media/BUILD.gn.orig 2025-07-19 11:32:35.633979930 +0200
|
||||
+++ src/media/BUILD.gn 2025-07-20 14:51:07.213212462 +0200
|
||||
@@ -61,6 +61,7 @@ buildflag_header("media_buildflags") {
|
||||
"ENABLE_MSE_MPEG2TS_STREAM_PARSER=$enable_mse_mpeg2ts_stream_parser",
|
||||
"PLATFORM_HAS_OPTIONAL_HEVC_DECODE_SUPPORT=$platform_has_optional_hevc_decode_support",
|
||||
"PLATFORM_HAS_OPTIONAL_HEVC_ENCODE_SUPPORT=$platform_has_optional_hevc_encode_support",
|
||||
+ "ENABLE_WEB_SPEECH=$enable_web_speech",
|
||||
"USE_ARC_PROTECTED_MEDIA=$use_arc_protected_media",
|
||||
"USE_CHROMEOS_MEDIA_ACCELERATION=$use_vaapi||$use_v4l2_codec",
|
||||
"USE_CHROMEOS_PROTECTED_AV1=$use_chromeos_protected_av1",
|
||||
"USE_CHROMEOS_PROTECTED_MEDIA=$use_chromeos_protected_media",
|
||||
diff --git a/chromium/media/media_options.gni b/chromium/media/media_options.gni
|
||||
index 5667cac61f3..48ea95a99a6 100644
|
||||
--- a/media/media_options.gni
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
--- src/third_party/distributed_point_functions/code/dpf/aes_128_fixed_key_hash.cc.old 2024-04-02 11:53:27.644284500 +0200
|
||||
+++ src/third_party/distributed_point_functions/code/dpf/aes_128_fixed_key_hash.cc 2024-04-02 22:24:29.350771600 +0200
|
||||
@@ -26,6 +26,7 @@
|
||||
#include "absl/numeric/int128.h"
|
||||
#include "absl/status/status.h"
|
||||
#include "absl/status/statusor.h"
|
||||
+#include "absl/strings/str_cat.h"
|
||||
#include "absl/types/span.h"
|
||||
#include "openssl/err.h"
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
--- src/third_party/distributed_point_functions/code/dpf/internal/evaluate_prg_hwy.cc.old 2024-04-02 11:53:27.644284500 +0200
|
||||
+++ src/third_party/distributed_point_functions/code/dpf/internal/evaluate_prg_hwy.cc 2024-04-02 22:35:43.377586600 +0200
|
||||
@@ -50,16 +50,18 @@ namespace hn = hwy::HWY_NAMESPACE;
|
||||
#if HWY_TARGET == HWY_SCALAR
|
||||
|
||||
absl::Status EvaluateSeedsHwy(
|
||||
- int64_t num_seeds, int num_levels, const absl::uint128* seeds_in,
|
||||
- const bool* control_bits_in, const absl::uint128* paths,
|
||||
+ int64_t num_seeds, int num_levels, int num_correction_words,
|
||||
+ const absl::uint128* seeds_in, const bool* control_bits_in,
|
||||
+ const absl::uint128* paths, int paths_rightshift,
|
||||
const absl::uint128* correction_seeds, const bool* correction_controls_left,
|
||||
const bool* correction_controls_right, const Aes128FixedKeyHash& prg_left,
|
||||
const Aes128FixedKeyHash& prg_right, absl::uint128* seeds_out,
|
||||
bool* control_bits_out) {
|
||||
- return EvaluateSeedsNoHwy(num_seeds, num_levels, seeds_in, control_bits_in,
|
||||
- paths, correction_seeds, correction_controls_left,
|
||||
- correction_controls_right, prg_left, prg_right,
|
||||
- seeds_out, control_bits_out);
|
||||
+ return EvaluateSeedsNoHwy(
|
||||
+ num_seeds, num_levels, num_correction_words, seeds_in, control_bits_in,
|
||||
+ paths, paths_rightshift, correction_seeds, correction_controls_left,
|
||||
+ correction_controls_right, prg_left, prg_right, seeds_out,
|
||||
+ control_bits_out);
|
||||
}
|
||||
|
||||
#else
|
||||
@@ -3,10 +3,10 @@ Do not try to build a private copy of a DLL which is already available on every
|
||||
--- a/chrome/BUILD.gn
|
||||
+++ b/chrome/BUILD.gn
|
||||
@@ -1789,8 +1790,9 @@
|
||||
|
||||
deps = [ "//third_party/angle:libGLESv2" ]
|
||||
deps = [ "//third_party/angle:libGLESv2" ]
|
||||
}
|
||||
}
|
||||
- if (!is_chromeos) {
|
||||
- if (!is_chromeos && angle_shared_libvulkan) {
|
||||
+ source_set("angle_libvulkan_symbols") {}
|
||||
+ if (false) {
|
||||
extract_symbols("angle_libvulkan_symbols") {
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
Index: electron-16.0.6/third_party/blink/renderer/platform/media/multi_buffer_data_source.cc
|
||||
===================================================================
|
||||
--- electron-16.0.6.orig/third_party/blink/renderer/platform/media/multi_buffer_data_source.cc 2022-01-10 16:24:28.724461941 +0100
|
||||
+++ electron-16.0.6/third_party/blink/renderer/platform/media/multi_buffer_data_source.cc 2022-01-13 16:04:50.310112542 +0100
|
||||
@@ -63,10 +63,10 @@ const int kUpdateBufferSizeFrequency = 3
|
||||
constexpr base::TimeDelta kSeekDelay = base::Milliseconds(20);
|
||||
|
||||
std::vector<std::string>* GetStreamingSchemes() {
|
||||
- static base::NoDestructor<std::vector<std::string>> streaming_schemes({
|
||||
+ static base::NoDestructor<std::vector<std::string>> streaming_schemes{{
|
||||
url::kHttpsScheme,
|
||||
url::kHttpScheme
|
||||
- });
|
||||
+ }};
|
||||
return streaming_schemes.get();
|
||||
}
|
||||
|
||||
@@ -10,6 +10,6 @@ Index: electron-17.1.0/third_party/electron_node/common.gypi
|
||||
+ 'cflags': [ '-I/usr/include/electron' ],
|
||||
+ 'libraries': [ '-lz' ],
|
||||
+ }],
|
||||
[ 'OS in "linux freebsd openbsd solaris aix os400"', {
|
||||
[ 'OS in "linux freebsd openbsd solaris aix os400 openharmony"', {
|
||||
'cflags': [ '-pthread' ],
|
||||
'ldflags': [ '-pthread' ],
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ad4c8f4276ffce80db7317206ea75a846d66b6e3aab7c00220a4cd771b0b448f
|
||||
size 749643533
|
||||
3
electron-37.3.1.tar.zst
Normal file
3
electron-37.3.1.tar.zst
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:edd5a8f5c9d5b2830aed3b564f239eed1a28c244ab0f5f870014161291a60a53
|
||||
size 1071121847
|
||||
11
event_record-optional-initializer.patch
Normal file
11
event_record-optional-initializer.patch
Normal file
@@ -0,0 +1,11 @@
|
||||
--- src/services/network/public/cpp/ad_auction/event_record.cc.orig 2025-08-15 17:32:28.601405234 +0200
|
||||
+++ src/services/network/public/cpp/ad_auction/event_record.cc 2025-08-16 10:18:19.106421517 +0200
|
||||
@@ -49,7 +49,7 @@ std::optional<std::vector<url::Origin>>
|
||||
const auto it = dict.find("eligible-origins");
|
||||
if (it == dict.end()) {
|
||||
// "eligible-origins" is optional, so just return an empty list.
|
||||
- return {{}};
|
||||
+ return std::optional<std::vector<url::Origin>>(std::in_place);
|
||||
}
|
||||
const net::structured_headers::ParameterizedMember& parameterized_member =
|
||||
it->second;
|
||||
@@ -1,15 +0,0 @@
|
||||
In file included from ../../third_party/blink/renderer/platform/bindings/bigint.cc:7:
|
||||
../../third_party/blink/renderer/platform/bindings/exception_state.h:136:37: error: ‘constexpr’ static data member ‘kEmptyContext’ must have an initializer
|
||||
136 | static constexpr ExceptionContext kEmptyContext;
|
||||
|
||||
--- src/third_party/blink/renderer/platform/bindings/exception_state.h.orig 2025-04-16 14:36:33.017070028 +0200
|
||||
+++ src/third_party/blink/renderer/platform/bindings/exception_state.h 2025-04-16 20:05:07.925331205 +0200
|
||||
@@ -133,7 +133,7 @@ class PLATFORM_EXPORT ExceptionState {
|
||||
// Delegated constructor for DummyExceptionStateForTesting
|
||||
explicit ExceptionState(DummyExceptionStateForTesting& dummy_derived);
|
||||
|
||||
- static constexpr ExceptionContext kEmptyContext;
|
||||
+ static constexpr ExceptionContext kEmptyContext{};
|
||||
|
||||
private:
|
||||
void SetExceptionInfo(ExceptionCode, const String&);
|
||||
@@ -1,134 +0,0 @@
|
||||
From cf0e064ce3b7c6b809861a6d299165b74cce109e Mon Sep 17 00:00:00 2001
|
||||
From: James Cook <jamescook@chromium.org>
|
||||
Date: Thu, 22 May 2025 10:23:47 -0700
|
||||
Subject: [PATCH] extensions: Clean up ENABLE_EXTENSIONS in //extensions
|
||||
|
||||
TestRuntimeApiDelegate can be safely added to the build now.
|
||||
Also, replace ENABLE_EXTENSIONS || ENABLE_DESKTOP_ANDROID_EXTENSIONS
|
||||
with ENABLE_EXTENSIONS_CORE, to be consistent with the rest of the
|
||||
codebase.
|
||||
|
||||
Bug: 356905053
|
||||
Change-Id: I616391c2843c6c5e20188803f2a51c6f83165927
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6576511
|
||||
Reviewed-by: Devlin Cronin <rdevlin.cronin@chromium.org>
|
||||
Commit-Queue: James Cook <jamescook@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#1464202}
|
||||
---
|
||||
extensions/BUILD.gn | 12 ++----------
|
||||
extensions/browser/extension_registry.h | 3 +--
|
||||
extensions/browser/extension_system.h | 3 +--
|
||||
extensions/browser/test_extensions_browser_client.cc | 12 +-----------
|
||||
extensions/common/extension.h | 3 +--
|
||||
5 files changed, 6 insertions(+), 27 deletions(-)
|
||||
|
||||
diff --git a/extensions/BUILD.gn b/extensions/BUILD.gn
|
||||
index 0ea291f16ba70b..586fd7461e4cd9 100644
|
||||
--- a/extensions/BUILD.gn
|
||||
+++ b/extensions/BUILD.gn
|
||||
@@ -111,6 +111,8 @@ static_library("test_support") {
|
||||
"browser/test_image_loader.h",
|
||||
"browser/test_management_policy.cc",
|
||||
"browser/test_management_policy.h",
|
||||
+ "browser/test_runtime_api_delegate.cc",
|
||||
+ "browser/test_runtime_api_delegate.h",
|
||||
"common/extension_builder.cc",
|
||||
"common/extension_builder.h",
|
||||
"common/manifest_test.cc",
|
||||
@@ -198,16 +200,6 @@ static_library("test_support") {
|
||||
deps += [ "//components/guest_view/browser:test_support" ]
|
||||
}
|
||||
|
||||
- # TODO(https://crbug.com/356905053): The following files don't compile cleanly
|
||||
- # with desktop-android. Either make them compile, or determine they should
|
||||
- # not be included and place them under a more appropriate if-block.
|
||||
- if (enable_extensions) {
|
||||
- sources += [
|
||||
- "browser/test_runtime_api_delegate.cc",
|
||||
- "browser/test_runtime_api_delegate.h",
|
||||
- ]
|
||||
- }
|
||||
-
|
||||
# Generally, //extensions should not depend on //chromeos. However, a number
|
||||
# of the APIs and the extensions shell already do. We should try to avoid
|
||||
# expanding these dependencies.
|
||||
diff --git a/extensions/browser/extension_registry.h b/extensions/browser/extension_registry.h
|
||||
index 4ed65fdce8af21..1ee1b70458a068 100644
|
||||
--- a/extensions/browser/extension_registry.h
|
||||
+++ b/extensions/browser/extension_registry.h
|
||||
@@ -19,8 +19,7 @@
|
||||
#include "extensions/common/extension_id.h"
|
||||
#include "extensions/common/extension_set.h"
|
||||
|
||||
-static_assert(BUILDFLAG(ENABLE_EXTENSIONS) ||
|
||||
- BUILDFLAG(ENABLE_DESKTOP_ANDROID_EXTENSIONS));
|
||||
+static_assert(BUILDFLAG(ENABLE_EXTENSIONS_CORE));
|
||||
|
||||
namespace content {
|
||||
class BrowserContext;
|
||||
diff --git a/extensions/browser/extension_system.h b/extensions/browser/extension_system.h
|
||||
index 369dad723495a4..eccf3b2d331724 100644
|
||||
--- a/extensions/browser/extension_system.h
|
||||
+++ b/extensions/browser/extension_system.h
|
||||
@@ -17,8 +17,7 @@
|
||||
#include "extensions/common/extension.h"
|
||||
#include "extensions/common/extension_id.h"
|
||||
|
||||
-static_assert(BUILDFLAG(ENABLE_EXTENSIONS) ||
|
||||
- BUILDFLAG(ENABLE_DESKTOP_ANDROID_EXTENSIONS));
|
||||
+static_assert(BUILDFLAG(ENABLE_EXTENSIONS_CORE));
|
||||
|
||||
namespace base {
|
||||
class OneShotEvent;
|
||||
diff --git a/extensions/browser/test_extensions_browser_client.cc b/extensions/browser/test_extensions_browser_client.cc
|
||||
index 88ce18dd343016..f914fae7205f88 100644
|
||||
--- a/extensions/browser/test_extensions_browser_client.cc
|
||||
+++ b/extensions/browser/test_extensions_browser_client.cc
|
||||
@@ -10,6 +10,7 @@
|
||||
#include "build/chromeos_buildflags.h"
|
||||
#include "content/public/browser/browser_context.h"
|
||||
#include "extensions/browser/extension_host_delegate.h"
|
||||
+#include "extensions/browser/test_runtime_api_delegate.h"
|
||||
#include "extensions/browser/updater/null_extension_cache.h"
|
||||
#include "extensions/buildflags/buildflags.h"
|
||||
#include "extensions/common/extension_id.h"
|
||||
@@ -17,13 +18,6 @@
|
||||
#include "services/network/public/mojom/url_loader.mojom.h"
|
||||
#include "ui/base/l10n/l10n_util.h"
|
||||
|
||||
-// TODO(https://crbug.com/356905053): The following files don't compile cleanly
|
||||
-// with desktop-android. Either make them compile, or determine they should
|
||||
-// not be included and place them under a more appropriate if-block.
|
||||
-#if BUILDFLAG(ENABLE_EXTENSIONS)
|
||||
-#include "extensions/browser/test_runtime_api_delegate.h"
|
||||
-#endif
|
||||
-
|
||||
#if BUILDFLAG(IS_CHROMEOS)
|
||||
#include "chromeos/ash/components/login/login_state/login_state.h"
|
||||
#endif
|
||||
@@ -260,11 +254,7 @@ void TestExtensionsBrowserClient::RegisterBrowserInterfaceBindersForFrame(
|
||||
std::unique_ptr<RuntimeAPIDelegate>
|
||||
TestExtensionsBrowserClient::CreateRuntimeAPIDelegate(
|
||||
content::BrowserContext* context) const {
|
||||
-#if BUILDFLAG(ENABLE_EXTENSIONS)
|
||||
return std::unique_ptr<RuntimeAPIDelegate>(new TestRuntimeAPIDelegate());
|
||||
-#else
|
||||
- return nullptr;
|
||||
-#endif
|
||||
}
|
||||
|
||||
const ComponentExtensionResourceManager*
|
||||
diff --git a/extensions/common/extension.h b/extensions/common/extension.h
|
||||
index ec776e6207057b..33a196f11a519a 100644
|
||||
--- a/extensions/common/extension.h
|
||||
+++ b/extensions/common/extension.h
|
||||
@@ -29,8 +29,7 @@
|
||||
#include "url/gurl.h"
|
||||
#include "url/origin.h"
|
||||
|
||||
-static_assert(BUILDFLAG(ENABLE_EXTENSIONS) ||
|
||||
- BUILDFLAG(ENABLE_DESKTOP_ANDROID_EXTENSIONS));
|
||||
+static_assert(BUILDFLAG(ENABLE_EXTENSIONS_CORE));
|
||||
|
||||
namespace extensions {
|
||||
class HashedExtensionId;
|
||||
215
ffmpeg-4-AV_PROFILE.patch
Normal file
215
ffmpeg-4-AV_PROFILE.patch
Normal file
@@ -0,0 +1,215 @@
|
||||
From 129f48501a7c3fa4236234f2fa0aee490a845b59 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Guilbert <tguilbert@chromium.org>
|
||||
Date: Fri, 2 May 2025 08:58:47 -0700
|
||||
Subject: [PATCH] Roll src/third_party/ffmpeg/ 01f23648c..dcdd0fa51 (552
|
||||
commits)
|
||||
|
||||
This CL rolls ffmpeg for M138.
|
||||
|
||||
This roll includes the removal of many deprecated APIs: some FF_*
|
||||
macros were consolidated as equivalent AV_* macros under
|
||||
libavcodec/def.h
|
||||
|
||||
https://chromium.googlesource.com/chromium/third_party/ffmpeg.git/+log/01f23648c6b8..dcdd0fa51b65
|
||||
|
||||
$ git log 01f23648c..dcdd0fa51 --date=short --no-merges --format='%ad %ae %s'
|
||||
2025-05-01 tguilbert Remove deprecated av_stream_get_side_data()
|
||||
2025-05-01 tguilbert README.chromium file
|
||||
2025-05-01 tguilbert GN Configuration
|
||||
2025-04-29 jamrial avcodec/cbs_apv: don't return an error when reading empty buffers
|
||||
2025-04-27 sw fate: Add test for APV 422-10 profile
|
||||
(...)
|
||||
2025-03-18 andreas.rheinhardt avcodec/Makefile: Only compile executor when VVC decoder is enabled
|
||||
2025-03-18 andreas.rheinhardt avcodec/vvc/Makefile: Move VVC decoder->h2645data dep to lavc/Makefile
|
||||
2025-03-17 ffmpeg ffbuild: use response files only if ar accepts them
|
||||
2025-03-18 timo avcodec/tableprint_vlc: fix build with --enable-hardcoded-tables
|
||||
2025-03-18 timo avcodec/Makefile: fix build of exr decoder in odd configs
|
||||
|
||||
Created with:
|
||||
roll-dep src/third_party/ffmpeg
|
||||
|
||||
Bug: 415118707
|
||||
Change-Id: Iae943ce996031d5a6f7dbbd2915ad9cfabadf4d6
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6506529
|
||||
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
|
||||
Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
|
||||
Auto-Submit: Thomas Guilbert <tguilbert@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#1455010}
|
||||
---
|
||||
DEPS | 2 +-
|
||||
media/ffmpeg/ffmpeg_common.cc | 44 +++++++++----------
|
||||
.../filters/ffmpeg_aac_bitstream_converter.cc | 12 ++---
|
||||
...ffmpeg_aac_bitstream_converter_unittest.cc | 6 +--
|
||||
third_party/ffmpeg | 2 +-
|
||||
5 files changed, 33 insertions(+), 33 deletions(-)
|
||||
|
||||
diff --git a/DEPS b/DEPS
|
||||
index b80ab0a6d81811..9b247c02d2a202 100644
|
||||
--- a/DEPS
|
||||
+++ b/DEPS
|
||||
@@ -515,7 +515,7 @@ vars = {
|
||||
# Three lines of non-changing comments so that
|
||||
# the commit queue can handle CLs rolling ffmpeg
|
||||
# and whatever else without interference from each other.
|
||||
- 'ffmpeg_revision': '01f23648c6b84de6c0f717fa4e1816f53b9ee72e',
|
||||
+ 'ffmpeg_revision': 'dcdd0fa51b65a0b1688ff6b8f0cc81908f09ded2',
|
||||
# Three lines of non-changing comments so that
|
||||
# the commit queue can handle CLs rolling webpagereplay
|
||||
# and whatever else without interference from each other.
|
||||
diff --git a/media/ffmpeg/ffmpeg_common.cc b/media/ffmpeg/ffmpeg_common.cc
|
||||
index cfd0552ee31088..610be2d37b351f 100644
|
||||
--- a/media/ffmpeg/ffmpeg_common.cc
|
||||
+++ b/media/ffmpeg/ffmpeg_common.cc
|
||||
@@ -263,22 +263,22 @@ AVCodecID VideoCodecToCodecID(VideoCodec video_codec) {
|
||||
static VideoCodecProfile ProfileIDToVideoCodecProfile(int profile) {
|
||||
// Clear out the CONSTRAINED & INTRA flags which are strict subsets of the
|
||||
// corresponding profiles with which they're used.
|
||||
- profile &= ~FF_PROFILE_H264_CONSTRAINED;
|
||||
- profile &= ~FF_PROFILE_H264_INTRA;
|
||||
+ profile &= ~AV_PROFILE_H264_CONSTRAINED;
|
||||
+ profile &= ~AV_PROFILE_H264_INTRA;
|
||||
switch (profile) {
|
||||
- case FF_PROFILE_H264_BASELINE:
|
||||
+ case AV_PROFILE_H264_BASELINE:
|
||||
return H264PROFILE_BASELINE;
|
||||
- case FF_PROFILE_H264_MAIN:
|
||||
+ case AV_PROFILE_H264_MAIN:
|
||||
return H264PROFILE_MAIN;
|
||||
- case FF_PROFILE_H264_EXTENDED:
|
||||
+ case AV_PROFILE_H264_EXTENDED:
|
||||
return H264PROFILE_EXTENDED;
|
||||
- case FF_PROFILE_H264_HIGH:
|
||||
+ case AV_PROFILE_H264_HIGH:
|
||||
return H264PROFILE_HIGH;
|
||||
- case FF_PROFILE_H264_HIGH_10:
|
||||
+ case AV_PROFILE_H264_HIGH_10:
|
||||
return H264PROFILE_HIGH10PROFILE;
|
||||
- case FF_PROFILE_H264_HIGH_422:
|
||||
+ case AV_PROFILE_H264_HIGH_422:
|
||||
return H264PROFILE_HIGH422PROFILE;
|
||||
- case FF_PROFILE_H264_HIGH_444_PREDICTIVE:
|
||||
+ case AV_PROFILE_H264_HIGH_444_PREDICTIVE:
|
||||
return H264PROFILE_HIGH444PREDICTIVEPROFILE;
|
||||
default:
|
||||
DVLOG(1) << "Unknown profile id: " << profile;
|
||||
@@ -289,23 +289,23 @@ static VideoCodecProfile ProfileIDToVideoCodecProfile(int profile) {
|
||||
static int VideoCodecProfileToProfileID(VideoCodecProfile profile) {
|
||||
switch (profile) {
|
||||
case H264PROFILE_BASELINE:
|
||||
- return FF_PROFILE_H264_BASELINE;
|
||||
+ return AV_PROFILE_H264_BASELINE;
|
||||
case H264PROFILE_MAIN:
|
||||
- return FF_PROFILE_H264_MAIN;
|
||||
+ return AV_PROFILE_H264_MAIN;
|
||||
case H264PROFILE_EXTENDED:
|
||||
- return FF_PROFILE_H264_EXTENDED;
|
||||
+ return AV_PROFILE_H264_EXTENDED;
|
||||
case H264PROFILE_HIGH:
|
||||
- return FF_PROFILE_H264_HIGH;
|
||||
+ return AV_PROFILE_H264_HIGH;
|
||||
case H264PROFILE_HIGH10PROFILE:
|
||||
- return FF_PROFILE_H264_HIGH_10;
|
||||
+ return AV_PROFILE_H264_HIGH_10;
|
||||
case H264PROFILE_HIGH422PROFILE:
|
||||
- return FF_PROFILE_H264_HIGH_422;
|
||||
+ return AV_PROFILE_H264_HIGH_422;
|
||||
case H264PROFILE_HIGH444PREDICTIVEPROFILE:
|
||||
- return FF_PROFILE_H264_HIGH_444_PREDICTIVE;
|
||||
+ return AV_PROFILE_H264_HIGH_444_PREDICTIVE;
|
||||
default:
|
||||
DVLOG(1) << "Unknown VideoCodecProfile: " << profile;
|
||||
}
|
||||
- return FF_PROFILE_UNKNOWN;
|
||||
+ return AV_PROFILE_UNKNOWN;
|
||||
}
|
||||
|
||||
SampleFormat AVSampleFormatToSampleFormat(AVSampleFormat sample_format,
|
||||
@@ -443,7 +443,7 @@ bool AVCodecContextToAudioDecoderConfig(const AVCodecContext* codec_context,
|
||||
// TODO(dalecurtis): Just use the profile from the codec context if ffmpeg
|
||||
// ever starts supporting xHE-AAC.
|
||||
// FFmpeg provides the (defined_profile - 1) for AVCodecContext::profile
|
||||
- if (codec_context->profile == FF_PROFILE_UNKNOWN ||
|
||||
+ if (codec_context->profile == AV_PROFILE_UNKNOWN ||
|
||||
codec_context->profile == mp4::AAC::kXHeAAcType - 1) {
|
||||
// Errors aren't fatal here, so just drop any MediaLog messages.
|
||||
NullMediaLog media_log;
|
||||
@@ -661,16 +661,16 @@ bool AVStreamToVideoDecoderConfig(const AVStream* stream,
|
||||
break;
|
||||
case VideoCodec::kVP9:
|
||||
switch (codec_context->profile) {
|
||||
- case FF_PROFILE_VP9_0:
|
||||
+ case AV_PROFILE_VP9_0:
|
||||
profile = VP9PROFILE_PROFILE0;
|
||||
break;
|
||||
- case FF_PROFILE_VP9_1:
|
||||
+ case AV_PROFILE_VP9_1:
|
||||
profile = VP9PROFILE_PROFILE1;
|
||||
break;
|
||||
- case FF_PROFILE_VP9_2:
|
||||
+ case AV_PROFILE_VP9_2:
|
||||
profile = VP9PROFILE_PROFILE2;
|
||||
break;
|
||||
- case FF_PROFILE_VP9_3:
|
||||
+ case AV_PROFILE_VP9_3:
|
||||
profile = VP9PROFILE_PROFILE3;
|
||||
break;
|
||||
default:
|
||||
diff --git a/media/filters/ffmpeg_aac_bitstream_converter.cc b/media/filters/ffmpeg_aac_bitstream_converter.cc
|
||||
index 7fd37e90b7e475..c00ac262dabb19 100644
|
||||
--- a/media/filters/ffmpeg_aac_bitstream_converter.cc
|
||||
+++ b/media/filters/ffmpeg_aac_bitstream_converter.cc
|
||||
@@ -68,17 +68,17 @@ bool GenerateAdtsHeader(int codec,
|
||||
hdr[1] |= 1;
|
||||
|
||||
switch (audio_profile) {
|
||||
- case FF_PROFILE_AAC_MAIN:
|
||||
+ case AV_PROFILE_AAC_MAIN:
|
||||
break;
|
||||
- case FF_PROFILE_AAC_HE:
|
||||
- case FF_PROFILE_AAC_HE_V2:
|
||||
- case FF_PROFILE_AAC_LOW:
|
||||
+ case AV_PROFILE_AAC_HE:
|
||||
+ case AV_PROFILE_AAC_HE_V2:
|
||||
+ case AV_PROFILE_AAC_LOW:
|
||||
hdr[2] |= (1 << 6);
|
||||
break;
|
||||
- case FF_PROFILE_AAC_SSR:
|
||||
+ case AV_PROFILE_AAC_SSR:
|
||||
hdr[2] |= (2 << 6);
|
||||
break;
|
||||
- case FF_PROFILE_AAC_LTP:
|
||||
+ case AV_PROFILE_AAC_LTP:
|
||||
hdr[2] |= (3 << 6);
|
||||
break;
|
||||
default:
|
||||
diff --git a/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc b/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
|
||||
index 0e56a6ea5b5cb4..2a6ccb8c910f6c 100644
|
||||
--- a/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
|
||||
+++ b/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
|
||||
@@ -41,7 +41,7 @@ class FFmpegAACBitstreamConverterTest : public testing::Test {
|
||||
// Set up reasonable aac parameters
|
||||
memset(&test_parameters_, 0, sizeof(AVCodecParameters));
|
||||
test_parameters_.codec_id = AV_CODEC_ID_AAC;
|
||||
- test_parameters_.profile = FF_PROFILE_AAC_MAIN;
|
||||
+ test_parameters_.profile = AV_PROFILE_AAC_MAIN;
|
||||
test_parameters_.ch_layout.nb_channels = 2;
|
||||
test_parameters_.extradata = extradata_header_;
|
||||
test_parameters_.extradata_size = sizeof(extradata_header_);
|
||||
@@ -131,7 +131,7 @@ TEST_F(FFmpegAACBitstreamConverterTest, Conversion_AudioProfileType) {
|
||||
|
||||
EXPECT_EQ(profile, kAacMainProfile);
|
||||
|
||||
- test_parameters_.profile = FF_PROFILE_AAC_HE;
|
||||
+ test_parameters_.profile = AV_PROFILE_AAC_HE;
|
||||
FFmpegAACBitstreamConverter converter_he(&test_parameters_);
|
||||
|
||||
test_packet = ScopedAVPacket::Allocate();
|
||||
@@ -143,7 +143,7 @@ TEST_F(FFmpegAACBitstreamConverterTest, Conversion_AudioProfileType) {
|
||||
|
||||
EXPECT_EQ(profile, kAacLowComplexityProfile);
|
||||
|
||||
- test_parameters_.profile = FF_PROFILE_AAC_ELD;
|
||||
+ test_parameters_.profile = AV_PROFILE_AAC_ELD;
|
||||
FFmpegAACBitstreamConverter converter_eld(&test_parameters_);
|
||||
|
||||
test_packet = ScopedAVPacket::Allocate();
|
||||
@@ -236,19 +236,6 @@ index 6f231c85729..ca5e5fb927d 100644
|
||||
frame_length_ = header_plus_packet_size;
|
||||
}
|
||||
|
||||
diff --git a/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc b/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
|
||||
index 1fd4c5ccd7d..f59bcd8fdaf 100644
|
||||
--- a/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
|
||||
+++ b/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
|
||||
@@ -34,7 +34,7 @@ class FFmpegAACBitstreamConverterTest : public testing::Test {
|
||||
memset(&test_parameters_, 0, sizeof(AVCodecParameters));
|
||||
test_parameters_.codec_id = AV_CODEC_ID_AAC;
|
||||
test_parameters_.profile = FF_PROFILE_AAC_MAIN;
|
||||
- test_parameters_.channels = 2;
|
||||
+ test_parameters_.ch_layout.nb_channels = 2;
|
||||
test_parameters_.extradata = extradata_header_;
|
||||
test_parameters_.extradata_size = sizeof(extradata_header_);
|
||||
}
|
||||
diff --git a/media/filters/ffmpeg_audio_decoder.cc b/media/filters/ffmpeg_audio_decoder.cc
|
||||
index 6a56c675f7d..4615fdeb3fb 100644
|
||||
--- a/media/filters/ffmpeg_audio_decoder.cc
|
||||
@@ -271,20 +258,6 @@ index 6a56c675f7d..4615fdeb3fb 100644
|
||||
if (channel_layout == CHANNEL_LAYOUT_UNSUPPORTED &&
|
||||
config_.channel_layout() == CHANNEL_LAYOUT_DISCRETE) {
|
||||
channel_layout = CHANNEL_LAYOUT_DISCRETE;
|
||||
@@ -348,11 +348,11 @@ bool FFmpegAudioDecoder::ConfigureDecoder(const AudioDecoderConfig& config) {
|
||||
// Success!
|
||||
av_sample_format_ = codec_context_->sample_fmt;
|
||||
|
||||
- if (codec_context_->channels != config.channels()) {
|
||||
+ if (codec_context_->ch_layout.nb_channels != config.channels()) {
|
||||
MEDIA_LOG(ERROR, media_log_)
|
||||
<< "Audio configuration specified " << config.channels()
|
||||
<< " channels, but FFmpeg thinks the file contains "
|
||||
- << codec_context_->channels << " channels";
|
||||
+ << codec_context_->ch_layout.nb_channels << " channels";
|
||||
ReleaseFFmpegResources();
|
||||
state_ = DecoderState::kUninitialized;
|
||||
return false;
|
||||
@@ -403,7 +403,7 @@ int FFmpegAudioDecoder::GetAudioBuffer(struct AVCodecContext* s,
|
||||
if (frame->nb_samples <= 0)
|
||||
return AVERROR(EINVAL);
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
--- src/chrome/browser/ui/lens/BUILD.gn.orig 2025-04-11 12:05:17.505799730 +0200
|
||||
+++ src/chrome/browser/ui/lens/BUILD.gn 2025-04-12 13:42:57.195753884 +0200
|
||||
@@ -276,13 +276,15 @@ source_set("interactive_ui_tests") {
|
||||
"//components/feature_engagement/public",
|
||||
"//components/lens:enterprise_policy",
|
||||
"//components/lens:features",
|
||||
- "//components/pdf/browser:browser",
|
||||
"//components/prefs",
|
||||
"//components/search_engines",
|
||||
"//components/user_education/views",
|
||||
"//content/test:test_support",
|
||||
"//testing/gtest",
|
||||
]
|
||||
+ if (enable_pdf) {
|
||||
+ deps += [ "//components/pdf/browser:browser" ]
|
||||
+ }
|
||||
}
|
||||
|
||||
source_set("unit_tests") {
|
||||
@@ -21,53 +21,45 @@
|
||||
"//services/strings",
|
||||
"//services/test/echo/public/mojom",
|
||||
@@ -8027,7 +8021,6 @@ test("unit_tests") {
|
||||
|
||||
# Non-android deps for "unit_tests" target.
|
||||
#
|
||||
# TODO(crbug.com/417513088): Maybe merge with the non-android `deps` declaration above?
|
||||
deps += [
|
||||
- "../browser/screen_ai:screen_ai_install_state",
|
||||
"//chrome/browser/apps:icon_standardizer",
|
||||
"//chrome/browser/apps/app_service",
|
||||
"//chrome/browser/apps/app_service:app_registry_cache_waiter",
|
||||
@@ -8172,7 +8165,6 @@ test("unit_tests") {
|
||||
"//services/device/public/cpp/bluetooth",
|
||||
"//components/webapps/browser",
|
||||
"//services/metrics/public/cpp:ukm_builders",
|
||||
"//services/network:test_support",
|
||||
- "//services/screen_ai:test_support",
|
||||
"//services/video_effects/test:test_support",
|
||||
"//third_party/crashpad/crashpad/util",
|
||||
"//third_party/libaddressinput",
|
||||
"//third_party/lzma_sdk/google:unit_tests",
|
||||
@@ -8445,7 +8437,6 @@ test("unit_tests") {
|
||||
"//chrome/browser/push_notification",
|
||||
"//chrome/browser/push_notification:test_support",
|
||||
"//chrome/browser/push_notification/protos:proto",
|
||||
- "//chrome/browser/screen_ai/public:test_support",
|
||||
"//chrome/browser/sharesheet",
|
||||
"//chrome/browser/smart_card:smart_card",
|
||||
"//chrome/browser/task_manager:impl",
|
||||
"//chrome/browser/ui/ash:test_support",
|
||||
@@ -8591,7 +8582,6 @@ test("unit_tests") {
|
||||
"//chrome/browser/nearby_sharing/contacts:unit_tests",
|
||||
"//chrome/browser/nearby_sharing/local_device_data:unit_tests",
|
||||
"//chrome/browser/policy:unit_tests",
|
||||
- "//chrome/browser/screen_ai:unit_tests",
|
||||
"//chrome/browser/smart_card:unit_tests",
|
||||
"//chrome/browser/support_tool/ash:unit_tests",
|
||||
"//chrome/browser/ui/ash:unit_tests",
|
||||
--- src/chrome/browser/BUILD.gn.orig 2025-04-11 12:13:12.927314100 +0200
|
||||
+++ src/chrome/browser/BUILD.gn 2025-04-12 13:12:42.819768051 +0200
|
||||
@@ -4228,10 +4228,6 @@ static_library("browser") {
|
||||
"//chrome/browser/metrics/desktop_session_duration",
|
||||
"//chrome/browser/new_tab_page/chrome_colors",
|
||||
"//chrome/browser/policy:path_parser",
|
||||
"//chrome/browser/resources:component_extension_resources",
|
||||
- "//chrome/browser/screen_ai:prefs",
|
||||
- "//chrome/browser/screen_ai:screen_ai_install_state",
|
||||
- "//chrome/browser/screen_ai:screen_ai_service_router_factory",
|
||||
- "//chrome/browser/screen_ai/public:optical_character_recognizer",
|
||||
"//chrome/browser/search/background",
|
||||
"//chrome/browser/sharing_hub",
|
||||
"//chrome/browser/smart_card",
|
||||
"//chrome/browser/themes",
|
||||
@@ -4357,9 +4353,6 @@ static_library("browser") {
|
||||
"//components/webauthn/core/browser",
|
||||
"//components/webauthn/core/browser:passkey_model",
|
||||
"//services/device/public/cpp/bluetooth",
|
||||
"//services/device/public/cpp/hid",
|
||||
- "//services/screen_ai",
|
||||
- "//services/screen_ai/public/cpp:utilities",
|
||||
@@ -96,8 +88,8 @@
|
||||
"//skia",
|
||||
"//sql",
|
||||
@@ -145,7 +144,6 @@ static_library("utility") {
|
||||
"//chrome/common/importer:interfaces",
|
||||
"//components/autofill/core/common",
|
||||
"//components/user_data_importer/common",
|
||||
"//services/proxy_resolver:lib",
|
||||
- "//services/screen_ai",
|
||||
]
|
||||
@@ -114,8 +106,8 @@
|
||||
]
|
||||
|
||||
@@ -68,9 +67,6 @@ source_set("screen_ai_service_router_fac
|
||||
"//chrome/browser/profiles:profile",
|
||||
"//components/keyed_service/core",
|
||||
"//components/performance_manager:performance_manager",
|
||||
"//content/public/browser",
|
||||
- "//services/screen_ai/public/cpp:utilities",
|
||||
- "//services/screen_ai/public/mojom:factory",
|
||||
@@ -156,7 +148,7 @@
|
||||
--- src/chrome/browser/ui/BUILD.gn.orig 2025-04-11 12:05:17.331313863 +0200
|
||||
+++ src/chrome/browser/ui/BUILD.gn 2025-04-12 13:26:46.759762260 +0200
|
||||
@@ -1705,8 +1705,6 @@ static_library("ui") {
|
||||
"//chrome/browser/reading_list",
|
||||
"//chrome/browser/regional_capabilities",
|
||||
"//chrome/browser/safe_browsing",
|
||||
"//chrome/browser/safe_browsing:advanced_protection",
|
||||
- "//chrome/browser/screen_ai:screen_ai_install_state",
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
From 09a3abf8f4aca3b00ccbabc860b0819d7e3ea206 Mon Sep 17 00:00:00 2001
|
||||
From: Yunsik Jung <yunsik.jung@lge.com>
|
||||
Date: Fri, 21 Mar 2025 08:12:22 -0700
|
||||
Subject: [PATCH] Fix build error when "enable_video_effects=false" in Linux
|
||||
|
||||
kVideoEffects is engaged even when ENABLE_VIDEO_EFFECTS is false.
|
||||
(https://crrev.com/c/5898146)
|
||||
However, "video_effects_sandbox_hook_linux.h" is not included when
|
||||
ENABLE_VIDEO_EFFECTS is false which caused build error.
|
||||
|
||||
Thus, include "video_effects_sandbox_hook_linux.h" in Linux regardless
|
||||
of ENABLE_VIDEO_EFFECTS.
|
||||
|
||||
Bug: N/A
|
||||
Change-Id: If0bb3f1b391a7960ee8ff9ad83d8c858a24cedb5
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6380633
|
||||
Reviewed-by: Rakina Zata Amni <rakina@chromium.org>
|
||||
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
|
||||
Commit-Queue: Dave Tapuska <dtapuska@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#1436051}
|
||||
---
|
||||
content/utility/utility_main.cc | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/content/utility/utility_main.cc b/content/utility/utility_main.cc
|
||||
index 7456eab4558962..ffb16be8ce8541 100644
|
||||
--- a/content/utility/utility_main.cc
|
||||
+++ b/content/utility/utility_main.cc
|
||||
@@ -66,9 +66,9 @@
|
||||
|
||||
#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
|
||||
|
||||
-#if BUILDFLAG(ENABLE_VIDEO_EFFECTS) && BUILDFLAG(IS_LINUX)
|
||||
+#if BUILDFLAG(IS_LINUX)
|
||||
#include "services/video_effects/video_effects_sandbox_hook_linux.h" // nogncheck
|
||||
-#endif // BUILDFLAG(ENABLE_VIDEO_EFFECTS) && BUILDFLAG(IS_LINUX)
|
||||
+#endif // BUILDFLAG(IS_LINUX)
|
||||
|
||||
#if BUILDFLAG(IS_CHROMEOS)
|
||||
#include "chromeos/ash/components/assistant/buildflags.h"
|
||||
@@ -1,22 +0,0 @@
|
||||
Index: src/third_party/webrtc/modules/video_capture/linux/pipewire_session.cc
|
||||
===================================================================
|
||||
--- src.orig/third_party/webrtc/modules/video_capture/linux/pipewire_session.cc
|
||||
+++ src/third_party/webrtc/modules/video_capture/linux/pipewire_session.cc
|
||||
@@ -85,7 +85,7 @@ PipeWireNode::PipeWireNode(PipeWireSessi
|
||||
.param = OnNodeParam,
|
||||
};
|
||||
|
||||
- pw_node_add_listener(proxy_, &node_listener_, &node_events, this);
|
||||
+ pw_node_add_listener((struct pw_node*)proxy_, &node_listener_, &node_events, this);
|
||||
}
|
||||
|
||||
// static
|
||||
@@ -117,7 +117,7 @@ void PipeWireNode::OnNodeInfo(void* data
|
||||
uint32_t id = info->params[i].id;
|
||||
if (id == SPA_PARAM_EnumFormat &&
|
||||
info->params[i].flags & SPA_PARAM_INFO_READ) {
|
||||
- pw_node_enum_params(that->proxy_, 0, id, 0, UINT32_MAX, nullptr);
|
||||
+ pw_node_enum_params((struct pw_node*)that->proxy_, 0, id, 0, UINT32_MAX, nullptr);
|
||||
break;
|
||||
}
|
||||
}
|
||||
16
fpic.patch
16
fpic.patch
@@ -73,26 +73,26 @@ Use -fpic for code which goes only in dlls (gives smaller code),
|
||||
sources = [
|
||||
"compression_utils_portable.cc",
|
||||
"compression_utils_portable.h",
|
||||
--- src/ui/qt/BUILD.gn.orig 2025-04-10 19:56:03.150817690 +0200
|
||||
+++ src/ui/qt/BUILD.gn 2025-04-11 11:42:11.904342754 +0200
|
||||
--- src/ui/qt/BUILD.gn.orig 2025-07-19 11:32:45.537979340 +0200
|
||||
+++ src/ui/qt/BUILD.gn 2025-07-19 16:18:57.173759933 +0200
|
||||
@@ -39,6 +39,8 @@ source_set("qt_interface") {
|
||||
# target instead.
|
||||
public = [ "qt_interface.h" ]
|
||||
sources = [ "qt_interface.cc" ]
|
||||
+ cflags = ["-fpic", "-fno-semantic-interposition"]
|
||||
+ asmflags = ["-fpic", "-fno-semantic-interposition"]
|
||||
}
|
||||
|
||||
template("qt_shim") {
|
||||
@@ -99,6 +101,8 @@ template("qt_shim") {
|
||||
# Don't use libc++ modules as this depends on libstdc++.
|
||||
use_libcxx_modules = false
|
||||
@@ -102,6 +104,8 @@ template("qt_shim") {
|
||||
sources += get_target_outputs(":generate_moc" + invoker.qt_version)
|
||||
deps += [ ":generate_moc" + invoker.qt_version ]
|
||||
}
|
||||
+ cflags = ["-fpic", "-fno-semantic-interposition"]
|
||||
+ asmflags = ["-fpic", "-fno-semantic-interposition"]
|
||||
}
|
||||
}
|
||||
if (use_qt5) {
|
||||
|
||||
# Don't depend on libcxx modules. This binary doesn't depend on the standard
|
||||
# library in libcxx. Instead it depends on the libcxx in the sysroot, so
|
||||
--- src/third_party/abseil-cpp/BUILD.gn.old
|
||||
+++ src/third_party/abseil-cpp/BUILD.gn
|
||||
@@ -132,6 +132,8 @@ config("absl_define_config") {
|
||||
|
||||
@@ -1,63 +0,0 @@
|
||||
--- src/third_party/blink/renderer/build/scripts/generate_permission_element_grd.py 2025-05-07 19:56:08.225814691 +0200
|
||||
+++ src/third_party/blink/renderer/build/scripts/generate_permission_element_grd.py 2025-05-09 17:27:22.302946256 +0200
|
||||
@@ -148,6 +148,18 @@ def generate_grd_file(id_map, file_list,
|
||||
with open(output_file_path, 'wb') as output_file:
|
||||
output_file.write(doc.toxml(encoding='UTF-8'))
|
||||
|
||||
+# Generate the shortest string containing both `long` and `short` as substrings.
|
||||
+# The full n-string problem is NP-complete, but we only use a crude greedy heuristic.
|
||||
+def superstring(long, short):
|
||||
+ if long.find(short) >= 0:
|
||||
+ return long
|
||||
+ for i in range(len(short), 0, -1):
|
||||
+ if(long[-i:] == short[:i]):
|
||||
+ return long + short[i:]
|
||||
+ if(short[-i:] == long[:i]):
|
||||
+ return short + long[i:]
|
||||
+ return long + short
|
||||
+
|
||||
|
||||
def generate_cpp_mapping(orderings, input_file_path, output_file_path):
|
||||
doc = parse(input_file_path)
|
||||
@@ -161,8 +173,8 @@ def generate_cpp_mapping(orderings, inpu
|
||||
# this code will use `pt-pt` (Portuguese from Portugal).
|
||||
custom_locale_mappings = {"en-gb": "en", "pt-pt": "pt", "zh-cn": "zh"}
|
||||
|
||||
- langs = ''
|
||||
- lang_map = {}
|
||||
+
|
||||
+ locales = set()
|
||||
message_map = []
|
||||
for message in messages:
|
||||
message_name = message.getAttribute('name')
|
||||
@@ -171,20 +183,18 @@ def generate_cpp_mapping(orderings, inpu
|
||||
'_', 1)[1].lower().replace("_", "-")
|
||||
if locale in custom_locale_mappings:
|
||||
locale = custom_locale_mappings[locale]
|
||||
- if locale not in lang_map:
|
||||
- # String concatenation is inefficientin Python, since strings
|
||||
- # are immutable. However, maintaining a list of chars and
|
||||
- # re-implementing find() is also unpleasant.
|
||||
- langs_idx = langs.find(locale)
|
||||
- if langs_idx < 0:
|
||||
- lang_map[locale] = (len(langs), len(locale))
|
||||
- langs += locale
|
||||
- else:
|
||||
- # If locale is already a substring in the existing list,
|
||||
- # the substring can simply be reused to save some space.
|
||||
- lang_map[locale] = (langs_idx, len(locale))
|
||||
+ locales.add(locale) # Need to add all locales at first because iteration order is non-deterministic
|
||||
message_map.append((locale, base_message, message_name))
|
||||
|
||||
+ langs = ''
|
||||
+ locales = sorted(locales, key=lambda x: (-len(x), x))
|
||||
+ for locale in locales: # Sort by length so that we add `ab-cd` before `ab` and `cd`
|
||||
+ langs = superstring(langs, locale)
|
||||
+
|
||||
+ lang_map = {}
|
||||
+ for locale in locales:
|
||||
+ lang_map[locale] = langs.find(locale), len(locale)
|
||||
+
|
||||
output_file.write(kStringMapCcPrefix)
|
||||
output_file.write(f' "{langs}";\n')
|
||||
output_file.write(kStringMapCcMidfix)
|
||||
227
identity_request_account-incomplete-IdentityProviderData.patch
Normal file
227
identity_request_account-incomplete-IdentityProviderData.patch
Normal file
@@ -0,0 +1,227 @@
|
||||
--- src/content/public/browser/identity_request_dialog_controller.h.orig 2025-08-15 17:32:26.573405615 +0200
|
||||
+++ src/content/public/browser/identity_request_dialog_controller.h 2025-08-16 00:53:34.120821675 +0200
|
||||
@@ -14,7 +14,6 @@
|
||||
#include "base/memory/ref_counted.h"
|
||||
#include "content/common/content_export.h"
|
||||
#include "content/public/browser/identity_request_account.h"
|
||||
-#include "third_party/blink/public/mojom/webid/federated_auth_request.mojom-forward.h"
|
||||
#include "third_party/skia/include/core/SkColor.h"
|
||||
#include "url/gurl.h"
|
||||
#include "url/origin.h"
|
||||
@@ -22,35 +21,6 @@
|
||||
namespace content {
|
||||
class WebContents;
|
||||
|
||||
-// A Java counterpart will be generated for this enum.
|
||||
-// GENERATED_JAVA_ENUM_PACKAGE: org.chromium.content.webid
|
||||
-// GENERATED_JAVA_CLASS_NAME_OVERRIDE: IdentityRequestDialogDisclosureField
|
||||
-enum class IdentityRequestDialogDisclosureField {
|
||||
- kName,
|
||||
- kEmail,
|
||||
- kPicture,
|
||||
- kPhoneNumber,
|
||||
- kUsername
|
||||
-};
|
||||
-
|
||||
-// The client metadata that will be used to display a FedCM dialog. This data is
|
||||
-// extracted from the client metadata endpoint from the FedCM API, where
|
||||
-// 'client' is essentially the relying party which invoked the API.
|
||||
-struct CONTENT_EXPORT ClientMetadata {
|
||||
- ClientMetadata(const GURL& terms_of_service_url,
|
||||
- const GURL& privacy_policy_url,
|
||||
- const GURL& brand_icon_url,
|
||||
- const gfx::Image& brand_decoded_icon);
|
||||
- ClientMetadata(const ClientMetadata& other);
|
||||
- ~ClientMetadata();
|
||||
-
|
||||
- GURL terms_of_service_url;
|
||||
- GURL privacy_policy_url;
|
||||
- GURL brand_icon_url;
|
||||
- // This will be an empty image if the fetching never happened or if it failed.
|
||||
- gfx::Image brand_decoded_icon;
|
||||
-};
|
||||
-
|
||||
// The information about an error that will be used to display a FedCM dialog.
|
||||
// This data is extracted from the error object returned by the identity
|
||||
// provider when the user attempts to login via the FedCM API and an error
|
||||
@@ -60,70 +30,6 @@ struct CONTENT_EXPORT IdentityCredential
|
||||
GURL url;
|
||||
};
|
||||
|
||||
-// The metadata about the identity provider that will be used to display a FedCM
|
||||
-// dialog. This data is extracted from the config file which is fetched when the
|
||||
-// FedCM API is invoked.
|
||||
-struct CONTENT_EXPORT IdentityProviderMetadata {
|
||||
- IdentityProviderMetadata();
|
||||
- IdentityProviderMetadata(const IdentityProviderMetadata& other);
|
||||
- ~IdentityProviderMetadata();
|
||||
-
|
||||
- std::optional<SkColor> brand_text_color;
|
||||
- std::optional<SkColor> brand_background_color;
|
||||
- GURL brand_icon_url;
|
||||
- GURL idp_login_url;
|
||||
- std::string requested_label;
|
||||
- // For registered IdPs, the type is used to only show the accounts when the
|
||||
- // RP is compatible.
|
||||
- std::vector<std::string> types;
|
||||
- // The token formats that are supported.
|
||||
- std::vector<std::string> formats;
|
||||
- // The URL of the configuration endpoint. This is stored in
|
||||
- // IdentityProviderMetadata so that the UI code can pass it along when an
|
||||
- // Account is selected by the user.
|
||||
- GURL config_url;
|
||||
- // Whether this IdP supports signing in to additional accounts.
|
||||
- bool supports_add_account{false};
|
||||
- // Whether this IdP has any filtered out account. This is reset to false each
|
||||
- // time the accounts dialog is shown and recomputed then.
|
||||
- bool has_filtered_out_account{false};
|
||||
- // This will be an empty image if fetching failed.
|
||||
- gfx::Image brand_decoded_icon;
|
||||
-};
|
||||
-
|
||||
-// This class contains all of the data specific to an identity provider that is
|
||||
-// going to be used to display a FedCM dialog. This data is gathered from
|
||||
-// endpoints fetched when the FedCM API is invoked as well as from the
|
||||
-// parameters provided by the relying party when the API is invoked.
|
||||
-class CONTENT_EXPORT IdentityProviderData
|
||||
- : public base::RefCounted<IdentityProviderData> {
|
||||
- public:
|
||||
- IdentityProviderData(const std::string& idp_for_display,
|
||||
- const IdentityProviderMetadata& idp_metadata,
|
||||
- const ClientMetadata& client_metadata,
|
||||
- blink::mojom::RpContext rp_context,
|
||||
- std::optional<blink::mojom::Format> format,
|
||||
- const std::vector<IdentityRequestDialogDisclosureField>&
|
||||
- disclosure_fields,
|
||||
- bool has_login_status_mismatch);
|
||||
-
|
||||
- std::string idp_for_display;
|
||||
- IdentityProviderMetadata idp_metadata;
|
||||
- ClientMetadata client_metadata;
|
||||
- blink::mojom::RpContext rp_context;
|
||||
- std::optional<blink::mojom::Format> format;
|
||||
- // For which fields should the dialog request permission for (assuming
|
||||
- // this is for signup).
|
||||
- std::vector<IdentityRequestDialogDisclosureField> disclosure_fields;
|
||||
- // Whether there was some login status API mismatch when fetching the IDP's
|
||||
- // accounts.
|
||||
- bool has_login_status_mismatch;
|
||||
-
|
||||
- private:
|
||||
- friend class base::RefCounted<IdentityProviderData>;
|
||||
-
|
||||
- ~IdentityProviderData();
|
||||
-};
|
||||
|
||||
// The relying party data that will be used to display a FedCM dialog. This data
|
||||
// is extracted from the website which invoked the API, not from the FedCM
|
||||
--- src/content/public/browser/identity_request_account.h.orig 2025-08-15 17:32:26.573405615 +0200
|
||||
+++ src/content/public/browser/identity_request_account.h 2025-08-16 00:53:42.592813124 +0200
|
||||
@@ -13,13 +13,106 @@
|
||||
#include "base/time/time.h"
|
||||
#include "content/common/content_export.h"
|
||||
#include "third_party/blink/public/common/webid/login_status_account.h"
|
||||
+#include "third_party/blink/public/mojom/webid/federated_auth_request.mojom-forward.h"
|
||||
#include "third_party/skia/include/core/SkColor.h"
|
||||
#include "ui/gfx/image/image.h"
|
||||
#include "url/gurl.h"
|
||||
|
||||
namespace content {
|
||||
|
||||
-class IdentityProviderData;
|
||||
+// A Java counterpart will be generated for this enum.
|
||||
+// GENERATED_JAVA_ENUM_PACKAGE: org.chromium.content.webid
|
||||
+// GENERATED_JAVA_CLASS_NAME_OVERRIDE: IdentityRequestDialogDisclosureField
|
||||
+enum class IdentityRequestDialogDisclosureField {
|
||||
+ kName,
|
||||
+ kEmail,
|
||||
+ kPicture,
|
||||
+ kPhoneNumber,
|
||||
+ kUsername
|
||||
+};
|
||||
+
|
||||
+// The client metadata that will be used to display a FedCM dialog. This data is
|
||||
+// extracted from the client metadata endpoint from the FedCM API, where
|
||||
+// 'client' is essentially the relying party which invoked the API.
|
||||
+struct CONTENT_EXPORT ClientMetadata {
|
||||
+ ClientMetadata(const GURL& terms_of_service_url,
|
||||
+ const GURL& privacy_policy_url,
|
||||
+ const GURL& brand_icon_url,
|
||||
+ const gfx::Image& brand_decoded_icon);
|
||||
+ ClientMetadata(const ClientMetadata& other);
|
||||
+ ~ClientMetadata();
|
||||
+
|
||||
+ GURL terms_of_service_url;
|
||||
+ GURL privacy_policy_url;
|
||||
+ GURL brand_icon_url;
|
||||
+ // This will be an empty image if the fetching never happened or if it failed.
|
||||
+ gfx::Image brand_decoded_icon;
|
||||
+};
|
||||
+
|
||||
+// The metadata about the identity provider that will be used to display a FedCM
|
||||
+// dialog. This data is extracted from the config file which is fetched when the
|
||||
+// FedCM API is invoked.
|
||||
+struct CONTENT_EXPORT IdentityProviderMetadata {
|
||||
+ IdentityProviderMetadata();
|
||||
+ IdentityProviderMetadata(const IdentityProviderMetadata& other);
|
||||
+ ~IdentityProviderMetadata();
|
||||
+
|
||||
+ std::optional<SkColor> brand_text_color;
|
||||
+ std::optional<SkColor> brand_background_color;
|
||||
+ GURL brand_icon_url;
|
||||
+ GURL idp_login_url;
|
||||
+ std::string requested_label;
|
||||
+ // For registered IdPs, the type is used to only show the accounts when the
|
||||
+ // RP is compatible.
|
||||
+ std::vector<std::string> types;
|
||||
+ // The token formats that are supported.
|
||||
+ std::vector<std::string> formats;
|
||||
+ // The URL of the configuration endpoint. This is stored in
|
||||
+ // IdentityProviderMetadata so that the UI code can pass it along when an
|
||||
+ // Account is selected by the user.
|
||||
+ GURL config_url;
|
||||
+ // Whether this IdP supports signing in to additional accounts.
|
||||
+ bool supports_add_account{false};
|
||||
+ // Whether this IdP has any filtered out account. This is reset to false each
|
||||
+ // time the accounts dialog is shown and recomputed then.
|
||||
+ bool has_filtered_out_account{false};
|
||||
+ // This will be an empty image if fetching failed.
|
||||
+ gfx::Image brand_decoded_icon;
|
||||
+};
|
||||
+
|
||||
+// This class contains all of the data specific to an identity provider that is
|
||||
+// going to be used to display a FedCM dialog. This data is gathered from
|
||||
+// endpoints fetched when the FedCM API is invoked as well as from the
|
||||
+// parameters provided by the relying party when the API is invoked.
|
||||
+class CONTENT_EXPORT IdentityProviderData
|
||||
+ : public base::RefCounted<IdentityProviderData> {
|
||||
+ public:
|
||||
+ IdentityProviderData(const std::string& idp_for_display,
|
||||
+ const IdentityProviderMetadata& idp_metadata,
|
||||
+ const ClientMetadata& client_metadata,
|
||||
+ blink::mojom::RpContext rp_context,
|
||||
+ std::optional<blink::mojom::Format> format,
|
||||
+ const std::vector<IdentityRequestDialogDisclosureField>&
|
||||
+ disclosure_fields,
|
||||
+ bool has_login_status_mismatch);
|
||||
+
|
||||
+ std::string idp_for_display;
|
||||
+ IdentityProviderMetadata idp_metadata;
|
||||
+ ClientMetadata client_metadata;
|
||||
+ blink::mojom::RpContext rp_context;
|
||||
+ std::optional<blink::mojom::Format> format;
|
||||
+ // For which fields should the dialog request permission for (assuming
|
||||
+ // this is for signup).
|
||||
+ std::vector<IdentityRequestDialogDisclosureField> disclosure_fields;
|
||||
+ // Whether there was some login status API mismatch when fetching the IDP's
|
||||
+ // accounts.
|
||||
+ bool has_login_status_mismatch;
|
||||
+
|
||||
+ private:
|
||||
+ friend class base::RefCounted<IdentityProviderData>;
|
||||
+
|
||||
+ ~IdentityProviderData();
|
||||
+};
|
||||
|
||||
// Represents a federated user account which is used when displaying the FedCM
|
||||
// account selector.
|
||||
25
json_to_struct-fixed_flat_map-conflicting-declaration.patch
Normal file
25
json_to_struct-fixed_flat_map-conflicting-declaration.patch
Normal file
@@ -0,0 +1,25 @@
|
||||
--- src/tools/json_to_struct/aggregation.py.orig 2025-08-15 17:32:37.009403662 +0200
|
||||
+++ src/tools/json_to_struct/aggregation.py 2025-08-16 00:58:01.264590353 +0200
|
||||
@@ -134,7 +134,9 @@ def _GenerateCCArray(type_name: str, agg
|
||||
Returns:
|
||||
str: The generated C++ array aggregation code.
|
||||
"""
|
||||
- res = f'\nconst auto {aggregation.name} =\n'
|
||||
+ res = '\n const '
|
||||
+ res += f'std::array<const {type_name}*, {len(aggregation.elements)}> '
|
||||
+ res += f'{aggregation.name} =\n'
|
||||
res += f' std::array<const {type_name}*, {len(aggregation.elements)}>'
|
||||
|
||||
res += '({{\n'
|
||||
@@ -157,7 +159,10 @@ def _GenerateCCMap(type_name: str, aggre
|
||||
"""
|
||||
key_type = aggregation.map_key_type
|
||||
|
||||
- res = f'\nconst auto {aggregation.name} =\n'
|
||||
+ res = f'\nconst '
|
||||
+ res += f'base::fixed_flat_map<{aggregation.map_key_type}, '
|
||||
+ res += f'const {type_name}*, {len(aggregation.GetSortedMapElements())}> '
|
||||
+ res += f'{aggregation.name} =\n'
|
||||
res += f' base::MakeFixedFlatMap<{key_type}, const {type_name}*>'
|
||||
|
||||
res += '({\n'
|
||||
88
llhttp-lax-vector-conversions.patch
Normal file
88
llhttp-lax-vector-conversions.patch
Normal file
@@ -0,0 +1,88 @@
|
||||
It makes no sense fixing this since llhttp's code is partly generated.
|
||||
|
||||
../../third_party/electron_node/deps/llhttp/src/llhttp.c: In function ‘llhttp__internal__run’:
|
||||
../../third_party/electron_node/deps/llhttp/src/llhttp.c:2645:9: note: use ‘-flax-vector-conversions’ to permit conversions between vectors with differing element types or numbers of subparts
|
||||
2645 | );
|
||||
| ^
|
||||
../../third_party/electron_node/deps/llhttp/src/llhttp.c:2643:11: error: incompatible type for argument 1 of ‘vandq_u16’
|
||||
2643 | vcgeq_u8(input, vdupq_n_u8(' ')),
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
| |
|
||||
| uint8x16_t
|
||||
In file included from ../../third_party/electron_node/deps/llhttp/src/llhttp.c:14:
|
||||
/usr/lib64/gcc/aarch64-suse-linux/15/include/arm_neon.h:1088:23: note: expected ‘uint16x8_t’ but argument is of type ‘uint8x16_t’
|
||||
1088 | vandq_u16 (uint16x8_t __a, uint16x8_t __b)
|
||||
| ~~~~~~~~~~~^~~
|
||||
../../third_party/electron_node/deps/llhttp/src/llhttp.c:2644:11: error: incompatible type for argument 2 of ‘vandq_u16’
|
||||
2644 | vcleq_u8(input, vdupq_n_u8('~'))
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
| |
|
||||
| uint8x16_t
|
||||
/usr/lib64/gcc/aarch64-suse-linux/15/include/arm_neon.h:1088:39: note: expected ‘uint16x8_t’ but argument is of type ‘uint8x16_t’
|
||||
1088 | vandq_u16 (uint16x8_t __a, uint16x8_t __b)
|
||||
| ~~~~~~~~~~~^~~
|
||||
../../third_party/electron_node/deps/llhttp/src/llhttp.c:2646:26: error: incompatible type for argument 1 of ‘vorrq_u16’
|
||||
2646 | mask = vorrq_u16(mask, single);
|
||||
| ^~~~
|
||||
| |
|
||||
| uint8x16_t
|
||||
/usr/lib64/gcc/aarch64-suse-linux/15/include/arm_neon.h:1200:23: note: expected ‘uint16x8_t’ but argument is of type ‘uint8x16_t’
|
||||
1200 | vorrq_u16 (uint16x8_t __a, uint16x8_t __b)
|
||||
| ~~~~~~~~~~~^~~
|
||||
../../third_party/electron_node/deps/llhttp/src/llhttp.c:2646:32: error: incompatible type for argument 2 of ‘vorrq_u16’
|
||||
2646 | mask = vorrq_u16(mask, single);
|
||||
| ^~~~~~
|
||||
| |
|
||||
| uint8x16_t
|
||||
/usr/lib64/gcc/aarch64-suse-linux/15/include/arm_neon.h:1200:39: note: expected ‘uint16x8_t’ but argument is of type ‘uint8x16_t’
|
||||
1200 | vorrq_u16 (uint16x8_t __a, uint16x8_t __b)
|
||||
| ~~~~~~~~~~~^~~
|
||||
../../third_party/electron_node/deps/llhttp/src/llhttp.c:2648:11: error: incompatible type for argument 1 of ‘vandq_u16’
|
||||
2648 | vcgeq_u8(input, vdupq_n_u8(0x80)),
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
| |
|
||||
| uint8x16_t
|
||||
/usr/lib64/gcc/aarch64-suse-linux/15/include/arm_neon.h:1088:23: note: expected ‘uint16x8_t’ but argument is of type ‘uint8x16_t’
|
||||
1088 | vandq_u16 (uint16x8_t __a, uint16x8_t __b)
|
||||
| ~~~~~~~~~~~^~~
|
||||
../../third_party/electron_node/deps/llhttp/src/llhttp.c:2649:11: error: incompatible type for argument 2 of ‘vandq_u16’
|
||||
2649 | vcleq_u8(input, vdupq_n_u8(0xff))
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
| |
|
||||
| uint8x16_t
|
||||
/usr/lib64/gcc/aarch64-suse-linux/15/include/arm_neon.h:1088:39: note: expected ‘uint16x8_t’ but argument is of type ‘uint8x16_t’
|
||||
1088 | vandq_u16 (uint16x8_t __a, uint16x8_t __b)
|
||||
| ~~~~~~~~~~~^~~
|
||||
../../third_party/electron_node/deps/llhttp/src/llhttp.c:2651:26: error: incompatible type for argument 1 of ‘vorrq_u16’
|
||||
2651 | mask = vorrq_u16(mask, single);
|
||||
| ^~~~
|
||||
| |
|
||||
| uint8x16_t
|
||||
/usr/lib64/gcc/aarch64-suse-linux/15/include/arm_neon.h:1200:23: note: expected ‘uint16x8_t’ but argument is of type ‘uint8x16_t’
|
||||
1200 | vorrq_u16 (uint16x8_t __a, uint16x8_t __b)
|
||||
| ~~~~~~~~~~~^~~
|
||||
../../third_party/electron_node/deps/llhttp/src/llhttp.c:2651:32: error: incompatible type for argument 2 of ‘vorrq_u16’
|
||||
2651 | mask = vorrq_u16(mask, single);
|
||||
| ^~~~~~
|
||||
| |
|
||||
| uint8x16_t
|
||||
/usr/lib64/gcc/aarch64-suse-linux/15/include/arm_neon.h:1200:39: note: expected ‘uint16x8_t’ but argument is of type ‘uint8x16_t’
|
||||
1200 | vorrq_u16 (uint16x8_t __a, uint16x8_t __b)
|
||||
| ~~~~~~~~~~~^~~
|
||||
../../third_party/electron_node/deps/llhttp/src/llhttp.c:2652:30: error: incompatible type for argument 1 of ‘vshrn_n_u16’
|
||||
2652 | narrow = vshrn_n_u16(mask, 4);
|
||||
| ^~~~
|
||||
| |
|
||||
| uint8x16_t
|
||||
|
||||
|
||||
--- src/third_party/electron_node/deps/llhttp/unofficial.gni.orig 2025-08-15 17:33:00.577399458 +0200
|
||||
+++ src/third_party/electron_node/deps/llhttp/unofficial.gni 2025-08-18 17:28:08.494515274 +0200
|
||||
@@ -19,6 +19,7 @@ template("llhttp_gn_build") {
|
||||
public_configs = [ ":llhttp_config" ]
|
||||
include_dirs = [ "include" ]
|
||||
sources = gypi_values.llhttp_sources
|
||||
+ cflags = ["-flax-vector-conversions"]
|
||||
if (is_clang || !is_win) {
|
||||
cflags_c = [
|
||||
"-Wno-implicit-fallthrough",
|
||||
@@ -0,0 +1,19 @@
|
||||
--- src/base/synchronization/lock_impl_posix.cc.orig 2025-08-15 17:32:21.581406552 +0200
|
||||
+++ src/base/synchronization/lock_impl_posix.cc 2025-08-15 21:57:54.242385089 +0200
|
||||
@@ -20,6 +20,8 @@
|
||||
#include "base/system/sys_info.h"
|
||||
#include "build/build_config.h"
|
||||
|
||||
+
|
||||
+#if BUILDFLAG(IS_ANDROID)
|
||||
// On Android, `pthread_mutexattr_setprotocol()` is only defined in bionic
|
||||
// starting with API level 28. Make it a weak import, so that we can compile.
|
||||
extern "C" {
|
||||
@@ -27,6 +29,7 @@ int __attribute__((weak)) pthread_mutexa
|
||||
pthread_mutexattr_t* _Nonnull __attr,
|
||||
int __protocol);
|
||||
}
|
||||
+#endif
|
||||
|
||||
namespace base {
|
||||
|
||||
25
masked_domain_list-flatbuffers.patch
Normal file
25
masked_domain_list-flatbuffers.patch
Normal file
@@ -0,0 +1,25 @@
|
||||
This code fails to build but is gated by a disabled feature flag, disabling it unconditionally
|
||||
|
||||
|
||||
--- src/components/ip_protection/common/masked_domain_list_manager.cc.orig 2025-08-22 20:17:46.149834100 +0200
|
||||
+++ src/components/ip_protection/common/masked_domain_list_manager.cc 2025-08-23 01:07:33.078746196 +0200
|
||||
@@ -41,8 +41,7 @@ using ::masked_domain_list::ResourceOwne
|
||||
using ::network::mojom::IpProtectionProxyBypassPolicy;
|
||||
|
||||
bool UseFlatbuffer() {
|
||||
- return base::FeatureList::IsEnabled(
|
||||
- network::features::kMaskedDomainListFlatbufferImpl);
|
||||
+ return false;
|
||||
}
|
||||
|
||||
bool RestrictTopLevelSiteSchemes(
|
||||
--- src/components/ip_protection/common/BUILD.gn.orig 2025-08-22 20:17:46.149834100 +0200
|
||||
+++ src/components/ip_protection/common/BUILD.gn 2025-08-23 01:06:48.134754665 +0200
|
||||
@@ -479,7 +479,6 @@ source_set("masked_domain_list_manager")
|
||||
"masked_domain_list_manager.h",
|
||||
]
|
||||
public_deps = [
|
||||
- ":masked_domain_list",
|
||||
":url_matcher_with_bypass",
|
||||
"//base",
|
||||
"//components/privacy_sandbox/masked_domain_list:masked_domain_list_proto",
|
||||
@@ -1,35 +0,0 @@
|
||||
From 4ca8cffec2e6dea43de24a6a9d88095b73ab10f4 Mon Sep 17 00:00:00 2001
|
||||
From: Ivan Murashov <ivan.murashov@lge.com>
|
||||
Date: Wed, 19 Feb 2025 22:59:45 -0800
|
||||
Subject: [PATCH] IWYU: Add missing include for std::optional usage in
|
||||
media_session_uma_helper.h
|
||||
|
||||
In the CL https://crrev.com/c/6204145 used std::optional in
|
||||
the content/browser/media/session/media_session_uma_helper.h,
|
||||
but corresponding include was missed.
|
||||
Added missing include for std::optional usage.
|
||||
|
||||
Bug: 41455655
|
||||
Change-Id: I482a496f6f72762f02e8e6e1484a7eae58147148
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6279927
|
||||
Reviewed-by: Colin Blundell <blundell@chromium.org>
|
||||
Commit-Queue: Ivan Murashov <ivan.murashov@lge.com>
|
||||
Reviewed-by: Tommy Steimel <steimel@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#1422370}
|
||||
---
|
||||
content/browser/media/session/media_session_uma_helper.h | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/content/browser/media/session/media_session_uma_helper.h b/content/browser/media/session/media_session_uma_helper.h
|
||||
index 70000267af9687..51dd098826020c 100644
|
||||
--- a/content/browser/media/session/media_session_uma_helper.h
|
||||
+++ b/content/browser/media/session/media_session_uma_helper.h
|
||||
@@ -5,6 +5,8 @@
|
||||
#ifndef CONTENT_BROWSER_MEDIA_SESSION_MEDIA_SESSION_UMA_HELPER_H_
|
||||
#define CONTENT_BROWSER_MEDIA_SESSION_MEDIA_SESSION_UMA_HELPER_H_
|
||||
|
||||
+#include <optional>
|
||||
+
|
||||
#include "base/memory/raw_ptr.h"
|
||||
#include "base/time/clock.h"
|
||||
#include "base/time/time.h"
|
||||
35
node-cares-1.21-4.patch
Normal file
35
node-cares-1.21-4.patch
Normal file
@@ -0,0 +1,35 @@
|
||||
From 2be863be08ff9f16eae6bb907388c354c55c3bfc Mon Sep 17 00:00:00 2001
|
||||
From: Ethan Arrowood <ethan@arrowood.dev>
|
||||
Date: Mon, 2 Jun 2025 09:29:36 -0600
|
||||
Subject: [PATCH] dns: fix dns query cache implementation
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
PR-URL: https://github.com/nodejs/node/pull/58404
|
||||
Refs: https://github.com/nodejs/node/pull/57640
|
||||
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
|
||||
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
|
||||
Reviewed-By: Tim Perry <pimterry@gmail.com>
|
||||
---
|
||||
src/cares_wrap.cc | 6 +++---
|
||||
test/parallel/test-dns.js | 2 +-
|
||||
2 files changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/cares_wrap.cc b/src/cares_wrap.cc
|
||||
index 6290bcd37f3411..5016c3d51dac66 100644
|
||||
--- a/third_party/electron_node/src/cares_wrap.cc
|
||||
+++ b/third_party/electron_node/src/cares_wrap.cc
|
||||
@@ -879,9 +879,9 @@ void ChannelWrap::Setup() {
|
||||
}
|
||||
|
||||
/* We do the call to ares_init_option for caller. */
|
||||
- const int optmask =
|
||||
- ARES_OPT_FLAGS | ARES_OPT_TIMEOUTMS |
|
||||
- ARES_OPT_SOCK_STATE_CB | ARES_OPT_TRIES;
|
||||
+ const int optmask = ARES_OPT_FLAGS | ARES_OPT_TIMEOUTMS |
|
||||
+ ARES_OPT_SOCK_STATE_CB | ARES_OPT_TRIES |
|
||||
+ ARES_OPT_QUERY_CACHE;
|
||||
r = ares_init_options(&channel_, &options, optmask);
|
||||
|
||||
if (r != ARES_SUCCESS) {
|
||||
14
node-kParentNodeTag-constexpr-initializer.patch
Normal file
14
node-kParentNodeTag-constexpr-initializer.patch
Normal file
@@ -0,0 +1,14 @@
|
||||
--- src/third_party/blink/renderer/core/dom/node.h.orig 2025-08-15 17:32:29.121405137 +0200
|
||||
+++ src/third_party/blink/renderer/core/dom/node.h 2025-08-15 23:15:58.713118795 +0200
|
||||
@@ -1259,9 +1259,9 @@ class CORE_EXPORT Node : public EventTar
|
||||
|
||||
private:
|
||||
static constexpr struct ParentNodeTag {
|
||||
- } kParentNodeTag;
|
||||
+ } kParentNodeTag {};
|
||||
static constexpr struct ShadowHostTag {
|
||||
- } kShadowHostTag;
|
||||
+ } kShadowHostTag {};
|
||||
|
||||
using TaggedParentOrShadowHostNode =
|
||||
subtle::TaggedUncompressedMember<Node, ParentNodeTag, ShadowHostTag>;
|
||||
@@ -1,54 +0,0 @@
|
||||
From 4454d09e8f7225ec1b576ef86c8705bca63a136c Mon Sep 17 00:00:00 2001
|
||||
From: Fedor Indutny <238531+indutny@users.noreply.github.com>
|
||||
Date: Wed, 7 May 2025 07:21:52 -0700
|
||||
Subject: [PATCH] deps: update llhttp to 9.3.0
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
llhttp@9.3.0 optimizes header value parsing on ARM Neon/WASM, and adds
|
||||
support for a protocol callback for use outside of the typical HTTP
|
||||
setting (RTSP/ICE).
|
||||
|
||||
PR-URL: https://github.com/nodejs/node/pull/58144
|
||||
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
|
||||
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
|
||||
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
|
||||
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
|
||||
---
|
||||
deps/llhttp/CMakeLists.txt | 7 +-
|
||||
deps/llhttp/LICENSE | 22 +
|
||||
deps/llhttp/README.md | 9 +-
|
||||
deps/llhttp/include/llhttp.h | 10 +-
|
||||
deps/llhttp/libllhttp.pc.in | 8 +-
|
||||
deps/llhttp/src/api.c | 45 +-
|
||||
deps/llhttp/src/llhttp.c | 2841 ++++++++---------
|
||||
src/node_http_parser.cc | 6 +
|
||||
test/parallel/test-http-client-parse-error.js | 2 +-
|
||||
9 files changed, 1459 insertions(+), 1491 deletions(-)
|
||||
create mode 100644 deps/llhttp/LICENSE
|
||||
|
||||
diff --git a/src/node_http_parser.cc b/src/node_http_parser.cc
|
||||
index acebdd952eb943..25aa204ee2c851 100644
|
||||
--- a/third_party/electron_node/src/node_http_parser.cc
|
||||
+++ b/third_party/electron_node/src/node_http_parser.cc
|
||||
@@ -1204,6 +1204,10 @@ void ConnectionsList::Expired(const FunctionCallbackInfo<Value>& args) {
|
||||
|
||||
const llhttp_settings_t Parser::settings = {
|
||||
Proxy<Call, &Parser::on_message_begin>::Raw,
|
||||
+
|
||||
+ // on_protocol
|
||||
+ nullptr,
|
||||
+
|
||||
Proxy<DataCall, &Parser::on_url>::Raw,
|
||||
Proxy<DataCall, &Parser::on_status>::Raw,
|
||||
|
||||
@@ -1223,6 +1227,8 @@ const llhttp_settings_t Parser::settings = {
|
||||
Proxy<DataCall, &Parser::on_body>::Raw,
|
||||
Proxy<Call, &Parser::on_message_complete>::Raw,
|
||||
|
||||
+ // on_protocol_complete
|
||||
+ nullptr,
|
||||
// on_url_complete
|
||||
nullptr,
|
||||
// on_status_complete
|
||||
78
node-nghttp-1.50.patch
Normal file
78
node-nghttp-1.50.patch
Normal file
@@ -0,0 +1,78 @@
|
||||
From 02a1505efcf7099498240e83327f7c0d71696f47 Mon Sep 17 00:00:00 2001
|
||||
From: Carlos Fuentes <me@metcoder.dev>
|
||||
Date: Thu, 5 Jun 2025 14:30:07 +0200
|
||||
Subject: [PATCH] http2: add lenient flag for RFC-9113
|
||||
|
||||
PR-URL: https://github.com/nodejs/node/pull/58116
|
||||
Reviewed-By: Tim Perry <pimterry@gmail.com>
|
||||
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
|
||||
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
|
||||
---
|
||||
doc/api/http2.md | 12 +++
|
||||
lib/internal/http2/util.js | 10 ++-
|
||||
src/node_http2.cc | 6 ++
|
||||
src/node_http2_state.h | 1 +
|
||||
.../test-http2-server-rfc-9113-client.js | 80 ++++++++++++++++++
|
||||
.../test-http2-server-rfc-9113-server.js | 83 +++++++++++++++++++
|
||||
.../test-http2-util-update-options-buffer.js | 6 +-
|
||||
7 files changed, 196 insertions(+), 2 deletions(-)
|
||||
create mode 100644 test/parallel/test-http2-server-rfc-9113-client.js
|
||||
create mode 100644 test/parallel/test-http2-server-rfc-9113-server.js
|
||||
|
||||
diff --git a/lib/internal/http2/util.js b/lib/internal/http2/util.js
|
||||
index 75312e5aa57c5f..396623d3b9d06f 100644
|
||||
--- a/third_party/electron_node/lib/internal/http2/util.js
|
||||
+++ b/third_party/electron_node/lib/internal/http2/util.js
|
||||
@@ -229,7 +229,8 @@ const IDX_OPTIONS_MAX_SESSION_MEMORY = 8;
|
||||
const IDX_OPTIONS_MAX_SETTINGS = 9;
|
||||
const IDX_OPTIONS_STREAM_RESET_RATE = 10;
|
||||
const IDX_OPTIONS_STREAM_RESET_BURST = 11;
|
||||
-const IDX_OPTIONS_FLAGS = 12;
|
||||
+const IDX_OPTIONS_STRICT_HTTP_FIELD_WHITESPACE_VALIDATION = 12;
|
||||
+const IDX_OPTIONS_FLAGS = 13;
|
||||
|
||||
function updateOptionsBuffer(options) {
|
||||
let flags = 0;
|
||||
@@ -293,6 +294,13 @@ function updateOptionsBuffer(options) {
|
||||
optionsBuffer[IDX_OPTIONS_STREAM_RESET_BURST] =
|
||||
MathMax(1, options.streamResetBurst);
|
||||
}
|
||||
+
|
||||
+ if (typeof options.strictFieldWhitespaceValidation === 'boolean') {
|
||||
+ flags |= (1 << IDX_OPTIONS_STRICT_HTTP_FIELD_WHITESPACE_VALIDATION);
|
||||
+ optionsBuffer[IDX_OPTIONS_STRICT_HTTP_FIELD_WHITESPACE_VALIDATION] =
|
||||
+ options.strictFieldWhitespaceValidation === true ? 0 : 1;
|
||||
+ }
|
||||
+
|
||||
optionsBuffer[IDX_OPTIONS_FLAGS] = flags;
|
||||
}
|
||||
|
||||
diff --git a/src/node_http2.cc b/src/node_http2.cc
|
||||
index 449ecdba807945..8e51129930f2cd 100644
|
||||
--- a/third_party/electron_node/src/node_http2.cc
|
||||
+++ b/third_party/electron_node/src/node_http2.cc
|
||||
@@ -159,6 +159,12 @@ Http2Options::Http2Options(Http2State* http2_state, SessionType type) {
|
||||
buffer[IDX_OPTIONS_PEER_MAX_CONCURRENT_STREAMS]);
|
||||
}
|
||||
|
||||
+ // Validate headers in accordance to RFC-9113
|
||||
+ if (flags & (1 << IDX_OPTIONS_STRICT_HTTP_FIELD_WHITESPACE_VALIDATION)) {
|
||||
+ nghttp2_option_set_no_rfc9113_leading_and_trailing_ws_validation(
|
||||
+ option, buffer[IDX_OPTIONS_STRICT_HTTP_FIELD_WHITESPACE_VALIDATION]);
|
||||
+ }
|
||||
+
|
||||
// The padding strategy sets the mechanism by which we determine how much
|
||||
// additional frame padding to apply to DATA and HEADERS frames. Currently
|
||||
// this is set on a per-session basis, but eventually we may switch to
|
||||
diff --git a/src/node_http2_state.h b/src/node_http2_state.h
|
||||
index 2957a2827f370e..914ad011e021f1 100644
|
||||
--- a/third_party/electron_node/src/node_http2_state.h
|
||||
+++ b/third_party/electron_node/src/node_http2_state.h
|
||||
@@ -60,6 +60,7 @@ namespace http2 {
|
||||
IDX_OPTIONS_MAX_SETTINGS,
|
||||
IDX_OPTIONS_STREAM_RESET_RATE,
|
||||
IDX_OPTIONS_STREAM_RESET_BURST,
|
||||
+ IDX_OPTIONS_STRICT_HTTP_FIELD_WHITESPACE_VALIDATION,
|
||||
IDX_OPTIONS_FLAGS
|
||||
};
|
||||
|
||||
27
node-version-ck.patch
Normal file
27
node-version-ck.patch
Normal file
@@ -0,0 +1,27 @@
|
||||
author: Andres Salomon <dilinger@debian.org>
|
||||
description: disable the node version check
|
||||
|
||||
https://chromium-review.googlesource.com/c/chromium/src/+/6334038 added
|
||||
a node version check, but we don't want that as we're using debian's
|
||||
packaged node.
|
||||
|
||||
--- a/third_party/node/node.gni
|
||||
+++ b/third_party/node/node.gni
|
||||
@@ -44,7 +44,6 @@ template("node") {
|
||||
if (!defined(deps)) {
|
||||
deps = []
|
||||
}
|
||||
- deps += [ "//third_party/node:check_version" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
--- a/third_party/protobuf/proto_library.gni
|
||||
+++ b/third_party/protobuf/proto_library.gni
|
||||
@@ -562,7 +562,6 @@ template("proto_library") {
|
||||
_protoc_gen_ts_path,
|
||||
"//tools/protoc_wrapper/protoc-gen-ts_proto.py",
|
||||
] + _protoc_gen_ts_runtime_deps
|
||||
- deps += [ "//third_party/node:check_version" ]
|
||||
}
|
||||
|
||||
if (_generate_with_plugin) {
|
||||
@@ -1,3 +1,101 @@
|
||||
-------------------------------------------------------------------
|
||||
Sat Aug 23 18:11:15 UTC 2025 - Bruno Pitrus <brunopitrus@hotmail.com>
|
||||
|
||||
- Update to 37.3.1 (bsc#1248464)
|
||||
* Chromium 138.0.7204.235
|
||||
* Node 22.18.0
|
||||
* V8 13.8
|
||||
* Added scriptURL property to ServiceWorkerMain.
|
||||
* Added a CSS rule for smooth corners.
|
||||
* Utility Process unhandled rejection behavior change
|
||||
* process.exit() kills utility process synchronously
|
||||
* WebUSB and WebSerial Blocklist Support
|
||||
* Removed: null value for session property in ProtocolResponse
|
||||
* BrowserWindow.IsVisibleOnAllWorkspaces() on Linux
|
||||
* see https://www.electronjs.org/blog/electron-37-0
|
||||
and https://github.com/electron/electron/releases/tag/v37.0.0 for more
|
||||
- Leap 15.6: use bundled aom
|
||||
* drop aom3.10-AV1E_SET_MAX_CONSEC_FRAME_DROP_MS_CBR.patch
|
||||
* drop aom3.10-AV1E_SET_AUTO_TILES.patch
|
||||
* drop webrtc-aom3.8-AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR.patch
|
||||
* drop webrtc-aom3.8-AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR-2.patch
|
||||
- Fedora <=42: use bundled llhttp
|
||||
- Fedora: use bundled simdutf
|
||||
- Merge MakeSbixTypeface-null-pointer-call.patch into chromium-130-fontations.patch'
|
||||
- drop no longer needed patches
|
||||
* build-without-speech-service.patch
|
||||
* content_browser_client-incomplete-WebUIController.patch
|
||||
* css_shape_value-constructor.patch
|
||||
* disable-devtools-tests.patch
|
||||
* distributed_point_functions-aes_128_fixed_key_hash-missing-StrCat.patch
|
||||
* distributed_point_functions-evaluate_prg_hwy-signature.patch
|
||||
* electron-13-blink-gcc-ambiguous-nodestructor.patch
|
||||
* exception_state-constexpr-initializer.patch
|
||||
* extensions-common-assert.patch
|
||||
* fix-building-with-pipewire-1.3.82.patch
|
||||
* fix-build-without-pdf.patch
|
||||
* fix-build-without-video-effects.patch
|
||||
* html_permission_element_strings_map-reproducible.patch
|
||||
* MakeSbixTypeface-null-pointer-call.patch
|
||||
* media_session_uma_helper-missing-optional.patch
|
||||
* node-llhttp9.3.patch
|
||||
* object_paint_properties-explicit-specialization-in-non-namespace-scope.patch
|
||||
* perfetto-ThreadTrack-Current-null-dereference.patch
|
||||
* picture_in_picture_window_manager_uma_helper-missing-optional.patch
|
||||
* plugin_utils-build-without-electron_extensions.patch
|
||||
* python3.14-nodedownload-FancyURLopener.patch
|
||||
* raw_ptr-fpermissive.patch
|
||||
* resource_response-Wchanges-meaning.patch
|
||||
* resource-Wchanges-meaning.patch
|
||||
* string-hasher-flax-vector-conversions.patch
|
||||
* string_truncator-convert.patch
|
||||
* style_scope-unqualified-To.patch
|
||||
* system-simdutf.patch
|
||||
* to_vector-std-projected-gcc119888.patch
|
||||
* unexportable_key_service_impl-Wlto-type-mismatch.patch
|
||||
* xml_document_parser-Wmissing-template-keyword.patch
|
||||
- Conditionally revert upstream changes to fix build on 15.6
|
||||
* ffmpeg-4-AV_PROFILE.patch
|
||||
* node-cares-1.21-4.patch
|
||||
* node-nghttp-1.50.patch
|
||||
* v8-highway-1.1.patch
|
||||
- Add patches to fix build errors
|
||||
* angle-BlobCache-Success.patch
|
||||
* llhttp-lax-vector-conversions.patch
|
||||
* masked_domain_list-flatbuffers.patch
|
||||
* node-version-ck.patch
|
||||
* partition_alloc-strict-aliasing.patch
|
||||
* remove-probabilistic-token-which-uses-private-join-and-compute.patch
|
||||
* system-dragonbox.patch
|
||||
- Add patches that should be upstreamed
|
||||
* ANNOTATE_CONTIGUOUS_CONTAINER-Wodr.patch
|
||||
* event_record-optional-initializer.patch
|
||||
* identity_request_account-incomplete-IdentityProviderData.patch
|
||||
* json_to_struct-fixed_flat_map-conflicting-declaration.patch
|
||||
* lock_impl_posix-pthread_mutexattr_setprotocol-conflicting.patch
|
||||
* node-kParentNodeTag-constexpr-initializer.patch
|
||||
* offscreen_canvas-incomplete-LayoutLocale.patch
|
||||
* pickle_traits-kIndexSequence-constexpr-initializer.patch
|
||||
* picture_in_picture_events_info-string-constexpr.patch
|
||||
* sandboxed_vfs_file_impl-missing-memset.patch
|
||||
* v8-simd-flax-vector-conversions.patch
|
||||
* webgl_rendering_context_webgpu_base-incomplete-StaticBitmapImage.patch
|
||||
* webrtc-138-Wchanges-meaning.patch
|
||||
* xr_webgl_swap_chain-incomplete-StaticBitmapImage.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 19 17:11:54 UTC 2025 - Bruno Pitrus <brunopitrus@hotmail.com>
|
||||
|
||||
- New upstream release 35.7.5
|
||||
* Fixed an issue where shell.openPath was not non-blocking as expected.
|
||||
- Leap 16: compile v8 code with x86-64-v2 instructions since the system requires them
|
||||
* v8-assume-x86-64-v2-support.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 13 16:54:43 UTC 2025 - Bruno Pitrus <brunopitrus@hotmail.com>
|
||||
|
||||
- Fix build on Leap 16
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jul 11 17:53:15 UTC 2025 - Bruno Pitrus <brunopitrus@hotmail.com>
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
|
||||
%define mod_name electron
|
||||
# https://github.com/nodejs/node/blob/main/doc/abi_version_registry.json
|
||||
%define abi_version 133
|
||||
%define abi_version 136
|
||||
|
||||
# Do not provide libEGL.so, etc…
|
||||
%define __provides_exclude ^lib.*\\.so.*$
|
||||
@@ -74,31 +74,43 @@ ExcludeArch: %arm
|
||||
|
||||
%bcond_with system_yuv
|
||||
|
||||
#CPU level. Leap 16 requires x86-64-v2 so we may force it inside V8.
|
||||
%if 0%{?suse_version} >= 1550 && 0%{?suse_version} < 1650
|
||||
%bcond_without v2
|
||||
%else
|
||||
%bcond_with v2
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150700 || 0%{?fedora}
|
||||
%bcond_without system_vpx
|
||||
%bcond_without system_aom
|
||||
%bcond_without bro_11
|
||||
%bcond_without ffmpeg_6
|
||||
%bcond_without system_vk_headers
|
||||
%bcond_without spirv_2024
|
||||
%bcond_without cares_21
|
||||
%bcond_without nghttp_50
|
||||
%bcond_without highway_1_1
|
||||
%else
|
||||
%bcond_with system_vpx
|
||||
%bcond_with system_aom
|
||||
%bcond_with bro_11
|
||||
%bcond_with ffmpeg_6
|
||||
%bcond_with system_vk_headers
|
||||
%bcond_with spirv_2024
|
||||
%bcond_with cares_21
|
||||
%bcond_with nghttp_50
|
||||
%bcond_with highway_1_1
|
||||
%endif
|
||||
|
||||
|
||||
|
||||
|
||||
%if 0%{?fedora}
|
||||
%bcond_without system_llhttp
|
||||
|
||||
%bcond_without system_histogram
|
||||
%bcond_without system_simdjson
|
||||
%else
|
||||
%bcond_with system_llhttp
|
||||
%bcond_with system_histogram
|
||||
%bcond_with system_simdjson
|
||||
%endif
|
||||
@@ -111,17 +123,13 @@ ExcludeArch: %arm
|
||||
%endif
|
||||
|
||||
%if 0%{?fedora} >= 43
|
||||
%bcond_without llhttp_93
|
||||
%bcond_without system_llhttp
|
||||
%else
|
||||
%bcond_with llhttp_93
|
||||
%bcond_with system_llhttp
|
||||
%endif
|
||||
|
||||
# requires `base64_options`
|
||||
%if 0%{?fedora} >= 42
|
||||
%bcond_without system_simdutf
|
||||
%else
|
||||
# requires built with `SIMDUTF_ATOMIC_REF`
|
||||
%bcond_with system_simdutf
|
||||
%endif
|
||||
|
||||
%if 0%{?fedora} && 0%{?fedora} < 42
|
||||
%bcond_without system_vma
|
||||
@@ -132,10 +140,8 @@ ExcludeArch: %arm
|
||||
# Some chromium code assumes absl::string_view is a typedef for std::string_view. This is not true on GCC7 systems such as Leap.
|
||||
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150700 || 0%{?fedora}
|
||||
%bcond_without system_abseil
|
||||
%bcond_without aom_38
|
||||
%else
|
||||
%bcond_with system_abseil
|
||||
%bcond_with aom_38
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150700 || 0%{?fedora} >= 41
|
||||
@@ -180,7 +186,7 @@ ExcludeArch: %arm
|
||||
|
||||
|
||||
Name: nodejs-electron
|
||||
Version: 35.7.0
|
||||
Version: 37.3.1
|
||||
%global tag_version %version
|
||||
Release: 0
|
||||
Summary: Build cross platform desktop apps with JavaScript, HTML, and CSS
|
||||
@@ -198,20 +204,20 @@ Source400: ffmpeg-new-channel-layout.patch
|
||||
Source401: audio_file_reader-ffmpeg-AVFrame-duration.patch
|
||||
Source402: Cr122-ffmpeg-new-channel-layout.patch
|
||||
Source403: ffmpeg-7-ffmpeg_video_decoder-reordered_opaque.patch
|
||||
# and against aom 3.9
|
||||
Source410: aom3.10-AV1E_SET_MAX_CONSEC_FRAME_DROP_MS_CBR.patch
|
||||
Source411: aom3.10-AV1E_SET_AUTO_TILES.patch
|
||||
Source412: webrtc-aom3.8-AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR.patch
|
||||
Source413: webrtc-aom3.8-AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR-2.patch
|
||||
Source404: ffmpeg-4-AV_PROFILE.patch
|
||||
# and abseil 2407
|
||||
Source461: webrtc-make_ref_counted-absl2024-nullability.patch
|
||||
# and c-ares 1.19
|
||||
Source470: node-cares-1.21.patch
|
||||
Source471: node-cares-1.21-2.patch
|
||||
Source472: node-cares-1.21-3.patch
|
||||
Source473: node-cares-1.21-4.patch
|
||||
# and spirv 2023
|
||||
Source480: angle-SPV_BINARY_TO_TEXT_OPTION_NESTED_INDENT.patch
|
||||
|
||||
#and nghttp 1.40
|
||||
Source490: node-nghttp-1.50.patch
|
||||
#and highway 1.0
|
||||
Source500: v8-highway-1.1.patch
|
||||
|
||||
|
||||
# PATCHES for openSUSE-specific things (compiler flags, paths, etc.)
|
||||
@@ -237,6 +243,11 @@ Patch97: chromium-127-cargo_crate.patch
|
||||
Patch98: gn-logspam-breaks-install.patch
|
||||
Patch99: torque-debuginfo.patch
|
||||
Patch100: reduce-gn-tree.patch
|
||||
%if %{with v2}
|
||||
Patch101: v8-assume-x86-64-v2-support.patch
|
||||
%else
|
||||
Source101: v8-assume-x86-64-v2-support.patch
|
||||
%endif
|
||||
|
||||
|
||||
# PATCHES that remove code we don't want. Most of them can be reused verbatim by other distributors,
|
||||
@@ -248,7 +259,6 @@ Patch570: disable-fuses.patch
|
||||
# https://code.qt.io/cgit/qt/qtwebengine-chromium.git/commit/?h=102-based&id=d617766b236a93749ddbb50b75573dd35238ffc9
|
||||
Patch573: disable-webspeech.patch
|
||||
# https://sources.debian.org/patches/chromium/108.0.5359.124-1/disable/tests.patch/
|
||||
Patch576: disable-devtools-tests.patch
|
||||
Patch581: disable-tests.patch
|
||||
Patch583: remove-rust.patch
|
||||
Patch585: remove-dawn.patch
|
||||
@@ -258,7 +268,6 @@ Patch589: remove-puffin.patch
|
||||
Patch590: remove-sync.patch
|
||||
Patch592: fix-build-without-supervised-users.patch
|
||||
Patch593: fix-build-without-screen-ai.patch
|
||||
Patch594: build-without-speech-service.patch
|
||||
#patches disabling rust features from Gentoo: https://data.gpo.zugaina.org/pf4public/dev-util/electron/files/
|
||||
Patch595: chromium-123-qrcode.patch
|
||||
Patch596: chromium-130-fontations.patch
|
||||
@@ -266,7 +275,6 @@ Patch597: chromium-125-cloud_authenticator.patch
|
||||
Patch598: chromium-127-crabby.patch
|
||||
Patch599: chromium-132-no-rust.patch
|
||||
#End gentoo patches
|
||||
Patch601: MakeSbixTypeface-null-pointer-call.patch
|
||||
Patch602: remove-ai-language-detection-factory-which-requires-tflite-and-libphonenumber.patch
|
||||
Patch603: build-without-mesage-center.patch
|
||||
Patch604: disable-avif-really.patch
|
||||
@@ -274,6 +282,8 @@ Patch605: permission-gcc14.2.patch
|
||||
Patch606: build-without-extensions.patch
|
||||
Patch607: build-without-guest-view.patch
|
||||
Patch608: vaapi-no-encoders.patch
|
||||
Patch609: remove-probabilistic-token-which-uses-private-join-and-compute.patch
|
||||
Patch610: masked_domain_list-flatbuffers.patch
|
||||
|
||||
|
||||
|
||||
@@ -296,7 +306,6 @@ Patch1072: node-system-icu.patch
|
||||
Patch1073: system-nasm.patch
|
||||
Patch1074: no-zlib-headers.patch
|
||||
Patch1077: system-wayland.patch
|
||||
Patch1078: system-simdutf.patch
|
||||
Patch1079: system-libm.patch
|
||||
Patch1085: webp-no-sharpyuv.patch
|
||||
Patch1086: zip_internal-missing-uLong-Z_DEFAULT_COMPRESSION.patch
|
||||
@@ -308,6 +317,8 @@ Patch1092: fix-system-highway.patch
|
||||
Patch1093: system-sqlite.patch
|
||||
Patch1094: absl_strings-missing-headers.patch
|
||||
Patch1095: system-zstd-in-node.patch
|
||||
Patch1036: node-version-ck.patch
|
||||
Patch1037: system-dragonbox.patch
|
||||
|
||||
|
||||
# PATCHES to fix interaction with third-party software
|
||||
@@ -331,18 +342,14 @@ Patch2059: disable-FFmpegAllowLists.patch
|
||||
Patch2060: chromium-129-disable-H.264-video-parser-during-demuxing.patch
|
||||
Patch2061: private_aggregation_host-uint128.patch
|
||||
Patch2062: wayland_version.patch
|
||||
Patch2063: fix-building-with-pipewire-1.3.82.patch
|
||||
#Conditionably disable feature which requires new highway
|
||||
Patch2064: blink-shape_result-highway.patch
|
||||
%if %{with system_llhttp} && %{with llhttp_93}
|
||||
Patch2065: node-llhttp9.3.patch
|
||||
%else
|
||||
Source2065: node-llhttp9.3.patch
|
||||
%endif
|
||||
#Patch2065: node-llhttp9.3.patch
|
||||
Patch2066: angle-BlobCache-Success.patch
|
||||
Patch2067: partition_alloc-strict-aliasing.patch
|
||||
Patch2068: llhttp-lax-vector-conversions.patch
|
||||
|
||||
# PATCHES that should be submitted upstream verbatim or near-verbatim
|
||||
# Fix blink nodestructor
|
||||
Patch3023: electron-13-blink-gcc-ambiguous-nodestructor.patch
|
||||
Patch3027: electron-16-freetype-visibility-list.patch
|
||||
Patch3028: electron-16-third_party-symbolize-missing-include.patch
|
||||
# From https://git.droidware.info/wchen342/ungoogled-chromium-fedora
|
||||
@@ -352,39 +359,29 @@ Patch3096: remove-date-reproducible-builds.patch
|
||||
Patch3133: swiftshader-llvm18-LLVMReactor-getInt8PtrTy.patch
|
||||
Patch3134: swiftshader-llvm18-LLVMJIT-Host.patch
|
||||
Patch3135: swiftshader-llvm18-LLVMJIT-CodeGenOptLevel.patch
|
||||
Patch3138: distributed_point_functions-aes_128_fixed_key_hash-missing-StrCat.patch
|
||||
Patch3144: mt21_util-flax-vector-conversions.patch
|
||||
Patch3151: distributed_point_functions-evaluate_prg_hwy-signature.patch
|
||||
Patch3174: swiftshader-llvm19-LLVMJIT-getHostCPUFeatures.patch
|
||||
Patch3175: swiftshader-llvm19-LLVMReactor-incomplete-Module.patch
|
||||
Patch3185: bsc1224178-font-gc.patch
|
||||
Patch3186: string_view-incomplete-CodePointIterator.patch
|
||||
Patch3187: swiftshader-llvm20-absoluteSymbols.patch
|
||||
Patch3188: fix-build-without-pdf.patch
|
||||
Patch3189: raw_ptr-fpermissive.patch
|
||||
Patch3190: exception_state-constexpr-initializer.patch
|
||||
Patch3191: resource_response-Wchanges-meaning.patch
|
||||
Patch3192: perfetto-ThreadTrack-Current-null-dereference.patch
|
||||
Patch3193: resource-Wchanges-meaning.patch
|
||||
Patch3194: string_truncator-convert.patch
|
||||
Patch3195: object_paint_properties-explicit-specialization-in-non-namespace-scope.patch
|
||||
Patch3196: css_shape_value-constructor.patch
|
||||
Patch3197: xml_document_parser-Wmissing-template-keyword.patch
|
||||
Patch3198: ax_platform_node_id-fpermissive.patch
|
||||
Patch3199: style_scope-unqualified-To.patch
|
||||
Patch3200: content_browser_client-incomplete-WebUIController.patch
|
||||
Patch3201: fix-build-without-video-effects.patch
|
||||
Patch3202: media_session_uma_helper-missing-optional.patch
|
||||
Patch3203: picture_in_picture_window_manager_uma_helper-missing-optional.patch
|
||||
Patch3204: browser_process_impl-fix-safe_browsing_mode-0.patch
|
||||
Patch3205: plugin_utils-build-without-electron_extensions.patch
|
||||
Patch3206: string-hasher-flax-vector-conversions.patch
|
||||
Patch3207: unexportable_key_service_impl-Wlto-type-mismatch.patch
|
||||
Patch3208: to_vector-std-projected-gcc119888.patch
|
||||
Patch3209: file_dialog-missing-uint32_t.patch
|
||||
Patch3211: html_permission_element_strings_map-reproducible.patch
|
||||
Patch3212: extensions-common-assert.patch
|
||||
Patch3213: python3.14-nodedownload-FancyURLopener.patch
|
||||
Patch3210: webrtc-138-Wchanges-meaning.patch
|
||||
Patch3211: sandboxed_vfs_file_impl-missing-memset.patch
|
||||
Patch3212: lock_impl_posix-pthread_mutexattr_setprotocol-conflicting.patch
|
||||
Patch3213: node-kParentNodeTag-constexpr-initializer.patch
|
||||
Patch3214: pickle_traits-kIndexSequence-constexpr-initializer.patch
|
||||
Patch3215: offscreen_canvas-incomplete-LayoutLocale.patch
|
||||
Patch3216: identity_request_account-incomplete-IdentityProviderData.patch
|
||||
Patch3217: xr_webgl_swap_chain-incomplete-StaticBitmapImage.patch
|
||||
Patch3218: json_to_struct-fixed_flat_map-conflicting-declaration.patch
|
||||
Patch3219: webgl_rendering_context_webgpu_base-incomplete-StaticBitmapImage.patch
|
||||
Patch3220: picture_in_picture_events_info-string-constexpr.patch
|
||||
Patch3221: event_record-optional-initializer.patch
|
||||
Patch3222: ANNOTATE_CONTIGUOUS_CONTAINER-Wodr.patch
|
||||
Patch3223: v8-simd-flax-vector-conversions.patch
|
||||
|
||||
# Patches to re-enable upstream force disabled features.
|
||||
# There's no sense in submitting them but they may be reused as-is by other packagers.
|
||||
@@ -398,6 +395,7 @@ BuildRequires: c-ares-devel >= 1.21
|
||||
BuildRequires: cmake(Crc32c)
|
||||
BuildRequires: double-conversion-devel
|
||||
BuildRequires: desktop-file-utils
|
||||
BuildRequires: dragonbox-devel
|
||||
%if 0%{?fedora}
|
||||
BuildRequires: flatbuffers-compiler
|
||||
%endif
|
||||
@@ -416,21 +414,14 @@ BuildRequires: libatomic
|
||||
%if %{with system_ada}
|
||||
BuildRequires: cmake(ada)
|
||||
%endif
|
||||
%if %{with aom_38}
|
||||
%if %{with system_aom}
|
||||
BuildRequires: libaom-devel >= 3.8~
|
||||
%endif
|
||||
# requires AV1E_SET_QUANTIZER_ONE_PASS
|
||||
BuildRequires: libaom-devel >= 3.7~
|
||||
BuildRequires: libbsd-devel
|
||||
BuildRequires: libpng-devel
|
||||
BuildRequires: libXNVCtrl-devel
|
||||
%if %{with system_llhttp}
|
||||
BuildRequires: llhttp-devel >= 8
|
||||
%if %{with llhttp_93}
|
||||
BuildRequires: llhttp-devel >= 9.3
|
||||
%else
|
||||
BuildRequires: llhttp-devel < 9.3
|
||||
%endif
|
||||
%endif
|
||||
%if %{with swiftshader} && %{without subzero}
|
||||
BuildRequires: llvm-devel >= 16
|
||||
@@ -572,7 +563,15 @@ BuildRequires: pkgconfig(libbrotlienc)
|
||||
BuildRequires: pkgconfig(libcares)
|
||||
BuildRequires: pkgconfig(libcurl)
|
||||
BuildRequires: pkgconfig(libdrm)
|
||||
%if %{with highway_1_1}
|
||||
# requires SumsOf2
|
||||
BuildRequires: pkgconfig(libhwy) >= 1.1
|
||||
%endif
|
||||
BuildRequires: pkgconfig(libhwy) >= 1
|
||||
%if %{with nghttp_50}
|
||||
# needs nghttp2_option_set_no_rfc9113_leading_and_trailing_ws_validation
|
||||
BuildRequires: pkgconfig(libnghttp2) >= 1.50
|
||||
%endif
|
||||
BuildRequires: pkgconfig(libnghttp2)
|
||||
BuildRequires: pkgconfig(libnotify)
|
||||
BuildRequires: pkgconfig(libpci)
|
||||
@@ -638,13 +637,18 @@ BuildRequires: libjpeg-turbo-devel
|
||||
# requires VP9E_SET_QUANTIZER_ONE_PASS
|
||||
BuildRequires: pkgconfig(vpx) >= 1.13~
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150700 || 0%{?fedora}
|
||||
%if 0%{?suse_version} >= 1650 || 0%{?fedora}
|
||||
BuildRequires: gcc >= 14
|
||||
BuildRequires: gcc-c++ >= 14
|
||||
%else
|
||||
%if 0%{?suse_version} >= 1550
|
||||
BuildRequires: gcc15-PIE
|
||||
BuildRequires: gcc15-c++
|
||||
%else
|
||||
BuildRequires: gcc14-PIE
|
||||
BuildRequires: gcc14-c++
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if %{with pipewire}
|
||||
BuildRequires: pkgconfig(libpipewire-0.3)
|
||||
@@ -729,19 +733,14 @@ providing better integration with desktop environments such as KDE.
|
||||
test $(grep ^node_module_version electron/build/args/all.gn | sed 's/.* = //') = %abi_version
|
||||
|
||||
|
||||
#These ones depend on an aom nightly, reverting unconditionally
|
||||
patch -R -p1 < %SOURCE411
|
||||
patch -R -p1 < %SOURCE410
|
||||
|
||||
%if %{without aom_38}
|
||||
patch -R -p1 < %SOURCE412
|
||||
patch -R -p1 < %SOURCE413
|
||||
%endif
|
||||
|
||||
|
||||
%if %{without cares_21}
|
||||
patch -R -p1 < %SOURCE472
|
||||
patch -R -p1 < %SOURCE471
|
||||
patch -R -p1 < %SOURCE470
|
||||
patch -R -p1 < %SOURCE473
|
||||
%endif
|
||||
|
||||
|
||||
@@ -751,12 +750,20 @@ patch -R -p1 < %SOURCE403
|
||||
patch -R -p1 < %SOURCE402
|
||||
patch -R -p1 < %SOURCE400
|
||||
patch -R -p1 < %SOURCE401
|
||||
patch -R -p1 < %SOURCE404
|
||||
%endif
|
||||
|
||||
%if %{without spirv_2024}
|
||||
patch -R -p1 < %SOURCE480
|
||||
%endif
|
||||
|
||||
%if %{without nghttp_50}
|
||||
patch -R -p1 < %SOURCE490
|
||||
%endif
|
||||
|
||||
%if %{without highway_1_1}
|
||||
patch -R -p1 < %SOURCE500
|
||||
%endif
|
||||
|
||||
|
||||
# This one just removes compatibility with old abseil and does not add anything, reverting unconditionally.
|
||||
@@ -807,7 +814,6 @@ gn_system_libraries=(
|
||||
highway
|
||||
icu
|
||||
jsoncpp
|
||||
libaom
|
||||
libdrm
|
||||
libjpeg
|
||||
libpng
|
||||
@@ -855,6 +861,10 @@ gn_system_libraries+=(
|
||||
%endif
|
||||
|
||||
|
||||
%if %{with system_aom}
|
||||
find third_party/libaom -type f ! -name "*.gn" -a ! -name "*.gni" -delete
|
||||
gn_system_libraries+=( libaom )
|
||||
%endif
|
||||
|
||||
|
||||
|
||||
@@ -964,6 +974,12 @@ ARCH_FLAGS="$(echo $ARCH_FLAGS | sed -e 's/ -fexceptions / /g')"
|
||||
|
||||
# for wayland
|
||||
export CXXFLAGS="${ARCH_FLAGS} -I/usr/include/wayland -I/usr/include/libxkbcommon"
|
||||
|
||||
#no pkgconfig, only cmake. add the include path manually
|
||||
%if 0%{?fedora}
|
||||
export CXXFLAGS="${CXXFLAGS} -I$(echo /usr/include/dragonbox-*)"
|
||||
%endif
|
||||
|
||||
export CFLAGS="${CXXFLAGS}"
|
||||
|
||||
# Google has a bad coding style, using a macro `NOTREACHED()` that is not properly detected by GCC
|
||||
@@ -981,6 +997,9 @@ export CXXFLAGS="${CXXFLAGS} -Wno-template-id-cdtor -Wno-non-virtual-dtor"
|
||||
# REDUCE DEBUG for C++ as it gets TOO large due to “heavy hemplate use in Blink”. See symbol_level below and chromium-102-compiler.patch
|
||||
export CXXFLAGS="$(echo ${CXXFLAGS} | sed -e 's/-g / /g' -e 's/-g$//g')"
|
||||
|
||||
#Fix build with abseil < 2025
|
||||
export CXXFLAGS="$CXXFLAGS -Dabsl_nullable= -Dabsl_nonnull= "
|
||||
|
||||
%ifarch %ix86 %arm
|
||||
export CFLAGS="$(echo ${CFLAGS} | sed -e 's/-g /-g1 /g' -e 's/-g$/-g1/g')"
|
||||
%endif
|
||||
@@ -1003,19 +1022,27 @@ export LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
|
||||
%endif #ifarch ix86 arm
|
||||
|
||||
|
||||
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150700 || 0%{?fedora}
|
||||
%if 0%{?suse_version} >= 1650 || 0%{?fedora}
|
||||
export CC=gcc
|
||||
export CXX=g++
|
||||
export AR=gcc-ar
|
||||
export NM=gcc-nm
|
||||
export RANLIB=gcc-ranlib
|
||||
%else
|
||||
%if 0%{?suse_version} >= 1550
|
||||
export CC=gcc-15
|
||||
export CXX=g++-15
|
||||
export AR=gcc-ar-15
|
||||
export NM=gcc-nm-15
|
||||
export RANLIB=gcc-ranlib-15
|
||||
%else
|
||||
export CC=gcc-14
|
||||
export CXX=g++-14
|
||||
export AR=gcc-ar-14
|
||||
export NM=gcc-nm-14
|
||||
export RANLIB=gcc-ranlib-14
|
||||
%endif
|
||||
%endif
|
||||
|
||||
|
||||
|
||||
@@ -1062,6 +1089,8 @@ myconf_gn+=' electron_vendor_version="microsoft-build:Electron for openSUSE"'
|
||||
myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
|
||||
myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
|
||||
myconf_gn+=" use_custom_libcxx=false"
|
||||
myconf_gn+=' use_safe_libstdcxx=false'
|
||||
myconf_gn+=' use_llvm_libatomic=false'
|
||||
%ifarch %ix86
|
||||
myconf_gn+=" host_cpu=\"x86\""
|
||||
%endif
|
||||
@@ -1184,12 +1213,15 @@ myconf_gn+=" enable_vr=false"
|
||||
myconf_gn+=" enable_reporting=false"
|
||||
myconf_gn+=" build_with_tflite_lib=false"
|
||||
myconf_gn+=" build_tflite_with_xnnpack=false"
|
||||
myconf_gn+=' build_tflite_with_opencl=false'
|
||||
myconf_gn+=" safe_browsing_mode=0"
|
||||
myconf_gn+=' safe_browsing_use_unrar=false'
|
||||
myconf_gn+=" enable_captive_portal_detection=false"
|
||||
myconf_gn+=" enable_browser_speech_service=false"
|
||||
myconf_gn+=" enable_speech_service=false"
|
||||
myconf_gn+=" enable_screen_ai_service=false"
|
||||
myconf_gn+=' enable_screen_ai_browsertests=false'
|
||||
myconf_gn+=' enable_constraints=false'
|
||||
myconf_gn+=" include_transport_security_state_preload_list=false"
|
||||
myconf_gn+=" enable_web_speech=false"
|
||||
myconf_gn+=" chrome_wide_echo_cancellation_supported=false"
|
||||
@@ -1229,6 +1261,7 @@ myconf_gn+=' enable_on_device_translation=false'
|
||||
myconf_gn+=' enable_session_service=false'
|
||||
myconf_gn+=' enterprise_client_certificates=false'
|
||||
myconf_gn+=' enterprise_data_controls=false'
|
||||
myconf_gn+=' enterprise_telomere_reporting=false'
|
||||
|
||||
|
||||
|
||||
@@ -1237,8 +1270,10 @@ myconf_gn+=' enterprise_data_controls=false'
|
||||
myconf_gn+=' enable_rust=false'
|
||||
myconf_gn+=' enable_rust_png=false'
|
||||
myconf_gn+=' enable_chromium_prelude=false'
|
||||
myconf_gn+=' rtc_rusty_base64=false'
|
||||
myconf_gn+=' v8_enable_temporal_support=false'
|
||||
|
||||
myconf_gn+=' chrome_root_store_cert_management_ui=false'
|
||||
#myconf_gn+=' chrome_root_store_cert_management_ui=false'
|
||||
myconf_gn+=' use_kerberos=false'
|
||||
|
||||
|
||||
|
||||
@@ -1,99 +0,0 @@
|
||||
--- src/third_party/blink/renderer/core/paint/object_paint_properties.h.orig 2025-04-16 14:36:32.662070096 +0200
|
||||
+++ src/third_party/blink/renderer/core/paint/object_paint_properties.h 2025-04-16 22:12:50.444628128 +0200
|
||||
@@ -174,47 +174,6 @@ class CORE_EXPORT ObjectPaintProperties
|
||||
template <typename NodeType>
|
||||
struct NodeIdRange {};
|
||||
|
||||
- template <>
|
||||
- struct NodeIdRange<PaintPropertyNode> {
|
||||
- static constexpr NodeId kFirst = NodeId::kFirstTransform;
|
||||
- static constexpr NodeId kLast = NodeId::kClipAlias;
|
||||
- };
|
||||
- template <>
|
||||
- struct NodeIdRange<TransformPaintPropertyNodeOrAlias> {
|
||||
- static constexpr NodeId kFirst = NodeId::kFirstTransform;
|
||||
- static constexpr NodeId kLast = NodeId::kTransformAlias;
|
||||
- };
|
||||
- template <>
|
||||
- struct NodeIdRange<TransformPaintPropertyNode> {
|
||||
- static constexpr NodeId kFirst = NodeId::kFirstTransform;
|
||||
- static constexpr NodeId kLast = NodeId::kLastTransform;
|
||||
- };
|
||||
- template <>
|
||||
- struct NodeIdRange<ScrollPaintPropertyNode> {
|
||||
- static constexpr NodeId kFirst = NodeId::kFirstScroll;
|
||||
- static constexpr NodeId kLast = NodeId::kLastScroll;
|
||||
- };
|
||||
- template <>
|
||||
- struct NodeIdRange<EffectPaintPropertyNodeOrAlias> {
|
||||
- static constexpr NodeId kFirst = NodeId::kFirstEffect;
|
||||
- static constexpr NodeId kLast = NodeId::kEffectAlias;
|
||||
- };
|
||||
- template <>
|
||||
- struct NodeIdRange<EffectPaintPropertyNode> {
|
||||
- static constexpr NodeId kFirst = NodeId::kFirstEffect;
|
||||
- static constexpr NodeId kLast = NodeId::kLastEffect;
|
||||
- };
|
||||
- template <>
|
||||
- struct NodeIdRange<ClipPaintPropertyNodeOrAlias> {
|
||||
- static constexpr NodeId kFirst = NodeId::kFirstClip;
|
||||
- static constexpr NodeId kLast = NodeId::kClipAlias;
|
||||
- };
|
||||
- template <>
|
||||
- struct NodeIdRange<ClipPaintPropertyNode> {
|
||||
- static constexpr NodeId kFirst = NodeId::kFirstClip;
|
||||
- static constexpr NodeId kLast = NodeId::kLastClip;
|
||||
- };
|
||||
-
|
||||
public:
|
||||
template <typename NodeType>
|
||||
bool HasNode() const {
|
||||
@@ -579,6 +538,48 @@ class CORE_EXPORT ObjectPaintProperties
|
||||
#endif
|
||||
};
|
||||
|
||||
+template <>
|
||||
+struct ObjectPaintProperties::NodeIdRange<PaintPropertyNode> {
|
||||
+ static constexpr NodeId kFirst = NodeId::kFirstTransform;
|
||||
+ static constexpr NodeId kLast = NodeId::kClipAlias;
|
||||
+};
|
||||
+template <>
|
||||
+struct ObjectPaintProperties::NodeIdRange<TransformPaintPropertyNodeOrAlias> {
|
||||
+ static constexpr NodeId kFirst = NodeId::kFirstTransform;
|
||||
+ static constexpr NodeId kLast = NodeId::kTransformAlias;
|
||||
+};
|
||||
+template <>
|
||||
+struct ObjectPaintProperties::NodeIdRange<TransformPaintPropertyNode> {
|
||||
+ static constexpr NodeId kFirst = NodeId::kFirstTransform;
|
||||
+ static constexpr NodeId kLast = NodeId::kLastTransform;
|
||||
+};
|
||||
+template <>
|
||||
+struct ObjectPaintProperties::NodeIdRange<ScrollPaintPropertyNode> {
|
||||
+ static constexpr NodeId kFirst = NodeId::kFirstScroll;
|
||||
+ static constexpr NodeId kLast = NodeId::kLastScroll;
|
||||
+};
|
||||
+template <>
|
||||
+struct ObjectPaintProperties::NodeIdRange<EffectPaintPropertyNodeOrAlias> {
|
||||
+ static constexpr NodeId kFirst = NodeId::kFirstEffect;
|
||||
+ static constexpr NodeId kLast = NodeId::kEffectAlias;
|
||||
+};
|
||||
+template <>
|
||||
+struct ObjectPaintProperties::NodeIdRange<EffectPaintPropertyNode> {
|
||||
+ static constexpr NodeId kFirst = NodeId::kFirstEffect;
|
||||
+ static constexpr NodeId kLast = NodeId::kLastEffect;
|
||||
+};
|
||||
+template <>
|
||||
+struct ObjectPaintProperties::NodeIdRange<ClipPaintPropertyNodeOrAlias> {
|
||||
+ static constexpr NodeId kFirst = NodeId::kFirstClip;
|
||||
+ static constexpr NodeId kLast = NodeId::kClipAlias;
|
||||
+};
|
||||
+template <>
|
||||
+struct ObjectPaintProperties::NodeIdRange<ClipPaintPropertyNode> {
|
||||
+ static constexpr NodeId kFirst = NodeId::kFirstClip;
|
||||
+ static constexpr NodeId kLast = NodeId::kLastClip;
|
||||
+};
|
||||
+
|
||||
+
|
||||
} // namespace blink
|
||||
|
||||
#endif // THIRD_PARTY_BLINK_RENDERER_CORE_PAINT_OBJECT_PAINT_PROPERTIES_H_
|
||||
10
offscreen_canvas-incomplete-LayoutLocale.patch
Normal file
10
offscreen_canvas-incomplete-LayoutLocale.patch
Normal file
@@ -0,0 +1,10 @@
|
||||
--- src/third_party/blink/renderer/core/offscreencanvas/offscreen_canvas.h.orig 2025-08-15 17:32:29.249405113 +0200
|
||||
+++ src/third_party/blink/renderer/core/offscreencanvas/offscreen_canvas.h 2025-08-16 00:00:02.342263133 +0200
|
||||
@@ -23,6 +23,7 @@
|
||||
#include "third_party/blink/renderer/platform/graphics/dom_node_id.h"
|
||||
#include "third_party/blink/renderer/platform/heap/garbage_collected.h"
|
||||
#include "third_party/blink/renderer/platform/heap/prefinalizer.h"
|
||||
+#include "third_party/blink/renderer/platform/text/layout_locale.h"
|
||||
#include "ui/gfx/geometry/size.h"
|
||||
|
||||
namespace blink {
|
||||
51
partition_alloc-strict-aliasing.patch
Normal file
51
partition_alloc-strict-aliasing.patch
Normal file
@@ -0,0 +1,51 @@
|
||||
#0 partition_alloc::internal::SlotSpanMetadata<(partition_alloc::internal::MetadataKind)0>::Free(unsigned long, partition_alloc::PartitionRoot*)::{lambda()#1}::operator()() const (__closure=<optimized out>, __closure=<optimized out>)
|
||||
at ../../base/allocator/partition_allocator/src/partition_alloc/partition_page.h:805
|
||||
#1 partition_alloc::internal::SlotSpanMetadata<(partition_alloc::internal::MetadataKind)0>::Free (this=<optimized out>, slot_start=<optimized out>,
|
||||
root=<optimized out>, this=<optimized out>, slot_start=<optimized out>, root=<optimized out>)
|
||||
at ../../base/allocator/partition_allocator/src/partition_alloc/partition_page.h:805
|
||||
#2 partition_alloc::PartitionRoot::FreeInSlotSpan (this=<optimized out>, slot_start=<optimized out>, slot_span=<optimized out>, this=<optimized out>,
|
||||
slot_start=<optimized out>, slot_span=<optimized out>) at ../../base/allocator/partition_allocator/src/partition_alloc/partition_root.h:1607
|
||||
#3 partition_alloc::PartitionRoot::RawFree (this=<optimized out>, slot_start=<optimized out>, slot_span=<optimized out>, this=<optimized out>,
|
||||
slot_start=<optimized out>, slot_span=<optimized out>) at ../../base/allocator/partition_allocator/src/partition_alloc/partition_root.h:1673
|
||||
#4 partition_alloc::PartitionRoot::RawFreeWithThreadCache (this=<optimized out>, slot_start=<optimized out>, slot_start_ptr=<optimized out>,
|
||||
slot_span=<optimized out>, this=<optimized out>, slot_start=<optimized out>, slot_start_ptr=<optimized out>, slot_span=<optimized out>)
|
||||
at ../../base/allocator/partition_allocator/src/partition_alloc/partition_root.h:1740
|
||||
#5 partition_alloc::PartitionRoot::FreeNoHooksImmediate (this=<optimized out>, object=<optimized out>, slot_span=<optimized out>,
|
||||
slot_start=<optimized out>, this=<optimized out>, object=<optimized out>, slot_span=<optimized out>, slot_start=<optimized out>)
|
||||
at ../../base/allocator/partition_allocator/src/partition_alloc/partition_root.h:1598
|
||||
#6 partition_alloc::PartitionRoot::FreeInline<(partition_alloc::internal::FreeFlags)2> (this=<optimized out>, object=<optimized out>,
|
||||
this=<optimized out>, object=<optimized out>) at ../../base/allocator/partition_allocator/src/partition_alloc/partition_root.h:1514
|
||||
#7 partition_alloc::PartitionRoot::FreeInlineInUnknownRoot<(partition_alloc::internal::FreeFlags)2> (object=0x5a000024fa0)
|
||||
at ../../base/allocator/partition_allocator/src/partition_alloc/partition_root.h:1446
|
||||
#8 allocator_shim::internal::PartitionAllocFunctionsInternal<(partition_alloc::internal::AllocFlags)16, (partition_alloc::internal::FreeFlags)2>::Free (
|
||||
object=0x5a000024fa0, context=<optimized out>)
|
||||
at ../../base/allocator/partition_allocator/src/partition_alloc/shim/allocator_shim_default_dispatch_to_partition_alloc.cc:434
|
||||
#9 0x0000555555561755 in std::__new_allocator<char>::deallocate (this=0x7fffffffdb10, __p=<optimized out>, __n=<optimized out>)
|
||||
at /usr/include/c++/15/bits/new_allocator.h:172
|
||||
#10 std::allocator<char>::deallocate (this=0x7fffffffdb10, __p=<optimized out>, __n=<optimized out>) at /usr/include/c++/15/bits/allocator.h:215
|
||||
#11 std::allocator_traits<std::allocator<char> >::deallocate (__a=..., __p=<optimized out>, __n=<optimized out>)
|
||||
at /usr/include/c++/15/bits/alloc_traits.h:649
|
||||
#12 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_destroy (this=0x7fffffffdb10, __size=<optimized out>)
|
||||
at /usr/include/c++/15/bits/basic_string.h:305
|
||||
#13 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_dispose (this=0x7fffffffdb10)
|
||||
at /usr/include/c++/15/bits/basic_string.h:299
|
||||
#14 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string (this=<optimized out>, this=<optimized out>)
|
||||
at /usr/include/c++/15/bits/basic_string.h:896
|
||||
#15 base::CommandLine::AppendSwitchesAndArguments (this=<optimized out>, argv=...) at ../../base/command_line.cc:657
|
||||
#16 base::CommandLine::InitFromArgv (this=<optimized out>, argv=...) at ../../base/command_line.cc:333
|
||||
#17 base::CommandLine::InitFromArgv (this=<optimized out>, argc=<optimized out>, argv=<optimized out>) at ../../base/command_line.cc:324
|
||||
#18 base::CommandLine::Init (argc=<optimized out>, argv=<optimized out>) at ../../base/command_line.cc:275
|
||||
#19 base::CommandLine::Init (argc=<optimized out>, argv=<optimized out>) at ../../base/command_line.cc:262
|
||||
#20 main (argc=<optimized out>, argv=<optimized out>) at ../../components/url_formatter/spoof_checks/top_domains/top_domain_generator.cc:88
|
||||
|
||||
|
||||
--- src/base/allocator/partition_allocator/src/partition_alloc/BUILD.gn.orig 2025-08-15 17:32:21.517406564 +0200
|
||||
+++ src/base/allocator/partition_allocator/src/partition_alloc/BUILD.gn 2025-08-16 16:11:37.214993083 +0200
|
||||
@@ -266,6 +266,7 @@ if (is_clang_or_gcc) {
|
||||
config("partition_alloc_implementation") {
|
||||
# See also: `partition_alloc_base/component_export.h`
|
||||
defines = [ "IS_PARTITION_ALLOC_IMPL" ]
|
||||
+ cflags = ["-fno-strict-aliasing"]
|
||||
}
|
||||
|
||||
config("partition_alloc_base_implementation") {
|
||||
@@ -1,42 +0,0 @@
|
||||
#Otherwise mksnapshot crashes
|
||||
#0 perfetto::ThreadTrack::Current () at ../../third_party/perfetto/src/tracing/track.cc:105
|
||||
#1 0x0000555555815084 in v8::internal::GCTracer::GCTracer () at ../../v8/src/heap/gc-tracer.cc:184
|
||||
#2 v8::internal::Heap::SetUpSpaces (this=0x555557507788, new_allocation_info=..., old_allocation_info=...) at ../../v8/src/heap/heap.cc:5788
|
||||
#3 0x000055555704895b in v8::internal::Isolate::Init(v8::internal::SnapshotData*, v8::internal::SnapshotData*, v8::internal::SnapshotData*, bool) [clone .isra.0] () at ../../v8/src/execution/isolate.cc:5556
|
||||
#4 0x0000555555b51ad3 in v8::internal::Isolate::InitWithoutSnapshot () at ../../v8/src/execution/isolate.cc:5184
|
||||
#5 v8::internal::SnapshotCreatorImpl::InitInternal (this=0x55555750c130, blob=0x0) at ../../v8/src/snapshot/snapshot.cc:868
|
||||
#6 0x0000555555654b15 in v8::internal::SnapshotCreatorImpl::SnapshotCreatorImpl () at ../../v8/src/snapshot/snapshot.cc:929
|
||||
#7 v8::SnapshotCreator::SnapshotCreator () at ../../v8/src/api/api.cc:552
|
||||
#8 main (argc=1465209528, argv=0x3ff0000000000000) at ../../v8/src/snapshot/mksnapshot.cc:298
|
||||
|
||||
|
||||
--- src/third_party/perfetto/src/tracing/internal/tracing_muxer_fake.h.orig 2025-04-16 14:38:49.066064367 +0200
|
||||
+++ src/third_party/perfetto/src/tracing/internal/tracing_muxer_fake.h 2025-04-16 21:06:46.592994525 +0200
|
||||
@@ -44,11 +44,7 @@ class TracingMuxerFake : public TracingM
|
||||
~TracingMuxerFake() override;
|
||||
|
||||
static constexpr TracingMuxerFake* Get() {
|
||||
-#if PERFETTO_HAS_NO_DESTROY()
|
||||
return &instance;
|
||||
-#else
|
||||
- return nullptr;
|
||||
-#endif
|
||||
}
|
||||
|
||||
// TracingMuxer implementation.
|
||||
--- src/third_party/perfetto/src/tracing/internal/tracing_muxer_fake.cc.orig 2025-04-16 14:38:49.066064367 +0200
|
||||
+++ src/third_party/perfetto/src/tracing/internal/tracing_muxer_fake.cc 2025-04-16 21:13:09.044959936 +0200
|
||||
@@ -27,13 +27,11 @@ PERFETTO_NORETURN void FailUninitialized
|
||||
|
||||
} // namespace
|
||||
|
||||
-#if PERFETTO_HAS_NO_DESTROY()
|
||||
// static
|
||||
PERFETTO_NO_DESTROY TracingMuxerFake::FakePlatform
|
||||
TracingMuxerFake::FakePlatform::instance{};
|
||||
// static
|
||||
PERFETTO_NO_DESTROY TracingMuxerFake TracingMuxerFake::instance{};
|
||||
-#endif // PERFETTO_HAS_NO_DESTROY()
|
||||
|
||||
TracingMuxerFake::~TracingMuxerFake() = default;
|
||||
|
||||
11
pickle_traits-kIndexSequence-constexpr-initializer.patch
Normal file
11
pickle_traits-kIndexSequence-constexpr-initializer.patch
Normal file
@@ -0,0 +1,11 @@
|
||||
--- src/net/base/pickle_traits.h.orig 2025-08-15 17:32:28.209405309 +0200
|
||||
+++ src/net/base/pickle_traits.h 2025-08-15 23:39:04.010398326 +0200
|
||||
@@ -563,7 +563,7 @@ struct PickleTraits<T> {
|
||||
}
|
||||
|
||||
static constexpr std::make_index_sequence<std::tuple_size_v<T>>
|
||||
- kIndexSequence;
|
||||
+ kIndexSequence {};
|
||||
};
|
||||
|
||||
// bool is treated specially by base::Pickle.
|
||||
19
picture_in_picture_events_info-string-constexpr.patch
Normal file
19
picture_in_picture_events_info-string-constexpr.patch
Normal file
@@ -0,0 +1,19 @@
|
||||
--- src/media/base/picture_in_picture_events_info.cc.orig 2025-08-15 17:32:27.805405385 +0200
|
||||
+++ src/media/base/picture_in_picture_events_info.cc 2025-08-16 10:13:19.526480207 +0200
|
||||
@@ -5,6 +5,7 @@
|
||||
#include "media/base/picture_in_picture_events_info.h"
|
||||
|
||||
#include <string>
|
||||
+#include <string_view>
|
||||
|
||||
#include "base/notreached.h"
|
||||
#include "base/strings/stringprintf.h"
|
||||
@@ -34,7 +35,7 @@ std::string PictureInPictureEventsInfo::
|
||||
// static
|
||||
std::string PictureInPictureEventsInfo::AutoPipInfoToString(
|
||||
AutoPipInfo auto_pip_info) {
|
||||
- constexpr std::array<std::string, 2> bool_to_string{"false", "true"};
|
||||
+ constexpr std::array<std::string_view, 2> bool_to_string{"false", "true"};
|
||||
return base::StringPrintf(
|
||||
"{reason: %s, has audio focus: %s, is_playing: %s, was recently audible: "
|
||||
"%s, has safe url: %s, meets media engagement conditions: %s, blocked "
|
||||
@@ -1,35 +0,0 @@
|
||||
From 1e7508ce083f6c7e43011f899faf10537a6379e2 Mon Sep 17 00:00:00 2001
|
||||
From: Ivan Murashov <ivan.murashov@lge.com>
|
||||
Date: Thu, 20 Feb 2025 10:37:19 -0800
|
||||
Subject: [PATCH] IWYU: Add missing include for std::optional usage in
|
||||
picture_in_picture_window_manager_uma_helper.h
|
||||
|
||||
In the CL https://crrev.com/c/6191230 used std::optional in the
|
||||
chrome/browser/picture_in_picture/picture_in_picture_window_manager_uma_helper.h,
|
||||
but corresponding include was missed.
|
||||
Added missing include for std::optional usage.
|
||||
|
||||
Bug: 41455655
|
||||
Change-Id: I70f67c4a06481875d4602b16a97532cdad2a63b0
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6275068
|
||||
Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org>
|
||||
Commit-Queue: Ivan Murashov <ivan.murashov@lge.com>
|
||||
Reviewed-by: Tommy Steimel <steimel@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#1422669}
|
||||
---
|
||||
.../picture_in_picture_window_manager_uma_helper.h | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/chrome/browser/picture_in_picture/picture_in_picture_window_manager_uma_helper.h b/chrome/browser/picture_in_picture/picture_in_picture_window_manager_uma_helper.h
|
||||
index cb826fc5a20598..866670224c8a38 100644
|
||||
--- a/chrome/browser/picture_in_picture/picture_in_picture_window_manager_uma_helper.h
|
||||
+++ b/chrome/browser/picture_in_picture/picture_in_picture_window_manager_uma_helper.h
|
||||
@@ -5,6 +5,8 @@
|
||||
#ifndef CHROME_BROWSER_PICTURE_IN_PICTURE_PICTURE_IN_PICTURE_WINDOW_MANAGER_UMA_HELPER_H_
|
||||
#define CHROME_BROWSER_PICTURE_IN_PICTURE_PICTURE_IN_PICTURE_WINDOW_MANAGER_UMA_HELPER_H_
|
||||
|
||||
+#include <optional>
|
||||
+
|
||||
#include "base/memory/raw_ptr.h"
|
||||
#include "base/time/clock.h"
|
||||
#include "base/time/time.h"
|
||||
@@ -1,20 +0,0 @@
|
||||
--- src/electron/shell/browser/plugins/plugin_utils.cc.orig 2025-04-16 14:34:09.220241915 +0200
|
||||
+++ src/electron/shell/browser/plugins/plugin_utils.cc 2025-04-18 21:59:05.472058588 +0200
|
||||
@@ -33,6 +33,8 @@ std::string PluginUtils::GetExtensionIdF
|
||||
base::flat_map<std::string, std::string>
|
||||
PluginUtils::GetMimeTypeToExtensionIdMap(
|
||||
content::BrowserContext* browser_context) {
|
||||
+ base::flat_map<std::string, std::string> mime_type_to_extension_id_map;
|
||||
+
|
||||
#if BUILDFLAG(ENABLE_ELECTRON_EXTENSIONS)
|
||||
const auto& allowed_extension_ids = MimeTypesHandler::GetMIMETypeAllowlist();
|
||||
if (allowed_extension_ids.empty())
|
||||
@@ -41,8 +43,6 @@ PluginUtils::GetMimeTypeToExtensionIdMap
|
||||
const extensions::ExtensionSet& enabled_extensions =
|
||||
extensions::ExtensionRegistry::Get(browser_context)->enabled_extensions();
|
||||
|
||||
- base::flat_map<std::string, std::string> mime_type_to_extension_id_map;
|
||||
-
|
||||
// Go through the white-listed extensions and try to use them to intercept
|
||||
// the URL request.
|
||||
for (const std::string& id : allowed_extension_ids) {
|
||||
@@ -21,17 +21,17 @@ In file included from /usr/include/c++/14/string:49,
|
||||
143 | absl::uint128 bucket;
|
||||
| ^~~~~~
|
||||
|
||||
--- src/content/browser/private_aggregation/private_aggregation_pending_contributions.h.orig 2025-04-16 14:36:28.649070859 +0200
|
||||
+++ src/content/browser/private_aggregation/private_aggregation_pending_contributions.h 2025-04-17 16:33:05.731832452 +0200
|
||||
@@ -11,7 +11,6 @@
|
||||
#include <vector>
|
||||
|
||||
--- src/content/browser/private_aggregation/private_aggregation_pending_contributions.h.orig 2025-08-15 17:32:26.465405636 +0200
|
||||
+++ src/content/browser/private_aggregation/private_aggregation_pending_contributions.h 2025-08-16 09:29:24.094983368 +0200
|
||||
@@ -18,7 +18,6 @@
|
||||
#include "base/numerics/safe_conversions.h"
|
||||
#include "content/browser/private_aggregation/private_aggregation_budgeter.h"
|
||||
#include "content/common/content_export.h"
|
||||
-#include "third_party/abseil-cpp/absl/numeric/int128.h"
|
||||
#include "third_party/abseil-cpp/absl/types/variant.h"
|
||||
#include "third_party/blink/public/mojom/aggregation_service/aggregatable_report.mojom.h"
|
||||
#include "third_party/blink/public/mojom/private_aggregation/private_aggregation_host.mojom.h"
|
||||
|
||||
@@ -41,7 +40,7 @@ class CONTENT_EXPORT PrivateAggregationP
|
||||
@@ -53,7 +52,7 @@ class CONTENT_EXPORT PrivateAggregationP
|
||||
|
||||
auto operator<=>(const ContributionMergeKey& a) const = default;
|
||||
|
||||
|
||||
@@ -1,58 +0,0 @@
|
||||
From dfcb824ae3e7752abf3c809a3f226cb21dd2187a Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Lum=C3=ADr=20=27Frenzy=27=20Balhar?=
|
||||
<frenzy.madness@gmail.com>
|
||||
Date: Sun, 22 Jun 2025 07:49:14 +0200
|
||||
Subject: [PATCH] tools: make nodedownload module compatible with Python 3.14
|
||||
|
||||
FancyURLopener and URLopener have been deprecated since
|
||||
Python 3.3 and they are removed completely from 3.14.
|
||||
|
||||
Fixes: https://github.com/nodejs/node/issues/58740
|
||||
PR-URL: https://github.com/nodejs/node/pull/58752
|
||||
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
|
||||
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
|
||||
Reviewed-By: James M Snell <jasnell@gmail.com>
|
||||
---
|
||||
tools/configure.d/nodedownload.py | 15 +++++----------
|
||||
1 file changed, 5 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/tools/configure.d/nodedownload.py b/tools/configure.d/nodedownload.py
|
||||
index 4f144e0e4b406c..0d65c33606b853 100644
|
||||
--- a/third_party/electron_node/tools/configure.d/nodedownload.py
|
||||
+++ b/third_party/electron_node/tools/configure.d/nodedownload.py
|
||||
@@ -7,10 +7,7 @@
|
||||
import zipfile
|
||||
import tarfile
|
||||
import contextlib
|
||||
-try:
|
||||
- from urllib.request import FancyURLopener, URLopener
|
||||
-except ImportError:
|
||||
- from urllib import FancyURLopener, URLopener
|
||||
+from urllib.request import build_opener, install_opener, urlretrieve
|
||||
|
||||
def formatSize(amt):
|
||||
"""Format a size as a string in MB"""
|
||||
@@ -21,11 +18,6 @@ def spin(c):
|
||||
spin = ".:|'"
|
||||
return (spin[c % len(spin)])
|
||||
|
||||
-class ConfigOpener(FancyURLopener):
|
||||
- """fancy opener used by retrievefile. Set a UA"""
|
||||
- # append to existing version (UA)
|
||||
- version = '%s node.js/configure' % URLopener.version
|
||||
-
|
||||
def reporthook(count, size, total):
|
||||
"""internal hook used by retrievefile"""
|
||||
sys.stdout.write(' Fetch: %c %sMB total, %sMB downloaded \r' %
|
||||
@@ -38,7 +30,10 @@ def retrievefile(url, targetfile):
|
||||
try:
|
||||
sys.stdout.write(' <%s>\nConnecting...\r' % url)
|
||||
sys.stdout.flush()
|
||||
- ConfigOpener().retrieve(url, targetfile, reporthook=reporthook)
|
||||
+ opener = build_opener()
|
||||
+ opener.addheaders = [('User-agent', f'Python-urllib/{sys.version_info.major}.{sys.version_info.minor} node.js/configure')]
|
||||
+ install_opener(opener)
|
||||
+ urlretrieve(url, targetfile, reporthook=reporthook)
|
||||
print('') # clear the line
|
||||
return targetfile
|
||||
except IOError as err:
|
||||
@@ -1,48 +0,0 @@
|
||||
From f12e128221d2011c57448032d67309da94f55dde Mon Sep 17 00:00:00 2001
|
||||
From: Marshall Greenblatt <marshall@chromium.org>
|
||||
Date: Thu, 13 Feb 2025 17:47:09 -0800
|
||||
Subject: [PATCH] Fix extra qualification on member 'basic_common_reference'
|
||||
|
||||
Fixes the following errors when building on Windows with
|
||||
use_custom_libcxx=false.
|
||||
|
||||
In file included from ../..\base/memory/raw_ptr.h:11:
|
||||
../../base/allocator/partition_allocator/src\partition_alloc/pointers/raw_ptr.h(1274,13): error: extra qualification on member 'basic_common_reference' [-Werror,-Wextra-qualification]
|
||||
1274 | struct std::basic_common_reference<raw_ptr<T, Traits>, T*, TQ, UQ> {
|
||||
| ^
|
||||
../../base/allocator/partition_allocator/src\partition_alloc/pointers/raw_ptr.h(1284,13): error: extra qualification on member 'basic_common_reference' [-Werror,-Wextra-qualification]
|
||||
1284 | struct std::basic_common_reference<T*, raw_ptr<T, Traits>, TQ, UQ> {
|
||||
| ^
|
||||
2 errors generated.
|
||||
|
||||
Change-Id: I86f92b206fdcba8d0e820c7a625e1c28518f02a0
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6265643
|
||||
Commit-Queue: Peter Kasting <pkasting@chromium.org>
|
||||
Reviewed-by: Peter Kasting <pkasting@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#1420246}
|
||||
---
|
||||
.../src/partition_alloc/pointers/raw_ptr.h | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr.h b/base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr.h
|
||||
index c3ac11523410fb..2a3d3bc4d1f342 100644
|
||||
--- a/base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr.h
|
||||
+++ b/base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr.h
|
||||
@@ -1271,7 +1271,7 @@ template <typename T,
|
||||
typename TQ,
|
||||
template <typename>
|
||||
typename UQ>
|
||||
-struct std::basic_common_reference<raw_ptr<T, Traits>, T*, TQ, UQ> {
|
||||
+struct basic_common_reference<raw_ptr<T, Traits>, T*, TQ, UQ> {
|
||||
using type = T*;
|
||||
};
|
||||
|
||||
@@ -1281,7 +1281,7 @@ template <typename T,
|
||||
typename TQ,
|
||||
template <typename>
|
||||
typename UQ>
|
||||
-struct std::basic_common_reference<T*, raw_ptr<T, Traits>, TQ, UQ> {
|
||||
+struct basic_common_reference<T*, raw_ptr<T, Traits>, TQ, UQ> {
|
||||
using type = T*;
|
||||
};
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
Run gn starting at only the targets we want to build (//electron:blah), not at (//...) to avoid hitting asserts in dead code.
|
||||
This makes this overriden build argument dead code which causes a warning during `gen` and more importantly `desc`. Remove it.
|
||||
|
||||
--- src/electron/build/args/all.gn 2025-05-22 20:03:50.586242102 +0200
|
||||
+++ src/electron/build/args/all.gn 2025-05-22 21:32:07.485697337 +0200
|
||||
--- src/electron/build/args/all.gn.orig 2025-07-19 11:30:22.309996384 +0200
|
||||
+++ src/electron/build/args/all.gn 2025-07-19 16:27:55.565670609 +0200
|
||||
@@ -1,5 +1,4 @@
|
||||
is_electron_build = true
|
||||
-root_extra_deps = [ "//electron" ]
|
||||
|
||||
# Registry of NMVs --> https://github.com/nodejs/node/blob/main/doc/abi_version_registry.json
|
||||
node_module_version = 133
|
||||
node_module_version = 136
|
||||
|
||||
All gn list calls must be also fixed because otherwise they fail just as gn gen does
|
||||
|
||||
|
||||
@@ -1,96 +1,60 @@
|
||||
--- src/third_party/blink/renderer/modules/ai/ai.cc.orig 2025-04-16 14:36:32.771242661 +0200
|
||||
+++ src/third_party/blink/renderer/modules/ai/ai.cc 2025-04-17 16:44:52.883833032 +0200
|
||||
@@ -30,7 +30,6 @@ void AI::Trace(Visitor* visitor) const {
|
||||
visitor->Trace(ai_summarizer_factory_);
|
||||
visitor->Trace(ai_writer_factory_);
|
||||
visitor->Trace(ai_rewriter_factory_);
|
||||
- visitor->Trace(ai_language_detector_factory_);
|
||||
visitor->Trace(ai_translator_factory_);
|
||||
}
|
||||
|
||||
@@ -78,15 +77,6 @@ AIRewriterFactory* AI::rewriter() {
|
||||
return ai_rewriter_factory_.Get();
|
||||
}
|
||||
|
||||
-AILanguageDetectorFactory* AI::languageDetector() {
|
||||
- if (!ai_language_detector_factory_) {
|
||||
- ai_language_detector_factory_ =
|
||||
- MakeGarbageCollected<AILanguageDetectorFactory>(GetExecutionContext(),
|
||||
- task_runner_);
|
||||
- }
|
||||
- return ai_language_detector_factory_.Get();
|
||||
-}
|
||||
-
|
||||
AITranslatorFactory* AI::translator() {
|
||||
if (!ai_translator_factory_) {
|
||||
ai_translator_factory_ =
|
||||
--- src/third_party/blink/renderer/modules/ai/ai.h.orig 2025-04-16 14:36:32.771242661 +0200
|
||||
+++ src/third_party/blink/renderer/modules/ai/ai.h 2025-04-17 16:45:08.367832844 +0200
|
||||
@@ -10,7 +10,6 @@
|
||||
#include "third_party/blink/public/mojom/ai/ai_manager.mojom-blink.h"
|
||||
#include "third_party/blink/renderer/core/execution_context/execution_context.h"
|
||||
#include "third_party/blink/renderer/core/execution_context/execution_context_lifecycle_observer.h"
|
||||
-#include "third_party/blink/renderer/modules/ai/on_device_translation/ai_language_detector_factory.h"
|
||||
#include "third_party/blink/renderer/modules/ai/on_device_translation/ai_translator_factory.h"
|
||||
#include "third_party/blink/renderer/platform/bindings/script_wrappable.h"
|
||||
#include "third_party/blink/renderer/platform/mojo/heap_mojo_remote.h"
|
||||
@@ -37,7 +36,6 @@ class AI final : public ScriptWrappable,
|
||||
AISummarizerFactory* summarizer();
|
||||
AIRewriterFactory* rewriter();
|
||||
AIWriterFactory* writer();
|
||||
- AILanguageDetectorFactory* languageDetector();
|
||||
AITranslatorFactory* translator();
|
||||
|
||||
HeapMojoRemote<mojom::blink::AIManager>& GetAIRemote();
|
||||
@@ -51,7 +49,6 @@ class AI final : public ScriptWrappable,
|
||||
Member<AISummarizerFactory> ai_summarizer_factory_;
|
||||
Member<AIWriterFactory> ai_writer_factory_;
|
||||
Member<AIRewriterFactory> ai_rewriter_factory_;
|
||||
- Member<AILanguageDetectorFactory> ai_language_detector_factory_;
|
||||
Member<AITranslatorFactory> ai_translator_factory_;
|
||||
};
|
||||
|
||||
--- src/third_party/blink/renderer/modules/ai/ai.idl 2025-04-16 14:36:32.771242661 +0200
|
||||
+++ src/third_party/blink/renderer/modules/ai/ai.idl 2025-04-18 13:52:33.485440478 +0200
|
||||
@@ -40,11 +40,6 @@ interface AI {
|
||||
readonly attribute AIRewriterFactory rewriter;
|
||||
|
||||
[
|
||||
- RuntimeEnabled=LanguageDetectionAPI
|
||||
- ]
|
||||
- readonly attribute AILanguageDetectorFactory languageDetector;
|
||||
-
|
||||
- [
|
||||
RuntimeEnabled=TranslationAPI
|
||||
]
|
||||
readonly attribute AITranslatorFactory translator;
|
||||
--- src/third_party/blink/renderer/modules/ai/BUILD.gn 2025-04-16 14:36:32.771172881 +0200
|
||||
+++ src/third_party/blink/renderer/modules/ai/BUILD.gn 2025-04-18 21:41:05.606552171 +0200
|
||||
@@ -41,16 +41,8 @@ blink_modules_sources("ai") {
|
||||
--- src/third_party/blink/renderer/modules/ai/BUILD.gn.orig 2025-08-15 17:32:29.337405097 +0200
|
||||
+++ src/third_party/blink/renderer/modules/ai/BUILD.gn 2025-08-16 17:57:26.885671869 +0200
|
||||
@@ -7,45 +7,19 @@ import("//third_party/blink/renderer/mod
|
||||
blink_modules_sources("ai") {
|
||||
sources = [
|
||||
"ai_context_observer.h",
|
||||
- "ai_interface_proxy.cc",
|
||||
- "ai_interface_proxy.h",
|
||||
"ai_metrics.cc",
|
||||
"ai_metrics.h",
|
||||
- "ai_utils.cc",
|
||||
- "ai_utils.h",
|
||||
"ai_writing_assistance_base.h",
|
||||
"ai_writing_assistance_create_client.h",
|
||||
"availability.cc",
|
||||
"availability.h",
|
||||
- "create_monitor.cc",
|
||||
- "create_monitor.h",
|
||||
"exception_helpers.cc",
|
||||
"exception_helpers.h",
|
||||
- "language_model.cc",
|
||||
- "language_model.h",
|
||||
- "language_model_create_client.cc",
|
||||
- "language_model_create_client.h",
|
||||
"language_model_params.cc",
|
||||
"language_model_params.h",
|
||||
- "language_model_prompt_builder.cc",
|
||||
- "language_model_prompt_builder.h",
|
||||
"model_execution_responder.cc",
|
||||
"model_execution_responder.h",
|
||||
- "on_device_translation/ai_language_detector.cc",
|
||||
- "on_device_translation/ai_language_detector.h",
|
||||
- "on_device_translation/ai_language_detector_capabilities.cc",
|
||||
- "on_device_translation/ai_language_detector_capabilities.h",
|
||||
- "on_device_translation/ai_language_detector_factory.cc",
|
||||
- "on_device_translation/ai_language_detector_factory.h",
|
||||
"on_device_translation/ai_translator.cc",
|
||||
"on_device_translation/ai_translator.h",
|
||||
- "on_device_translation/ai_translator_capabilities.cc",
|
||||
- "on_device_translation/ai_translator_capabilities.h",
|
||||
"on_device_translation/ai_translator_factory.cc",
|
||||
"on_device_translation/ai_translator_factory.h",
|
||||
- "on_device_translation/create_translator_client.cc",
|
||||
- "on_device_translation/create_translator_client.h",
|
||||
- "on_device_translation/language_detector.cc",
|
||||
- "on_device_translation/language_detector.h",
|
||||
"on_device_translation/resolver_with_abort_signal.h",
|
||||
- "on_device_translation/translator.cc",
|
||||
- "on_device_translation/translator.h",
|
||||
- "proofreader.cc",
|
||||
- "proofreader.h",
|
||||
- "rewriter.cc",
|
||||
- "rewriter.h",
|
||||
- "summarizer.cc",
|
||||
- "summarizer.h",
|
||||
- "writer.cc",
|
||||
- "writer.h",
|
||||
]
|
||||
@@ -60,7 +52,5 @@ blink_modules_sources("ai") {
|
||||
|
||||
public_deps = [ "//third_party/blink/public/mojom:mojom_modules_blink" ]
|
||||
@@ -53,8 +27,6 @@ blink_modules_sources("ai") {
|
||||
deps = [
|
||||
"//components/language_detection/content/common",
|
||||
"//components/language_detection/content/common:common_blink",
|
||||
- "//components/language_detection/content/renderer",
|
||||
- "//components/language_detection/core",
|
||||
"//third_party/blink/renderer/modules/canvas",
|
||||
"//third_party/blink/renderer/modules/webaudio",
|
||||
]
|
||||
}
|
||||
--- src/third_party/blink/renderer/platform/BUILD.gn.orig 2025-04-12 14:33:45.435739667 +0200
|
||||
+++ src/third_party/blink/renderer/platform/BUILD.gn 2025-04-12 15:58:59.809440918 +0200
|
||||
@@ -1239,8 +1239,6 @@ component("platform") {
|
||||
@@ -124,136 +88,227 @@
|
||||
"//third_party/metrics_proto",
|
||||
"//url",
|
||||
]
|
||||
--- src/third_party/blink/renderer/modules/BUILD.gn 2025-04-16 14:36:32.763311004 +0200
|
||||
+++ src/third_party/blink/renderer/modules/BUILD.gn 2025-04-18 14:17:17.869441496 +0200
|
||||
@@ -128,7 +128,6 @@ component("modules") {
|
||||
"//third_party/blink/renderer/modules/netinfo",
|
||||
"//third_party/blink/renderer/modules/nfc",
|
||||
"//third_party/blink/renderer/modules/notifications",
|
||||
- "//third_party/blink/renderer/modules/on_device_translation",
|
||||
"//third_party/blink/renderer/modules/payments",
|
||||
"//third_party/blink/renderer/modules/payments/goods",
|
||||
"//third_party/blink/renderer/modules/peerconnection",
|
||||
--- src/third_party/blink/renderer/bindings/idl_in_modules.gni 2025-04-16 14:36:32.335223804 +0200
|
||||
+++ src/third_party/blink/renderer/bindings/idl_in_modules.gni 2025-04-18 21:39:21.064884303 +0200
|
||||
@@ -28,12 +28,8 @@ static_idl_files_in_modules = [
|
||||
"//third_party/blink/renderer/modules/ai/ai_summarizer_factory.idl",
|
||||
"//third_party/blink/renderer/modules/ai/ai_writer.idl",
|
||||
"//third_party/blink/renderer/modules/ai/ai_writer_factory.idl",
|
||||
- "//third_party/blink/renderer/modules/ai/on_device_translation/ai_language_detector.idl",
|
||||
- "//third_party/blink/renderer/modules/ai/on_device_translation/ai_language_detector_factory.idl",
|
||||
- "//third_party/blink/renderer/modules/ai/on_device_translation/ai_language_detector_capabilities.idl",
|
||||
"//third_party/blink/renderer/modules/ai/on_device_translation/ai_translator.idl",
|
||||
"//third_party/blink/renderer/modules/ai/on_device_translation/ai_translator_factory.idl",
|
||||
- "//third_party/blink/renderer/modules/ai/on_device_translation/ai_translator_capabilities.idl",
|
||||
"//third_party/blink/renderer/modules/ai/window_or_worker_global_scope_ai.idl",
|
||||
--- src/third_party/blink/renderer/bindings/idl_in_modules.gni.orig 2025-08-15 17:32:29.049405150 +0200
|
||||
+++ src/third_party/blink/renderer/bindings/idl_in_modules.gni 2025-08-16 14:55:26.743869183 +0200
|
||||
@@ -19,15 +19,8 @@ static_idl_files_in_modules = [
|
||||
"//third_party/blink/renderer/modules/ad_auction/storage_interest_group.idl",
|
||||
"//third_party/blink/renderer/modules/ai/availability.idl",
|
||||
"//third_party/blink/renderer/modules/ai/create_monitor.idl",
|
||||
- "//third_party/blink/renderer/modules/ai/language_model.idl",
|
||||
"//third_party/blink/renderer/modules/ai/language_model_create_options.idl",
|
||||
"//third_party/blink/renderer/modules/ai/language_model_params.idl",
|
||||
- "//third_party/blink/renderer/modules/ai/on_device_translation/language_detector.idl",
|
||||
- "//third_party/blink/renderer/modules/ai/on_device_translation/translator.idl",
|
||||
- "//third_party/blink/renderer/modules/ai/proofreader.idl",
|
||||
- "//third_party/blink/renderer/modules/ai/rewriter.idl",
|
||||
- "//third_party/blink/renderer/modules/ai/summarizer.idl",
|
||||
- "//third_party/blink/renderer/modules/ai/writer.idl",
|
||||
"//third_party/blink/renderer/modules/animationworklet/animation_worklet_global_scope.idl",
|
||||
"//third_party/blink/renderer/modules/animationworklet/css_animation_worklet.idl",
|
||||
@@ -542,10 +538,6 @@ static_idl_files_in_modules = [
|
||||
"//third_party/blink/renderer/modules/notifications/service_worker_global_scope_notifications.idl",
|
||||
"//third_party/blink/renderer/modules/notifications/service_worker_registration_notifications.idl",
|
||||
"//third_party/blink/renderer/modules/notifications/timestamp_trigger.idl",
|
||||
- "//third_party/blink/renderer/modules/on_device_translation/language_translator.idl",
|
||||
- "//third_party/blink/renderer/modules/on_device_translation/translation_language_options.idl",
|
||||
- "//third_party/blink/renderer/modules/on_device_translation/translation.idl",
|
||||
- "//third_party/blink/renderer/modules/on_device_translation/window_or_worker_global_scope_translation.idl",
|
||||
"//third_party/blink/renderer/modules/payments/abort_payment_event.idl",
|
||||
"//third_party/blink/renderer/modules/payments/address_errors.idl",
|
||||
"//third_party/blink/renderer/modules/payments/address_init.idl",
|
||||
--- src/third_party/blink/renderer/bindings/generated_in_modules.gni 2025-04-16 14:36:32.335223804 +0200
|
||||
+++ src/third_party/blink/renderer/bindings/generated_in_modules.gni 2025-04-18 15:55:02.121445718 +0200
|
||||
@@ -148,10 +148,6 @@ generated_dictionary_sources_in_modules
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_language_model_initial_prompt.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_language_model_prompt_options.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_language_model_prompt_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_language_detector_create_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_language_detector_create_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_language_detector_detect_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_language_detector_detect_options.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_rewriter_rewrite_options.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_rewriter_rewrite_options.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_rewriter_create_core_options.cc",
|
||||
@@ -728,8 +724,6 @@ generated_dictionary_sources_in_modules
|
||||
"//third_party/blink/renderer/modules/animationworklet/worklet_animation.idl",
|
||||
--- src/third_party/blink/renderer/bindings/generated_in_modules.gni.orig 2025-08-15 17:32:29.049405150 +0200
|
||||
+++ src/third_party/blink/renderer/bindings/generated_in_modules.gni 2025-08-16 15:26:16.723512975 +0200
|
||||
@@ -682,18 +682,6 @@ generated_dictionary_sources_in_modules
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_key_system_track_configuration.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_landmark.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_landmark.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_detection_result.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_detection_result.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_detector_create_core_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_detector_create_core_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_detector_create_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_detector_create_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_detector_detect_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_detector_detect_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_model_append_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_model_append_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_model_clone_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_model_clone_options.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_model_create_core_options.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_model_create_core_options.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_model_create_options.cc",
|
||||
@@ -704,8 +692,6 @@ generated_dictionary_sources_in_modules
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_model_message.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_model_message_content.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_model_message_content.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_model_prompt_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_model_prompt_options.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_lock_info.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_lock_info.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_lock_manager_snapshot.cc",
|
||||
@@ -922,8 +916,6 @@ generated_dictionary_sources_in_modules
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ml_triangular_options.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ml_where_support_limits.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ml_where_support_limits.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_translation_language_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_translation_language_options.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_multi_cache_query_options.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_multi_cache_query_options.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_navigation_preload_state.cc",
|
||||
@@ -1552,8 +1544,6 @@ generated_enumeration_sources_in_modules
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_gamepad_haptics_result.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_gamepad_mapping_type.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_gamepad_mapping_type.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_translation_availability.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_translation_availability.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_gpu_address_mode.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_gpu_address_mode.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_gpu_auto_layout_mode.cc",
|
||||
@@ -1956,12 +1946,6 @@ generated_interface_sources_in_modules =
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_language_model_factory.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_create_monitor.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_create_monitor.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_language_detector_capabilities.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_language_detector_capabilities.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_language_detector_factory.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_language_detector_factory.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_language_detector.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_language_detector.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_rewriter_factory.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_rewriter_factory.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_rewriter.cc",
|
||||
@@ -1972,8 +1956,6 @@ generated_interface_sources_in_modules =
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_summarizer_factory.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_summarizer.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_summarizer.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_translator_capabilities.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_translator_capabilities.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_translator_factory.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_translator_factory.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_ai_translator.cc",
|
||||
@@ -2466,8 +2448,6 @@ generated_interface_sources_in_modules =
|
||||
@@ -1008,14 +994,6 @@ generated_dictionary_sources_in_modules
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_private_attribution_network.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_private_attribution_options.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_private_attribution_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_proofreader_create_core_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_proofreader_create_core_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_proofreader_create_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_proofreader_create_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_proofread_correction.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_proofread_correction.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_proofread_result.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_proofread_result.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_protected_audience_private_aggregation_config.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_protected_audience_private_aggregation_config.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_public_key_credential_creation_options.cc",
|
||||
@@ -1064,12 +1042,6 @@ generated_dictionary_sources_in_modules
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_remote_desktop_client_override.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_request_device_options.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_request_device_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rewriter_rewrite_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rewriter_rewrite_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rewriter_create_core_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rewriter_create_core_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rewriter_create_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rewriter_create_options.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_router_condition.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_router_condition.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_router_rule.cc",
|
||||
@@ -1278,12 +1250,6 @@ generated_dictionary_sources_in_modules
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_sub_apps_list_result.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_subsample_entry.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_subsample_entry.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_summarizer_create_core_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_summarizer_create_core_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_summarizer_create_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_summarizer_create_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_summarizer_summarize_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_summarizer_summarize_options.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_svc_output_metadata.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_svc_output_metadata.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_sync_event_init.cc",
|
||||
@@ -1296,12 +1262,6 @@ generated_dictionary_sources_in_modules
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_text_encoder_encode_into_result.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_top_level_storage_access_permission_descriptor.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_top_level_storage_access_permission_descriptor.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_translator_create_core_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_translator_create_core_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_translator_create_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_translator_create_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_translator_translate_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_translator_translate_options.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_usb_connection_event_init.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_usb_connection_event_init.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_usb_control_transfer_parameters.cc",
|
||||
@@ -1380,12 +1340,6 @@ generated_dictionary_sources_in_modules
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_websocket_stream_options.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_write_params.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_write_params.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_writer_write_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_writer_write_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_writer_create_core_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_writer_create_core_options.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_writer_create_options.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_writer_create_options.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_xr_depth_state_init.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_xr_depth_state_init.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_xr_dom_overlay_init.cc",
|
||||
@@ -1772,8 +1726,6 @@ generated_enumeration_sources_in_modules
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_presentation_connection_state.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_private_attribution_event.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_private_attribution_event.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_correction_type.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_correction_type.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_push_encryption_key_name.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_push_encryption_key_name.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_recording_state.cc",
|
||||
@@ -1782,12 +1734,6 @@ generated_enumeration_sources_in_modules
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_red_eye_reduction.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_remote_playback_state.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_remote_playback_state.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rewriter_format.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rewriter_format.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rewriter_length.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rewriter_length.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rewriter_tone.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rewriter_tone.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_router_source_enum.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_router_source_enum.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rtc_bundle_policy.cc",
|
||||
@@ -1868,12 +1814,6 @@ generated_enumeration_sources_in_modules
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_storage_bucket_durability.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_sub_apps_result_code.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_sub_apps_result_code.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_summarizer_format.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_summarizer_format.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_summarizer_length.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_summarizer_length.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_summarizer_type.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_summarizer_type.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_display_media_include_or_exclude.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_display_media_include_or_exclude.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_track_default_type.cc",
|
||||
@@ -1912,12 +1852,6 @@ generated_enumeration_sources_in_modules
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_well_known_directory.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_write_command_type.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_write_command_type.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_writer_format.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_writer_format.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_writer_length.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_writer_length.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_writer_tone.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_writer_tone.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_xr_depth_data_format.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_xr_depth_data_format.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_xr_depth_type.cc",
|
||||
@@ -2464,12 +2398,8 @@ generated_interface_sources_in_modules =
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_keyboard_layout_map.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_khr_parallel_shader_compile.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_khr_parallel_shader_compile.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_translator.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_translator.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_detector.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_detector.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_model_params.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_model_params.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_model.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_language_model.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_launch_params.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_launch_params.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_launch_queue.cc",
|
||||
@@ -2924,8 +2904,6 @@ generated_interface_sources_in_modules =
|
||||
@@ -2708,8 +2638,6 @@ generated_interface_sources_in_modules =
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_private_aggregation.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_private_attribution.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_private_attribution.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_proofreader.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_proofreader.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_protected_audience.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_protected_audience.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_public_key_credential.cc",
|
||||
@@ -2732,8 +2660,6 @@ generated_interface_sources_in_modules =
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_remote_playback.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_restriction_target.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_restriction_target.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rewriter.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rewriter.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rtc_certificate.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rtc_certificate.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_rtc_data_channel.cc",
|
||||
@@ -2902,8 +2828,6 @@ generated_interface_sources_in_modules =
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_sub_apps.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_subtle_crypto.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_subtle_crypto.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_summarizer.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_summarizer.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_svg_element.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_svg_element.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_sync_event.cc",
|
||||
@@ -2926,8 +2850,6 @@ generated_interface_sources_in_modules =
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_track_default.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_track_default_list.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_track_default_list.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_translation.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_translation.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_translator.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_translator.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_url.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_url.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_usb.cc",
|
||||
--- src/third_party/blink/renderer/modules/ai/on_device_translation/ai_translator_factory.idl 2025-04-16 14:36:32.773113846 +0200
|
||||
+++ src/third_party/blink/renderer/modules/ai/on_device_translation/ai_translator_factory.idl 2025-04-18 21:45:18.481187932 +0200
|
||||
@@ -11,11 +11,6 @@ interface AITranslatorFactory {
|
||||
]
|
||||
Promise<AITranslator> create(AITranslatorCreateOptions options);
|
||||
// TODO(crbug.com/390459310): Replace with availability.
|
||||
- [
|
||||
- CallWith=ScriptState,
|
||||
- RaisesException
|
||||
- ]
|
||||
- Promise<AITranslatorCapabilities> capabilities();
|
||||
};
|
||||
|
||||
dictionary AITranslatorCreateCoreOptions {
|
||||
@@ -3100,8 +3022,6 @@ generated_interface_sources_in_modules =
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_worklet_animation_effect.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_worklet_group_effect.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_worklet_group_effect.h",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_writer.cc",
|
||||
- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_writer.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_xr_anchor.cc",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_xr_anchor.h",
|
||||
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_xr_anchor_set.cc",
|
||||
--- src/content/public/browser/content_browser_client.cc 2025-04-17 16:18:19.395831947 +0200
|
||||
+++ src/content/public/browser/content_browser_client.cc 2025-04-18 22:48:04.297289260 +0200
|
||||
@@ -1882,15 +1882,6 @@ GetContentLanguageDetectionDriver() {
|
||||
@@ -272,9 +327,9 @@
|
||||
|
||||
#if !BUILDFLAG(IS_ANDROID)
|
||||
void ContentBrowserClient::QueryInstalledWebAppsByManifestId(
|
||||
--- src/content/browser/browser_interface_binders.cc 2025-04-16 14:36:28.520070884 +0200
|
||||
+++ src/content/browser/browser_interface_binders.cc 2025-04-18 23:10:18.079235856 +0200
|
||||
@@ -1156,19 +1164,6 @@ void PopulateFrameBinders(RenderFrameHos
|
||||
--- src/content/browser/browser_interface_binders.cc.orig 2025-07-20 14:51:05.789212478 +0200
|
||||
+++ src/content/browser/browser_interface_binders.cc 2025-08-15 20:15:02.320284607 +0200
|
||||
@@ -1161,19 +1161,6 @@ void PopulateFrameBinders(RenderFrameHos
|
||||
base::Unretained(host)));
|
||||
}
|
||||
|
||||
@@ -294,7 +349,7 @@
|
||||
}
|
||||
|
||||
void PopulateBinderMapWithContext(
|
||||
@@ -1446,19 +1443,6 @@ void PopulateDedicatedWorkerBinders(Dedi
|
||||
@@ -1465,19 +1452,6 @@ void PopulateDedicatedWorkerBinders(Dedi
|
||||
},
|
||||
base::Unretained(host)));
|
||||
}
|
||||
@@ -314,7 +369,7 @@
|
||||
}
|
||||
|
||||
void PopulateBinderMapWithContext(
|
||||
@@ -1549,19 +1533,6 @@ void PopulateSharedWorkerBinders(SharedW
|
||||
@@ -1575,19 +1549,6 @@ void PopulateSharedWorkerBinders(SharedW
|
||||
},
|
||||
base::Unretained(host)));
|
||||
}
|
||||
@@ -332,9 +387,9 @@
|
||||
- base::Unretained(host)));
|
||||
- }
|
||||
|
||||
// RenderProcessHost binders
|
||||
map->Add<media::mojom::VideoDecodePerfHistory>(BindWorkerReceiver(
|
||||
@@ -1704,22 +1675,6 @@ void PopulateServiceWorkerBinders(Servic
|
||||
#if !BUILDFLAG(IS_ANDROID)
|
||||
map->Add<blink::mojom::DirectSocketsService>(base::BindRepeating(
|
||||
@@ -1753,22 +1714,6 @@ void PopulateServiceWorkerBinders(Servic
|
||||
},
|
||||
base::Unretained(host)));
|
||||
}
|
||||
|
||||
@@ -12,18 +12,18 @@
|
||||
GENERATED_FILE_MESSAGE = """// GENERATED FROM THE API DEFINITION IN
|
||||
// %s
|
||||
// by tools/json_schema_compiler.
|
||||
--- a/tools/json_to_struct/json_to_struct.py
|
||||
+++ b/tools/json_to_struct/json_to_struct.py
|
||||
@@ -74,7 +74,7 @@
|
||||
import java_element_generator
|
||||
--- src/tools/json_to_struct/json_to_struct.py.orig 2025-07-19 11:32:45.069979393 +0200
|
||||
+++ src/tools/json_to_struct/json_to_struct.py 2025-08-15 15:02:55.044700914 +0200
|
||||
@@ -84,7 +84,7 @@ import java_element_generator
|
||||
import struct_generator
|
||||
|
||||
|
||||
-HEAD = u"""// Copyright %d The Chromium Authors
|
||||
+HEAD = u"""// Copyright 2022 The Chromium Authors
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
@@ -227,7 +227,7 @@
|
||||
@@ -316,7 +316,7 @@ def GenerateStruct(basepath, output_root
|
||||
year: Year to display next to the copy-right in the header.
|
||||
"""
|
||||
year = int(year) if year else datetime.now().year
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
--- src/components/browsing_data/core/BUILD.gn.old
|
||||
+++ src/components/browsing_data/core/BUILD.gn
|
||||
@@ -36,9 +36,7 @@ static_library("core") {
|
||||
@@ -36,10 +36,7 @@ static_library("core") {
|
||||
deps = [
|
||||
"//base",
|
||||
"//components/autofill/core/browser",
|
||||
- "//components/bookmarks/browser",
|
||||
"//components/history/core/browser",
|
||||
- "//components/password_manager/core/browser",
|
||||
- "//components/password_manager/core/browser/features:password_features",
|
||||
"//components/pref_registry",
|
||||
"//components/prefs",
|
||||
"//components/strings",
|
||||
@@ -18,8 +19,8 @@
|
||||
"//components/sync/nigori",
|
||||
- "//components/sync/service",
|
||||
]
|
||||
if (is_chromeos) {
|
||||
public_deps += [ "//components/sync/chromeos" ]
|
||||
}
|
||||
|
||||
--- src/components/permissions/prediction_service/BUILD.gn.old
|
||||
+++ src/components/permissions/prediction_service/BUILD.gn
|
||||
@@ -31,8 +31,6 @@ source_set("prediction_service") {
|
||||
@@ -31,21 +32,34 @@
|
||||
]
|
||||
|
||||
if (build_with_tflite_lib) {
|
||||
--- src/components/embedder_support/BUILD.gn.old
|
||||
+++ src/components/embedder_support/BUILD.gn
|
||||
@@ -24,12 +24,8 @@ static_library("browser_util") {
|
||||
--- src/components/embedder_support/BUILD.gn.orig 2025-07-19 11:32:33.129979749 +0200
|
||||
+++ src/components/embedder_support/BUILD.gn 2025-08-13 11:51:36.828843854 +0200
|
||||
@@ -19,9 +19,7 @@ static_library("content_settings") {
|
||||
]
|
||||
|
||||
deps = [
|
||||
":embedder_support",
|
||||
"//build:branding_buildflags",
|
||||
- "//components/background_sync",
|
||||
- "//components/content_settings/browser",
|
||||
"//components/content_settings/core/browser",
|
||||
- "//components/content_settings/core/browser:cookie_settings",
|
||||
"//content/public/browser",
|
||||
"//net",
|
||||
"//third_party/blink/public/mojom:mojom_platform_headers",
|
||||
@@ -36,7 +34,6 @@ static_library("permissions") {
|
||||
]
|
||||
|
||||
deps = [
|
||||
- "//components/background_sync",
|
||||
"//components/permissions",
|
||||
"//device/vr/buildflags",
|
||||
"//services/device/public/cpp:device_features",
|
||||
@@ -58,7 +55,6 @@ static_library("user_agent") {
|
||||
":embedder_support",
|
||||
"//build:branding_buildflags",
|
||||
"//build/util:chromium_git_revision",
|
||||
- "//components/policy/core/common",
|
||||
"//components/prefs",
|
||||
"//components/version_info",
|
||||
"//content/public/browser",
|
||||
"//net",
|
||||
--- src/components/permissions/BUILD.gn.orig 2025-04-11 12:05:19.206024144 +0200
|
||||
+++ src/components/permissions/BUILD.gn 2025-04-11 20:04:52.832323166 +0200
|
||||
@@ -119,10 +119,7 @@ source_set("permissions") {
|
||||
@@ -82,15 +96,6 @@
|
||||
"proxy_policy_handler.h",
|
||||
--- src/components/content_settings/core/browser/BUILD.gn.orig
|
||||
+++ src/components/content_settings/core/browser/BUILD.gn
|
||||
@@ -69,7 +69,7 @@ static_library("browser") {
|
||||
"//url",
|
||||
]
|
||||
|
||||
- if (!is_ios) {
|
||||
+ if (false) {
|
||||
sources += [
|
||||
"insecure_private_network_policy_handler.cc",
|
||||
"insecure_private_network_policy_handler.h",
|
||||
@@ -78,8 +78,6 @@ static_library("browser") {
|
||||
|
||||
if (use_blink) {
|
||||
@@ -146,9 +151,9 @@
|
||||
"//device/vr/buildflags",
|
||||
]
|
||||
}
|
||||
--- src/components/search_engines/BUILD.gn.orig 2025-04-11 12:05:19.397475381 +0200
|
||||
+++ src/components/search_engines/BUILD.gn 2025-04-11 20:05:37.960311107 +0200
|
||||
@@ -12,49 +12,21 @@ if (is_android) {
|
||||
--- src/components/search_engines/BUILD.gn.orig 2025-07-19 11:32:33.625979784 +0200
|
||||
+++ src/components/search_engines/BUILD.gn 2025-08-13 11:58:08.964717036 +0200
|
||||
@@ -12,50 +12,20 @@ if (is_android) {
|
||||
static_library("search_engines") {
|
||||
sources = [
|
||||
"choice_made_location.h",
|
||||
@@ -156,8 +161,8 @@
|
||||
- "default_search_manager.h",
|
||||
- "enterprise/default_search_policy_handler.cc",
|
||||
- "enterprise/default_search_policy_handler.h",
|
||||
"enterprise/enterprise_search_manager.cc",
|
||||
"enterprise/enterprise_search_manager.h",
|
||||
- "enterprise/enterprise_search_manager.cc",
|
||||
- "enterprise/enterprise_search_manager.h",
|
||||
- "keyword_table.cc",
|
||||
- "keyword_table.h",
|
||||
"keyword_web_data_service.cc",
|
||||
@@ -169,7 +174,6 @@
|
||||
- "search_engine_choice/search_engine_choice_service.h",
|
||||
- "search_engine_choice/search_engine_choice_utils.cc",
|
||||
- "search_engine_choice/search_engine_choice_utils.h",
|
||||
"search_engines_pref_names.h",
|
||||
- "search_host_to_urls_map.cc",
|
||||
- "search_host_to_urls_map.h",
|
||||
"search_terms_data.cc",
|
||||
@@ -187,6 +191,8 @@
|
||||
- "template_url_parser.h",
|
||||
- "template_url_prepopulate_data.cc",
|
||||
- "template_url_prepopulate_data.h",
|
||||
"template_url_prepopulate_data_resolver.cc",
|
||||
"template_url_prepopulate_data_resolver.h",
|
||||
- "template_url_service.cc",
|
||||
- "template_url_service.h",
|
||||
"template_url_service_client.h",
|
||||
@@ -198,7 +204,7 @@
|
||||
]
|
||||
|
||||
public_deps = [
|
||||
@@ -68,7 +46,6 @@ static_library("search_engines") {
|
||||
@@ -70,7 +42,6 @@ static_library("search_engines") {
|
||||
"//components/sync",
|
||||
"//components/webdata/common",
|
||||
"//third_party/metrics_proto",
|
||||
@@ -206,7 +212,7 @@
|
||||
"//third_party/search_engines_data:prepopulated_engines",
|
||||
]
|
||||
|
||||
@@ -77,16 +47,10 @@ static_library("search_engines") {
|
||||
@@ -79,17 +50,11 @@ static_library("search_engines") {
|
||||
"//components/country_codes",
|
||||
"//components/crash/core/common:crash_key",
|
||||
"//components/database_utils",
|
||||
@@ -219,11 +225,12 @@
|
||||
- "//components/policy/core/browser",
|
||||
"//components/pref_registry",
|
||||
"//components/regional_capabilities",
|
||||
"//components/regional_capabilities:country_access_reason",
|
||||
- "//components/search_provider_logos:switches",
|
||||
"//components/signin/public/base",
|
||||
"//components/strings",
|
||||
"//components/url_formatter",
|
||||
@@ -98,7 +62,6 @@ static_library("search_engines") {
|
||||
@@ -101,7 +66,6 @@ static_library("search_engines") {
|
||||
"//services/network/public/mojom",
|
||||
"//sql",
|
||||
"//third_party/metrics_proto",
|
||||
@@ -231,17 +238,8 @@
|
||||
"//ui/base",
|
||||
"//ui/gfx",
|
||||
"//ui/gfx/geometry",
|
||||
@@ -124,7 +87,7 @@ static_library("search_engines") {
|
||||
]
|
||||
}
|
||||
|
||||
- if (!is_android) {
|
||||
+ if (false) {
|
||||
sources += [ "search_engine_choice/generated_marketing_snippets.cc" ]
|
||||
deps += [
|
||||
":generate_search_engine_icons",
|
||||
@@ -133,7 +96,7 @@ static_library("search_engines") {
|
||||
]
|
||||
@@ -141,7 +105,7 @@ static_library("search_engines") {
|
||||
}
|
||||
}
|
||||
|
||||
- if (is_linux || is_win || is_mac || is_chromeos) {
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
partially revert https://github.com/chromium/chromium/commit/43410138fb38ff4bdba9720ac57b26434443f761
|
||||
|
||||
--- src/components/ip_protection/common/BUILD.gn.orig 2025-08-15 17:32:25.445405827 +0200
|
||||
+++ src/components/ip_protection/common/BUILD.gn 2025-08-15 20:36:06.954140693 +0200
|
||||
@@ -63,7 +63,6 @@ source_set("ip_protection_core_impl") {
|
||||
public_deps = [
|
||||
":ip_protection_core",
|
||||
":ip_protection_data_types",
|
||||
- ":ip_protection_probabilistic_reveal_token_manager",
|
||||
":ip_protection_proxy_config_manager",
|
||||
":ip_protection_token_manager",
|
||||
":masked_domain_list_manager",
|
||||
@@ -108,7 +107,6 @@ source_set("ip_protection_core_impl_mojo
|
||||
]
|
||||
deps = [
|
||||
":ip_protection_core_host_remote",
|
||||
- ":ip_protection_probabilistic_reveal_token_mojo_fetcher",
|
||||
":ip_protection_proxy_config_manager_impl",
|
||||
":ip_protection_proxy_config_mojo_fetcher",
|
||||
":ip_protection_token_manager_impl",
|
||||
--- src/components/ip_protection/common/ip_protection_core_impl_mojo.cc.orig 2025-08-15 17:32:25.445405827 +0200
|
||||
+++ src/components/ip_protection/common/ip_protection_core_impl_mojo.cc 2025-08-16 19:10:17.599046225 +0200
|
||||
@@ -81,8 +81,7 @@ IpProtectionCoreImplMojo::IpProtectionCo
|
||||
std::unique_ptr<IpProtectionTokenManager>>(),
|
||||
probabilistic_reveal_token_registry,
|
||||
(core_host_remote &&
|
||||
- base::FeatureList::IsEnabled(
|
||||
- net::features::kEnableProbabilisticRevealTokens))
|
||||
+ false)
|
||||
? std::make_unique<IpProtectionProbabilisticRevealTokenManager>(
|
||||
std::make_unique<
|
||||
IpProtectionProbabilisticRevealTokenMojoFetcher>(
|
||||
@@ -21,9 +21,9 @@ Remove this dead code which brings a dependency on rustc
|
||||
# TODO(358041220): There is a circular_dependency of `cookie_controls:impl` module
|
||||
# with "//chrome/browser" due to the inclusion of //c/b/policy/profile_policy_connector.h
|
||||
@@ -1935,7 +1934,6 @@ static_library("browser") {
|
||||
"//chrome/browser/search_engine_choice",
|
||||
"//chrome/browser/search_engine_choice:impl",
|
||||
"//chrome/browser/search_engines",
|
||||
"//chrome/browser/send_tab_to_self",
|
||||
"//chrome/browser/serial",
|
||||
- "//chrome/browser/share",
|
||||
"//chrome/browser/sharing:buildflags",
|
||||
"//chrome/browser/signin",
|
||||
@@ -61,7 +61,7 @@ Remove this dead code which brings a dependency on rustc
|
||||
- "//components/qr_code_generator:bitmap_generator",
|
||||
"//components/query_parser",
|
||||
"//components/reading_list/core",
|
||||
"//components/reading_list/features:flags",
|
||||
"//components/renderer_context_menu",
|
||||
--- src/chrome/test/BUILD.gn.orig 2025-04-11 12:13:12.932314099 +0200
|
||||
+++ src/chrome/test/BUILD.gn 2025-04-11 19:53:28.092504094 +0200
|
||||
@@ -2163,7 +2163,6 @@ if (!is_android) {
|
||||
@@ -78,8 +78,8 @@ Remove this dead code which brings a dependency on rustc
|
||||
"//components/proxy_config",
|
||||
- "//components/qr_code_generator:bitmap_generator",
|
||||
"//components/reading_list/core",
|
||||
"//components/reading_list/features:flags",
|
||||
"//components/resources",
|
||||
"//components/safe_browsing:buildflags",
|
||||
@@ -6648,7 +6646,6 @@ test("unit_tests") {
|
||||
"//components/privacy_sandbox/privacy_sandbox_attestations:test_support",
|
||||
"//components/privacy_sandbox/privacy_sandbox_attestations/proto:proto",
|
||||
@@ -98,7 +98,7 @@ Remove this dead code which brings a dependency on rustc
|
||||
"//third_party/zlib/google:compression_utils",
|
||||
@@ -8115,8 +8111,6 @@ test("unit_tests") {
|
||||
"//chrome/browser/upgrade_detector:build_state_observer",
|
||||
"//chrome/browser/user_annotations",
|
||||
"//chrome/browser/web_applications:features",
|
||||
"//chrome/browser/web_applications:web_applications_test_support",
|
||||
- "//chrome/browser/webauthn:test_support",
|
||||
- "//chrome/browser/webauthn/proto",
|
||||
|
||||
@@ -224,12 +224,11 @@ Inspired by:
|
||||
#include "device/fido/features.h"
|
||||
#include "device/fido/fido_discovery_base.h"
|
||||
#include "device/fido/hid/fido_hid_discovery.h"
|
||||
@@ -128,12 +127,7 @@ std::vector<std::unique_ptr<FidoDiscover
|
||||
@@ -128,11 +127,7 @@ std::vector<std::unique_ptr<FidoDiscover
|
||||
|
||||
std::optional<std::unique_ptr<FidoDiscoveryBase>>
|
||||
FidoDiscoveryFactory::MaybeCreateEnclaveDiscovery() {
|
||||
- if (!base::FeatureList::IsEnabled(kWebAuthnEnclaveAuthenticator) ||
|
||||
- !enclave_ui_request_stream_ || !network_context_factory_) {
|
||||
- if (!enclave_ui_request_stream_ || !network_context_factory_) {
|
||||
return std::nullopt;
|
||||
- }
|
||||
- return std::make_unique<enclave::EnclaveAuthenticatorDiscovery>(
|
||||
@@ -240,9 +239,9 @@ Inspired by:
|
||||
--- src/device/fido/fido_discovery_factory.h.orig
|
||||
+++ src/device/fido/fido_discovery_factory.h
|
||||
@@ -15,7 +15,6 @@
|
||||
#include "base/containers/span.h"
|
||||
#include "base/memory/raw_ptr.h"
|
||||
#include "build/build_config.h"
|
||||
#include "build/chromeos_buildflags.h"
|
||||
-#include "components/sync/protocol/webauthn_credential_specifics.pb.h"
|
||||
#include "device/fido/cable/cable_discovery_data.h"
|
||||
#include "device/fido/cable/v2_constants.h"
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
--- src/third_party/blink/renderer/platform/loader/fetch/resource.h.orig 2025-04-16 14:36:33.086070015 +0200
|
||||
+++ src/third_party/blink/renderer/platform/loader/fetch/resource.h 2025-04-16 21:57:27.672717364 +0200
|
||||
@@ -363,7 +363,7 @@ class PLATFORM_EXPORT Resource : public
|
||||
// attributes.
|
||||
bool ForceIntegrityChecks() const;
|
||||
|
||||
- const IntegrityReport& IntegrityReport() const { return integrity_report_; }
|
||||
+ const blink::IntegrityReport& IntegrityReport() const { return integrity_report_; }
|
||||
bool MustRefetchDueToIntegrityMetadata(const FetchParameters&) const;
|
||||
|
||||
bool IsAlive() const { return is_alive_; }
|
||||
@@ -1,11 +0,0 @@
|
||||
--- src/third_party/blink/renderer/platform/loader/fetch/resource_response.h.orig 2025-04-16 14:36:33.089070014 +0200
|
||||
+++ src/third_party/blink/renderer/platform/loader/fetch/resource_response.h 2025-04-16 21:43:33.972794371 +0200
|
||||
@@ -174,7 +174,7 @@ class PLATFORM_EXPORT ResourceResponse f
|
||||
std::optional<base::Time> LastModified(UseCounter&) const;
|
||||
// Will always return values >= 0.
|
||||
base::TimeDelta CacheControlStaleWhileRevalidate() const;
|
||||
- std::optional<UnencodedDigest> UnencodedDigest() const;
|
||||
+ std::optional<blink::UnencodedDigest> UnencodedDigest() const;
|
||||
|
||||
unsigned ConnectionID() const;
|
||||
void SetConnectionID(unsigned);
|
||||
11
sandboxed_vfs_file_impl-missing-memset.patch
Normal file
11
sandboxed_vfs_file_impl-missing-memset.patch
Normal file
@@ -0,0 +1,11 @@
|
||||
--- src/sql/sandboxed_vfs_file_impl.cc.orig 2025-08-15 17:32:28.681405220 +0200
|
||||
+++ src/sql/sandboxed_vfs_file_impl.cc 2025-08-15 21:55:09.415178758 +0200
|
||||
@@ -9,6 +9,8 @@
|
||||
|
||||
#include "sql/sandboxed_vfs_file_impl.h"
|
||||
|
||||
+#include <cstring>
|
||||
+
|
||||
#include "base/notreached.h"
|
||||
#include "sql/sandboxed_vfs.h"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- src/sandbox/linux/BUILD.gn.old 2022-10-12 18:06:31.399406000 +0200
|
||||
+++ src/sandbox/linux/BUILD.gn 2022-10-22 11:55:59.621396300 +0200
|
||||
@@ -196,6 +196,27 @@
|
||||
--- src/sandbox/linux/BUILD.gn.orig 2025-08-15 17:32:28.529405249 +0200
|
||||
+++ src/sandbox/linux/BUILD.gn 2025-08-16 19:07:14.523083090 +0200
|
||||
@@ -205,6 +205,26 @@ test("sandbox_linux_unittests") {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
+ deps = [
|
||||
+ ":sandbox_services",
|
||||
+ "//base",
|
||||
+ "//build:chromeos_buildflags",
|
||||
+ "//sandbox:sandbox_buildflags",
|
||||
+ ]
|
||||
+ if (gcc_lto) {
|
||||
@@ -28,7 +27,7 @@
|
||||
component("seccomp_bpf") {
|
||||
sources = [
|
||||
"bpf_dsl/bpf_dsl.cc",
|
||||
@@ -227,8 +247,6 @@
|
||||
@@ -236,8 +256,6 @@ component("seccomp_bpf") {
|
||||
"seccomp-bpf/die.h",
|
||||
"seccomp-bpf/sandbox_bpf.cc",
|
||||
"seccomp-bpf/sandbox_bpf.h",
|
||||
@@ -37,11 +36,11 @@
|
||||
"seccomp-bpf/trap.cc",
|
||||
"seccomp-bpf/trap.h",
|
||||
]
|
||||
@@ -240,6 +258,7 @@
|
||||
@@ -249,6 +267,7 @@ component("seccomp_bpf") {
|
||||
]
|
||||
deps = [
|
||||
":sandbox_services",
|
||||
+ ":seccomp_bpf_asm",
|
||||
"//base",
|
||||
"//build:chromeos_buildflags",
|
||||
"//sandbox:sandbox_buildflags",
|
||||
]
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
--- src/v8/src/strings/string-hasher.cc.orig 2025-04-20 12:05:55.016195134 +0200
|
||||
+++ src/v8/src/strings/string-hasher.cc 2025-04-20 12:10:16.788185381 +0200
|
||||
@@ -27,7 +27,7 @@ struct ConvertTo8BitHashReader {
|
||||
__m128i x = _mm_loadu_si128(reinterpret_cast<const __m128i*>(p));
|
||||
return _mm_cvtsi128_si64(_mm_packus_epi16(x, x));
|
||||
#elif defined(__ARM_NEON__)
|
||||
- int16x8_t x;
|
||||
+ uint16x8_t x;
|
||||
memcpy(&x, p, sizeof(x));
|
||||
return vget_lane_u64(vreinterpret_u64_u8(vmovn_u16(x)), 0);
|
||||
#else
|
||||
@@ -48,9 +48,9 @@ struct ConvertTo8BitHashReader {
|
||||
__m128i x = _mm_loadu_si64(reinterpret_cast<const __m128i*>(p));
|
||||
return _mm_cvtsi128_si64(_mm_packus_epi16(x, x));
|
||||
#elif defined(__ARM_NEON__)
|
||||
- int8x8_t x;
|
||||
+ uint16x4_t x;
|
||||
memcpy(&x, p, sizeof(x));
|
||||
- int16x8_t x_wide = vcombine_u64(x, x);
|
||||
+ uint16x8_t x_wide = vcombine_u16(x, x);
|
||||
return vget_lane_u32(vreinterpret_u32_u8(vmovn_u16(x_wide)), 0);
|
||||
#else
|
||||
return (uint64_t{p[0]}) | (uint64_t{p[1]} << 8) | (uint64_t{p[2]} << 16) |
|
||||
@@ -1,20 +0,0 @@
|
||||
--- src/third_party/blink/renderer/platform/fonts/string_truncator.cc.orig 2025-04-16 14:36:33.038422986 +0200
|
||||
+++ src/third_party/blink/renderer/platform/fonts/string_truncator.cc 2025-04-16 22:05:13.224674254 +0200
|
||||
@@ -168,7 +168,7 @@ static String TruncateString(const Strin
|
||||
DCHECK_LT(keep_count, keep_count_for_smallest_known_to_not_fit);
|
||||
DCHECK_GT(keep_count, keep_count_for_largest_known_to_fit);
|
||||
|
||||
- truncated_string = truncate_to_buffer(string, keep_count, string_buffer);
|
||||
+ truncated_string = truncate_to_buffer(string, keep_count, base::span(string_buffer));
|
||||
|
||||
width = StringWidth(font, truncated_string);
|
||||
if (width <= max_width) {
|
||||
@@ -185,7 +185,7 @@ static String TruncateString(const Strin
|
||||
|
||||
if (keep_count != keep_count_for_largest_known_to_fit) {
|
||||
keep_count = keep_count_for_largest_known_to_fit;
|
||||
- truncated_string = truncate_to_buffer(string, keep_count, string_buffer);
|
||||
+ truncated_string = truncate_to_buffer(string, keep_count, base::span(string_buffer));
|
||||
}
|
||||
|
||||
return String(truncated_string);
|
||||
@@ -1,11 +0,0 @@
|
||||
--- src/third_party/blink/renderer/core/css/style_scope.cc 2025-04-16 14:36:32.429070140 +0200
|
||||
+++ /var/tmp/build-root/openSUSE_Tumbleweed-x86_64/home/abuild/rpmbuild/BUILD/nodejs-electron-35.1.5-build/src/third_party/blink/renderer/core/css/style_scope.cc 2025-04-17 16:02:10.183836430 +0200
|
||||
@@ -32,7 +32,7 @@ StyleScope* StyleScope::CopyWithParent(c
|
||||
|
||||
const StyleScope* StyleScope::Renest(StyleRule* new_parent) const {
|
||||
StyleRule* reparented_from =
|
||||
- from_ ? To<StyleRule>(from_->Renest(new_parent)) : nullptr;
|
||||
+ from_ ? blink::To<StyleRule>(from_->Renest(new_parent)) : nullptr;
|
||||
if (from_ == reparented_from) {
|
||||
return this;
|
||||
}
|
||||
11
system-dragonbox.patch
Normal file
11
system-dragonbox.patch
Normal file
@@ -0,0 +1,11 @@
|
||||
--- src/v8/src/numbers/conversions.cc.orig 2025-08-15 17:36:40.101358286 +0200
|
||||
+++ src/v8/src/numbers/conversions.cc 2025-08-16 14:28:06.284178438 +0200
|
||||
@@ -23,7 +23,7 @@
|
||||
#include "src/objects/string-inl.h"
|
||||
#include "src/strings/char-predicates-inl.h"
|
||||
#include "src/utils/allocation.h"
|
||||
-#include "third_party/dragonbox/src/include/dragonbox/dragonbox.h"
|
||||
+#include <dragonbox/dragonbox.h>
|
||||
#include "third_party/fast_float/src/include/fast_float/fast_float.h"
|
||||
#include "third_party/fast_float/src/include/fast_float/float_common.h"
|
||||
|
||||
@@ -40,16 +40,3 @@ Index: chromium-98.0.4758.80/ui/ozone/platform/drm/gpu/hardware_display_controll
|
||||
#include "third_party/perfetto/include/perfetto/tracing/traced_value.h"
|
||||
#include "third_party/skia/include/core/SkCanvas.h"
|
||||
#include "third_party/skia/include/core/SkImage.h"
|
||||
Index: chromium-98.0.4758.80/media/gpu/chromeos/video_decoder_pipeline_unittest.cc
|
||||
===================================================================
|
||||
--- chromium-98.0.4758.80.orig/media/gpu/chromeos/video_decoder_pipeline_unittest.cc
|
||||
+++ chromium-98.0.4758.80/media/gpu/chromeos/video_decoder_pipeline_unittest.cc
|
||||
@@ -23,7 +23,7 @@
|
||||
#include "media/gpu/chromeos/dmabuf_video_frame_pool.h"
|
||||
#include "testing/gmock/include/gmock/gmock.h"
|
||||
#include "testing/gtest/include/gtest/gtest.h"
|
||||
-#include "third_party/libdrm/src/include/drm/drm_fourcc.h"
|
||||
+#include <drm_fourcc.h>
|
||||
|
||||
#if BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
// gn check does not account for BUILDFLAG(), so including this header will
|
||||
|
||||
@@ -119,8 +119,8 @@ Unbundle assorted lexing/parsing/transpiling tools written in Python.
|
||||
--- src/mojo/public/tools/bindings/mojom.gni.orig 2025-04-11 12:05:21.530272509 +0200
|
||||
+++ src/mojo/public/tools/bindings/mojom.gni 2025-04-11 20:56:50.579500868 +0200
|
||||
@@ -802,7 +802,7 @@ template("mojom") {
|
||||
remote_worker = "large"
|
||||
custom_processor = "mojom_parser"
|
||||
|
||||
action("${parser_target_name}_action") {
|
||||
script = mojom_parser_script
|
||||
- inputs = mojom_parser_sources + ply_sources + [ build_metadata_filename ]
|
||||
+ inputs = mojom_parser_sources + [ build_metadata_filename ]
|
||||
|
||||
@@ -1,56 +0,0 @@
|
||||
From 3fb3bab213348955edc18a051f9c3f86241309e8 Mon Sep 17 00:00:00 2001
|
||||
From: LN Liberda <lauren@selfisekai.rocks>
|
||||
Date: Thu, 13 Mar 2025 20:01:32 -0700
|
||||
Subject: [PATCH] unbundle: add simdutf
|
||||
|
||||
Bug: none
|
||||
Change-Id: Idae290112561e5658c614f5eae8895abfe996124
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6333513
|
||||
Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
|
||||
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
|
||||
Reviewed-by: Lei Zhang <thestig@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#1432518}
|
||||
---
|
||||
build/linux/unbundle/replace_gn_files.py | 1 +
|
||||
build/linux/unbundle/simdutf.gn | 20 ++++++++++++++++++++
|
||||
2 files changed, 21 insertions(+)
|
||||
create mode 100644 build/linux/unbundle/simdutf.gn
|
||||
|
||||
diff --git a/build/linux/unbundle/replace_gn_files.py b/build/linux/unbundle/replace_gn_files.py
|
||||
index 9ee6fda6547d90..f5db9d23c886b7 100755
|
||||
--- a/build/linux/unbundle/replace_gn_files.py
|
||||
+++ b/build/linux/unbundle/replace_gn_files.py
|
||||
@@ -67,6 +67,7 @@
|
||||
'openh264': 'third_party/openh264/BUILD.gn',
|
||||
'opus': 'third_party/opus/BUILD.gn',
|
||||
're2': 'third_party/re2/BUILD.gn',
|
||||
+ 'simdutf': 'third_party/simdutf/BUILD.gn',
|
||||
'snappy': 'third_party/snappy/BUILD.gn',
|
||||
# Use system libSPIRV-Tools in Swiftshader.
|
||||
# These two shims MUST be used together.
|
||||
diff --git a/build/linux/unbundle/simdutf.gn b/build/linux/unbundle/simdutf.gn
|
||||
new file mode 100644
|
||||
index 00000000000000..67d86cb3b3e5f9
|
||||
--- /dev/null
|
||||
+++ b/build/linux/unbundle/simdutf.gn
|
||||
@@ -0,0 +1,20 @@
|
||||
+# Copyright 2025 The Chromium Authors
|
||||
+# Use of this source code is governed by a BSD-style license that can be
|
||||
+# found in the LICENSE file.
|
||||
+
|
||||
+import("//build/config/linux/pkg_config.gni")
|
||||
+import("//build/shim_headers.gni")
|
||||
+
|
||||
+shim_headers("header") {
|
||||
+ root_path = "."
|
||||
+ headers = [ "simdutf.h" ]
|
||||
+}
|
||||
+
|
||||
+pkg_config("system_simdutf") {
|
||||
+ packages = [ "simdutf" ]
|
||||
+}
|
||||
+
|
||||
+source_set("simdutf") {
|
||||
+ public_configs = [ ":system_simdutf" ]
|
||||
+ public_deps = [ ":header" ]
|
||||
+}
|
||||
@@ -1,11 +0,0 @@
|
||||
--- src/base/containers/to_vector.h.orig 2025-04-21 18:29:04.778306927 +0200
|
||||
+++ src/base/containers/to_vector.h 2025-04-22 06:32:55.415046071 +0200
|
||||
@@ -29,7 +29,7 @@ template <typename Range, typename Proj
|
||||
std::indirectly_unary_invocable<Proj, std::ranges::iterator_t<Range>>
|
||||
auto ToVector(Range&& range, Proj proj = {}) {
|
||||
using ProjectedType =
|
||||
- std::projected<std::ranges::iterator_t<Range>, Proj>::value_type;
|
||||
+ std::indirectly_readable_traits<std::projected<std::ranges::iterator_t<Range>, Proj> >::value_type;
|
||||
std::vector<ProjectedType> container;
|
||||
container.reserve(std::ranges::size(range));
|
||||
std::ranges::transform(std::forward<Range>(range),
|
||||
@@ -1,32 +0,0 @@
|
||||
--- src/components/unexportable_keys/unexportable_key_service_impl.cc.orig 2025-04-20 19:22:29.934671387 +0200
|
||||
+++ src/components/unexportable_keys/unexportable_key_service_impl.cc 2025-04-21 14:22:30.891412928 +0200
|
||||
@@ -19,8 +19,6 @@
|
||||
|
||||
namespace unexportable_keys {
|
||||
|
||||
-namespace {
|
||||
-
|
||||
// Class holding either an `UnexportableKeyId` or a list of callbacks waiting
|
||||
// for the key creation.
|
||||
class MaybePendingUnexportableKeyId {
|
||||
@@ -105,8 +103,6 @@ MaybePendingUnexportableKeyId::GetCallba
|
||||
return absl::get<std::vector<CallbackType>>(key_id_or_pending_callbacks_);
|
||||
}
|
||||
|
||||
-} // namespace
|
||||
-
|
||||
UnexportableKeyServiceImpl::UnexportableKeyServiceImpl(
|
||||
UnexportableKeyTaskManager& task_manager)
|
||||
: task_manager_(task_manager) {}
|
||||
--- src/components/unexportable_keys/unexportable_key_service_impl.h.orig 2025-04-20 19:22:29.934671387 +0200
|
||||
+++ src/components/unexportable_keys/unexportable_key_service_impl.h 2025-04-21 14:22:00.963413744 +0200
|
||||
@@ -23,9 +23,7 @@
|
||||
|
||||
namespace unexportable_keys {
|
||||
|
||||
-namespace {
|
||||
class MaybePendingUnexportableKeyId;
|
||||
-}
|
||||
|
||||
class UnexportableKeyTaskManager;
|
||||
|
||||
@@ -78,8 +78,8 @@ Both this and the unbundle flags should be upstreamed but probably separately.
|
||||
"deps/nbytes",
|
||||
- "deps/nghttp2",
|
||||
"deps/postject",
|
||||
"deps/sqlite",
|
||||
"deps/uvwasi",
|
||||
"//third_party/zlib",
|
||||
@@ -186,21 +211,36 @@ template("node_gn_build") {
|
||||
"Security.framework",
|
||||
]
|
||||
|
||||
51
v8-assume-x86-64-v2-support.patch
Normal file
51
v8-assume-x86-64-v2-support.patch
Normal file
@@ -0,0 +1,51 @@
|
||||
--- src/v8/src/codegen/cpu-features.h.orig 2025-08-19 18:33:53.729236588 +0200
|
||||
+++ src/v8/src/codegen/cpu-features.h 2025-08-19 19:06:19.769049465 +0200
|
||||
@@ -122,6 +122,12 @@ class V8_EXPORT_PRIVATE CpuFeatures : pu
|
||||
}
|
||||
|
||||
static bool IsSupported(CpuFeature f) {
|
||||
+ if(f == SSE4_2) return true;
|
||||
+ if(f == SSE4_1) return true;
|
||||
+ if(f == SSSE3) return true;
|
||||
+ if(f == SSE3) return true;
|
||||
+ if(f == SAHF) return true;
|
||||
+ if(f == POPCNT) return true;
|
||||
return (supported_ & (1u << f)) != 0;
|
||||
}
|
||||
|
||||
--- src/v8/src/base/cpu.h.orig 2025-08-19 18:33:53.705236589 +0200
|
||||
+++ src/v8/src/base/cpu.h 2025-08-19 19:09:47.921029664 +0200
|
||||
@@ -73,15 +73,15 @@ class V8_BASE_EXPORT CPU final {
|
||||
static const int kUnknownCacheLineSize = 0;
|
||||
|
||||
// x86 features
|
||||
- bool has_cmov() const { return has_cmov_; }
|
||||
- bool has_sahf() const { return has_sahf_; }
|
||||
- bool has_mmx() const { return has_mmx_; }
|
||||
- bool has_sse() const { return has_sse_; }
|
||||
- bool has_sse2() const { return has_sse2_; }
|
||||
- bool has_sse3() const { return has_sse3_; }
|
||||
- bool has_ssse3() const { return has_ssse3_; }
|
||||
- bool has_sse41() const { return has_sse41_; }
|
||||
- bool has_sse42() const { return has_sse42_; }
|
||||
+ bool has_cmov() const { return true; }
|
||||
+ bool has_sahf() const { return true; }
|
||||
+ bool has_mmx() const { return true; }
|
||||
+ bool has_sse() const { return true; }
|
||||
+ bool has_sse2() const { return true; }
|
||||
+ bool has_sse3() const { return true; }
|
||||
+ bool has_ssse3() const { return true; }
|
||||
+ bool has_sse41() const { return true; }
|
||||
+ bool has_sse42() const { return true; }
|
||||
bool has_osxsave() const { return has_osxsave_; }
|
||||
bool has_avx() const { return has_avx_; }
|
||||
bool has_avx2() const { return has_avx2_; }
|
||||
@@ -92,7 +92,7 @@ class V8_BASE_EXPORT CPU final {
|
||||
bool has_bmi1() const { return has_bmi1_; }
|
||||
bool has_bmi2() const { return has_bmi2_; }
|
||||
bool has_lzcnt() const { return has_lzcnt_; }
|
||||
- bool has_popcnt() const { return has_popcnt_; }
|
||||
+ bool has_popcnt() const { return true; }
|
||||
bool is_atom() const { return is_atom_; }
|
||||
bool has_intel_jcc_erratum() const { return has_intel_jcc_erratum_; }
|
||||
bool has_cetss() const { return has_cetss_; }
|
||||
150
v8-highway-1.1.patch
Normal file
150
v8-highway-1.1.patch
Normal file
@@ -0,0 +1,150 @@
|
||||
From 1cb68a06f8c0ea3ad29cab6efe5ac673817596ce Mon Sep 17 00:00:00 2001
|
||||
From: pthier <pthier@chromium.org>
|
||||
Date: Tue, 6 May 2025 10:28:03 +0200
|
||||
Subject: [PATCH] Reland "[regexp] Simdify global atom match with single
|
||||
character pattern"
|
||||
|
||||
This is a reland of commit 36f07e9a04484dd4b97713f8e821d3b83ade8f53
|
||||
|
||||
Changes since revert: Accumulate number of matches after a cache hit
|
||||
instead of overwriting them.
|
||||
|
||||
Original change's description:
|
||||
> [regexp] Simdify global atom match with single character pattern
|
||||
>
|
||||
> Use highway to find matching characters for RegExp with a single
|
||||
> character atom pattern.
|
||||
>
|
||||
> Bug: 413411337
|
||||
> Change-Id: I9bf686aca2da37025613a9227eb0ec69176a676f
|
||||
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6487695
|
||||
> Reviewed-by: Jakob Linke <jgruber@chromium.org>
|
||||
> Commit-Queue: Patrick Thier <pthier@chromium.org>
|
||||
> Cr-Commit-Position: refs/heads/main@{#100006}
|
||||
|
||||
Fixed: 414857029
|
||||
Bug: 413411337
|
||||
Change-Id: I3ebd72f3b91ce5e7b603e43540cd4e10090c1868
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6513551
|
||||
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
|
||||
Commit-Queue: Patrick Thier <pthier@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#100088}
|
||||
---
|
||||
src/runtime/runtime-regexp.cc | 95 ++++++++++++++++++++++++++++++++---
|
||||
test/mjsunit/regexp-global.js | 24 +++++++++
|
||||
2 files changed, 112 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/src/runtime/runtime-regexp.cc b/src/runtime/runtime-regexp.cc
|
||||
index 5689cdc8d1db..e5cee437d1c3 100644
|
||||
--- a/v8/src/runtime/runtime-regexp.cc
|
||||
+++ b/v8/src/runtime/runtime-regexp.cc
|
||||
@@ -3,7 +3,9 @@
|
||||
// found in the LICENSE file.
|
||||
|
||||
#include <functional>
|
||||
+#include <type_traits>
|
||||
|
||||
+#include "hwy/highway.h"
|
||||
#include "src/base/small-vector.h"
|
||||
#include "src/base/strings.h"
|
||||
#include "src/common/message-template.h"
|
||||
@@ -2164,13 +2166,92 @@ inline void RegExpMatchGlobalAtom_OneCharPattern(
|
||||
Isolate* isolate, base::Vector<const SChar> subject, const PChar pattern,
|
||||
int start_index, int* number_of_matches, int* last_match_index,
|
||||
const DisallowGarbageCollection& no_gc) {
|
||||
- for (int i = start_index; i < subject.length(); i++) {
|
||||
- // Subtle: the valid variants are {SChar,PChar} in:
|
||||
- // {uint8_t,uint8_t}, {uc16,uc16}, {uc16,uint8_t}. In the latter case,
|
||||
- // we cast the uint8_t pattern to uc16 for the comparison.
|
||||
- if (subject[i] != static_cast<const SChar>(pattern)) continue;
|
||||
- (*number_of_matches)++;
|
||||
- (*last_match_index) = i;
|
||||
+ static_assert(std::is_unsigned_v<SChar>);
|
||||
+ static_assert(std::is_unsigned_v<PChar>);
|
||||
+ // We can utilize SIMD to check multiple characters at once.
|
||||
+ // Since the pattern is a single char, we create a mask setting each lane in
|
||||
+ // the vector to the pattern char.
|
||||
+ // Since reductions from a vector to a general purpose register (i.e.
|
||||
+ // ReduceSum in this algorithm) are expensive, we keep a count for each lane
|
||||
+ // in a vector until the count could potentially overflow and only reduce to
|
||||
+ // a general purpose register then. I.e. if SChar is uint8_t, we have a
|
||||
+ // 16xuint8_t vector to count matches, which we reduce to an int every 255
|
||||
+ // blocks.
|
||||
+ namespace hw = hwy::HWY_NAMESPACE;
|
||||
+ hw::ScalableTag<SChar> tag;
|
||||
+ // We need a wider tag to avoid overflows on lanes when summing up submatches.
|
||||
+ using WidenedTag = hw::RepartitionToWide<decltype(tag)>;
|
||||
+ WidenedTag sum_tag;
|
||||
+ static constexpr size_t stride = hw::Lanes(tag);
|
||||
+ // Subtle: the valid variants are {SChar,PChar} in:
|
||||
+ // {uint8_t,uint8_t}, {uc16,uc16}, {uc16,uint8_t}. In the latter case,
|
||||
+ // we cast the uint8_t pattern to uc16 for the comparison.
|
||||
+ const auto mask = hw::Set(tag, static_cast<const SChar>(pattern));
|
||||
+
|
||||
+ int matches = 0;
|
||||
+ auto submatches = hw::Zero(tag);
|
||||
+ const SChar* last_match_block = nullptr;
|
||||
+ hw::Mask<decltype(tag)> last_match_vec;
|
||||
+
|
||||
+ const SChar* block = subject.data() + start_index;
|
||||
+ const SChar* end = subject.data() + subject.length();
|
||||
+
|
||||
+ // ReduceSum is expensive, so we gather matches into a vector. max_count is
|
||||
+ // the maximum number of matches we can count in the vector before it
|
||||
+ // overflows.
|
||||
+ int max_count = std::numeric_limits<SChar>::max();
|
||||
+ while (block + stride * max_count <= end) {
|
||||
+ for (int i = 0; i < max_count; i++, block += stride) {
|
||||
+ const auto input = hw::LoadU(tag, block);
|
||||
+ const auto match = input == mask;
|
||||
+ // Lanes with matches have all bits set, so we subtract to increase the
|
||||
+ // count by 1.
|
||||
+ submatches = hw::Sub(submatches, hw::VecFromMask(tag, match));
|
||||
+ if (!hw::AllFalse(tag, match)) {
|
||||
+ last_match_block = block;
|
||||
+ last_match_vec = match;
|
||||
+ }
|
||||
+ }
|
||||
+ // SumsOf2 promotes the sum of 2 consecutive lanes into a wider lane.
|
||||
+ auto promoted_submatches = hw::SumsOf2(submatches);
|
||||
+ // Wider lane sums can be reduces without overflows.
|
||||
+ matches += hw::ReduceSum(sum_tag, promoted_submatches);
|
||||
+ submatches = hw::Zero(tag);
|
||||
+ }
|
||||
+
|
||||
+ // For blocks shorter than stride * max_count, lanes in submatches can't
|
||||
+ // overflow.
|
||||
+ DCHECK_LT(end - block, stride * max_count);
|
||||
+ for (; block + stride <= end; block += stride) {
|
||||
+ const auto input = hw::LoadU(tag, block);
|
||||
+ const auto match = input == mask;
|
||||
+ submatches = hw::Sub(submatches, hw::VecFromMask(tag, match));
|
||||
+ if (!hw::AllFalse(tag, match)) {
|
||||
+ last_match_block = block;
|
||||
+ last_match_vec = match;
|
||||
+ }
|
||||
+ }
|
||||
+ auto promoted_submatches = hw::SumsOf2(submatches);
|
||||
+ matches += hw::ReduceSum(sum_tag, promoted_submatches);
|
||||
+
|
||||
+ // Handle remaining chars.
|
||||
+ // last_match_block already contains the last match position, so use a special
|
||||
+ // vector with lane 0 set to extract the last_match_index later.
|
||||
+ const auto scalar_last_match_vec = hw::FirstN(tag, 1);
|
||||
+ for (SChar c = *block; block < end; c = *(++block)) {
|
||||
+ if (c != static_cast<const SChar>(pattern)) continue;
|
||||
+ matches++;
|
||||
+ last_match_block = block;
|
||||
+ last_match_vec = scalar_last_match_vec;
|
||||
+ }
|
||||
+
|
||||
+ // Store results.
|
||||
+ *number_of_matches += matches;
|
||||
+ if (last_match_block != nullptr) {
|
||||
+ DCHECK(!hw::AllFalse(tag, last_match_vec));
|
||||
+ *last_match_index = static_cast<int>(
|
||||
+ last_match_block + hw::FindKnownLastTrue(tag, last_match_vec) -
|
||||
+ subject.data());
|
||||
}
|
||||
}
|
||||
|
||||
55
v8-simd-flax-vector-conversions.patch
Normal file
55
v8-simd-flax-vector-conversions.patch
Normal file
@@ -0,0 +1,55 @@
|
||||
--- src/v8/src/objects/simd.cc.orig 2025-08-15 17:36:40.113358284 +0200
|
||||
+++ src/v8/src/objects/simd.cc 2025-08-17 16:29:26.826424105 +0200
|
||||
@@ -953,7 +953,7 @@ bool Uint8ArrayFromHexWithNeon(const bas
|
||||
uint8x16_t second_part_first_batch =
|
||||
vld1q_u8(reinterpret_cast<const uint8_t*>(&input_vector[i + 8]));
|
||||
first_batch =
|
||||
- vmovn_high_u16(vmovn_u16(first_batch), second_part_first_batch);
|
||||
+ vmovn_high_u16(vmovn_u16(vreinterpretq_u16_u8(first_batch)), vreinterpretq_u16_u8(second_part_first_batch));
|
||||
}
|
||||
|
||||
// Load second batch of 16 hex characters into a Neon register
|
||||
@@ -966,20 +966,20 @@ bool Uint8ArrayFromHexWithNeon(const bas
|
||||
uint8x16_t second_part_second_batch =
|
||||
vld1q_u8(reinterpret_cast<const uint8_t*>(&input_vector[i + 24]));
|
||||
second_batch =
|
||||
- vmovn_high_u16(vmovn_u16(second_batch), second_part_second_batch);
|
||||
+ vmovn_high_u16(vmovn_u16(vreinterpretq_u16_u8(second_batch)), vreinterpretq_u16_u8(second_part_second_batch));
|
||||
}
|
||||
|
||||
// low nibbles are values with even indexes in fist_batch.
|
||||
// (0x36, 0x00, 0x66, 0x00, 0x46, 0x00, 0x32, 0x00, 0x31, 0x00, 0x32, 0x00,
|
||||
// 0x31, 0x00, 0x32, 0x00)
|
||||
- uint8x16_t first_batch_lo_nibbles =
|
||||
- vreinterpretq_u8_u16(vshrq_n_u16(vreinterpretq_u16_u8(first_batch), 8));
|
||||
+ uint16x8_t first_batch_lo_nibbles =
|
||||
+ vshrq_n_u16(vreinterpretq_u16_u8(first_batch), 8);
|
||||
|
||||
// low nibbles are values with even indexes in second_batch.
|
||||
// (0x36, 0x00, 0x66, 0x00, 0x66, 0x00, 0x32, 0x00, 0x31, 0x00, 0x32, 0x00,
|
||||
// 0x31, 0x00, 0x66, 0x00)
|
||||
- uint8x16_t second_batch_lo_nibbles = vreinterpretq_u8_u16(
|
||||
- vshrq_n_u16(vreinterpretq_u16_u8(second_batch), 8));
|
||||
+ uint16x8_t second_batch_lo_nibbles =
|
||||
+ vshrq_n_u16(vreinterpretq_u16_u8(second_batch), 8);
|
||||
|
||||
// Append low nibbles of first batch and second batch and remove 0x00s.
|
||||
// (0x36, 0x66, 0x46, 0x32, 0x31, 0x32, 0x31, 0x32, 0x36, 0x66, 0x66, 0x32,
|
||||
@@ -992,7 +992,7 @@ bool Uint8ArrayFromHexWithNeon(const bas
|
||||
// significant byte. (0x36, 0x36, 0x36, 0x36, 0x36, 0x37, 0x36, 0x37, 0x36,
|
||||
// 0x36, 0x36, 0x36, 0x36, 0x37, 0x36, 0x66)
|
||||
uint8x16_t hi_nibbles =
|
||||
- vmovn_high_u16(vmovn_u16(first_batch), second_batch);
|
||||
+ vmovn_high_u16(vmovn_u16(vreinterpretq_u16_u8(first_batch)), vreinterpretq_u16_u8(second_batch));
|
||||
|
||||
// mapping low nibbles to uint8_t values.
|
||||
// (0x06, 0x0f, 0x0f, 0x02, 0x01, 0x02, 0x01, 0x02, 0x06, 0x0f, 0x0f, 0x02,
|
||||
@@ -1023,7 +1023,7 @@ bool Uint8ArrayFromHexWithNeon(const bas
|
||||
// (0x60, 0x60, 0x60, 0x60, 0x60, 0x70, 0x60, 0x70, 0x60, 0x60, 0x60, 0x60,
|
||||
// 0x60, 0x70, 0x60, 0xf0)
|
||||
uint8x16_t uint8_shifted_high_nibbles =
|
||||
- vshlq_n_u64(vreinterpretq_u64_u8(uint8_high_nibbles), 4);
|
||||
+ vreinterpretq_u8_u64(vshlq_n_u64(vreinterpretq_u64_u8(uint8_high_nibbles), 4));
|
||||
|
||||
// final result of combining pairs of uint8_t values of low and high
|
||||
// nibbles.
|
||||
@@ -5,9 +5,9 @@ These encoders:
|
||||
|
||||
The hardware *decoders*, on the other hand, are useful for Signal Messenger, and should work now.
|
||||
|
||||
--- src/media/gpu/vaapi/vaapi_video_encode_accelerator.cc.orig 2025-07-02 22:10:56.136470571 +0200
|
||||
+++ src/media/gpu/vaapi/vaapi_video_encode_accelerator.cc 2025-07-11 18:16:04.978530973 +0200
|
||||
@@ -43,13 +43,10 @@
|
||||
--- src/media/gpu/vaapi/vaapi_video_encode_accelerator.cc.orig 2025-07-19 11:32:35.717979936 +0200
|
||||
+++ src/media/gpu/vaapi/vaapi_video_encode_accelerator.cc 2025-08-15 14:42:43.908933011 +0200
|
||||
@@ -46,13 +46,10 @@
|
||||
#include "media/gpu/gpu_video_encode_accelerator_helpers.h"
|
||||
#include "media/gpu/h264_dpb.h"
|
||||
#include "media/gpu/macros.h"
|
||||
@@ -21,7 +21,7 @@ The hardware *decoders*, on the other hand, are useful for Signal Messenger, and
|
||||
#include "media/gpu/vp8_reference_frame_vector.h"
|
||||
#include "media/gpu/vp9_reference_frame_vector.h"
|
||||
|
||||
@@ -230,8 +227,7 @@ bool VaapiVideoEncodeAccelerator::Initia
|
||||
@@ -233,8 +230,7 @@ EncoderStatus VaapiVideoEncodeAccelerato
|
||||
}
|
||||
|
||||
const VideoCodec codec = VideoCodecProfileToVideoCodec(config.output_profile);
|
||||
@@ -30,8 +30,8 @@ The hardware *decoders*, on the other hand, are useful for Signal Messenger, and
|
||||
+ if (codec != VideoCodec::kH264) {
|
||||
MEDIA_LOG(ERROR, media_log.get())
|
||||
<< "Unsupported profile: " << GetProfileName(config.output_profile);
|
||||
return false;
|
||||
@@ -321,11 +317,6 @@ void VaapiVideoEncodeAccelerator::Initia
|
||||
return {EncoderStatus::Codes::kEncoderInitializationError};
|
||||
@@ -324,11 +320,6 @@ void VaapiVideoEncodeAccelerator::Initia
|
||||
: VaapiWrapper::kEncodeVariableBitrate;
|
||||
}
|
||||
break;
|
||||
@@ -43,7 +43,7 @@ The hardware *decoders*, on the other hand, are useful for Signal Messenger, and
|
||||
default:
|
||||
NotifyError({EncoderStatus::Codes::kEncoderUnsupportedCodec,
|
||||
"Unsupported codec: " + GetCodecName(output_codec_)});
|
||||
@@ -377,24 +368,6 @@ void VaapiVideoEncodeAccelerator::Initia
|
||||
@@ -380,24 +371,6 @@ void VaapiVideoEncodeAccelerator::Initia
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -68,20 +68,20 @@ The hardware *decoders*, on the other hand, are useful for Signal Messenger, and
|
||||
default:
|
||||
NOTREACHED() << "Unsupported codec type " << GetCodecName(output_codec_);
|
||||
}
|
||||
@@ -893,19 +866,6 @@ VaapiVideoEncodeAccelerator::CreateEncod
|
||||
picture = new VaapiH264Picture(
|
||||
@@ -896,19 +869,6 @@ VaapiVideoEncodeAccelerator::CreateEncod
|
||||
picture = base::MakeRefCounted<VaapiH264Picture>(
|
||||
reconstructed_surface->ReleaseAsVASurfaceHandle());
|
||||
break;
|
||||
- case VideoCodec::kVP8:
|
||||
- picture = new VaapiVP8Picture(
|
||||
- picture = base::MakeRefCounted<VaapiVP8Picture>(
|
||||
- reconstructed_surface->ReleaseAsVASurfaceHandle());
|
||||
- break;
|
||||
- case VideoCodec::kVP9:
|
||||
- picture = new VaapiVP9Picture(
|
||||
- picture = base::MakeRefCounted<VaapiVP9Picture>(
|
||||
- reconstructed_surface->ReleaseAsVASurfaceHandle());
|
||||
- break;
|
||||
- case VideoCodec::kAV1:
|
||||
- picture = new VaapiAV1Picture(
|
||||
- picture = base::MakeRefCounted<VaapiAV1Picture>(
|
||||
- /*display_va_surface=*/nullptr,
|
||||
- reconstructed_surface->ReleaseAsVASurfaceHandle());
|
||||
- break;
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
--- src/third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu_base.cc.orig 2025-08-15 17:32:29.453405076 +0200
|
||||
+++ src/third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu_base.cc 2025-08-16 09:32:54.602946843 +0200
|
||||
@@ -10,6 +10,7 @@
|
||||
#include "third_party/blink/renderer/platform/graphics/gpu/dawn_control_client_holder.h"
|
||||
#include "third_party/blink/renderer/platform/graphics/gpu/webgpu_callback.h"
|
||||
#include "third_party/blink/renderer/platform/graphics/skia/skia_utils.h"
|
||||
+#include "third_party/blink/renderer/platform/graphics/static_bitmap_image.h"
|
||||
#include "third_party/blink/renderer/platform/graphics/web_graphics_context_3d_provider_util.h"
|
||||
#include "third_party/blink/renderer/platform/weborigin/kurl.h"
|
||||
#include "third_party/blink/renderer/platform/wtf/functional.h"
|
||||
33
webrtc-138-Wchanges-meaning.patch
Normal file
33
webrtc-138-Wchanges-meaning.patch
Normal file
@@ -0,0 +1,33 @@
|
||||
--- webrtc-7204a/third_party/webrtc/pc/codec_vendor.h.orig 2025-08-10 20:30:35.548562304 +0200
|
||||
+++ webrtc-7204a/third_party/webrtc/pc/codec_vendor.h 2025-08-10 21:06:25.516311580 +0200
|
||||
@@ -119,7 +119,7 @@ class CodecVendor {
|
||||
class CodecLookupHelper {
|
||||
public:
|
||||
virtual ~CodecLookupHelper() = default;
|
||||
- virtual PayloadTypeSuggester* PayloadTypeSuggester() = 0;
|
||||
+ virtual webrtc::PayloadTypeSuggester* PayloadTypeSuggester() = 0;
|
||||
// Look up the codec vendor to use, depending on context.
|
||||
// This call may get additional arguments in the future, to aid
|
||||
// in selection of the correct context.
|
||||
--- webrtc-7204a/third_party/webrtc/pc/jsep_transport.h.orig 2025-08-10 20:30:35.552562303 +0200
|
||||
+++ webrtc-7204a/third_party/webrtc/pc/jsep_transport.h 2025-08-10 21:10:32.100282629 +0200
|
||||
@@ -214,7 +214,7 @@ class JsepTransport {
|
||||
return rtp_dtls_transport_;
|
||||
}
|
||||
|
||||
- scoped_refptr<SctpTransport> SctpTransport() const { return sctp_transport_; }
|
||||
+ scoped_refptr<webrtc::SctpTransport> SctpTransport() const { return sctp_transport_; }
|
||||
|
||||
// TODO(bugs.webrtc.org/9719): Delete method, update callers to use
|
||||
// SctpTransport() instead.
|
||||
--- webrtc-7204a/third_party/webrtc/p2p/base/port_interface.h.orig 2025-08-10 20:30:35.544562305 +0200
|
||||
+++ webrtc-7204a/third_party/webrtc/p2p/base/port_interface.h 2025-08-10 20:58:44.792364738 +0200
|
||||
@@ -55,7 +55,7 @@ class PortInterface {
|
||||
virtual ~PortInterface();
|
||||
|
||||
virtual IceCandidateType Type() const = 0;
|
||||
- virtual const Network* Network() const = 0;
|
||||
+ virtual const webrtc::Network* Network() const = 0;
|
||||
|
||||
// Methods to set/get ICE role and tiebreaker values.
|
||||
virtual void SetIceRole(IceRole role) = 0;
|
||||
@@ -1,36 +0,0 @@
|
||||
From 4860148c51cb673711a41bc26135659ad4e6cb9d Mon Sep 17 00:00:00 2001
|
||||
From: Dan Tan <dwtan@google.com>
|
||||
Date: Wed, 31 Jan 2024 09:11:18 -0800
|
||||
Subject: [PATCH] Add WebRTC-LibaomAv1Encoder-MaxConsecFrameDrop parameter to
|
||||
explicitly limit the maximum consecutive frame drop
|
||||
|
||||
Bug: webrtc:15821
|
||||
Change-Id: Ib8be6827ea57e4e54269b94a0fc9ea81945af09f
|
||||
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/337020
|
||||
Reviewed-by: Marco Paniconi <marpan@webrtc.org>
|
||||
Commit-Queue: Dan Tan <dwtan@google.com>
|
||||
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#41648}
|
||||
---
|
||||
experiments/field_trials.py | 3 +++
|
||||
.../codecs/av1/libaom_av1_encoder.cc | 18 ++++++++++++-
|
||||
.../codecs/av1/libaom_av1_encoder_unittest.cc | 25 +++++++++++++++++++
|
||||
3 files changed, 45 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules/video_coding/codecs/av1/libaom_av1_encoder.cc b/modules/video_coding/codecs/av1/libaom_av1_encoder.cc
|
||||
index 4ff22bfe34..03bb367fe0 100644
|
||||
--- a/third_party/webrtc/modules/video_coding/codecs/av1/libaom_av1_encoder.cc
|
||||
+++ b/third_party/webrtc/modules/video_coding/codecs/av1/libaom_av1_encoder.cc
|
||||
@@ -297,6 +307,12 @@ int LibaomAv1Encoder::InitEncode(const VideoCodec* codec_settings,
|
||||
SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_ENABLE_PALETTE, 0);
|
||||
}
|
||||
|
||||
+ if (codec_settings->mode == VideoCodecMode::kRealtimeVideo &&
|
||||
+ encoder_settings_.GetFrameDropEnabled() && max_consec_frame_drop_ > 0) {
|
||||
+ SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR,
|
||||
+ max_consec_frame_drop_);
|
||||
+ }
|
||||
+
|
||||
if (cfg_.g_threads == 8) {
|
||||
// Values passed to AV1E_SET_TILE_ROWS and AV1E_SET_TILE_COLUMNS are log2()
|
||||
// based.
|
||||
@@ -1,250 +0,0 @@
|
||||
From f7a15067031cae07b1dac031fa263a9f01902f1c Mon Sep 17 00:00:00 2001
|
||||
From: Sergey Silkin <ssilkin@webrtc.org>
|
||||
Date: Tue, 9 Jul 2024 15:03:10 +0200
|
||||
Subject: [PATCH] Adjust max consecutive drops depending on target frame rate
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Current thresholds were tuned to guarantee no buffer overshoot in an extreme scenario (encoding a high complexity video in a low bitrate).
|
||||
|
||||
Bug: b/337757868, webrtc:351644568
|
||||
Change-Id: I832b2564af6f18f06550338cc9b3618f8acdf831
|
||||
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/356580
|
||||
Reviewed-by: Dan Tan <dwtan@google.com>
|
||||
Reviewed-by: Erik Språng <sprang@webrtc.org>
|
||||
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#42620}
|
||||
---
|
||||
experiments/field_trials.py | 6 +--
|
||||
modules/video_coding/codecs/av1/BUILD.gn | 2 +
|
||||
.../codecs/av1/libaom_av1_encoder.cc | 42 +++++++++------
|
||||
.../codecs/av1/libaom_av1_encoder_unittest.cc | 53 ++++++++++++++-----
|
||||
4 files changed, 69 insertions(+), 34 deletions(-)
|
||||
|
||||
diff --git a/modules/video_coding/codecs/av1/BUILD.gn b/modules/video_coding/codecs/av1/BUILD.gn
|
||||
index 7d93de7a3a..197e1f3e19 100644
|
||||
--- a/third_party/webrtc/modules/video_coding/codecs/av1/BUILD.gn
|
||||
+++ b/third_party/webrtc/modules/video_coding/codecs/av1/BUILD.gn
|
||||
@@ -60,6 +60,7 @@ rtc_library("libaom_av1_encoder") {
|
||||
"../../../../api/video_codecs:scalability_mode",
|
||||
"../../../../api/video_codecs:video_codecs_api",
|
||||
"../../../../common_video",
|
||||
+ "../../../../modules/rtp_rtcp:rtp_rtcp_format",
|
||||
"../../../../rtc_base:checks",
|
||||
"../../../../rtc_base:logging",
|
||||
"../../../../rtc_base:rtc_numerics",
|
||||
@@ -104,6 +105,7 @@ if (rtc_include_tests) {
|
||||
"../../../../api/units:data_size",
|
||||
"../../../../api/units:time_delta",
|
||||
"../../../../api/video:video_frame",
|
||||
+ "../../../../modules/rtp_rtcp:rtp_rtcp_format",
|
||||
"../../../../test:scoped_key_value_config",
|
||||
"../../svc:scalability_mode_util",
|
||||
"../../svc:scalability_structures",
|
||||
diff --git a/modules/video_coding/codecs/av1/libaom_av1_encoder.cc b/modules/video_coding/codecs/av1/libaom_av1_encoder.cc
|
||||
index 3a8830252d..258d3d3b88 100644
|
||||
--- a/third_party/webrtc/modules/video_coding/codecs/av1/libaom_av1_encoder.cc
|
||||
+++ b/third_party/webrtc/modules/video_coding/codecs/av1/libaom_av1_encoder.cc
|
||||
@@ -30,6 +30,7 @@
|
||||
#include "api/video_codecs/scalability_mode.h"
|
||||
#include "api/video_codecs/video_codec.h"
|
||||
#include "api/video_codecs/video_encoder.h"
|
||||
+#include "modules/rtp_rtcp/include/rtp_rtcp_defines.h"
|
||||
#include "modules/video_coding/include/video_codec_interface.h"
|
||||
#include "modules/video_coding/include/video_error_codes.h"
|
||||
#include "modules/video_coding/svc/create_scalability_structure.h"
|
||||
@@ -65,7 +66,6 @@ constexpr int kLowQindex = 145; // Low qindex threshold for QP scaling.
|
||||
constexpr int kHighQindex = 205; // High qindex threshold for QP scaling.
|
||||
constexpr int kBitDepth = 8;
|
||||
constexpr int kLagInFrames = 0; // No look ahead.
|
||||
-constexpr int kRtpTicksPerSecond = 90000;
|
||||
constexpr double kMinFrameRateFps = 1.0;
|
||||
|
||||
aom_superblock_size_t GetSuperblockSize(int width, int height, int threads) {
|
||||
@@ -133,7 +133,9 @@ class LibaomAv1Encoder final : public VideoEncoder {
|
||||
double framerate_fps_; // Current target frame rate.
|
||||
int64_t timestamp_;
|
||||
const LibaomAv1EncoderInfoSettings encoder_info_override_;
|
||||
- int max_consec_frame_drop_;
|
||||
+ // TODO(webrtc:351644568): Remove this kill-switch after the feature is fully
|
||||
+ // deployed.
|
||||
+ bool adaptive_max_consec_drops_;
|
||||
};
|
||||
|
||||
int32_t VerifyCodecSettings(const VideoCodec& codec_settings) {
|
||||
@@ -164,12 +166,12 @@ int32_t VerifyCodecSettings(const VideoCodec& codec_settings) {
|
||||
return WEBRTC_VIDEO_CODEC_OK;
|
||||
}
|
||||
|
||||
-int GetMaxConsecutiveFrameDrop(const FieldTrialsView& field_trials) {
|
||||
- webrtc::FieldTrialParameter<int> maxdrop("maxdrop", 0);
|
||||
- webrtc::ParseFieldTrial(
|
||||
- {&maxdrop},
|
||||
- field_trials.Lookup("WebRTC-LibaomAv1Encoder-MaxConsecFrameDrop"));
|
||||
- return maxdrop;
|
||||
+int GetMaxConsecDrops(double framerate_fps) {
|
||||
+ // Consecutive frame drops result in a video freeze. We want to minimize the
|
||||
+ // max number of consecutive drops and, at the same time, keep the value high
|
||||
+ // enough to let encoder drain the buffer at overshoot.
|
||||
+ constexpr double kMaxFreezeSeconds = 0.25;
|
||||
+ return std::ceil(kMaxFreezeSeconds * framerate_fps);
|
||||
}
|
||||
|
||||
LibaomAv1Encoder::LibaomAv1Encoder(const Environment& env,
|
||||
@@ -182,7 +184,8 @@ LibaomAv1Encoder::LibaomAv1Encoder(const Environment& env,
|
||||
framerate_fps_(0),
|
||||
timestamp_(0),
|
||||
encoder_info_override_(env.field_trials()),
|
||||
- max_consec_frame_drop_(GetMaxConsecutiveFrameDrop(env.field_trials())) {}
|
||||
+ adaptive_max_consec_drops_(!env.field_trials().IsDisabled(
|
||||
+ "WebRTC-LibaomAv1Encoder-AdaptiveMaxConsecDrops")) {}
|
||||
|
||||
LibaomAv1Encoder::~LibaomAv1Encoder() {
|
||||
Release();
|
||||
@@ -242,7 +245,7 @@ int LibaomAv1Encoder::InitEncode(const VideoCodec* codec_settings,
|
||||
cfg_.g_threads =
|
||||
NumberOfThreads(cfg_.g_w, cfg_.g_h, settings.number_of_cores);
|
||||
cfg_.g_timebase.num = 1;
|
||||
- cfg_.g_timebase.den = kRtpTicksPerSecond;
|
||||
+ cfg_.g_timebase.den = kVideoPayloadTypeFrequency;
|
||||
cfg_.rc_target_bitrate = encoder_settings_.startBitrate; // kilobits/sec.
|
||||
cfg_.rc_dropframe_thresh = encoder_settings_.GetFrameDropEnabled() ? 30 : 0;
|
||||
cfg_.g_input_bit_depth = kBitDepth;
|
||||
@@ -304,12 +307,6 @@ int LibaomAv1Encoder::InitEncode(const VideoCodec* codec_settings,
|
||||
SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_ENABLE_PALETTE, 0);
|
||||
}
|
||||
|
||||
- if (codec_settings->mode == VideoCodecMode::kRealtimeVideo &&
|
||||
- encoder_settings_.GetFrameDropEnabled() && max_consec_frame_drop_ > 0) {
|
||||
- SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR,
|
||||
- max_consec_frame_drop_);
|
||||
- }
|
||||
-
|
||||
if (cfg_.g_threads == 8) {
|
||||
// Values passed to AV1E_SET_TILE_ROWS and AV1E_SET_TILE_COLUMNS are log2()
|
||||
// based.
|
||||
@@ -659,7 +656,7 @@ int32_t LibaomAv1Encoder::Encode(
|
||||
return WEBRTC_VIDEO_CODEC_ENCODER_FAILURE;
|
||||
}
|
||||
|
||||
- const uint32_t duration = kRtpTicksPerSecond / framerate_fps_;
|
||||
+ const uint32_t duration = kVideoPayloadTypeFrequency / framerate_fps_;
|
||||
timestamp_ += duration;
|
||||
|
||||
const size_t num_spatial_layers =
|
||||
@@ -836,6 +833,17 @@ void LibaomAv1Encoder::SetRates(const RateControlParameters& parameters) {
|
||||
SetEncoderControlParameters(AV1E_SET_SVC_PARAMS, &*svc_params_);
|
||||
}
|
||||
|
||||
+ if (adaptive_max_consec_drops_ &&
|
||||
+ (!rates_configured_ || framerate_fps_ != parameters.framerate_fps)) {
|
||||
+ int max_consec_drops = GetMaxConsecDrops(parameters.framerate_fps);
|
||||
+ if (!SetEncoderControlParameters(AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR,
|
||||
+ max_consec_drops)) {
|
||||
+ RTC_LOG(LS_WARNING)
|
||||
+ << "Failed to set AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR to "
|
||||
+ << max_consec_drops;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
framerate_fps_ = parameters.framerate_fps;
|
||||
|
||||
rates_configured_ = true;
|
||||
diff --git a/modules/video_coding/codecs/av1/libaom_av1_encoder_unittest.cc b/modules/video_coding/codecs/av1/libaom_av1_encoder_unittest.cc
|
||||
index abb6fce0cf..a00b03aeda 100644
|
||||
--- a/third_party/webrtc/modules/video_coding/codecs/av1/libaom_av1_encoder_unittest.cc
|
||||
+++ b/third_party/webrtc/modules/video_coding/codecs/av1/libaom_av1_encoder_unittest.cc
|
||||
@@ -10,6 +10,7 @@
|
||||
|
||||
#include "modules/video_coding/codecs/av1/libaom_av1_encoder.h"
|
||||
|
||||
+#include <algorithm>
|
||||
#include <limits>
|
||||
#include <memory>
|
||||
#include <utility>
|
||||
@@ -22,6 +23,7 @@
|
||||
#include "api/test/frame_generator_interface.h"
|
||||
#include "api/video_codecs/video_codec.h"
|
||||
#include "api/video_codecs/video_encoder.h"
|
||||
+#include "modules/rtp_rtcp/include/rtp_rtcp_defines.h"
|
||||
#include "modules/video_coding/codecs/test/encoded_video_frame_producer.h"
|
||||
#include "modules/video_coding/include/video_error_codes.h"
|
||||
#include "test/gmock.h"
|
||||
@@ -37,6 +39,7 @@ using ::testing::Eq;
|
||||
using ::testing::Field;
|
||||
using ::testing::IsEmpty;
|
||||
using ::testing::SizeIs;
|
||||
+using ::testing::Values;
|
||||
|
||||
VideoCodec DefaultCodecSettings() {
|
||||
VideoCodec codec_settings;
|
||||
@@ -199,32 +202,54 @@ TEST(LibaomAv1EncoderTest, CheckOddDimensionsWithSpatialLayers) {
|
||||
ASSERT_THAT(encoded_frames, SizeIs(6));
|
||||
}
|
||||
|
||||
-TEST(LibaomAv1EncoderTest, WithMaximumConsecutiveFrameDrop) {
|
||||
- auto field_trials = std::make_unique<ScopedKeyValueConfig>(
|
||||
- "WebRTC-LibaomAv1Encoder-MaxConsecFrameDrop/maxdrop:2/");
|
||||
- const Environment env = CreateEnvironment(std::move(field_trials));
|
||||
+class LibaomAv1EncoderMaxConsecDropTest
|
||||
+ : public ::testing::TestWithParam</*framerate_fps=*/int> {};
|
||||
+
|
||||
+TEST_P(LibaomAv1EncoderMaxConsecDropTest, MaxConsecDrops) {
|
||||
VideoBitrateAllocation allocation;
|
||||
- allocation.SetBitrate(0, 0, 1000); // some very low bitrate
|
||||
- std::unique_ptr<VideoEncoder> encoder = CreateLibaomAv1Encoder(env);
|
||||
+ allocation.SetBitrate(0, 0,
|
||||
+ 1000); // Very low bitrate to provoke frame drops.
|
||||
+ std::unique_ptr<VideoEncoder> encoder =
|
||||
+ CreateLibaomAv1Encoder(CreateEnvironment());
|
||||
VideoCodec codec_settings = DefaultCodecSettings();
|
||||
codec_settings.SetFrameDropEnabled(true);
|
||||
codec_settings.SetScalabilityMode(ScalabilityMode::kL1T1);
|
||||
codec_settings.startBitrate = allocation.get_sum_kbps();
|
||||
+ codec_settings.maxFramerate = GetParam();
|
||||
ASSERT_EQ(encoder->InitEncode(&codec_settings, DefaultEncoderSettings()),
|
||||
WEBRTC_VIDEO_CODEC_OK);
|
||||
encoder->SetRates(VideoEncoder::RateControlParameters(
|
||||
allocation, codec_settings.maxFramerate));
|
||||
- EncodedVideoFrameProducer evfp(*encoder);
|
||||
- evfp.SetResolution(
|
||||
- RenderResolution{codec_settings.width, codec_settings.height});
|
||||
- // We should code the first frame, skip two, then code another frame.
|
||||
std::vector<EncodedVideoFrameProducer::EncodedFrame> encoded_frames =
|
||||
- evfp.SetNumInputFrames(4).Encode();
|
||||
- ASSERT_THAT(encoded_frames, SizeIs(2));
|
||||
- // The 4 frames have default Rtp-timestamps of 1000, 4000, 7000, 10000.
|
||||
- ASSERT_THAT(encoded_frames[1].encoded_image.RtpTimestamp(), 10000);
|
||||
+ EncodedVideoFrameProducer(*encoder)
|
||||
+ .SetNumInputFrames(60)
|
||||
+ .SetFramerateFps(codec_settings.maxFramerate)
|
||||
+ .SetResolution(RenderResolution{320, 180})
|
||||
+ .Encode();
|
||||
+ ASSERT_GE(encoded_frames.size(), 2u);
|
||||
+
|
||||
+ int max_consec_drops = 0;
|
||||
+ for (size_t i = 1; i < encoded_frames.size(); ++i) {
|
||||
+ uint32_t frame_duration_rtp =
|
||||
+ encoded_frames[i].encoded_image.RtpTimestamp() -
|
||||
+ encoded_frames[i - 1].encoded_image.RtpTimestamp();
|
||||
+ // X consecutive drops result in a freeze of (X + 1) frame duration.
|
||||
+ // Subtract 1 to get pure number of drops.
|
||||
+ int num_drops = frame_duration_rtp * codec_settings.maxFramerate /
|
||||
+ kVideoPayloadTypeFrequency -
|
||||
+ 1;
|
||||
+ max_consec_drops = std::max(max_consec_drops, num_drops);
|
||||
+ }
|
||||
+
|
||||
+ const int expected_max_consec_drops =
|
||||
+ std::ceil(0.25 * codec_settings.maxFramerate);
|
||||
+ EXPECT_EQ(max_consec_drops, expected_max_consec_drops);
|
||||
}
|
||||
|
||||
+INSTANTIATE_TEST_SUITE_P(LibaomAv1EncoderMaxConsecDropTests,
|
||||
+ LibaomAv1EncoderMaxConsecDropTest,
|
||||
+ Values(1, 2, 5, 15, 30, 60));
|
||||
+
|
||||
TEST(LibaomAv1EncoderTest, EncoderInfoWithoutResolutionBitrateLimits) {
|
||||
std::unique_ptr<VideoEncoder> encoder =
|
||||
CreateLibaomAv1Encoder(CreateEnvironment());
|
||||
@@ -1,13 +0,0 @@
|
||||
--- src/third_party/blink/renderer/core/xml/parser/xml_document_parser.cc.orig 2025-04-16 14:36:32.758721824 +0200
|
||||
+++ src/third_party/blink/renderer/core/xml/parser/xml_document_parser.cc 2025-04-17 12:06:42.394992144 +0200
|
||||
@@ -1507,8 +1507,8 @@ static base::span<const char, N - 1> Cop
|
||||
base::span<const char, N> expanded_entity_chars) {
|
||||
auto entity_buffer =
|
||||
base::as_writable_chars(base::span(g_shared_xhtml_entity_result));
|
||||
- entity_buffer.first<N>().copy_from(expanded_entity_chars);
|
||||
- return entity_buffer.first<N - 1>();
|
||||
+ entity_buffer.template first<N>().copy_from(expanded_entity_chars);
|
||||
+ return entity_buffer.template first<N - 1>();
|
||||
}
|
||||
|
||||
static base::span<const char> ConvertUTF16EntityToUTF8(
|
||||
10
xr_webgl_swap_chain-incomplete-StaticBitmapImage.patch
Normal file
10
xr_webgl_swap_chain-incomplete-StaticBitmapImage.patch
Normal file
@@ -0,0 +1,10 @@
|
||||
--- src/third_party/blink/renderer/modules/xr/xr_webgl_swap_chain.h.orig 2025-08-15 17:32:29.469405073 +0200
|
||||
+++ src/third_party/blink/renderer/modules/xr/xr_webgl_swap_chain.h 2025-08-16 00:08:44.433036412 +0200
|
||||
@@ -8,6 +8,7 @@
|
||||
#include "third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h"
|
||||
#include "third_party/blink/renderer/modules/webgl/webgl_unowned_texture.h"
|
||||
#include "third_party/blink/renderer/modules/xr/xr_swap_chain.h"
|
||||
+#include "third_party/blink/renderer/platform/graphics/static_bitmap_image.h"
|
||||
#include "third_party/blink/renderer/platform/heap/garbage_collected.h"
|
||||
#include "third_party/blink/renderer/platform/heap/member.h"
|
||||
|
||||
Reference in New Issue
Block a user