commit 4667ab7facd5cf6f9b30adbb3589ba51b877983c
Author: Leigh Scott <leigh123linux(a)gmail.com>
Date: Sat Aug 21 22:04:39 2021 +0100
Update to 92.0.4515.159
...rash.patch => chromium-92-EnumTable-crash.patch | 6 +--
chromium-enable-widevine.patch | 2 +-
chromium-freetype-2.11.patch | 50 ++++++++++++++++++++++
chromium-freeworld.spec | 35 +++++++++------
chromium-java-only-allowed-in-android-builds.patch | 13 ++++++
...bootstrap.patch => chromium-py3-bootstrap.patch | 15 ++-----
chromium-py3-fixes.patch | 17 ++++++++
chromium-rawhide-gcc-std-max-fix.patch | 11 -----
sources | 4 +-
9 files changed, 110 insertions(+), 43 deletions(-)
---
diff --git a/chromium-89-EnumTable-crash.patch b/chromium-92-EnumTable-crash.patch
similarity index 94%
rename from chromium-89-EnumTable-crash.patch
rename to chromium-92-EnumTable-crash.patch
index 292cf57..1b43b8b 100644
--- a/chromium-89-EnumTable-crash.patch
+++ b/chromium-92-EnumTable-crash.patch
@@ -28,7 +28,7 @@
if (ANALYZER_ASSUME_TRUE(entry.has_str()))
return entry.str();
}
- return base::nullopt;
+ return absl::nullopt;
}
return GenericEnumTableEntry::FindByValue(
- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
@@ -39,12 +39,12 @@
// This overload of GetString is designed for cases where the argument is a
@@ -342,8 +340,7 @@ class EnumTable {
// enum value directly.
- base::Optional<E> GetEnum(base::StringPiece str) const {
+ absl::optional<E> GetEnum(base::StringPiece str) const {
auto* entry = GenericEnumTableEntry::FindByString(
- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
- data_.size(), str);
+ &data_[0], data_.size(), str);
- return entry ? static_cast<E>(entry->value) : base::Optional<E>();
+ return entry ? static_cast<E>(entry->value) : absl::optional<E>();
}
@@ -358,7 +355,7 @@ class EnumTable {
diff --git a/chromium-enable-widevine.patch b/chromium-enable-widevine.patch
index 7e34f4d..920e413 100644
--- a/chromium-enable-widevine.patch
+++ b/chromium-enable-widevine.patch
@@ -7,5 +7,5 @@
- "BUNDLE_WIDEVINE_CDM=$bundle_widevine_cdm",
+ "BUNDLE_WIDEVINE_CDM=true",
"ENABLE_WIDEVINE_CDM_COMPONENT=$enable_widevine_cdm_component",
+
"ENABLE_MEDIA_FOUNDATION_WIDEVINE_CDM=$enable_media_foundation_widevine_cdm",
]
- }
diff --git a/chromium-freetype-2.11.patch b/chromium-freetype-2.11.patch
new file mode 100644
index 0000000..aee6dc8
--- /dev/null
+++ b/chromium-freetype-2.11.patch
@@ -0,0 +1,50 @@
+--- a/third_party/skia/src/ports/SkFontHost_FreeType_common.cpp
++++ b/third_party/skia/src/ports/SkFontHost_FreeType_common.cpp
+@@ -712,7 +712,11 @@ void colrv1_draw_paint(SkCanvas* canvas,
+ canvas->drawPaint(colrPaint);
+ break;
+ }
++#if FREETYPE_MAJOR == 2 && FREETYPE_MINOR >= 11
++ case FT_COLR_PAINTFORMAT_TRANSFORM:
++#else
+ case FT_COLR_PAINTFORMAT_TRANSFORMED:
++#endif
+ case FT_COLR_PAINTFORMAT_TRANSLATE:
+ case FT_COLR_PAINTFORMAT_ROTATE:
+ case FT_COLR_PAINTFORMAT_SKEW:
+@@ -759,10 +763,17 @@ void colrv1_transform(SkCanvas* canvas, FT_Face face, FT_COLR_Paint
colrv1_paint
+ SkMatrix transform;
+
+ switch (colrv1_paint.format) {
++#if FREETYPE_MAJOR == 2 && FREETYPE_MINOR >= 11
++ case FT_COLR_PAINTFORMAT_TRANSFORM: {
++ transform = ToSkMatrix(colrv1_paint.u.transform.affine);
++ break;
++ }
++#else
+ case FT_COLR_PAINTFORMAT_TRANSFORMED: {
+ transform = ToSkMatrix(colrv1_paint.u.transformed.affine);
+ break;
+ }
++#endif
+ case FT_COLR_PAINTFORMAT_TRANSLATE: {
+ transform = SkMatrix::Translate(
+ SkFixedToScalar(colrv1_paint.u.translate.dx),
+@@ -880,10 +891,17 @@ bool colrv1_traverse_paint(SkCanvas* canvas,
+ traverse_result = colrv1_start_glyph(canvas, palette, face,
paint.u.colr_glyph.glyphID,
+ FT_COLOR_NO_ROOT_TRANSFORM);
+ break;
++#if FREETYPE_MAJOR == 2 && FREETYPE_MINOR >= 11
++ case FT_COLR_PAINTFORMAT_TRANSFORM:
++ colrv1_transform(canvas, face, paint);
++ traverse_result = colrv1_traverse_paint(canvas, palette, face,
++ paint.u.transform.paint,
visited_set);
++#else
+ case FT_COLR_PAINTFORMAT_TRANSFORMED:
+ colrv1_transform(canvas, face, paint);
+ traverse_result = colrv1_traverse_paint(canvas, palette, face,
+ paint.u.transformed.paint,
visited_set);
++#endif
+ break;
+ case FT_COLR_PAINTFORMAT_TRANSLATE:
+ colrv1_transform(canvas, face, paint);
diff --git a/chromium-freeworld.spec b/chromium-freeworld.spec
index 242c502..eb77623 100644
--- a/chromium-freeworld.spec
+++ b/chromium-freeworld.spec
@@ -24,7 +24,7 @@
%global system_re2 1
##############################Package Definitions######################################
Name: chromium-freeworld
-Version: 90.0.4430.85
+Version: 92.0.4515.159
Release: 1%{?dist}
Summary: Chromium built with all freeworld codecs and VA-API support
License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and
OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2)
@@ -49,7 +49,7 @@ Source0: chromium-%{version}-clean.tar.xz
%endif
# Patchset composed by Stephan Hartmann.
-%global patchset_revision chromium-90-patchset-7
+%global patchset_revision chromium-92-patchset-7
Source1:
https://github.com/stha09/chromium-patches/archive/%{patchset_revision}/c...
# The following two source files are copied and modified from the chromium source
@@ -90,7 +90,8 @@ BuildRequires: pkgconfig(wayland-cursor)
BuildRequires: pkgconfig(wayland-scanner)
BuildRequires: pkgconfig(wayland-server)
BuildRequires: /usr/bin/python2
-BuildRequires: python2-setuptools
+BuildRequires: /usr/bin/python3
+BuildRequires: python3-setuptools
%if %{system_re2}
BuildRequires: re2-devel
%endif
@@ -124,6 +125,7 @@ BuildRequires: expat-devel
BuildRequires: pciutils-devel
BuildRequires: speech-dispatcher-devel
BuildRequires: pulseaudio-libs-devel
+BuildRequires: libcurl-devel
BuildRequires: libxshmfence-devel
# install desktop files
BuildRequires: desktop-file-utils
@@ -145,12 +147,15 @@ Recommends: libva-utils
ExclusiveArch: x86_64
# Gentoo patches:
-Patch201: chromium-89-EnumTable-crash.patch
+Patch201: chromium-92-EnumTable-crash.patch
# Fedora patches:
-Patch300: chromium-py2-bootstrap.patch
+Patch300: chromium-py3-bootstrap.patch
Patch301: chromium-fstatfix.patch
Patch302: chromium-gcc11.patch
+Patch303: chromium-py3-fixes.patch
+Patch304: chromium-java-only-allowed-in-android-builds.patch
+Patch305: chromium-freetype-2.11.patch
Patch1303: chromium-rawhide-gcc-std-max-fix.patch
# RPM Fusion patches [free/chromium-freeworld]:
@@ -177,12 +182,9 @@ Patch1406: chromium-rpm-fusion-brand.patch
%{__scm_apply_patch -p1} <%{patchset_root}/%{1}
%patchset_apply chromium-78-protobuf-RepeatedPtrField-export.patch
-%patchset_apply chromium-90-CrossThreadCopier-qualification.patch
-%patchset_apply chromium-90-TokenizedOutput-include.patch
-%patchset_apply chromium-90-angle-constexpr.patch
-%patchset_apply chromium-90-quantization_utils-include.patch
%patchset_apply chromium-90-ruy-include.patch
+
# Apply patches up to #1000 from this spec.
%autopatch -M1000 -p1
@@ -196,7 +198,7 @@ Patch1406: chromium-rpm-fusion-brand.patch
%endif
#Let's change the default shebang of python files.
-find -depth -type f -writable -name "*.py" -exec sed -iE '1s=^#!
*/usr/bin/\(python\|env python\)[23]\?=#!%{__python2}=' {} +
+find -type f -exec sed -iE '1s=^#! */usr/bin/\(python\|env
python\)[23]\?=#!%{__python3}=' {} +
./build/linux/unbundle/remove_bundled_libraries.py --do-remove \
base/third_party/cityhash \
base/third_party/double_conversion \
@@ -209,6 +211,7 @@ find -depth -type f -writable -name "*.py" -exec sed -iE
'1s=^#! */usr/bin/\(pyt
base/third_party/valgrind \
base/third_party/xdg_mime \
base/third_party/xdg_user_dirs \
+ buildtools/third_party/eu-strip \
buildtools/third_party/libc++ \
buildtools/third_party/libc++abi \
chrome/third_party/mozilla_security_manager \
@@ -269,7 +272,7 @@ find -depth -type f -writable -name "*.py" -exec sed -iE
'1s=^#! */usr/bin/\(pyt
third_party/devtools-frontend/src/front_end/third_party/axe-core \
third_party/devtools-frontend/src/front_end/third_party/chromium \
third_party/devtools-frontend/src/front_end/third_party/codemirror \
- third_party/devtools-frontend/src/front_end/third_party/fabricjs \
+ third_party/devtools-frontend/src/front_end/third_party/diff \
third_party/devtools-frontend/src/front_end/third_party/i18n \
third_party/devtools-frontend/src/front_end/third_party/intl-messageformat \
third_party/devtools-frontend/src/front_end/third_party/lighthouse \
@@ -302,6 +305,7 @@ find -depth -type f -writable -name "*.py" -exec sed -iE
'1s=^#! */usr/bin/\(pyt
third_party/harfbuzz-ng \
%endif
third_party/harfbuzz-ng/utils \
+ third_party/highway \
third_party/hunspell \
third_party/iccjpeg \
%if !%{system_libicu}
@@ -321,6 +325,7 @@ find -depth -type f -writable -name "*.py" -exec sed -iE
'1s=^#! */usr/bin/\(pyt
third_party/libavif \
third_party/libgav1 \
third_party/libjingle \
+ third_party/libjxl \
third_party/libphonenumber \
third_party/libsecret \
third_party/libsrtp \
@@ -392,7 +397,6 @@ find -depth -type f -writable -name "*.py" -exec sed -iE
'1s=^#! */usr/bin/\(pyt
third_party/rnnoise \
third_party/ruy \
third_party/s2cellid \
- third_party/schema_org \
third_party/securemessage \
third_party/shell-encryption \
third_party/skia \
@@ -416,7 +420,6 @@ find -depth -type f -writable -name "*.py" -exec sed -iE
'1s=^#! */usr/bin/\(pyt
third_party/tflite/src/third_party/eigen3 \
third_party/tflite/src/third_party/fft2d \
third_party/tflite-support \
- third_party/tint \
third_party/ukey2 \
third_party/unrar \
third_party/utf \
@@ -426,6 +429,7 @@ find -depth -type f -writable -name "*.py" -exec sed -iE
'1s=^#! */usr/bin/\(pyt
third_party/wayland \
third_party/web-animations-js \
third_party/webdriver \
+ third_party/webgpu-cts \
third_party/webrtc \
third_party/webrtc/common_audio/third_party/ooura \
third_party/webrtc/common_audio/third_party/spl_sqrt_floor \
@@ -570,7 +574,7 @@ gn_args+=(
)
tools/gn/bootstrap/bootstrap.py --gn-gen-args "${gn_args[*]}"
-%{target}/gn --script-executable=%{__python2} gen --args="${gn_args[*]}"
%{target}
+%{target}/gn --script-executable=%{__python3} gen --args="${gn_args[*]}"
%{target}
%ninja_build -C %{target} chrome chrome_sandbox chromedriver
######################################Install####################################
%install
@@ -679,6 +683,9 @@ appstream-util validate-relax --nonet
"%{buildroot}%{_metainfodir}/%{name}.appda
%{chromiumdir}/swiftshader/libGLESv2.so
#########################################changelogs#################################################
%changelog
+* Sat Aug 21 2021 Leigh Scott <leigh123linux(a)gmail.com> - 92.0.4515.159-1
+- Update to 92.0.4515.159
+
* Thu Apr 22 2021 qvint <dotqvint(a)gmail.com> - 90.0.4430.85-1
- Update to 90.0.4430.85
diff --git a/chromium-java-only-allowed-in-android-builds.patch
b/chromium-java-only-allowed-in-android-builds.patch
new file mode 100644
index 0000000..a4748d9
--- /dev/null
+++ b/chromium-java-only-allowed-in-android-builds.patch
@@ -0,0 +1,13 @@
+diff -up chromium-91.0.4472.77/third_party/closure_compiler/compiler.py.java-allowed
chromium-91.0.4472.77/third_party/closure_compiler/compiler.py
+---
chromium-91.0.4472.77/third_party/closure_compiler/compiler.py.java-allowed 2021-06-02
17:14:48.445064647 +0000
++++ chromium-91.0.4472.77/third_party/closure_compiler/compiler.py 2021-06-02
17:15:12.994836949 +0000
+@@ -13,8 +13,7 @@ import subprocess
+
+
+ _CURRENT_DIR = os.path.join(os.path.dirname(__file__))
+-_JAVA_PATH = os.path.join(_CURRENT_DIR, "..", "jdk",
"current", "bin", "java")
+-assert os.path.isfile(_JAVA_PATH), "java only allowed in android builds"
++_JAVA_PATH = "java"
+
+ class Compiler(object):
+ """Runs the Closure compiler on given source files to typecheck them
diff --git a/chromium-py2-bootstrap.patch b/chromium-py3-bootstrap.patch
similarity index 58%
rename from chromium-py2-bootstrap.patch
rename to chromium-py3-bootstrap.patch
index c303f8b..f23490b 100644
--- a/chromium-py2-bootstrap.patch
+++ b/chromium-py3-bootstrap.patch
@@ -5,27 +5,18 @@
with tempfile.NamedTemporaryFile() as _:
args = [
- 'python',
-+ 'python2',
++ 'python3',
rjsmin_path
]
p = subprocess.Popen(args,
-@@ -203,7 +203,7 @@ def _MinifyCSS(css_text):
- os.path.join(py_vulcanize_path, 'third_party', 'rcssmin',
'rcssmin.py'))
-
- with tempfile.NamedTemporaryFile() as _:
-- rcssmin_args = ['python', rcssmin_path]
-+ rcssmin_args = ['python2', rcssmin_path]
- p = subprocess.Popen(rcssmin_args,
- stdin=subprocess.PIPE,
- stdout=subprocess.PIPE,
--- a/tools/gn/bootstrap/bootstrap.py
+++ b/tools/gn/bootstrap/bootstrap.py
-@@ -129,7 +129,7 @@ def main(argv):
+@@ -130,7 +130,7 @@ def main(argv):
if not options.debug:
gn_gen_args += ' is_debug=false'
subprocess.check_call([
- gn_path, 'gen', out_dir,
-+ gn_path, 'gen', out_dir, '
--script-executable=/usr/bin/python2',
++ gn_path, 'gen', out_dir, '
--script-executable=/usr/bin/python3',
'--args=%s' % gn_gen_args, "--root=" + SRC_ROOT
])
diff --git a/chromium-py3-fixes.patch b/chromium-py3-fixes.patch
new file mode 100644
index 0000000..81ae7f6
--- /dev/null
+++ b/chromium-py3-fixes.patch
@@ -0,0 +1,17 @@
+diff -up chromium-92.0.4515.107/third_party/jinja2/tests.py.py3
chromium-92.0.4515.107/third_party/jinja2/tests.py
+--- chromium-92.0.4515.107/third_party/jinja2/tests.py.py3 2021-07-28 15:53:45.670961029
-0400
++++ chromium-92.0.4515.107/third_party/jinja2/tests.py 2021-07-28 15:55:56.637013096
-0400
+@@ -10,7 +10,12 @@
+ """
+ import operator
+ import re
+-from collections import Mapping
++import sys
++if sys.version_info[:2] >= (3, 8): # pragma: no cover
++ from collections.abc import Mapping
++else: # pragma: no cover
++ from collections import Mapping
++
+ from jinja2.runtime import Undefined
+ from jinja2._compat import text_type, string_types, integer_types
+ import decimal
diff --git a/chromium-rawhide-gcc-std-max-fix.patch
b/chromium-rawhide-gcc-std-max-fix.patch
index bfdc2ec..463df52 100644
--- a/chromium-rawhide-gcc-std-max-fix.patch
+++ b/chromium-rawhide-gcc-std-max-fix.patch
@@ -1,14 +1,3 @@
---- a/third_party/abseil-cpp/absl/debugging/failure_signal_handler.cc
-+++ b/third_party/abseil-cpp/absl/debugging/failure_signal_handler.cc
-@@ -136,7 +136,7 @@ static bool SetupAlternateStackOnce() {
- #else
- const size_t page_mask = sysconf(_SC_PAGESIZE) - 1;
- #endif
-- size_t stack_size = (std::max(SIGSTKSZ, 65536) + page_mask) & ~page_mask;
-+ size_t stack_size = (std::max(SIGSTKSZ, static_cast<long>(65536)) + page_mask)
& ~page_mask;
- #if defined(ABSL_HAVE_ADDRESS_SANITIZER) || \
- defined(ABSL_HAVE_MEMORY_SANITIZER) || defined(ABSL_HAVE_THREAD_SANITIZER)
- // Account for sanitizer instrumentation requiring additional stack space.
--- a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
+++ b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
@@ -138,7 +138,7 @@ void InstallAlternateStackLocked() {
diff --git a/sources b/sources
index f09f094..ca3db32 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (chromium-90.0.4430.85.tar.xz) =
90aac1f0b676e1ca5ccb9a362abb475945c1944686a8aba08509cde105a974ef115ca3ea56e3a88737bec7d0ae3ac1482d9c844cb14adc8f1bc06ac41ad60791
-SHA512 (chromium-patches-chromium-90-patchset-7.tar.gz) =
92a02fb1d142abf3f7378308eeee8b2609dd4915b5c46dad1f15e03fff246502c0a8e8fe02223f80925b7d18e971fff37296d384a360b8c31910c07df5afdcaa
+SHA512 (chromium-92.0.4515.159.tar.xz) =
d6d563631278e721f38b045c39c9e205fbedefb0666af2f027a2a14c0d04814a96909da17e5b299bf40a94fe54bdfda0a91186983c8f929e7fbc7cdaffab922a
+SHA512 (chromium-patches-chromium-92-patchset-7.tar.gz) =
3f1128ed749cbd32748a81e114517522fcbf68e368c894561669e455bfbb98db0b9a6e0736db12ff1dfd08161af92bc987c4ab78b194ac19b232f8c2c1484476