commit:     573de0e6e6cd25062272a61db75e3f0698efcc3d
Author:     Andrew Cameron <apcameron <AT> gmail <DOT> com>
AuthorDate: Thu Feb  6 12:45:07 2025 +0000
Commit:     Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
CommitDate: Mon Feb 10 13:17:21 2025 +0000
URL:        https://gitweb.gentoo.org/proj/riscv.git/commit/?id=573de0e6

Update Chromium to 132.0.6834.159

Signed-off-by: Andrew Cameron <apcameron <AT> gmail.com>
Closes: https://github.com/gentoo/riscv/pull/23
Signed-off-by: Jakov Smolić <jsmolic <AT> gentoo.org>

 www-client/chromium/Manifest                       |   4 +-
 ...4.110.ebuild => chromium-132.0.6834.159.ebuild} |  44 ++-----
 .../chromium/files/chromium-134-qt5-optional.patch | 133 +++++++++++++++++++++
 3 files changed, 146 insertions(+), 35 deletions(-)

diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
index 4ac6834..0358160 100644
--- a/www-client/chromium/Manifest
+++ b/www-client/chromium/Manifest
@@ -1,5 +1,5 @@
-DIST chromium-132.0.6834.110-linux-testdata.tar.xz 299682228 BLAKE2B 
93775b8f3ee34484fb93fefd5eb7bd2b2d9c2f26d869a1ae65968a7151b975ccf8b94027b0cbbbce6a1805292da50fbf084dce038c24fdc651fb6d0387c22d1d
 SHA512 
3dd3332a83227d198c8cf9f42bc1d395bcbb2f7f711cdbd2a5f1f804944a37ac5c2f39fc65717a4bb3324c987abbee0a7eefd7048df7811f0edb6db60ffeb340
-DIST chromium-132.0.6834.110-linux.tar.xz 2196336616 BLAKE2B 
a31932fdf003b6fbe59b61804d28e2f321cbb257311f45f732dbc4868cdb844a22521ced70d98a1cec647ef4c3de26d1881210c0a54098c416d9d9e9da214781
 SHA512 
962c85c16f2c59656347b4804b8766a3669d23764f1802d96af00de889047ce43ebe2cddc511ad9bc88e8e55a0cfc957d7f2b96e9a8680dc6d983293968adf9e
+DIST chromium-132.0.6834.159-linux-testdata.tar.xz 299714080 BLAKE2B 
e6b4691524548d4a316852d88e7f7893571c870375613686fd53503c79cdbf02a4aa2d4a64591ce5069704044031a3579cfab99e439cf2675c4bbbb6011a9f9c
 SHA512 
b20c57e06195fc4a3e12d035d421801a64c3d7dee3ace760e3a8349fdfdbda4c52abcaf01cf0920d668683a7c89a949862b995dd96a98323de2b300ac6067718
+DIST chromium-132.0.6834.159-linux.tar.xz 2196432176 BLAKE2B 
ec797628558a62cd73b47979ecaac5ab50c3af01e6f0b2018a6783e2374f341e48681ff3975333a31d26af06d40e6af3051a123f29442eda1a9d63ef371aef30
 SHA512 
afe6e8df6a46401fe4d21e3d9e1f06f2bc1c680705b2d79206d933b0c7cad81a5045a46019d8e79bee3e16a57b83a5b9ff024dd570f9f7e29b1784088dd2f01b
 DIST chromium-openpower-c11b515d9a.tar.bz2 396039 BLAKE2B 
c05653e6bb62188c18864e783197853f4c41f88d1c928044a0ea0cb4677bc17806fac266ab100cbbcec3cb0d964bf2172917df95679927c1f1a88fa34aef4f53
 SHA512 
e9d9bbb2dd8d998060c78dfd5bbaedc548a8c44b442f6259304797326c585046144a6bb8aa4e24c44b3b56068189bee8a01267db2a392e90fd5603d06c0ef9ff
 DIST chromium-patches-132.tar.bz2 5040 BLAKE2B 
d5bd84dd90b395c6a15135637f51f931c72a2f301b1c24e9b938c744f2767fa36857b8edfdf5c44cf085a1efcb40475401fec226ce43446442f32fb174b55355
 SHA512 
29833b306a34ab6562ee58eb03669818da7235cd36666b27d829bcbd3c4d0035a530fb6be1c33cf88c1c11d43e68e3781f9b9602c0c004e7a37ffa69f9ee17c7
 DIST chromium-profiler-0.2.tar 259952640 BLAKE2B 
5e82389fce00b267280d633b26551231c558b80f0c92cd7d60271095a3503365ab673e7a46dc5f74f8a82db1f21262cb24dcc0531d954bab5fb3b175dab3394d
 SHA512 
