summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorjk2019-12-13 16:25:47 -0500
committerjk2019-12-13 16:25:47 -0500
commitd42c0ced9abda7550a6c144fd012669a9ccd411d (patch)
tree52e33b533013219df03dbfcb1048649705a38975
parentd94f5e13dfca9ff5e1f61dfae19569b4e981ffaf (diff)
downloadaur-d42c0ced9abda7550a6c144fd012669a9ccd411d.tar.gz
uppkg 79.0.3945.79
-rw-r--r--.SRCINFO54
-rw-r--r--PKGBUILD66
-rw-r--r--add-missing-include-for-unique_ptr.patch30
-rw-r--r--chromium-system-hb.patch19
-rw-r--r--chromium-widevine.patch33
-rw-r--r--dns_util-make-DohUpgradeEntry-non-const.patch86
-rw-r--r--fix-shutdown-crash-in-ProfileManager.patch45
-rw-r--r--flags.archlinux.gn2
-rw-r--r--include-algorithm-to-use-std-lower_bound.patch49
-rw-r--r--launch_manager.h-uses-std-vector.patch36
-rw-r--r--vaapi-fix.patch44
11 files changed, 201 insertions, 263 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 44864aff8800..94033a9fa6c7 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = ungoogled-chromium-ozone
- pkgdesc = A lightweight approach to removing Google web service dependency
- pkgver = 78.0.3904.108
+ pkgdesc = A lightweight approach to removing Google web service dependency with patches for wayland support via Ozone
+ pkgver = 79.0.3945.79
pkgrel = 1
url = https://ungoogled-software.github.io/
arch = x86_64
@@ -17,8 +17,7 @@ pkgbase = ungoogled-chromium-ozone
makedepends = clang
makedepends = lld
makedepends = gn
- makedepends = jre-openjdk-headless
- makedepends = jack
+ makedepends = java-runtime-headless
depends = gtk3
depends = nss
depends = alsa-lib
@@ -32,21 +31,6 @@ pkgbase = ungoogled-chromium-ozone
depends = libpulse
depends = pciutils
depends = json-glib
- depends = libva
- depends = icu
- depends = libxml2
- depends = fontconfig
- depends = harfbuzz
- depends = libjpeg
- depends = re2
- depends = snappy
- depends = ffmpeg
- depends = flac
- depends = libwebp
- depends = minizip
- depends = libxslt
- depends = freetype2
- depends = opus
depends = desktop-file-utils
depends = hicolor-icon-theme
depends = icu
@@ -65,45 +49,45 @@ pkgbase = ungoogled-chromium-ozone
depends = opus
optdepends = pepper-flash: support for Flash content
optdepends = kdialog: needed for file dialogs in KDE
- optdepends = gnome-keyring: for storing passwords in GNOME keyring
- optdepends = kwallet: for storing passwords in KWallet
- optdepends = libva-intel-driver: for hardware video acceleration with old Intel GPUs
- optdepends = intel-media-driver: for hardware video acceleration with newer Intel GPUs
+ optdepends = org.freedesktop.secrets: password storage backend on GNOME / Xfce
+ optdepends = kwallet: for storing passwords in KWallet on KDE desktops
+ optdepends = libva-intel-driver: for hardware video acceleration with Intel GPUs
+ optdepends = intel-media-driver: for hardware video acceleration with newer intel gpus
optdepends = libva-mesa-driver: for hardware video acceleration with AMD/ATI GPUs
optdepends = libva-vdpau-driver: for hardware video acceleration with NVIDIA GPUs
provides = chromium
conflicts = chromium
- source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-78.0.3904.108.tar.xz
+ source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-79.0.3945.79.tar.xz
source = chromium-launcher-6.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v6.tar.gz
- source = ungoogled-chromium.zip::https://github.com/Eloston/ungoogled-chromium/archive/master.zip
+ source = ungoogled-chromium::git+https://github.com/Eloston/ungoogled-chromium
source = flags.archlinux.gn
source = chromium-drirc-disable-10bpc-color-configs.conf
source = vaapi-fix.patch
source = fix-vaapi-ozone-build.patch
- source = add-missing-include-for-unique_ptr.patch
- source = dns_util-make-DohUpgradeEntry-non-const.patch
- source = fix-shutdown-crash-in-ProfileManager.patch
+ source = launch_manager.h-uses-std-vector.patch
+ source = include-algorithm-to-use-std-lower_bound.patch
source = icu65.patch
source = chromium-system-icu.patch
source = chromium-system-zlib.patch
+ source = chromium-system-hb.patch
source = fix-spammy-unique-font-matching-log.patch
source = chromium-widevine.patch
source = chromium-skia-harmony.patch
- sha256sums = f9c53839f306d2973de27723360024f7904101d426b9e7e9cdb56e8bcc775b0e
+ sha256sums = e1a7362d396b0f72e6ad8c1d53cae67db201e0eeaa2a96dbe9214d080925bcf3
sha256sums = 04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1
sha256sums = SKIP
- sha256sums = d81d95f719e7b4ed2c15ece56b0272ae969e8df871f1d8d87065db0130134912
+ sha256sums = 2f77b02f0e5b2396cdbede4360bd44f71d03844c36bd8c4f038f3e238fac8981
sha256sums = babda4f5c1179825797496898d77334ac067149cac03d797ab27ac69671a7feb
- sha256sums = 9256123898cbdd4da4a111e5aa8752d5c6c2c07e59ca8677751791dd3321f6a9
+ sha256sums = 0ec6ee49113cc8cc5036fa008519b94137df6987bf1f9fbffb2d42d298af868a
sha256sums = 9aebd800e5fe191cd5f4bd82c33419eefdd80919e6c6f5a3a9346a224625f094
- sha256sums = 49052e8aa630c4aa57bf46823edc32b7b309493275163c3bb3f9fd390c73356e
- sha256sums = 69694ab12a5ced389916c0c5e8c7bdc191544f576b134ddfb2fe9d4ed9ec4494
- sha256sums = 4f81612c28957987f7344d8ce2b95a4a63136a8319c9751819436b11c62df057
+ sha256sums = bd0fae907c451252e91c4cbf1ad301716bc9f8a4644ecc60e9590a64197477d3
+ sha256sums = 1f906676563e866e2b59719679e76e0b2f7f082f48ef0593e86da0351a586c73
sha256sums = 1de9bdbfed482295dda45c7d4e323cee55a34e42f66b892da1c1a778682b7a41
sha256sums = e73cc2ee8d3ea35aab18c478d76fdfc68ca4463e1e10306fa1e738c03b3f26b5
sha256sums = eb67eda4945a89c3b90473fa8dc20637511ca4dcb58879a8ed6bf403700ca9c8
+ sha256sums = c0ad3fa426cb8fc1a237ddc6309a6b2dd4055bbe41dd07f50071ee61f969b81a
sha256sums = 6fbffe59b886195b92c9a55137cef83021c16593f49714acb20023633e3ebb19
- sha256sums = d081f2ef8793544685aad35dea75a7e6264a2cb987ff3541e6377f4a3650a28b
+ sha256sums = 709e2fddba3c1f2ed4deb3a239fc0479bfa50c46e054e7f32db4fb1365fed070
sha256sums = 771292942c0901092a402cc60ee883877a99fb804cb54d568c8c6c94565a48e1
pkgname = ungoogled-chromium-ozone
diff --git a/PKGBUILD b/PKGBUILD
index 7e461c993420..0e9dfe591f2e 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,60 +3,59 @@
pkgname=ungoogled-chromium-ozone
_pkgname=ungoogled-chromium
-pkgver=78.0.3904.108
+pkgver=79.0.3945.79
pkgrel=1
_launcher_ver=6
-pkgdesc="A lightweight approach to removing Google web service dependency"
+pkgdesc="A lightweight approach to removing Google web service dependency with patches for wayland support via Ozone"
arch=('x86_64')
url="https://ungoogled-software.github.io/"
license=('BSD')
depends=('gtk3' 'nss' 'alsa-lib' 'xdg-utils' 'libxss' 'libcups' 'libgcrypt'
- 'ttf-font' 'systemd' 'dbus' 'libpulse' 'pciutils' 'json-glib' 'libva'
- 'icu' 'libxml2' 'fontconfig' 'harfbuzz' 'libjpeg' 're2' 'snappy' 'ffmpeg' 'flac' 'libwebp' 'minizip' 'libxslt' 'freetype2' 'opus'
+ 'ttf-font' 'systemd' 'dbus' 'libpulse' 'pciutils' 'json-glib'
'desktop-file-utils' 'hicolor-icon-theme')
makedepends=('python' 'python2' 'gperf' 'yasm' 'mesa' 'ninja' 'nodejs' 'git'
- 'pipewire' 'clang' 'lld' 'gn' 'jre-openjdk-headless' 'jack')
+ 'pipewire' 'clang' 'lld' 'gn' 'java-runtime-headless')
optdepends=('pepper-flash: support for Flash content'
'kdialog: needed for file dialogs in KDE'
- 'gnome-keyring: for storing passwords in GNOME keyring'
- 'kwallet: for storing passwords in KWallet'
- 'libva-intel-driver: for hardware video acceleration with old Intel GPUs'
- 'intel-media-driver: for hardware video acceleration with newer Intel GPUs'
+ 'org.freedesktop.secrets: password storage backend on GNOME / Xfce'
+ 'kwallet: for storing passwords in KWallet on KDE desktops'
+ 'libva-intel-driver: for hardware video acceleration with Intel GPUs'
+ 'intel-media-driver: for hardware video acceleration with newer intel gpus'
'libva-mesa-driver: for hardware video acceleration with AMD/ATI GPUs'
'libva-vdpau-driver: for hardware video acceleration with NVIDIA GPUs')
provides=('chromium')
conflicts=('chromium')
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
- 'ungoogled-chromium.zip::https://github.com/Eloston/ungoogled-chromium/archive/master.zip'
+ 'ungoogled-chromium::git+https://github.com/Eloston/ungoogled-chromium'
flags.archlinux.gn
chromium-drirc-disable-10bpc-color-configs.conf
vaapi-fix.patch
fix-vaapi-ozone-build.patch
- add-missing-include-for-unique_ptr.patch
- dns_util-make-DohUpgradeEntry-non-const.patch
- fix-shutdown-crash-in-ProfileManager.patch
+ launch_manager.h-uses-std-vector.patch
+ include-algorithm-to-use-std-lower_bound.patch
icu65.patch
chromium-system-icu.patch
chromium-system-zlib.patch
+ chromium-system-hb.patch
fix-spammy-unique-font-matching-log.patch
chromium-widevine.patch
chromium-skia-harmony.patch)
-sha256sums=('f9c53839f306d2973de27723360024f7904101d426b9e7e9cdb56e8bcc775b0e'
+sha256sums=('e1a7362d396b0f72e6ad8c1d53cae67db201e0eeaa2a96dbe9214d080925bcf3'
'04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1'
'SKIP'
- 'd81d95f719e7b4ed2c15ece56b0272ae969e8df871f1d8d87065db0130134912'
+ '2f77b02f0e5b2396cdbede4360bd44f71d03844c36bd8c4f038f3e238fac8981'
'babda4f5c1179825797496898d77334ac067149cac03d797ab27ac69671a7feb'
- '9256123898cbdd4da4a111e5aa8752d5c6c2c07e59ca8677751791dd3321f6a9'
+ '0ec6ee49113cc8cc5036fa008519b94137df6987bf1f9fbffb2d42d298af868a'
'9aebd800e5fe191cd5f4bd82c33419eefdd80919e6c6f5a3a9346a224625f094'
- '49052e8aa630c4aa57bf46823edc32b7b309493275163c3bb3f9fd390c73356e'
- '69694ab12a5ced389916c0c5e8c7bdc191544f576b134ddfb2fe9d4ed9ec4494'
- '4f81612c28957987f7344d8ce2b95a4a63136a8319c9751819436b11c62df057'
+ 'bd0fae907c451252e91c4cbf1ad301716bc9f8a4644ecc60e9590a64197477d3'
+ '1f906676563e866e2b59719679e76e0b2f7f082f48ef0593e86da0351a586c73'
'1de9bdbfed482295dda45c7d4e323cee55a34e42f66b892da1c1a778682b7a41'
'e73cc2ee8d3ea35aab18c478d76fdfc68ca4463e1e10306fa1e738c03b3f26b5'
'eb67eda4945a89c3b90473fa8dc20637511ca4dcb58879a8ed6bf403700ca9c8'
+ 'c0ad3fa426cb8fc1a237ddc6309a6b2dd4055bbe41dd07f50071ee61f969b81a'
'6fbffe59b886195b92c9a55137cef83021c16593f49714acb20023633e3ebb19'
- 'd081f2ef8793544685aad35dea75a7e6264a2cb987ff3541e6377f4a3650a28b'
+ '709e2fddba3c1f2ed4deb3a239fc0479bfa50c46e054e7f32db4fb1365fed070'
'771292942c0901092a402cc60ee883877a99fb804cb54d568c8c6c94565a48e1')
# 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
@@ -107,14 +106,9 @@ prepare() {
# Fix vaapi linkage error
patch -Np1 -i ../fix-vaapi-ozone-build.patch
- # Missing include in third_party/blink/public/platform/web_rtc_rtp_source.h
- patch -Np1 -i ../add-missing-include-for-unique_ptr.patch
-
- # https://crbug.com/957519#c23
- patch -Np1 -i ../dns_util-make-DohUpgradeEntry-non-const.patch
-
- # https://crbug.com/1005244
- patch -Np1 -i ../fix-shutdown-crash-in-ProfileManager.patch
+ # https://crbug.com/819294
+ patch -Np1 -i ../launch_manager.h-uses-std-vector.patch
+ patch -Np1 -i ../include-algorithm-to-use-std-lower_bound.patch
# https://crbug.com/1014272
patch -Np1 -i ../icu65.patch
@@ -122,18 +116,20 @@ prepare() {
# Fixes from Gentoo
patch -Np1 -i ../chromium-system-icu.patch
patch -Np1 -i ../chromium-system-zlib.patch
+ patch -Np1 -i ../chromium-system-hb.patch
# https://crbug.com/1005508
patch -Np1 -i ../fix-spammy-unique-font-matching-log.patch
- # Load Widevine CDM if available
- #patch -Np1 -i ../chromium-widevine.patch
+ # Load bundled Widevine CDM if available (see chromium-widevine in the AUR)
+ # M79 is supposed to download it as a component but it doesn't seem to work
+ patch -Np1 -i ../chromium-widevine.patch
# https://crbug.com/skia/6663#c10
patch -Np0 -i ../chromium-skia-harmony.patch
# Ungoogled chromium stuff
- _ungoogled_repo="$srcdir/$_pkgname-master"
+ _ungoogled_repo="$srcdir/$_pkgname"
_utils="${_ungoogled_repo}/utils"
msg2 'Applying ungoogled chromium patches'
# Prune binaries
@@ -182,14 +178,18 @@ build() {
export NM=nm
# Ungoogled Chromium stuff
- _ungoogled_repo="$srcdir/$_pkgname-master"
+ _ungoogled_repo="$srcdir/$_pkgname"
nproc=$(nproc)
mkdir -p out/Release
# Assemble GN flags
cp "$_ungoogled_repo/flags.gn" "out/Release/args.gn"
printf '\n' >> "out/Release/args.gn"
cat "$srcdir/flags.archlinux.gn" >> "out/Release/args.gn"
-
+
+ if [[ -n ${_system_libs[icu]+set} ]]; then
+ _flags+=('icu_use_data_file=false')
+ fi
+
if check_option strip y; then
_flags+=('symbol_level=0')
fi
diff --git a/add-missing-include-for-unique_ptr.patch b/add-missing-include-for-unique_ptr.patch
deleted file mode 100644
index 113e08f4a7c6..000000000000
--- a/add-missing-include-for-unique_ptr.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From bbfe2665923225b4a7c436ba2b6c7e5f695f2e52 Mon Sep 17 00:00:00 2001
-From: David Landell <landell@vewd.com>
-Date: Fri, 13 Sep 2019 12:24:13 +0000
-Subject: [PATCH] Add missing include for unique_ptr
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Change-Id: I614d2f42868d563eb6a92dfb2aae08286e20d687
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1803137
-Reviewed-by: Henrik Boström <hbos@chromium.org>
-Commit-Queue: Henrik Boström <hbos@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#696355}
----
- third_party/blink/public/platform/web_rtc_rtp_source.h | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/third_party/blink/public/platform/web_rtc_rtp_source.h b/third_party/blink/public/platform/web_rtc_rtp_source.h
-index 959440f7a5..c3fd5421aa 100644
---- a/third_party/blink/public/platform/web_rtc_rtp_source.h
-+++ b/third_party/blink/public/platform/web_rtc_rtp_source.h
-@@ -5,6 +5,8 @@
- #ifndef THIRD_PARTY_BLINK_PUBLIC_PLATFORM_WEB_RTC_RTP_SOURCE_H_
- #define THIRD_PARTY_BLINK_PUBLIC_PLATFORM_WEB_RTC_RTP_SOURCE_H_
-
-+#include <memory>
-+
- #include "base/optional.h"
- #include "third_party/blink/public/platform/web_common.h"
-
diff --git a/chromium-system-hb.patch b/chromium-system-hb.patch
new file mode 100644
index 000000000000..83e0621777f1
--- /dev/null
+++ b/chromium-system-hb.patch
@@ -0,0 +1,19 @@
+diff --git a/components/paint_preview/common/subset_font.cc b/components/paint_preview/common/subset_font.cc
+index a218d63..6a5bdae 100644
+--- a/components/paint_preview/common/subset_font.cc
++++ b/components/paint_preview/common/subset_font.cc
+@@ -10,11 +10,12 @@
+ #include "base/bind.h"
+ #include "base/callback.h"
+ #include "base/macros.h"
+-#include "third_party/harfbuzz-ng/src/src/hb-subset.h"
+-#include "third_party/harfbuzz-ng/src/src/hb.h"
+ #include "third_party/skia/include/core/SkStream.h"
+ #include "third_party/skia/include/core/SkTypeface.h"
+
++#include <hb-subset.h>
++#include <hb.h>
++
+ namespace paint_preview {
+
+ namespace {
diff --git a/chromium-widevine.patch b/chromium-widevine.patch
index 1a1a3f228bf5..32f0ae2fb5e6 100644
--- a/chromium-widevine.patch
+++ b/chromium-widevine.patch
@@ -1,22 +1,13 @@
-diff -upr chromium-71.0.3578.80.orig/chrome/common/chrome_content_client.cc chromium-71.0.3578.80/chrome/common/chrome_content_client.cc
---- chromium-71.0.3578.80.orig/chrome/common/chrome_content_client.cc 2018-12-03 20:16:43.000000000 +0000
-+++ chromium-71.0.3578.80/chrome/common/chrome_content_client.cc 2018-12-04 21:34:28.658206942 +0000
-@@ -99,7 +99,7 @@
- // Registers Widevine CDM if Widevine is enabled, the Widevine CDM is
- // bundled and not a component. When the Widevine CDM is a component, it is
- // registered in widevine_cdm_component_installer.cc.
--#if BUILDFLAG(BUNDLE_WIDEVINE_CDM) && !BUILDFLAG(ENABLE_WIDEVINE_CDM_COMPONENT)
-+#if BUILDFLAG(ENABLE_WIDEVINE) && !BUILDFLAG(ENABLE_WIDEVINE_CDM_COMPONENT)
- #define REGISTER_BUNDLED_WIDEVINE_CDM
- #include "third_party/widevine/cdm/widevine_cdm_common.h" // nogncheck
- // TODO(crbug.com/663554): Needed for WIDEVINE_CDM_VERSION_STRING. Support
-diff -upr chromium-71.0.3578.80.orig/third_party/widevine/cdm/widevine_cdm_version.h chromium-71.0.3578.80/third_party/widevine/cdm/widevine_cdm_version.h
---- chromium-71.0.3578.80.orig/third_party/widevine/cdm/widevine_cdm_version.h 2018-12-03 20:18:01.000000000 +0000
-+++ chromium-71.0.3578.80/third_party/widevine/cdm/widevine_cdm_version.h 2018-12-04 21:37:45.635374949 +0000
-@@ -12,4 +12,6 @@
- // - WIDEVINE_CDM_VERSION_STRING (with the version of the CDM that's available
- // as a string, e.g., "1.0.123.456").
+diff --git a/third_party/widevine/cdm/BUILD.gn b/third_party/widevine/cdm/BUILD.gn
+index ed0e2f5208b..5b431a030d5 100644
+--- a/third_party/widevine/cdm/BUILD.gn
++++ b/third_party/widevine/cdm/BUILD.gn
+@@ -14,7 +14,7 @@ buildflag_header("buildflags") {
-+#define WIDEVINE_CDM_VERSION_STRING "unknown"
-+
- #endif // WIDEVINE_CDM_VERSION_H_
+ flags = [
+ "ENABLE_WIDEVINE=$enable_widevine",
+- "BUNDLE_WIDEVINE_CDM=$bundle_widevine_cdm",
++ "BUNDLE_WIDEVINE_CDM=true",
+ "ENABLE_WIDEVINE_CDM_COMPONENT=$enable_widevine_cdm_component",
+ ]
+ }
diff --git a/dns_util-make-DohUpgradeEntry-non-const.patch b/dns_util-make-DohUpgradeEntry-non-const.patch
deleted file mode 100644
index 2d655e1ab1c8..000000000000
--- a/dns_util-make-DohUpgradeEntry-non-const.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-From f4c3c329588b78af63aad8b401da767242b86709 Mon Sep 17 00:00:00 2001
-From: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Date: Mon, 16 Sep 2019 17:05:42 +0000
-Subject: [PATCH] dns_util: Make DohUpgradeEntry non-const when used with
- std::vector<>
-
-This fixes the build with libstdc++ (with most other standard libraries
-other than libc++, in fact) after commit f93a48e3 ("Allow upgrade to DoH
-during automatic mode"):
-
-../../../../../../usr/bin/../lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/stl_vector.h:351:7: error: static_assert failed due to requirement 'is_same<typename remove_cv<const DohUpgradeEntry>::type, const DohUpgradeEntry>::value' "std::vector must have a non-const, non-volatile value_type"
- static_assert(is_same<typename remove_cv<_Tp>::type, _Tp>::value,
- ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-../../base/no_destructor.h:77:28: note: in instantiation of template class 'std::vector<const net::(anonymous namespace)::DohUpgradeEntry, std::allocator<const net::(anonymous namespace)::DohUpgradeEntry> >' requested here
- alignas(T) char storage_[sizeof(T)];
- ^
-../../net/dns/dns_util.cc:147:7: note: in instantiation of template class 'base::NoDestructor<std::vector<const net::(anonymous namespace)::DohUpgradeEntry, std::allocator<const net::(anonymous namespace)::DohUpgradeEntry> > >' requested here
- upgradable_servers({
- ^
-../../net/dns/dns_util.cc:230:36: error: invalid range expression of type 'const std::vector<const net::(anonymous namespace)::DohUpgradeEntry, std::allocator<const net::(anonymous namespace)::DohUpgradeEntry> >'; no viable 'begin' function available
- for (const auto& upgrade_entry : upgradable_servers) {
- ^ ~~~~~~~~~~~~~~~~~~
-
-The C++ standard forbids containers of const elements. Callers of
-GetDohUpgradeList() use it in a safe way anyway, and most of
-DohUpgradeEntry's members are const.
-
-Bug: 957519
-Change-Id: I826a51823edb1184c0fae27105101e2894efe568
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1805636
-Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Commit-Queue: Eric Orth <ericorth@chromium.org>
-Reviewed-by: Eric Orth <ericorth@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#696834}
----
- net/dns/dns_util.cc | 13 +++++--------
- 1 file changed, 5 insertions(+), 8 deletions(-)
-
-diff --git a/net/dns/dns_util.cc b/net/dns/dns_util.cc
-index d83ff7c150..14997c48b2 100644
---- a/net/dns/dns_util.cc
-+++ b/net/dns/dns_util.cc
-@@ -139,11 +139,11 @@ struct DohUpgradeEntry {
- const DnsConfig::DnsOverHttpsServerConfig dns_over_https_config;
- };
-
--const std::vector<const DohUpgradeEntry>& GetDohUpgradeList() {
-+const std::vector<DohUpgradeEntry>& GetDohUpgradeList() {
- // The provider names in these entries should be kept in sync with the
- // DohProviderId histogram suffix list in
- // tools/metrics/histograms/histograms.xml.
-- static const base::NoDestructor<std::vector<const DohUpgradeEntry>>
-+ static const base::NoDestructor<std::vector<DohUpgradeEntry>>
- upgradable_servers({
- DohUpgradeEntry(
- "CleanBrowsingAdult",
-@@ -222,8 +222,7 @@ const std::vector<const DohUpgradeEntry>& GetDohUpgradeList() {
- std::vector<const DohUpgradeEntry*> GetDohUpgradeEntriesFromNameservers(
- const std::vector<IPEndPoint>& dns_servers,
- const std::vector<std::string>& excluded_providers) {
-- const std::vector<const DohUpgradeEntry>& upgradable_servers =
-- GetDohUpgradeList();
-+ const std::vector<DohUpgradeEntry>& upgradable_servers = GetDohUpgradeList();
- std::vector<const DohUpgradeEntry*> entries;
-
- for (const auto& server : dns_servers) {
-@@ -417,8 +416,7 @@ std::vector<DnsConfig::DnsOverHttpsServerConfig>
- GetDohUpgradeServersFromDotHostname(
- const std::string& dot_server,
- const std::vector<std::string>& excluded_providers) {
-- const std::vector<const DohUpgradeEntry>& upgradable_servers =
-- GetDohUpgradeList();
-+ const std::vector<DohUpgradeEntry>& upgradable_servers = GetDohUpgradeList();
- std::vector<DnsConfig::DnsOverHttpsServerConfig> doh_servers;
-
- if (dot_server.empty())
-@@ -451,8 +449,7 @@ GetDohUpgradeServersFromNameservers(
-
- std::string GetDohProviderIdForHistogramFromDohConfig(
- const DnsConfig::DnsOverHttpsServerConfig& doh_server) {
-- const std::vector<const DohUpgradeEntry>& upgradable_servers =
-- GetDohUpgradeList();
-+ const std::vector<DohUpgradeEntry>& upgradable_servers = GetDohUpgradeList();
- for (const auto& upgrade_entry : upgradable_servers) {
- if (doh_server.server_template ==
- upgrade_entry.dns_over_https_config.server_template) {
diff --git a/fix-shutdown-crash-in-ProfileManager.patch b/fix-shutdown-crash-in-ProfileManager.patch
deleted file mode 100644
index 01074eca5325..000000000000
--- a/fix-shutdown-crash-in-ProfileManager.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From e73aed9a5ef15102f29ac31b70290faf5c90f9fe Mon Sep 17 00:00:00 2001
-From: Evan Stade <estade@chromium.org>
-Date: Wed, 16 Oct 2019 16:01:32 +0000
-Subject: [PATCH] Fix shutdown crash in ProfileManager.
-
-OnProfileMarkedForPermanentDeletion should move from
-ProfileManagerObserver to ProfileObserver, which would also
-fix this bug. However, changing the order of members is the
-quickest and most cherry-pick-able way to avoid the crash.
-
-Bug: 1005244
-Change-Id: If2db68c846dd418cd02864b57b9b543687fa1e03
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1863518
-Auto-Submit: Evan Stade <estade@chromium.org>
-Reviewed-by: David Roger <droger@chromium.org>
-Commit-Queue: Evan Stade <estade@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#706467}
----
- chrome/browser/profiles/profile_manager.h | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/chrome/browser/profiles/profile_manager.h b/chrome/browser/profiles/profile_manager.h
-index b60df76d59..7d02af7f8f 100644
---- a/chrome/browser/profiles/profile_manager.h
-+++ b/chrome/browser/profiles/profile_manager.h
-@@ -410,6 +410,10 @@ class ProfileManager : public content::NotificationObserver,
- const base::FilePath& profile_dir);
- #endif // !defined(OS_ANDROID)
-
-+ // Destroy after |profile_info_cache_| since Profile destruction may trigger
-+ // some observers to unregister themselves.
-+ base::ObserverList<ProfileManagerObserver> observers_;
-+
- // Object to cache various information about profiles. Contains information
- // about every profile which has been created for this instance of Chrome,
- // if it has not been explicitly deleted. It must be destroyed after
-@@ -451,8 +455,6 @@ class ProfileManager : public content::NotificationObserver,
- // Controls whether to initialize some services. Only disabled for testing.
- bool do_final_services_init_ = true;
-
-- base::ObserverList<ProfileManagerObserver> observers_;
--
- // TODO(chrome/browser/profiles/OWNERS): Usage of this in profile_manager.cc
- // should likely be turned into DCHECK_CURRENTLY_ON(BrowserThread::UI) for
- // consistency with surrounding code in the same file but that wasn't trivial
diff --git a/flags.archlinux.gn b/flags.archlinux.gn
index 87539f6987b2..5eb781e02f2b 100644
--- a/flags.archlinux.gn
+++ b/flags.archlinux.gn
@@ -1,6 +1,5 @@
blink_symbol_level=0
custom_toolchain="//build/toolchain/linux/unbundle:default"
-enable_ac3_eac3_audio_demuxing=true
enable_iterator_debugging=false
fatal_linker_warnings=false
ffmpeg_branding="Chrome"
@@ -33,6 +32,7 @@ use_system_libopenjpeg2=true
use_system_zlib=true
use_vaapi=true
enable_swiftshader=false
+icu_use_data_file=false
use_ozone=true
ozone_platform_wayland=true
ozone_platform_x11=true
diff --git a/include-algorithm-to-use-std-lower_bound.patch b/include-algorithm-to-use-std-lower_bound.patch
new file mode 100644
index 000000000000..dc376321ffc4
--- /dev/null
+++ b/include-algorithm-to-use-std-lower_bound.patch
@@ -0,0 +1,49 @@
+From f7c177d35242311ea7a2cf49a0980c61664f27ba Mon Sep 17 00:00:00 2001
+From: Jose Dapena Paz <jose.dapena@lge.com>
+Date: Fri, 25 Oct 2019 15:07:09 +0000
+Subject: [PATCH] IWYU: include algorithm to use std::lower_bound in
+ ui/gfx/font.cc
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fix GCC build because of missing include:
+../../ui/gfx/font.cc: In function ‘gfx::Font::Weight gfx::FontWeightFromInt(int)’:
+../../ui/gfx/font.cc:114:8: error: no matching function for call to ‘lower_bound(const gfx::Font::Weight*, const gfx::Font::Weight*, int&, gfx::FontWeightFromInt(int)::<lambda(const gfx::Font::Weight&, const int&)>)’
+ });
+ ^
+In file included from /usr/include/c++/8/bits/char_traits.h:39,
+ from /usr/include/c++/8/string:40,
+ from ../../ui/gfx/font.h:8,
+ from ../../ui/gfx/font.cc:5:
+/usr/include/c++/8/bits/stl_algobase.h:984:5: note: candidate: ‘template<class _ForwardIterator, class _Tp> _ForwardIterator std::lower_bound(_ForwardIterator, _ForwardIterator, const _Tp&)’
+ lower_bound(_ForwardIterator __first, _ForwardIterator __last,
+ ^~~~~~~~~~~
+/usr/include/c++/8/bits/stl_algobase.h:984:5: note: template argument deduction/substitution failed:
+../../ui/gfx/font.cc:114:8: note: candidate expects 3 arguments, 4 provided
+ });
+ ^
+
+Bug: 819294
+Change-Id: Ic59dcf3a06bdd54d1d426c08a61624873a0ff30c
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1879909
+Commit-Queue: Alexei Svitkine <asvitkine@chromium.org>
+Reviewed-by: Alexei Svitkine <asvitkine@chromium.org>
+Cr-Commit-Position: refs/heads/master@{#709472}
+---
+ ui/gfx/font.cc | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/ui/gfx/font.cc b/ui/gfx/font.cc
+index 21367fd7297..92b159e13d1 100644
+--- a/ui/gfx/font.cc
++++ b/ui/gfx/font.cc
+@@ -4,6 +4,8 @@
+
+ #include "ui/gfx/font.h"
+
++#include <algorithm>
++
+ #include "base/strings/utf_string_conversions.h"
+ #include "build/build_config.h"
+ #include "ui/gfx/platform_font.h"
diff --git a/launch_manager.h-uses-std-vector.patch b/launch_manager.h-uses-std-vector.patch
new file mode 100644
index 000000000000..72abe9b9ce69
--- /dev/null
+++ b/launch_manager.h-uses-std-vector.patch
@@ -0,0 +1,36 @@
+From 97eb905ba262382bc3583078761c68f4452aea71 Mon Sep 17 00:00:00 2001
+From: Jose Dapena Paz <jose.dapena@lge.com>
+Date: Fri, 25 Oct 2019 09:27:53 +0000
+Subject: [PATCH] IWYU: launch_manager.h uses std::vector
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Add #include <vector> for using std::vector. This fixes GCC build.
+
+./../chrome/browser/apps/launch_service/launch_manager.h:46:15: error: ‘vector’ in namespace ‘std’ does not name a template type
+ static std::vector<base::FilePath> GetLaunchFilesFromCommandLine(
+ ^~~~~~
+
+Bug: 819294
+Change-Id: I02ec3a2914a8fbe3aa0041017a0228f4b0ca1ec9
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1879289
+Reviewed-by: Alexey Baskakov <loyso@chromium.org>
+Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
+Cr-Commit-Position: refs/heads/master@{#709411}
+---
+ chrome/browser/apps/launch_service/launch_manager.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/chrome/browser/apps/launch_service/launch_manager.h b/chrome/browser/apps/launch_service/launch_manager.h
+index 00aeb9d9c2a..76570ead0f9 100644
+--- a/chrome/browser/apps/launch_service/launch_manager.h
++++ b/chrome/browser/apps/launch_service/launch_manager.h
+@@ -6,6 +6,7 @@
+ #define CHROME_BROWSER_APPS_LAUNCH_SERVICE_LAUNCH_MANAGER_H_
+
+ #include <string>
++#include <vector>
+
+ #include "base/macros.h"
+
diff --git a/vaapi-fix.patch b/vaapi-fix.patch
index a1343731dcaf..b5372d1a2556 100644
--- a/vaapi-fix.patch
+++ b/vaapi-fix.patch
@@ -1,6 +1,6 @@
--- a/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
+++ b/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
-@@ -635,6 +635,7 @@ void VaapiVideoDecodeAccelerator::AssignPictureBuffers(
+@@ -641,6 +641,7 @@ void VaapiVideoDecodeAccelerator::AssignPictureBuffers(
// |vpp_vaapi_wrapper_| for VaapiPicture to DownloadFromSurface() the VA's
// internal decoded frame.
if (buffer_allocation_mode_ != BufferAllocationMode::kNone &&
@@ -8,24 +8,22 @@
!vpp_vaapi_wrapper_) {
vpp_vaapi_wrapper_ = VaapiWrapper::Create(
VaapiWrapper::kVideoProcess, VAProfileNone,
-@@ -650,7 +651,8 @@ void VaapiVideoDecodeAccelerator::AssignPictureBuffers(
- // only used as a copy destination. Therefore, the VaapiWrapper used and
- // owned by |picture| is |vpp_vaapi_wrapper_|.
+@@ -665,7 +666,8 @@ void VaapiVideoDecodeAccelerator::AssignPictureBuffers(
+ PictureBuffer buffer = buffers[i];
+ buffer.set_size(requested_pic_size_);
std::unique_ptr<VaapiPicture> picture = vaapi_picture_factory_->Create(
- (buffer_allocation_mode_ == BufferAllocationMode::kNone)
+ ((buffer_allocation_mode_ == BufferAllocationMode::kNone) ||
+ (buffer_allocation_mode_ == BufferAllocationMode::kWrapVdpau))
? vaapi_wrapper_
: vpp_vaapi_wrapper_,
- make_context_current_cb_, bind_image_cb_, buffers[i]);
-@@ -1077,6 +1079,14 @@ VaapiVideoDecodeAccelerator::GetSupportedProfiles() {
-
+ make_context_current_cb_, bind_image_cb_, buffer);
+@@ -1093,6 +1095,12 @@ VaapiVideoDecodeAccelerator::GetSupportedProfiles() {
+
VaapiVideoDecodeAccelerator::BufferAllocationMode
VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() {
+ // NVIDIA blobs use VDPAU
-+ if (base::StartsWith(VaapiWrapper::GetVendorStringForTesting(),
-+ "Splitted-Desktop Systems VDPAU",
-+ base::CompareCase::SENSITIVE)) {
++ if (VaapiWrapper::GetImplementationType() == VAImplementation::kNVIDIAVDPAU) {
+ LOG(INFO) << "VA-API driver on VDPAU backend";
+ return BufferAllocationMode::kWrapVdpau;
+ }
@@ -33,7 +31,7 @@
// TODO(crbug.com/912295): Enable a better BufferAllocationMode for IMPORT
// |output_mode_| as well.
if (output_mode_ == VideoDecodeAccelerator::Config::OutputMode::IMPORT)
-@@ -1089,7 +1099,7 @@ VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() {
+@@ -1105,7 +1113,7 @@ VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() {
// depends on the bitstream and sometimes it's not enough to cover the amount
// of frames needed by the client pipeline (see b/133733739).
// TODO(crbug.com/911754): Enable for VP9 Profile 2.
@@ -50,5 +48,27 @@
kNormal,
+ kWrapVdpau,
};
-
+
// Decides the concrete buffer allocation mode, depending on the hardware
+--- a/media/gpu/vaapi/vaapi_wrapper.cc
++++ b/media/gpu/vaapi/vaapi_wrapper.cc
+@@ -131,6 +131,9 @@ media::VAImplementation VendorStringToImplementationType(
+ } else if (base::StartsWith(va_vendor_string, "Intel iHD driver",
+ base::CompareCase::SENSITIVE)) {
+ return media::VAImplementation::kIntelIHD;
++ } else if (base::StartsWith(va_vendor_string, "Splitted-Desktop Systems VDPAU",
++ base::CompareCase::SENSITIVE)) {
++ return media::VAImplementation::kNVIDIAVDPAU;
+ }
+ return media::VAImplementation::kOther;
+ }
+--- a/media/gpu/vaapi/vaapi_wrapper.h
++++ b/media/gpu/vaapi/vaapi_wrapper.h
+@@ -79,6 +79,7 @@ enum class VAImplementation {
+ kIntelIHD,
+ kOther,
+ kInvalid,
++ kNVIDIAVDPAU,
+ };
+
+ // This class handles VA-API calls and ensures proper locking of VA-API calls