summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--www-client/chromium/Manifest4
-rw-r--r--www-client/chromium/chromium-108.0.5343.2.ebuild (renamed from www-client/chromium/chromium-108.0.5327.0.ebuild)34
-rw-r--r--www-client/chromium/files/chromium-108-EnumTable-crash.patch76
-rw-r--r--www-client/chromium/files/chromium-108-revert-GlobalMediaControlsCastStartStop.patch35
4 files changed, 129 insertions, 20 deletions
diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
index a59f7af5c078..9124f9a4e521 100644
--- a/www-client/chromium/Manifest
+++ b/www-client/chromium/Manifest
@@ -4,6 +4,6 @@ DIST chromium-106.0.5249.61.tar.xz 1621965008 BLAKE2B f15043eeefb898809adf580c6e
DIST chromium-106.0.5249.91.tar.xz 1611228868 BLAKE2B 75703b23a0538bdae74b2ac42e36e6d13297e3b6aaead6e5a8b97ed8f2cdd2d5883752c6d90f13fd1c2fb68828558f269c0c4f7ece4587de30e2ea8d878a9073 SHA512 741e3a3331a7e3f666bdbaa16cc8a1d829d73396bd34cb8f5f030e7704970dd5b5c4e274a1f69d05c1a9cfac148bc7740f56648c53bb20b782e6edd9b248a92c
DIST chromium-107-patchset-1.tar.xz 5736 BLAKE2B 581ca307d63635ef91aaa907aeebb8c735be6d6bbfcc3fe064fed7531b8848b5d918e017031ee606ed3bd8f0fc23aa6d2f8af4b36d33483dbeee2b5c8eacac82 SHA512 acbfb41c31a510a689cad3b0686e24925b018bd7a2a8f56f74b730dc36d878c266a11b3bb76b131e66f7b859f483ff00e16cbaae1b2b6944010c7396310c03b8
DIST chromium-107.0.5304.29.tar.xz 1688306728 BLAKE2B 2e00ce9cdfe41ed20004ccdf11f7d0f5824f1b23ac706e18c3891ff189983815f1ccbd26e1a12862db0688f6bc045fcf49d7694043883a608b182994cd8f2cec SHA512 871c373b44b18167126deef82ec835e33772c27d5c9d89585a1752efdcade8696c3be5d2735999838b13e3ce2e06d431f30f3591e861d1dcd7a80281817851eb
-DIST chromium-108-patchset-1.tar.xz 6344 BLAKE2B d5febda6415d0573d86f1c85dcf4449ab63633605b8d3cb5815bee0ed26dba8348554f8c7e06eb0450932c1062d388d5ad8817ef698afeb978bce1a98fcb3c5b SHA512 d5f47692388c66099d6af75c781866bc45e05ffb7fa91c354243fcd1dd83f5de3279706809b3f65039e07d2c3b03d86b7dadcf6d14d93d9aa53562f1b8318b01
-DIST chromium-108.0.5327.0.tar.xz 1672115480 BLAKE2B c92636436fb8017d4a6b5e7daa7518384149ea6478998e511dd04e17c1cc788cfa2fe5484c1f732e134d4f351fa9f37f68bab306904307cf2de5158f825a5efe SHA512 a073b08ea7cff74440510c08cc90105a80f91f8bdf49e74de9f048be54821a7ef246078775260ffeff00c925a849d9958c0643e9bdc1f31edc798d4bb0928efa
+DIST chromium-108-patchset-2.tar.xz 6480 BLAKE2B 2a40bb741fdd305b3525b790f82c2b36f6c909680788527a31aa2a11f519ff630aa12ffe7c53553b717f1909978c77e7db07a02a86c8e7d12d63375402802d7a SHA512 3fe182f0f928baaf0f5521efa8763080de765240b5608d5126e84e49335eb5edc788ab406aa71f5fa97c371afe1f6808e93e2e082c7f65169b5f157ff6c3e00b
+DIST chromium-108.0.5343.2.tar.xz 1669214708 BLAKE2B e022bb908b15a5ae645d23cc5ab1e268ab87b77af3ae9ac352f6dc2fc9ba36f9e212cd53f4e3fdb18bb114f89ffada3f0fbee2b2fd46b6824fccaa68e21d930a SHA512 ff74eae98a44ebfc77a729ee65b4d338fcc39f04f2168247eed039d5c19c945d90c2b6aa5a12ca96d493c5116c2dcf9c959c74ffe2dc25ea6717176f699342b2
DIST chromium-profiler-0.1.tar 269066240 BLAKE2B 6897387b63ff9a724b67f2e8799fe803dc75da376da809e752d19d6f5cf98bd84ac24161d07ac4a967577279e9ad5a8a46f0825332a7ee933a27693d6dc95611 SHA512 3fb6132599d28455d1b5c04d856ea7623e49b0b0b96f021c31d0952c4ba57d69d0a1cae6f0b91470a235221c89cc0d3bb38303ff02594ed0739712e6e2f8dbcc
diff --git a/www-client/chromium/chromium-108.0.5327.0.ebuild b/www-client/chromium/chromium-108.0.5343.2.ebuild
index c7fa92deec98..c9925bfbc5d4 100644
--- a/www-client/chromium/chromium-108.0.5327.0.ebuild
+++ b/www-client/chromium/chromium-108.0.5343.2.ebuild
@@ -12,11 +12,11 @@ CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu
VIRTUALX_REQUIRED="pgo"
-inherit check-reqs chromium-2 desktop flag-o-matic llvm ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs virtualx xdg-utils
+inherit check-reqs chromium-2 desktop flag-o-matic llvm ninja-utils pax-utils python-any-r1 qmake-utils readme.gentoo-r1 toolchain-funcs virtualx xdg-utils
DESCRIPTION="Open-source version of Google Chrome web browser"
HOMEPAGE="https://chromium.org/"
-PATCHSET="1"
+PATCHSET="2"
PATCHSET_NAME="chromium-$(ver_cut 1)-patchset-${PATCHSET}"
SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
https://github.com/stha09/chromium-patches/releases/download/${PATCHSET_NAME}/${PATCHSET_NAME}.tar.xz
@@ -167,7 +167,7 @@ BDEPEND="
dev-python/setuptools[${PYTHON_USEDEP}]
')
>=app-arch/gzip-1.7
- libcxx? ( >=sys-devel/clang-12 )
+ libcxx? ( >=sys-devel/clang-13 )
lto? ( $(depend_clang_llvm_versions 13 14 15) )
pgo? (
>=dev-python/selenium-3.141.0
@@ -190,7 +190,7 @@ BDEPEND="
: ${CHROMIUM_FORCE_CLANG=no}
if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
+ BDEPEND+=" >=sys-devel/clang-13"
fi
if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
@@ -254,7 +254,7 @@ pre_build_checks() {
local -x CPP="$(tc-getCXX) -E"
if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
+ die "At least gcc 10.4 is required"
fi
if use pgo && tc-is-cross-compiler; then
die "The pgo USE flag cannot be used when cross-compiling"
@@ -262,8 +262,8 @@ pre_build_checks() {
if needs_clang || tc-is-clang; then
tc-is-cross-compiler && CPP=${CBUILD}-clang++ || CPP=${CHOST}-clang++
CPP+=" -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
+ if ! ver_test "$(clang-major-version)" -ge 13; then
+ die "At least clang 13 is required"
fi
fi
if [[ ${EBUILD_PHASE_FUNC} == pkg_setup ]] && use js-type-check; then
@@ -296,7 +296,7 @@ pkg_pretend() {
pre_build_checks
if use headless; then
- local headless_unused_flags=("cups" "kerberos" "pulseaudio" "vaapi" "wayland")
+ local headless_unused_flags=("cups" "kerberos" "pulseaudio" "qt5" "vaapi" "wayland")
for myiuse in ${headless_unused_flags[@]}; do
use ${myiuse} && ewarn "Ignoring USE=${myiuse} since USE=headless is set."
done
@@ -322,9 +322,10 @@ src_prepare() {
local PATCHES=(
"${WORKDIR}/patches"
"${FILESDIR}/chromium-93-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-98-EnumTable-crash.patch"
"${FILESDIR}/chromium-98-gtk4-build.patch"
"${FILESDIR}/chromium-107-system-zlib.patch"
+ "${FILESDIR}/chromium-108-EnumTable-crash.patch"
+ "${FILESDIR}/chromium-108-revert-GlobalMediaControlsCastStartStop.patch"
"${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
"${FILESDIR}/chromium-shim_headers.patch"
"${FILESDIR}/chromium-cross-compile.patch"
@@ -433,7 +434,6 @@ src_prepare() {
third_party/fusejs
third_party/fxdiv
third_party/highway
- third_party/libgifcodec
third_party/liburlpattern
third_party/libzip
third_party/gemmlowp
@@ -591,18 +591,14 @@ src_prepare() {
third_party/libaom/source/libaom/third_party/x86inc
)
fi
+ if ! use system-harfbuzz; then
+ keeplibs+=( third_party/harfbuzz-ng )
+ fi
if use libcxx; then
keeplibs+=( third_party/re2 )
fi
- if use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng/utils )
- else
- keeplibs+=( third_party/harfbuzz-ng )
- fi
if use wayland && ! use headless ; then
keeplibs+=( third_party/wayland )
- # only need the .gn files
- rm -r third_party/wayland/src || die
fi
if use arm64 || use ppc64 ; then
keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
@@ -926,7 +922,7 @@ chromium_configure() {
myconf_gn+=" use_system_libdrm=true"
myconf_gn+=" use_system_minigbm=true"
myconf_gn+=" use_xkbcommon=true"
- use qt5 && export PATH="${PATH}:/usr/$(get_libdir)/qt5/bin"
+ use qt5 && export PATH="${PATH}:$(qt5_get_bindir)"
myconf_gn+=" use_qt=$(usex qt5 true false)"
myconf_gn+=" ozone_platform_x11=$(usex X true false)"
myconf_gn+=" ozone_platform_wayland=$(usex wayland true false)"
@@ -1073,6 +1069,8 @@ src_compile() {
mv out/Release/chromedriver{.unstripped,} || die
+ rm -f out/Release/locales/*.pak.info || die
+
# Build manpage; bug #684550
sed -e 's|@@PACKAGE@@|chromium-browser|g;
s|@@MENUNAME@@|Chromium|g;' \
diff --git a/www-client/chromium/files/chromium-108-EnumTable-crash.patch b/www-client/chromium/files/chromium-108-EnumTable-crash.patch
new file mode 100644
index 000000000000..661ec33c1d0d
--- /dev/null
+++ b/www-client/chromium/files/chromium-108-EnumTable-crash.patch
@@ -0,0 +1,76 @@
+diff --git a/components/media_router/common/providers/cast/channel/enum_table.h b/components/media_router/common/providers/cast/channel/enum_table.h
+index 842553a..89de703 100644
+--- a/components/media_router/common/providers/cast/channel/enum_table.h
++++ b/components/media_router/common/providers/cast/channel/enum_table.h
+@@ -8,6 +8,7 @@
+ #include <cstdint>
+ #include <cstring>
+ #include <ostream>
++#include <vector>
+
+ #include "base/check_op.h"
+ #include "base/notreached.h"
+@@ -187,7 +188,6 @@ class
+ inline constexpr GenericEnumTableEntry(int32_t value);
+ inline constexpr GenericEnumTableEntry(int32_t value, base::StringPiece str);
+
+- GenericEnumTableEntry(const GenericEnumTableEntry&) = delete;
+ GenericEnumTableEntry& operator=(const GenericEnumTableEntry&) = delete;
+
+ private:
+@@ -253,7 +253,6 @@ class EnumTable {
+ constexpr Entry(E value, base::StringPiece str)
+ : GenericEnumTableEntry(static_cast<int32_t>(value), str) {}
+
+- Entry(const Entry&) = delete;
+ Entry& operator=(const Entry&) = delete;
+ };
+
+@@ -312,15 +311,14 @@ class EnumTable {
+ if (is_sorted_) {
+ const std::size_t index = static_cast<std::size_t>(value);
+ if (ANALYZER_ASSUME_TRUE(index < data_.size())) {
+- const auto& entry = data_.begin()[index];
++ const auto& entry = data_[index];
+ if (ANALYZER_ASSUME_TRUE(entry.has_str()))
+ return entry.str();
+ }
+ return absl::nullopt;
+ }
+ return GenericEnumTableEntry::FindByValue(
+- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
+- data_.size(), static_cast<int32_t>(value));
++ &data_[0], data_.size(), static_cast<int32_t>(value));
+ }
+
+ // This overload of GetString is designed for cases where the argument is a
+@@ -348,8 +346,7 @@ class EnumTable {
+ // enum value directly.
+ 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) : absl::optional<E>();
+ }
+
+@@ -364,7 +361,7 @@ class EnumTable {
+ // Align the data on a cache line boundary.
+ alignas(64)
+ #endif
+- std::initializer_list<Entry> data_;
++ const std::vector<Entry> data_;
+ bool is_sorted_;
+
+ constexpr EnumTable(std::initializer_list<Entry> data, bool is_sorted)
+@@ -376,8 +373,8 @@ class EnumTable {
+
+ for (std::size_t i = 0; i < data.size(); i++) {
+ for (std::size_t j = i + 1; j < data.size(); j++) {
+- const Entry& ei = data.begin()[i];
+- const Entry& ej = data.begin()[j];
++ const Entry& ei = data[i];
++ const Entry& ej = data[j];
+ DCHECK(ei.value != ej.value)
+ << "Found duplicate enum values at indices " << i << " and " << j;
+ DCHECK(!(ei.has_str() && ej.has_str() && ei.str() == ej.str()))
diff --git a/www-client/chromium/files/chromium-108-revert-GlobalMediaControlsCastStartStop.patch b/www-client/chromium/files/chromium-108-revert-GlobalMediaControlsCastStartStop.patch
new file mode 100644
index 000000000000..650e94816f49
--- /dev/null
+++ b/www-client/chromium/files/chromium-108-revert-GlobalMediaControlsCastStartStop.patch
@@ -0,0 +1,35 @@
+From b58f0f2725a8c1a8a131f9984b5fd53b54119dba Mon Sep 17 00:00:00 2001
+From: Muyao Xu <muyaoxu@google.com>
+Date: Thu, 20 Jan 2022 23:46:21 +0000
+Subject: [PATCH] [Zenith] Enable GlobalMediaControlsCastStartStop flag by
+ default
+
+The feature is rolled out to 100% stable through finch for M96+.
+This CL enables it by default and fixes some unit tests failures.
+
+Bug: 1287242, 1287305
+Change-Id: I7e5c9625b77379fef253c41ef292a0dd6fc366fb
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3388416
+Reviewed-by: Takumi Fujimoto <takumif@chromium.org>
+Commit-Queue: Muyao Xu <muyaoxu@google.com>
+Cr-Commit-Position: refs/heads/main@{#961658}
+---
+ chrome/browser/media/router/media_router_feature.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/chrome/browser/media/router/media_router_feature.cc b/chrome/browser/media/router/media_router_feature.cc
+index 862329e..47c8912 100644
+--- a/chrome/browser/media/router/media_router_feature.cc
++++ b/chrome/browser/media/router/media_router_feature.cc
+@@ -54,7 +54,7 @@ BASE_FEATURE(kGlobalMediaControlsCastStartStop,
+ #else
+ BASE_FEATURE(kGlobalMediaControlsCastStartStop,
+ "GlobalMediaControlsCastStartStop",
+- base::FEATURE_ENABLED_BY_DEFAULT);
++ base::FEATURE_DISABLED_BY_DEFAULT);
+ #endif // BUILDFLAG(IS_CHROMEOS)
+
+ #endif // !BUILDFLAG(IS_ANDROID)
+--
+2.35.1
+