summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Playfair Cal2020-10-13 22:05:48 +1100
committerDaniel Playfair Cal2020-10-13 22:05:48 +1100
commite78d31c525741db832f0bdf0dc456d8b76bffaee (patch)
tree0a803644370c7ebea1d42e148db4b9b8895f12ab
parent272608dddb1bcd015ee649427795bc5d268bdbdb (diff)
downloadaur-e78d31c525741db832f0bdf0dc456d8b76bffaee.tar.gz
87.0.4280.11-1
-rw-r--r--.SRCINFO11
-rw-r--r--0001-Merge-to-M87-Disable-cfi-icall-for-generated-stubs.patch89
-rw-r--r--PKGBUILD15
-rw-r--r--d23f751.diff39
4 files changed, 102 insertions, 52 deletions
diff --git a/.SRCINFO b/.SRCINFO
index ee52321644f..9d97cd58b9d 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = chromium-dev-ozone
pkgdesc = Chromium built with patches for wayland support via Ozone (dev channel)
- pkgver = 87.0.4270.0
+ pkgver = 87.0.4280.11
pkgrel = 1
url = https://www.chromium.org/Home
install = chromium.install
@@ -39,6 +39,7 @@ pkgbase = chromium-dev-ozone
depends = libxml2
depends = fontconfig
depends = harfbuzz
+ depends = libvpx
depends = libjpeg
depends = snappy
depends = ffmpeg
@@ -55,14 +56,14 @@ pkgbase = chromium-dev-ozone
optdepends = kwallet: for storing passwords in KWallet on KDE desktops
provides = chromium
conflicts = chromium
- source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-87.0.4270.0.tar.xz
+ source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-87.0.4280.11.tar.xz
source = chromium-launcher-6.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v6.tar.gz
source = chromium-skia-harmony.patch
- source = d23f751.diff
- sha256sums = dfcc78c1b8bd5c447004dbd50f95b9c83666e308d7e77a9a50a4c4663edf3aa9
+ source = 0001-Merge-to-M87-Disable-cfi-icall-for-generated-stubs.patch
+ sha256sums = a7c9424f0efadddd62c80e9ec126779a0cb0cf99376241f48e5044af0142a83c
sha256sums = 04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1
sha256sums = 771292942c0901092a402cc60ee883877a99fb804cb54d568c8c6c94565a48e1
- sha256sums = 458419d7dc4acded51f1684fbc1163f9db778c48a1987c0b3aec37757b6935d1
+ sha256sums = 052c35ec5f9dacfe2baa8c82225079c95bbb089abd7be6fd89db3690c242718c
pkgname = chromium-dev-ozone
diff --git a/0001-Merge-to-M87-Disable-cfi-icall-for-generated-stubs.patch b/0001-Merge-to-M87-Disable-cfi-icall-for-generated-stubs.patch
new file mode 100644
index 00000000000..4ab0411702f
--- /dev/null
+++ b/0001-Merge-to-M87-Disable-cfi-icall-for-generated-stubs.patch
@@ -0,0 +1,89 @@
+From 09e038ace39ac3e0ee57edaadfa80415cc764e9b Mon Sep 17 00:00:00 2001
+From: Tom Anderson <thomasanderson@chromium.org>
+Date: Sat, 10 Oct 2020 01:19:15 +0000
+Subject: [PATCH] [Merge to M87] Disable cfi-icall for generated stubs
+
+> The generated stubs use dlsym()ed functions, so must not be instrumented
+> with CFI-icall.
+>
+> BUG=1136413
+> R=sky
+>
+> Change-Id: I698e6b3ed96349a2bb477767d54aeb9b3ad9096f
+> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2462216
+> Commit-Queue: Scott Violet <sky@chromium.org>
+> Reviewed-by: Scott Violet <sky@chromium.org>
+> Auto-Submit: Thomas Anderson <thomasanderson@chromium.org>
+> Cr-Commit-Position: refs/heads/master@{#815379}
+
+BUG=1136413
+TBR=sky
+NOTRY=true
+NOPRESUBMIT=true
+NOTREECHECKS=true
+
+Change-Id: I3f0dde34431ca5058930ae063517163f0450e6c1
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2464347
+Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
+Cr-Commit-Position: refs/branch-heads/4280@{#219}
+Cr-Branched-From: ea420fb963f9658c9969b6513c56b8f47efa1a2a-refs/heads/master@{#812852}
+---
+ tools/generate_stubs/generate_stubs.py | 5 +++++
+ tools/generate_stubs/rules.gni | 4 ++++
+ 2 files changed, 9 insertions(+)
+
+diff --git a/tools/generate_stubs/generate_stubs.py b/tools/generate_stubs/generate_stubs.py
+index 9cf65c73a51f..ed3b89c2904f 100755
+--- a/tools/generate_stubs/generate_stubs.py
++++ b/tools/generate_stubs/generate_stubs.py
+@@ -92,6 +92,7 @@ FILE_TYPE_WIN_DEF = 'windows_def'
+ # arg_list: The arguments used to call the stub function.
+ STUB_FUNCTION_DEFINITION = (
+ """extern %(return_type)s %(name)s(%(params)s) __attribute__((weak));
++DISABLE_CFI_ICALL
+ %(return_type)s %(export)s %(name)s(%(params)s) {
+ %(return_prefix)s%(name)s_ptr(%(arg_list)s);
+ }""")
+@@ -110,6 +111,7 @@ STUB_FUNCTION_DEFINITION = (
+ # argument.
+ VARIADIC_STUB_FUNCTION_DEFINITION = (
+ """extern %(return_type)s %(name)s(%(params)s) __attribute__((weak));
++DISABLE_CFI_ICALL
+ %(return_type)s %(export)s %(name)s(%(params)s) {
+ va_list args___;
+ va_start(args___, %(last_named_arg)s);
+@@ -131,6 +133,7 @@ VARIADIC_STUB_FUNCTION_DEFINITION = (
+ # argument.
+ VOID_VARIADIC_STUB_FUNCTION_DEFINITION = (
+ """extern void %(name)s(%(params)s) __attribute__((weak));
++DISABLE_CFI_ICALL
+ void %(export)s %(name)s(%(params)s) {
+ va_list args___;
+ va_start(args___, %(last_named_arg)s);
+@@ -179,6 +182,8 @@ IMPLEMENTATION_PREAMBLE = """// This is generated file. Do not modify directly.
+
+ #include <map>
+ #include <vector>
++
++#include "base/compiler_specific.h"
+ """
+
+ # The start and end templates for the enum definitions used by the Umbrella
+diff --git a/tools/generate_stubs/rules.gni b/tools/generate_stubs/rules.gni
+index a69f8e563e9f..7b6d34f081be 100644
+--- a/tools/generate_stubs/rules.gni
++++ b/tools/generate_stubs/rules.gni
+@@ -84,6 +84,10 @@ template("generate_stubs") {
+ "public_deps",
+ "visibility",
+ ])
++ if (!defined(deps)) {
++ deps = []
++ }
++ deps += [ "//base" ]
+ if (!defined(public_deps)) {
+ public_deps = []
+ }
+--
+2.28.0
+
diff --git a/PKGBUILD b/PKGBUILD
index ad9fcb31633..769ac5c95e9 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -5,7 +5,7 @@
# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
pkgname=chromium-dev-ozone
-pkgver=87.0.4270.0
+pkgver=87.0.4280.11
pkgrel=1
_launcher_ver=6
pkgdesc="Chromium built with patches for wayland support via Ozone (dev channel)"
@@ -29,16 +29,16 @@ install=chromium.install
source=(https://commondatastorage.googleapis.com/chromium-browser-official/chromium-$pkgver.tar.xz
chromium-launcher-$_launcher_ver.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver.tar.gz
chromium-skia-harmony.patch
- d23f751.diff)
-sha256sums=('dfcc78c1b8bd5c447004dbd50f95b9c83666e308d7e77a9a50a4c4663edf3aa9'
+ 0001-Merge-to-M87-Disable-cfi-icall-for-generated-stubs.patch)
+sha256sums=('a7c9424f0efadddd62c80e9ec126779a0cb0cf99376241f48e5044af0142a83c'
'04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1'
'771292942c0901092a402cc60ee883877a99fb804cb54d568c8c6c94565a48e1'
- '458419d7dc4acded51f1684fbc1163f9db778c48a1987c0b3aec37757b6935d1')
+ '052c35ec5f9dacfe2baa8c82225079c95bbb089abd7be6fd89db3690c242718c')
# Possible replacements are listed in build/linux/unbundle/replace_gn_files.py
# Keys are the names in the above script; values are the dependencies in Arch
declare -gA _system_libs=(
- [ffmpeg]=ffmpeg # broken with recent ffmpeg git
+ [ffmpeg]=ffmpeg
[flac]=flac
[fontconfig]=fontconfig
[freetype]=freetype2
@@ -47,7 +47,7 @@ declare -gA _system_libs=(
[libdrm]=
[libjpeg]=libjpeg
# [libpng]=libpng # https://crbug.com/752403#c10
- # [libvpx]=libvpx
+ [libvpx]=libvpx
[libwebp]=libwebp
[libxml]=libxml2
[libxslt]=libxslt
@@ -84,8 +84,7 @@ prepare() {
# https://crbug.com/skia/6663#c10
patch -Np0 -i ../chromium-skia-harmony.patch
- # https://bugs.chromium.org/p/chromium/issues/detail?id=1128997#c33
- patch -Np1 -i ../d23f751.diff
+ patch -Np1 -i ../0001-Merge-to-M87-Disable-cfi-icall-for-generated-stubs.patch
# Force script incompatible with Python 3 to use /usr/bin/python2
sed -i '1s|python$|&2|' third_party/dom_distiller_js/protoc_plugins/*.py
diff --git a/d23f751.diff b/d23f751.diff
deleted file mode 100644
index 42c5b4a22c2..00000000000
--- a/d23f751.diff
+++ /dev/null
@@ -1,39 +0,0 @@
-From d23f751309e430050ab9ee3ac9423397a7fea7d0 Mon Sep 17 00:00:00 2001
-From: Maksim Sisov <msisov@igalia.com>
-Date: Mon, 28 Sep 2020 14:07:36 +0000
-Subject: [PATCH] ozone/wayland: temporarily disable usage of RGBX_8888.
-
-RGBX_8888 shall be used as buffer format with images without alpha. However,
-Chromium doesn't allow it to use for scanout in some parts of the code,
-and allows to use in other.
-
-Thus, temporarily disable usage of RGBX_8888 and always use either RGBA or
-BGRA_8888 for images with alpha and no alpha.
-
-Bug: 1128997
-Change-Id: I4a3a8ad102d46d6dc12ccaba4cbade41432d6b49
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2434928
-Auto-Submit: Maksim Sisov (GMT+3) <msisov@igalia.com>
-Commit-Queue: Peng Huang <penghuang@chromium.org>
-Reviewed-by: Peng Huang <penghuang@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#811220}
----
-
-diff --git a/ui/ozone/platform/wayland/host/wayland_screen.cc b/ui/ozone/platform/wayland/host/wayland_screen.cc
-index fcebc07..9beaf27 100644
---- a/ui/ozone/platform/wayland/host/wayland_screen.cc
-+++ b/ui/ozone/platform/wayland/host/wayland_screen.cc
-@@ -46,8 +46,11 @@
- // crbug.com/1127558.
- if (format == gfx::BufferFormat::RGBA_8888)
- image_format_alpha_ = gfx::BufferFormat::RGBA_8888;
-- if (format == gfx::BufferFormat::RGBX_8888)
-- image_format_no_alpha_ = format;
-+
-+ // TODO(1128997): |image_format_no_alpha_| should use RGBX_8888 when it's
-+ // available, but for some reason Chromium gets broken when it's used.
-+ // Though, we can import RGBX_8888 dma buffer to EGLImage successfully.
-+ // Enable that back when the issue is resolved.
- #endif // !BUILDFLAG(IS_LACROS)
-
- if (!image_format_alpha_ && format == gfx::BufferFormat::BGRA_8888)