Changes of Revision 20

chromium-ffmpeg-extra.changes Changed
x
 
1
@@ -1,4 +1,132 @@
2
 -------------------------------------------------------------------
3
+Wed Dec 15 10:54:35 UTC 2021 - Callum Farmer <gmbr3@opensuse.org>
4
+
5
+- Revert to gcc10 on TW: gcc11 is entirely broken
6
+- No auto thread LTO: linker crash on ARM
7
+
8
+-------------------------------------------------------------------
9
+Tue Dec 14 15:24:47 UTC 2021 - Andreas Stieger <andreas.stieger@gmx.de>
10
+
11
+- Chromium 96.0.4664.110 (boo#1193713):
12
+  * CVE-2021-4098: Insufficient data validation in Mojo
13
+  * CVE-2021-4099: Use after free in Swiftshader
14
+  * CVE-2021-4100: Object lifecycle issue in ANGLE
15
+  * CVE-2021-4101: Heap buffer overflow in Swiftshader
16
+  * CVE-2021-4102: Use after free in V8
17
+
18
+-------------------------------------------------------------------
19
+Thu Dec  9 09:49:23 UTC 2021 - Callum Farmer <gmbr3@opensuse.org>
20
+
21
+- Lord of the Browsers: The Two Compilers:
22
+  * Go back to GCC
23
+  * GCC: LTO removes needed assembly symbols
24
+  * Clang: issues with libstdc++
25
+- Chromium 96.0.4664.93 (boo#1193519):
26
+  * CVE-2021-4052: Use after free in web apps
27
+  * CVE-2021-4053: Use after free in UI
28
+  * CVE-2021-4079: Out of bounds write in WebRTC
29
+  * CVE-2021-4054: Incorrect security UI in autofill
30
+  * CVE-2021-4078: Type confusion in V8
31
+  * CVE-2021-4055: Heap buffer overflow in extensions
32
+  * CVE-2021-4056: Type Confusion in loader
33
+  * CVE-2021-4057: Use after free in file API
34
+  * CVE-2021-4058: Heap buffer overflow in ANGLE
35
+  * CVE-2021-4059: Insufficient data validation in loader
36
+  * CVE-2021-4061: Type Confusion in V8
37
+  * CVE-2021-4062: Heap buffer overflow in BFCache
38
+  * CVE-2021-4063: Use after free in developer tools
39
+  * CVE-2021-4064: Use after free in screen capture
40
+  * CVE-2021-4065: Use after free in autofill
41
+  * CVE-2021-4066: Integer underflow in ANGLE
42
+  * CVE-2021-4067: Use after free in window manager
43
+  * CVE-2021-4068: Insufficient validation of untrusted input in new tab page
44
+- Chromium 96.0.4664.45 (boo#1192734):
45
+  * CVE-2021-38007: Type Confusion in V8
46
+  * CVE-2021-38008: Use after free in media
47
+  * CVE-2021-38009: Inappropriate implementation in cache
48
+  * CVE-2021-38006: Use after free in storage foundation
49
+  * CVE-2021-38005: Use after free in loader
50
+  * CVE-2021-38010: Inappropriate implementation in service workers
51
+  * CVE-2021-38011: Use after free in storage foundation
52
+  * CVE-2021-38012: Type Confusion in V8
53
+  * CVE-2021-38013: Heap buffer overflow in fingerprint recognition
54
+  * CVE-2021-38014: Out of bounds write in Swiftshader
55
+  * CVE-2021-38015: Inappropriate implementation in input
56
+  * CVE-2021-38016: Insufficient policy enforcement in background fetch
57
+  * CVE-2021-38017: Insufficient policy enforcement in iframe sandbox
58
+  * CVE-2021-38018: Inappropriate implementation in navigation
59
+  * CVE-2021-38019: Insufficient policy enforcement in CORS
60
+  * CVE-2021-38020: Insufficient policy enforcement in contacts picker
61
+  * CVE-2021-38021: Inappropriate implementation in referrer
62
+  * CVE-2021-38022: Inappropriate implementation in WebAuthentication
63
+- Removed old patches:
64
+  * chromium-95-compiler.patch
65
+  * chromium-95-BitstreamReader-namespace.patch
66
+  * chromium-95-system-zlib.patch
67
+  * chromium-older-harfbuzz.patch
68
+  * pipewire-do-not-typecheck-the-portal-session_handle.patch
69
+- Removed build breaking patches:
70
+  * chromium-93-EnumTable-crash.patch
71
+- Added patches:
72
+  * chromium-96-compiler.patch
73
+  * chromium-96-CommandLine-include.patch
74
+  * chromium-96-RestrictedCookieManager-tuple.patch
75
+  * chromium-96-DrmRenderNodePathFinder-include.patch
76
+  * chromium-96-CouponDB-include.patch
77
+- Changed patches:
78
+  * gcc-enable-lto.patch: see above
79
+
80
+-------------------------------------------------------------------
81
+Fri Nov 19 09:32:39 UTC 2021 - Callum Farmer <gmbr3@opensuse.org>
82
+
83
+- Ensure newer libs and LLVM is used on Leap (boo#1192310)
84
+
85
+-------------------------------------------------------------------
86
+Wed Nov 17 10:08:55 UTC 2021 - Steve Kowalik <steven.kowalik@suse.com>
87
+
88
+- Explicitly BuildRequire python3-six.
89
+
90
+-------------------------------------------------------------------
91
+Wed Nov 10 20:03:53 UTC 2021 - Carsten Ziepke <kieltux@gmail.com>
92
+
93
+- Chromium 95.0.4638.69 (boo#1192184):
94
+  * CVE-2021-37997: Use after free in Sign-In
95
+  * CVE-2021-37998: Use after free in Garbage Collection
96
+  * CVE-2021-37999: Insufficient data validation in New Tab Page
97
+  * CVE-2021-38000: Insufficient validation of untrusted input in Intents
98
+  * CVE-2021-38001: Type Confusion in V8
99
+  * CVE-2021-38002: Use after free in Web Transport
100
+  * CVE-2021-38003: Inappropriate implementation in V8
101
+- Chromium 95.0.4638.54 (boo#1191844):
102
+  * CVE-2021-37981: Heap buffer overflow in Skia
103
+  * CVE-2021-37982: Use after free in Incognito
104
+  * CVE-2021-37983: Use after free in Dev Tools
105
+  * CVE-2021-37984: Heap buffer overflow in PDFium
106
+  * CVE-2021-37985: Use after free in V8
107
+  * CVE-2021-37986: Heap buffer overflow in Settings
108
+  * CVE-2021-37987: Use after free in Network APIs
109
+  * CVE-2021-37988: Use after free in Profiles
110
+  * CVE-2021-37989: Inappropriate implementation in Blink
111
+  * CVE-2021-37990: Inappropriate implementation in WebView
112
+  * CVE-2021-37991: Race in V8
113
+  * CVE-2021-37992: Out of bounds read in WebAudio
114
+  * CVE-2021-37993: Use after free in PDF Accessibility
115
+  * CVE-2021-37996: Insufficient validation of untrusted input in Downloads
116
+  * CVE-2021-37994: Inappropriate implementation in iFrame Sandbox
117
+  * CVE-2021-37995: Inappropriate implementation in WebApp Installer
118
+- Added patches:
119
+  * chromium-95-BitstreamReader-namespace.patch
120
+  * chromium-95-compiler.patch
121
+  * chromium-95-libyuv-aarch64.patch
122
+  * chromium-95-quiche-include.patch
123
+  * chromium-95-system-zlib.patch
124
+- Removed patches:
125
+  * chromium-94-compiler.patch
126
+  * chromium-91-libyuv-aarch64.patch
127
+  * chromium-90-ruy-include.patch
128
+  * chromium-94-CustomSpaces-include.patch
129
+
130
+-------------------------------------------------------------------
131
 Sat Oct  9 05:32:48 UTC 2021 - Carsten Ziepke <kieltux@gmail.com>
132
 
133
 - Removed patches:
134
@@ -57,8 +185,16 @@
135
   * chromium-93-InkDropHost-crash.patch
136
   * chromium-91-compiler.patch
137
   * chromium-glibc-2.33.patch
138
-  * chromium-shim_headers.patch
139
-  
140
+  * chromium-shim_headers.patch 
141
+
142
+-------------------------------------------------------------------
143
+Fri Sep 24 17:16:41 UTC 2021 - Carsten Ziepke <kieltux@gmail.com>
144
+
145
+- Add patch to fix Leap 15.2 build:
146
+  * chromium-ffmpeg-lp152.patch
147
+- Change system-libdrm.patch: add to unbundle instead of changing
148
+  header path
149
+
150
 -------------------------------------------------------------------
151
 Sun Sep 19 19:41:03 UTC 2021 - Carsten Ziepke <kieltux@gmail.com>
152
 
153
chromium-ffmpeg-extra.spec Changed
201
 
1
@@ -17,42 +17,47 @@
2
 
3
 
4
 %define rname chromium
5
+%define outputdir ${TMPOUT}
6
 # bsc#1108175
7
 %define __provides_exclude ^lib.*\\.so.*$
8
-%if 0%{?suse_version} > 1500
9
+%if 0%{?suse_version} >= 1550
10
 %bcond_without system_icu
11
 %bcond_with system_vpx
12
 %else
13
 %bcond_with system_icu
14
 %bcond_with system_vpx
15
 %endif
16
-%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150200
17
-%bcond_without system_harfbuzz
18
+%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150200
19
 %bcond_without pipewire
20
 %else
21
-%bcond_with system_harfbuzz
22
 %bcond_with pipewire
23
 %endif
24
+%bcond_without system_zlib
25
+%bcond_with system_freetype
26
 %ifarch %{arm} aarch64
27
 %bcond_with swiftshader
28
 %else
29
 %bcond_without swiftshader
30
 %endif
31
-%bcond_with lto
32
-%bcond_without clang
33
+%if 0%{?suse_version} >= 1550
34
+%bcond_without system_harfbuzz
35
+%else
36
+%bcond_with system_harfbuzz
37
+%endif
38
+%bcond_without lto
39
+%bcond_with clang
40
 Name:           chromium-ffmpeg-extra
41
-Version:        94.0.4606.81
42
+Version:        96.0.4664.110
43
 Release:        0
44
-Summary:        Extra ffmpeg codecs for browsers based on Chromium
45
+Summary:        Google's open source browser project
46
 License:        BSD-3-Clause AND LGPL-2.1-or-later
47
 URL:            https://www.chromium.org/
48
 Source0:        https://commondatastorage.googleapis.com/chromium-browser-official/%{rname}-%{version}.tar.xz
49
 Source1:        README.SUSE
50
-Source2:        https://github.com/google/highway/archive/refs/tags/0.12.2.tar.gz#/highway-0.12.2.tar.gz
51
 # Toolchain definitions
52
 Source30:       master_preferences
53
 Source104:      chromium-symbolic.svg
54
-# https://github.com/chromium/chromium/tree/%{version}/chrome/installer/linux/common/installer.include
55
+# https://source.chromium.org/chromium/chromium/src/+/refs/tags/%%{version}:chrome/installer/linux/common/installer.include
56
 Source105:      INSTALL.sh
57
 #
58
 Patch0:         chromium-libusb_interrupt_event_handler.patch
59
@@ -75,27 +80,28 @@
60
 # gentoo/fedora/arch patchset
61
 Patch12:        chromium-78-protobuf-RepeatedPtrField-export.patch
62
 Patch13:        chromium-80-QuicStreamSendBuffer-deleted-move-constructor.patch
63
-Patch15:        chromium-94-compiler.patch
64
+Patch15:        chromium-96-compiler.patch
65
 Patch17:        chromium-86-ImageMemoryBarrierData-init.patch
66
 Patch18:        chromium-86-nearby-explicit.patch
67
 Patch19:        chromium-86-nearby-include.patch
68
 Patch20:        chromium-86-f_seal.patch
69
 Patch21:        chromium-gcc11.patch
70
 Patch25:        chromium-90-fseal.patch
71
-Patch29:        chromium-93-EnumTable-crash.patch
72
 Patch31:        chromium-89-missing-cstring-header.patch
73
-Patch36:        chromium-90-ruy-include.patch
74
 Patch40:        chromium-91-java-only-allowed-in-android-builds.patch
75
-Patch44:        chromium-91-libyuv-aarch64.patch
76
+Patch44:        chromium-95-libyuv-aarch64.patch
77
 Patch46:        chromium-91-sql-standard-layout-type.patch
78
 Patch50:        chromium-clang-nomerge.patch
79
 Patch51:        chromium-glibc-2.34.patch
80
 Patch62:        chromium-93-ffmpeg-4.4.patch
81
 Patch63:        chromium-ffmpeg-lp152.patch
82
-Patch64:        chromium-94-CustomSpaces-include.patch
83
 Patch65:        chromium-94-sql-no-assert.patch
84
-Patch67:        chromium-older-harfbuzz.patch
85
 Patch69:        chromium-93-InkDropHost-crash.patch
86
+Patch72:        chromium-95-quiche-include.patch
87
+Patch73:        chromium-96-CommandLine-include.patch
88
+Patch74:        chromium-96-RestrictedCookieManager-tuple.patch
89
+Patch75:        chromium-96-DrmRenderNodePathFinder-include.patch
90
+Patch76:        chromium-96-CouponDB-include.patch
91
 # Google seem not too keen on merging this but GPU accel is quite important
92
 #  https://chromium-review.googlesource.com/c/chromium/src/+/532294
93
 #  https://github.com/saiarcot895/chromium-ubuntu-build/tree/master/debian/patches
94
@@ -130,9 +136,9 @@
95
 BuildRequires:  nodejs >= 8.0
96
 BuildRequires:  pam-devel
97
 BuildRequires:  pkgconfig
98
-BuildRequires:  python
99
 BuildRequires:  python3
100
 BuildRequires:  python3-setuptools
101
+BuildRequires:  python3-six
102
 BuildRequires:  snappy-devel
103
 BuildRequires:  update-desktop-files
104
 BuildRequires:  util-linux
105
@@ -146,7 +152,6 @@
106
 BuildRequires:  pkgconfig(dri)
107
 BuildRequires:  pkgconfig(expat)
108
 BuildRequires:  pkgconfig(flac++)
109
-BuildRequires:  pkgconfig(freetype2)
110
 BuildRequires:  pkgconfig(gbm)
111
 BuildRequires:  pkgconfig(glib-2.0)
112
 BuildRequires:  pkgconfig(gtk+-2.0)
113
@@ -212,7 +217,6 @@
114
 BuildRequires:  pkgconfig(xshmfence)
115
 BuildRequires:  pkgconfig(xt)
116
 BuildRequires:  pkgconfig(xtst)
117
-BuildRequires:  pkgconfig(zlib)
118
 Requires:       xdg-utils
119
 Requires(pre):  permissions
120
 
121
@@ -234,19 +238,34 @@
122
 %if %{with system_vpx}
123
 BuildRequires:  pkgconfig(vpx) >= 1.8.2
124
 %endif
125
+%if %{with system_freetype}
126
+BuildRequires:  pkgconfig(freetype2)
127
+%endif
128
+%if %{with system_zlib}
129
+BuildRequires:  pkgconfig(zlib)
130
+%endif
131
 %if %{with clang}
132
+%if %{?suse_version} < 1550
133
+BuildRequires:  clang12
134
+BuildRequires:  gcc10
135
+BuildRequires:  libstdc++6-devel-gcc10
136
+BuildRequires:  lld12
137
+BuildRequires:  llvm12
138
+%else
139
 BuildRequires:  clang
140
 BuildRequires:  lld
141
 BuildRequires:  llvm
142
-%else
143
+%endif
144
+%endif
145
+%if %{without clang}
146
 BuildRequires:  binutils-gold
147
-%if %{?suse_version} > 1500
148
-BuildRequires:  gcc >= 10
149
-BuildRequires:  gcc-c++ >= 10
150
-%else
151
+#%if %{?suse_version} >= 1550
152
+#BuildRequires:  gcc
153
+#BuildRequires:  gcc-c++
154
+#%else
155
 BuildRequires:  gcc10
156
 BuildRequires:  gcc10-c++
157
-%endif
158
+#%endif
159
 %endif
160
 
161
 %description
162
@@ -254,17 +273,12 @@
163
 (audio and video tags).
164
 
165
 %prep
166
-%ifarch aarch64
167
-%setup -q -T -D -b2 -n highway-0.12.2
168
-%endif
169
 %setup -q -n %{rname}-%{version}
170
 %autopatch -p1
171
 
172
 %build
173
-%ifarch aarch64
174
-rm -rf third_party/highway/src/*
175
-mv ../highway-0.12.2/* third_party/highway/src
176
-%endif
177
+mktemp -d -t chromium-XXXXXXXXXX > temp.txt
178
+export TMPOUT=`cat temp.txt`
179
 # Fix the path to nodejs binary
180
 mkdir -p third_party/node/linux/node-linux-x64/bin
181
 ln -s %{_bindir}/node third_party/node/linux/node-linux-x64/bin/node
182
@@ -362,6 +376,7 @@
183
     third_party/devtools-frontend/src/front_end/third_party/wasmparser
184
     third_party/devtools-frontend/src/third_party
185
     third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
186
+    third_party/distributed_point_functions
187
     third_party/dom_distiller_js
188
     third_party/eigen3
189
     third_party/emoji-segmenter
190
@@ -413,6 +428,8 @@
191
     third_party/lss
192
     third_party/lzma_sdk
193
     third_party/mako
194
+    third_party/maldoca
195
+    third_party/maldoca/src/third_party
196
     third_party/markupsafe
197
     third_party/mesa
198
     third_party/metrics_proto
199
@@ -473,7 +490,6 @@
200
     third_party/tflite
201
chromium-89-missing-cstring-header.patch Changed
44
 
1
@@ -1,6 +1,7 @@
2
-diff -up chromium-89.0.4389.72/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring chromium-89.0.4389.72/third_party/webrtc/audio/utility/channel_mixer.cc
3
---- chromium-89.0.4389.72/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring    2021-03-02 12:48:16.000000000 -0500
4
-+++ chromium-89.0.4389.72/third_party/webrtc/audio/utility/channel_mixer.cc    2021-03-04 13:31:42.894817353 -0500
5
+Index: chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc
6
+===================================================================
7
+--- chromium-96.0.4664.45.orig/third_party/webrtc/audio/utility/channel_mixer.cc
8
++++ chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc
9
 @@ -8,6 +8,8 @@
10
   *  be found in the AUTHORS file in the root of the source tree.
11
   */
12
@@ -10,20 +11,22 @@
13
  #include "audio/utility/channel_mixer.h"
14
  
15
  #include "audio/utility/channel_mixing_matrix.h"
16
-diff -up chromium-89.0.4389.72/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.missing-cstring chromium-89.0.4389.72/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc
17
---- chromium-89.0.4389.72/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.missing-cstring   2021-03-04 13:31:42.895817359 -0500
18
-+++ chromium-89.0.4389.72/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc   2021-03-04 13:45:27.795162431 -0500
19
-@@ -23,6 +23,7 @@
20
- #include <sys/mman.h>
21
+Index: chromium-96.0.4664.45/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc
22
+===================================================================
23
+--- chromium-96.0.4664.45.orig/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc
24
++++ chromium-96.0.4664.45/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc
25
+@@ -19,6 +19,7 @@
26
  #include <sys/syscall.h>
27
+ #include <unistd.h>
28
  
29
 +#include <cstring>
30
  #include <memory>
31
+ #include <string>
32
  #include <utility>
33
- 
34
-diff -up chromium-89.0.4389.72/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring chromium-89.0.4389.72/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc
35
---- chromium-89.0.4389.72/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring   2021-03-02 12:48:17.000000000 -0500
36
-+++ chromium-89.0.4389.72/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc   2021-03-04 13:31:42.895817359 -0500
37
+Index: chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc
38
+===================================================================
39
+--- chromium-96.0.4664.45.orig/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc
40
++++ chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc
41
 @@ -10,6 +10,7 @@
42
  
43
  #include "modules/video_coding/utility/ivf_file_reader.h"
44
chromium-90-ruy-include.patch Deleted
26
 
1
@@ -1,24 +0,0 @@
2
-From 714092f336bb14d2fcc27396ec323b3d843bb962 Mon Sep 17 00:00:00 2001
3
-From: Stephan Hartmann <stha09@googlemail.com>
4
-Date: Thu, 4 Mar 2021 15:05:46 +0000
5
-Subject: [PATCH] IWYU: include limits for std::numeric_limits
6
-
7
----
8
- third_party/ruy/src/ruy/block_map.cc | 1 +
9
- 1 file changed, 1 insertion(+)
10
-
11
-diff --git a/third_party/ruy/src/ruy/block_map.cc b/third_party/ruy/src/ruy/block_map.cc
12
-index 44e5039..a7a7559 100644
13
---- a/third_party/ruy/src/ruy/block_map.cc
14
-+++ b/third_party/ruy/src/ruy/block_map.cc
15
-@@ -17,6 +17,7 @@ limitations under the License.
16
- 
17
- #include <algorithm>
18
- #include <cstdint>
19
-+#include <limits>
20
- 
21
- #ifdef RUY_MAKEBLOCKMAP_DEBUG
22
- #include <cstdio>
23
--- 
24
-2.26.2
25
-
26
chromium-93-EnumTable-crash.patch Deleted
81
 
1
@@ -1,79 +0,0 @@
2
-diff --git a/components/cast_channel/enum_table.h b/components/cast_channel/enum_table.h
3
-index a63ae86..83ada65 100644
4
---- a/components/cast_channel/enum_table.h
5
-+++ b/components/cast_channel/enum_table.h
6
-@@ -8,6 +8,7 @@
7
- #include <cstdint>
8
- #include <cstring>
9
- #include <ostream>
10
-+#include <vector>
11
- 
12
- #include "base/check_op.h"
13
- #include "base/macros.h"
14
-@@ -213,7 +214,7 @@ class
15
- 
16
-   template <typename E>
17
-   friend class EnumTable;
18
--  DISALLOW_COPY_AND_ASSIGN(GenericEnumTableEntry);
19
-+  DISALLOW_ASSIGN(GenericEnumTableEntry);
20
- };
21
- 
22
- // Yes, these constructors really needs to be inlined.  Even though they look
23
-@@ -251,8 +252,7 @@ class EnumTable {
24
-     // Constructor for regular entries.
25
-     constexpr Entry(E value, base::StringPiece str)
26
-         : GenericEnumTableEntry(static_cast<int32_t>(value), str) {}
27
--
28
--    DISALLOW_COPY_AND_ASSIGN(Entry);
29
-+    DISALLOW_ASSIGN(Entry);
30
-   };
31
- 
32
-   static_assert(sizeof(E) <= sizeof(int32_t),
33
-@@ -307,15 +307,14 @@ class EnumTable {
34
-     if (is_sorted_) {
35
-       const std::size_t index = static_cast<std::size_t>(value);
36
-       if (ANALYZER_ASSUME_TRUE(index < data_.size())) {
37
--        const auto& entry = data_.begin()[index];
38
-+        const auto& entry = data_[index];
39
-         if (ANALYZER_ASSUME_TRUE(entry.has_str()))
40
-           return entry.str();
41
-       }
42
-       return absl::nullopt;
43
-     }
44
-     return GenericEnumTableEntry::FindByValue(
45
--        reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
46
--        data_.size(), static_cast<int32_t>(value));
47
-+        &data_[0], data_.size(), static_cast<int32_t>(value));
48
-   }
49
- 
50
-   // This overload of GetString is designed for cases where the argument is a
51
-@@ -343,8 +342,7 @@ class EnumTable {
52
-   // enum value directly.
53
-   absl::optional<E> GetEnum(base::StringPiece str) const {
54
-     auto* entry = GenericEnumTableEntry::FindByString(
55
--        reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
56
--        data_.size(), str);
57
-+        &data_[0], data_.size(), str);
58
-     return entry ? static_cast<E>(entry->value) : absl::optional<E>();
59
-   }
60
- 
61
-@@ -359,7 +357,7 @@ class EnumTable {
62
-   // Align the data on a cache line boundary.
63
-   alignas(64)
64
- #endif
65
--      std::initializer_list<Entry> data_;
66
-+      const std::vector<Entry> data_;
67
-   bool is_sorted_;
68
- 
69
-   constexpr EnumTable(std::initializer_list<Entry> data, bool is_sorted)
70
-@@ -371,8 +369,8 @@ class EnumTable {
71
- 
72
-     for (std::size_t i = 0; i < data.size(); i++) {
73
-       for (std::size_t j = i + 1; j < data.size(); j++) {
74
--        const Entry& ei = data.begin()[i];
75
--        const Entry& ej = data.begin()[j];
76
-+        const Entry& ei = data[i];
77
-+        const Entry& ej = data[j];
78
-         DCHECK(ei.value != ej.value)
79
-             << "Found duplicate enum values at indices " << i << " and " << j;
80
-         DCHECK(!(ei.has_str() && ej.has_str() && ei.str() == ej.str()))
81
chromium-94-CustomSpaces-include.patch Deleted
26
 
1
@@ -1,24 +0,0 @@
2
-From 4eeacdaa57b29a079fe09315eb22557c06aa522e Mon Sep 17 00:00:00 2001
3
-From: Stephan Hartmann <stha09@googlemail.com>
4
-Date: Fri, 13 Aug 2021 12:57:42 +0000
5
-Subject: [PATCH] IWYU: add memory for std::unique_ptr in blink::CustomSpaces
6
-
7
----
8
- .../blink/renderer/platform/heap/v8_wrapper/custom_spaces.h      | 1 +
9
- 1 file changed, 1 insertion(+)
10
-
11
-diff --git a/third_party/blink/renderer/platform/heap/v8_wrapper/custom_spaces.h b/third_party/blink/renderer/platform/heap/v8_wrapper/custom_spaces.h
12
-index df0465a..640cb33 100644
13
---- a/third_party/blink/renderer/platform/heap/v8_wrapper/custom_spaces.h
14
-+++ b/third_party/blink/renderer/platform/heap/v8_wrapper/custom_spaces.h
15
-@@ -5,6 +5,7 @@
16
- #ifndef THIRD_PARTY_BLINK_RENDERER_PLATFORM_HEAP_V8_WRAPPER_CUSTOM_SPACES_H_
17
- #define THIRD_PARTY_BLINK_RENDERER_PLATFORM_HEAP_V8_WRAPPER_CUSTOM_SPACES_H_
18
- 
19
-+#include <memory>
20
- #include <vector>
21
- 
22
- #include "third_party/blink/renderer/platform/platform_export.h"
23
--- 
24
-2.31.1
25
-
26
chromium-94-compiler.patch Deleted
201
 
1
@@ -1,218 +0,0 @@
2
-From f4d0b0eb899005b4b8b6388e1d8bb82cc0018fc8 Mon Sep 17 00:00:00 2001
3
-From: Mike Gilbert <floppym@gentoo.org>
4
-Date: Sun, 8 Aug 2021 08:50:00 +0000
5
-Subject: [PATCH] Disable various compiler configs
6
-
7
----
8
- build/config/compiler/BUILD.gn | 105 ++++++---------------------------
9
- 1 file changed, 17 insertions(+), 88 deletions(-)
10
-
11
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
12
-index 0bb155a..e95c023 100644
13
---- a/build/config/compiler/BUILD.gn
14
-+++ b/build/config/compiler/BUILD.gn
15
-@@ -291,8 +291,6 @@ config("compiler") {
16
- 
17
-   configs += [
18
-     # See the definitions below.
19
--    ":clang_revision",
20
--    ":compiler_cpu_abi",
21
-     ":compiler_codegen",
22
-     ":compiler_deterministic",
23
-   ]
24
-@@ -530,31 +528,6 @@ config("compiler") {
25
-     ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
26
-   }
27
- 
28
--  if (is_clang && !is_nacl && !use_xcode_clang) {
29
--    cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
30
--
31
--    # TODO(hans): Remove this once Clang generates better optimized debug info
32
--    # by default. https://crbug.com/765793
33
--    cflags += [
34
--      "-mllvm",
35
--      "-instcombine-lower-dbg-declare=0",
36
--    ]
37
--    if (!is_debug && use_thin_lto && is_a_target_toolchain) {
38
--      if (is_win) {
39
--        ldflags += [ "-mllvm:-instcombine-lower-dbg-declare=0" ]
40
--      } else {
41
--        ldflags += [ "-Wl,-mllvm,-instcombine-lower-dbg-declare=0" ]
42
--      }
43
--    }
44
--
45
--    # TODO(crbug.com/1235145): Investigate why/if this should be needed.
46
--    if (is_win) {
47
--      cflags += [ "/clang:-ffp-contract=off" ]
48
--    } else {
49
--      cflags += [ "-ffp-contract=off" ]
50
--    }
51
--  }
52
--
53
-   # C11/C++11 compiler flags setup.
54
-   # ---------------------------
55
-   if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) ||
56
-@@ -1216,45 +1189,6 @@ config("compiler_deterministic") {
57
-     }
58
-   }
59
- 
60
--  # Makes builds independent of absolute file path.
61
--  if (is_clang && strip_absolute_paths_from_debug_symbols) {
62
--    # If debug option is given, clang includes $cwd in debug info by default.
63
--    # For such build, this flag generates reproducible obj files even we use
64
--    # different build directory like "out/feature_a" and "out/feature_b" if
65
--    # we build same files with same compile flag.
66
--    # Other paths are already given in relative, no need to normalize them.
67
--    if (is_nacl) {
68
--      # TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here.
69
--      cflags += [
70
--        "-Xclang",
71
--        "-fdebug-compilation-dir",
72
--        "-Xclang",
73
--        ".",
74
--      ]
75
--    } else {
76
--      # -ffile-compilation-dir is an alias for both -fdebug-compilation-dir=
77
--      # and -fcoverage-compilation-dir=.
78
--      cflags += [ "-ffile-compilation-dir=." ]
79
--    }
80
--    if (!is_win) {
81
--      # We don't use clang -cc1as on Windows (yet? https://crbug.com/762167)
82
--      asmflags = [ "-Wa,-fdebug-compilation-dir,." ]
83
--    }
84
--
85
--    if (is_win && use_lld) {
86
--      if (symbol_level == 2 || (is_clang && using_sanitizer)) {
87
--        # Absolutize source file paths for PDB. Pass the real build directory
88
--        # if the pdb contains source-level debug information and if linker
89
--        # reproducibility is not critical.
90
--        ldflags += [ "/PDBSourcePath:" + rebase_path(root_build_dir) ]
91
--      } else {
92
--        # Use a fake fixed base directory for paths in the pdb to make the pdb
93
--        # output fully deterministic and independent of the build directory.
94
--        ldflags += [ "/PDBSourcePath:o:\fake\prefix" ]
95
--      }
96
--    }
97
--  }
98
--
99
-   # Tells the compiler not to use absolute paths when passing the default
100
-   # paths to the tools it invokes. We don't want this because we don't
101
-   # really need it and it can mess up the goma cache entries.
102
-@@ -1658,7 +1592,7 @@ config("chromium_code") {
103
-       defines = [ "_HAS_NODISCARD" ]
104
-     }
105
-   } else {
106
--    cflags = [ "-Wall" ]
107
-+    cflags = []
108
-     if (treat_warnings_as_errors) {
109
-       cflags += [ "-Werror" ]
110
- 
111
-@@ -1667,10 +1601,6 @@ config("chromium_code") {
112
-       # well.
113
-       ldflags = [ "-Werror" ]
114
-     }
115
--    if (is_clang) {
116
--      # Enable extra warnings for chromium_code when we control the compiler.
117
--      cflags += [ "-Wextra" ]
118
--    }
119
- 
120
-     # In Chromium code, we define __STDC_foo_MACROS in order to get the
121
-     # C99 macros on Mac and Linux.
122
-@@ -1679,15 +1609,6 @@ config("chromium_code") {
123
-       "__STDC_FORMAT_MACROS",
124
-     ]
125
- 
126
--    if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
127
--        current_cpu != "s390" && current_cpu != "ppc64" &&
128
--        current_cpu != "mips" && current_cpu != "mips64") {
129
--      # Non-chromium code is not guaranteed to compile cleanly with
130
--      # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
131
--      # disabled, so only do that for Release build.
132
--      defines += [ "_FORTIFY_SOURCE=2" ]
133
--    }
134
--
135
-     if (is_mac) {
136
-       cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
137
-       cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
138
-@@ -2077,7 +1998,8 @@ config("default_stack_frames") {
139
- }
140
- 
141
- # Default "optimization on" config.
142
--config("optimize") {
143
-+config("optimize") { }
144
-+config("xoptimize") {
145
-   if (is_win) {
146
-     if (chrome_pgo_phase != 2) {
147
-       # Favor size over speed, /O1 must be before the common flags.
148
-@@ -2112,7 +2034,8 @@ config("optimize") {
149
- }
150
- 
151
- # Turn off optimizations.
152
--config("no_optimize") {
153
-+config("no_optimize") { }
154
-+config("xno_optimize") {
155
-   if (is_win) {
156
-     cflags = [
157
-       "/Od",  # Disable optimization.
158
-@@ -2152,7 +2075,8 @@ config("no_optimize") {
159
- # Turns up the optimization level. On Windows, this implies whole program
160
- # optimization and link-time code generation which is very expensive and should
161
- # be used sparingly.
162
--config("optimize_max") {
163
-+config("optimize_max") { }
164
-+config("xoptimize_max") {
165
-   if (is_nacl && is_nacl_irt) {
166
-     # The NaCl IRT is a special case and always wants its own config.
167
-     # Various components do:
168
-@@ -2184,7 +2108,8 @@ config("optimize_max") {
169
- #
170
- # TODO(crbug.com/621335) - rework how all of these configs are related
171
- # so that we don't need this disclaimer.
172
--config("optimize_speed") {
173
-+config("optimize_speed") { }
174
-+config("xoptimize_speed") {
175
-   if (is_nacl && is_nacl_irt) {
176
-     # The NaCl IRT is a special case and always wants its own config.
177
-     # Various components do:
178
-@@ -2209,7 +2134,8 @@ config("optimize_speed") {
179
-   }
180
- }
181
- 
182
--config("optimize_fuzzing") {
183
-+config("optimize_fuzzing") { }
184
-+config("xoptimize_fuzzing") {
185
-   cflags = [ "-O1" ] + common_optimize_on_cflags
186
-   ldflags = common_optimize_on_ldflags
187
-   visibility = [ ":default_optimization" ]
188
-@@ -2328,7 +2254,8 @@ config("win_pdbaltpath") {
189
- }
190
- 
191
- # Full symbols.
192
--config("symbols") {
193
-+config("symbols") { }
194
-+config("xsymbols") {
195
-   if (is_win) {
196
-     if (is_clang) {
197
-       cflags = [ "/Z7" ]  # Debug information in the .obj files.
198
-@@ -2431,7 +2358,8 @@ config("symbols") {
199
- # Minimal symbols.
200
- # This config guarantees to hold symbol for stack trace which are shown to user
201
chromium-94-ffmpeg-roll.patch Added
51
 
1
@@ -0,0 +1,49 @@
2
+From b94755e4633045be96ab5e0bdde0db7e16a804bd Mon Sep 17 00:00:00 2001
3
+From: "liberato@chromium.org" <liberato@chromium.org>
4
+Date: Fri, 6 Aug 2021 04:25:31 +0000
5
+Subject: [PATCH] FFmpeg M94 roll.
6
+
7
+Contains DEPS update + chromium-side fixes.
8
+
9
+Bug: 1227259
10
+Change-Id: I61c5eaa789ea12c17d0cbcbf837435b9cf32479b
11
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3011889
12
+Reviewed-by: Thomas Guilbert <tguilbert@chromium.org>
13
+Commit-Queue: Frank Liberato <liberato@chromium.org>
14
+Cr-Commit-Position: refs/heads/master@{#909174}
15
+---
16
+ media/ffmpeg/ffmpeg_common.h    | 1 +
17
+ media/filters/ffmpeg_demuxer.cc | 4 ++--
18
+ 2 files changed, 3 insertions(+), 2 deletions(-)
19
+
20
+diff --git a/media/ffmpeg/ffmpeg_common.h b/media/ffmpeg/ffmpeg_common.h
21
+index cede8ac5a7..97d6307e28 100644
22
+--- a/media/ffmpeg/ffmpeg_common.h
23
++++ b/media/ffmpeg/ffmpeg_common.h
24
+@@ -29,7 +29,6 @@ extern "C" {
25
+ #include <libavformat/avformat.h>
26
+ #include <libavformat/avio.h>
27
+ #include <libavutil/avutil.h>
28
+-#include <libavutil/channel_layout.h>
29
+ #include <libavutil/imgutils.h>
30
+ #include <libavutil/log.h>
31
+ #include <libavutil/mastering_display_metadata.h>
32
+diff --git a/media/filters/ffmpeg_demuxer.cc b/media/filters/ffmpeg_demuxer.cc
33
+index ac4713b072..605001d935 100644
34
+--- a/media/filters/ffmpeg_demuxer.cc
35
++++ b/media/filters/ffmpeg_demuxer.cc
36
+@@ -106,12 +106,12 @@ static base::TimeDelta ExtractStartTime(AVStream* stream) {
37
+ 
38
+   // Next try to use the first DTS value, for codecs where we know PTS == DTS
39
+   // (excludes all H26x codecs). The start time must be returned in PTS.
40
++  if (stream->first_dts != kNoFFmpegTimestamp &&
41
+-  if (av_stream_get_first_dts(stream) != kNoFFmpegTimestamp &&
42
+       stream->codecpar->codec_id != AV_CODEC_ID_HEVC &&
43
+       stream->codecpar->codec_id != AV_CODEC_ID_H264 &&
44
+       stream->codecpar->codec_id != AV_CODEC_ID_MPEG4) {
45
+     const base::TimeDelta first_pts =
46
++        ConvertFromTimeBase(stream->time_base, stream->first_dts);
47
+-        ConvertFromTimeBase(stream->time_base, av_stream_get_first_dts(stream));
48
+     if (first_pts < start_time)
49
+       start_time = first_pts;
50
+   }
51
chromium-91-libyuv-aarch64.patch -> chromium-95-libyuv-aarch64.patch Changed
66
 
1
@@ -28,64 +28,3 @@
2
 +      : "Q"(kShuffleAB64ToARGB)  // %3
3
        : "cc", "memory", "v0", "v1", "v2", "v3", "v4");
4
  }
5
- 
6
-diff --git a/third_party/libyuv/source/scale_neon64.cc b/third_party/libyuv/source/scale_neon64.cc
7
-index 8656fec..9f9636e 100644
8
---- a/third_party/libyuv/source/scale_neon64.cc
9
-+++ b/third_party/libyuv/source/scale_neon64.cc
10
-@@ -601,8 +601,8 @@ void ScaleRowUp2_Bilinear_NEON(const uint8_t* src_ptr,
11
-       "umlal       v4.8h, v1.8b, v31.8b          \n"  // 3*near+far (2, odd)
12
-       "umlal       v5.8h, v0.8b, v31.8b          \n"  // 3*near+far (2, even)
13
- 
14
--      "mov         v0.8h, v4.8h                  \n"
15
--      "mov         v1.8h, v5.8h                  \n"
16
-+      "mov         v0.16b, v4.16b                \n"
17
-+      "mov         v1.16b, v5.16b                \n"
18
-       "mla         v4.8h, v2.8h, v30.8h          \n"  // 9 3 3 1 (1, odd)
19
-       "mla         v5.8h, v3.8h, v30.8h          \n"  // 9 3 3 1 (1, even)
20
-       "mla         v2.8h, v0.8h, v30.8h          \n"  // 9 3 3 1 (2, odd)
21
-@@ -642,7 +642,7 @@ void ScaleRowUp2_Linear_12_NEON(const uint16_t* src_ptr,
22
-       "ld1         {v1.8h}, [%1], #16            \n"  // 12345678 (16b)
23
-       "prfm        pldl1keep, [%0, 448]          \n"  // prefetch 7 lines ahead
24
- 
25
--      "mov         v2.8h, v0.8h                  \n"
26
-+      "mov         v2.16b, v0.16b                \n"
27
-       "mla         v0.8h, v1.8h, v31.8h          \n"  // 3*near+far (odd)
28
-       "mla         v1.8h, v2.8h, v31.8h          \n"  // 3*near+far (even)
29
- 
30
-@@ -679,7 +679,7 @@ void ScaleRowUp2_Bilinear_12_NEON(const uint16_t* src_ptr,
31
-       "ld1         {v3.8h}, [%2], #16            \n"  // 12345678 (16b)
32
-       "prfm        pldl1keep, [%0, 448]          \n"  // prefetch 7 lines ahead
33
- 
34
--      "mov         v0.8h, v2.8h                  \n"
35
-+      "mov         v0.16b, v2.16b                \n"
36
-       "mla         v2.8h, v3.8h, v31.8h          \n"  // 3*near+far (odd)
37
-       "mla         v3.8h, v0.8h, v31.8h          \n"  // 3*near+far (even)
38
- 
39
-@@ -687,12 +687,12 @@ void ScaleRowUp2_Bilinear_12_NEON(const uint16_t* src_ptr,
40
-       "ld1         {v5.8h}, [%3], #16            \n"  // 12345678 (16b)
41
-       "prfm        pldl1keep, [%1, 448]          \n"  // prefetch 7 lines ahead
42
- 
43
--      "mov         v0.8h, v4.8h                  \n"
44
-+      "mov         v0.16b, v4.16b                \n"
45
-       "mla         v4.8h, v5.8h, v31.8h          \n"  // 3*near+far (odd)
46
-       "mla         v5.8h, v0.8h, v31.8h          \n"  // 3*near+far (even)
47
- 
48
--      "mov         v0.8h, v4.8h                  \n"
49
--      "mov         v1.8h, v5.8h                  \n"
50
-+      "mov         v0.16b, v4.16b                \n"
51
-+      "mov         v1.16b, v5.16b                \n"
52
-       "mla         v4.8h, v2.8h, v31.8h          \n"  // 9 3 3 1 (1, odd)
53
-       "mla         v5.8h, v3.8h, v31.8h          \n"  // 9 3 3 1 (1, even)
54
-       "mla         v2.8h, v0.8h, v31.8h          \n"  // 9 3 3 1 (2, odd)
55
-@@ -887,8 +887,8 @@ void ScaleUVRowUp2_Bilinear_NEON(const uint8_t* src_ptr,
56
-       "umlal       v4.8h, v1.8b, v31.8b          \n"  // 3*near+far (2, odd)
57
-       "umlal       v5.8h, v0.8b, v31.8b          \n"  // 3*near+far (2, even)
58
- 
59
--      "mov         v0.8h, v4.8h                  \n"
60
--      "mov         v1.8h, v5.8h                  \n"
61
-+      "mov         v0.16b, v4.16b                \n"
62
-+      "mov         v1.16b, v5.16b                \n"
63
-       "mla         v4.8h, v2.8h, v30.8h          \n"  // 9 3 3 1 (1, odd)
64
-       "mla         v5.8h, v3.8h, v30.8h          \n"  // 9 3 3 1 (1, even)
65
-       "mla         v2.8h, v0.8h, v30.8h          \n"  // 9 3 3 1 (2, odd)
66
chromium-95-quiche-include.patch Added
24
 
1
@@ -0,0 +1,22 @@
2
+From a9d986203bcfbaab84f270c1dc6c3abb4c450ee1 Mon Sep 17 00:00:00 2001
3
+From: Stephan Hartmann <stha09@googlemail.com>
4
+Date: Fri, 17 Sep 2021 14:57:33 +0000
5
+Subject: [PATCH] IWYU: add stddef.h for size_t in WindowManager
6
+
7
+---
8
+ net/third_party/quiche/src/http2/adapter/window_manager.h | 2 ++
9
+ 1 file changed, 2 insertions(+)
10
+
11
+Index: chromium-96.0.4664.45/net/third_party/quiche/src/http2/adapter/window_manager.h
12
+===================================================================
13
+--- chromium-96.0.4664.45.orig/net/third_party/quiche/src/http2/adapter/window_manager.h
14
++++ chromium-96.0.4664.45/net/third_party/quiche/src/http2/adapter/window_manager.h
15
+@@ -3,6 +3,8 @@
16
+ 
17
+ #include <stddef.h>
18
+ 
19
++#include <stddef.h>
20
++
21
+ #include <functional>
22
+ 
23
+ #include "common/platform/api/quiche_export.h"
24
chromium-96-CommandLine-include.patch Added
26
 
1
@@ -0,0 +1,24 @@
2
+From 39e6e77798d86033e5eb1fb2a2caf20a5bca2262 Mon Sep 17 00:00:00 2001
3
+From: Stephan Hartmann <stha09@googlemail.com>
4
+Date: Sat, 9 Oct 2021 08:27:04 +0000
5
+Subject: [PATCH] IWYU: add memory for std::unique_ptr in base::CommandLine
6
+
7
+---
8
+ base/command_line.h | 1 +
9
+ 1 file changed, 1 insertion(+)
10
+
11
+diff --git a/base/command_line.h b/base/command_line.h
12
+index 706726a..ad02812 100644
13
+--- a/base/command_line.h
14
++++ b/base/command_line.h
15
+@@ -19,6 +19,7 @@
16
+ #include <stddef.h>
17
+ #include <functional>
18
+ #include <map>
19
++#include <memory>
20
+ #include <string>
21
+ #include <vector>
22
+ 
23
+-- 
24
+2.32.0
25
+
26
chromium-96-CouponDB-include.patch Added
27
 
1
@@ -0,0 +1,25 @@
2
+From 3a7b8dd0fcceffcfd0ea7e3186d2850deed7a00b Mon Sep 17 00:00:00 2001
3
+From: Stephan Hartmann <stha09@googlemail.com>
4
+Date: Wed, 6 Oct 2021 15:36:47 +0000
5
+Subject: [PATCH] IWYU: add vector for std::vector in CouponDB
6
+
7
+---
8
+ chrome/browser/commerce/coupons/coupon_db.h | 2 ++
9
+ 1 file changed, 2 insertions(+)
10
+
11
+diff --git a/chrome/browser/commerce/coupons/coupon_db.h b/chrome/browser/commerce/coupons/coupon_db.h
12
+index f0758f4..93e2dd3 100644
13
+--- a/chrome/browser/commerce/coupons/coupon_db.h
14
++++ b/chrome/browser/commerce/coupons/coupon_db.h
15
+@@ -5,6 +5,8 @@
16
+ #ifndef CHROME_BROWSER_COMMERCE_COUPONS_COUPON_DB_H_
17
+ #define CHROME_BROWSER_COMMERCE_COUPONS_COUPON_DB_H_
18
+ 
19
++#include <vector>
20
++
21
+ #include "base/callback_helpers.h"
22
+ #include "base/memory/weak_ptr.h"
23
+ #include "url/gurl.h"
24
+-- 
25
+2.32.0
26
+
27
chromium-96-DrmRenderNodePathFinder-include.patch Added
26
 
1
@@ -0,0 +1,24 @@
2
+From 9e36b3c28935fb50d43ccef443be786a8e3f8a5f Mon Sep 17 00:00:00 2001
3
+From: Stephan Hartmann <stha09@googlemail.com>
4
+Date: Sat, 9 Oct 2021 16:17:34 +0000
5
+Subject: [PATCH] IWYU: add string.h for memcmp in ui:: DrmRenderNodePathFinder
6
+
7
+---
8
+ ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.cc | 1 +
9
+ 1 file changed, 1 insertion(+)
10
+
11
+diff --git a/ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.cc b/ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.cc
12
+index 06776a7..d5b7b71 100644
13
+--- a/ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.cc
14
++++ b/ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.cc
15
+@@ -5,6 +5,7 @@
16
+ #include "ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.h"
17
+ 
18
+ #include <fcntl.h>
19
++#include <string.h>
20
+ #include <sys/stat.h>
21
+ #include <sys/types.h>
22
+ #include <unistd.h>
23
+-- 
24
+2.32.0
25
+
26
chromium-96-RestrictedCookieManager-tuple.patch Added
33
 
1
@@ -0,0 +1,31 @@
2
+From 86b1886673c3e75d3a7b8c802b3e9fa6ea945a1e Mon Sep 17 00:00:00 2001
3
+From: Jose Dapena Paz <jdapena@igalia.com>
4
+Date: Fri, 08 Oct 2021 06:32:55 +0000
5
+Subject: [PATCH] libstdc++: no implicit conversion from tuple created with std::tie to an std::pair in restricted cookie manager.
6
+
7
+Fix compilation error:
8
+    ../../services/network/restricted_cookie_manager.cc:164:30: error: no match for ‘operator[]’ (operand types are ‘network::CookieAccessesByURLAndSite’ {aka ‘std::map<std::pair<GURL, net::SiteForCookies>, std::unique_ptr<std::set<net::CookieWithAccessResult, network::CookieWithAccessResultComparer> > >’} and ‘std::tuple<const GURL&, const net::SiteForCookies&>’)
9
+
10
+There is no conversion from tuple to pair.
11
+
12
+Bug: 957519
13
+Change-Id: Idf29c7b21895ae28f45b35d6193ab4ac555945c8
14
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3211752
15
+Reviewed-by: Robbie McElrath <rmcelrath@chromium.org>
16
+Commit-Queue: José Dapena Paz <jdapena@igalia.com>
17
+Cr-Commit-Position: refs/heads/main@{#929597}
18
+---
19
+
20
+diff --git a/services/network/restricted_cookie_manager.cc b/services/network/restricted_cookie_manager.cc
21
+index 425426f..c8c10c6 100644
22
+--- a/services/network/restricted_cookie_manager.cc
23
++++ b/services/network/restricted_cookie_manager.cc
24
+@@ -161,7 +161,7 @@
25
+     const GURL& url,
26
+     const net::SiteForCookies& site_for_cookies) {
27
+   std::unique_ptr<CookieAccesses>& entry =
28
+-      recent_cookie_accesses_[std::tie(url, site_for_cookies)];
29
++      recent_cookie_accesses_[std::make_pair(url, site_for_cookies)];
30
+   if (!entry) {
31
+     entry = std::make_unique<CookieAccesses>();
32
+   }
33
chromium-96-compiler.patch Added
201
 
1
@@ -0,0 +1,212 @@
2
+From f4d0b0eb899005b4b8b6388e1d8bb82cc0018fc8 Mon Sep 17 00:00:00 2001
3
+From: Mike Gilbert <floppym@gentoo.org>
4
+Date: Fri, 1 Oct 2021 12:17:48 +0000
5
+Subject: [PATCH] Disable various compiler configs
6
+
7
+---
8
+ build/config/compiler/BUILD.gn | 98 ++++++----------------------------
9
+ 1 file changed, 17 insertions(+), 81 deletions(-)
10
+
11
+diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
12
+index 673716f..3ff820e 100644
13
+--- a/build/config/compiler/BUILD.gn
14
++++ b/build/config/compiler/BUILD.gn
15
+@@ -292,8 +292,6 @@ config("compiler") {
16
+ 
17
+   configs += [
18
+     # See the definitions below.
19
+-    ":clang_revision",
20
+-    ":compiler_cpu_abi",
21
+     ":compiler_codegen",
22
+     ":compiler_deterministic",
23
+   ]
24
+@@ -532,24 +530,6 @@ config("compiler") {
25
+     ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
26
+   }
27
+ 
28
+-  if (is_clang && !is_nacl && !use_xcode_clang) {
29
+-    cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
30
+-
31
+-    # TODO(hans): Remove this once Clang generates better optimized debug info
32
+-    # by default. https://crbug.com/765793
33
+-    cflags += [
34
+-      "-mllvm",
35
+-      "-instcombine-lower-dbg-declare=0",
36
+-    ]
37
+-    if (!is_debug && use_thin_lto && is_a_target_toolchain) {
38
+-      if (is_win) {
39
+-        ldflags += [ "-mllvm:-instcombine-lower-dbg-declare=0" ]
40
+-      } else {
41
+-        ldflags += [ "-Wl,-mllvm,-instcombine-lower-dbg-declare=0" ]
42
+-      }
43
+-    }
44
+-  }
45
+-
46
+   # C11/C++11 compiler flags setup.
47
+   # ---------------------------
48
+   if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) ||
49
+@@ -1240,45 +1220,6 @@ config("compiler_deterministic") {
50
+     }
51
+   }
52
+ 
53
+-  # Makes builds independent of absolute file path.
54
+-  if (is_clang && strip_absolute_paths_from_debug_symbols) {
55
+-    # If debug option is given, clang includes $cwd in debug info by default.
56
+-    # For such build, this flag generates reproducible obj files even we use
57
+-    # different build directory like "out/feature_a" and "out/feature_b" if
58
+-    # we build same files with same compile flag.
59
+-    # Other paths are already given in relative, no need to normalize them.
60
+-    if (is_nacl) {
61
+-      # TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here.
62
+-      cflags += [
63
+-        "-Xclang",
64
+-        "-fdebug-compilation-dir",
65
+-        "-Xclang",
66
+-        ".",
67
+-      ]
68
+-    } else {
69
+-      # -ffile-compilation-dir is an alias for both -fdebug-compilation-dir=
70
+-      # and -fcoverage-compilation-dir=.
71
+-      cflags += [ "-ffile-compilation-dir=." ]
72
+-    }
73
+-    if (!is_win) {
74
+-      # We don't use clang -cc1as on Windows (yet? https://crbug.com/762167)
75
+-      asmflags = [ "-Wa,-fdebug-compilation-dir,." ]
76
+-    }
77
+-
78
+-    if (is_win && use_lld) {
79
+-      if (symbol_level == 2 || (is_clang && using_sanitizer)) {
80
+-        # Absolutize source file paths for PDB. Pass the real build directory
81
+-        # if the pdb contains source-level debug information and if linker
82
+-        # reproducibility is not critical.
83
+-        ldflags += [ "/PDBSourcePath:" + rebase_path(root_build_dir) ]
84
+-      } else {
85
+-        # Use a fake fixed base directory for paths in the pdb to make the pdb
86
+-        # output fully deterministic and independent of the build directory.
87
+-        ldflags += [ "/PDBSourcePath:o:\fake\prefix" ]
88
+-      }
89
+-    }
90
+-  }
91
+-
92
+   # Tells the compiler not to use absolute paths when passing the default
93
+   # paths to the tools it invokes. We don't want this because we don't
94
+   # really need it and it can mess up the goma cache entries.
95
+@@ -1698,7 +1639,7 @@ config("chromium_code") {
96
+       defines = [ "_HAS_NODISCARD" ]
97
+     }
98
+   } else {
99
+-    cflags = [ "-Wall" ]
100
++    cflags = []
101
+     if (treat_warnings_as_errors) {
102
+       cflags += [ "-Werror" ]
103
+ 
104
+@@ -1707,10 +1648,6 @@ config("chromium_code") {
105
+       # well.
106
+       ldflags = [ "-Werror" ]
107
+     }
108
+-    if (is_clang) {
109
+-      # Enable extra warnings for chromium_code when we control the compiler.
110
+-      cflags += [ "-Wextra" ]
111
+-    }
112
+ 
113
+     # In Chromium code, we define __STDC_foo_MACROS in order to get the
114
+     # C99 macros on Mac and Linux.
115
+@@ -1719,15 +1656,6 @@ config("chromium_code") {
116
+       "__STDC_FORMAT_MACROS",
117
+     ]
118
+ 
119
+-    if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
120
+-        current_cpu != "s390" && current_cpu != "ppc64" &&
121
+-        current_cpu != "mips" && current_cpu != "mips64") {
122
+-      # Non-chromium code is not guaranteed to compile cleanly with
123
+-      # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
124
+-      # disabled, so only do that for Release build.
125
+-      defines += [ "_FORTIFY_SOURCE=2" ]
126
+-    }
127
+-
128
+     if (is_mac) {
129
+       cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
130
+       cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
131
+@@ -2095,7 +2023,8 @@ config("default_stack_frames") {
132
+ }
133
+ 
134
+ # Default "optimization on" config.
135
+-config("optimize") {
136
++config("optimize") { }
137
++config("xoptimize") {
138
+   if (is_win) {
139
+     if (chrome_pgo_phase != 2) {
140
+       # Favor size over speed, /O1 must be before the common flags.
141
+@@ -2135,7 +2064,8 @@ config("optimize") {
142
+ }
143
+ 
144
+ # Turn off optimizations.
145
+-config("no_optimize") {
146
++config("no_optimize") { }
147
++config("xno_optimize") {
148
+   if (is_win) {
149
+     cflags = [
150
+       "/Od",  # Disable optimization.
151
+@@ -2175,7 +2105,8 @@ config("no_optimize") {
152
+ # Turns up the optimization level. On Windows, this implies whole program
153
+ # optimization and link-time code generation which is very expensive and should
154
+ # be used sparingly.
155
+-config("optimize_max") {
156
++config("optimize_max") { }
157
++config("xoptimize_max") {
158
+   if (is_nacl && is_nacl_irt) {
159
+     # The NaCl IRT is a special case and always wants its own config.
160
+     # Various components do:
161
+@@ -2208,7 +2139,8 @@ config("optimize_max") {
162
+ #
163
+ # TODO(crbug.com/621335) - rework how all of these configs are related
164
+ # so that we don't need this disclaimer.
165
+-config("optimize_speed") {
166
++config("optimize_speed") { }
167
++config("xoptimize_speed") {
168
+   if (is_nacl && is_nacl_irt) {
169
+     # The NaCl IRT is a special case and always wants its own config.
170
+     # Various components do:
171
+@@ -2234,7 +2166,8 @@ config("optimize_speed") {
172
+   }
173
+ }
174
+ 
175
+-config("optimize_fuzzing") {
176
++config("optimize_fuzzing") { }
177
++config("xoptimize_fuzzing") {
178
+   cflags = [ "-O1" ] + common_optimize_on_cflags
179
+   rustflags = [ "-Copt-level=1" ]
180
+   ldflags = common_optimize_on_ldflags
181
+@@ -2354,7 +2287,8 @@ config("win_pdbaltpath") {
182
+ }
183
+ 
184
+ # Full symbols.
185
+-config("symbols") {
186
++config("symbols") { }
187
++config("xsymbols") {
188
+   if (is_win) {
189
+     if (is_clang) {
190
+       cflags = [ "/Z7" ]  # Debug information in the .obj files.
191
+@@ -2468,7 +2402,8 @@ config("symbols") {
192
+ # Minimal symbols.
193
+ # This config guarantees to hold symbol for stack trace which are shown to user
194
+ # when crash happens in unittests running on buildbot.
195
+-config("minimal_symbols") {
196
++config("minimal_symbols") { }
197
++config("xminimal_symbols") {
198
+   if (is_win) {
199
+     # Functions, files, and line tables only.
200
+     cflags = []
201
chromium-glibc-2.34.patch Changed
10
 
1
@@ -14,7 +14,7 @@
2
 --- a/sandbox/linux/services/credentials.cc
3
 +++ b/sandbox/linux/services/credentials.cc
4
 @@ -98,7 +98,9 @@
5
-   // attempt this optimization.
6
+   // TODO(crbug.com/1247458) Broken in MSan builds after LLVM f1bb30a4956f.
7
    clone_flags |= CLONE_VM | CLONE_VFORK | CLONE_SETTLS;
8
 
9
 -  char tls_buf[PTHREAD_STACK_MIN] = {0};
10
chromium-norar.patch Changed
32
 
1
@@ -38,8 +38,8 @@
2
 -    public_deps = [ "//components/safe_browsing/core/common/proto:csd_proto" ]
3
 -  }
4
 -
5
-   if (is_mac) {
6
-     source_set("disk_image_type_sniffer_mac") {
7
+   if (is_linux || is_win) {
8
+     source_set("document_analyzer") {
9
        sources = [
10
 @@ -149,7 +116,6 @@ source_set("safe_browsing") {
11
        ":archive_analyzer_results",
12
@@ -53,8 +53,8 @@
13
 --- chromium-93.0.4577.63/chrome/common/safe_browsing/DEPS.nounrar 2021-09-02 08:22:31.280927364 -0400
14
 +++ chromium-93.0.4577.63/chrome/common/safe_browsing/DEPS 2021-09-02 08:23:56.092293262 -0400
15
 @@ -2,6 +2,5 @@ include_rules = [
16
-   "+components/safe_browsing/content/common",
17
    "+components/safe_browsing/core/common",
18
+   "+third_party/maldoca",
19
    "+third_party/protobuf",
20
 -  "+third_party/unrar",
21
    "+third_party/zlib",
22
@@ -68,8 +68,8 @@
23
        "//chrome/common/safe_browsing:archive_analyzer_results",
24
 -      "//chrome/common/safe_browsing:rar_analyzer",
25
      ]
26
-   }
27
  
28
+     if (is_linux || is_win) {
29
 diff -up chromium-93.0.4577.63/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-93.0.4577.63/chrome/services/file_util/safe_archive_analyzer.cc
30
 --- chromium-93.0.4577.63/chrome/services/file_util/safe_archive_analyzer.cc.nounrar   2021-08-31 21:39:29.000000000 -0400
31
 +++ chromium-93.0.4577.63/chrome/services/file_util/safe_archive_analyzer.cc   2021-09-02 08:22:31.281927369 -0400
32
chromium-older-harfbuzz.patch Deleted
28
 
1
@@ -1,26 +0,0 @@
2
-From: Fabian Vogt <fvogt@suse.com>
3
-Subject: Fix build with harfbuzz < 2.9.0
4
-
5
-Index: qtwebengine-everywhere-src-5.15.6/src/3rdparty/chromium/components/paint_preview/common/subset_font.cc
6
-===================================================================
7
---- a/components/paint_preview/common/subset_font.cc
8
-+++ b/components/paint_preview/common/subset_font.cc
9
-@@ -71,11 +71,18 @@ sk_sp<SkData> SubsetFont(SkTypeface* typ
10
-   hb_set_t* glyphs =
11
-       hb_subset_input_glyph_set(input.get());  // Owned by |input|.
12
-   usage.ForEach(base::BindRepeating(&AddGlyphs, base::Unretained(glyphs)));
13
-+#if HB_VERSION_ATLEAST(2,9,0)
14
-   hb_subset_input_set_flags(input.get(), HB_SUBSET_FLAGS_RETAIN_GIDS);
15
- 
16
-   HbScoped<hb_face_t> subset_face(hb_subset_or_fail(face.get(), input.get()));
17
-   if (!subset_face)
18
-     return nullptr;
19
-+#else
20
-+  hb_subset_input_set_retain_gids(input.get(), true);
21
-+
22
-+  HbScoped<hb_face_t> subset_face(hb_subset(face.get(), input.get()));
23
-+#endif
24
-+
25
-   HbScoped<hb_blob_t> subset_blob(hb_face_reference_blob(subset_face.get()));
26
-   if (!subset_blob)
27
-     return nullptr;
28
gcc-enable-lto.patch Changed
20
 
1
@@ -53,3 +53,18 @@
2
  
3
    if (is_android) {
4
      sources += [
5
+Index: chromium-96.0.4664.93/base/BUILD.gn
6
+===================================================================     
7
+--- a/base/BUILD.gn
8
++++ b/base/BUILD.gn
9
+@@ -1986,6 +1986,10 @@
10
+         ]
11
+       }
12
+
13
++      if (gcc_lto) {
14
++        configs -= [ "//build/config/compiler:gcc_lto" ]
15
++      }
16
++
17
+       if (current_cpu == "x64") {
18
+         defines += [ "PA_PCSCAN_STACK_SUPPORTED" ]
19
+         sources += [ "allocator/partition_allocator/starscan/stack/asm/x64/push_registers_asm.cc" ]
20
INSTALL.sh Changed
29
 
1
@@ -1,14 +1,14 @@
2
 #!/bin/bash
3
 set -x
4
-while getopts s:l:i: option
5
+while getopts s:o:l:i: option
6
 do
7
 case "${option}" in
8
 s) STAGEDIR=${OPTARG};;
9
+o) OUTPUTDIR=${OPTARG};;
10
 l) LIBDIR=${OPTARG};;
11
 i) ICUDATAFILE=${OPTARG};;
12
 esac
13
 done
14
-OUTPUTDIR="out/Release"
15
 SHLIB_PERMS="755"
16
 PROGNAME="chrome"
17
 PACKAGE="chromium-browser"
18
@@ -28,8 +28,8 @@
19
 install -m 755 "${buildfile}" "${STAGEDIR}/${INSTALLDIR}/${PROGNAME}"
20
 
21
 # crashpad
22
-buildfile="${OUTPUTDIR}/crashpad_handler"
23
-install -m 755 "${buildfile}" "${STAGEDIR}/${INSTALLDIR}/crashpad_handler"
24
+buildfile="${OUTPUTDIR}/chrome_crashpad_handler"
25
+install -m 755 "${buildfile}" "${STAGEDIR}/${INSTALLDIR}/chrome_crashpad_handler"
26
 
27
 # resources
28
 install -m 644 "${OUTPUTDIR}/resources.pak" "${STAGEDIR}/${INSTALLDIR}/"
29
chromium-94.0.4606.81.tar.xz -> chromium-96.0.4664.110.tar.xz Changed
highway-0.12.2.tar.gz Deleted