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
