aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Cameron <apcameron@gmail.com>2025-01-27 10:22:36 +0000
committerYixun Lan <dlan@gentoo.org>2025-01-28 19:20:24 +0800
commit576909e8eba83d657e51a9aa8c4a5d764ec907c5 (patch)
tree069b031458b3ba2cfb889bfb5520e3519b651b85
parentUpdate Chromium to 129.0.6668.100 (diff)
downloadriscv-576909e8eba83d657e51a9aa8c4a5d764ec907c5.tar.gz
riscv-576909e8eba83d657e51a9aa8c4a5d764ec907c5.tar.bz2
riscv-576909e8eba83d657e51a9aa8c4a5d764ec907c5.zip
Update Chromium to 132.0.6834.110HEADmaster
Closes: https://github.com/gentoo/riscv/pull/22 Signed-off-by: Andrew Cameron <apcameron@gmail.com> Signed-off-by: Yixun Lan <dlan@gentoo.org>
-rw-r--r--www-client/chromium/Manifest11
-rw-r--r--www-client/chromium/chromium-132.0.6834.110.ebuild (renamed from www-client/chromium/chromium-129.0.6668.100-r1.ebuild)564
-rw-r--r--www-client/chromium/files/0001-Enable-relocate-1-for-ff_h264_weight_funcs_8_rvv.patch26
-rw-r--r--www-client/chromium/files/0001-chrome-runtime_api_delegate-add-riscv64-define.patch (renamed from www-client/chromium/files/chrome-runtime_api_delegate-add-riscv64-define.patch)1
-rw-r--r--www-client/chromium/files/0001-extensions-common-api-runtime.json-riscv64-support.patch (renamed from www-client/chromium/files/extensions-common-api-runtime.json-riscv64-support.patch)1
-rw-r--r--www-client/chromium/files/Debian-fix-rust-linking.patch1
-rw-r--r--www-client/chromium/files/chromium-126-oauth2-client-switches.patch45
-rw-r--r--www-client/chromium/files/chromium-127-browser-ui-deps.patch57
-rw-r--r--www-client/chromium/files/chromium-127-updater-systemd.patch73
-rw-r--r--www-client/chromium/files/chromium-131-oauth2-client-switches.patch39
-rw-r--r--www-client/chromium/files/chromium-131-unbundle-icu-target.patch21
-rw-r--r--www-client/chromium/files/chromium-132-bindgen-custom-toolchain.patch (renamed from www-client/chromium/files/chromium-127-bindgen-custom-toolchain.patch)41
-rw-r--r--www-client/chromium/files/chromium-134-oauth2-client-switches.patch35
-rw-r--r--www-client/chromium/files/compiler-rt-riscv.patch (renamed from www-client/chromium/files/riscv.patch)0
-rw-r--r--www-client/chromium/files/cpuinfo.patch22
-rwxr-xr-xwww-client/chromium/files/esbuildbin0 -> 9437336 bytes
-rw-r--r--www-client/chromium/files/libstdc++-fixup.patch219
-rw-r--r--www-client/chromium/files/riscv-cargo.patch32
-rw-r--r--www-client/chromium/files/riscv-ffmpeg.patch1025
-rw-r--r--www-client/chromium/files/riscv-misc.patch48
-rw-r--r--www-client/chromium/files/riscv-sandbox.patch152
-rw-r--r--www-client/chromium/files/riscv-v8.patch28
-rw-r--r--www-client/chromium/metadata.xml6
23 files changed, 1362 insertions, 1085 deletions
diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
index 9f92372..4ac6834 100644
--- a/www-client/chromium/Manifest
+++ b/www-client/chromium/Manifest
@@ -1,7 +1,6 @@
-DIST chromium-129-clang.tar.xz 52250752 BLAKE2B c7223a1f4a9f52eb631b968ecaea528d19aa14ded23e03e530ad6c46e7e1579a7a010cb347489f1b963013b4f26358be94aeff0f98b5eceb7b1f1e49e8acdfd3 SHA512 43681d64d4480e3f69afd3021037af6910e9c64052edefdb72e99b0a85cd94c4a8eb4095188784d7fa7f52fae10a9bd9db53f2bb80e89f709f92af7ce6403976
-DIST chromium-129-rust.tar.xz 152042272 BLAKE2B acde4dc9c0fe232d16f07f3e4b719ea762627e234970866e0de56ec3959c4cd0a7b1b09cf5ccecd50efd1cc35dcf224be3b398c1ea19a79731d6db13c94fa7a9 SHA512 bef8e56cf73de5cefd5fe0bb9836ef65012406ff3d364d36624d30e7b5cdb2634d17ac9e49a60ccb0ac5dd57cf4311b587c5ff0cec26b2fc6e15274abe0dc85b
-DIST chromium-129.0.6668.100.tar.xz 6677334468 BLAKE2B b68896322673762ce49ac18dcd731011516f3eff3e98561bcfc2404fea7e5bf8c39fa8c5b19e0dc26f188ec8787ba2b729580024a0ca205c891eaf48a4a0e134 SHA512 366be6dbde59e979186174525431d4823449e0c031bb4dc290f747c7525de44f3e2c821a0c4cd1bbb47ae3bee9fa24efdaa465d8d883791f6c63f20760a4fb48
-DIST chromium-patches-129.tar.bz2 5071 BLAKE2B 080e1af8b0560a3c5365674e7c8d592310bbd2e273311b775b8112e410d91ccd48f170adbcf77cff566ad32de196217410663ac7b9e7e65544b6730fb1890aca SHA512 0a5bbc07dc9085b07332d5c6dd74940a9d55c4d0677f5603e75763ba54156f43664839d438f350bc86f3efc85aae452476e7f7040e06e60727847b156d1f0ab9
-DIST chromium-ppc64le-gentoo-patches-1.tar.xz 5636 BLAKE2B 1d898939df023c59285b27bee552470483ea06375d1ee8d6947b89c5927c23cc7bfec6b49f3b376ece931d11a56f8e2a45791e0f92ad61974fc8c34c1082d89c SHA512 8a71cb007e47cda8e5fe5d185729389e65c48bd322c8ee8b3986bee8571427b959628f2666bda646a3f89ae64197c0957d3626845ff03461dbd5dee4c964d07c
+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-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
-DIST chromium_128.0.6613.84-1raptor0~deb12u1.debian.tar.xz 8674292 BLAKE2B 74c8556f578231cd133ce3a11306ce38d32332a3db7b0f32a63df1806201933e69e9ff01e66d7ccef279f2134e0a69c89365d7a08a7a7e7d69816a188ae0b91c SHA512 b1b85bc99493676d466e648c00eb7e337efbcb197e9ed5ae6394133721db828583340df5ebfa45a3dccc72f400ad6ada637d400d8e2fae35c1322ca5e15dc10e
+DIST chromium-testfonts-f26f29c9d3.tar.gz 32750602 BLAKE2B 498f8b2e0811c98dc3d4aaa75559e69c782afb4bd12328cfdb7244ddba5cae7ee47becd27b2549d7b36bed417601f70f4c192934b0f08496cef1547d0502d93c SHA512 96b090446862997c8134e2971f0e38793ecc1208d547e554c9b651ccfb4127c4de86754903fea57a7292a2823c45117bae0ec13ed87aed20c248fb779579fbde
diff --git a/www-client/chromium/chromium-129.0.6668.100-r1.ebuild b/www-client/chromium/chromium-132.0.6834.110.ebuild
index 80d0a5d..8f3791d 100644
--- a/www-client/chromium/chromium-129.0.6668.100-r1.ebuild
+++ b/www-client/chromium/chromium-132.0.6834.110.ebuild
@@ -1,35 +1,16 @@
-# Copyright 2009-2024 Gentoo Authors
+# Copyright 2009-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# PACKAGING NOTES
-# Google roll their bundled Clang every two weeks, and the bundled Rust
-# is rolled regularly and depends on that. While we do our best to build
-# with system Clang, we will eventually hit the point where we need to use
-# the bundled Clang due to the use of prerelease features. We've been lucky
-# enough so far that this hasn't been an issue.
-# We use llvm-utils.eclass directly due to chromium's inherent Googliness.
-
-# GN is bundled with Chromium, but we always use the system version. Remember to
-# check for upstream changes to GN and update ebuild (and version below) as required.
-
-# For binhost users, if USE=bindist is set, we configure Chromium in a way that it is able
-# to use proprietary codecs, and so that ffmpeg is an external component (libffmpeg.so),
-# then we remove ffmpeg from the image to ensure that the built package is distributable
-# (i.e. we don't owe royalties). A suitable libffmpeg.so is symlinked in its place;
-# as a result of this, ffmpeg[chromium] or ffmpeg-chromium must be installed on the system.
-
-# For non-binhost builds, we build the bundled ffmpeg and enable proprietary codecs because there's
-# no reason not to. Todo: Re-enable USE=system-ffmpeg.
+# This uses a gentoo-created tarball due to Google CI Failures.
+# Use 133(?) as a base for new official tarballs.
GN_MIN_VER=0.2165
-# chromium-tools/get-chromium-toolchain-strings.sh
-GOOGLE_CLANG_VER=llvmorg-20-init-1009-g7088a5ed-10
-GOOGLE_RUST_VER=595316b4006932405a63862d8fe65f71a6356293-5
-
-: ${CHROMIUM_FORCE_GOOGLE_TOOLCHAIN=no}
+# chromium-tools/get-chromium-toolchain-strings.py
+TEST_FONT=f26f29c9d3bfae588207bbc9762de8d142e58935c62a86f67332819b15203b35
VIRTUALX_REQUIRED="pgo"
@@ -37,43 +18,45 @@ CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu
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
sv sw ta te th tr uk ur vi zh-CN zh-TW"
-LLVM_COMPAT=( 18 )
+LLVM_COMPAT=( 19 )
PYTHON_COMPAT=( python3_{11..13} )
PYTHON_REQ_USE="xml(+)"
RUST_MIN_VER=1.78.0
-RUST_NEEDS_LLVM=1
-RUST_OPTIONAL=1
+RUST_NEEDS_LLVM="yes please"
-inherit check-reqs chromium-2 desktop flag-o-matic llvm-r1 ninja-utils pax-utils
+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
DESCRIPTION="Open-source version of Google Chrome web browser"
HOMEPAGE="https://www.chromium.org/"
-PATCHSET_PPC64="128.0.6613.84-1raptor0~deb12u1"
+PPC64_HASH="c11b515d9addc3f8b516502e553ace507eb81815"
PATCH_V="${PV%%\.*}"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- system-toolchain? (
+SRC_URI="https://chromium-tarballs.distfiles.gentoo.org/${P}-linux.tar.xz
https://gitlab.com/Matt.Jolly/chromium-patches/-/archive/${PATCH_V}/chromium-patches-${PATCH_V}.tar.bz2
- )
- !system-toolchain? (
- https://commondatastorage.googleapis.com/chromium-browser-clang/Linux_x64/clang-${GOOGLE_CLANG_VER}.tar.xz
- -> chromium-${PV%%\.*}-clang.tar.xz
- https://commondatastorage.googleapis.com/chromium-browser-clang/Linux_x64/rust-toolchain-${GOOGLE_RUST_VER}-${GOOGLE_CLANG_VER%???}.tar.xz
- -> chromium-${PV%%\.*}-rust.tar.xz
+ test? (
+ https://chromium-tarballs.distfiles.gentoo.org/${P}-linux-testdata.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.raptorengineering.com/raptor-engineering-public/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 )"
LICENSE="BSD"
SLOT="0/stable"
-KEYWORDS="amd64 arm64 ~riscv"
+# Dev exists mostly to give devs some breathing room for beta/stable releases;
+# it shouldn't be keyworded but adventurous users can select it.
+if [[ ${SLOT} != "0/dev" ]]; then
+ KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv"
+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 +system-toolchain +vaapi +wayland +widevine"
-RESTRICT="!bindist? ( bindist )"
+IUSE+=" qt5 qt6 +screencast selinux test +vaapi +wayland +widevine cpu_flags_ppc_vsx3"
+RESTRICT="
+ !bindist? ( bindist )
+ !test? ( test )
+"
REQUIRED_USE="
!headless? ( || ( X wayland ) )
@@ -111,7 +94,6 @@ COMMON_SNAPSHOT_DEPEND="
media-libs/mesa:=[gbm(+)]
>=media-libs/openh264-1.6.0:=
sys-libs/zlib:=
- x11-libs/libdrm:=
!headless? (
dev-libs/glib:2
>=media-libs/alsa-lib-1.0.19:=
@@ -136,6 +118,7 @@ COMMON_SNAPSHOT_DEPEND="
COMMON_DEPEND="
${COMMON_SNAPSHOT_DEPEND}
+ app-misc/jq:=
app-arch/bzip2:=
dev-libs/expat:=
net-misc/curl[ssl]
@@ -192,19 +175,19 @@ BDEPEND="
qt5? ( dev-qt/qtcore:5 )
qt6? ( dev-qt/qtbase:6 )
)
- system-toolchain? (
- $(llvm_gen_dep "
- llvm-core/clang:\${LLVM_SLOT}
- llvm-core/llvm:\${LLVM_SLOT}
- llvm-core/lld:\${LLVM_SLOT}
- ")
- ${RUST_DEPEND}
- pgo? (
- >=dev-python/selenium-3.141.0
- >=dev-util/web_page_replay_go-20220314
+ $(llvm_gen_dep '
+ llvm-core/clang:${LLVM_SLOT}
+ llvm-core/llvm:${LLVM_SLOT}
+ llvm-core/lld:${LLVM_SLOT}
+ official? (
+ !ppc64? ( !riscv? ( llvm-runtimes/compiler-rt-sanitizers:${LLVM_SLOT}[cfi] ) )
)
- >=dev-util/bindgen-0.68.0
+ ')
+ pgo? (
+ >=dev-python/selenium-3.141.0
+ >=dev-util/web_page_replay_go-20220314
)
+ >=dev-util/bindgen-0.68.0
>=dev-build/gn-${GN_MIN_VER}
dev-build/ninja
dev-lang/perl
@@ -299,38 +282,57 @@ pkg_setup() {
# The pre_build_checks are all about compilation resources, no need to run it for a binpkg
pre_build_checks
- if use system-toolchain; then
- # The linux:unbundle toolchain in GN grabs CC, CXX, CPP (etc) from the environment
- # This is effectively the 'force-clang' path if GCC support is re-added.
- if ! tc-is-lto && use official; then
- einfo "USE=official selected and LTO not detected."
- einfo "It is _highly_ recommended that LTO be enabled for performance reasons"
- einfo "and to be consistent with the upstream \"official\" build optimisations."
- fi
+ # The linux:unbundle toolchain in GN grabs CC, CXX, CPP (etc) from the environment
+ # We'll set these to clang here then use llvm-utils functions to very explicitly set these
+ # to a sane value.
+ # This is effectively the 'force-clang' path if GCC support is re-added.
+ # TODO: check if the user has already selected a specific impl via make.conf and respect that.
+ use_lto="false"
+ if tc-is-lto; then
+ use_lto="true"
+ # We can rely on GN to do this for us; anecdotally without this builds
+ # take significantly longer with LTO enabled and it doesn't hurt anything.
+ filter-lto
+ fi
- # 936858
- if tc-ld-is-mold; then
- eerror "Your toolchain is using the mold linker."
- eerror "This is not supported by Chromium."
- die "Please switch to a different linker."
- fi
+ if [ "$use_lto" = "false" ] && use official; then
+ einfo "USE=official selected and LTO not detected."
+ einfo "It is _highly_ recommended that LTO be enabled for performance reasons"
+ einfo "and to be consistent with the upstream \"official\" build optimisations."
+ fi
- # We're forcing clang here; user choice is respected via llvm_slot_x USE
- AR=llvm-ar
- CPP="${CHOST}-clang++ -E"
- NM=llvm-nm
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
+ if [ "$use_lto" = "false" ] && use test; then
+ die "Tests require CFI which requires LTO"
+ fi
- if tc-is-cross-compiler; then
- use pgo && die "The pgo USE flag cannot be used when cross-compiling"
- CPP="${CBUILD}-clang++ -E"
- fi
+ export use_lto
- llvm-r1_pkg_setup
- rust_pkg_setup
+ # 936858
+ if tc-ld-is-mold; then
+ eerror "Your toolchain is using the mold linker."
+ eerror "This is not supported by Chromium."
+ die "Please switch to a different linker."
fi
+ llvm-r1_pkg_setup
+ rust_pkg_setup
+
+ # Forcing clang; respect llvm_slot_x to enable selection of impl from LLVM_COMPAT
+ AR=llvm-ar
+ CPP="${CHOST}-clang++-${LLVM_SLOT} -E"
+ NM=llvm-nm
+ CC="${CHOST}-clang-${LLVM_SLOT}"
+ CXX="${CHOST}-clang++-${LLVM_SLOT}"
+
+ if tc-is-cross-compiler; then
+ use pgo && die "The pgo USE flag cannot be used when cross-compiling"
+ CPP="${CBUILD}-clang++-${LLVM_SLOT} -E"
+ fi
+
+ # I hate doing this but upstream Rust have yet to come up with a better solution for
+ # us poor packagers. Required for Split LTO units, which are required for CFI.
+ export RUSTC_BOOTSTRAP=1
+
# Users should never hit this, it's purely a development convenience
if ver_test $(gn --version || die) -lt ${GN_MIN_VER}; then
die "dev-build/gn >= ${GN_MIN_VER} is required to build this Chromium"
@@ -341,26 +343,24 @@ pkg_setup() {
}
src_unpack() {
- # In 126 Chromium upstream decided to change the way that the rust toolchain is packaged
- # so now we get a fancy src_unpack function to ensure that we don't accidentally unpack
- # one toolchain over the other. The addtional control over over unpacking also helps us
- # ensure that GN doesn't try and use some bundled tool (like bindgen) instead of the system
- # package by just not unpacking it unless we're using the bundled toolchain.
- unpack ${P}.tar.xz
- if use system-toolchain; then
- unpack chromium-patches-${PATCH_V}.tar.bz2
- else
- unpack chromium-${PV%%\.*}-clang.tar.xz
- local rust_dir="${WORKDIR}/rust-toolchain"
- mkdir -p ${rust_dir} || die "Failed to create rust toolchain directory"
- tar xf "${DISTDIR}/chromium-${PV%%\.*}-rust.tar.xz" -C ${rust_dir} || die "Failed to unpack rust toolchain"
- fi
+ unpack ${P}-linux.tar.xz
+ unpack chromium-patches-${PATCH_V}.tar.bz2
use pgo && unpack chromium-profiler-0.2.tar
+ if use test; then
+ # A new testdata tarball is available for each release; but testfonts tend to remain stable
+ # for the duration of a release.
+ # This unpacks directly into/over ${WORKDIR}/${P} so we can just use `unpack`.
+ unpack ${P}-linux-testdata.tar.xz
+ # This just contains a bunch of font files that need to be unpacked (or moved) to the correct location.
+ local testfonts_dir="${WORKDIR}/${P}/third_party/test_fonts"
+ local testfonts_tar="${DISTDIR}/chromium-testfonts-${TEST_FONT:0:10}.tar.gz"
+ tar xf "${testfonts_tar}" -C "${testfonts_dir}" || die "Failed to unpack testfonts"
+ 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
}
@@ -368,58 +368,70 @@ src_prepare() {
# Calling this here supports resumption via FEATURES=keepwork
python_setup
- # disable global media controls, crashes with libstdc++
- sed -i -e \
- "/\"GlobalMediaControlsCastStartStop\"/,+4{s/ENABLED/DISABLED/;}" \
- "chrome/browser/media/router/media_router_feature.cc"
-
local PATCHES=(
"${FILESDIR}/chromium-cross-compile.patch"
"${FILESDIR}/chromium-109-system-zlib.patch"
"${FILESDIR}/chromium-111-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-126-oauth2-client-switches.patch"
- "${FILESDIR}/chromium-127-bindgen-custom-toolchain.patch"
+ "${FILESDIR}/chromium-131-unbundle-icu-target.patch"
+ "${FILESDIR}/chromium-131-oauth2-client-switches.patch"
+ "${FILESDIR}/chromium-132-bindgen-custom-toolchain.patch"
"${FILESDIR}/swiftshader-MCDissassembler.patch"
"${FILESDIR}/swiftshader-use-llvm16.patch"
"${FILESDIR}/Debian-fix-rust-linking.patch"
"${FILESDIR}/riscv-dav1d.patch"
- "${FILESDIR}/riscv-cargo.patch"
"${FILESDIR}/riscv-sandbox.patch"
"${FILESDIR}/riscv-ffmpeg.patch"
- "${FILESDIR}/riscv.patch"
+ "${FILESDIR}/compiler-rt-riscv.patch"
"${FILESDIR}/cpuinfo.patch"
"${FILESDIR}/riscv-misc.patch"
+ "${FILESDIR}/libstdc++-fixup.patch"
+ "${FILESDIR}/0001-chrome-runtime_api_delegate-add-riscv64-define.patch"
+ "${FILESDIR}/0001-extensions-common-api-runtime.json-riscv64-support.patch"
+ "${FILESDIR}/0001-Enable-relocate-1-for-ff_h264_weight_funcs_8_rvv.patch"
)
+ 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
+ if [[ ${patch} == *"ppc64le"* ]]; then
+ use ppc64 && PATCHES+=( "${patch}" )
+ else
+ PATCHES+=( "${patch}" )
+ fi
+ done
+ shopt -u globstar nullglob
- if use system-toolchain; then
- # The patchset is really only required if we're using the system-toolchain
- PATCHES+=( "${WORKDIR}/chromium-patches-${PATCH_V}" )
- # 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
+ # 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
- else
- mkdir -p third_party/llvm-build/Release+Asserts || die "Failed to bundle llvm"
- ln -s "${WORKDIR}"/bin third_party/llvm-build/Release+Asserts/bin || die "Failed to symlink llvm bin"
- ln -s "${WORKDIR}"/lib third_party/llvm-build/Release+Asserts/lib || die "Failed to symlink llvm lib"
- echo "${GOOGLE_CLANG_VER}" > third_party/llvm-build/Release+Asserts/cr_build_revision || \
- die "Failed to set clang version"
- ln -s "${WORKDIR}"/rust-toolchain third_party/rust-toolchain || die "Failed to bundle rust"
- cp "${WORKDIR}"/rust-toolchain/VERSION \
- "${WORKDIR}"/rust-toolchain/INSTALLED_VERSION || die "Failed to set rust version"
+ if use ppc64; then
+ local patchset_dir="${WORKDIR}/openpower-patches-${PPC64_HASH}/patches"
+ # patch causes build errors on 4K page systems (https://bugs.gentoo.org/show_bug.cgi?id=940304)
+ local page_size_patch="ppc64le/third_party/use-sysconf-page-size-on-ppc64.patch"
+ local isa_3_patch="ppc64le/core/baseline-isa-3-0.patch"
+ # Apply the OpenPOWER patches (check for page size and isa3.0)
+ openpower_patches=( $(grep -E "^ppc64le|^upstream" "${patchset_dir}/series" | grep -v "${page_size_patch}" |
+ grep -v "${isa_3_patch}" || die) )
+ for patch in "${openpower_patches[@]}"; do
+ PATCHES+=( "${patchset_dir}/${patch}" )
+ done
+ if [[ $(getconf PAGESIZE) == 65536 ]]; then
+ PATCHES+=( "${patchset_dir}/${page_size_patch}" )
+ fi
+ # We use vsx3 as a proxy for 'want isa3.0' (POWER9)
+ if use cpu_flags_ppc_vsx3 ; then
+ PATCHES+=( "${patchset_dir}/${isa_3_patch}" )
+ fi
fi
- 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}"
- fi
- done
- PATCHES+=( "${WORKDIR}/ppc64le" )
- PATCHES+=( "${WORKDIR}/debian/patches/fixes/rust-clanglib.patch" )
+ # This is a nightly option that does not exist any current release
+ # https://github.com/rust-lang/rust/commit/389a399a501a626ebf891ae0bb076c25e325ae64
+ if ver_test ${RUST_SLOT} -le "1.82.0"; then
+ sed '/rustflags = \[ "-Zdefault-visibility=hidden" \]/d' -i build/config/gcc/BUILD.gn ||
+ die "Failed to remove default visibility nightly option"
fi
default
@@ -427,9 +439,24 @@ src_prepare() {
rm third_party/node/linux/node-linux-x64/bin/node || die
ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
+ # if this is riscv apply wasm-node fix to get it to compile clean
+ if use riscv ; then
+ pushd third_party/node
+ sed -i -e 's/@rollup/rollup/' -e "s/'wasm-node',//" node_modules.py
+ _rollup_ver="$(jq -r .dependencies.\"@rollup/wasm-node\" package.json)"
+ jq ".dependencies.rollup=\"$_rollup_ver\"" package.json > package.json.new
+ mv package.json{.new,}
+ popd
+ third_party/node/update_npm_deps || die
+ rm third_party/devtools-frontend/src/third_party/esbuild/esbuild || die
+ cp -a ${FILESDIR}/esbuild third_party/devtools-frontend/src/third_party/esbuild/esbuild
+ fi
+
# adjust python interpreter version
sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
+ # remove_bundled_libraries.py walks the source tree and looks for paths containing the substring 'third_party'
+ # whitelist matches use the right-most matching path component, so we need to whitelist from that point down.
local keeplibs=(
base/third_party/cityhash
base/third_party/double_conversion
@@ -441,7 +468,6 @@ src_prepare() {
buildtools/third_party/libc++
buildtools/third_party/libc++abi
chrome/third_party/mozilla_security_manager
- courgette/third_party
net/third_party/mozilla_security_manager
net/third_party/nss
net/third_party/quic
@@ -504,14 +530,15 @@ src_prepare() {
third_party/devtools-frontend/src/front_end/third_party/diff
third_party/devtools-frontend/src/front_end/third_party/i18n
third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
+ third_party/devtools-frontend/src/front_end/third_party/json5
third_party/devtools-frontend/src/front_end/third_party/lighthouse
third_party/devtools-frontend/src/front_end/third_party/lit
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
third_party/devtools-frontend/src/front_end/third_party/marked
third_party/devtools-frontend/src/front_end/third_party/puppeteer
third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/third_party/mitt
third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/third_party/parsel-js
third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/third_party/rxjs
+ third_party/devtools-frontend/src/front_end/third_party/third-party-web
third_party/devtools-frontend/src/front_end/third_party/vscode.web-custom-data
third_party/devtools-frontend/src/front_end/third_party/wasmparser
third_party/devtools-frontend/src/front_end/third_party/web-vitals
@@ -521,6 +548,7 @@ src_prepare() {
third_party/eigen3
third_party/emoji-segmenter
third_party/farmhash
+ third_party/fast_float
third_party/fdlibm
third_party/ffmpeg
third_party/fft2d
@@ -537,6 +565,17 @@ src_prepare() {
third_party/highway
third_party/hunspell
third_party/iccjpeg
+ third_party/ink_stroke_modeler/src/ink_stroke_modeler
+ third_party/ink_stroke_modeler/src/ink_stroke_modeler/internal
+ third_party/ink/src/ink/brush
+ third_party/ink/src/ink/color
+ third_party/ink/src/ink/geometry
+ third_party/ink/src/ink/rendering
+ third_party/ink/src/ink/rendering/skia/common_internal
+ third_party/ink/src/ink/rendering/skia/native
+ third_party/ink/src/ink/rendering/skia/native/internal
+ third_party/ink/src/ink/strokes
+ third_party/ink/src/ink/types
third_party/inspector_protocol
third_party/ipcz
third_party/jinja2
@@ -553,6 +592,7 @@ src_prepare() {
third_party/libaom/source/libaom/third_party/x86inc
third_party/libavif
third_party/libc++
+ third_party/libdrm
third_party/libevent
third_party/libgav1
third_party/libjingle
@@ -560,6 +600,9 @@ src_prepare() {
third_party/libsecret
third_party/libsrtp
third_party/libsync
+ third_party/libtess2/libtess2
+ third_party/libtess2/src/Include
+ third_party/libtess2/src/Source
third_party/liburlpattern
third_party/libva_protected_content
third_party/libvpx
@@ -571,6 +614,8 @@ src_prepare() {
third_party/libyuv
third_party/libzip
third_party/lit
+ third_party/llvm-libc
+ third_party/llvm-libc/src/shared/
third_party/lottie
third_party/lss
third_party/lzma_sdk
@@ -647,8 +692,10 @@ src_prepare() {
third_party/tflite/src/third_party/eigen3
third_party/tflite/src/third_party/fft2d
third_party/tflite/src/third_party/xla/third_party/tsl
- third_party/tflite/src/third_party/xla/xla/tsl/util
third_party/tflite/src/third_party/xla/xla/tsl/framework
+ third_party/tflite/src/third_party/xla/xla/tsl/lib/random
+ third_party/tflite/src/third_party/xla/xla/tsl/protobuf
+ third_party/tflite/src/third_party/xla/xla/tsl/util
third_party/ukey2
third_party/unrar
third_party/utf
@@ -686,6 +733,18 @@ src_prepare() {
third_party/xdg-utils
)
+ if use test; then
+ # tar tvf /var/cache/distfiles/${P}-testdata.tar.xz | grep '^d' | grep 'third_party' | awk '{print $NF}'
+ keeplibs+=(
+ third_party/breakpad/breakpad/src/processor
+ third_party/google_benchmark/src/include/benchmark
+ third_party/google_benchmark/src/src
+ third_party/perfetto/protos/third_party/pprof
+ third_party/test_fonts
+ third_party/test_fonts/fontconfig
+ )
+ fi
+
# USE=system-*
if ! use system-harfbuzz; then
keeplibs+=( third_party/harfbuzz-ng )
@@ -703,10 +762,6 @@ src_prepare() {
keeplibs+=( third_party/zstd )
fi
- if ! use system-toolchain || [[ ${CHROMIUM_FORCE_GOOGLE_TOOLCHAIN} == yes ]]; then
- keeplibs+=( third_party/llvm )
- fi
-
# Arch-specific
if use arm64 || use ppc64 ; then
keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
@@ -734,10 +789,38 @@ src_prepare() {
popd >/dev/null || die
fi
- einfo "Unbundling third-party libraries ..."
+ # Sanity check keeplibs, on major version bumps it is often necessary to update this list
+ # and this enables us to hit them all at once.
+ # There are some entries that need to be whitelisted (TODO: Why? The file is understandable, the rest seem odd)
+ whitelist_libs=(
+ net/third_party/quic
+ third_party/devtools-frontend/src/front_end/third_party/additional_readme_paths.json
+ third_party/libjingle
+ third_party/mesa
+ third_party/skia/third_party/vulkan
+ third_party/vulkan
+ )
+ local not_found_libs=()
+ for lib in "${keeplibs[@]}"; do
+ if [[ ! -d "${lib}" ]] && ! has "${lib}" "${whitelist_libs[@]}"; then
+ not_found_libs+=( "${lib}" )
+ fi
+ done
+
+ if [[ ${#not_found_libs[@]} -gt 0 ]]; then
+ eerror "The following \`keeplibs\` directories were not found in the source tree:"
+ for lib in "${not_found_libs[@]}"; do
+ eerror " ${lib}"
+ done
+ die "Please update the ebuild."
+ fi
+
# Remove most bundled libraries. Some are still needed.
+ einfo "Unbundling third-party libraries ..."
build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
+ # TODO: From 127 chromium includes a bunch of binaries? Unbundle them; they're not needed.
+
# bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries
mkdir -p buildtools/third_party/eu-strip/bin || die
ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die
@@ -750,65 +833,63 @@ chromium_configure() {
local myconf_gn=""
# We already forced the "correct" clang via pkg_setup
- if use system-toolchain; then
- if tc-is-cross-compiler; then
- CC="${CC} -target ${CHOST} --sysroot ${ESYSROOT}"
- CXX="${CXX} -target ${CHOST} --sysroot ${ESYSROOT}"
- BUILD_AR=${AR}
- BUILD_CC=${CC}
- BUILD_CXX=${CXX}
- BUILD_NM=${NM}
- fi
- strip-unsupported-flags
+ if tc-is-cross-compiler; then
+ CC="${CC} -target ${CHOST} --sysroot ${ESYSROOT}"
+ CXX="${CXX} -target ${CHOST} --sysroot ${ESYSROOT}"
+ BUILD_AR=${AR}
+ BUILD_CC=${CC}
+ BUILD_CXX=${CXX}
+ BUILD_NM=${NM}
+ fi
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- # https://bugs.gentoo.org/918897#c32
- append-ldflags -Wl,--undefined-version
- myconf_gn+=" use_lld=true"
+ strip-unsupported-flags
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
+ myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
+ # https://bugs.gentoo.org/918897#c32
+ append-ldflags -Wl,--undefined-version
+ myconf_gn+=" use_lld=true"
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
+ # Make sure the build system will use the right tools, bug #340795.
+ tc-export AR CC CXX NM
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" pkg_config=\"$(tc-getPKG_CONFIG)\""
- myconf_gn+=" host_pkg_config=\"$(tc-getBUILD_PKG_CONFIG)\""
-
- # setup cups-config, build system only uses --libs option
- if use cups; then
- mkdir "${T}/cups-config" || die
- cp "${ESYSROOT}/usr/bin/${CHOST}-cups-config" "${T}/cups-config/cups-config" || die
- export PATH="${PATH}:${T}/cups-config"
- fi
+ myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
- # Don't inherit PKG_CONFIG_PATH from environment
- local -x PKG_CONFIG_PATH=
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
+ if tc-is-cross-compiler; then
+ tc-export BUILD_{AR,CC,CXX,NM}
+ myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
+ myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
+ myconf_gn+=" pkg_config=\"$(tc-getPKG_CONFIG)\""
+ myconf_gn+=" host_pkg_config=\"$(tc-getBUILD_PKG_CONFIG)\""
+
+ # setup cups-config, build system only uses --libs option
+ if use cups; then
+ mkdir "${T}/cups-config" || die
+ cp "${ESYSROOT}/usr/bin/${CHOST}-cups-config" "${T}/cups-config/cups-config" || die
+ export PATH="${PATH}:${T}/cups-config"
fi
- # bindgen settings
- # From 127, to make bindgen work, we need to provide a location for libclang.
- # We patch this in for gentoo - see chromium-*-bindgen-custom-toolchain.patch
- # rust_bindgen_root = directory with `bin/bindgen` beneath it.
- myconf_gn+=" rust_bindgen_root=\"${EPREFIX}/usr/\""
-
- myconf_gn+=" bindgen_libclang_path=\"$(get_llvm_prefix)/$(get_libdir)\""
- # We don't need to set 'clang_base_bath' for anything in our build
- # and it defaults to the google toolchain location. Instead provide a location
- # to where system clang lives sot that bindgen can find system headers (e.g. stddef.h)
- myconf_gn+=" clang_base_path=\"${EPREFIX}/usr/lib/clang/${LLVM_SLOT}/\""
-
- # We need to provide this to GN in both the path to rust _and_ the version
- myconf_gn+=" rust_sysroot_absolute=\"$(get_rust_prefix)\""
- myconf_gn+=" rustc_version=\"${RUST_SLOT}\""
+ # Don't inherit PKG_CONFIG_PATH from environment
+ local -x PKG_CONFIG_PATH=
+ else
+ myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
fi
+ # bindgen settings
+ # From 127, to make bindgen work, we need to provide a location for libclang.
+ # We patch this in for gentoo - see chromium-*-bindgen-custom-toolchain.patch
+ # rust_bindgen_root = directory with `bin/bindgen` beneath it.
+ myconf_gn+=" rust_bindgen_root=\"${EPREFIX}/usr/\""
+
+ myconf_gn+=" bindgen_libclang_path=\"$(get_llvm_prefix)/$(get_libdir)\""
+ # We don't need to set 'clang_base_bath' for anything in our build
+ # and it defaults to the google toolchain location. Instead provide a location
+ # to where system clang lives sot that bindgen can find system headers (e.g. stddef.h)
+ myconf_gn+=" clang_base_path=\"${EPREFIX}/usr/lib/clang/${LLVM_SLOT}/\""
+
+ myconf_gn+=" rust_sysroot_absolute=\"$(get_rust_prefix)\""
+ myconf_gn+=" rustc_version=\"${RUST_SLOT}\""
+
# GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
myconf_gn+=" is_debug=false"
@@ -837,7 +918,6 @@ chromium_configure() {
freetype
# Need harfbuzz_from_pkgconfig target
#harfbuzz-ng
- libdrm
libjpeg
libwebp
libxml
@@ -857,6 +937,13 @@ chromium_configure() {
build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
+ # TODO 131: The above call clobbers `enable_freetype = true` in the freetype gni file
+ # drop the last line, then append the freetype line and a new curly brace to end the block
+ local freetype_gni="build/config/freetype/freetype.gni"
+ sed -i -e '$d' ${freetype_gni} || die
+ echo " enable_freetype = true" >> ${freetype_gni} || die
+ echo "}" >> ${freetype_gni} || die
+
# See dependency logic in third_party/BUILD.gn
myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
@@ -1000,6 +1087,11 @@ chromium_configure() {
# Don't need nocompile checks and GN crashes with our config
myconf_gn+=" enable_nocompile_tests=false"
+ # 131 began laying the groundwork for replacing freetype with
+ # "Rust-based Fontations set of libraries plus Skia path rendering"
+ # We now need to opt-in
+ myconf_gn+=" enable_freetype=true"
+
# Enable ozone wayland and/or headless support
myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
myconf_gn+=" ozone_platform_headless=true"
@@ -1012,7 +1104,6 @@ chromium_configure() {
myconf_gn+=" enable_print_preview=false"
myconf_gn+=" enable_remoting=false"
else
- myconf_gn+=" use_system_libdrm=true"
myconf_gn+=" use_system_minigbm=true"
myconf_gn+=" use_xkbcommon=true"
if use qt5 || use qt6; then
@@ -1045,20 +1136,6 @@ chromium_configure() {
use wayland && myconf_gn+=" use_system_libffi=true"
fi
- # Results in undefined references in chrome linking, may require CFI to work
- if use arm64; then
- myconf_gn+=" arm_control_flow_integrity=\"none\""
- fi
-
- # 936673: Updater (which we don't use) depends on libsystemd
- # This _should_ always be disabled if we're not building a
- # "Chrome" branded browser, but obviously this is not always sufficient.
- myconf_gn+=" enable_updater=false"
-
- local use_lto="false"
- if tc-is-lto; then
- use_lto="true"
- fi
myconf_gn+=" use_thin_lto=${use_lto}"
myconf_gn+=" thin_lto_enable_optimizations=${use_lto}"
@@ -1068,10 +1145,11 @@ chromium_configure() {
# Allow building against system libraries in official builds
sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
tools/generate_shim_headers/generate_shim_headers.py || die
- # Req's LTO; TODO: not compatible with -fno-split-lto-unit
- # split-lto-unit can be enabled with RUSTC_BOOTSTRAP=1 (and an updated compiler patch),
- # however I still got weird linking errors with CFI _and_ the split unit LTO OOMed after using 100G.
- myconf_gn+=" is_cfi=false"
+ if use ppc64 || use riscv; then
+ myconf_gn+=" is_cfi=false" # requires llvm-runtimes/compiler-rt-sanitizers[cfi]
+ else
+ myconf_gn+=" is_cfi=${use_lto}"
+ fi
# Don't add symbols to build
myconf_gn+=" symbol_level=0"
fi
@@ -1102,6 +1180,7 @@ src_configure() {
}
chromium_compile() {
+
# Final link uses lots of file descriptors.
ulimit -n 2048
@@ -1127,25 +1206,10 @@ chromium_compile() {
# Even though ninja autodetects number of CPUs, we respect
# user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver chrome_sandbox
+ eninja -C out/Release chrome chromedriver chrome_sandbox $(use test && echo "base_unittests")
pax-mark m out/Release/chrome
- if ! use system-toolchain; then
- QA_FLAGS_IGNORED="
- usr/lib64/chromium-browser/chrome
- usr/lib64/chromium-browser/chrome-sandbox
- usr/lib64/chromium-browser/chromedriver
- usr/lib64/chromium-browser/chrome_crashpad_handler
- usr/lib64/chromium-browser/libEGL.so
- usr/lib64/chromium-browser/libGLESv2.so
- usr/lib64/chromium-browser/libVkICD_mock_icd.so
- usr/lib64/chromium-browser/libVkLayer_khronos_validation.so
- usr/lib64/chromium-browser/libqt5_shim.so
- usr/lib64/chromium-browser/libvk_swiftshader.so
- usr/lib64/chromium-browser/libvulkan.so.1
- "
- fi
}
# This function is called from virtx, and must always return so that Xvfb
@@ -1224,6 +1288,58 @@ src_compile() {
out/Release/vk_swiftshader_icd.json || die
}
+src_test() {
+ # Initial list of tests to skip pulled from Alpine. Thanks Lauren!
+ # https://issues.chromium.org/issues/40939315
+ local skip_tests=(
+ 'MessagePumpLibeventTest.NestedNotification*'
+ ClampTest.Death
+ OptionalTest.DereferencingNoValueCrashes
+ PlatformThreadTest.SetCurrentThreadTypeTest
+ RawPtrTest.TrivialRelocability
+ SafeNumerics.IntMaxOperations
+ StackTraceTest.TraceStackFramePointersFromBuffer
+ StringPieceTest.InvalidLengthDeath
+ StringPieceTest.OutOfBoundsDeath
+ ThreadPoolEnvironmentConfig.CanUseBackgroundPriorityForWorker
+ ValuesUtilTest.FilePath
+ # Gentoo-specific
+ AlternateTestParams/PartitionAllocDeathTest.RepeatedAllocReturnNullDirect/0
+ AlternateTestParams/PartitionAllocDeathTest.RepeatedAllocReturnNullDirect/1
+ AlternateTestParams/PartitionAllocDeathTest.RepeatedAllocReturnNullDirect/2
+ AlternateTestParams/PartitionAllocDeathTest.RepeatedAllocReturnNullDirect/3
+ AlternateTestParams/PartitionAllocDeathTest.RepeatedReallocReturnNullDirect/0
+ AlternateTestParams/PartitionAllocDeathTest.RepeatedReallocReturnNullDirect/1
+ AlternateTestParams/PartitionAllocDeathTest.RepeatedReallocReturnNullDirect/2
+ AlternateTestParams/PartitionAllocDeathTest.RepeatedReallocReturnNullDirect/3
+ CharacterEncodingTest.GetCanonicalEncodingNameByAliasName
+ CheckExitCodeAfterSignalHandlerDeathTest.CheckSIGFPE
+ CheckExitCodeAfterSignalHandlerDeathTest.CheckSIGILL
+ CheckExitCodeAfterSignalHandlerDeathTest.CheckSIGSEGV
+ CheckExitCodeAfterSignalHandlerDeathTest.CheckSIGSEGVNonCanonicalAddress
+ FilePathTest.FromUTF8Unsafe_And_AsUTF8Unsafe
+ FileTest.GetInfoForCreationTime
+ ICUStringConversionsTest.ConvertToUtf8AndNormalize
+ NumberFormattingTest.FormatPercent
+ PathServiceTest.CheckedGetFailure
+ PlatformThreadTest.CanChangeThreadType
+ RustLogIntegrationTest.CheckAllSeverity
+ StackCanary.ChangingStackCanaryCrashesOnReturn
+ StackTraceDeathTest.StackDumpSignalHandlerIsMallocFree
+ SysStrings.SysNativeMBAndWide
+ SysStrings.SysNativeMBToWide
+ SysStrings.SysWideToNativeMB
+ TestLauncherTools.TruncateSnippetFocusedMatchesFatalMessagesTest
+ ToolsSanityTest.BadVirtualCallNull
+ ToolsSanityTest.BadVirtualCallWrongType
+ )
+ local test_filter="-$(IFS=:; printf '%s' "${skip_tests[*]}")"
+ # test-launcher-bot-mode enables parallelism and plain output
+ ./out/Release/base_unittests --test-launcher-bot-mode \
+ --test-launcher-jobs="$(makeopts_jobs)" \
+ --gtest_filter="${test_filter}" || die "Tests failed!"
+}
+
src_install() {
local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
exeinto "${CHROMIUM_HOME}"
diff --git a/www-client/chromium/files/0001-Enable-relocate-1-for-ff_h264_weight_funcs_8_rvv.patch b/www-client/chromium/files/0001-Enable-relocate-1-for-ff_h264_weight_funcs_8_rvv.patch
new file mode 100644
index 0000000..790206f
--- /dev/null
+++ b/www-client/chromium/files/0001-Enable-relocate-1-for-ff_h264_weight_funcs_8_rvv.patch
@@ -0,0 +1,26 @@
+From 7954389e39292980323a986ed21eb47325bbddf8 Mon Sep 17 00:00:00 2001
+Message-ID: <7954389e39292980323a986ed21eb47325bbddf8.1731734570.git.rsworktech@outlook.com>
+From: Levi Zim <rsworktech@outlook.com>
+Date: Sat, 16 Nov 2024 13:22:28 +0800
+Subject: [PATCH] Enable relocate=1 for ff_h264_weight_funcs_8_rvv
+
+---
+ libavcodec/riscv/h264dsp_rvv.S | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/third_party/ffmpeg/libavcodec/riscv/h264dsp_rvv.S b/third_party/ffmpeg/libavcodec/riscv/h264dsp_rvv.S
+index 079896b17b..05d077f44e 100644
+--- a/third_party/ffmpeg/libavcodec/riscv/h264dsp_rvv.S
++++ b/third_party/ffmpeg/libavcodec/riscv/h264dsp_rvv.S
+@@ -160,7 +160,7 @@ h264_weight 8, 16
+
+ .global ff_h264_weight_funcs_8_rvv
+ .hidden ff_h264_weight_funcs_8_rvv
+-const ff_h264_weight_funcs_8_rvv
++const ff_h264_weight_funcs_8_rvv, relocate=1
+ .irp w, 16, 8, 4, 2
+ #if __riscv_xlen == 32
+ .word ff_h264_weight_pixels\w\()_8_rvv
+--
+2.47.0
+
diff --git a/www-client/chromium/files/chrome-runtime_api_delegate-add-riscv64-define.patch b/www-client/chromium/files/0001-chrome-runtime_api_delegate-add-riscv64-define.patch
index 930574c..20122ea 100644
--- a/www-client/chromium/files/chrome-runtime_api_delegate-add-riscv64-define.patch
+++ b/www-client/chromium/files/0001-chrome-runtime_api_delegate-add-riscv64-define.patch
@@ -31,3 +31,4 @@ index 0c2f88ce0d92c..113a8e0010075 100644
return false;
--
2.39.2
+
diff --git a/www-client/chromium/files/extensions-common-api-runtime.json-riscv64-support.patch b/www-client/chromium/files/0001-extensions-common-api-runtime.json-riscv64-support.patch
index 5c9fec6..a8633cf 100644
--- a/www-client/chromium/files/extensions-common-api-runtime.json-riscv64-support.patch
+++ b/www-client/chromium/files/0001-extensions-common-api-runtime.json-riscv64-support.patch
@@ -34,3 +34,4 @@ index 65a024c03011e..9965a83545807 100644
--
2.43.0
+
diff --git a/www-client/chromium/files/Debian-fix-rust-linking.patch b/www-client/chromium/files/Debian-fix-rust-linking.patch
index 1fc0efb..bb8572d 100644
--- a/www-client/chromium/files/Debian-fix-rust-linking.patch
+++ b/www-client/chromium/files/Debian-fix-rust-linking.patch
@@ -45,4 +45,3 @@
# Generate a map file to be used for binary size analysis.
# Map file adds ~10% to the link time on a z620.
# With target_os="android", libchrome.so.map.gz is ~20MB.
-
diff --git a/www-client/chromium/files/chromium-126-oauth2-client-switches.patch b/www-client/chromium/files/chromium-126-oauth2-client-switches.patch
deleted file mode 100644
index b7ddf79..0000000
--- a/www-client/chromium/files/chromium-126-oauth2-client-switches.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From b6cda4bc2283a02a5b5209c0f4282a8365f6f33e Mon Sep 17 00:00:00 2001
-From: Matt Jolly <Matt.Jolly@footclan.ninja>
-Date: Tue, 21 May 2024 10:04:24 +1000
-Subject: [PATCH] www-client/chromium: work around dead oauth2 credentials -
- 126 update
-
-126 changed the function proto; patch rebased.
-
-Google doesn't let us bake in OAuth2 credentials, and for some time,
-Google sign-in has been broken. Arch dealt with this in March, and so
-did we to some degree, but in the last few months, our sign-in
-credentials have been broken. It appears that we actually did remove API
-credentials in March around Chrome 89, but they got added back, perhaps
-when rotating newer versions to replace older versions. Work around this
-by following Arch's lead: we remove the predefined credentials, as
-before, but also we patch Chromium so that people can use their own
-easily, using Arch's patch for that.
-
-For more info, see:
-
-https://archlinux.org/news/chromium-losing-sync-support-in-early-march/
-https://bodhi.fedoraproject.org/updates/FEDORA-2021-48866282e5
-https://hackaday.com/2021/01/26/whats-the-deal-with-chromium-on-linux-google-at-odds-with-package-maintainers/
-
-Bug: https://bugs.gentoo.org/791871
-Signed-off-by: Matt Jolly <kangie@gentoo.org>
---- a/google_apis/google_api_keys-inc.cc
-+++ b/google_apis/google_api_keys-inc.cc
-@@ -193,11 +193,11 @@ class APIKeyCache {
- std::string default_client_id = CalculateKeyValue(
- GOOGLE_DEFAULT_CLIENT_ID,
- STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), std::string(),
-- nullptr, std::string(), environment.get(), command_line, gaia_config);
-+ ::switches::kOAuth2ClientID, std::string(), environment.get(), command_line, gaia_config);
- std::string default_client_secret = CalculateKeyValue(
- GOOGLE_DEFAULT_CLIENT_SECRET,
- STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), std::string(),
-- nullptr, std::string(), environment.get(), command_line, gaia_config);
-+ ::switches::kOAuth2ClientSecret, std::string(), environment.get(), command_line, gaia_config);
-
- // We currently only allow overriding the baked-in values for the
- // default OAuth2 client ID and secret using a command-line
---
-2.45.1
-
diff --git a/www-client/chromium/files/chromium-127-browser-ui-deps.patch b/www-client/chromium/files/chromium-127-browser-ui-deps.patch
deleted file mode 100644
index e262e31..0000000
--- a/www-client/chromium/files/chromium-127-browser-ui-deps.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-https://gitlab.exherbo.org/exherbo/desktop/-/raw/master/packages/net-www/chromium-beta/files/chromium-browser-ui-missing-deps.patch
-https://issues.chromium.org/u/2/issues/351157339
-Source: Tom Briden <tom@decompile.me.uk>
-Upstream: No
-
---- a/chrome/browser/ui/views/side_panel/BUILD.gn
-+++ b/chrome/browser/ui/views/side_panel/BUILD.gn
-@@ -142,18 +142,30 @@ static_library("side_panel") {
- }
- public_deps = [
- "//base",
-+ "//chrome/browser/cart:mojo_bindings",
- "//chrome/browser/companion/core/mojom:mojo_bindings",
- "//chrome/browser/profiles:profile",
- "//chrome/browser/ui/actions:actions_headers",
- "//chrome/browser/ui/color:color_headers",
-+ "//chrome/browser/ui/webui/side_panel/customize_chrome:mojo_bindings",
-+ "//chrome/browser/ui/webui/side_panel/bookmarks:mojo_bindings",
- "//chrome/browser/ui/webui/side_panel/performance_controls:mojo_bindings",
-+ "//chrome/browser/ui/webui/side_panel/reading_list:mojo_bindings",
-+ "//chrome/browser/ui:webui_name_variants",
- "//chrome/common",
- "//chrome/common/accessibility:mojo_bindings",
-+ "//chrome/common/companion:mojo_bindings",
-+ "//components/enterprise/buildflags:buildflags",
-+ "//components/enterprise/common/proto:connectors_proto",
- "//components/lens",
- "//components/lens:buildflags",
- "//components/omnibox/browser",
-+ "//components/page_image_service/mojom:mojo_bindings",
-+ "//components/paint_preview/buildflags:buildflags",
- "//components/prefs",
- "//components/search_engines",
-+ "//components/segmentation_platform/public/proto:proto",
-+ "//components/webapps/common:mojo_bindings",
- "//content/public/browser",
- "//extensions/browser",
- "//extensions/common",
-@@ -165,6 +177,8 @@ static_library("side_panel") {
- "//ui/gfx/geometry",
- "//ui/views",
- "//ui/views/controls/webview",
-+ "//ui/webui/resources/cr_components/commerce:mojo_bindings",
-+ "//ui/webui/resources/cr_components/help_bubble:mojo_bindings",
- "//url",
- ]
- deps = [
---- a/chrome/browser/ui/webui/top_chrome/BUILD.gn
-+++ b/chrome/browser/ui/webui/top_chrome/BUILD.gn
-@@ -19,6 +19,7 @@ source_set("top_chrome") {
- deps = [
- "//base",
- "//chrome/browser/profiles:profile",
-+ "//chrome/browser/ui:webui_name_variants",
- "//components/site_engagement/content:content",
- "//content/public/browser",
- "//ui/webui",
diff --git a/www-client/chromium/files/chromium-127-updater-systemd.patch b/www-client/chromium/files/chromium-127-updater-systemd.patch
deleted file mode 100644
index 57e9029..0000000
--- a/www-client/chromium/files/chromium-127-updater-systemd.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-https://github.com/chromium/chromium/commit/570332aad61afab5d9d88a8438bae53ea28a298a
-From: Noah Rose Ledesma <noahrose@google.com>
-Date: Wed, 31 Jul 2024 17:59:12 +0000
-Subject: [PATCH] Use libs instead of pkg_config for linux deps
-
-pkg_config can cause builds to fail if the requested packages are not
-present, regardless of if the lib is depended upon by the target being
-built.
-
-This issue can be avoided by setting 'libs' instead. I'm not sure why we
-didn't do so in the first place.
-
-Bug: 355967882
-Change-Id: Ie5dc4c03b08d7c1e26458ea143f6dc812b670544
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5749680
-Reviewed-by: Sorin Jianu <sorin@chromium.org>
-Commit-Queue: Noah Rose Ledesma <noahrose@google.com>
-Cr-Commit-Position: refs/heads/main@{#1335558}
---- a/chrome/updater/BUILD.gn
-+++ b/chrome/updater/BUILD.gn
-@@ -367,9 +367,10 @@ if (is_win || is_mac || is_linux) {
- "update_service_internal_impl_qualifying_linux.cc",
- "update_usage_stats_task_linux.cc",
- ]
-- public_configs = [
-- "linux:libcurl",
-- "linux:libsystemd",
-+
-+ libs = [
-+ "curl",
-+ "systemd",
- ]
- }
- }
-@@ -1040,7 +1041,7 @@ if (is_win || is_mac || is_linux) {
-
- data += [ "//chrome/test/data/updater/updater_qualification_app.crx" ]
- data_deps += [ "//chrome/updater/linux:updater_test" ]
-- public_configs = [ "linux:libsystemd" ]
-+ libs = [ "systemd" ]
- }
-
- if (is_posix) {
---- a/chrome/updater/linux/BUILD.gn
-+++ b/chrome/updater/linux/BUILD.gn
-@@ -2,7 +2,6 @@
- # Use of this source code is governed by a BSD-style license that can be
- # found in the LICENSE file.
-
--import("//build/config/linux/pkg_config.gni")
- import("//chrome/updater/zip.gni")
-
- # This target builds the updater executable and unittests.
-@@ -13,18 +12,10 @@ group("linux") {
- ]
- }
-
--pkg_config("libcurl") {
-- packages = [ "libcurl" ]
--}
--
--pkg_config("libsystemd") {
-- packages = [ "libsystemd" ]
--}
--
- source_set("updater_executable") {
- sources = [ "main.cc" ]
- deps = [ "//chrome/updater:base" ]
-- public_configs = [ ":libsystemd" ]
-+ libs = [ "systemd" ]
- }
-
- executable("updater") {
diff --git a/www-client/chromium/files/chromium-131-oauth2-client-switches.patch b/www-client/chromium/files/chromium-131-oauth2-client-switches.patch
new file mode 100644
index 0000000..350775c
--- /dev/null
+++ b/www-client/chromium/files/chromium-131-oauth2-client-switches.patch
@@ -0,0 +1,39 @@
+From 54951636d20fa798e148228118863b89a4580479 Mon Sep 17 00:00:00 2001
+From: Matt Jolly <kangie@gentoo.org>
+Date: Sat, 12 Oct 2024 12:40:16 +1000
+Subject: [PATCH] www-client/chromium: work around dead oauth2 credentials -
+ 131 update
+
+131 moved a ton of things around; this is now in api_key_cache.cc
+
+Google doesn't let us bake in OAuth2 credentials, and for some time,
+Google sign-in has been broken. Arch dealt with this in March, and so
+did we to some degree, but in the last few months, our sign-in
+credentials have been broken. It appears that we actually did remove API
+credentials in March around Chrome 89, but they got added back, perhaps
+when rotating newer versions to replace older versions. Work around this
+by following Arch's lead: we remove the predefined credentials, as
+before, but also we patch Chromium so that people can use their own
+easily, using Arch's patch for that.
+--- a/google_apis/api_key_cache.cc
++++ b/google_apis/api_key_cache.cc
+@@ -214,14 +214,14 @@ ApiKeyCache::ApiKeyCache(const DefaultApiKeys& default_api_keys) {
+
+ std::string default_client_id = CalculateKeyValue(
+ default_api_keys.google_default_client_id,
+- STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), std::string(), nullptr,
++ STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), std::string(), ::switches::kOAuth2ClientID,
+ std::string(), environment.get(), command_line, gaia_config,
+ default_api_keys.allow_override_via_environment,
+ default_api_keys.allow_unset_values);
+ std::string default_client_secret = CalculateKeyValue(
+ default_api_keys.google_default_client_secret,
+ STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), std::string(),
+- nullptr, std::string(), environment.get(), command_line, gaia_config,
++ ::switches::kOAuth2ClientSecret, std::string(), environment.get(), command_line, gaia_config,
+ default_api_keys.allow_override_via_environment,
+ default_api_keys.allow_unset_values);
+
+--
+2.46.2
+
diff --git a/www-client/chromium/files/chromium-131-unbundle-icu-target.patch b/www-client/chromium/files/chromium-131-unbundle-icu-target.patch
new file mode 100644
index 0000000..618750f
--- /dev/null
+++ b/www-client/chromium/files/chromium-131-unbundle-icu-target.patch
@@ -0,0 +1,21 @@
+From a665875b4013eed997bd042326a038e24f3296e7 Mon Sep 17 00:00:00 2001
+From: Matt Jolly <kangie@gentoo.org>
+Date: Thu, 10 Oct 2024 14:36:51 +1000
+Subject: [PATCH] unbundle: add missing icu target
+
+--- a/build/linux/unbundle/icu.gn
++++ b/build/linux/unbundle/icu.gn
+@@ -65,6 +65,10 @@ group("icuuc_public") {
+ public_deps = [ ":icuuc" ]
+ }
+
++group("icui18n_hidden_visibility") {
++ public_deps = [ ":icuuc" ]
++}
++
+ shim_headers("icui18n_shim") {
+ root_path = "source/i18n"
+ headers = [
+--
+2.46.2
+
diff --git a/www-client/chromium/files/chromium-127-bindgen-custom-toolchain.patch b/www-client/chromium/files/chromium-132-bindgen-custom-toolchain.patch
index e981df8..f0cf20a 100644
--- a/www-client/chromium/files/chromium-127-bindgen-custom-toolchain.patch
+++ b/www-client/chromium/files/chromium-132-bindgen-custom-toolchain.patch
@@ -1,6 +1,6 @@
-From 6df5a080f58ddb6a49a9d33e4a3619a34fffa78c Mon Sep 17 00:00:00 2001
-From: Matt Jolly <Matt.Jolly@footclan.ninja>
-Date: Fri, 5 Jul 2024 20:49:01 +1000
+From 84b3b8335f7efbb8ed5ab9c9a260ea4f5d77192b Mon Sep 17 00:00:00 2001
+From: Matt Jolly <kangie@gentoo.org>
+Date: Mon, 11 Nov 2024 20:52:48 +1000
Subject: [PATCH] Make bindgen wrapper work with unbundled toolchain
The `run_bindgen.py` wrapper takes a --libclang-path option
@@ -11,13 +11,6 @@ bindgen (in our rust toolchain), but distributions may want to
override this and use a system path.
Additionally enable distros to feed in appropriate library paths.
----
- build/config/rust.gni | 11 +++++++++++
- build/rust/rust_bindgen.gni | 28 ++++++++++++++++++----------
- 2 files changed, 29 insertions(+), 10 deletions(-)
-
-diff --git a/build/config/rust.gni b/build/config/rust.gni
-index 97e788a227..78b9daa7e8 100644
--- a/build/config/rust.gni
+++ b/build/config/rust.gni
@@ -60,6 +60,17 @@ declare_args() {
@@ -38,11 +31,9 @@ index 97e788a227..78b9daa7e8 100644
# If you're using a Rust toolchain as specified by rust_sysroot_absolute,
# set this to the output of `rustc -V`. Changing this string will cause all
# Rust targets to be rebuilt, which allows you to update your toolchain and
-diff --git a/build/rust/rust_bindgen.gni b/build/rust/rust_bindgen.gni
-index bf110ca93c..d7eb04eb00 100644
--- a/build/rust/rust_bindgen.gni
+++ b/build/rust/rust_bindgen.gni
-@@ -16,13 +16,13 @@ if (host_os == "win") {
+@@ -17,13 +17,13 @@ if (host_os == "win") {
_bindgen_path = "${_bindgen_path}.exe"
}
@@ -62,35 +53,38 @@ index bf110ca93c..d7eb04eb00 100644
}
# Template to build Rust/C bindings with bindgen.
-@@ -100,7 +100,7 @@ template("rust_bindgen") {
+--- a/build/rust/rust_bindgen_generator.gni
++++ b/build/rust/rust_bindgen_generator.gni
+@@ -151,7 +151,7 @@ template("rust_bindgen_generator") {
"--output",
- rebase_path(out_gen_rs, root_build_dir),
+ rebase_path(output_file, root_build_dir),
"--libclang-path",
- rebase_path(_libclang_path, root_build_dir),
+ rebase_path(bindgen_libclang_path, root_build_dir),
]
- if (wrap_static_fns) {
-@@ -117,7 +117,7 @@ template("rust_bindgen") {
+ if (_wrap_static_fns) {
+@@ -172,7 +172,7 @@ template("rust_bindgen_generator") {
# point to.
args += [
"--ld-library-path",
- rebase_path(clang_base_path + "/lib", root_build_dir),
-+ rebase_path(_clang_ld_libpath, root_build_dir),
++ rebase_path(bindgen_libclang_path, root_build_dir),
]
}
-@@ -145,8 +145,7 @@ template("rust_bindgen") {
+@@ -215,9 +215,7 @@ template("rust_bindgen_generator") {
+ # says the wrong thing. We point it to our clang's resource dir which will
# make it behave consistently with our other command line flags and allows
# system headers to be found.
- clang_resource_dir =
+- clang_resource_dir =
- rebase_path(clang_base_path + "/lib/clang/" + clang_version,
- root_build_dir)
-+ rebase_path(_clang_libpath, root_build_dir)
++ clang_resource_dir = rebase_path(clang_base_path + "/include", root_build_dir)
args += [
"-resource-dir",
clang_resource_dir,
-@@ -167,6 +166,15 @@ template("rust_bindgen") {
+@@ -238,6 +236,15 @@ template("rust_bindgen_generator") {
}
}
@@ -107,5 +101,4 @@ index bf110ca93c..d7eb04eb00 100644
# On Windows we fall back to using system headers from a sysroot from
# depot_tools. This is negotiated by python scripts and the result is
--
-2.45.2
-
+2.47.0
diff --git a/www-client/chromium/files/chromium-134-oauth2-client-switches.patch b/www-client/chromium/files/chromium-134-oauth2-client-switches.patch
new file mode 100644
index 0000000..b7137e5
--- /dev/null
+++ b/www-client/chromium/files/chromium-134-oauth2-client-switches.patch
@@ -0,0 +1,35 @@
+From 628c8aad603791ec1276c6a5b8d3704a03840f86 Mon Sep 17 00:00:00 2001
+From: Matt Jolly <kangie@gentoo.org>
+Date: Sat, 18 Jan 2025 11:09:46 +1000
+Subject: [PATCH] www-client/chromium: work around dead oauth2 credentials
+
+Google doesn't let us bake in OAuth2 credentials, and for some time,
+Google sign-in has been broken. Arch dealt with this in March, and so
+did we to some degree, but in the last few months, our sign-in
+credentials have been broken. It appears that we actually did remove API
+credentials in March around Chrome 89, but they got added back, perhaps
+when rotating newer versions to replace older versions. Work around this
+by following Arch's lead: we remove the predefined credentials, as
+before, but also we patch Chromium so that people can use their own
+easily, using Arch's patch for that.
+--- a/google_apis/api_key_cache.cc
++++ b/google_apis/api_key_cache.cc
+@@ -192,13 +192,13 @@ ApiKeyCache::ApiKeyCache(const DefaultApiKeys& default_api_keys) {
+
+ std::string default_client_id = CalculateKeyValue(
+ default_api_keys.google_default_client_id,
+- STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), nullptr, std::string(),
++ STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), ::switches::kOAuth2ClientID, std::string(),
+ environment.get(), command_line, gaia_config,
+ default_api_keys.allow_override_via_environment,
+ default_api_keys.allow_unset_values);
+ std::string default_client_secret = CalculateKeyValue(
+ default_api_keys.google_default_client_secret,
+- STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), nullptr,
++ STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), ::switches::kOAuth2ClientID,
+ std::string(), environment.get(), command_line, gaia_config,
+ default_api_keys.allow_override_via_environment,
+ default_api_keys.allow_unset_values);
+--
+2.48.0
+
diff --git a/www-client/chromium/files/riscv.patch b/www-client/chromium/files/compiler-rt-riscv.patch
index 3bd59e3..3bd59e3 100644
--- a/www-client/chromium/files/riscv.patch
+++ b/www-client/chromium/files/compiler-rt-riscv.patch
diff --git a/www-client/chromium/files/cpuinfo.patch b/www-client/chromium/files/cpuinfo.patch
index 942a658..35a730a 100644
--- a/www-client/chromium/files/cpuinfo.patch
+++ b/www-client/chromium/files/cpuinfo.patch
@@ -1,7 +1,8 @@
-diff -Naur a/third_party/cpuinfo/BUILD.gn b/third_party/cpuinfo/BUILD.gn
---- a/third_party/cpuinfo/BUILD.gn 2024-03-16 09:54:46.809862047 +0000
-+++ b/third_party/cpuinfo/BUILD.gn 2024-03-16 10:00:01.616932065 +0000
-@@ -123,6 +123,12 @@
+Index: chromium-129.0.6668.58/third_party/cpuinfo/BUILD.gn
+===================================================================
+--- chromium-129.0.6668.58.orig/third_party/cpuinfo/BUILD.gn
++++ chromium-129.0.6668.58/third_party/cpuinfo/BUILD.gn
+@@ -105,6 +105,12 @@ source_set("cpu_specific") {
]
}
@@ -14,18 +15,19 @@ diff -Naur a/third_party/cpuinfo/BUILD.gn b/third_party/cpuinfo/BUILD.gn
# Because "init.c" is reused again, but only has sources in the corresponding
# build config.
deps = [ ":x86_cache" ]
-@@ -190,6 +196,14 @@
- ]
+@@ -191,6 +197,14 @@ source_set("cpu_and_os_specific") {
+ }
}
-+ if ((is_linux || is_chromeos) && current_cpu == "riscv64") {
++ if (is_linux && current_cpu == "riscv64") {
+ sources = [
-+ "src/src/riscv/linux/api.h",
+ "src/src/riscv/linux/init.c",
+ "src/src/riscv/linux/riscv-hw.c",
+ "src/src/riscv/linux/riscv-isa.c",
+ ]
+ }
- if (is_android && (current_cpu == "arm" || current_cpu == "arm64")) {
++
+ if (is_android && (current_cpu == "x86" || current_cpu == "x64")) {
sources = [
- "src/src/arm/android/properties.c",
+ "src/src/x86/linux/cpuinfo.c",
+
diff --git a/www-client/chromium/files/esbuild b/www-client/chromium/files/esbuild
new file mode 100755
index 0000000..ccbd8bf
--- /dev/null
+++ b/www-client/chromium/files/esbuild
Binary files differ
diff --git a/www-client/chromium/files/libstdc++-fixup.patch b/www-client/chromium/files/libstdc++-fixup.patch
new file mode 100644
index 0000000..9402ef3
--- /dev/null
+++ b/www-client/chromium/files/libstdc++-fixup.patch
@@ -0,0 +1,219 @@
+Index: chromium-132.0.6834.83/chrome/browser/ui/lens/lens_overlay_request_id_generator.h
+===================================================================
+--- chromium-132.0.6834.83.orig/chrome/browser/ui/lens/lens_overlay_request_id_generator.h
++++ chromium-132.0.6834.83/chrome/browser/ui/lens/lens_overlay_request_id_generator.h
+@@ -5,6 +5,8 @@
+ #ifndef CHROME_BROWSER_UI_LENS_LENS_OVERLAY_REQUEST_ID_GENERATOR_H_
+ #define CHROME_BROWSER_UI_LENS_LENS_OVERLAY_REQUEST_ID_GENERATOR_H_
+
++#include <optional>
++
+ #include "third_party/lens_server_proto/lens_overlay_routing_info.pb.h"
+ #include "third_party/lens_server_proto/lens_overlay_server.pb.h"
+ #include "third_party/lens_server_proto/lens_overlay_service_deps.pb.h"
+Index: chromium-132.0.6834.83/components/sync/service/local_data_description.h
+===================================================================
+--- chromium-132.0.6834.83.orig/components/sync/service/local_data_description.h
++++ chromium-132.0.6834.83/components/sync/service/local_data_description.h
+@@ -6,6 +6,7 @@
+ #define COMPONENTS_SYNC_SERVICE_LOCAL_DATA_DESCRIPTION_H_
+
+ #include <string>
++#include <variant>
+ #include <vector>
+
+ #include "components/sync/base/data_type.h"
+Index: chromium-132.0.6834.83/components/variations/limited_layer_entropy_cost_tracker.h
+===================================================================
+--- chromium-132.0.6834.83.orig/components/variations/limited_layer_entropy_cost_tracker.h
++++ chromium-132.0.6834.83/components/variations/limited_layer_entropy_cost_tracker.h
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_VARIATIONS_LIMITED_LAYER_ENTROPY_COST_TRACKER_H_
+ #define COMPONENTS_VARIATIONS_LIMITED_LAYER_ENTROPY_COST_TRACKER_H_
+
++#include <cstdint>
+ #include <map>
+ #include <set>
+
+Index: chromium-132.0.6834.83/components/viz/service/display/surface_aggregator.h
+===================================================================
+--- chromium-132.0.6834.83.orig/components/viz/service/display/surface_aggregator.h
++++ chromium-132.0.6834.83/components/viz/service/display/surface_aggregator.h
+@@ -132,13 +132,18 @@ class VIZ_SERVICE_EXPORT SurfaceAggregat
+ struct PrewalkResult;
+
+ struct AggregateStatistics {
+- int prewalked_surface_count = 0;
+- int copied_surface_count = 0;
++ AggregateStatistics()
++ : prewalked_surface_count(0),
++ copied_surface_count(0),
++ has_pixel_moving_filter(false),
++ has_unembedded_pass(false) {}
++ int prewalked_surface_count;
++ int copied_surface_count;
+ // True if the current frame contains a pixel-moving foreground filter
+ // render pass.
+- bool has_pixel_moving_filter = false;
++ bool has_pixel_moving_filter;
+ // True if the current frame contains a unembedded render pass.
+- bool has_unembedded_pass = false;
++ bool has_unembedded_pass;
+
+ base::TimeDelta prewalk_time;
+ base::TimeDelta copy_time;
+Index: chromium-132.0.6834.83/gpu/command_buffer/service/shared_image/shared_image_backing.h
+===================================================================
+--- chromium-132.0.6834.83.orig/gpu/command_buffer/service/shared_image/shared_image_backing.h
++++ chromium-132.0.6834.83/gpu/command_buffer/service/shared_image/shared_image_backing.h
+@@ -389,7 +389,7 @@ class GPU_GLES2_EXPORT SharedImageBackin
+ private:
+ class ScopedWriteUMA {
+ public:
+- ScopedWriteUMA() = default;
++ ScopedWriteUMA() : content_consumed_(false) {}
+
+ ScopedWriteUMA(const ScopedWriteUMA&) = delete;
+ ScopedWriteUMA& operator=(const ScopedWriteUMA&) = delete;
+@@ -403,7 +403,7 @@ class GPU_GLES2_EXPORT SharedImageBackin
+ void SetConsumed() { content_consumed_ = true; }
+
+ private:
+- bool content_consumed_ = false;
++ bool content_consumed_;
+ };
+
+ const Mailbox mailbox_;
+Index: chromium-132.0.6834.83/mojo/public/cpp/bindings/lib/multiplex_router.h
+===================================================================
+--- chromium-132.0.6834.83.orig/mojo/public/cpp/bindings/lib/multiplex_router.h
++++ chromium-132.0.6834.83/mojo/public/cpp/bindings/lib/multiplex_router.h
+@@ -315,8 +315,9 @@ class COMPONENT_EXPORT(MOJO_CPP_BINDINGS
+ // are not managed by the MultiplexRouter and thus are not relevant here.
+ struct ExclusiveSyncWaitInfo {
+ InterfaceId interface_id = kInvalidInterfaceId;
+- uint64_t request_id = 0;
+- bool finished = false;
++ uint64_t request_id;
++ bool finished;
++ ExclusiveSyncWaitInfo() : request_id(0), finished(false) {}
+ };
+ std::optional<ExclusiveSyncWaitInfo> exclusive_sync_wait_;
+
+Index: chromium-132.0.6834.83/third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h
+===================================================================
+--- chromium-132.0.6834.83.orig/third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h
++++ chromium-132.0.6834.83/third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h
+@@ -885,8 +885,9 @@ class CORE_EXPORT PaintLayerScrollableAr
+
+ struct PendingViewState {
+ HistoryItem::ViewState state;
+- mojom::blink::ScrollBehavior scroll_behavior =
+- mojom::blink::ScrollBehavior::kAuto;
++ mojom::blink::ScrollBehavior scroll_behavior;
++ PendingViewState()
++ : scroll_behavior(mojom::blink::ScrollBehavior::kAuto) {}
+ };
+ std::optional<PendingViewState> pending_view_state_;
+ };
+Index: chromium-132.0.6834.83/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.h
+===================================================================
+--- chromium-132.0.6834.83.orig/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.h
++++ chromium-132.0.6834.83/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.h
+@@ -51,7 +51,8 @@ class MediaControlTimelineElement : publ
+ // Struct used to track the current live time.
+ struct LiveAnchorTime {
+ base::TimeTicks clock_time_;
+- double media_time_ = 0;
++ double media_time_;
++ LiveAnchorTime() : media_time_(0) {}
+ };
+
+ void DefaultEventHandler(Event&) override;
+Index: chromium-132.0.6834.83/third_party/ink/src/ink/brush/brush_paint.cc
+===================================================================
+--- chromium-132.0.6834.83.orig/third_party/ink/src/ink/brush/brush_paint.cc
++++ chromium-132.0.6834.83/third_party/ink/src/ink/brush/brush_paint.cc
+@@ -84,7 +84,7 @@ absl::Status ValidateBrushPaintTextureKe
+ keyframe.progress));
+ }
+ if (keyframe.size.has_value()) {
+- if (!isfinite(keyframe.size->x) || !isfinite(keyframe.size->y) ||
++ if (!std::isfinite(keyframe.size->x) || !std::isfinite(keyframe.size->y) ||
+ keyframe.size->x <= 0 || keyframe.size->y <= 0) {
+ return absl::InvalidArgumentError(
+ absl::StrFormat("`BrushPaint::TextureKeyframe::size` components must "
+@@ -102,7 +102,7 @@ absl::Status ValidateBrushPaintTextureKe
+ }
+ }
+ if (keyframe.rotation.has_value()) {
+- if (!isfinite(keyframe.rotation->ValueInRadians())) {
++ if (!std::isfinite(keyframe.rotation->ValueInRadians())) {
+ return absl::InvalidArgumentError(
+ absl::StrFormat("`BrushPaint::TextureKeyframe::rotation` must be "
+ "finite. Got %v",
+@@ -159,7 +159,7 @@ absl::Status ValidateBrushPaintTextureLa
+ "interval [0, 1]. Got %v",
+ layer.offset));
+ }
+- if (!isfinite(layer.rotation.ValueInRadians())) {
++ if (!std::isfinite(layer.rotation.ValueInRadians())) {
+ return absl::InvalidArgumentError(
+ absl::StrFormat("`BrushPaint::TextureLayer::rotation` must be finite. "
+ "Got %v",
+@@ -179,7 +179,7 @@ absl::Status ValidateBrushPaintTextureLa
+ "interval [0, 1]. Got %v",
+ layer.offset_jitter));
+ }
+- if (!isfinite(layer.rotation_jitter.ValueInRadians())) {
++ if (!std::isfinite(layer.rotation_jitter.ValueInRadians())) {
+ return absl::InvalidArgumentError(absl::StrFormat(
+ "`BrushPaint::TextureLayer::rotation_jitter` must be finite. "
+ "Got %v",
+Index: chromium-132.0.6834.83/third_party/ruy/src/ruy/profiler/instrumentation.h
+===================================================================
+--- chromium-132.0.6834.83.orig/third_party/ruy/src/ruy/profiler/instrumentation.h
++++ chromium-132.0.6834.83/third_party/ruy/src/ruy/profiler/instrumentation.h
+@@ -18,7 +18,9 @@ limitations under the License.
+
+ #ifdef RUY_PROFILER
+ #include <cstdio>
++#include <cstdlib>
+ #include <mutex>
++#include <string>
+ #include <vector>
+ #endif
+
+Index: chromium-132.0.6834.83/third_party/webrtc/call/rtp_config.h
+===================================================================
+--- chromium-132.0.6834.83.orig/third_party/webrtc/call/rtp_config.h
++++ chromium-132.0.6834.83/third_party/webrtc/call/rtp_config.h
+@@ -79,10 +79,12 @@ struct RtpStreamConfig {
+ struct Rtx {
+ std::string ToString() const;
+ // SSRC to use for the RTX stream.
+- uint32_t ssrc = 0;
++ uint32_t ssrc;
+
+ // Payload type to use for the RTX stream.
+- int payload_type = -1;
++ int payload_type;
++
++ Rtx() : ssrc(0), payload_type(-1) {}
+ };
+ std::optional<Rtx> rtx;
+ };
+Index: chromium-132.0.6834.83/third_party/webrtc/rtc_base/ssl_stream_adapter.h
+===================================================================
+--- chromium-132.0.6834.83.orig/third_party/webrtc/rtc_base/ssl_stream_adapter.h
++++ chromium-132.0.6834.83/third_party/webrtc/rtc_base/ssl_stream_adapter.h
+@@ -15,6 +15,7 @@
+ #include <stdint.h>
+
+ #include <memory>
++#include <optional>
+ #include <string>
+ #include <vector>
+
+
+
diff --git a/www-client/chromium/files/riscv-cargo.patch b/www-client/chromium/files/riscv-cargo.patch
deleted file mode 100644
index 35412dd..0000000
--- a/www-client/chromium/files/riscv-cargo.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From c50dab84e0c911f7b89532700fca27d42a77b3c1 Mon Sep 17 00:00:00 2001
-From: kxxt <rsworktech@outlook.com>
-Date: Fri, 13 Sep 2024 12:48:44 +0000
-Subject: [PATCH] cargo_crate.gni: add riscv64 and loong64 cases
-
-This CL syncs the condition of 64 bit pointer with
-https://github.com/chromium/chromium/blob/31f058a669fd063cab3439df5c877ed3005d9832/base/allocator/partition_allocator/partition_alloc.gni#L21-L24
-
-Bug: none
-Change-Id: Id2f1cfaa0c5167fb61c74505aba03716337b071f
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5850670
-Commit-Queue: Nico Weber <thakis@chromium.org>
-Reviewed-by: Nico Weber <thakis@chromium.org>
-Reviewed-by: Arthur Eubanks <aeubanks@google.com>
-Cr-Commit-Position: refs/heads/main@{#1355138}
----
-
-diff --git a/build/rust/cargo_crate.gni b/build/rust/cargo_crate.gni
-index e5d1b2f8..7290451 100644
---- a/build/rust/cargo_crate.gni
-+++ b/build/rust/cargo_crate.gni
-@@ -429,7 +429,8 @@
- rust_abi_target,
- ]
- }
-- if (current_cpu == "arm64" || current_cpu == "x64") {
-+ if (current_cpu == "arm64" || current_cpu == "x64" ||
-+ current_cpu == "loong64" || current_cpu == "riscv64") {
- args += [
- "--pointer-width",
- "64",
-
diff --git a/www-client/chromium/files/riscv-ffmpeg.patch b/www-client/chromium/files/riscv-ffmpeg.patch
index 6a21d07..124abfe 100644
--- a/www-client/chromium/files/riscv-ffmpeg.patch
+++ b/www-client/chromium/files/riscv-ffmpeg.patch
@@ -1,10 +1,129 @@
diff '--color=auto' -Naur a/third_party/ffmpeg/CREDITS.chromium b/third_party/ffmpeg/CREDITS.chromium
---- a/third_party/ffmpeg/CREDITS.chromium 2024-10-02 03:50:24.635323500 +0100
-+++ b/third_party/ffmpeg/CREDITS.chromium 2024-10-05 16:34:43.806521178 +0100
-@@ -131,6 +131,62 @@
+--- a/third_party/ffmpeg/CREDITS.chromium 2024-12-18 22:01:41.000000000 +0000
++++ b/third_party/ffmpeg/CREDITS.chromium 2025-01-14 12:35:22.000000000 +0000
+@@ -131,6 +131,181 @@
********************************************************************************
++libavcodec/riscv/h264addpx_rvv.S
++
++Copyright © 2024 Rémi Denis-Courmont.
++
++Redistribution and use in source and binary forms, with or without
++modification, are permitted provided that the following conditions are met:
++
++1. Redistributions of source code must retain the above copyright notice,
++this list of conditions and the following disclaimer.
++
++2. Redistributions in binary form must reproduce the above copyright notice,
++this list of conditions and the following disclaimer in the documentation
++and/or other materials provided with the distribution.
++
++THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
++AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
++LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
++CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
++SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
++INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
++CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
++ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
++POSSIBILITY OF SUCH DAMAGE.
++
++********************************************************************************
++
++libavcodec/riscv/h264dsp_rvv.S
++
++SPDX-License-Identifier: BSD-2-Clause
++
++Copyright © 2024 Rémi Denis-Courmont.
++
++Redistribution and use in source and binary forms, with or without
++modification, are permitted provided that the following conditions are met:
++
++1. Redistributions of source code must retain the above copyright notice,
++this list of conditions and the following disclaimer.
++
++2. Redistributions in binary form must reproduce the above copyright notice,
++this list of conditions and the following disclaimer in the documentation
++and/or other materials provided with the distribution.
++
++THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
++AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
++LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
++CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
++SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
++INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
++CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
++ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
++POSSIBILITY OF SUCH DAMAGE.
++
++********************************************************************************
++
++libavcodec/riscv/h264idct_rvv.S
++
++SPDX-License-Identifier: BSD-2-Clause
++
++Copyright (c) 2024 J. Dekker <jdek@itanimul.li>
++Copyright © 2024 Rémi Denis-Courmont.
++
++Redistribution and use in source and binary forms, with or without
++modification, are permitted provided that the following conditions are met:
++
++1. Redistributions of source code must retain the above copyright notice,
++this list of conditions and the following disclaimer.
++
++2. Redistributions in binary form must reproduce the above copyright notice,
++this list of conditions and the following disclaimer in the documentation
++and/or other materials provided with the distribution.
++
++THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
++AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
++LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
++CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
++SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
++INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
++CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
++ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
++POSSIBILITY OF SUCH DAMAGE.
++
++********************************************************************************
++
++libavcodec/riscv/h264qpel_rvv.S
++
++SPDX-License-Identifier: BSD-2-Clause
++
++Copyright (c) 2024 Niklas Haas
++
++Redistribution and use in source and binary forms, with or without
++modification, are permitted provided that the following conditions are met:
++
++1. Redistributions of source code must retain the above copyright notice,
++this list of conditions and the following disclaimer.
++
++2. Redistributions in binary form must reproduce the above copyright notice,
++this list of conditions and the following disclaimer in the documentation
++and/or other materials provided with the distribution.
++
++THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
++AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
++LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
++CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
++SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
++INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
++CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
++ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
++POSSIBILITY OF SUCH DAMAGE.
++
++********************************************************************************
++
+libavcodec/riscv/startcode_rvb.S
+
+Copyright © 2024 Rémi Denis-Courmont.
@@ -64,19 +183,51 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/CREDITS.chromium b/third_party/ff
libavformat/oggparsetheora.c
Copyright (C) 2005 Matthieu CASTET, Alex Beregszaszi
+@@ -157,31 +332,6 @@
+
+ ********************************************************************************
+
+-libavutil/x86/x86inc.asm
+-
+-x86inc.asm: x86 abstraction layer
+-
+- Copyright (C) 2005-2024 x264 project
+-
+- Authors: Loren Merritt <lorenm@u.washington.edu>
+- Henrik Gramner <henrik@gramner.com>
+- Anton Mitrofanov <BugMaster@narod.ru>
+- Fiona Glaser <fiona@x264.com>
+-
+- Permission to use, copy, modify, and/or distribute this software for any
+- purpose with or without fee is hereby granted, provided that the above
+- copyright notice and this permission notice appear in all copies.
+-
+- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+- ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+-
+-********************************************************************************
+-
+ libavcodec/mips/compute_antialias_fixed.h
+ libavcodec/mips/compute_antialias_float.h
+ libavutil/fixed_dsp.c
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h
--- a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h 2024-10-05 16:34:43.806521178 +0100
-@@ -0,0 +1,782 @@
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h 2025-01-14 12:35:46.000000000 +0000
+@@ -0,0 +1,793 @@
+/* Automatically generated by configure - do not modify! */
+#ifndef FFMPEG_CONFIG_H
+#define FFMPEG_CONFIG_H
-+/* #define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-static --enable-libopus --disable-debug --disable-bzlib --disable-error-resilience --disable-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --disable-iamf --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,mp3' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3,mov' --enable-parser='opus,vorbis,flac,mpegaudio,vp9' --extra-cflags=-I/home/porter/Workspaces/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --arch=riscv64 --extra-cflags='-march=rv64gc' --enable-cross-compile --target-os=linux --sysroot=/home/porter/Workspaces/chromium/src/build/linux/debian_sid_riscv64-sysroot --extra-cflags='--target=riscv64-linux-gnu' --extra-ldflags='--target=riscv64-linux-gnu' --enable-pic --cc=clang --cxx=clang++ --ld=clang --extra-ldflags='-fuse-ld=lld' --enable-decoder='aac,h264' --enable-demuxer=aac --enable-parser='aac,h264'" -- elide long configuration string from binary */
++/* #define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-static --enable-libopus --disable-debug --disable-bzlib --disable-error-resilience --disable-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --disable-iamf --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,mp3' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3,mov' --enable-parser='opus,vorbis,flac,mpegaudio,vp9' --extra-cflags=-I/media/Recorded_TV/chrome/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --arch=riscv64 --extra-cflags='-march=rv64gc' --enable-cross-compile --target-os=linux --sysroot=/media/Recorded_TV/chrome/chromium/src/build/linux/debian_sid_riscv64-sysroot --extra-cflags='--target=riscv64-linux-gnu' --extra-ldflags='--target=riscv64-linux-gnu' --enable-pic --cc=clang --cxx=clang++ --ld=clang --extra-ldflags='-fuse-ld=lld' --enable-decoder='aac,h264' --enable-demuxer=aac --enable-parser='aac,h264'" -- elide long configuration string from binary */
+#define FFMPEG_LICENSE "LGPL version 2.1 or later"
+#define CONFIG_THIS_YEAR 2024
+#define FFMPEG_DATADIR "/usr/local/share/ffmpeg"
+#define AVCONV_DATADIR "/usr/local/share/ffmpeg"
-+#define CC_IDENT "clang version 20.0.0git (https://chromium.googlesource.com/external/github.com/llvm/llvm-project 7088a5ed880f29129ec844c66068e8cb61ca98bf)"
++#define CC_IDENT "clang version 20.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project b81d8e90339a788cc6cb148831612c6b39b93ad5)"
+#define OS_NAME linux
+#define EXTERN_PREFIX ""
+#define EXTERN_ASM
@@ -84,12 +235,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define SLIBSUF ".so"
+#define SWS_MAX_FILTER_SIZE 256
+#define ARCH_AARCH64 0
-+#define ARCH_ALPHA 0
+#define ARCH_ARM 0
-+#define ARCH_AVR32 0
-+#define ARCH_AVR32_AP 0
-+#define ARCH_AVR32_UC 0
-+#define ARCH_BFIN 0
+#define ARCH_IA64 0
+#define ARCH_LOONGARCH 0
+#define ARCH_LOONGARCH32 0
@@ -102,7 +248,6 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define ARCH_PPC64 0
+#define ARCH_RISCV 1
+#define ARCH_S390 0
-+#define ARCH_SH4 0
+#define ARCH_SPARC 0
+#define ARCH_SPARC64 0
+#define ARCH_TILEGX 0
@@ -120,6 +265,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_VFP 0
+#define HAVE_VFPV3 0
+#define HAVE_SETEND 0
++#define HAVE_SVE 0
++#define HAVE_SVE2 0
+#define HAVE_ALTIVEC 0
+#define HAVE_DCBZL 0
+#define HAVE_LDBRX 0
@@ -128,6 +275,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_VSX 0
+#define HAVE_RV 1
+#define HAVE_RVV 1
++#define HAVE_RV_ZICBOP 1
+#define HAVE_RV_ZVBB 0
+#define HAVE_AESNI 0
+#define HAVE_AMD3DNOW 0
@@ -172,6 +320,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_VFP_EXTERNAL 0
+#define HAVE_VFPV3_EXTERNAL 0
+#define HAVE_SETEND_EXTERNAL 0
++#define HAVE_SVE_EXTERNAL 0
++#define HAVE_SVE2_EXTERNAL 0
+#define HAVE_ALTIVEC_EXTERNAL 0
+#define HAVE_DCBZL_EXTERNAL 0
+#define HAVE_LDBRX_EXTERNAL 0
@@ -180,6 +330,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_VSX_EXTERNAL 0
+#define HAVE_RV_EXTERNAL 0
+#define HAVE_RVV_EXTERNAL 0
++#define HAVE_RV_ZICBOP_EXTERNAL 0
+#define HAVE_RV_ZVBB_EXTERNAL 0
+#define HAVE_AESNI_EXTERNAL 0
+#define HAVE_AMD3DNOW_EXTERNAL 0
@@ -224,6 +375,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_VFP_INLINE 0
+#define HAVE_VFPV3_INLINE 0
+#define HAVE_SETEND_INLINE 0
++#define HAVE_SVE_INLINE 0
++#define HAVE_SVE2_INLINE 0
+#define HAVE_ALTIVEC_INLINE 0
+#define HAVE_DCBZL_INLINE 0
+#define HAVE_LDBRX_INLINE 0
@@ -232,6 +385,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_VSX_INLINE 0
+#define HAVE_RV_INLINE 0
+#define HAVE_RVV_INLINE 0
++#define HAVE_RV_ZICBOP_INLINE 0
+#define HAVE_RV_ZVBB_INLINE 0
+#define HAVE_AESNI_INLINE 0
+#define HAVE_AMD3DNOW_INLINE 0
@@ -275,13 +429,10 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_SIMD_ALIGN_16 0
+#define HAVE_SIMD_ALIGN_32 0
+#define HAVE_SIMD_ALIGN_64 0
-+#define HAVE_ATOMIC_CAS_PTR 0
-+#define HAVE_MACHINE_RW_BARRIER 0
+#define HAVE_MEMORYBARRIER 0
+#define HAVE_MM_EMPTY 0
+#define HAVE_RDTSC 0
+#define HAVE_SEM_TIMEDWAIT 1
-+#define HAVE_SYNC_VAL_COMPARE_AND_SWAP 1
+#define HAVE_INLINE_ASM 1
+#define HAVE_SYMVER 0
+#define HAVE_X86ASM 0
@@ -315,7 +466,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_OPENGL_GL3_H 0
+#define HAVE_POLL_H 1
+#define HAVE_PTHREAD_NP_H 0
-+#define HAVE_SYS_HWPROBE_H 1
++#define HAVE_SYS_HWPROBE_H 0
+#define HAVE_SYS_PARAM_H 1
+#define HAVE_SYS_RESOURCE_H 1
+#define HAVE_SYS_SELECT_H 1
@@ -330,6 +481,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_WINDOWS_H 0
+#define HAVE_WINSOCK2_H 0
+#define HAVE_INTRINSICS_NEON 0
++#define HAVE_INTRINSICS_SSE2 0
+#define HAVE_ATANF 1
+#define HAVE_ATAN2F 1
+#define HAVE_CBRT 1
@@ -372,6 +524,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_CLOCK_GETTIME 1
+#define HAVE_CLOSESOCKET 0
+#define HAVE_COMMANDLINETOARGVW 0
++#define HAVE_ELF_AUX_INFO 0
+#define HAVE_FCNTL 1
+#define HAVE_GETADDRINFO 0
+#define HAVE_GETAUXVAL 1
@@ -420,6 +573,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_SYSCONF 1
+#define HAVE_SYSCTL 0 /* #define HAVE_SYSCTL 0 -- forced to 0 for Fuchsia */
+#define HAVE_SYSCTLBYNAME 0
++#define HAVE_TEMPNAM 1
+#define HAVE_USLEEP 1
+#define HAVE_UTGETOSTYPEFROMSTRING 0
+#define HAVE_VIRTUALALLOC 0
@@ -435,6 +589,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_AS_ARCH_DIRECTIVE 0
+#define HAVE_AS_ARCHEXT_DOTPROD_DIRECTIVE 0
+#define HAVE_AS_ARCHEXT_I8MM_DIRECTIVE 0
++#define HAVE_AS_ARCHEXT_SVE_DIRECTIVE 0
++#define HAVE_AS_ARCHEXT_SVE2_DIRECTIVE 0
+#define HAVE_AS_DN_DIRECTIVE 0
+#define HAVE_AS_FPU_DIRECTIVE 0
+#define HAVE_AS_FUNC 0
@@ -450,7 +606,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_INLINE_ASM_LABELS 1
+#define HAVE_INLINE_ASM_NONLOCAL_LABELS 1
+#define HAVE_PRAGMA_DEPRECATED 1
-+#define HAVE_RSYNC_CONTIMEOUT 0
++#define HAVE_RSYNC_CONTIMEOUT 1
+#define HAVE_SYMVER_ASM_LABEL 1
+#define HAVE_SYMVER_GNU_ASM 1
+#define HAVE_VFP_ARGS 0
@@ -461,6 +617,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_KCMVIDEOCODECTYPE_HEVC 0
+#define HAVE_KCMVIDEOCODECTYPE_HEVCWITHALPHA 0
+#define HAVE_KCMVIDEOCODECTYPE_VP9 0
++#define HAVE_KCMVIDEOCODECTYPE_AV1 0
+#define HAVE_KCVPIXELFORMATTYPE_420YPCBCR10BIPLANARVIDEORANGE 0
+#define HAVE_KCVPIXELFORMATTYPE_422YPCBCR8BIPLANARVIDEORANGE 0
+#define HAVE_KCVPIXELFORMATTYPE_422YPCBCR10BIPLANARVIDEORANGE 0
@@ -488,7 +645,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_STRUCT_SOCKADDR_SA_LEN 0
+#define HAVE_STRUCT_SOCKADDR_STORAGE 0
+#define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
-+#define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
++#define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 1
+#define HAVE_STRUCT_MFXCONFIGINTERFACE 0
+#define HAVE_GZIP 1
+#define HAVE_LIBDRM_GETFB2 0
@@ -503,6 +660,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_OPENCL_VIDEOTOOLBOX 0
+#define HAVE_PERL 1
+#define HAVE_POD2MAN 1
++#define HAVE_POSIX_IOCTL 0
+#define HAVE_TEXI2HTML 0
+#define HAVE_XMLLINT 0
+#define HAVE_ZLIB_GZIP 0
@@ -592,6 +750,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_LIBKLVANC 0
+#define CONFIG_LIBKVAZAAR 0
+#define CONFIG_LIBLC3 0
++#define CONFIG_LIBLCEVC_DEC 0
+#define CONFIG_LIBMODPLUG 0
+#define CONFIG_LIBMP3LAME 0
+#define CONFIG_LIBMYSOFA 0
@@ -629,6 +788,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_LIBVMAF 0
+#define CONFIG_LIBVORBIS 0
+#define CONFIG_LIBVPX 0
++#define CONFIG_LIBVVENC 0
+#define CONFIG_LIBWEBP 0
+#define CONFIG_LIBXEVD 0
+#define CONFIG_LIBXEVE 0
@@ -761,6 +921,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_CBS_MPEG2 0
+#define CONFIG_CBS_VP8 0
+#define CONFIG_CBS_VP9 0
++#define CONFIG_D3D12VA_ENCODE 0
+#define CONFIG_DEFLATE_WRAPPER 0
+#define CONFIG_DIRAC_PARSE 1
+#define CONFIG_DNN 0
@@ -847,13 +1008,14 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_VP3DSP 0
+#define CONFIG_VP56DSP 0
+#define CONFIG_VP8DSP 0
++#define CONFIG_VULKAN_ENCODE 0
+#define CONFIG_WMA_FREQS 0
+#define CONFIG_WMV2DSP 0
+#endif /* FFMPEG_CONFIG_H */
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_components.h b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_components.h
--- a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_components.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_components.h 2024-10-05 16:34:43.813187846 +0100
-@@ -0,0 +1,2218 @@
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_components.h 2025-01-14 12:35:46.000000000 +0000
+@@ -0,0 +1,2234 @@
+/* Automatically generated by configure - do not modify! */
+#ifndef FFMPEG_CONFIG_COMPONENTS_H
+#define FFMPEG_CONFIG_COMPONENTS_H
@@ -864,6 +1026,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_CHOMP_BSF 0
+#define CONFIG_DUMP_EXTRADATA_BSF 0
+#define CONFIG_DCA_CORE_BSF 0
++#define CONFIG_DOVI_RPU_BSF 0
+#define CONFIG_DTS2PTS_BSF 0
+#define CONFIG_DV_ERROR_MARKER_BSF 0
+#define CONFIG_EAC3_CORE_BSF 0
@@ -1455,6 +1618,9 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_BINTEXT_DECODER 0
+#define CONFIG_XBIN_DECODER 0
+#define CONFIG_IDF_DECODER 0
++#define CONFIG_AAC_MEDIACODEC_DECODER 0
++#define CONFIG_AMRNB_MEDIACODEC_DECODER 0
++#define CONFIG_AMRWB_MEDIACODEC_DECODER 0
+#define CONFIG_LIBAOM_AV1_DECODER 0
+#define CONFIG_AV1_DECODER 0
+#define CONFIG_AV1_CUVID_DECODER 0
@@ -1466,6 +1632,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_HEVC_MEDIACODEC_DECODER 0
+#define CONFIG_MJPEG_CUVID_DECODER 0
+#define CONFIG_MJPEG_QSV_DECODER 0
++#define CONFIG_MP3_MEDIACODEC_DECODER 0
+#define CONFIG_MPEG1_CUVID_DECODER 0
+#define CONFIG_MPEG2_CUVID_DECODER 0
+#define CONFIG_MPEG4_CUVID_DECODER 0
@@ -1477,6 +1644,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_VP9_CUVID_DECODER 0
+#define CONFIG_VP9_MEDIACODEC_DECODER 0
+#define CONFIG_VP9_QSV_DECODER 0
++#define CONFIG_VVC_QSV_DECODER 0
+#define CONFIG_VNULL_DECODER 0
+#define CONFIG_ANULL_DECODER 0
+#define CONFIG_A64MULTI_ENCODER 0
@@ -1684,6 +1852,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_LIBVORBIS_ENCODER 0
+#define CONFIG_LIBVPX_VP8_ENCODER 0
+#define CONFIG_LIBVPX_VP9_ENCODER 0
++#define CONFIG_LIBVVENC_ENCODER 0
+#define CONFIG_LIBWEBP_ANIM_ENCODER 0
+#define CONFIG_LIBWEBP_ENCODER 0
+#define CONFIG_LIBX262_ENCODER 0
@@ -1701,6 +1870,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_AV1_NVENC_ENCODER 0
+#define CONFIG_AV1_QSV_ENCODER 0
+#define CONFIG_AV1_AMF_ENCODER 0
++#define CONFIG_AV1_MF_ENCODER 0
+#define CONFIG_AV1_VAAPI_ENCODER 0
+#define CONFIG_LIBOPENH264_ENCODER 0
+#define CONFIG_H264_AMF_ENCODER 0
@@ -1711,7 +1881,9 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_H264_V4L2M2M_ENCODER 0
+#define CONFIG_H264_VAAPI_ENCODER 0
+#define CONFIG_H264_VIDEOTOOLBOX_ENCODER 0
++#define CONFIG_H264_VULKAN_ENCODER 0
+#define CONFIG_HEVC_AMF_ENCODER 0
++#define CONFIG_HEVC_D3D12VA_ENCODER 0
+#define CONFIG_HEVC_MEDIACODEC_ENCODER 0
+#define CONFIG_HEVC_MF_ENCODER 0
+#define CONFIG_HEVC_NVENC_ENCODER 0
@@ -1719,6 +1891,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_HEVC_V4L2M2M_ENCODER 0
+#define CONFIG_HEVC_VAAPI_ENCODER 0
+#define CONFIG_HEVC_VIDEOTOOLBOX_ENCODER 0
++#define CONFIG_HEVC_VULKAN_ENCODER 0
+#define CONFIG_LIBKVAZAAR_ENCODER 0
+#define CONFIG_MJPEG_QSV_ENCODER 0
+#define CONFIG_MJPEG_VAAPI_ENCODER 0
@@ -1744,6 +1917,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_AV1_NVDEC_HWACCEL 0
+#define CONFIG_AV1_VAAPI_HWACCEL 0
+#define CONFIG_AV1_VDPAU_HWACCEL 0
++#define CONFIG_AV1_VIDEOTOOLBOX_HWACCEL 0
+#define CONFIG_AV1_VULKAN_HWACCEL 0
+#define CONFIG_H263_VAAPI_HWACCEL 0
+#define CONFIG_H263_VIDEOTOOLBOX_HWACCEL 0
@@ -1822,6 +1996,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_DCA_PARSER 0
+#define CONFIG_DIRAC_PARSER 0
+#define CONFIG_DNXHD_PARSER 0
++#define CONFIG_DNXUC_PARSER 0
+#define CONFIG_DOLBY_E_PARSER 0
+#define CONFIG_DPX_PARSER 0
+#define CONFIG_DVAUDIO_PARSER 0
@@ -2213,6 +2388,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_KIRSCH_FILTER 0
+#define CONFIG_LAGFUN_FILTER 0
+#define CONFIG_LATENCY_FILTER 0
++#define CONFIG_LCEVC_FILTER 0
+#define CONFIG_LENSCORRECTION_FILTER 0
+#define CONFIG_LENSFUN_FILTER 0
+#define CONFIG_LIBPLACEBO_FILTER 0
@@ -2408,6 +2584,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_XFADE_OPENCL_FILTER 0
+#define CONFIG_XFADE_VULKAN_FILTER 0
+#define CONFIG_XMEDIAN_FILTER 0
++#define CONFIG_XPSNR_FILTER 0
+#define CONFIG_XSTACK_FILTER 0
+#define CONFIG_YADIF_FILTER 0
+#define CONFIG_YADIF_CUDA_FILTER 0
@@ -2444,6 +2621,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_QRENCODESRC_FILTER 0
+#define CONFIG_PAL75BARS_FILTER 0
+#define CONFIG_PAL100BARS_FILTER 0
++#define CONFIG_PERLIN_FILTER 0
+#define CONFIG_RGBTESTSRC_FILTER 0
+#define CONFIG_SIERPINSKI_FILTER 0
+#define CONFIG_SMPTEBARS_FILTER 0
@@ -3074,13 +3252,13 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#endif /* FFMPEG_CONFIG_COMPONENTS_H */
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/bsf_list.c b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/bsf_list.c
--- a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/bsf_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/bsf_list.c 2024-10-05 16:34:43.813187846 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/bsf_list.c 2025-01-14 12:35:46.000000000 +0000
@@ -0,0 +1,2 @@
+static const FFBitStreamFilter * const bitstream_filters[] = {
+ NULL };
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/codec_list.c b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/codec_list.c
--- a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/codec_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/codec_list.c 2024-10-05 16:34:43.813187846 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/codec_list.c 2025-01-14 12:35:46.000000000 +0000
@@ -0,0 +1,17 @@
+static const FFCodec * const codec_list[] = {
+ &ff_h264_decoder,
@@ -3101,7 +3279,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+ NULL };
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/parser_list.c b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/parser_list.c
--- a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/parser_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/parser_list.c 2024-10-05 16:34:43.813187846 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/parser_list.c 2025-01-14 12:35:46.000000000 +0000
@@ -0,0 +1,9 @@
+static const AVCodecParser * const parser_list[] = {
+ &ff_aac_parser,
@@ -3114,7 +3292,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+ NULL };
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/demuxer_list.c b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/demuxer_list.c
--- a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/demuxer_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/demuxer_list.c 2024-10-05 16:34:43.813187846 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/demuxer_list.c 2025-01-14 12:35:46.000000000 +0000
@@ -0,0 +1,9 @@
+static const FFInputFormat * const demuxer_list[] = {
+ &ff_aac_demuxer,
@@ -3127,19 +3305,19 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+ NULL };
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/muxer_list.c b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/muxer_list.c
--- a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/muxer_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/muxer_list.c 2024-10-05 16:34:43.813187846 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/muxer_list.c 2025-01-14 12:35:46.000000000 +0000
@@ -0,0 +1,2 @@
+static const FFOutputFormat * const muxer_list[] = {
+ NULL };
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/protocol_list.c b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/protocol_list.c
--- a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/protocol_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/protocol_list.c 2024-10-05 16:34:43.813187846 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/protocol_list.c 2025-01-14 12:35:46.000000000 +0000
@@ -0,0 +1,2 @@
+static const URLProtocol * const url_protocols[] = {
+ NULL };
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/avconfig.h b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/avconfig.h
--- a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/avconfig.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/avconfig.h 2024-10-05 16:34:43.816521179 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/avconfig.h 2025-01-14 12:35:46.000000000 +0000
@@ -0,0 +1,6 @@
+/* Generated by ffmpeg configure */
+#ifndef AVUTIL_AVCONFIG_H
@@ -3149,115 +3327,26 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#endif /* AVUTIL_AVCONFIG_H */
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/ffversion.h b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/ffversion.h
--- a/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/ffversion.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/ffversion.h 2024-10-05 16:34:43.816521179 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/ffversion.h 2025-01-14 12:35:46.000000000 +0000
@@ -0,0 +1,5 @@
+/* Automatically generated by version.sh, do not manually edit! */
+#ifndef AVUTIL_FFVERSION_H
+#define AVUTIL_FFVERSION_H
-+#define FFMPEG_VERSION "git-2024-08-15-14d16cd143"
++#define FFMPEG_VERSION "git-2024-10-31-591ae4b02e"
+#endif /* AVUTIL_FFVERSION_H */
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/x64/config.asm b/third_party/ffmpeg/chromium/config/Chrome/linux/x64/config.asm
---- a/third_party/ffmpeg/chromium/config/Chrome/linux/x64/config.asm 2024-10-02 03:50:24.656325800 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/x64/config.asm 2024-10-05 16:34:43.816521179 +0100
-@@ -102,8 +102,8 @@
- %define HAVE_AMD3DNOWEXT_EXTERNAL 1
- %define HAVE_AVX_EXTERNAL 1
- %define HAVE_AVX2_EXTERNAL 1
--%define HAVE_AVX512_EXTERNAL 1
--%define HAVE_AVX512ICL_EXTERNAL 1
-+%define HAVE_AVX512_EXTERNAL 0
-+%define HAVE_AVX512ICL_EXTERNAL 0
- %define HAVE_FMA3_EXTERNAL 1
- %define HAVE_FMA4_EXTERNAL 1
- %define HAVE_MMX_EXTERNAL 1
-@@ -366,7 +366,7 @@
- %define HAVE_INLINE_ASM_LABELS 1
- %define HAVE_INLINE_ASM_NONLOCAL_LABELS 1
- %define HAVE_PRAGMA_DEPRECATED 1
--%define HAVE_RSYNC_CONTIMEOUT 1
-+%define HAVE_RSYNC_CONTIMEOUT 0
- %define HAVE_SYMVER_ASM_LABEL 1
- %define HAVE_SYMVER_GNU_ASM 1
- %define HAVE_VFP_ARGS 0
-@@ -420,7 +420,7 @@
- %define HAVE_PERL 1
- %define HAVE_POD2MAN 1
- %define HAVE_TEXI2HTML 0
--%define HAVE_XMLLINT 1
-+%define HAVE_XMLLINT 0
- %define HAVE_ZLIB_GZIP 0
- %define HAVE_OPENVINO2 0
- %define CONFIG_DOC 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/x64/config.h b/third_party/ffmpeg/chromium/config/Chrome/linux/x64/config.h
---- a/third_party/ffmpeg/chromium/config/Chrome/linux/x64/config.h 2024-10-02 03:50:24.656325800 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/x64/config.h 2024-10-05 16:34:43.816521179 +0100
-@@ -1,12 +1,12 @@
- /* Automatically generated by configure - do not modify! */
- #ifndef FFMPEG_CONFIG_H
- #define FFMPEG_CONFIG_H
--/* #define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-static --enable-libopus --disable-debug --disable-bzlib --disable-error-resilience --disable-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --disable-iamf --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,mp3' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3,mov' --enable-parser='opus,vorbis,flac,mpegaudio,vp9' --extra-cflags=-I/usr/local/google/home/dalecurtis/code/chrome/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-lto --arch=x86_64 --target-os=linux --enable-pic --cc=clang --cxx=clang++ --ld=clang --extra-ldflags='-fuse-ld=lld' --enable-decoder='aac,h264' --enable-demuxer=aac --enable-parser='aac,h264'" -- elide long configuration string from binary */
-+/* #define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-static --enable-libopus --disable-debug --disable-bzlib --disable-error-resilience --disable-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --disable-iamf --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,mp3' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3,mov' --enable-parser='opus,vorbis,flac,mpegaudio,vp9' --extra-cflags=-I/home/porter/Workspaces/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-lto --arch=x86_64 --target-os=linux --enable-pic --cc=clang --cxx=clang++ --ld=clang --extra-ldflags='-fuse-ld=lld' --enable-decoder='aac,h264' --enable-demuxer=aac --enable-parser='aac,h264'" -- elide long configuration string from binary */
- #define FFMPEG_LICENSE "LGPL version 2.1 or later"
- #define CONFIG_THIS_YEAR 2024
- #define FFMPEG_DATADIR "/usr/local/share/ffmpeg"
- #define AVCONV_DATADIR "/usr/local/share/ffmpeg"
--#define CC_IDENT "clang version 19.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project ecea8371ff03c15fb3dc27ee4108b98335fd2d63)"
-+#define CC_IDENT "clang version 20.0.0git (https://chromium.googlesource.com/external/github.com/llvm/llvm-project 7088a5ed880f29129ec844c66068e8cb61ca98bf)"
- #define OS_NAME linux
- #define EXTERN_PREFIX ""
- #define EXTERN_ASM
-@@ -116,8 +116,8 @@
- #define HAVE_AMD3DNOWEXT_EXTERNAL 1
- #define HAVE_AVX_EXTERNAL 1
- #define HAVE_AVX2_EXTERNAL 1
--#define HAVE_AVX512_EXTERNAL 1
--#define HAVE_AVX512ICL_EXTERNAL 1
-+#define HAVE_AVX512_EXTERNAL 0
-+#define HAVE_AVX512ICL_EXTERNAL 0
- #define HAVE_FMA3_EXTERNAL 1
- #define HAVE_FMA4_EXTERNAL 1
- #define HAVE_MMX_EXTERNAL 1
-@@ -380,7 +380,7 @@
- #define HAVE_INLINE_ASM_LABELS 1
- #define HAVE_INLINE_ASM_NONLOCAL_LABELS 1
- #define HAVE_PRAGMA_DEPRECATED 1
--#define HAVE_RSYNC_CONTIMEOUT 1
-+#define HAVE_RSYNC_CONTIMEOUT 0
- #define HAVE_SYMVER_ASM_LABEL 1
- #define HAVE_SYMVER_GNU_ASM 1
- #define HAVE_VFP_ARGS 0
-@@ -434,7 +434,7 @@
- #define HAVE_PERL 1
- #define HAVE_POD2MAN 1
- #define HAVE_TEXI2HTML 0
--#define HAVE_XMLLINT 1
-+#define HAVE_XMLLINT 0
- #define HAVE_ZLIB_GZIP 0
- #define HAVE_OPENVINO2 0
- #define CONFIG_DOC 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/x64/libavutil/ffversion.h b/third_party/ffmpeg/chromium/config/Chrome/linux/x64/libavutil/ffversion.h
---- a/third_party/ffmpeg/chromium/config/Chrome/linux/x64/libavutil/ffversion.h 2024-10-02 03:50:24.657326000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/x64/libavutil/ffversion.h 2024-10-05 16:34:43.816521179 +0100
-@@ -1,5 +1,5 @@
- /* Automatically generated by version.sh, do not manually edit! */
- #ifndef AVUTIL_FFVERSION_H
- #define AVUTIL_FFVERSION_H
--#define FFMPEG_VERSION "N-116575-gd941d9677b"
-+#define FFMPEG_VERSION "git-2024-08-15-14d16cd143"
- #endif /* AVUTIL_FFVERSION_H */
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h
--- a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h 2024-10-05 16:34:43.819854513 +0100
-@@ -0,0 +1,782 @@
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h 2025-01-14 12:35:46.000000000 +0000
+@@ -0,0 +1,793 @@
+/* Automatically generated by configure - do not modify! */
+#ifndef FFMPEG_CONFIG_H
+#define FFMPEG_CONFIG_H
-+/* #define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-static --enable-libopus --disable-debug --disable-bzlib --disable-error-resilience --disable-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --disable-iamf --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,mp3' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3,mov' --enable-parser='opus,vorbis,flac,mpegaudio,vp9' --extra-cflags=-I/home/porter/Workspaces/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --arch=riscv64 --extra-cflags='-march=rv64gc' --enable-cross-compile --target-os=linux --sysroot=/home/porter/Workspaces/chromium/src/build/linux/debian_sid_riscv64-sysroot --extra-cflags='--target=riscv64-linux-gnu' --extra-ldflags='--target=riscv64-linux-gnu' --enable-pic --cc=clang --cxx=clang++ --ld=clang --extra-ldflags='-fuse-ld=lld'" -- elide long configuration string from binary */
++/* #define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-static --enable-libopus --disable-debug --disable-bzlib --disable-error-resilience --disable-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --disable-iamf --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,mp3' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3,mov' --enable-parser='opus,vorbis,flac,mpegaudio,vp9' --extra-cflags=-I/media/Recorded_TV/chrome/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --arch=riscv64 --extra-cflags='-march=rv64gc' --enable-cross-compile --target-os=linux --sysroot=/media/Recorded_TV/chrome/chromium/src/build/linux/debian_sid_riscv64-sysroot --extra-cflags='--target=riscv64-linux-gnu' --extra-ldflags='--target=riscv64-linux-gnu' --enable-pic --cc=clang --cxx=clang++ --ld=clang --extra-ldflags='-fuse-ld=lld'" -- elide long configuration string from binary */
+#define FFMPEG_LICENSE "LGPL version 2.1 or later"
+#define CONFIG_THIS_YEAR 2024
+#define FFMPEG_DATADIR "/usr/local/share/ffmpeg"
+#define AVCONV_DATADIR "/usr/local/share/ffmpeg"
-+#define CC_IDENT "clang version 20.0.0git (https://chromium.googlesource.com/external/github.com/llvm/llvm-project 7088a5ed880f29129ec844c66068e8cb61ca98bf)"
++#define CC_IDENT "clang version 20.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project b81d8e90339a788cc6cb148831612c6b39b93ad5)"
+#define OS_NAME linux
+#define EXTERN_PREFIX ""
+#define EXTERN_ASM
@@ -3265,12 +3354,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define SLIBSUF ".so"
+#define SWS_MAX_FILTER_SIZE 256
+#define ARCH_AARCH64 0
-+#define ARCH_ALPHA 0
+#define ARCH_ARM 0
-+#define ARCH_AVR32 0
-+#define ARCH_AVR32_AP 0
-+#define ARCH_AVR32_UC 0
-+#define ARCH_BFIN 0
+#define ARCH_IA64 0
+#define ARCH_LOONGARCH 0
+#define ARCH_LOONGARCH32 0
@@ -3283,7 +3367,6 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define ARCH_PPC64 0
+#define ARCH_RISCV 1
+#define ARCH_S390 0
-+#define ARCH_SH4 0
+#define ARCH_SPARC 0
+#define ARCH_SPARC64 0
+#define ARCH_TILEGX 0
@@ -3301,6 +3384,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_VFP 0
+#define HAVE_VFPV3 0
+#define HAVE_SETEND 0
++#define HAVE_SVE 0
++#define HAVE_SVE2 0
+#define HAVE_ALTIVEC 0
+#define HAVE_DCBZL 0
+#define HAVE_LDBRX 0
@@ -3309,6 +3394,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_VSX 0
+#define HAVE_RV 1
+#define HAVE_RVV 1
++#define HAVE_RV_ZICBOP 1
+#define HAVE_RV_ZVBB 0
+#define HAVE_AESNI 0
+#define HAVE_AMD3DNOW 0
@@ -3353,6 +3439,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_VFP_EXTERNAL 0
+#define HAVE_VFPV3_EXTERNAL 0
+#define HAVE_SETEND_EXTERNAL 0
++#define HAVE_SVE_EXTERNAL 0
++#define HAVE_SVE2_EXTERNAL 0
+#define HAVE_ALTIVEC_EXTERNAL 0
+#define HAVE_DCBZL_EXTERNAL 0
+#define HAVE_LDBRX_EXTERNAL 0
@@ -3361,6 +3449,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_VSX_EXTERNAL 0
+#define HAVE_RV_EXTERNAL 0
+#define HAVE_RVV_EXTERNAL 0
++#define HAVE_RV_ZICBOP_EXTERNAL 0
+#define HAVE_RV_ZVBB_EXTERNAL 0
+#define HAVE_AESNI_EXTERNAL 0
+#define HAVE_AMD3DNOW_EXTERNAL 0
@@ -3405,6 +3494,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_VFP_INLINE 0
+#define HAVE_VFPV3_INLINE 0
+#define HAVE_SETEND_INLINE 0
++#define HAVE_SVE_INLINE 0
++#define HAVE_SVE2_INLINE 0
+#define HAVE_ALTIVEC_INLINE 0
+#define HAVE_DCBZL_INLINE 0
+#define HAVE_LDBRX_INLINE 0
@@ -3413,6 +3504,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_VSX_INLINE 0
+#define HAVE_RV_INLINE 0
+#define HAVE_RVV_INLINE 0
++#define HAVE_RV_ZICBOP_INLINE 0
+#define HAVE_RV_ZVBB_INLINE 0
+#define HAVE_AESNI_INLINE 0
+#define HAVE_AMD3DNOW_INLINE 0
@@ -3456,13 +3548,10 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_SIMD_ALIGN_16 0
+#define HAVE_SIMD_ALIGN_32 0
+#define HAVE_SIMD_ALIGN_64 0
-+#define HAVE_ATOMIC_CAS_PTR 0
-+#define HAVE_MACHINE_RW_BARRIER 0
+#define HAVE_MEMORYBARRIER 0
+#define HAVE_MM_EMPTY 0
+#define HAVE_RDTSC 0
+#define HAVE_SEM_TIMEDWAIT 1
-+#define HAVE_SYNC_VAL_COMPARE_AND_SWAP 1
+#define HAVE_INLINE_ASM 1
+#define HAVE_SYMVER 0
+#define HAVE_X86ASM 0
@@ -3496,7 +3585,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_OPENGL_GL3_H 0
+#define HAVE_POLL_H 1
+#define HAVE_PTHREAD_NP_H 0
-+#define HAVE_SYS_HWPROBE_H 1
++#define HAVE_SYS_HWPROBE_H 0
+#define HAVE_SYS_PARAM_H 1
+#define HAVE_SYS_RESOURCE_H 1
+#define HAVE_SYS_SELECT_H 1
@@ -3511,6 +3600,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_WINDOWS_H 0
+#define HAVE_WINSOCK2_H 0
+#define HAVE_INTRINSICS_NEON 0
++#define HAVE_INTRINSICS_SSE2 0
+#define HAVE_ATANF 1
+#define HAVE_ATAN2F 1
+#define HAVE_CBRT 1
@@ -3553,6 +3643,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_CLOCK_GETTIME 1
+#define HAVE_CLOSESOCKET 0
+#define HAVE_COMMANDLINETOARGVW 0
++#define HAVE_ELF_AUX_INFO 0
+#define HAVE_FCNTL 1
+#define HAVE_GETADDRINFO 0
+#define HAVE_GETAUXVAL 1
@@ -3601,6 +3692,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_SYSCONF 1
+#define HAVE_SYSCTL 0 /* #define HAVE_SYSCTL 0 -- forced to 0 for Fuchsia */
+#define HAVE_SYSCTLBYNAME 0
++#define HAVE_TEMPNAM 1
+#define HAVE_USLEEP 1
+#define HAVE_UTGETOSTYPEFROMSTRING 0
+#define HAVE_VIRTUALALLOC 0
@@ -3616,6 +3708,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_AS_ARCH_DIRECTIVE 0
+#define HAVE_AS_ARCHEXT_DOTPROD_DIRECTIVE 0
+#define HAVE_AS_ARCHEXT_I8MM_DIRECTIVE 0
++#define HAVE_AS_ARCHEXT_SVE_DIRECTIVE 0
++#define HAVE_AS_ARCHEXT_SVE2_DIRECTIVE 0
+#define HAVE_AS_DN_DIRECTIVE 0
+#define HAVE_AS_FPU_DIRECTIVE 0
+#define HAVE_AS_FUNC 0
@@ -3631,7 +3725,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_INLINE_ASM_LABELS 1
+#define HAVE_INLINE_ASM_NONLOCAL_LABELS 1
+#define HAVE_PRAGMA_DEPRECATED 1
-+#define HAVE_RSYNC_CONTIMEOUT 0
++#define HAVE_RSYNC_CONTIMEOUT 1
+#define HAVE_SYMVER_ASM_LABEL 1
+#define HAVE_SYMVER_GNU_ASM 1
+#define HAVE_VFP_ARGS 0
@@ -3642,6 +3736,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_KCMVIDEOCODECTYPE_HEVC 0
+#define HAVE_KCMVIDEOCODECTYPE_HEVCWITHALPHA 0
+#define HAVE_KCMVIDEOCODECTYPE_VP9 0
++#define HAVE_KCMVIDEOCODECTYPE_AV1 0
+#define HAVE_KCVPIXELFORMATTYPE_420YPCBCR10BIPLANARVIDEORANGE 0
+#define HAVE_KCVPIXELFORMATTYPE_422YPCBCR8BIPLANARVIDEORANGE 0
+#define HAVE_KCVPIXELFORMATTYPE_422YPCBCR10BIPLANARVIDEORANGE 0
@@ -3669,7 +3764,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_STRUCT_SOCKADDR_SA_LEN 0
+#define HAVE_STRUCT_SOCKADDR_STORAGE 0
+#define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
-+#define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
++#define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 1
+#define HAVE_STRUCT_MFXCONFIGINTERFACE 0
+#define HAVE_GZIP 1
+#define HAVE_LIBDRM_GETFB2 0
@@ -3684,6 +3779,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_OPENCL_VIDEOTOOLBOX 0
+#define HAVE_PERL 1
+#define HAVE_POD2MAN 1
++#define HAVE_POSIX_IOCTL 0
+#define HAVE_TEXI2HTML 0
+#define HAVE_XMLLINT 0
+#define HAVE_ZLIB_GZIP 0
@@ -3773,6 +3869,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_LIBKLVANC 0
+#define CONFIG_LIBKVAZAAR 0
+#define CONFIG_LIBLC3 0
++#define CONFIG_LIBLCEVC_DEC 0
+#define CONFIG_LIBMODPLUG 0
+#define CONFIG_LIBMP3LAME 0
+#define CONFIG_LIBMYSOFA 0
@@ -3810,6 +3907,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_LIBVMAF 0
+#define CONFIG_LIBVORBIS 0
+#define CONFIG_LIBVPX 0
++#define CONFIG_LIBVVENC 0
+#define CONFIG_LIBWEBP 0
+#define CONFIG_LIBXEVD 0
+#define CONFIG_LIBXEVE 0
@@ -3942,6 +4040,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_CBS_MPEG2 0
+#define CONFIG_CBS_VP8 0
+#define CONFIG_CBS_VP9 0
++#define CONFIG_D3D12VA_ENCODE 0
+#define CONFIG_DEFLATE_WRAPPER 0
+#define CONFIG_DIRAC_PARSE 1
+#define CONFIG_DNN 0
@@ -4028,13 +4127,14 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_VP3DSP 0
+#define CONFIG_VP56DSP 0
+#define CONFIG_VP8DSP 0
++#define CONFIG_VULKAN_ENCODE 0
+#define CONFIG_WMA_FREQS 0
+#define CONFIG_WMV2DSP 0
+#endif /* FFMPEG_CONFIG_H */
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_components.h b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_components.h
--- a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_components.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_components.h 2024-10-05 16:34:43.823187846 +0100
-@@ -0,0 +1,2218 @@
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_components.h 2025-01-14 12:35:46.000000000 +0000
+@@ -0,0 +1,2234 @@
+/* Automatically generated by configure - do not modify! */
+#ifndef FFMPEG_CONFIG_COMPONENTS_H
+#define FFMPEG_CONFIG_COMPONENTS_H
@@ -4045,6 +4145,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_CHOMP_BSF 0
+#define CONFIG_DUMP_EXTRADATA_BSF 0
+#define CONFIG_DCA_CORE_BSF 0
++#define CONFIG_DOVI_RPU_BSF 0
+#define CONFIG_DTS2PTS_BSF 0
+#define CONFIG_DV_ERROR_MARKER_BSF 0
+#define CONFIG_EAC3_CORE_BSF 0
@@ -4636,6 +4737,9 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_BINTEXT_DECODER 0
+#define CONFIG_XBIN_DECODER 0
+#define CONFIG_IDF_DECODER 0
++#define CONFIG_AAC_MEDIACODEC_DECODER 0
++#define CONFIG_AMRNB_MEDIACODEC_DECODER 0
++#define CONFIG_AMRWB_MEDIACODEC_DECODER 0
+#define CONFIG_LIBAOM_AV1_DECODER 0
+#define CONFIG_AV1_DECODER 0
+#define CONFIG_AV1_CUVID_DECODER 0
@@ -4647,6 +4751,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_HEVC_MEDIACODEC_DECODER 0
+#define CONFIG_MJPEG_CUVID_DECODER 0
+#define CONFIG_MJPEG_QSV_DECODER 0
++#define CONFIG_MP3_MEDIACODEC_DECODER 0
+#define CONFIG_MPEG1_CUVID_DECODER 0
+#define CONFIG_MPEG2_CUVID_DECODER 0
+#define CONFIG_MPEG4_CUVID_DECODER 0
@@ -4658,6 +4763,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_VP9_CUVID_DECODER 0
+#define CONFIG_VP9_MEDIACODEC_DECODER 0
+#define CONFIG_VP9_QSV_DECODER 0
++#define CONFIG_VVC_QSV_DECODER 0
+#define CONFIG_VNULL_DECODER 0
+#define CONFIG_ANULL_DECODER 0
+#define CONFIG_A64MULTI_ENCODER 0
@@ -4865,6 +4971,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_LIBVORBIS_ENCODER 0
+#define CONFIG_LIBVPX_VP8_ENCODER 0
+#define CONFIG_LIBVPX_VP9_ENCODER 0
++#define CONFIG_LIBVVENC_ENCODER 0
+#define CONFIG_LIBWEBP_ANIM_ENCODER 0
+#define CONFIG_LIBWEBP_ENCODER 0
+#define CONFIG_LIBX262_ENCODER 0
@@ -4882,6 +4989,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_AV1_NVENC_ENCODER 0
+#define CONFIG_AV1_QSV_ENCODER 0
+#define CONFIG_AV1_AMF_ENCODER 0
++#define CONFIG_AV1_MF_ENCODER 0
+#define CONFIG_AV1_VAAPI_ENCODER 0
+#define CONFIG_LIBOPENH264_ENCODER 0
+#define CONFIG_H264_AMF_ENCODER 0
@@ -4892,7 +5000,9 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_H264_V4L2M2M_ENCODER 0
+#define CONFIG_H264_VAAPI_ENCODER 0
+#define CONFIG_H264_VIDEOTOOLBOX_ENCODER 0
++#define CONFIG_H264_VULKAN_ENCODER 0
+#define CONFIG_HEVC_AMF_ENCODER 0
++#define CONFIG_HEVC_D3D12VA_ENCODER 0
+#define CONFIG_HEVC_MEDIACODEC_ENCODER 0
+#define CONFIG_HEVC_MF_ENCODER 0
+#define CONFIG_HEVC_NVENC_ENCODER 0
@@ -4900,6 +5010,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_HEVC_V4L2M2M_ENCODER 0
+#define CONFIG_HEVC_VAAPI_ENCODER 0
+#define CONFIG_HEVC_VIDEOTOOLBOX_ENCODER 0
++#define CONFIG_HEVC_VULKAN_ENCODER 0
+#define CONFIG_LIBKVAZAAR_ENCODER 0
+#define CONFIG_MJPEG_QSV_ENCODER 0
+#define CONFIG_MJPEG_VAAPI_ENCODER 0
@@ -4925,6 +5036,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_AV1_NVDEC_HWACCEL 0
+#define CONFIG_AV1_VAAPI_HWACCEL 0
+#define CONFIG_AV1_VDPAU_HWACCEL 0
++#define CONFIG_AV1_VIDEOTOOLBOX_HWACCEL 0
+#define CONFIG_AV1_VULKAN_HWACCEL 0
+#define CONFIG_H263_VAAPI_HWACCEL 0
+#define CONFIG_H263_VIDEOTOOLBOX_HWACCEL 0
@@ -5003,6 +5115,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_DCA_PARSER 0
+#define CONFIG_DIRAC_PARSER 0
+#define CONFIG_DNXHD_PARSER 0
++#define CONFIG_DNXUC_PARSER 0
+#define CONFIG_DOLBY_E_PARSER 0
+#define CONFIG_DPX_PARSER 0
+#define CONFIG_DVAUDIO_PARSER 0
@@ -5394,6 +5507,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_KIRSCH_FILTER 0
+#define CONFIG_LAGFUN_FILTER 0
+#define CONFIG_LATENCY_FILTER 0
++#define CONFIG_LCEVC_FILTER 0
+#define CONFIG_LENSCORRECTION_FILTER 0
+#define CONFIG_LENSFUN_FILTER 0
+#define CONFIG_LIBPLACEBO_FILTER 0
@@ -5589,6 +5703,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_XFADE_OPENCL_FILTER 0
+#define CONFIG_XFADE_VULKAN_FILTER 0
+#define CONFIG_XMEDIAN_FILTER 0
++#define CONFIG_XPSNR_FILTER 0
+#define CONFIG_XSTACK_FILTER 0
+#define CONFIG_YADIF_FILTER 0
+#define CONFIG_YADIF_CUDA_FILTER 0
@@ -5625,6 +5740,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_QRENCODESRC_FILTER 0
+#define CONFIG_PAL75BARS_FILTER 0
+#define CONFIG_PAL100BARS_FILTER 0
++#define CONFIG_PERLIN_FILTER 0
+#define CONFIG_RGBTESTSRC_FILTER 0
+#define CONFIG_SIERPINSKI_FILTER 0
+#define CONFIG_SMPTEBARS_FILTER 0
@@ -6255,13 +6371,13 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#endif /* FFMPEG_CONFIG_COMPONENTS_H */
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/bsf_list.c b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/bsf_list.c
--- a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/bsf_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/bsf_list.c 2024-10-05 16:34:43.823187846 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/bsf_list.c 2025-01-14 12:35:46.000000000 +0000
@@ -0,0 +1,2 @@
+static const FFBitStreamFilter * const bitstream_filters[] = {
+ NULL };
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/codec_list.c b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/codec_list.c
--- a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/codec_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/codec_list.c 2024-10-05 16:34:43.823187846 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/codec_list.c 2025-01-14 12:35:46.000000000 +0000
@@ -0,0 +1,15 @@
+static const FFCodec * const codec_list[] = {
+ &ff_flac_decoder,
@@ -6280,7 +6396,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+ NULL };
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/parser_list.c b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/parser_list.c
--- a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/parser_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/parser_list.c 2024-10-05 16:34:43.823187846 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/parser_list.c 2025-01-14 12:35:46.000000000 +0000
@@ -0,0 +1,7 @@
+static const AVCodecParser * const parser_list[] = {
+ &ff_flac_parser,
@@ -6291,7 +6407,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+ NULL };
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/demuxer_list.c b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/demuxer_list.c
--- a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/demuxer_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/demuxer_list.c 2024-10-05 16:34:43.823187846 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/demuxer_list.c 2025-01-14 12:35:46.000000000 +0000
@@ -0,0 +1,8 @@
+static const FFInputFormat * const demuxer_list[] = {
+ &ff_flac_demuxer,
@@ -6303,19 +6419,19 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+ NULL };
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/muxer_list.c b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/muxer_list.c
--- a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/muxer_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/muxer_list.c 2024-10-05 16:34:43.826521179 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/muxer_list.c 2025-01-14 12:35:46.000000000 +0000
@@ -0,0 +1,2 @@
+static const FFOutputFormat * const muxer_list[] = {
+ NULL };
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/protocol_list.c b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/protocol_list.c
--- a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/protocol_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/protocol_list.c 2024-10-05 16:34:43.826521179 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/protocol_list.c 2025-01-14 12:35:46.000000000 +0000
@@ -0,0 +1,2 @@
+static const URLProtocol * const url_protocols[] = {
+ NULL };
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/avconfig.h b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/avconfig.h
--- a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/avconfig.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/avconfig.h 2024-10-05 16:34:43.826521179 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/avconfig.h 2025-01-14 12:35:46.000000000 +0000
@@ -0,0 +1,6 @@
+/* Generated by ffmpeg configure */
+#ifndef AVUTIL_AVCONFIG_H
@@ -6325,105 +6441,16 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#endif /* AVUTIL_AVCONFIG_H */
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/ffversion.h b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/ffversion.h
--- a/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/ffversion.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/ffversion.h 2024-10-05 16:34:43.826521179 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/ffversion.h 2025-01-14 12:35:46.000000000 +0000
@@ -0,0 +1,5 @@
+/* Automatically generated by version.sh, do not manually edit! */
+#ifndef AVUTIL_FFVERSION_H
+#define AVUTIL_FFVERSION_H
-+#define FFMPEG_VERSION "git-2024-08-15-14d16cd143"
++#define FFMPEG_VERSION "git-2024-10-31-591ae4b02e"
+#endif /* AVUTIL_FFVERSION_H */
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.asm b/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.asm
---- a/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.asm 2024-10-02 03:50:24.674327900 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.asm 2024-10-05 16:34:43.826521179 +0100
-@@ -102,8 +102,8 @@
- %define HAVE_AMD3DNOWEXT_EXTERNAL 1
- %define HAVE_AVX_EXTERNAL 1
- %define HAVE_AVX2_EXTERNAL 1
--%define HAVE_AVX512_EXTERNAL 1
--%define HAVE_AVX512ICL_EXTERNAL 1
-+%define HAVE_AVX512_EXTERNAL 0
-+%define HAVE_AVX512ICL_EXTERNAL 0
- %define HAVE_FMA3_EXTERNAL 1
- %define HAVE_FMA4_EXTERNAL 1
- %define HAVE_MMX_EXTERNAL 1
-@@ -366,7 +366,7 @@
- %define HAVE_INLINE_ASM_LABELS 1
- %define HAVE_INLINE_ASM_NONLOCAL_LABELS 1
- %define HAVE_PRAGMA_DEPRECATED 1
--%define HAVE_RSYNC_CONTIMEOUT 1
-+%define HAVE_RSYNC_CONTIMEOUT 0
- %define HAVE_SYMVER_ASM_LABEL 1
- %define HAVE_SYMVER_GNU_ASM 1
- %define HAVE_VFP_ARGS 0
-@@ -420,7 +420,7 @@
- %define HAVE_PERL 1
- %define HAVE_POD2MAN 1
- %define HAVE_TEXI2HTML 0
--%define HAVE_XMLLINT 1
-+%define HAVE_XMLLINT 0
- %define HAVE_ZLIB_GZIP 0
- %define HAVE_OPENVINO2 0
- %define CONFIG_DOC 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h b/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h
---- a/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2024-10-02 03:50:24.674327900 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2024-10-05 16:34:43.826521179 +0100
-@@ -1,12 +1,12 @@
- /* Automatically generated by configure - do not modify! */
- #ifndef FFMPEG_CONFIG_H
- #define FFMPEG_CONFIG_H
--/* #define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-static --enable-libopus --disable-debug --disable-bzlib --disable-error-resilience --disable-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --disable-iamf --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,mp3' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3,mov' --enable-parser='opus,vorbis,flac,mpegaudio,vp9' --extra-cflags=-I/usr/local/google/home/dalecurtis/code/chrome/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-lto --arch=x86_64 --target-os=linux --enable-pic --cc=clang --cxx=clang++ --ld=clang --extra-ldflags='-fuse-ld=lld'" -- elide long configuration string from binary */
-+/* #define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-static --enable-libopus --disable-debug --disable-bzlib --disable-error-resilience --disable-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --disable-iamf --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,mp3' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3,mov' --enable-parser='opus,vorbis,flac,mpegaudio,vp9' --extra-cflags=-I/home/porter/Workspaces/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-lto --arch=x86_64 --target-os=linux --enable-pic --cc=clang --cxx=clang++ --ld=clang --extra-ldflags='-fuse-ld=lld'" -- elide long configuration string from binary */
- #define FFMPEG_LICENSE "LGPL version 2.1 or later"
- #define CONFIG_THIS_YEAR 2024
- #define FFMPEG_DATADIR "/usr/local/share/ffmpeg"
- #define AVCONV_DATADIR "/usr/local/share/ffmpeg"
--#define CC_IDENT "clang version 19.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project ecea8371ff03c15fb3dc27ee4108b98335fd2d63)"
-+#define CC_IDENT "clang version 20.0.0git (https://chromium.googlesource.com/external/github.com/llvm/llvm-project 7088a5ed880f29129ec844c66068e8cb61ca98bf)"
- #define OS_NAME linux
- #define EXTERN_PREFIX ""
- #define EXTERN_ASM
-@@ -116,8 +116,8 @@
- #define HAVE_AMD3DNOWEXT_EXTERNAL 1
- #define HAVE_AVX_EXTERNAL 1
- #define HAVE_AVX2_EXTERNAL 1
--#define HAVE_AVX512_EXTERNAL 1
--#define HAVE_AVX512ICL_EXTERNAL 1
-+#define HAVE_AVX512_EXTERNAL 0
-+#define HAVE_AVX512ICL_EXTERNAL 0
- #define HAVE_FMA3_EXTERNAL 1
- #define HAVE_FMA4_EXTERNAL 1
- #define HAVE_MMX_EXTERNAL 1
-@@ -380,7 +380,7 @@
- #define HAVE_INLINE_ASM_LABELS 1
- #define HAVE_INLINE_ASM_NONLOCAL_LABELS 1
- #define HAVE_PRAGMA_DEPRECATED 1
--#define HAVE_RSYNC_CONTIMEOUT 1
-+#define HAVE_RSYNC_CONTIMEOUT 0
- #define HAVE_SYMVER_ASM_LABEL 1
- #define HAVE_SYMVER_GNU_ASM 1
- #define HAVE_VFP_ARGS 0
-@@ -434,7 +434,7 @@
- #define HAVE_PERL 1
- #define HAVE_POD2MAN 1
- #define HAVE_TEXI2HTML 0
--#define HAVE_XMLLINT 1
-+#define HAVE_XMLLINT 0
- #define HAVE_ZLIB_GZIP 0
- #define HAVE_OPENVINO2 0
- #define CONFIG_DOC 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/x64/libavutil/ffversion.h b/third_party/ffmpeg/chromium/config/Chromium/linux/x64/libavutil/ffversion.h
---- a/third_party/ffmpeg/chromium/config/Chromium/linux/x64/libavutil/ffversion.h 2024-10-02 03:50:24.675328000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/x64/libavutil/ffversion.h 2024-10-05 16:34:43.829854513 +0100
-@@ -1,5 +1,5 @@
- /* Automatically generated by version.sh, do not manually edit! */
- #ifndef AVUTIL_FFVERSION_H
- #define AVUTIL_FFVERSION_H
--#define FFMPEG_VERSION "N-116575-gd941d9677b"
-+#define FFMPEG_VERSION "git-2024-08-15-14d16cd143"
- #endif /* AVUTIL_FFVERSION_H */
diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/scripts/copy_config.sh b/third_party/ffmpeg/chromium/scripts/copy_config.sh
---- a/third_party/ffmpeg/chromium/scripts/copy_config.sh 2024-10-02 03:50:24.681328800 +0100
-+++ b/third_party/ffmpeg/chromium/scripts/copy_config.sh 2024-10-05 16:34:43.829854513 +0100
+--- a/third_party/ffmpeg/chromium/scripts/copy_config.sh 2024-12-18 22:01:41.000000000 +0000
++++ b/third_party/ffmpeg/chromium/scripts/copy_config.sh 2025-01-14 12:33:32.000000000 +0000
@@ -10,7 +10,7 @@
# Copy config files for various architectures:
# - ia32/x64 have config.asm, config.h
@@ -6434,9 +6461,15 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/scripts/copy_config.sh b
[ ! -e "build.$arch.$os/$target/config.h" ] && continue
for f in config.h config_components.h config.asm libavutil/avconfig.h libavutil/ffversion.h libavcodec/bsf_list.c libavcodec/codec_list.c libavcodec/parser_list.c libavformat/demuxer_list.c libavformat/muxer_list.c libavformat/protocol_list.c; do
diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_party/ffmpeg/ffmpeg_generated.gni
---- a/third_party/ffmpeg/ffmpeg_generated.gni 2024-10-02 03:50:24.721333300 +0100
-+++ b/third_party/ffmpeg/ffmpeg_generated.gni 2024-10-05 16:34:43.829854513 +0100
-@@ -14,10 +14,8 @@
+--- a/third_party/ffmpeg/ffmpeg_generated.gni 2024-12-18 22:01:41.000000000 +0000
++++ b/third_party/ffmpeg/ffmpeg_generated.gni 2025-01-14 12:35:22.000000000 +0000
+@@ -1,4 +1,4 @@
+-# Copyright 2024 The Chromium Authors. All rights reserved.
++# Copyright 2025 The Chromium Authors. All rights reserved.
+ # Use of this source code is governed by a BSD-style license that can be
+ # found in the LICENSE file.
+
+@@ -14,19 +14,13 @@
use_linux_config = is_linux || is_chromeos || is_fuchsia
@@ -6444,13 +6477,117 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- (is_android && current_cpu == "arm" && arm_use_neon) ||
- (is_android && current_cpu == "x86") || is_apple || is_win ||
- use_linux_config) {
-+if ((use_linux_config && current_cpu == "riscv64") ||
-+ (use_linux_config && current_cpu == "x64")) {
++if (use_linux_config && current_cpu == "riscv64") {
ffmpeg_c_sources += [
"libavcodec/ac3_channel_layout_tab.c",
"libavcodec/ac3_parser.c",
-@@ -211,16 +209,26 @@
+ "libavcodec/adts_parser.c",
+ "libavcodec/allcodecs.c",
+- "libavcodec/autorename_libavcodec_flacdsp.c",
+- "libavcodec/autorename_libavcodec_mpegaudiodsp.c",
+ "libavcodec/autorename_libavcodec_parser.c",
+- "libavcodec/autorename_libavcodec_vorbisdsp.c",
+ "libavcodec/avcodec.c",
+ "libavcodec/avdct.c",
+ "libavcodec/avfft.c",
+@@ -47,6 +41,7 @@
+ "libavcodec/flac_parser.c",
+ "libavcodec/flacdata.c",
+ "libavcodec/flacdec.c",
++ "libavcodec/flacdsp.c",
+ "libavcodec/get_buffer.c",
+ "libavcodec/golomb.c",
+ "libavcodec/imgconvert.c",
+@@ -65,6 +60,7 @@
+ "libavcodec/mpegaudiodec_common.c",
+ "libavcodec/mpegaudiodec_fixed.c",
+ "libavcodec/mpegaudiodecheader.c",
++ "libavcodec/mpegaudiodsp.c",
+ "libavcodec/mpegaudiodsp_data.c",
+ "libavcodec/mpegaudiodsp_fixed.c",
+ "libavcodec/mpegaudiodsp_float.c",
+@@ -82,6 +78,8 @@
+ "libavcodec/qsv_api.c",
+ "libavcodec/raw.c",
+ "libavcodec/refstruct.c",
++ "libavcodec/riscv/flacdsp_init.c",
++ "libavcodec/riscv/vorbisdsp_init.c",
+ "libavcodec/threadprogress.c",
+ "libavcodec/to_upper4.c",
+ "libavcodec/utils.c",
+@@ -91,6 +89,7 @@
+ "libavcodec/vorbis_data.c",
+ "libavcodec/vorbis_parser.c",
+ "libavcodec/vorbisdec.c",
++ "libavcodec/vorbisdsp.c",
+ "libavcodec/vp9_parser.c",
+ "libavcodec/xiph.c",
+ "libavformat/allformats.c",
+@@ -145,12 +144,7 @@
+ "libavutil/aes.c",
+ "libavutil/aes_ctr.c",
+ "libavutil/ambient_viewing_environment.c",
+- "libavutil/autorename_libavutil_cpu.c",
+ "libavutil/autorename_libavutil_executor.c",
+- "libavutil/autorename_libavutil_fixed_dsp.c",
+- "libavutil/autorename_libavutil_float_dsp.c",
+- "libavutil/autorename_libavutil_imgutils.c",
+- "libavutil/autorename_libavutil_tx_float.c",
+ "libavutil/autorename_libavutil_utils.c",
+ "libavutil/autorename_libavutil_version.c",
+ "libavutil/avstring.c",
+@@ -159,6 +153,7 @@
+ "libavutil/buffer.c",
+ "libavutil/camellia.c",
+ "libavutil/channel_layout.c",
++ "libavutil/cpu.c",
+ "libavutil/crc.c",
+ "libavutil/csp.c",
+ "libavutil/detection_bbox.c",
+@@ -172,12 +167,15 @@
+ "libavutil/fifo.c",
+ "libavutil/file_open.c",
+ "libavutil/film_grain_params.c",
++ "libavutil/fixed_dsp.c",
++ "libavutil/float_dsp.c",
+ "libavutil/frame.c",
+ "libavutil/hdr_dynamic_metadata.c",
+ "libavutil/hdr_dynamic_vivid_metadata.c",
+ "libavutil/hwcontext.c",
+ "libavutil/hwcontext_stub.c",
+ "libavutil/iamf.c",
++ "libavutil/imgutils.c",
+ "libavutil/integer.c",
+ "libavutil/intmath.c",
+ "libavutil/lfg.c",
+@@ -195,6 +193,11 @@
+ "libavutil/random_seed.c",
+ "libavutil/rational.c",
+ "libavutil/reverse.c",
++ "libavutil/riscv/autorename_libavutil_riscv_cpu.c",
++ "libavutil/riscv/cpu_common.c",
++ "libavutil/riscv/fixed_dsp_init.c",
++ "libavutil/riscv/float_dsp_init.c",
++ "libavutil/riscv/lls_init.c",
+ "libavutil/samplefmt.c",
+ "libavutil/sha.c",
+ "libavutil/slicethread.c",
+@@ -207,22 +210,41 @@
+ "libavutil/timestamp.c",
+ "libavutil/twofish.c",
+ "libavutil/tx.c",
++ "libavutil/tx_float.c",
+ "libavutil/uuid.c",
+ "libavutil/video_enc_params.c",
+ "libavutil/video_hint.c",
]
++ ffmpeg_gas_sources += [
++ "libavcodec/riscv/flacdsp_rvv.S",
++ "libavcodec/riscv/vorbisdsp_rvv.S",
++ "libavutil/riscv/fixed_dsp_rvv.S",
++ "libavutil/riscv/float_dsp_rvv.S",
++ "libavutil/riscv/lls_rvv.S",
++ ]
}
-if ((current_cpu == "arm64" && ffmpeg_branding == "Chrome") ||
@@ -6459,13 +6596,15 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- (is_apple && ffmpeg_branding == "Chrome") ||
- (is_win && ffmpeg_branding == "Chrome") ||
- (use_linux_config && ffmpeg_branding == "Chrome")) {
-+if ((use_linux_config && current_cpu == "riscv64" &&
-+ ffmpeg_branding == "Chrome") ||
-+ (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "Chrome")) {
++if (use_linux_config && current_cpu == "riscv64" &&
++ ffmpeg_branding == "Chrome") {
ffmpeg_c_sources += [
+ "libavcodec/aac/aacdec.c",
++ "libavcodec/aac/aacdec_ac.c",
+ "libavcodec/aac/aacdec_float.c",
++ "libavcodec/aac/aacdec_lpd.c",
+ "libavcodec/aac/aacdec_tab.c",
++ "libavcodec/aac/aacdec_usac.c",
+ "libavcodec/aac_ac3_parser.c",
+ "libavcodec/aac_parser.c",
+ "libavcodec/aacps_common.c",
@@ -6475,14 +6614,13 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
+ "libavcodec/aactab.c",
+ "libavcodec/adts_header.c",
"libavcodec/atsc_a53.c",
-+ "libavcodec/autorename_libavcodec_sbrdsp.c",
"libavcodec/autorename_libavcodec_videodsp.c",
"libavcodec/cabac.c",
+ "libavcodec/cbrt_data.c",
"libavcodec/h2645_parse.c",
"libavcodec/h2645_sei.c",
"libavcodec/h2645_vui.c",
-@@ -245,46 +253,27 @@
+@@ -247,236 +269,30 @@
"libavcodec/h264pred.c",
"libavcodec/h264qpel.c",
"libavcodec/h274.c",
@@ -6500,8 +6638,11 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- (use_linux_config && ffmpeg_branding == "Chrome")) {
- ffmpeg_c_sources += [
- "libavcodec/aac/aacdec.c",
+- "libavcodec/aac/aacdec_ac.c",
- "libavcodec/aac/aacdec_float.c",
+- "libavcodec/aac/aacdec_lpd.c",
- "libavcodec/aac/aacdec_tab.c",
+- "libavcodec/aac/aacdec_usac.c",
- "libavcodec/aac_ac3_parser.c",
- "libavcodec/aac_parser.c",
- "libavcodec/aacps_common.c",
@@ -6513,44 +6654,47 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- "libavcodec/autorename_libavcodec_sbrdsp.c",
- "libavcodec/cbrt_data.c",
"libavcodec/kbdwin.c",
++ "libavcodec/riscv/aacpsdsp_init.c",
++ "libavcodec/riscv/h264_chroma_init_riscv.c",
++ "libavcodec/riscv/h264dsp_init.c",
++ "libavcodec/riscv/h264qpel_init.c",
++ "libavcodec/riscv/sbrdsp_init.c",
++ "libavcodec/riscv/videodsp_init.c",
++ "libavcodec/sbrdsp.c",
"libavcodec/sinewin.c",
+ "libavcodec/startcode.c",
"libavformat/apetag.c",
"libavformat/autorename_libavformat_aacdec.c",
"libavformat/img2.c",
]
- }
-
+-}
+-
-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
- (is_win && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
- (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome")) {
-+if (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "Chrome") {
-+ ffmpeg_c_sources += [
-+ "libavcodec/x86/autorename_libavcodec_x86_aacpsdsp_init.c",
-+ "libavcodec/x86/autorename_libavcodec_x86_h264dsp_init.c",
-+ "libavcodec/x86/autorename_libavcodec_x86_sbrdsp_init.c",
-+ "libavcodec/x86/h264_intrapred_init.c",
-+ "libavcodec/x86/h264_qpel.c",
-+ "libavcodec/x86/h264chroma_init.c",
-+ "libavcodec/x86/videodsp_init.c",
-+ ]
- ffmpeg_asm_sources += [
- "libavcodec/x86/aacpsdsp.asm",
+- ffmpeg_asm_sources += [
+- "libavcodec/x86/aacpsdsp.asm",
- "libavcodec/x86/autorename_libavcodec_x86_videodsp.asm",
- "libavcodec/x86/fpel.asm",
- "libavcodec/x86/h264_chromamc.asm",
- "libavcodec/x86/h264_chromamc_10bit.asm",
-@@ -300,36 +289,23 @@
- "libavcodec/x86/h264_weight_10bit.asm",
- "libavcodec/x86/qpel.asm",
- "libavcodec/x86/sbrdsp.asm",
-+ "libavcodec/x86/videodsp.asm",
- ]
- }
-
+- "libavcodec/x86/fpel.asm",
+- "libavcodec/x86/h264_chromamc.asm",
+- "libavcodec/x86/h264_chromamc_10bit.asm",
+- "libavcodec/x86/h264_deblock.asm",
+- "libavcodec/x86/h264_deblock_10bit.asm",
+- "libavcodec/x86/h264_idct.asm",
+- "libavcodec/x86/h264_idct_10bit.asm",
+- "libavcodec/x86/h264_intrapred.asm",
+- "libavcodec/x86/h264_intrapred_10bit.asm",
+- "libavcodec/x86/h264_qpel_10bit.asm",
+- "libavcodec/x86/h264_qpel_8bit.asm",
+- "libavcodec/x86/h264_weight.asm",
+- "libavcodec/x86/h264_weight_10bit.asm",
+- "libavcodec/x86/qpel.asm",
+- "libavcodec/x86/sbrdsp.asm",
+- ]
+-}
+-
-if (current_cpu == "arm64" && ffmpeg_branding == "Chrome") {
-+if (use_linux_config && current_cpu == "x64") {
- ffmpeg_c_sources += [
+- ffmpeg_c_sources += [
- "libavcodec/aarch64/aacpsdsp_init_aarch64.c",
- "libavcodec/aarch64/autorename_libavcodec_aarch64_videodsp_init.c",
- "libavcodec/aarch64/h264chroma_init_aarch64.c",
@@ -6569,41 +6713,55 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- "libavcodec/aarch64/autorename_libavcodec_aarch64_hpeldsp_neon.S",
- "libavcodec/aarch64/autorename_libavcodec_aarch64_sbrdsp_neon.S",
- "libavcodec/aarch64/videodsp.S",
-+ "libavcodec/x86/autorename_libavcodec_x86_flacdsp_init.c",
-+ "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c",
-+ "libavcodec/x86/constants.c",
-+ "libavcodec/x86/mpegaudiodsp.c",
-+ "libavutil/x86/autorename_libavutil_x86_cpu.c",
-+ "libavutil/x86/autorename_libavutil_x86_fixed_dsp_init.c",
-+ "libavutil/x86/autorename_libavutil_x86_float_dsp_init.c",
-+ "libavutil/x86/imgutils_init.c",
-+ "libavutil/x86/lls_init.c",
-+ "libavutil/x86/tx_float_init.c",
- ]
+- ]
-}
-
-if (current_cpu == "x64" || (is_win && current_cpu == "x86") ||
- (use_linux_config && current_cpu == "x86")) {
- ffmpeg_c_sources +=
- [ "libavutil/x86/autorename_libavutil_x86_tx_float_init.c" ]
- ffmpeg_asm_sources += [
- "libavcodec/x86/dct32.asm",
- "libavcodec/x86/flacdsp.asm",
-@@ -344,133 +320,35 @@
- ]
- }
-
+- ffmpeg_asm_sources += [
+- "libavcodec/x86/dct32.asm",
+- "libavcodec/x86/flacdsp.asm",
+- "libavcodec/x86/imdct36.asm",
+- "libavcodec/x86/vorbisdsp.asm",
+- "libavutil/x86/cpuid.asm",
+- "libavutil/x86/fixed_dsp.asm",
+- "libavutil/x86/float_dsp.asm",
+- "libavutil/x86/imgutils.asm",
+- "libavutil/x86/lls.asm",
+- "libavutil/x86/tx_float.asm",
+- ]
+-}
+-
+-if (current_cpu == "arm64") {
+- ffmpeg_c_sources += [
+- "libavcodec/aarch64/autorename_libavcodec_aarch64_vorbisdsp_init.c",
+- "libavcodec/aarch64/mpegaudiodsp_init.c",
+- "libavutil/aarch64/autorename_libavutil_aarch64_cpu.c",
+- "libavutil/aarch64/autorename_libavutil_aarch64_float_dsp_init.c",
+- "libavutil/aarch64/tx_float_init.c",
+- ]
+- ffmpeg_gas_sources += [
+- "libavcodec/aarch64/autorename_libavcodec_aarch64_vorbisdsp_neon.S",
+- "libavcodec/aarch64/mpegaudiodsp_neon.S",
+- "libavutil/aarch64/autorename_libavutil_aarch64_float_dsp_neon.S",
+- "libavutil/aarch64/cpu_sve.S",
+- "libavutil/aarch64/tx_float_neon.S",
+- ]
+-}
+-
-if (current_cpu == "x64" || (is_android && current_cpu == "x86") ||
- (is_win && current_cpu == "x86") ||
- (use_linux_config && current_cpu == "x86")) {
- ffmpeg_c_sources += [
-- "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c",
- "libavcodec/x86/constants.c",
- "libavcodec/x86/flacdsp_init.c",
- "libavcodec/x86/mpegaudiodsp.c",
+- "libavcodec/x86/vorbisdsp_init.c",
- "libavutil/x86/autorename_libavutil_x86_cpu.c",
-- "libavutil/x86/autorename_libavutil_x86_float_dsp_init.c",
- "libavutil/x86/fixed_dsp_init.c",
+- "libavutil/x86/float_dsp_init.c",
- "libavutil/x86/imgutils_init.c",
- "libavutil/x86/lls_init.c",
- ]
@@ -6616,7 +6774,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- "libavcodec/arm/flacdsp_init_arm.c",
- "libavcodec/arm/mpegaudiodsp_init_arm.c",
- "libavcodec/arm/vorbisdsp_init_arm.c",
-- "libavutil/arm/autorename_libavutil_arm_cpu.c",
+- "libavutil/arm/cpu.c",
- "libavutil/arm/float_dsp_init_arm.c",
- "libavutil/arm/float_dsp_init_vfp.c",
- ]
@@ -6627,22 +6785,6 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- ]
-}
-
--if (current_cpu == "arm64") {
-- ffmpeg_c_sources += [
-- "libavcodec/aarch64/mpegaudiodsp_init.c",
-- "libavcodec/aarch64/vorbisdsp_init.c",
-- "libavutil/aarch64/cpu.c",
-- "libavutil/aarch64/float_dsp_init.c",
-- "libavutil/aarch64/tx_float_init.c",
-- ]
-- ffmpeg_gas_sources += [
-- "libavcodec/aarch64/autorename_libavcodec_aarch64_vorbisdsp_neon.S",
-- "libavcodec/aarch64/mpegaudiodsp_neon.S",
-- "libavutil/aarch64/autorename_libavutil_aarch64_float_dsp_neon.S",
-- "libavutil/aarch64/tx_float_neon.S",
-- ]
--}
--
-if ((use_linux_config && current_cpu == "arm" && arm_use_neon &&
- ffmpeg_branding == "Chrome") ||
- (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome")) {
@@ -6654,11 +6796,21 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- "libavcodec/arm/videodsp_init_arm.c",
- "libavcodec/arm/videodsp_init_armv5te.c",
- ]
-- ffmpeg_gas_sources += [
+ ffmpeg_gas_sources += [
- "libavcodec/arm/startcode_armv6.S",
- "libavcodec/arm/videodsp_armv5te.S",
-- ]
--}
++ "libavcodec/riscv/aacpsdsp_rvv.S",
++ "libavcodec/riscv/h264_mc_chroma.S",
++ "libavcodec/riscv/h264addpx_rvv.S",
++ "libavcodec/riscv/h264dsp_rvv.S",
++ "libavcodec/riscv/h264idct_rvv.S",
++ "libavcodec/riscv/h264qpel_rvv.S",
++ "libavcodec/riscv/sbrdsp_rvv.S",
++ "libavcodec/riscv/startcode_rvb.S",
++ "libavcodec/riscv/startcode_rvv.S",
++ "libavcodec/riscv/videodsp.S",
+ ]
+ }
-
-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
- (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
@@ -6676,8 +6828,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
-}
-
-if (use_linux_config && current_cpu == "arm" && arm_use_neon &&
-+if (use_linux_config && current_cpu == "riscv64" &&
- ffmpeg_branding == "Chrome") {
+- ffmpeg_branding == "Chrome") {
- ffmpeg_gas_sources += [
- "libavcodec/arm/h264cmc_neon.S",
- "libavcodec/arm/h264dsp_neon.S",
@@ -6685,58 +6836,38 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- "libavcodec/arm/h264pred_neon.S",
- "libavcodec/arm/h264qpel_neon.S",
- "libavcodec/arm/hpeldsp_neon.S",
-+ ffmpeg_c_sources += [
-+ "libavcodec/riscv/aacpsdsp_init.c",
-+ "libavcodec/riscv/h264_chroma_init_riscv.c",
-+ "libavcodec/riscv/h264dsp_init.c",
-+ "libavcodec/riscv/sbrdsp_init.c",
- ]
+- ]
-}
-
-if ((is_android && current_cpu == "arm" && arm_use_neon) ||
- (use_linux_config && current_cpu == "arm" && arm_use_neon)) {
- ffmpeg_c_sources += [ "libavutil/arm/float_dsp_init_neon.c" ]
- ffmpeg_gas_sources += [
+- ffmpeg_gas_sources += [
- "libavcodec/arm/vorbisdsp_neon.S",
- "libavutil/arm/float_dsp_neon.S",
-+ "libavcodec/riscv/aacpsdsp_rvv.S",
-+ "libavcodec/riscv/h264_mc_chroma.S",
-+ "libavcodec/riscv/sbrdsp_rvv.S",
-+ "libavcodec/riscv/startcode_rvb.S",
-+ "libavcodec/riscv/startcode_rvv.S",
- ]
- }
-
+- ]
+-}
+-
-if ((is_android && current_cpu == "arm" && arm_use_neon &&
- ffmpeg_branding == "Chrome") ||
- (use_linux_config && current_cpu == "arm" && arm_use_neon &&
- ffmpeg_branding == "Chrome") ||
- (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome")) {
-+if (use_linux_config && current_cpu == "riscv64") {
- ffmpeg_c_sources += [
+- ffmpeg_c_sources += [
- "libavcodec/arm/aacpsdsp_init_arm.c",
- "libavcodec/arm/sbrdsp_init_arm.c",
-+ "libavcodec/riscv/flacdsp_init.c",
-+ "libavcodec/riscv/vorbisdsp_init.c",
-+ "libavutil/riscv/cpu.c",
-+ "libavutil/riscv/fixed_dsp_init.c",
-+ "libavutil/riscv/float_dsp_init.c",
- ]
+- ]
-}
-
-if ((is_android && current_cpu == "arm" && arm_use_neon &&
- ffmpeg_branding == "Chrome") ||
- (use_linux_config && current_cpu == "arm" && arm_use_neon &&
- ffmpeg_branding == "Chrome")) {
- ffmpeg_gas_sources += [
+- ffmpeg_gas_sources += [
- "libavcodec/arm/aacpsdsp_neon.S",
- "libavcodec/arm/sbrdsp_neon.S",
-+ "libavcodec/riscv/flacdsp_rvv.S",
-+ "libavcodec/riscv/vorbisdsp_rvv.S",
-+ "libavutil/riscv/fixed_dsp_rvv.S",
-+ "libavutil/riscv/float_dsp_rvv.S",
- ]
- }
+- ]
+-}
-
-if ((is_android && current_cpu == "arm" && arm_use_neon) ||
- (is_android && current_cpu == "arm64") ||
@@ -6744,180 +6875,86 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- (is_android && current_cpu == "x86")) {
- ffmpeg_c_sources += [ "compat/strtod.c" ]
-}
-diff '--color=auto' -Naur a/third_party/ffmpeg/libavcodec/autorename_libavcodec_flacdsp.c b/third_party/ffmpeg/libavcodec/autorename_libavcodec_flacdsp.c
---- a/third_party/ffmpeg/libavcodec/autorename_libavcodec_flacdsp.c 2024-10-02 03:50:25.062372700 +0100
-+++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_flacdsp.c 2024-10-05 16:34:43.829854513 +0100
-@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
- #include "flacdsp.c"
-diff '--color=auto' -Naur a/third_party/ffmpeg/libavcodec/autorename_libavcodec_mpegaudiodsp.c b/third_party/ffmpeg/libavcodec/autorename_libavcodec_mpegaudiodsp.c
---- a/third_party/ffmpeg/libavcodec/autorename_libavcodec_mpegaudiodsp.c 2024-10-02 03:50:25.062372700 +0100
-+++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_mpegaudiodsp.c 2024-10-05 16:34:43.829854513 +0100
+diff '--color=auto' -Naur a/third_party/ffmpeg/libavcodec/autorename_libavcodec_parser.c b/third_party/ffmpeg/libavcodec/autorename_libavcodec_parser.c
+--- a/third_party/ffmpeg/libavcodec/autorename_libavcodec_parser.c 2024-12-18 22:01:41.000000000 +0000
++++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_parser.c 2025-01-14 12:35:18.000000000 +0000
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
- #include "mpegaudiodsp.c"
-diff '--color=auto' -Naur a/third_party/ffmpeg/libavcodec/autorename_libavcodec_sbrdsp.c b/third_party/ffmpeg/libavcodec/autorename_libavcodec_sbrdsp.c
---- a/third_party/ffmpeg/libavcodec/autorename_libavcodec_sbrdsp.c 2024-10-02 03:50:25.063372600 +0100
-+++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_sbrdsp.c 2024-10-05 16:34:43.829854513 +0100
-@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
- #include "sbrdsp.c"
+-// Automatically generated on Tue Oct 22 17:56:01 2024. See crbug.com/495833.
++// Automatically generated on Tue Jan 14 12:35:17 2025. See crbug.com/495833.
+ #include "parser.c"
diff '--color=auto' -Naur a/third_party/ffmpeg/libavcodec/autorename_libavcodec_videodsp.c b/third_party/ffmpeg/libavcodec/autorename_libavcodec_videodsp.c
---- a/third_party/ffmpeg/libavcodec/autorename_libavcodec_videodsp.c 2024-10-02 03:50:25.063372600 +0100
-+++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_videodsp.c 2024-10-05 16:34:43.829854513 +0100
+--- a/third_party/ffmpeg/libavcodec/autorename_libavcodec_videodsp.c 2024-12-18 22:01:41.000000000 +0000
++++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_videodsp.c 2025-01-14 12:35:18.000000000 +0000
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
+-// Automatically generated on Tue Oct 22 17:56:01 2024. See crbug.com/495833.
++// Automatically generated on Tue Jan 14 12:35:17 2025. See crbug.com/495833.
#include "videodsp.c"
-diff '--color=auto' -Naur a/third_party/ffmpeg/libavcodec/autorename_libavcodec_vorbisdsp.c b/third_party/ffmpeg/libavcodec/autorename_libavcodec_vorbisdsp.c
---- a/third_party/ffmpeg/libavcodec/autorename_libavcodec_vorbisdsp.c 2024-10-02 03:50:25.063372600 +0100
-+++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_vorbisdsp.c 2024-10-05 16:34:43.829854513 +0100
-@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
- #include "vorbisdsp.c"
-diff '--color=auto' -Naur a/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_aacpsdsp_init.c b/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_aacpsdsp_init.c
---- a/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_aacpsdsp_init.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_aacpsdsp_init.c 2024-10-05 16:34:43.829854513 +0100
-@@ -0,0 +1,2 @@
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
-+#include "aacpsdsp_init.c"
-diff '--color=auto' -Naur a/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_flacdsp_init.c b/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_flacdsp_init.c
---- a/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_flacdsp_init.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_flacdsp_init.c 2024-10-05 16:34:43.833187847 +0100
-@@ -0,0 +1,2 @@
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
-+#include "flacdsp_init.c"
-diff '--color=auto' -Naur a/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_h264dsp_init.c b/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_h264dsp_init.c
---- a/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_h264dsp_init.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_h264dsp_init.c 2024-10-05 16:34:43.833187847 +0100
-@@ -0,0 +1,2 @@
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
-+#include "h264dsp_init.c"
-diff '--color=auto' -Naur a/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_sbrdsp_init.c b/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_sbrdsp_init.c
---- a/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_sbrdsp_init.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_sbrdsp_init.c 2024-10-05 16:34:43.833187847 +0100
-@@ -0,0 +1,2 @@
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
-+#include "sbrdsp_init.c"
-diff '--color=auto' -Naur a/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c b/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c
---- a/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c 2024-10-02 03:50:25.603434800 +0100
-+++ b/third_party/ffmpeg/libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c 2024-10-05 16:34:43.833187847 +0100
-@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
- #include "vorbisdsp_init.c"
diff '--color=auto' -Naur a/third_party/ffmpeg/libavformat/autorename_libavformat_aacdec.c b/third_party/ffmpeg/libavformat/autorename_libavformat_aacdec.c
---- a/third_party/ffmpeg/libavformat/autorename_libavformat_aacdec.c 2024-10-02 03:50:25.818459500 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_aacdec.c 2024-10-05 16:34:43.833187847 +0100
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_aacdec.c 2024-12-18 22:01:41.000000000 +0000
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_aacdec.c 2025-01-14 12:35:18.000000000 +0000
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
+-// Automatically generated on Tue Oct 22 17:56:01 2024. See crbug.com/495833.
++// Automatically generated on Tue Jan 14 12:35:17 2025. See crbug.com/495833.
#include "aacdec.c"
diff '--color=auto' -Naur a/third_party/ffmpeg/libavformat/autorename_libavformat_flacdec.c b/third_party/ffmpeg/libavformat/autorename_libavformat_flacdec.c
---- a/third_party/ffmpeg/libavformat/autorename_libavformat_flacdec.c 2024-10-02 03:50:25.818459500 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_flacdec.c 2024-10-05 16:34:43.833187847 +0100
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_flacdec.c 2024-12-18 22:01:41.000000000 +0000
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_flacdec.c 2025-01-14 12:35:18.000000000 +0000
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
+-// Automatically generated on Tue Oct 22 17:56:01 2024. See crbug.com/495833.
++// Automatically generated on Tue Jan 14 12:35:17 2025. See crbug.com/495833.
#include "flacdec.c"
diff '--color=auto' -Naur a/third_party/ffmpeg/libavformat/autorename_libavformat_options.c b/third_party/ffmpeg/libavformat/autorename_libavformat_options.c
---- a/third_party/ffmpeg/libavformat/autorename_libavformat_options.c 2024-10-02 03:50:25.818459500 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_options.c 2024-10-05 16:34:43.833187847 +0100
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_options.c 2024-12-18 22:01:41.000000000 +0000
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_options.c 2025-01-14 12:35:18.000000000 +0000
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
+-// Automatically generated on Tue Oct 22 17:56:01 2024. See crbug.com/495833.
++// Automatically generated on Tue Jan 14 12:35:17 2025. See crbug.com/495833.
#include "options.c"
diff '--color=auto' -Naur a/third_party/ffmpeg/libavformat/autorename_libavformat_pcm.c b/third_party/ffmpeg/libavformat/autorename_libavformat_pcm.c
---- a/third_party/ffmpeg/libavformat/autorename_libavformat_pcm.c 2024-10-02 03:50:25.818459500 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_pcm.c 2024-10-05 16:34:43.833187847 +0100
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_pcm.c 2024-12-18 22:01:41.000000000 +0000
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_pcm.c 2025-01-14 12:35:18.000000000 +0000
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
+-// Automatically generated on Tue Oct 22 17:56:01 2024. See crbug.com/495833.
++// Automatically generated on Tue Jan 14 12:35:17 2025. See crbug.com/495833.
#include "pcm.c"
diff '--color=auto' -Naur a/third_party/ffmpeg/libavformat/autorename_libavformat_utils.c b/third_party/ffmpeg/libavformat/autorename_libavformat_utils.c
---- a/third_party/ffmpeg/libavformat/autorename_libavformat_utils.c 2024-10-02 03:50:25.818459500 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_utils.c 2024-10-05 16:34:43.833187847 +0100
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_utils.c 2024-12-18 22:01:41.000000000 +0000
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_utils.c 2025-01-14 12:35:18.000000000 +0000
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
+-// Automatically generated on Tue Oct 22 17:56:01 2024. See crbug.com/495833.
++// Automatically generated on Tue Jan 14 12:35:17 2025. See crbug.com/495833.
#include "utils.c"
diff '--color=auto' -Naur a/third_party/ffmpeg/libavformat/autorename_libavformat_version.c b/third_party/ffmpeg/libavformat/autorename_libavformat_version.c
---- a/third_party/ffmpeg/libavformat/autorename_libavformat_version.c 2024-10-02 03:50:25.818459500 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_version.c 2024-10-05 16:34:43.833187847 +0100
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_version.c 2024-12-18 22:01:41.000000000 +0000
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_version.c 2025-01-14 12:35:18.000000000 +0000
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
+-// Automatically generated on Tue Oct 22 17:56:01 2024. See crbug.com/495833.
++// Automatically generated on Tue Jan 14 12:35:17 2025. See crbug.com/495833.
#include "version.c"
-diff '--color=auto' -Naur a/third_party/ffmpeg/libavutil/autorename_libavutil_cpu.c b/third_party/ffmpeg/libavutil/autorename_libavutil_cpu.c
---- a/third_party/ffmpeg/libavutil/autorename_libavutil_cpu.c 2024-10-02 03:50:25.950474700 +0100
-+++ b/third_party/ffmpeg/libavutil/autorename_libavutil_cpu.c 2024-10-05 16:34:43.836521180 +0100
-@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
- #include "cpu.c"
-diff '--color=auto' -Naur a/third_party/ffmpeg/libavutil/autorename_libavutil_fixed_dsp.c b/third_party/ffmpeg/libavutil/autorename_libavutil_fixed_dsp.c
---- a/third_party/ffmpeg/libavutil/autorename_libavutil_fixed_dsp.c 2024-10-02 03:50:25.950474700 +0100
-+++ b/third_party/ffmpeg/libavutil/autorename_libavutil_fixed_dsp.c 2024-10-05 16:34:43.836521180 +0100
-@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
- #include "fixed_dsp.c"
-diff '--color=auto' -Naur a/third_party/ffmpeg/libavutil/autorename_libavutil_float_dsp.c b/third_party/ffmpeg/libavutil/autorename_libavutil_float_dsp.c
---- a/third_party/ffmpeg/libavutil/autorename_libavutil_float_dsp.c 2024-10-02 03:50:25.950474700 +0100
-+++ b/third_party/ffmpeg/libavutil/autorename_libavutil_float_dsp.c 2024-10-05 16:34:43.836521180 +0100
-@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
- #include "float_dsp.c"
-diff '--color=auto' -Naur a/third_party/ffmpeg/libavutil/autorename_libavutil_imgutils.c b/third_party/ffmpeg/libavutil/autorename_libavutil_imgutils.c
---- a/third_party/ffmpeg/libavutil/autorename_libavutil_imgutils.c 2024-10-02 03:50:25.950474700 +0100
-+++ b/third_party/ffmpeg/libavutil/autorename_libavutil_imgutils.c 2024-10-05 16:34:43.836521180 +0100
+diff '--color=auto' -Naur a/third_party/ffmpeg/libavutil/autorename_libavutil_executor.c b/third_party/ffmpeg/libavutil/autorename_libavutil_executor.c
+--- a/third_party/ffmpeg/libavutil/autorename_libavutil_executor.c 2024-12-18 22:01:41.000000000 +0000
++++ b/third_party/ffmpeg/libavutil/autorename_libavutil_executor.c 2025-01-14 12:35:18.000000000 +0000
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
- #include "imgutils.c"
-diff '--color=auto' -Naur a/third_party/ffmpeg/libavutil/autorename_libavutil_tx_float.c b/third_party/ffmpeg/libavutil/autorename_libavutil_tx_float.c
---- a/third_party/ffmpeg/libavutil/autorename_libavutil_tx_float.c 2024-10-02 03:50:25.950474700 +0100
-+++ b/third_party/ffmpeg/libavutil/autorename_libavutil_tx_float.c 2024-10-05 16:34:43.836521180 +0100
-@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
- #include "tx_float.c"
+-// Automatically generated on Tue Oct 22 17:56:01 2024. See crbug.com/495833.
++// Automatically generated on Tue Jan 14 12:35:17 2025. See crbug.com/495833.
+ #include "executor.c"
diff '--color=auto' -Naur a/third_party/ffmpeg/libavutil/autorename_libavutil_utils.c b/third_party/ffmpeg/libavutil/autorename_libavutil_utils.c
---- a/third_party/ffmpeg/libavutil/autorename_libavutil_utils.c 2024-10-02 03:50:25.950474700 +0100
-+++ b/third_party/ffmpeg/libavutil/autorename_libavutil_utils.c 2024-10-05 16:34:43.836521180 +0100
+--- a/third_party/ffmpeg/libavutil/autorename_libavutil_utils.c 2024-12-18 22:01:41.000000000 +0000
++++ b/third_party/ffmpeg/libavutil/autorename_libavutil_utils.c 2025-01-14 12:35:18.000000000 +0000
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
+-// Automatically generated on Tue Oct 22 17:56:01 2024. See crbug.com/495833.
++// Automatically generated on Tue Jan 14 12:35:17 2025. See crbug.com/495833.
#include "utils.c"
diff '--color=auto' -Naur a/third_party/ffmpeg/libavutil/autorename_libavutil_version.c b/third_party/ffmpeg/libavutil/autorename_libavutil_version.c
---- a/third_party/ffmpeg/libavutil/autorename_libavutil_version.c 2024-10-02 03:50:25.950474700 +0100
-+++ b/third_party/ffmpeg/libavutil/autorename_libavutil_version.c 2024-10-05 16:34:43.836521180 +0100
+--- a/third_party/ffmpeg/libavutil/autorename_libavutil_version.c 2024-12-18 22:01:41.000000000 +0000
++++ b/third_party/ffmpeg/libavutil/autorename_libavutil_version.c 2025-01-14 12:35:18.000000000 +0000
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
+-// Automatically generated on Tue Oct 22 17:56:01 2024. See crbug.com/495833.
++// Automatically generated on Tue Jan 14 12:35:17 2025. See crbug.com/495833.
#include "version.c"
-diff '--color=auto' -Naur a/third_party/ffmpeg/libavutil/x86/autorename_libavutil_x86_cpu.c b/third_party/ffmpeg/libavutil/x86/autorename_libavutil_x86_cpu.c
---- a/third_party/ffmpeg/libavutil/x86/autorename_libavutil_x86_cpu.c 2024-10-02 03:50:25.987479000 +0100
-+++ b/third_party/ffmpeg/libavutil/x86/autorename_libavutil_x86_cpu.c 2024-10-05 16:34:43.836521180 +0100
-@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
- #include "cpu.c"
-diff '--color=auto' -Naur a/third_party/ffmpeg/libavutil/x86/autorename_libavutil_x86_fixed_dsp_init.c b/third_party/ffmpeg/libavutil/x86/autorename_libavutil_x86_fixed_dsp_init.c
---- a/third_party/ffmpeg/libavutil/x86/autorename_libavutil_x86_fixed_dsp_init.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/libavutil/x86/autorename_libavutil_x86_fixed_dsp_init.c 2024-10-05 16:34:43.836521180 +0100
+diff '--color=auto' -Naur a/third_party/ffmpeg/libavutil/riscv/autorename_libavutil_riscv_cpu.c b/third_party/ffmpeg/libavutil/riscv/autorename_libavutil_riscv_cpu.c
+--- a/third_party/ffmpeg/libavutil/riscv/autorename_libavutil_riscv_cpu.c 1970-01-01 01:00:00.000000000 +0100
++++ b/third_party/ffmpeg/libavutil/riscv/autorename_libavutil_riscv_cpu.c 2025-01-14 12:35:18.000000000 +0000
@@ -0,0 +1,2 @@
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
-+#include "fixed_dsp_init.c"
-diff '--color=auto' -Naur a/third_party/ffmpeg/libavutil/x86/autorename_libavutil_x86_float_dsp_init.c b/third_party/ffmpeg/libavutil/x86/autorename_libavutil_x86_float_dsp_init.c
---- a/third_party/ffmpeg/libavutil/x86/autorename_libavutil_x86_float_dsp_init.c 2024-10-02 03:50:25.987479000 +0100
-+++ b/third_party/ffmpeg/libavutil/x86/autorename_libavutil_x86_float_dsp_init.c 2024-10-05 16:34:43.836521180 +0100
-@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jul 22 22:30:21 2024. See crbug.com/495833.
-+// Automatically generated on Sun Sep 15 16:34:25 2024. See crbug.com/495833.
- #include "float_dsp_init.c"
++// Automatically generated on Tue Jan 14 12:35:17 2025. See crbug.com/495833.
++#include "cpu.c"
diff --git a/www-client/chromium/files/riscv-misc.patch b/www-client/chromium/files/riscv-misc.patch
index 81714c8..cf8cbfb 100644
--- a/www-client/chromium/files/riscv-misc.patch
+++ b/www-client/chromium/files/riscv-misc.patch
@@ -1,7 +1,7 @@
-Index: chromium-130.0.6723.116/components/metrics/debug/metrics_internals_utils.cc
+Index: chromium-132.0.6834.83/components/metrics/debug/metrics_internals_utils.cc
===================================================================
---- chromium-130.0.6723.116.orig/components/metrics/debug/metrics_internals_utils.cc
-+++ chromium-130.0.6723.116/components/metrics/debug/metrics_internals_utils.cc
+--- chromium-132.0.6834.83.orig/components/metrics/debug/metrics_internals_utils.cc
++++ chromium-132.0.6834.83/components/metrics/debug/metrics_internals_utils.cc
@@ -69,6 +69,8 @@ std::string CpuArchitectureToString(
return "arm32";
case variations::Study::TRANSLATED_X86_64:
@@ -9,12 +9,12 @@ Index: chromium-130.0.6723.116/components/metrics/debug/metrics_internals_utils.
+ case variations::Study::RISCV64:
+ return "riscv64";
}
- NOTREACHED_IN_MIGRATION();
+ NOTREACHED();
}
-Index: chromium-130.0.6723.116/components/variations/proto/study.proto
+Index: chromium-132.0.6834.83/components/variations/proto/study.proto
===================================================================
---- chromium-130.0.6723.116.orig/components/variations/proto/study.proto
-+++ chromium-130.0.6723.116/components/variations/proto/study.proto
+--- chromium-132.0.6834.83.orig/components/variations/proto/study.proto
++++ chromium-132.0.6834.83/components/variations/proto/study.proto
@@ -262,6 +262,8 @@ message Study {
// A Mac-only value, indicating an x86-64 binary running on an arm64 host
// via "Rosetta 2" binary translation.
@@ -24,11 +24,11 @@ Index: chromium-130.0.6723.116/components/variations/proto/study.proto
}
// Enum to pass as optional bool.
-Index: chromium-130.0.6723.116/components/variations/service/variations_field_trial_creator_base.cc
+Index: chromium-132.0.6834.83/components/variations/service/variations_field_trial_creator_base.cc
===================================================================
---- chromium-130.0.6723.116.orig/components/variations/service/variations_field_trial_creator_base.cc
-+++ chromium-130.0.6723.116/components/variations/service/variations_field_trial_creator_base.cc
-@@ -120,6 +120,9 @@ Study::CpuArchitecture GetCurrentCpuArch
+--- chromium-132.0.6834.83.orig/components/variations/service/variations_field_trial_creator_base.cc
++++ chromium-132.0.6834.83/components/variations/service/variations_field_trial_creator_base.cc
+@@ -121,6 +121,9 @@ Study::CpuArchitecture GetCurrentCpuArch
}
return Study::X86_64;
}
@@ -38,4 +38,28 @@ Index: chromium-130.0.6723.116/components/variations/service/variations_field_tr
NOTREACHED_IN_MIGRATION();
return Study::X86_64;
}
-
+Index: chromium-132.0.6834.83/v8/src/compiler/backend/riscv/code-generator-riscv.cc
+===================================================================
+--- chromium-132.0.6834.83.orig/v8/src/compiler/backend/riscv/code-generator-riscv.cc
++++ chromium-132.0.6834.83/v8/src/compiler/backend/riscv/code-generator-riscv.cc
+@@ -3742,12 +3742,20 @@ CodeGenerator::CodeGenResult CodeGenerat
+ break;
+ }
+ case kRiscvEnableDebugTrace: {
++#ifdef USE_SIMULATOR
+ __ Debug(TRACE_ENABLE | LOG_TRACE | LOG_REGS);
+ break;
++#else
++ UNREACHABLE();
++#endif
+ }
+ case kRiscvDisableDebugTrace: {
++#ifdef USE_SIMULATOR
+ __ Debug(TRACE_DISABLE | LOG_TRACE | LOG_REGS);
+ break;
++#else
++ UNREACHABLE();
++#endif
+ }
+ default:
+ #ifdef DEBUG
diff --git a/www-client/chromium/files/riscv-sandbox.patch b/www-client/chromium/files/riscv-sandbox.patch
index dc2d902..325e066 100644
--- a/www-client/chromium/files/riscv-sandbox.patch
+++ b/www-client/chromium/files/riscv-sandbox.patch
@@ -1,7 +1,7 @@
-Index: chromium-130.0.6723.58/sandbox/features.gni
+Index: chromium-132.0.6834.83/sandbox/features.gni
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/features.gni
-+++ chromium-130.0.6723.58/sandbox/features.gni
+--- chromium-132.0.6834.83.orig/sandbox/features.gni
++++ chromium-132.0.6834.83/sandbox/features.gni
@@ -9,7 +9,8 @@
use_seccomp_bpf = (is_linux || is_chromeos || is_android) &&
(current_cpu == "x86" || current_cpu == "x64" ||
@@ -12,10 +12,10 @@ Index: chromium-130.0.6723.58/sandbox/features.gni
# SSBD (Speculative Store Bypass Disable) is a mitigation of Spectre Variant 4.
# As Spectre Variant 4 can be mitigated by site isolation, opt-out SSBD on site
-Index: chromium-130.0.6723.58/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
+Index: chromium-132.0.6834.83/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
-+++ chromium-130.0.6723.58/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
+--- chromium-132.0.6834.83.orig/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
++++ chromium-132.0.6834.83/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
@@ -56,6 +56,12 @@
#define MAX_PUBLIC_SYSCALL __NR_syscalls
#define MAX_SYSCALL MAX_PUBLIC_SYSCALL
@@ -29,10 +29,10 @@ Index: chromium-130.0.6723.58/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
#else
#error "Unsupported architecture"
#endif
-Index: chromium-130.0.6723.58/sandbox/linux/bpf_dsl/seccomp_macros.h
+Index: chromium-132.0.6834.83/sandbox/linux/bpf_dsl/seccomp_macros.h
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/linux/bpf_dsl/seccomp_macros.h
-+++ chromium-130.0.6723.58/sandbox/linux/bpf_dsl/seccomp_macros.h
+--- chromium-132.0.6834.83.orig/sandbox/linux/bpf_dsl/seccomp_macros.h
++++ chromium-132.0.6834.83/sandbox/linux/bpf_dsl/seccomp_macros.h
@@ -343,6 +343,48 @@ struct regs_struct {
#define SECCOMP_PT_PARM4(_regs) (_regs).regs[3]
#define SECCOMP_PT_PARM5(_regs) (_regs).regs[4]
@@ -82,10 +82,10 @@ Index: chromium-130.0.6723.58/sandbox/linux/bpf_dsl/seccomp_macros.h
#else
#error Unsupported target platform
-Index: chromium-130.0.6723.58/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
+Index: chromium-132.0.6834.83/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
-+++ chromium-130.0.6723.58/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
+--- chromium-132.0.6834.83.orig/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
++++ chromium-132.0.6834.83/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
@@ -60,6 +60,9 @@ bool IsBaselinePolicyAllowed(int sysno)
#if defined(__mips__)
SyscallSets::IsMipsPrivate(sysno) ||
@@ -132,10 +132,10 @@ Index: chromium-130.0.6723.58/sandbox/linux/seccomp-bpf-helpers/baseline_policy.
if (sysno == __NR_pipe) {
return Allow();
}
-Index: chromium-130.0.6723.58/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
+Index: chromium-132.0.6834.83/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
-+++ chromium-130.0.6723.58/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
+--- chromium-132.0.6834.83.orig/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
++++ chromium-132.0.6834.83/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
@@ -37,6 +37,7 @@
#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) && \
@@ -144,7 +144,7 @@ Index: chromium-130.0.6723.58/sandbox/linux/seccomp-bpf-helpers/syscall_paramete
!defined(PTRACE_GET_THREAD_AREA)
// Also include asm/ptrace-abi.h since ptrace.h in older libc (for instance
// the one in Ubuntu 16.04 LTS) is missing PTRACE_GET_THREAD_AREA.
-@@ -463,8 +464,10 @@ ResultExpr RestrictPtrace() {
+@@ -461,8 +462,10 @@ ResultExpr RestrictPtrace() {
#endif
return Switch(request)
.Cases({
@@ -156,10 +156,10 @@ Index: chromium-130.0.6723.58/sandbox/linux/seccomp-bpf-helpers/syscall_paramete
PTRACE_GETREGSET,
#endif
#if defined(__arm__)
-Index: chromium-130.0.6723.58/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
+Index: chromium-132.0.6834.83/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
-+++ chromium-130.0.6723.58/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
+--- chromium-132.0.6834.83.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
++++ chromium-132.0.6834.83/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
@@ -103,7 +103,7 @@ bool SyscallSets::IsUmask(int sysno) {
// Both EPERM and ENOENT are valid errno unless otherwise noted in comment.
bool SyscallSets::IsFileSystem(int sysno) {
@@ -416,10 +416,10 @@ Index: chromium-130.0.6723.58/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
bool SyscallSets::IsGoogle3Threading(int sysno) {
switch (sysno) {
case __NR_getitimer:
-Index: chromium-130.0.6723.58/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
+Index: chromium-132.0.6834.83/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
-+++ chromium-130.0.6723.58/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
+--- chromium-132.0.6834.83.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
++++ chromium-132.0.6834.83/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
@@ -52,7 +52,7 @@ class SANDBOX_EXPORT SyscallSets {
#endif
@@ -464,10 +464,10 @@ Index: chromium-130.0.6723.58/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
static bool IsGoogle3Threading(int sysno);
};
-Index: chromium-130.0.6723.58/sandbox/linux/seccomp-bpf/syscall.cc
+Index: chromium-132.0.6834.83/sandbox/linux/seccomp-bpf/syscall.cc
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/linux/seccomp-bpf/syscall.cc
-+++ chromium-130.0.6723.58/sandbox/linux/seccomp-bpf/syscall.cc
+--- chromium-132.0.6834.83.orig/sandbox/linux/seccomp-bpf/syscall.cc
++++ chromium-132.0.6834.83/sandbox/linux/seccomp-bpf/syscall.cc
@@ -23,7 +23,7 @@ namespace sandbox {
namespace {
@@ -537,10 +537,10 @@ Index: chromium-130.0.6723.58/sandbox/linux/seccomp-bpf/syscall.cc
#else
#error "Unimplemented architecture"
#endif
-Index: chromium-130.0.6723.58/sandbox/linux/services/credentials.cc
+Index: chromium-132.0.6834.83/sandbox/linux/services/credentials.cc
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/linux/services/credentials.cc
-+++ chromium-130.0.6723.58/sandbox/linux/services/credentials.cc
+--- chromium-132.0.6834.83.orig/sandbox/linux/services/credentials.cc
++++ chromium-132.0.6834.83/sandbox/linux/services/credentials.cc
@@ -87,7 +87,7 @@ bool ChrootToSafeEmptyDir() {
alignas(16) char stack_buf[PTHREAD_STACK_MIN_CONST];
@@ -550,10 +550,10 @@ Index: chromium-130.0.6723.58/sandbox/linux/services/credentials.cc
// The stack grows downward.
void* stack = stack_buf + sizeof(stack_buf);
#else
-Index: chromium-130.0.6723.58/sandbox/linux/services/syscall_wrappers.cc
+Index: chromium-132.0.6834.83/sandbox/linux/services/syscall_wrappers.cc
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/linux/services/syscall_wrappers.cc
-+++ chromium-130.0.6723.58/sandbox/linux/services/syscall_wrappers.cc
+--- chromium-132.0.6834.83.orig/sandbox/linux/services/syscall_wrappers.cc
++++ chromium-132.0.6834.83/sandbox/linux/services/syscall_wrappers.cc
@@ -61,7 +61,7 @@ long sys_clone(unsigned long flags,
#if defined(ARCH_CPU_X86_64)
return syscall(__NR_clone, flags, child_stack, ptid, ctid, tls);
@@ -563,11 +563,11 @@ Index: chromium-130.0.6723.58/sandbox/linux/services/syscall_wrappers.cc
// CONFIG_CLONE_BACKWARDS defined.
return syscall(__NR_clone, flags, child_stack, ptid, tls, ctid);
#endif
-Index: chromium-130.0.6723.58/sandbox/linux/syscall_broker/broker_process.cc
+Index: chromium-132.0.6834.83/sandbox/linux/syscall_broker/broker_process.cc
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/linux/syscall_broker/broker_process.cc
-+++ chromium-130.0.6723.58/sandbox/linux/syscall_broker/broker_process.cc
-@@ -122,44 +122,46 @@ bool BrokerProcess::IsSyscallBrokerable(
+--- chromium-132.0.6834.83.orig/sandbox/linux/syscall_broker/broker_process.cc
++++ chromium-132.0.6834.83/sandbox/linux/syscall_broker/broker_process.cc
+@@ -121,44 +121,46 @@ bool BrokerProcess::IsSyscallBrokerable(
// and are default disabled in Android. So, we should refuse to broker them
// to be consistent with the platform's restrictions.
switch (sysno) {
@@ -621,7 +621,7 @@ Index: chromium-130.0.6723.58/sandbox/linux/syscall_broker/broker_process.cc
case __NR_stat:
case __NR_lstat:
#endif
-@@ -169,7 +171,7 @@ bool BrokerProcess::IsSyscallBrokerable(
+@@ -168,7 +170,7 @@ bool BrokerProcess::IsSyscallBrokerable(
#if defined(__NR_fstatat64)
case __NR_fstatat64:
#endif
@@ -630,7 +630,7 @@ Index: chromium-130.0.6723.58/sandbox/linux/syscall_broker/broker_process.cc
case __NR_newfstatat:
#endif
return !fast_check || policy_->allowed_command_set.test(COMMAND_STAT);
-@@ -184,7 +186,7 @@ bool BrokerProcess::IsSyscallBrokerable(
+@@ -183,7 +185,7 @@ bool BrokerProcess::IsSyscallBrokerable(
return !fast_check || policy_->allowed_command_set.test(COMMAND_STAT);
#endif
@@ -639,10 +639,10 @@ Index: chromium-130.0.6723.58/sandbox/linux/syscall_broker/broker_process.cc
case __NR_unlink:
return !fast_check || policy_->allowed_command_set.test(COMMAND_UNLINK);
#endif
-Index: chromium-130.0.6723.58/sandbox/linux/system_headers/linux_seccomp.h
+Index: chromium-132.0.6834.83/sandbox/linux/system_headers/linux_seccomp.h
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/linux/system_headers/linux_seccomp.h
-+++ chromium-130.0.6723.58/sandbox/linux/system_headers/linux_seccomp.h
+--- chromium-132.0.6834.83.orig/sandbox/linux/system_headers/linux_seccomp.h
++++ chromium-132.0.6834.83/sandbox/linux/system_headers/linux_seccomp.h
@@ -39,6 +39,10 @@
#define EM_AARCH64 183
#endif
@@ -665,10 +665,10 @@ Index: chromium-130.0.6723.58/sandbox/linux/system_headers/linux_seccomp.h
// For prctl.h
#ifndef PR_SET_SECCOMP
#define PR_SET_SECCOMP 22
-Index: chromium-130.0.6723.58/sandbox/linux/system_headers/linux_signal.h
+Index: chromium-132.0.6834.83/sandbox/linux/system_headers/linux_signal.h
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/linux/system_headers/linux_signal.h
-+++ chromium-130.0.6723.58/sandbox/linux/system_headers/linux_signal.h
+--- chromium-132.0.6834.83.orig/sandbox/linux/system_headers/linux_signal.h
++++ chromium-132.0.6834.83/sandbox/linux/system_headers/linux_signal.h
@@ -13,7 +13,7 @@
// (not undefined, but defined different values and in different memory
// layouts). So, fill the gap here.
@@ -678,10 +678,10 @@ Index: chromium-130.0.6723.58/sandbox/linux/system_headers/linux_signal.h
#define LINUX_SIGHUP 1
#define LINUX_SIGINT 2
-Index: chromium-130.0.6723.58/sandbox/linux/system_headers/linux_stat.h
+Index: chromium-132.0.6834.83/sandbox/linux/system_headers/linux_stat.h
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/linux/system_headers/linux_stat.h
-+++ chromium-130.0.6723.58/sandbox/linux/system_headers/linux_stat.h
+--- chromium-132.0.6834.83.orig/sandbox/linux/system_headers/linux_stat.h
++++ chromium-132.0.6834.83/sandbox/linux/system_headers/linux_stat.h
@@ -150,7 +150,7 @@ struct kernel_stat {
int st_blocks;
int st_pad4[14];
@@ -691,10 +691,10 @@ Index: chromium-130.0.6723.58/sandbox/linux/system_headers/linux_stat.h
struct kernel_stat {
unsigned long st_dev;
unsigned long st_ino;
-Index: chromium-130.0.6723.58/sandbox/linux/system_headers/linux_syscalls.h
+Index: chromium-132.0.6834.83/sandbox/linux/system_headers/linux_syscalls.h
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/linux/system_headers/linux_syscalls.h
-+++ chromium-130.0.6723.58/sandbox/linux/system_headers/linux_syscalls.h
+--- chromium-132.0.6834.83.orig/sandbox/linux/system_headers/linux_syscalls.h
++++ chromium-132.0.6834.83/sandbox/linux/system_headers/linux_syscalls.h
@@ -35,5 +35,9 @@
#include "sandbox/linux/system_headers/arm64_linux_syscalls.h"
#endif
@@ -705,10 +705,10 @@ Index: chromium-130.0.6723.58/sandbox/linux/system_headers/linux_syscalls.h
+
#endif // SANDBOX_LINUX_SYSTEM_HEADERS_LINUX_SYSCALLS_H_
-Index: chromium-130.0.6723.58/sandbox/linux/system_headers/riscv64_linux_syscalls.h
+Index: chromium-132.0.6834.83/sandbox/linux/system_headers/riscv64_linux_syscalls.h
===================================================================
--- /dev/null
-+++ chromium-130.0.6723.58/sandbox/linux/system_headers/riscv64_linux_syscalls.h
++++ chromium-132.0.6834.83/sandbox/linux/system_headers/riscv64_linux_syscalls.h
@@ -0,0 +1,1226 @@
+// Copyright 2014 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
@@ -1936,10 +1936,10 @@ Index: chromium-130.0.6723.58/sandbox/linux/system_headers/riscv64_linux_syscall
+#endif
+
+#endif // SANDBOX_LINUX_SYSTEM_HEADERS_RISCV64_LINUX_SYSCALLS_H_
-Index: chromium-130.0.6723.58/sandbox/policy/linux/bpf_cdm_policy_linux.cc
+Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_cdm_policy_linux.cc
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/policy/linux/bpf_cdm_policy_linux.cc
-+++ chromium-130.0.6723.58/sandbox/policy/linux/bpf_cdm_policy_linux.cc
+--- chromium-132.0.6834.83.orig/sandbox/policy/linux/bpf_cdm_policy_linux.cc
++++ chromium-132.0.6834.83/sandbox/policy/linux/bpf_cdm_policy_linux.cc
@@ -33,7 +33,7 @@ ResultExpr CdmProcessPolicy::EvaluateSys
case __NR_ftruncate:
case __NR_fallocate:
@@ -1949,10 +1949,10 @@ Index: chromium-130.0.6723.58/sandbox/policy/linux/bpf_cdm_policy_linux.cc
case __NR_getrlimit:
#endif
#if defined(__i386__) || defined(__arm__)
-Index: chromium-130.0.6723.58/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
+Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
-+++ chromium-130.0.6723.58/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
+--- chromium-132.0.6834.83.orig/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
++++ chromium-132.0.6834.83/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
@@ -38,7 +38,7 @@ ResultExpr CrosAmdGpuProcessPolicy::Eval
case __NR_sched_setscheduler:
case __NR_sysinfo:
@@ -1962,10 +1962,10 @@ Index: chromium-130.0.6723.58/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux
case __NR_readlink:
case __NR_stat:
#endif
-Index: chromium-130.0.6723.58/sandbox/policy/linux/bpf_gpu_policy_linux.cc
+Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_gpu_policy_linux.cc
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/policy/linux/bpf_gpu_policy_linux.cc
-+++ chromium-130.0.6723.58/sandbox/policy/linux/bpf_gpu_policy_linux.cc
+--- chromium-132.0.6834.83.orig/sandbox/policy/linux/bpf_gpu_policy_linux.cc
++++ chromium-132.0.6834.83/sandbox/policy/linux/bpf_gpu_policy_linux.cc
@@ -73,7 +73,7 @@ ResultExpr GpuProcessPolicy::EvaluateSys
(defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
case __NR_ftruncate64:
@@ -1975,10 +1975,10 @@ Index: chromium-130.0.6723.58/sandbox/policy/linux/bpf_gpu_policy_linux.cc
case __NR_getdents:
#endif
case __NR_getdents64:
-Index: chromium-130.0.6723.58/sandbox/policy/linux/bpf_network_policy_linux.cc
+Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_network_policy_linux.cc
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/policy/linux/bpf_network_policy_linux.cc
-+++ chromium-130.0.6723.58/sandbox/policy/linux/bpf_network_policy_linux.cc
+--- chromium-132.0.6834.83.orig/sandbox/policy/linux/bpf_network_policy_linux.cc
++++ chromium-132.0.6834.83/sandbox/policy/linux/bpf_network_policy_linux.cc
@@ -260,7 +260,7 @@ ResultExpr NetworkProcessPolicy::Evaluat
case __NR_fdatasync:
case __NR_fsync:
@@ -1988,10 +1988,10 @@ Index: chromium-130.0.6723.58/sandbox/policy/linux/bpf_network_policy_linux.cc
case __NR_getdents:
#endif
case __NR_getdents64:
-Index: chromium-130.0.6723.58/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
+Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
-+++ chromium-130.0.6723.58/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
+--- chromium-132.0.6834.83.orig/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
++++ chromium-132.0.6834.83/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
@@ -33,7 +33,7 @@ ResultExpr PrintCompositorProcessPolicy:
case __NR_fdatasync:
case __NR_fsync:
@@ -2001,11 +2001,11 @@ Index: chromium-130.0.6723.58/sandbox/policy/linux/bpf_print_compositor_policy_l
case __NR_getrlimit:
#endif
#if defined(__i386__) || defined(__arm__)
-Index: chromium-130.0.6723.58/sandbox/policy/linux/bpf_renderer_policy_linux.cc
+Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_renderer_policy_linux.cc
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/policy/linux/bpf_renderer_policy_linux.cc
-+++ chromium-130.0.6723.58/sandbox/policy/linux/bpf_renderer_policy_linux.cc
-@@ -82,7 +82,7 @@ ResultExpr RendererProcessPolicy::Evalua
+--- chromium-132.0.6834.83.orig/sandbox/policy/linux/bpf_renderer_policy_linux.cc
++++ chromium-132.0.6834.83/sandbox/policy/linux/bpf_renderer_policy_linux.cc
+@@ -85,7 +85,7 @@ ResultExpr RendererProcessPolicy::Evalua
case __NR_ftruncate64:
#endif
#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
@@ -2014,10 +2014,10 @@ Index: chromium-130.0.6723.58/sandbox/policy/linux/bpf_renderer_policy_linux.cc
case __NR_getrlimit:
case __NR_setrlimit:
// We allow setrlimit to dynamically adjust the address space limit as
-Index: chromium-130.0.6723.58/sandbox/policy/linux/bpf_service_policy_linux.cc
+Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_service_policy_linux.cc
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/policy/linux/bpf_service_policy_linux.cc
-+++ chromium-130.0.6723.58/sandbox/policy/linux/bpf_service_policy_linux.cc
+--- chromium-132.0.6834.83.orig/sandbox/policy/linux/bpf_service_policy_linux.cc
++++ chromium-132.0.6834.83/sandbox/policy/linux/bpf_service_policy_linux.cc
@@ -26,7 +26,7 @@ ResultExpr ServiceProcessPolicy::Evaluat
return RestrictIoctl();
// Allow the system calls below.
@@ -2027,10 +2027,10 @@ Index: chromium-130.0.6723.58/sandbox/policy/linux/bpf_service_policy_linux.cc
case __NR_getrlimit:
#endif
#if defined(__i386__) || defined(__arm__)
-Index: chromium-130.0.6723.58/sandbox/policy/linux/bpf_utility_policy_linux.cc
+Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_utility_policy_linux.cc
===================================================================
---- chromium-130.0.6723.58.orig/sandbox/policy/linux/bpf_utility_policy_linux.cc
-+++ chromium-130.0.6723.58/sandbox/policy/linux/bpf_utility_policy_linux.cc
+--- chromium-132.0.6834.83.orig/sandbox/policy/linux/bpf_utility_policy_linux.cc
++++ chromium-132.0.6834.83/sandbox/policy/linux/bpf_utility_policy_linux.cc
@@ -34,7 +34,7 @@ ResultExpr UtilityProcessPolicy::Evaluat
case __NR_fdatasync:
case __NR_fsync:
diff --git a/www-client/chromium/files/riscv-v8.patch b/www-client/chromium/files/riscv-v8.patch
deleted file mode 100644
index 8cdb37e..0000000
--- a/www-client/chromium/files/riscv-v8.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-Index: chromium-128.0.6613.84/v8/src/wasm/baseline/riscv/liftoff-assembler-riscv-inl.h
-===================================================================
---- chromium-128.0.6613.84.orig/v8/src/wasm/baseline/riscv/liftoff-assembler-riscv-inl.h
-+++ chromium-128.0.6613.84/v8/src/wasm/baseline/riscv/liftoff-assembler-riscv-inl.h
-@@ -2368,6 +2368,22 @@ void LiftoffAssembler::CallFrameSetupStu
- CallBuiltin(Builtin::kWasmLiftoffFrameSetup);
- }
-
-+bool LiftoffAssembler::emit_f16x8_splat(LiftoffRegister dst,
-+ LiftoffRegister src) {
-+ return false;
-+}
-+bool LiftoffAssembler::emit_f16x8_extract_lane(LiftoffRegister dst,
-+ LiftoffRegister lhs,
-+ uint8_t imm_lane_idx) {
-+ return false;
-+}
-+bool LiftoffAssembler::emit_f16x8_replace_lane(LiftoffRegister dst,
-+ LiftoffRegister src1,
-+ LiftoffRegister src2,
-+ uint8_t imm_lane_idx) {
-+ return false;
-+}
-+
- } // namespace v8::internal::wasm
-
- #endif // V8_WASM_BASELINE_RISCV_LIFTOFF_ASSEMBLER_RISCV_INL_H_
-
diff --git a/www-client/chromium/metadata.xml b/www-client/chromium/metadata.xml
index 66251f8..e5778b5 100644
--- a/www-client/chromium/metadata.xml
+++ b/www-client/chromium/metadata.xml
@@ -10,11 +10,12 @@
<name>Matt Jolly</name>
</maintainer>
<use>
- <flag name="ffmpeg-chromium">(binpkg only) Use Chromium FFmpeg fork (<pkg>media-video/ffmpeg-chromium</pkg>) rather than mainline FFmpeg (<pkg>media-video/ffmpeg</pkg>)</flag>
+ <flag name="bundled-toolchain">Download and use the upstream binary toolchain(s) to build Chromium</flag>
<flag name="debug">Enable DCHECK feature with severity configurable at runtime. Mostly intended for debugging and development, NOT RECOMMENDED for general use.</flag>
+ <flag name="ffmpeg-chromium">(binpkg only) Use Chromium FFmpeg fork (<pkg>media-video/ffmpeg-chromium</pkg>) rather than mainline FFmpeg (<pkg>media-video/ffmpeg</pkg>)</flag>
<flag name="gtk4">Build with GTK4 headers.</flag>
- <flag name="headless">Build Ozone only with headless backend, NOT RECOMMENDED for general use.</flag>
<flag name="hangouts">Enable support for Google Hangouts features such as screen sharing</flag>
+ <flag name="headless">Build Ozone only with headless backend, NOT RECOMMENDED for general use.</flag>
<flag name="official">Enable Official build instead of Developer build.</flag>
<flag name="pax-kernel">Allow building on a PaX-enabled kernel</flag>
<flag name="pgo">Build with Profile Guided Optimizations (2-stage compilation)</flag>
@@ -22,7 +23,6 @@
<flag name="system-harfbuzz">Use system <pkg>media-libs/harfbuzz</pkg> instead of the bundled library.</flag>
<flag name="system-icu">Use system <pkg>dev-libs/icu</pkg> instead of the bundled one</flag>
<flag name="system-png">Use system <pkg>media-libs/libpng</pkg> instead of the bundled library</flag>
- <flag name="system-toolchain">Use system toolchain instead of the bundled one (if possible)</flag>
<flag name="system-zstd">Use system <pkg>app-arch/zstd</pkg> instead of the bundled one.</flag>
<flag name="widevine">Unsupported closed-source DRM capability (required by Netflix VOD)</flag>
</use>