9fa89a5ab728419683e7495ae676567480987d68a2d589f2aa97bfcbcf123f3c8f97f8bca5f65e5e3f6e41475535add473ded83b9c7a33bb4746a9d05b298a6c

diff --git a/www-client/chromium/chromium-132.0.6834.110.ebuild 
b/www-client/chromium/chromium-132.0.6834.159.ebuild
similarity index 97%
rename from www-client/chromium/chromium-132.0.6834.110.ebuild
rename to www-client/chromium/chromium-132.0.6834.159.ebuild
index 8f3791d..546079c 100644
--- a/www-client/chromium/chromium-132.0.6834.110.ebuild
+++ b/www-client/chromium/chromium-132.0.6834.159.ebuild
@@ -25,7 +25,7 @@ RUST_MIN_VER=1.78.0
 RUST_NEEDS_LLVM="yes please"
 
 inherit check-reqs chromium-2 desktop flag-o-matic llvm-r1 multiprocessing 
ninja-utils pax-utils
-inherit python-any-r1 qmake-utils readme.gentoo-r1 rust systemd 
toolchain-funcs virtualx xdg-utils
+inherit python-any-r1 readme.gentoo-r1 rust systemd toolchain-funcs virtualx 
xdg-utils
 
 DESCRIPTION="Open-source version of Google Chrome web browser"
 HOMEPAGE="https://www.chromium.org/";
@@ -52,7 +52,7 @@ fi
 
 IUSE_SYSTEM_LIBS="+system-harfbuzz +system-icu +system-png +system-zstd"
 IUSE="+X ${IUSE_SYSTEM_LIBS} bindist cups debug ffmpeg-chromium gtk4 +hangouts 
headless kerberos +official pax-kernel pgo +proprietary-codecs pulseaudio"
-IUSE+=" qt5 qt6 +screencast selinux test +vaapi +wayland +widevine 
cpu_flags_ppc_vsx3"
+IUSE+=" qt6 +screencast selinux test +vaapi +wayland +widevine 
cpu_flags_ppc_vsx3"
 RESTRICT="
        !bindist? ( bindist )
        !test? ( test )
@@ -61,7 +61,6 @@ RESTRICT="
 REQUIRED_USE="
        !headless? ( || ( X wayland ) )
        pgo? ( X !wayland )
-       qt6? ( qt5 )
        screencast? ( wayland )
        ffmpeg-chromium? ( bindist proprietary-codecs )
 "
@@ -118,7 +117,7 @@ COMMON_SNAPSHOT_DEPEND="
 
 COMMON_DEPEND="
        ${COMMON_SNAPSHOT_DEPEND}
-       app-misc/jq:=
+    app-misc/jq:=
        app-arch/bzip2:=
        dev-libs/expat:=
        net-misc/curl[ssl]
@@ -134,10 +133,6 @@ COMMON_DEPEND="
                x11-libs/cairo:=
                x11-libs/gdk-pixbuf:2
                x11-libs/pango:=
-               qt5? (
-                       dev-qt/qtcore:5
-                       dev-qt/qtwidgets:5
-               )
                qt6? ( dev-qt/qtbase:6[gui,widgets] )
        )
 "
@@ -147,7 +142,6 @@ RDEPEND="${COMMON_DEPEND}
                        x11-libs/gtk+:3[X?,wayland?]
                        gui-libs/gtk:4[X?,wayland?]
                )
-               qt5? ( dev-qt/qtgui:5[X?,wayland?] )
                qt6? ( dev-qt/qtbase:6[X?,wayland?] )
        )
        virtual/ttf-fonts
