summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Jolly <kangie@gentoo.org>2024-11-02 14:15:23 +1000
committerMatt Jolly <kangie@gentoo.org>2024-11-02 14:23:38 +1000
commit96f83c07970601e0b57d03d4830d9000f76c9bdc (patch)
tree503e328d2515ee76c23bed04e990c93c30154296 /www-client
parentsys-libs/glibc: Stabilize 2.40-r5 ppc, #942687 (diff)
downloadgentoo-96f83c07970601e0b57d03d4830d9000f76c9bdc.tar.gz
gentoo-96f83c07970601e0b57d03d4830d9000f76c9bdc.tar.bz2
gentoo-96f83c07970601e0b57d03d4830d9000f76c9bdc.zip
www-client/chromium: keyword 130.0.6723.91 for ~ppc64
Move source for ppc64le patchset from raptor engineering to openPOWER. Drop our ppc64le tarball (which has dwindled over time) in favour of conditional application of patches from our chromium-patches tarball, something that was probably long overdue. Bug: https://bugs.gentoo.org/940304 Reported-by: zin0 <z_i_n_o@bluewin.ch> Signed-off-by: Matt Jolly <kangie@gentoo.org>
Diffstat (limited to 'www-client')
-rw-r--r--www-client/chromium/Manifest3
-rw-r--r--www-client/chromium/chromium-130.0.6723.91.ebuild52
2 files changed, 36 insertions, 19 deletions
diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
index b7295a4e108d..fc7a9a22fb51 100644
--- a/www-client/chromium/Manifest
+++ b/www-client/chromium/Manifest
@@ -11,9 +11,10 @@ DIST chromium-131-rust.tar.xz 115068636 BLAKE2B 7d2ed89372fce24de7432e62100767e3
DIST chromium-131.0.6753.0.tar.xz 6639635464 BLAKE2B a87035be45d530e8b84eb19fc90d0f6aab95920a95b8e5bac88fa6558a2e1b8cc15691ba868b5345168ea0480f2b4f1a08ae1dd9c8b88ab3035d721897f21e2e SHA512 20fcdaa63e57b59575c858e51fad87ef21a0d76fcb7261e46c506329e4847e9fdb935e9b9d93d3d1d67f784a894f2bc817465a730a8483dfba02f142787018f3
DIST chromium-131.0.6778.24-testdata.tar.xz 82892 BLAKE2B d94052ef8d90faaa3936dd46027973e8b3581c49702445889657fc45375724ad41f27d3da0baabcf53dec27a257596049c9515c5d9c425c1e290e7fbf7536f17 SHA512 c513c80da875aa0556193336aecd4626b4f5dcf1fa6954b9020ea36c63e445994435047d13c5dfbc9e98a776281649e03d699768d7ed49a8a00d4337d93b8355
DIST chromium-131.0.6778.24.tar.xz 4731348936 BLAKE2B 2b4018828896e7e28bc4aedc78bbbd5c4f3515c6e1aa4c1197a7379864a0f65a3bceaf9e98e65b586dd12d000c7ca1ccfbd8b272556ccfd128c40c091f23337a SHA512 8c73e7a689df53481f2f4058a42285bf4a3e22193959892f7a0a31a0cdbc16ab1bb2f264ca6d849f769952d68a926ad42e52ad159a83fd690b20380d564a23a0
+DIST chromium-openpower-a85b64f07b.tar.bz2 387899 BLAKE2B b01fda2d64ce73068d1536a10cc0896f07a4b714cdb25698b1df8b3252baa0c21c4209b307cf1cb554854f6d0bfe3cd35e06aaa8d02ac5d409a119335084c324 SHA512 05eee81677e8766808441c939bee68e2e6c58ec91f471d88a40181d2eda78614a0a6d27d92ff8f9dda564d12f3451bace4ff2727594748c5c238a3533038019b
DIST chromium-patches-128.tar.bz2 5087 BLAKE2B b0321fb45390a282afeeeb8fb4d6014d6e6b708e6851235e0897ac77d524160b4d33476aa70532df45d0ccf233fee3b4028cd4d845667dc6a2a46ecebfeb6752 SHA512 978908d27dc6fc620209486a9ad7f73babde8710728960f44f2680445276516e59a85c08656af2663d9e197df45874f24a1f19f14a21798fbcf7c5a10bb19371
DIST chromium-patches-129.tar.bz2 5071 BLAKE2B 080e1af8b0560a3c5365674e7c8d592310bbd2e273311b775b8112e410d91ccd48f170adbcf77cff566ad32de196217410663ac7b9e7e65544b6730fb1890aca SHA512 0a5bbc07dc9085b07332d5c6dd74940a9d55c4d0677f5603e75763ba54156f43664839d438f350bc86f3efc85aae452476e7f7040e06e60727847b156d1f0ab9
-DIST chromium-patches-130-1.tar.bz2 5035 BLAKE2B c8784123681bcedc7f4c508845f884da8e501d2917cd3174e5cc6c3505dc032f5d52132d997c7d3f57f0c3720f34b21a8eb9af915a3be017528db6dabd9d87da SHA512 6bbe06b915a3235fd4660c3193f4140a9be8c4a6d7a0fc6ec187886d9b46ea2e77634285e79fb0842e7a7acc77f438d86e94d45f203390b2607ed6fb2350b57e
+DIST chromium-patches-130-2.tar.bz2 10151 BLAKE2B b46515a3e01153d8c4e5c3ee1f6e9f905265bf88b698d46c8ceed0f90d36a057b8bb30a860e8d934bf0b85f9c0a671bef2c9a00349228fa076b7aec37ff62ca0 SHA512 e1ecca666c3998ee285426751be3220a5b67a057f2c92b1f45c7b786efb8d0b0e1d49ba70471fa74155f79f22811d240af636f61007191756c9981b53d3b23de
DIST chromium-patches-131-1.tar.bz2 4932 BLAKE2B 72006a6d751ae1207352547cdeef87f8cc9f9639283238da201d879c6fcd0f8bc499669cb030d8b4c2216fcd2730de46b0a071007b3d69a2bbdd22ba38bcd279 SHA512 11d7f861c007e9e28e5192fb354940180aea0e01e6e8ae77547e2dffd7b541b11f1acfe0fd0c8b6b4cbfc6c39ddfa79c8c08db42c1292ad329d49027d1406fc3
DIST chromium-ppc64le-gentoo-patches-1.tar.xz 5636 BLAKE2B 1d898939df023c59285b27bee552470483ea06375d1ee8d6947b89c5927c23cc7bfec6b49f3b376ece931d11a56f8e2a45791e0f92ad61974fc8c34c1082d89c SHA512 8a71cb007e47cda8e5fe5d185729389e65c48bd322c8ee8b3986bee8571427b959628f2666bda646a3f89ae64197c0957d3626845ff03461dbd5dee4c964d07c
DIST chromium-profiler-0.2.tar 259952640 BLAKE2B 5e82389fce00b267280d633b26551231c558b80f0c92cd7d60271095a3503365ab673e7a46dc5f74f8a82db1f21262cb24dcc0531d954bab5fb3b175dab3394d SHA512 9fa89a5ab728419683e7495ae676567480987d68a2d589f2aa97bfcbcf123f3c8f97f8bca5f65e5e3f6e41475535add473ded83b9c7a33bb4746a9d05b298a6c
diff --git a/www-client/chromium/chromium-130.0.6723.91.ebuild b/www-client/chromium/chromium-130.0.6723.91.ebuild
index a4925395a940..d8144d0c7181 100644
--- a/www-client/chromium/chromium-130.0.6723.91.ebuild
+++ b/www-client/chromium/chromium-130.0.6723.91.ebuild
@@ -13,7 +13,6 @@ RUST_MIN_VER=1.78.0
# chromium-tools/get-chromium-toolchain-strings.py
TEST_FONT=f26f29c9d3bfae588207bbc9762de8d142e58935c62a86f67332819b15203b35
-
VIRTUALX_REQUIRED="pgo"
CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
@@ -23,7 +22,8 @@ CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu
# While prerelease llvm is actually used in the google build, until we have a
# sane way to select 'rust built with this llvm slot' that isn't stable and testing
# subslots we will have to restrict LLVM_COMPAT to stable and testing keywords.
-LLVM_COMPAT=( {17..19} )
+# Requires 18.1.8 or 19.1.1 (or newer) for ppc64
+LLVM_COMPAT=( 18 19 )
PYTHON_COMPAT=( python3_{11..13} )
PYTHON_REQ_USE="xml(+)"
@@ -32,8 +32,8 @@ inherit python-any-r1 qmake-utils readme.gentoo-r1 systemd toolchain-funcs virtu
DESCRIPTION="Open-source version of Google Chrome web browser"
HOMEPAGE="https://www.chromium.org/"
-PATCHSET_PPC64="128.0.6613.84-1raptor0~deb12u1"
-PATCH_V="${PV%%\.*}-1"
+PPC64_HASH="a85b64f07b489b8c6fdb13ecf79c16c56c560fc6"
+PATCH_V="${PV%%\.*}-2"
SRC_URI="https://chromium-tarballs.distfiles.gentoo.org/${P}.tar.xz
https://gitlab.com/Matt.Jolly/chromium-patches/-/archive/${PATCH_V}/chromium-patches-${PATCH_V}.tar.bz2
test? (
@@ -41,8 +41,7 @@ SRC_URI="https://chromium-tarballs.distfiles.gentoo.org/${P}.tar.xz
https://chromium-fonts.storage.googleapis.com/${TEST_FONT} -> chromium-testfonts-${TEST_FONT:0:10}.tar.gz
)
ppc64? (
- https://quickbuild.io/~raptor-engineering-public/+archive/ubuntu/chromium/+files/chromium_${PATCHSET_PPC64}.debian.tar.xz
- https://deps.gentoo.zip/chromium-ppc64le-gentoo-patches-1.tar.xz
+ https://gitlab.solidsilicon.io/public-development/open-source/chromium/openpower-patches/-/archive/${PPC64_HASH}/openpower-patches-${PPC64_HASH}.tar.bz2 -> chromium-openpower-${PPC64_HASH:0:10}.tar.bz2
)
pgo? ( https://github.com/elkablo/chromium-profiler/releases/download/v0.2/chromium-profiler-0.2.tar )"
@@ -53,12 +52,12 @@ SLOT="0/stable"
if [[ ${SLOT} == "0/dev" ]]; then
KEYWORDS=""
else
- KEYWORDS="~amd64 ~arm64"
+ KEYWORDS="~amd64 ~arm64 ~ppc64"
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"
+IUSE+=" qt5 qt6 +screencast selinux test +vaapi +wayland +widevine cpu_flags_ppc_vsx3"
RESTRICT="
!bindist? ( bindist )
!test? ( test )
@@ -463,8 +462,7 @@ src_unpack() {
fi
if use ppc64; then
- unpack chromium_${PATCHSET_PPC64}.debian.tar.xz
- unpack chromium-ppc64le-gentoo-patches-1.tar.xz
+ unpack chromium-openpower-${PPC64_HASH:0:10}.tar.bz2
fi
}
@@ -485,24 +483,42 @@ src_prepare() {
"${FILESDIR}/chromium-127-bindgen-custom-toolchain.patch"
)
- PATCHES+=( "${WORKDIR}/chromium-patches-${PATCH_V}" )
+ shopt -s globstar nullglob
+ # 130: moved the PPC64 patches into the chromium-patches repo
+ local patch
+ for patch in "${WORKDIR}/chromium-patches-${PATCH_V}"/**/*.patch; do
+ elog "Applying patch: ${patch}"
+ if [[ ${patch} == *"ppc64le"* ]]; then
+ use ppc64 && PATCHES+=( "${patch}" )
+ else
+ PATCHES+=( "${patch}" )
+ fi
+ done
+
# We can't use the bundled compiler builtins with the system toolchain
# `grep` is a development convenience to ensure we fail early when google changes something.
local builtins_match="if (is_clang && !is_nacl && !is_cronet_build) {"
grep -q "${builtins_match}" build/config/compiler/BUILD.gn || die "Failed to disable bundled compiler builtins"
sed -i -e "/${builtins_match}/,+2d" build/config/compiler/BUILD.gn
- if use ppc64 ; then
- local p
- for p in $(grep -v "^#" "${WORKDIR}"/debian/patches/series | grep "^ppc64le" || die); do
- if [[ ! $p =~ "fix-breakpad-compile.patch" ]]; then
- eapply "${WORKDIR}/debian/patches/${p}"
+ if use ppc64; then
+ # Above this level there are ungoogled-chromium patches that we can't apply
+ local patchset_dir="${WORKDIR}/openpower-patches-${PPC64_HASH}/patches/ppc64le"
+ # Apply the OpenPOWER patches
+ local power9_patch="patches/ppc64le/core/baseline-isa-3-0.patch"
+ for patch in ${patchset_dir}/**/*.{patch,diff}; do
+ if [[ ${patch} == *"${power9_patch}" ]]; then
+ use cpu_flags_ppc_vsx3 && PATCHES+=( "${patch}" )
+ else
+ PATCHES+=( "${patch}" )
fi
done
- PATCHES+=( "${WORKDIR}/ppc64le" )
- PATCHES+=( "${WORKDIR}/debian/patches/fixes/rust-clanglib.patch" )
+
+ PATCHES+=( "${WORKDIR}/openpower-patches-${PPC64_HASH}/patches/upstream/blink-fix-size-assertions.patch" )
fi
+ shopt -u globstar nullglob
+
default
rm third_party/node/linux/node-linux-x64/bin/node || die