| 26 |
26 |
GN_MIN_VER=0.2235
|
| 27 |
27 |
# chromium-tools/get-chromium-toolchain-strings.py
|
| 28 |
28 |
TEST_FONT=a28b222b79851716f8358d2800157d9ffe117b3545031ae51f69b7e1e1b9a969
|
| 29 |
|
BUNDLED_CLANG_VER=llvmorg-22-init-8940-g4d4cb757-4
|
|
29 |
BUNDLED_CLANG_VER=llvmorg-22-init-8940-g4d4cb757-84
|
| 30 |
30 |
BUNDLED_RUST_VER=15283f6fe95e5b604273d13a428bab5fc0788f5a-1
|
| 31 |
31 |
RUST_SHORT_HASH=${BUNDLED_RUST_VER:0:10}-${BUNDLED_RUST_VER##*-}
|
| 32 |
32 |
NODE_VER=22.11.0
|
| ... | ... | |
| 37 |
37 |
hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
|
| 38 |
38 |
sv sw ta te th tr uk ur vi zh-CN zh-TW"
|
| 39 |
39 |
|
| 40 |
|
LLVM_COMPAT=( 20 )
|
|
40 |
LLVM_COMPAT=( 20 21 )
|
| 41 |
41 |
PYTHON_COMPAT=( python3_{11..13} )
|
| 42 |
42 |
PYTHON_REQ_USE="xml(+)"
|
| 43 |
43 |
RUST_MIN_VER=1.78.0
|
| ... | ... | |
| 51 |
51 |
HOMEPAGE="https://www.chromium.org/"
|
| 52 |
52 |
PPC64_HASH="a85b64f07b489b8c6fdb13ecf79c16c56c560fc6"
|
| 53 |
53 |
PATCH_V="${PV%%\.*}"
|
| 54 |
|
COPIUM_COMMIT="46d68912da04d9ed14856c50db986d5c8e786a4b"
|
|
54 |
COPIUM_COMMIT="8025c57b5b5d0f93ca6392cbcfab8fd2f8255e75"
|
| 55 |
55 |
SRC_URI="https://github.com/chromium-linux-tarballs/chromium-tarballs/releases/download/${PV}/chromium-${PV}-linux.tar.xz
|
| 56 |
56 |
!bundled-toolchain? (
|
| 57 |
57 |
https://gitlab.com/Matt.Jolly/chromium-patches/-/archive/${PATCH_V}/chromium-patches-${PATCH_V}.tar.bz2
|
| ... | ... | |
| 86 |
86 |
KEYWORDS="amd64 arm64"
|
| 87 |
87 |
fi
|
| 88 |
88 |
|
| 89 |
|
IUSE_SYSTEM_LIBS="+system-harfbuzz +system-icu +system-png +system-zstd"
|
|
89 |
IUSE_SYSTEM_LIBS="+system-harfbuzz +system-icu +system-zstd"
|
| 90 |
90 |
IUSE="+X ${IUSE_SYSTEM_LIBS} bindist bundled-toolchain cups debug ffmpeg-chromium gtk4 +hangouts headless kerberos +official pax-kernel pgo"
|
| 91 |
91 |
IUSE+=" +proprietary-codecs pulseaudio qt6 +rar +screencast selinux test +vaapi +wayland +widevine cpu_flags_ppc_vsx3"
|
| 92 |
92 |
RESTRICT="
|
| 93 |
93 |
!bindist? ( bindist )
|
| 94 |
|
test" #!test? ( test ) # Since M142 tests have been segfaulting on Gentoo systems; disabling for now.
|
|
94 |
test" # Since M142 tests have been segfaulting on Gentoo systems; disabling for now.
|
| 95 |
95 |
|
| 96 |
96 |
REQUIRED_USE="
|
| 97 |
97 |
!headless? ( || ( X wayland ) )
|
| ... | ... | |
| 123 |
123 |
>=media-libs/freetype-2.11.0-r1:=
|
| 124 |
124 |
system-harfbuzz? ( >=media-libs/harfbuzz-3:0=[icu(-)] )
|
| 125 |
125 |
media-libs/libjpeg-turbo:=
|
| 126 |
|
system-png? ( media-libs/libpng:=[-apng(-)] )
|
| 127 |
126 |
system-zstd? ( >=app-arch/zstd-1.5.5:= )
|
| 128 |
127 |
>=media-libs/libwebp-0.4.0:=
|
| 129 |
128 |
media-libs/mesa:=[gbm(+)]
|
| ... | ... | |
| 223 |
222 |
>=dev-util/gperf-3.2
|
| 224 |
223 |
dev-vcs/git
|
| 225 |
224 |
>=net-libs/nodejs-${NODE_VER}[inspector]
|
|
225 |
sys-apps/hwdata
|
| 226 |
226 |
>=sys-devel/bison-2.4.3
|
| 227 |
227 |
sys-devel/flex
|
| 228 |
228 |
virtual/pkgconfig
|
| ... | ... | |
| 485 |
485 |
"${FILESDIR}/${PN}-134-bindgen-custom-toolchain.patch"
|
| 486 |
486 |
"${FILESDIR}/${PN}-135-oauth2-client-switches.patch"
|
| 487 |
487 |
"${FILESDIR}/${PN}-138-nodejs-version-check.patch"
|
| 488 |
|
"${FILESDIR}/${PN}-142-iwyu-field-form-data.patch"
|
|
488 |
)
|
|
489 |
|
|
490 |
PATCHES+=(
|
|
491 |
"${WORKDIR}/copium/cr143-libsync-__BEGIN_DECLS.patch"
|
| 489 |
492 |
)
|
| 490 |
493 |
|
| 491 |
494 |
# https://issues.chromium.org/issues/442698344
|
| ... | ... | |
| 609 |
612 |
# adjust python interpreter version
|
| 610 |
613 |
sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
|
| 611 |
614 |
|
|
615 |
# Use the system copy of hwdata's usb.ids; upstream is woefully out of date (2015!)
|
|
616 |
sed 's|//third_party/usb_ids/usb.ids|/usr/share/hwdata/usb.ids|g' \
|
|
617 |
-i services/device/public/cpp/usb/BUILD.gn || die "Failed to set system usb.ids path"
|
|
618 |
|
| 612 |
619 |
# remove_bundled_libraries.py walks the source tree and looks for paths containing the substring 'third_party'
|
| 613 |
620 |
# whitelist matches use the right-most matching path component, so we need to whitelist from that point down.
|
| 614 |
621 |
local keeplibs=(
|
| ... | ... | |
| 671 |
678 |
third_party/dawn
|
| 672 |
679 |
third_party/dawn/third_party/gn/webgpu-cts
|
| 673 |
680 |
third_party/dawn/third_party/khronos
|
|
681 |
third_party/dawn/third_party/webgpu-headers
|
| 674 |
682 |
third_party/depot_tools
|
| 675 |
683 |
third_party/devscripts
|
| 676 |
684 |
third_party/devtools-frontend
|
| ... | ... | |
| 754 |
762 |
third_party/libjingle
|
| 755 |
763 |
third_party/libpfm4
|
| 756 |
764 |
third_party/libphonenumber
|
|
765 |
third_party/libpng
|
| 757 |
766 |
third_party/libsecret
|
| 758 |
767 |
third_party/libsrtp
|
| 759 |
768 |
third_party/libsync
|
| ... | ... | |
| 920 |
929 |
keeplibs+=( third_party/icu )
|
| 921 |
930 |
fi
|
| 922 |
931 |
|
| 923 |
|
if ! use system-png; then
|
| 924 |
|
keeplibs+=( third_party/libpng )
|
| 925 |
|
fi
|
| 926 |
|
|
| 927 |
932 |
if ! use system-zstd; then
|
| 928 |
933 |
keeplibs+=( third_party/zstd )
|
| 929 |
934 |
fi
|
| ... | ... | |
| 1022 |
1027 |
if use system-icu; then
|
| 1023 |
1028 |
gn_system_libraries+=( icu )
|
| 1024 |
1029 |
fi
|
| 1025 |
|
if use system-png; then
|
| 1026 |
|
gn_system_libraries+=( libpng )
|
| 1027 |
|
fi
|
|
1030 |
|
| 1028 |
1031 |
if use system-zstd; then
|
| 1029 |
1032 |
gn_system_libraries+=( zstd )
|
| 1030 |
1033 |
fi
|
| ... | ... | |
| 1312 |
1315 |
einfo "Configuring Chromium ..."
|
| 1313 |
1316 |
set -- gn gen --args="${myconf_gn[*]}${EXTRA_GN:+ ${EXTRA_GN}}" out/Release
|
| 1314 |
1317 |
echo "$@"
|
| 1315 |
|
"$@" || die
|
|
1318 |
"$@" || die "Failed to configure Chromium"
|
| 1316 |
1319 |
}
|
| 1317 |
1320 |
|
| 1318 |
1321 |
src_configure() {
|