@@ -172,7 +166,6 @@ BDEPEND="
        ')
        >=app-arch/gzip-1.7
        !headless? (
-               qt5? ( dev-qt/qtcore:5 )
                qt6? ( dev-qt/qtbase:6 )
        )
        $(llvm_gen_dep '
@@ -180,7 +173,7 @@ BDEPEND="
                llvm-core/llvm:${LLVM_SLOT}
                llvm-core/lld:${LLVM_SLOT}
                official? (
-                       !ppc64? ( !riscv? ( 
llvm-runtimes/compiler-rt-sanitizers:${LLVM_SLOT}[cfi] ) )
+            !ppc64? ( !riscv? ( 
llvm-runtimes/compiler-rt-sanitizers:${LLVM_SLOT}[cfi] ) )
                )
        ')
        pgo? (
@@ -266,7 +259,7 @@ pkg_pretend() {
        fi
 
        if use headless; then
-               local headless_unused_flags=("cups" "kerberos" "pulseaudio" 
"qt5" "qt6" "vaapi" "wayland")
+               local headless_unused_flags=("cups" "kerberos" "pulseaudio" 
"qt6" "vaapi" "wayland")
                for myiuse in ${headless_unused_flags[@]}; do
                        use ${myiuse} && ewarn "Ignoring USE=${myiuse}, 
USE=headless is set."
                done
@@ -375,6 +368,7 @@ src_prepare() {
                "${FILESDIR}/chromium-131-unbundle-icu-target.patch"
                "${FILESDIR}/chromium-131-oauth2-client-switches.patch"
                "${FILESDIR}/chromium-132-bindgen-custom-toolchain.patch"
+               "${FILESDIR}/chromium-134-qt5-optional.patch"
         "${FILESDIR}/swiftshader-MCDissassembler.patch"
         "${FILESDIR}/swiftshader-use-llvm16.patch"
         "${FILESDIR}/Debian-fix-rust-linking.patch"
@@ -1106,7 +1100,9 @@ chromium_configure() {
        else
                myconf_gn+=" use_system_minigbm=true"
                myconf_gn+=" use_xkbcommon=true"
-               if use qt5 || use qt6; then
+               myconf_gn+=" use_qt5=false"
+               if use qt6; then
+                       myconf_gn+=" use_qt6=true"
                        local cbuild_libdir=$(get_libdir)
                        if tc-is-cross-compiler; then
                                # Hack to workaround get_libdir not being able 
to handle CBUILD, bug #794181
@@ -1114,21 +1110,9 @@ chromium_configure() {
                                cbuild_libdir=${cbuild_libdir:2}
                                cbuild_libdir=${cbuild_libdir/% }
                        fi
-                       if use qt5; then
-                               if tc-is-cross-compiler; then
-                                       myconf_gn+=" 
moc_qt5_path=\"${EPREFIX}/${cbuild_libdir}/qt5/bin\""
-                               else
-                                       myconf_gn+=" 
moc_qt5_path=\"$(qt5_get_bindir)\""
-                               fi
-                       fi
-                       if use qt6; then
-                               myconf_gn+=" 
moc_qt6_path=\"${EPREFIX}/usr/${cbuild_libdir}/qt6/libexec\""
-                       fi
-
-                       myconf_gn+=" use_qt=true"
-                       myconf_gn+=" use_qt6=$(usex qt6 true false)"
+                       myconf_gn+=" 
moc_qt6_path=\"${EPREFIX}/usr/${cbuild_libdir}/qt6/libexec\""
                else
-                       myconf_gn+=" use_qt=false"
+                       myconf_gn+=" use_qt6=false"
                fi
                myconf_gn+=" ozone_platform_x11=$(usex X true false)"
                myconf_gn+=" ozone_platform_wayland=$(usex wayland true false)"
@@ -1469,12 +1453,6 @@ pkg_postinst() {
                        elog "behavior you need to pass --gtk-version=4, e.g. 
by adding it"
                        elog "to CHROMIUM_FLAGS in /etc/chromium/default."
                fi
-               if use qt5 && use qt6; then
-                       elog "Chromium automatically selects Qt5 or Qt6 based 
on your desktop"
-                       elog "environment. To override you need to pass 
--qt-version=5 or"
-                       elog "--qt-version=6, e.g. by adding it to 
CHROMIUM_FLAGS in"
-                       elog "/etc/chromium/default."
-               fi
        fi
 
        if systemd_is_booted && ! [[ -f "/etc/machine-id" ]]; then

diff --git a/www-client/chromium/files/chromium-134-qt5-optional.patch 
b/www-client/chromium/files/chromium-134-qt5-optional.patch
new file mode 100644
index 0000000..57606f8
--- /dev/null
+++ b/www-client/chromium/files/chromium-134-qt5-optional.patch
@@ -0,0 +1,133 @@
+https://chromium.googlesource.com/chromium/src/+/0d8d0e0943489b59e452b4d0214959821880ad7f
+From: Matt Jolly <[email protected]>
+Date: Tue, 28 Jan 2025 12:00:57 -0800
+Subject: [PATCH] UI: make QT5 optional
+
+To build with `use_qt6`, QT5 (`use_qt`) is also required.
+This is undesirable for downstreams who are actively working
+to drop support for QT5 (e.g. Gentoo).
+
+To resolve this:
+
+- Add `use_qt5`
+- Replace most `use_qt` conditionals with this option;
+  these appear to be from before QT6 support was added.
+- Use `use_qt5` to gate some previously unconditional QT5-related
+  items in chrome/installer/linux
+- Remove `use_qt` as an argument, instead set to `use_qt5 || use_qt6`.
+
+This change should not impact the current behaviour; if no options
+are selected QT5 and QT6 support will be enabled, using existing logic
+unless one is explicitly disabled with `use_qt{x}=false`.
+
+See-also: https://bugs.gentoo.org/926166, https://bugs.gentoo.org/948836
+Signed-off-by: Matt Jolly <[email protected]>
+Fixed: 328182252
+Change-Id: I22ec7a068356412d3f9fce68a19aee4f8c89892c
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6205488
+Reviewed-by: Thomas Anderson <[email protected]>
+Commit-Queue: Lei Zhang <[email protected]>
+Reviewed-by: Lei Zhang <[email protected]>
+Cr-Commit-Position: refs/heads/main@{#1412471}
+--- a/chrome/installer/linux/BUILD.gn
++++ b/chrome/installer/linux/BUILD.gn
+@@ -77,10 +77,10 @@ if (enable_swiftshader) {
+   packaging_files += [ "$root_out_dir/vk_swiftshader_icd.json" ]
+ }
+ 
+-if (use_qt) {
+-  # Even though this is a shared library, add it to `packaging_files` instead 
of
+-  # `packaging_files_shlibs` to skip the dependency check.  This is 
intentional
+-  # to prevent a hard dependency on QT for the package.
++# Even though this is a shared library, add it to `packaging_files` instead of
++# `packaging_files_shlibs` to skip the dependency check.  This is intentional
++# to prevent a hard dependency on QT for the package.
++if (use_qt5) {
+   packaging_files += [ "$root_out_dir/libqt5_shim.so" ]
+ }
+ if (use_qt6) {
+@@ -206,7 +206,7 @@ if (build_with_internal_optimization_guide) {
+   }
+ }
+ 
+-if (use_qt) {
++if (use_qt5) {
+   strip_binary("strip_qt5_shim") {
+     binary_input = "$root_out_dir/libqt5_shim.so"
+     deps = [ "//ui/qt:qt5_shim" ]
+@@ -399,7 +399,7 @@ group("installer_deps") {
+       "//components/optimization_guide/internal:optimization_guide_internal",
+     ]
+   }
+-  if (use_qt) {
++  if (use_qt5) {
+     public_deps += [
+       ":strip_qt5_shim",
+       "//ui/qt:qt5_shim",
+--- a/ui/qt/BUILD.gn
++++ b/ui/qt/BUILD.gn
+@@ -101,10 +101,12 @@ template("qt_shim") {
+     }
+   }
+ }
+-qt_shim("qt5_shim") {
+-  qt_version = "5"
+-  if (!use_sysroot) {
+-    moc_qt_path = "$moc_qt5_path"
++if (use_qt5) {
++  qt_shim("qt5_shim") {
++    qt_version = "5"
++    if (!use_sysroot) {
++      moc_qt_path = "$moc_qt5_path"
++    }
+   }
+ }
+ if (use_qt6) {
+@@ -122,7 +124,10 @@ component("qt") {
+   defines = [ "IS_QT_IMPL" ]
+ 
+   # qt_shim is in data_deps since we want to load it manually.
+-  data_deps = [ ":qt5_shim" ]
++  data_deps = []
++  if (use_qt5) {
++    data_deps += [ ":qt5_shim" ]
++  }
+   if (use_qt6) {
+     data_deps += [ ":qt6_shim" ]
+   }
+--- a/ui/qt/qt.gni
++++ b/ui/qt/qt.gni
+@@ -6,27 +6,20 @@ import("//build/config/cast.gni")
+ import("//build/config/sanitizers/sanitizers.gni")
+ import("//build/config/sysroot.gni")
+ 
++# TODO(crbug.com/40260415): Allow QT in MSAN builds once QT is
++# added to the instrumented libraries.
+ declare_args() {
+-  # TODO(crbug.com/40260415): Allow QT in MSAN builds once QT is
+-  # added to the instrumented libraries.
+-  use_qt = is_linux && !is_castos && !is_msan
++  use_qt5 = use_sysroot && is_linux && !is_castos && !is_msan
++  use_qt6 = use_sysroot && is_linux && !is_castos && !is_msan
+ }
+ 
+ declare_args() {
+-  if (!use_sysroot && use_qt) {
++  if (!use_sysroot && use_qt5) {
+     moc_qt5_path = ""
+   }
+-}
+-
+-declare_args() {
+-  use_qt6 = use_qt && use_sysroot
+-}
+-
+-declare_args() {
+   if (!use_sysroot && use_qt6) {
+     moc_qt6_path = ""
+   }
+ }
+ 
+-# use_qt6 => use_qt
+-assert(!use_qt6 || use_qt)
++use_qt = use_qt5 || use_qt6

Reply via email to