* [gentoo-commits] proj/riscv:master commit in: www-client/chromium/files/, www-client/chromium/
@ 2021-12-14 9:25 Yixun Lan
0 siblings, 0 replies; 10+ messages in thread
From: Yixun Lan @ 2021-12-14 9:25 UTC (permalink / raw
To: gentoo-commits
commit: 8c94b1452b69a7673c69e1985d8e5747f8b938f2
Author: Yixun Lan <dlan <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 14 08:37:56 2021 +0000
Commit: Yixun Lan <dlan <AT> gentoo <DOT> org>
CommitDate: Tue Dec 14 08:38:01 2021 +0000
URL: https://gitweb.gentoo.org/proj/riscv.git/commit/?id=8c94b145
www-client/chromium: initial import chromium-98
from commit: c4437ce25f70c016fb51c438f421ddafd580ad9a
Signed-off-by: Yixun Lan <dlan <AT> gentoo.org>
www-client/chromium/Manifest | 7 +
www-client/chromium/chromium-96.0.4664.93.ebuild | 963 +++++++++++++++++++++
www-client/chromium/chromium-97.0.4692.45.ebuild | 957 ++++++++++++++++++++
www-client/chromium/chromium-98.0.4750.0.ebuild | 963 +++++++++++++++++++++
.../files/chromium-93-InkDropHost-crash.patch | 25 +
.../files/chromium-96-EnumTable-crash.patch | 76 ++
.../files/chromium-96-freetype-unbundle.patch | 10 +
.../files/chromium-98-EnumTable-crash.patch | 76 ++
.../chromium/files/chromium-98-system-libdrm.patch | 34 +
www-client/chromium/files/chromium-browser.xml | 13 +
.../chromium/files/chromium-glibc-2.34.patch | 50 ++
www-client/chromium/files/chromium-launcher-r7.sh | 59 ++
| 48 +
...ium-use-oauth2-client-switches-as-default.patch | 17 +
www-client/chromium/files/chromium.default | 5 +
www-client/chromium/metadata.xml | 25 +
16 files changed, 3328 insertions(+)
diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
new file mode 100644
index 0000000..9786162
--- /dev/null
+++ b/www-client/chromium/Manifest
@@ -0,0 +1,7 @@
+DIST chromium-96-patchset-4.tar.xz 4812 BLAKE2B 5d82d212b8ec1689be6f4a7a0646256311d06c17e74ee0e5b2035c32125a5235e4b6b7605cefffa367cc53e651be17b75f5e339149b4c80dca50cd959b1623f1 SHA512 a72c1bb2c58e9e2912a641093c153f01ad7239dc971c7c96481ba4164204afe41741f3253e8af03070dab8276179784dc6a11761b39ad7902ed2553016778282
+DIST chromium-96-ppc64le-1.tar.xz 29224 BLAKE2B 3369a3b15eb4f42761e01758135995a1f34e40cecbfc0372a4bc17b393d50b276ea5a0813d1c57f73f0dd34cf2a021356d25c2b4dcaa95998ffc082545dc915c SHA512 256d64fbf192e55d77c6580d36766a67dadfbd0f1e34e49bfc6d55114da7f2252d783db0dd09123996a71a01ec4a3d5c70fd1a5c8852db135857b8495f7cfbf1
+DIST chromium-96.0.4664.93.tar.xz 1209670724 BLAKE2B ebc99f6232fb65874dc73af6157c7175c1b7bf98f800819c343bdb37c42f49369b6af0146a093663a09a2588652eeb196526e9de776098f69e5ba8d75d205e69 SHA512 3441380372014dc338418f494fcd7407dd3888cea07af3415c9e8ff2c3547abbd516ae03eb4b831b89923817046a6d1549fb9558db9aa271aa0ba397e514c0b3
+DIST chromium-97-patchset-4.tar.xz 4240 BLAKE2B 450d013b6fd68f7e0bcb21a2b0828d531eda86965e636fe24fc36c2e7e1f74fe93f27f0d4b1d03e67c605797e28db37de4949ff78d5106e07b0362bec4bc5d8a SHA512 181c706c83bdbe07b2e7f02b654922a860aea761ad267e6545fb7d56b66373b003c1c79fae5cd45eeb3be8917782fa45df1c05bbb00e170f0146e7385f4246c4
+DIST chromium-97.0.4692.45.tar.xz 1213732240 BLAKE2B cd722330f4f84f29331974a0663fc39b021fb4cc7b1e96e4c355397bf7e37386938e5be05618c37692d29e8cfb514fdd069cbdf9ca44073d8da10fafaba598f8 SHA512 bac8367c7494dea46477d70af9dc2f8fa360936c4996cea92c623a503f2965a24afc1f83c15ccfa10bb3d331d21ed65f9c73799c0efe5b6180767ae36c17c2e1
+DIST chromium-98-patchset-3.tar.xz 6164 BLAKE2B be4fa2997e13e89a0c8db1e99fa80adb937c0c02f1e18bd0ec93bdbdd484da4a8507baf13c5e6e602d5f5ecb2921f33bc3afdc3c3103b1b5314b62f59c1a71ad SHA512 47026635ca5c2e1d3965c82a449077380e6518b33e16b83bd105085cca50f512d08027eebd34d7ce5ce39d988f0120deccfb72697abac0d41e4502b6ad8abdf3
+DIST chromium-98.0.4750.0.tar.xz 1230864580 BLAKE2B b8b5d05bf15a9429f3f5fa851415d21f6e757a99fce9ac47bdeb7f534f9eefc77d13c5f8ba93bfa140bdb536c13e1b6141ac4d7e0f17b742039c403044789c56 SHA512 7f8cc349aa50af0d149ba08e5ed60171e94943bbd52cb0f820f3c7d56749d9e2fd6d71761262ac012cfcad1f7e4f63c0404f39f044df531e776ae6fce951544f
diff --git a/www-client/chromium/chromium-96.0.4664.93.ebuild b/www-client/chromium/chromium-96.0.4664.93.ebuild
new file mode 100644
index 0000000..54fa899
--- /dev/null
+++ b/www-client/chromium/chromium-96.0.4664.93.ebuild
@@ -0,0 +1,963 @@
+# Copyright 2009-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_REQ_USE="xml"
+
+CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
+ 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 vi zh-CN zh-TW"
+
+inherit check-reqs chromium-2 desktop flag-o-matic ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
+
+DESCRIPTION="Open-source version of Google Chrome web browser"
+HOMEPAGE="https://chromium.org/"
+PATCHSET="4"
+PATCHSET_NAME="chromium-$(ver_cut 1)-patchset-${PATCHSET}"
+PPC64LE_PATCHSET="1"
+SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
+ https://github.com/stha09/chromium-patches/releases/download/${PATCHSET_NAME}/${PATCHSET_NAME}.tar.xz
+ ppc64? ( https://dev.gentoo.org/~gyakovlev/distfiles/${PN}-$(ver_cut 1)-ppc64le-${PPC64LE_PATCHSET}.tar.xz )"
+
+LICENSE="BSD"
+SLOT="0/stable"
+KEYWORDS="amd64 arm64 ~x86"
+IUSE="component-build cups cpu_flags_arm_neon debug +hangouts headless +js-type-check kerberos +official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-harfbuzz +system-icu vaapi wayland widevine"
+REQUIRED_USE="
+ component-build? ( !suid )
+ screencast? ( wayland )
+"
+
+COMMON_X_DEPEND="
+ media-libs/mesa:=[gbm(+)]
+ x11-libs/libX11:=
+ x11-libs/libXcomposite:=
+ x11-libs/libXcursor:=
+ x11-libs/libXdamage:=
+ x11-libs/libXext:=
+ x11-libs/libXfixes:=
+ >=x11-libs/libXi-1.6.0:=
+ x11-libs/libXrandr:=
+ x11-libs/libXrender:=
+ x11-libs/libXtst:=
+ x11-libs/libxcb:=
+ x11-libs/libxshmfence:=
+ vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
+"
+
+COMMON_DEPEND="
+ app-arch/bzip2:=
+ cups? ( >=net-print/cups-1.3.11:= )
+ dev-libs/expat:=
+ dev-libs/glib:2
+ >=dev-libs/libxml2-2.9.4-r3:=[icu]
+ dev-libs/nspr:=
+ >=dev-libs/nss-3.26:=
+ >=media-libs/alsa-lib-1.0.19:=
+ media-libs/fontconfig:=
+ >=media-libs/freetype-2.11.0-r1:=
+ system-harfbuzz? ( >=media-libs/harfbuzz-2.9.0:0=[icu(-)] )
+ media-libs/libjpeg-turbo:=
+ media-libs/libpng:=
+ pulseaudio? ( media-sound/pulseaudio:= )
+ system-ffmpeg? (
+ >=media-video/ffmpeg-4.3:=
+ || (
+ media-video/ffmpeg[-samba]
+ >=net-fs/samba-4.5.10-r1[-debug(-)]
+ )
+ >=media-libs/opus-1.3.1:=
+ )
+ net-misc/curl[ssl]
+ sys-apps/dbus:=
+ sys-apps/pciutils:=
+ virtual/udev
+ x11-libs/cairo:=
+ x11-libs/gdk-pixbuf:2
+ x11-libs/libxkbcommon:=
+ x11-libs/pango:=
+ media-libs/flac:=
+ >=media-libs/libwebp-0.4.0:=
+ sys-libs/zlib:=[minizip]
+ kerberos? ( virtual/krb5 )
+ !headless? (
+ ${COMMON_X_DEPEND}
+ >=app-accessibility/at-spi2-atk-2.26:2
+ >=app-accessibility/at-spi2-core-2.26:2
+ >=dev-libs/atk-2.26
+ x11-libs/gtk+:3[X]
+ wayland? (
+ dev-libs/wayland:=
+ screencast? ( media-video/pipewire:0/0.3 )
+ x11-libs/gtk+:3[wayland,X]
+ x11-libs/libdrm:=
+ )
+ )
+"
+RDEPEND="${COMMON_DEPEND}
+ x11-misc/xdg-utils
+ virtual/opengl
+ virtual/ttf-fonts
+ selinux? ( sec-policy/selinux-chromium )
+"
+DEPEND="${COMMON_DEPEND}
+"
+# dev-vcs/git - https://bugs.gentoo.org/593476
+BDEPEND="
+ ${PYTHON_DEPS}
+ $(python_gen_any_dep '
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ')
+ >=app-arch/gzip-1.7
+ dev-lang/perl
+ >=dev-util/gn-0.1807
+ dev-vcs/git
+ >=dev-util/gperf-3.0.3
+ >=dev-util/ninja-1.7.2
+ >=net-libs/nodejs-7.6.0[inspector]
+ >=sys-devel/bison-2.4.3
+ sys-devel/flex
+ virtual/pkgconfig
+ js-type-check? ( virtual/jre )
+"
+
+# These are intended for ebuild maintainer use to force clang if GCC is broken.
+: ${CHROMIUM_FORCE_CLANG=no}
+: ${CHROMIUM_FORCE_LIBCXX=no}
+
+if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
+ BDEPEND+=" >=sys-devel/clang-12"
+fi
+
+if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
+ RDEPEND+=" >=sys-libs/libcxx-12"
+ DEPEND+=" >=sys-libs/libcxx-12"
+else
+ COMMON_DEPEND="
+ dev-libs/libxslt:=
+ >=dev-libs/re2-0.2019.08.01:=
+ >=media-libs/openh264-1.6.0:=
+ system-icu? ( >=dev-libs/icu-69.1:= )
+ "
+ RDEPEND+="${COMMON_DEPEND}"
+ DEPEND+="${COMMON_DEPEND}"
+fi
+
+if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
+ EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
+fi
+
+DISABLE_AUTOFORMATTING="yes"
+DOC_CONTENTS="
+Some web pages may require additional fonts to display properly.
+Try installing some of the following packages if some characters
+are not displayed properly:
+- media-fonts/arphicfonts
+- media-fonts/droid
+- media-fonts/ipamonafont
+- media-fonts/noto
+- media-fonts/ja-ipafonts
+- media-fonts/takao-fonts
+- media-fonts/wqy-microhei
+- media-fonts/wqy-zenhei
+
+To fix broken icons on the Downloads page, you should install an icon
+theme that covers the appropriate MIME types, and configure this as your
+GTK+ icon theme.
+
+For native file dialogs in KDE, install kde-apps/kdialog.
+
+To make password storage work with your desktop environment you may
+have install one of the supported credentials management applications:
+- app-crypt/libsecret (GNOME)
+- kde-frameworks/kwallet (KDE)
+If you have one of above packages installed, but don't want to use
+them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
+in /etc/chromium/default.
+"
+
+python_check_deps() {
+ has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
+}
+
+pre_build_checks() {
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ local -x CPP="$(tc-getCXX) -E"
+ if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
+ die "At least gcc 9.2 is required"
+ fi
+ if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
+ CPP="${CHOST}-clang++ -E"
+ if ! ver_test "$(clang-major-version)" -ge 12; then
+ die "At least clang 12 is required"
+ fi
+ fi
+ fi
+
+ # Check build requirements, bug #541816 and bug #471810 .
+ CHECKREQS_MEMORY="4G"
+ CHECKREQS_DISK_BUILD="9G"
+ if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
+ if use custom-cflags || use component-build; then
+ CHECKREQS_DISK_BUILD="25G"
+ fi
+ if ! use component-build; then
+ CHECKREQS_MEMORY="16G"
+ fi
+ fi
+ check-reqs_pkg_setup
+}
+
+pkg_pretend() {
+ pre_build_checks
+}
+
+pkg_setup() {
+ pre_build_checks
+
+ chromium_suid_sandbox_check_kernel_config
+
+ # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
+ if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
+ ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
+ ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
+ fi
+}
+
+src_prepare() {
+ # Calling this here supports resumption via FEATURES=keepwork
+ python_setup
+
+ local PATCHES=(
+ "${WORKDIR}/patches"
+ "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
+ "${FILESDIR}/chromium-96-EnumTable-crash.patch"
+ "${FILESDIR}/chromium-96-freetype-unbundle.patch"
+ "${FILESDIR}/chromium-glibc-2.34.patch"
+ "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
+ "${FILESDIR}/chromium-shim_headers.patch"
+ )
+
+ use ppc64 && PATCHES+=( "${WORKDIR}/${PN}-ppc64le" )
+
+ default
+
+ mkdir -p third_party/node/linux/node-linux-x64/bin || die
+ ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
+
+ # adjust python interpreter version
+ sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
+
+ local keeplibs=(
+ base/third_party/cityhash
+ base/third_party/double_conversion
+ base/third_party/dynamic_annotations
+ base/third_party/icu
+ base/third_party/nspr
+ base/third_party/superfasthash
+ base/third_party/symbolize
+ base/third_party/valgrind
+ base/third_party/xdg_mime
+ base/third_party/xdg_user_dirs
+ 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
+ net/third_party/uri_template
+ third_party/abseil-cpp
+ third_party/angle
+ third_party/angle/src/common/third_party/base
+ third_party/angle/src/common/third_party/smhasher
+ third_party/angle/src/common/third_party/xxhash
+ third_party/angle/src/third_party/libXNVCtrl
+ third_party/angle/src/third_party/trace_event
+ third_party/angle/src/third_party/volk
+ third_party/apple_apsl
+ third_party/axe-core
+ third_party/blink
+ third_party/boringssl
+ third_party/boringssl/src/third_party/fiat
+ third_party/breakpad
+ third_party/breakpad/breakpad/src/third_party/curl
+ third_party/brotli
+ third_party/catapult
+ third_party/catapult/common/py_vulcanize/third_party/rcssmin
+ third_party/catapult/common/py_vulcanize/third_party/rjsmin
+ third_party/catapult/third_party/beautifulsoup4-4.9.3
+ third_party/catapult/third_party/html5lib-1.1
+ third_party/catapult/third_party/polymer
+ third_party/catapult/third_party/six
+ third_party/catapult/tracing/third_party/d3
+ third_party/catapult/tracing/third_party/gl-matrix
+ third_party/catapult/tracing/third_party/jpeg-js
+ third_party/catapult/tracing/third_party/jszip
+ third_party/catapult/tracing/third_party/mannwhitneyu
+ third_party/catapult/tracing/third_party/oboe
+ third_party/catapult/tracing/third_party/pako
+ third_party/ced
+ third_party/cld_3
+ third_party/closure_compiler
+ third_party/crashpad
+ third_party/crashpad/crashpad/third_party/lss
+ third_party/crashpad/crashpad/third_party/zlib
+ third_party/crc32c
+ third_party/cros_system_api
+ third_party/dav1d
+ third_party/dawn
+ third_party/dawn/third_party/khronos
+ third_party/dawn/third_party/tint
+ third_party/depot_tools
+ third_party/devscripts
+ third_party/devtools-frontend
+ third_party/devtools-frontend/src/front_end/third_party/acorn
+ third_party/devtools-frontend/src/front_end/third_party/axe-core
+ third_party/devtools-frontend/src/front_end/third_party/chromium
+ third_party/devtools-frontend/src/front_end/third_party/codemirror
+ 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/lighthouse
+ third_party/devtools-frontend/src/front_end/third_party/lit-html
+ 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/wasmparser
+ third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
+ third_party/devtools-frontend/src/third_party
+ third_party/distributed_point_functions
+ third_party/dom_distiller_js
+ third_party/eigen3
+ third_party/emoji-segmenter
+ third_party/farmhash
+ third_party/fdlibm
+ third_party/fft2d
+ third_party/flatbuffers
+ third_party/freetype
+ third_party/fusejs
+ third_party/highway
+ third_party/libgifcodec
+ third_party/liburlpattern
+ third_party/libzip
+ third_party/gemmlowp
+ third_party/google_input_tools
+ third_party/google_input_tools/third_party/closure_library
+ third_party/google_input_tools/third_party/closure_library/third_party/closure
+ third_party/googletest
+ third_party/hunspell
+ third_party/iccjpeg
+ third_party/inspector_protocol
+ third_party/jinja2
+ third_party/jsoncpp
+ third_party/jstemplate
+ third_party/khronos
+ third_party/leveldatabase
+ third_party/libXNVCtrl
+ third_party/libaddressinput
+ third_party/libaom
+ third_party/libaom/source/libaom/third_party/fastfeat
+ third_party/libaom/source/libaom/third_party/vector
+ third_party/libaom/source/libaom/third_party/x86inc
+ third_party/libavif
+ third_party/libgav1
+ third_party/libjingle
+ third_party/libjxl
+ third_party/libphonenumber
+ third_party/libsecret
+ third_party/libsrtp
+ third_party/libsync
+ third_party/libudev
+ third_party/libva_protected_content
+ third_party/libvpx
+ third_party/libvpx/source/libvpx/third_party/x86inc
+ third_party/libwebm
+ third_party/libx11
+ third_party/libxcb-keysyms
+ third_party/libxml/chromium
+ third_party/libyuv
+ third_party/llvm
+ third_party/lottie
+ third_party/lss
+ third_party/lzma_sdk
+ third_party/mako
+ third_party/maldoca
+ third_party/maldoca/src/third_party/tensorflow_protos
+ third_party/maldoca/src/third_party/zlibwrapper
+ third_party/markupsafe
+ third_party/mesa
+ third_party/metrics_proto
+ third_party/minigbm
+ third_party/modp_b64
+ third_party/nasm
+ third_party/nearby
+ third_party/neon_2_sse
+ third_party/node
+ third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
+ third_party/one_euro_filter
+ third_party/opencv
+ third_party/openscreen
+ third_party/openscreen/src/third_party/mozilla
+ third_party/openscreen/src/third_party/tinycbor/src/src
+ third_party/ots
+ third_party/pdfium
+ third_party/pdfium/third_party/agg23
+ third_party/pdfium/third_party/base
+ third_party/pdfium/third_party/bigint
+ third_party/pdfium/third_party/freetype
+ third_party/pdfium/third_party/lcms
+ third_party/pdfium/third_party/libopenjpeg20
+ third_party/pdfium/third_party/libpng16
+ third_party/pdfium/third_party/libtiff
+ third_party/pdfium/third_party/skia_shared
+ third_party/perfetto
+ third_party/perfetto/protos/third_party/chromium
+ third_party/pffft
+ third_party/ply
+ third_party/polymer
+ third_party/private-join-and-compute
+ third_party/private_membership
+ third_party/protobuf
+ third_party/protobuf/third_party/six
+ third_party/pyjson5
+ third_party/qcms
+ third_party/rnnoise
+ third_party/s2cellid
+ third_party/securemessage
+ third_party/shell-encryption
+ third_party/simplejson
+ third_party/skia
+ third_party/skia/include/third_party/skcms
+ third_party/skia/include/third_party/vulkan
+ third_party/skia/third_party/skcms
+ third_party/skia/third_party/vulkan
+ third_party/smhasher
+ third_party/snappy
+ third_party/sqlite
+ third_party/swiftshader
+ third_party/swiftshader/third_party/astc-encoder
+ third_party/swiftshader/third_party/llvm-subzero
+ third_party/swiftshader/third_party/marl
+ third_party/swiftshader/third_party/subzero
+ third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
+ third_party/tcmalloc
+ third_party/tensorflow-text
+ third_party/tflite
+ third_party/tflite/src/third_party/eigen3
+ third_party/tflite/src/third_party/fft2d
+ third_party/ruy
+ third_party/six
+ third_party/ukey2
+ third_party/unrar
+ third_party/usrsctp
+ third_party/utf
+ third_party/vulkan
+ third_party/web-animations-js
+ third_party/webdriver
+ third_party/webgpu-cts
+ third_party/webrtc
+ third_party/webrtc/common_audio/third_party/ooura
+ third_party/webrtc/common_audio/third_party/spl_sqrt_floor
+ third_party/webrtc/modules/third_party/fft
+ third_party/webrtc/modules/third_party/g711
+ third_party/webrtc/modules/third_party/g722
+ third_party/webrtc/rtc_base/third_party/base64
+ third_party/webrtc/rtc_base/third_party/sigslot
+ third_party/widevine
+ third_party/woff2
+ third_party/wuffs
+ third_party/x11proto
+ third_party/xcbproto
+ third_party/zxcvbn-cpp
+ third_party/zlib/google
+ url/third_party/mozilla
+ v8/src/third_party/siphash
+ v8/src/third_party/valgrind
+ v8/src/third_party/utf8-decoder
+ v8/third_party/inspector_protocol
+ v8/third_party/v8
+
+ # gyp -> gn leftovers
+ base/third_party/libevent
+ third_party/speech-dispatcher
+ third_party/usb_ids
+ third_party/xdg-utils
+ )
+ if ! use system-ffmpeg; then
+ keeplibs+=( third_party/ffmpeg third_party/opus )
+ fi
+ if ! use system-icu; then
+ keeplibs+=( third_party/icu )
+ fi
+ if use system-harfbuzz; then
+ keeplibs+=( third_party/harfbuzz-ng/utils )
+ else
+ keeplibs+=( third_party/harfbuzz-ng )
+ fi
+ if use wayland && ! use headless ; then
+ keeplibs+=( third_party/wayland )
+ fi
+ if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
+ keeplibs+=( third_party/libxml )
+ keeplibs+=( third_party/libxslt )
+ keeplibs+=( third_party/openh264 )
+ keeplibs+=( third_party/re2 )
+ if use system-icu; then
+ keeplibs+=( third_party/icu )
+ fi
+ fi
+ if use arm64 || use ppc64 ; then
+ keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
+ fi
+ # we need to generate ppc64 stuff because upstream does not ship it yet
+ # it has to be done before unbundling.
+ if use ppc64; then
+ pushd third_party/libvpx >/dev/null || die
+ mkdir -p source/config/linux/ppc64 || die
+ ./generate_gni.sh || die
+ popd >/dev/null || die
+ fi
+
+ # Remove most bundled libraries. Some are still needed.
+ build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
+
+ if use js-type-check; then
+ ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
+ fi
+
+ # 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
+}
+
+src_configure() {
+ # Calling this here supports resumption via FEATURES=keepwork
+ python_setup
+
+ local myconf_gn=""
+
+ # Make sure the build system will use the right tools, bug #340795.
+ tc-export AR CC CXX NM
+
+ if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
+ # Force clang since gcc is pretty broken at the moment.
+ CC=${CHOST}-clang
+ CXX=${CHOST}-clang++
+ strip-unsupported-flags
+ fi
+
+ if tc-is-clang; then
+ myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
+ else
+ if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
+ die "Compiling with sys-libs/libcxx requires clang."
+ fi
+ myconf_gn+=" is_clang=false"
+ fi
+
+ # Define a custom toolchain for GN
+ myconf_gn+=" custom_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\""
+ else
+ myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
+ fi
+
+ # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
+ myconf_gn+=" is_debug=false"
+
+ # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
+ # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
+ myconf_gn+=" dcheck_always_on=$(usex debug true false)"
+ myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
+
+ # Component build isn't generally intended for use by end users. It's mostly useful
+ # for development and debugging.
+ myconf_gn+=" is_component_build=$(usex component-build true false)"
+
+ # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
+ myconf_gn+=" enable_nacl=false"
+
+ # Use system-provided libraries.
+ # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
+ # TODO: use_system_hunspell (upstream changes needed).
+ # TODO: use_system_protobuf (bug #525560).
+ # TODO: use_system_sqlite (http://crbug.com/22208).
+
+ # libevent: https://bugs.gentoo.org/593458
+ local gn_system_libraries=(
+ flac
+ fontconfig
+ freetype
+ # Need harfbuzz_from_pkgconfig target
+ #harfbuzz-ng
+ libdrm
+ libjpeg
+ libpng
+ libwebp
+ zlib
+ )
+ if use system-ffmpeg; then
+ gn_system_libraries+=( ffmpeg opus )
+ fi
+ if use system-icu; then
+ gn_system_libraries+=( icu )
+ fi
+ if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
+ # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
+ gn_system_libraries+=( libxml )
+ gn_system_libraries+=( libxslt )
+ gn_system_libraries+=( openh264 )
+ gn_system_libraries+=( re2 )
+ fi
+ build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
+
+ # See dependency logic in third_party/BUILD.gn
+ myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
+
+ # Disable deprecated libgnome-keyring dependency, bug #713012
+ myconf_gn+=" use_gnome_keyring=false"
+
+ # Optional dependencies.
+ myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
+ myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
+ myconf_gn+=" enable_widevine=$(usex widevine true false)"
+ myconf_gn+=" use_cups=$(usex cups true false)"
+ myconf_gn+=" use_kerberos=$(usex kerberos true false)"
+ myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
+ myconf_gn+=" use_vaapi=$(usex vaapi true false)"
+ myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
+
+ # TODO: link_pulseaudio=true for GN.
+
+ myconf_gn+=" disable_fieldtrial_testing_config=true"
+
+ # Never use bundled gold binary. Disable gold linker flags for now.
+ # Do not use bundled clang.
+ # Trying to use gold results in linker crash.
+ myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
+
+ # Disable forced lld, bug 641556
+ myconf_gn+=" use_lld=false"
+
+ # Disable pseudolocales, only used for testing
+ myconf_gn+=" enable_pseudolocales=false"
+
+ # Disable code formating of generated files
+ myconf_gn+=" blink_enable_generated_code_formatting=false"
+
+ ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
+ myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
+ myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
+
+ # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
+ # Note: these are for Gentoo use ONLY. For your own distribution,
+ # please get your own set of keys. Feel free to contact chromium@gentoo.org
+ # for more info. The OAuth2 credentials, however, have been left out.
+ # Those OAuth2 credentials have been broken for quite some time anyway.
+ # Instead we apply a patch to use the --oauth2-client-id= and
+ # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
+ # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
+ # Chromium without baked-in values.
+ local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
+ myconf_gn+=" google_api_key=\"${google_api_key}\""
+ local myarch="$(tc-arch)"
+
+ # Avoid CFLAGS problems, bug #352457, bug #390147.
+ if ! use custom-cflags; then
+ replace-flags "-Os" "-O2"
+ strip-flags
+
+ # Debug info section overflows without component build
+ # Prevent linker from running out of address space, bug #471810 .
+ if ! use component-build || use x86; then
+ filter-flags "-g*"
+ fi
+
+ # Prevent libvpx build failures. Bug 530248, 544702, 546984.
+ if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
+ filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
+ fi
+ fi
+
+ if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
+ append-flags -stdlib=libc++
+ append-ldflags -stdlib=libc++
+ fi
+
+ if [[ $myarch = amd64 ]] ; then
+ myconf_gn+=" target_cpu=\"x64\""
+ ffmpeg_target_arch=x64
+ elif [[ $myarch = x86 ]] ; then
+ myconf_gn+=" target_cpu=\"x86\""
+ ffmpeg_target_arch=ia32
+
+ # This is normally defined by compiler_cpu_abi in
+ # build/config/compiler/BUILD.gn, but we patch that part out.
+ append-flags -msse2 -mfpmath=sse -mmmx
+ elif [[ $myarch = arm64 ]] ; then
+ myconf_gn+=" target_cpu=\"arm64\""
+ ffmpeg_target_arch=arm64
+ elif [[ $myarch = arm ]] ; then
+ myconf_gn+=" target_cpu=\"arm\""
+ ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
+ elif [[ $myarch = ppc64 ]] ; then
+ myconf_gn+=" target_cpu=\"ppc64\""
+ ffmpeg_target_arch=ppc64
+ else
+ die "Failed to determine target arch, got '$myarch'."
+ fi
+
+ # Make sure that -Werror doesn't get added to CFLAGS by the build system.
+ # Depending on GCC version the warnings are different and we don't want
+ # the build to fail because of that.
+ myconf_gn+=" treat_warnings_as_errors=false"
+
+ # Disable fatal linker warnings, bug 506268.
+ myconf_gn+=" fatal_linker_warnings=false"
+
+ # Bug 491582.
+ export TMPDIR="${WORKDIR}/temp"
+ mkdir -p -m 755 "${TMPDIR}" || die
+
+ # https://bugs.gentoo.org/654216
+ addpredict /dev/dri/ #nowarn
+
+ #if ! use system-ffmpeg; then
+ if false; then
+ local build_ffmpeg_args=""
+ if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
+ build_ffmpeg_args+=" --disable-asm"
+ fi
+
+ # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
+ einfo "Configuring bundled ffmpeg..."
+ pushd third_party/ffmpeg > /dev/null || die
+ chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
+ --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
+ chromium/scripts/copy_config.sh || die
+ chromium/scripts/generate_gn.py || die
+ popd > /dev/null || die
+ fi
+
+ # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
+ append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
+
+ # highway/libjxl fail on ppc64 without extra patches, disable for now.
+ use ppc64 && myconf_gn+=" enable_jxl_decoder=false"
+
+ # Disable unknown warning message from clang.
+ tc-is-clang && append-flags -Wno-unknown-warning-option
+
+ # Explicitly disable ICU data file support for system-icu builds.
+ if use system-icu; then
+ myconf_gn+=" icu_use_data_file=false"
+ fi
+
+ # Enable ozone wayland and/or headless support
+ myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
+ myconf_gn+=" ozone_platform_headless=true"
+ myconf_gn+=" ozone_platform_x11=$(usex headless false true)"
+ if use wayland || use headless; then
+ if use headless; then
+ myconf_gn+=" ozone_platform=\"headless\""
+ myconf_gn+=" use_x11=false"
+ else
+ myconf_gn+=" ozone_platform_wayland=true"
+ myconf_gn+=" use_system_libdrm=true"
+ myconf_gn+=" use_system_minigbm=true"
+ myconf_gn+=" use_xkbcommon=true"
+ myconf_gn+=" ozone_platform=\"wayland\""
+ fi
+ else
+ myconf_gn+=" ozone_platform=\"x11\""
+ fi
+
+ # Enable official builds
+ myconf_gn+=" is_official_build=$(usex official true false)"
+ myconf_gn+=" use_thin_lto=false"
+ if use official; then
+ # 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
+ # Disable CFI: unsupported for GCC, requires clang+lto+lld
+ myconf_gn+=" is_cfi=false"
+ # Disable PGO, because profile data is only compatible with >=clang-11
+ myconf_gn+=" chrome_pgo_phase=0"
+ fi
+
+ einfo "Configuring Chromium..."
+ set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
+ echo "$@"
+ "$@" || die
+}
+
+src_compile() {
+ # Final link uses lots of file descriptors.
+ ulimit -n 2048
+
+ # Calling this here supports resumption via FEATURES=keepwork
+ python_setup
+
+ # Don't inherit PYTHONPATH from environment, bug #789021, #812689
+ local -x PYTHONPATH=
+
+ #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
+
+ # Build mksnapshot and pax-mark it.
+ local x
+ for x in mksnapshot v8_context_snapshot_generator; do
+ if tc-is-cross-compiler; then
+ eninja -C out/Release "host/${x}"
+ pax-mark m "out/Release/host/${x}"
+ else
+ eninja -C out/Release "${x}"
+ pax-mark m "out/Release/${x}"
+ fi
+ done
+
+ # 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
+ use suid && eninja -C out/Release chrome_sandbox
+
+ pax-mark m out/Release/chrome
+
+ mv out/Release/chromedriver{.unstripped,} || die
+
+ # Build manpage; bug #684550
+ sed -e 's|@@PACKAGE@@|chromium-browser|g;
+ s|@@MENUNAME@@|Chromium|g;' \
+ chrome/app/resources/manpage.1.in > \
+ out/Release/chromium-browser.1 || die
+
+ # Build desktop file; bug #706786
+ sed -e 's|@@MENUNAME@@|Chromium|g;
+ s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
+ s|@@PACKAGE@@|chromium-browser|g;
+ s|\(^Exec=\)/usr/bin/|\1|g;' \
+ chrome/installer/linux/common/desktop.template > \
+ out/Release/chromium-browser-chromium.desktop || die
+
+ # Build vk_swiftshader_icd.json; bug #827861
+ sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
+ third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
+ out/Release/vk_swiftshader_icd.json || die
+}
+
+src_install() {
+ local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
+ exeinto "${CHROMIUM_HOME}"
+ doexe out/Release/chrome
+
+ if use suid; then
+ newexe out/Release/chrome_sandbox chrome-sandbox
+ fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
+ fi
+
+ doexe out/Release/chromedriver
+ doexe out/Release/chrome_crashpad_handler
+
+ ozone_auto_session () {
+ use wayland && ! use headless && echo true || echo false
+ }
+ local sedargs=( -e
+ "s:/usr/lib/:/usr/$(get_libdir)/:g;
+ s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
+ )
+ sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
+ doexe chromium-launcher.sh
+
+ # It is important that we name the target "chromium-browser",
+ # xdg-utils expect it; bug #355517.
+ dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
+ # keep the old symlink around for consistency
+ dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
+
+ dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
+
+ # Allow users to override command-line options, bug #357629.
+ insinto /etc/chromium
+ newins "${FILESDIR}/chromium.default" "default"
+
+ pushd out/Release/locales > /dev/null || die
+ chromium_remove_language_paks
+ popd
+
+ insinto "${CHROMIUM_HOME}"
+ doins out/Release/*.bin
+ doins out/Release/*.pak
+ (
+ shopt -s nullglob
+ local files=(out/Release/*.so out/Release/*.so.[0-9])
+ [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
+ )
+
+ if ! use system-icu; then
+ doins out/Release/icudtl.dat
+ fi
+
+ doins -r out/Release/locales
+ doins -r out/Release/resources
+ doins -r out/Release/MEIPreload
+
+ # Install vk_swiftshader_icd.json; bug #827861
+ doins out/Release/vk_swiftshader_icd.json
+
+ if [[ -d out/Release/swiftshader ]]; then
+ insinto "${CHROMIUM_HOME}/swiftshader"
+ doins out/Release/swiftshader/*.so
+ fi
+
+ # Install icons
+ local branding size
+ for size in 16 24 32 48 64 128 256 ; do
+ case ${size} in
+ 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
+ *) branding="chrome/app/theme/chromium" ;;
+ esac
+ newicon -s ${size} "${branding}/product_logo_${size}.png" \
+ chromium-browser.png
+ done
+
+ # Install desktop entry
+ domenu out/Release/chromium-browser-chromium.desktop
+
+ # Install GNOME default application entry (bug #303100).
+ insinto /usr/share/gnome-control-center/default-apps
+ newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
+
+ # Install manpage; bug #684550
+ doman out/Release/chromium-browser.1
+ dosym chromium-browser.1 /usr/share/man/man1/chromium.1
+
+ readme.gentoo_create_doc
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+ readme.gentoo_print_elog
+
+ if use vaapi; then
+ elog "VA-API is disabled by default at runtime. You have to enable it"
+ elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
+ elog "in /etc/chromium/default."
+ fi
+ if use screencast; then
+ elog "Screencast is disabled by default at runtime. Either enable it"
+ elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
+ elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
+ elog "to CHROMIUM_FLAGS in /etc/chromium/default."
+ fi
+}
diff --git a/www-client/chromium/chromium-97.0.4692.45.ebuild b/www-client/chromium/chromium-97.0.4692.45.ebuild
new file mode 100644
index 0000000..7d53bac
--- /dev/null
+++ b/www-client/chromium/chromium-97.0.4692.45.ebuild
@@ -0,0 +1,957 @@
+# Copyright 2009-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_REQ_USE="xml"
+
+CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
+ 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 vi zh-CN zh-TW"
+
+inherit check-reqs chromium-2 desktop flag-o-matic ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
+
+DESCRIPTION="Open-source version of Google Chrome web browser"
+HOMEPAGE="https://chromium.org/"
+PATCHSET="4"
+PATCHSET_NAME="chromium-$(ver_cut 1)-patchset-${PATCHSET}"
+SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
+ https://github.com/stha09/chromium-patches/releases/download/${PATCHSET_NAME}/${PATCHSET_NAME}.tar.xz"
+
+LICENSE="BSD"
+SLOT="0/beta"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="component-build cups cpu_flags_arm_neon debug +hangouts headless +js-type-check kerberos +official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-harfbuzz +system-icu vaapi wayland widevine"
+REQUIRED_USE="
+ component-build? ( !suid )
+ screencast? ( wayland )
+"
+
+COMMON_X_DEPEND="
+ media-libs/mesa:=[gbm(+)]
+ x11-libs/libX11:=
+ x11-libs/libXcomposite:=
+ x11-libs/libXcursor:=
+ x11-libs/libXdamage:=
+ x11-libs/libXext:=
+ x11-libs/libXfixes:=
+ >=x11-libs/libXi-1.6.0:=
+ x11-libs/libXrandr:=
+ x11-libs/libXrender:=
+ x11-libs/libXtst:=
+ x11-libs/libxcb:=
+ x11-libs/libxshmfence:=
+ vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
+"
+
+COMMON_DEPEND="
+ app-arch/bzip2:=
+ cups? ( >=net-print/cups-1.3.11:= )
+ dev-libs/expat:=
+ dev-libs/glib:2
+ >=dev-libs/libxml2-2.9.4-r3:=[icu]
+ dev-libs/nspr:=
+ >=dev-libs/nss-3.26:=
+ >=media-libs/alsa-lib-1.0.19:=
+ media-libs/fontconfig:=
+ >=media-libs/freetype-2.11.0-r1:=
+ system-harfbuzz? ( >=media-libs/harfbuzz-2.9.0:0=[icu(-)] )
+ media-libs/libjpeg-turbo:=
+ media-libs/libpng:=
+ pulseaudio? ( media-sound/pulseaudio:= )
+ system-ffmpeg? (
+ >=media-video/ffmpeg-4.3:=
+ || (
+ media-video/ffmpeg[-samba]
+ >=net-fs/samba-4.5.10-r1[-debug(-)]
+ )
+ >=media-libs/opus-1.3.1:=
+ )
+ net-misc/curl[ssl]
+ sys-apps/dbus:=
+ sys-apps/pciutils:=
+ virtual/udev
+ x11-libs/cairo:=
+ x11-libs/gdk-pixbuf:2
+ x11-libs/libxkbcommon:=
+ x11-libs/pango:=
+ media-libs/flac:=
+ >=media-libs/libwebp-0.4.0:=
+ sys-libs/zlib:=[minizip]
+ kerberos? ( virtual/krb5 )
+ !headless? (
+ ${COMMON_X_DEPEND}
+ >=app-accessibility/at-spi2-atk-2.26:2
+ >=app-accessibility/at-spi2-core-2.26:2
+ >=dev-libs/atk-2.26
+ x11-libs/gtk+:3[X]
+ wayland? (
+ dev-libs/wayland:=
+ screencast? ( media-video/pipewire:0/0.3 )
+ x11-libs/gtk+:3[wayland,X]
+ x11-libs/libdrm:=
+ )
+ )
+"
+RDEPEND="${COMMON_DEPEND}
+ x11-misc/xdg-utils
+ virtual/opengl
+ virtual/ttf-fonts
+ selinux? ( sec-policy/selinux-chromium )
+"
+DEPEND="${COMMON_DEPEND}
+"
+# dev-vcs/git - https://bugs.gentoo.org/593476
+BDEPEND="
+ ${PYTHON_DEPS}
+ $(python_gen_any_dep '
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ')
+ >=app-arch/gzip-1.7
+ dev-lang/perl
+ >=dev-util/gn-0.1807
+ dev-vcs/git
+ >=dev-util/gperf-3.0.3
+ >=dev-util/ninja-1.7.2
+ >=net-libs/nodejs-7.6.0[inspector]
+ >=sys-devel/bison-2.4.3
+ sys-devel/flex
+ virtual/pkgconfig
+ js-type-check? ( virtual/jre )
+"
+
+# These are intended for ebuild maintainer use to force clang if GCC is broken.
+: ${CHROMIUM_FORCE_CLANG=no}
+: ${CHROMIUM_FORCE_LIBCXX=no}
+
+if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
+ BDEPEND+=" >=sys-devel/clang-12"
+fi
+
+if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
+ RDEPEND+=" >=sys-libs/libcxx-12"
+ DEPEND+=" >=sys-libs/libcxx-12"
+else
+ COMMON_DEPEND="
+ dev-libs/libxslt:=
+ >=dev-libs/re2-0.2019.08.01:=
+ >=media-libs/openh264-1.6.0:=
+ system-icu? ( >=dev-libs/icu-69.1:= )
+ "
+ RDEPEND+="${COMMON_DEPEND}"
+ DEPEND+="${COMMON_DEPEND}"
+fi
+
+if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
+ EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
+fi
+
+DISABLE_AUTOFORMATTING="yes"
+DOC_CONTENTS="
+Some web pages may require additional fonts to display properly.
+Try installing some of the following packages if some characters
+are not displayed properly:
+- media-fonts/arphicfonts
+- media-fonts/droid
+- media-fonts/ipamonafont
+- media-fonts/noto
+- media-fonts/ja-ipafonts
+- media-fonts/takao-fonts
+- media-fonts/wqy-microhei
+- media-fonts/wqy-zenhei
+
+To fix broken icons on the Downloads page, you should install an icon
+theme that covers the appropriate MIME types, and configure this as your
+GTK+ icon theme.
+
+For native file dialogs in KDE, install kde-apps/kdialog.
+
+To make password storage work with your desktop environment you may
+have install one of the supported credentials management applications:
+- app-crypt/libsecret (GNOME)
+- kde-frameworks/kwallet (KDE)
+If you have one of above packages installed, but don't want to use
+them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
+in /etc/chromium/default.
+"
+
+python_check_deps() {
+ has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
+}
+
+pre_build_checks() {
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ local -x CPP="$(tc-getCXX) -E"
+ if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
+ die "At least gcc 9.2 is required"
+ fi
+ if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
+ CPP="${CHOST}-clang++ -E"
+ if ! ver_test "$(clang-major-version)" -ge 12; then
+ die "At least clang 12 is required"
+ fi
+ fi
+ fi
+
+ # Check build requirements, bug #541816 and bug #471810 .
+ CHECKREQS_MEMORY="4G"
+ CHECKREQS_DISK_BUILD="9G"
+ if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
+ if use custom-cflags || use component-build; then
+ CHECKREQS_DISK_BUILD="25G"
+ fi
+ if ! use component-build; then
+ CHECKREQS_MEMORY="16G"
+ fi
+ fi
+ check-reqs_pkg_setup
+}
+
+pkg_pretend() {
+ pre_build_checks
+}
+
+pkg_setup() {
+ pre_build_checks
+
+ chromium_suid_sandbox_check_kernel_config
+
+ # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
+ if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
+ ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
+ ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
+ fi
+}
+
+src_prepare() {
+ # Calling this here supports resumption via FEATURES=keepwork
+ python_setup
+
+ local PATCHES=(
+ "${WORKDIR}/patches"
+ "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
+ "${FILESDIR}/chromium-96-EnumTable-crash.patch"
+ "${FILESDIR}/chromium-glibc-2.34.patch"
+ "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
+ "${FILESDIR}/chromium-shim_headers.patch"
+ )
+
+ default
+
+ mkdir -p third_party/node/linux/node-linux-x64/bin || die
+ ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
+
+ # adjust python interpreter version
+ sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
+
+ local keeplibs=(
+ base/third_party/cityhash
+ base/third_party/double_conversion
+ base/third_party/dynamic_annotations
+ base/third_party/icu
+ base/third_party/nspr
+ base/third_party/superfasthash
+ base/third_party/symbolize
+ base/third_party/valgrind
+ base/third_party/xdg_mime
+ base/third_party/xdg_user_dirs
+ 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
+ net/third_party/uri_template
+ third_party/abseil-cpp
+ third_party/angle
+ third_party/angle/src/common/third_party/base
+ third_party/angle/src/common/third_party/smhasher
+ third_party/angle/src/common/third_party/xxhash
+ third_party/angle/src/third_party/libXNVCtrl
+ third_party/angle/src/third_party/trace_event
+ third_party/angle/src/third_party/volk
+ third_party/apple_apsl
+ third_party/axe-core
+ third_party/blink
+ third_party/boringssl
+ third_party/boringssl/src/third_party/fiat
+ third_party/breakpad
+ third_party/breakpad/breakpad/src/third_party/curl
+ third_party/brotli
+ third_party/catapult
+ third_party/catapult/common/py_vulcanize/third_party/rcssmin
+ third_party/catapult/common/py_vulcanize/third_party/rjsmin
+ third_party/catapult/third_party/beautifulsoup4-4.9.3
+ third_party/catapult/third_party/html5lib-1.1
+ third_party/catapult/third_party/polymer
+ third_party/catapult/third_party/six
+ third_party/catapult/tracing/third_party/d3
+ third_party/catapult/tracing/third_party/gl-matrix
+ third_party/catapult/tracing/third_party/jpeg-js
+ third_party/catapult/tracing/third_party/jszip
+ third_party/catapult/tracing/third_party/mannwhitneyu
+ third_party/catapult/tracing/third_party/oboe
+ third_party/catapult/tracing/third_party/pako
+ third_party/ced
+ third_party/cld_3
+ third_party/closure_compiler
+ third_party/crashpad
+ third_party/crashpad/crashpad/third_party/lss
+ third_party/crashpad/crashpad/third_party/zlib
+ third_party/crc32c
+ third_party/cros_system_api
+ third_party/dav1d
+ third_party/dawn
+ third_party/dawn/third_party/khronos
+ third_party/dawn/third_party/tint
+ third_party/depot_tools
+ third_party/devscripts
+ third_party/devtools-frontend
+ third_party/devtools-frontend/src/front_end/third_party/acorn
+ third_party/devtools-frontend/src/front_end/third_party/axe-core
+ third_party/devtools-frontend/src/front_end/third_party/chromium
+ third_party/devtools-frontend/src/front_end/third_party/codemirror
+ 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/lighthouse
+ third_party/devtools-frontend/src/front_end/third_party/lit-html
+ 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/wasmparser
+ third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
+ third_party/devtools-frontend/src/third_party
+ third_party/distributed_point_functions
+ third_party/dom_distiller_js
+ third_party/eigen3
+ third_party/emoji-segmenter
+ third_party/farmhash
+ third_party/fdlibm
+ third_party/fft2d
+ third_party/flatbuffers
+ third_party/freetype
+ third_party/fusejs
+ third_party/highway
+ third_party/libgifcodec
+ third_party/liburlpattern
+ third_party/libzip
+ third_party/gemmlowp
+ third_party/google_input_tools
+ third_party/google_input_tools/third_party/closure_library
+ third_party/google_input_tools/third_party/closure_library/third_party/closure
+ third_party/googletest
+ third_party/hunspell
+ third_party/iccjpeg
+ third_party/inspector_protocol
+ third_party/jinja2
+ third_party/jsoncpp
+ third_party/jstemplate
+ third_party/khronos
+ third_party/leveldatabase
+ third_party/libXNVCtrl
+ third_party/libaddressinput
+ third_party/libaom
+ third_party/libaom/source/libaom/third_party/fastfeat
+ third_party/libaom/source/libaom/third_party/vector
+ third_party/libaom/source/libaom/third_party/x86inc
+ third_party/libavif
+ third_party/libgav1
+ third_party/libjingle
+ third_party/libjxl
+ third_party/libphonenumber
+ third_party/libsecret
+ third_party/libsrtp
+ third_party/libsync
+ third_party/libudev
+ third_party/libva_protected_content
+ third_party/libvpx
+ third_party/libvpx/source/libvpx/third_party/x86inc
+ third_party/libwebm
+ third_party/libx11
+ third_party/libxcb-keysyms
+ third_party/libxml/chromium
+ third_party/libyuv
+ third_party/llvm
+ third_party/lottie
+ third_party/lss
+ third_party/lzma_sdk
+ third_party/mako
+ third_party/maldoca
+ third_party/maldoca/src/third_party/tensorflow_protos
+ third_party/maldoca/src/third_party/zlibwrapper
+ third_party/markupsafe
+ third_party/mesa
+ third_party/metrics_proto
+ third_party/minigbm
+ third_party/modp_b64
+ third_party/nasm
+ third_party/nearby
+ third_party/neon_2_sse
+ third_party/node
+ third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
+ third_party/one_euro_filter
+ third_party/opencv
+ third_party/openscreen
+ third_party/openscreen/src/third_party/mozilla
+ third_party/openscreen/src/third_party/tinycbor/src/src
+ third_party/ots
+ third_party/pdfium
+ third_party/pdfium/third_party/agg23
+ third_party/pdfium/third_party/base
+ third_party/pdfium/third_party/bigint
+ third_party/pdfium/third_party/freetype
+ third_party/pdfium/third_party/lcms
+ third_party/pdfium/third_party/libopenjpeg20
+ third_party/pdfium/third_party/libpng16
+ third_party/pdfium/third_party/libtiff
+ third_party/pdfium/third_party/skia_shared
+ third_party/perfetto
+ third_party/perfetto/protos/third_party/chromium
+ third_party/pffft
+ third_party/ply
+ third_party/polymer
+ third_party/private-join-and-compute
+ third_party/private_membership
+ third_party/protobuf
+ third_party/protobuf/third_party/six
+ third_party/pyjson5
+ third_party/qcms
+ third_party/rnnoise
+ third_party/s2cellid
+ third_party/securemessage
+ third_party/shell-encryption
+ third_party/simplejson
+ third_party/skia
+ third_party/skia/include/third_party/skcms
+ third_party/skia/include/third_party/vulkan
+ third_party/skia/third_party/skcms
+ third_party/skia/third_party/vulkan
+ third_party/smhasher
+ third_party/snappy
+ third_party/sqlite
+ third_party/swiftshader
+ third_party/swiftshader/third_party/astc-encoder
+ third_party/swiftshader/third_party/llvm-subzero
+ third_party/swiftshader/third_party/marl
+ third_party/swiftshader/third_party/subzero
+ third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
+ third_party/tcmalloc
+ third_party/tensorflow-text
+ third_party/tflite
+ third_party/tflite/src/third_party/eigen3
+ third_party/tflite/src/third_party/fft2d
+ third_party/ruy
+ third_party/six
+ third_party/ukey2
+ third_party/unrar
+ third_party/usrsctp
+ third_party/utf
+ third_party/vulkan
+ third_party/web-animations-js
+ third_party/webdriver
+ third_party/webgpu-cts
+ third_party/webrtc
+ third_party/webrtc/common_audio/third_party/ooura
+ third_party/webrtc/common_audio/third_party/spl_sqrt_floor
+ third_party/webrtc/modules/third_party/fft
+ third_party/webrtc/modules/third_party/g711
+ third_party/webrtc/modules/third_party/g722
+ third_party/webrtc/rtc_base/third_party/base64
+ third_party/webrtc/rtc_base/third_party/sigslot
+ third_party/widevine
+ third_party/woff2
+ third_party/wuffs
+ third_party/x11proto
+ third_party/xcbproto
+ third_party/zxcvbn-cpp
+ third_party/zlib/google
+ url/third_party/mozilla
+ v8/src/third_party/siphash
+ v8/src/third_party/valgrind
+ v8/src/third_party/utf8-decoder
+ v8/third_party/inspector_protocol
+ v8/third_party/v8
+
+ # gyp -> gn leftovers
+ base/third_party/libevent
+ third_party/speech-dispatcher
+ third_party/usb_ids
+ third_party/xdg-utils
+ )
+ if ! use system-ffmpeg; then
+ keeplibs+=( third_party/ffmpeg third_party/opus )
+ fi
+ if ! use system-icu; then
+ keeplibs+=( third_party/icu )
+ fi
+ if use system-harfbuzz; then
+ keeplibs+=( third_party/harfbuzz-ng/utils )
+ else
+ keeplibs+=( third_party/harfbuzz-ng )
+ fi
+ if use wayland && ! use headless ; then
+ keeplibs+=( third_party/wayland )
+ fi
+ if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
+ keeplibs+=( third_party/libxml )
+ keeplibs+=( third_party/libxslt )
+ keeplibs+=( third_party/openh264 )
+ keeplibs+=( third_party/re2 )
+ if use system-icu; then
+ keeplibs+=( third_party/icu )
+ fi
+ fi
+ if use arm64 || use ppc64 ; then
+ keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
+ fi
+ # we need to generate ppc64 stuff because upstream does not ship it yet
+ # it has to be done before unbundling.
+ if use ppc64; then
+ pushd third_party/libvpx >/dev/null || die
+ mkdir -p source/config/linux/ppc64 || die
+ ./generate_gni.sh || die
+ popd >/dev/null || die
+ fi
+
+ # Remove most bundled libraries. Some are still needed.
+ build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
+
+ if use js-type-check; then
+ ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
+ fi
+
+ # 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
+}
+
+src_configure() {
+ # Calling this here supports resumption via FEATURES=keepwork
+ python_setup
+
+ local myconf_gn=""
+
+ # Make sure the build system will use the right tools, bug #340795.
+ tc-export AR CC CXX NM
+
+ if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
+ # Force clang since gcc is pretty broken at the moment.
+ CC=${CHOST}-clang
+ CXX=${CHOST}-clang++
+ strip-unsupported-flags
+ fi
+
+ if tc-is-clang; then
+ myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
+ else
+ if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
+ die "Compiling with sys-libs/libcxx requires clang."
+ fi
+ myconf_gn+=" is_clang=false"
+ fi
+
+ # Define a custom toolchain for GN
+ myconf_gn+=" custom_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\""
+ else
+ myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
+ fi
+
+ # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
+ myconf_gn+=" is_debug=false"
+
+ # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
+ # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
+ myconf_gn+=" dcheck_always_on=$(usex debug true false)"
+ myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
+
+ # Component build isn't generally intended for use by end users. It's mostly useful
+ # for development and debugging.
+ myconf_gn+=" is_component_build=$(usex component-build true false)"
+
+ # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
+ myconf_gn+=" enable_nacl=false"
+
+ # Use system-provided libraries.
+ # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
+ # TODO: use_system_hunspell (upstream changes needed).
+ # TODO: use_system_protobuf (bug #525560).
+ # TODO: use_system_sqlite (http://crbug.com/22208).
+
+ # libevent: https://bugs.gentoo.org/593458
+ local gn_system_libraries=(
+ flac
+ fontconfig
+ freetype
+ # Need harfbuzz_from_pkgconfig target
+ #harfbuzz-ng
+ libdrm
+ libjpeg
+ libpng
+ libwebp
+ zlib
+ )
+ if use system-ffmpeg; then
+ gn_system_libraries+=( ffmpeg opus )
+ fi
+ if use system-icu; then
+ gn_system_libraries+=( icu )
+ fi
+ if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
+ # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
+ gn_system_libraries+=( libxml )
+ gn_system_libraries+=( libxslt )
+ gn_system_libraries+=( openh264 )
+ gn_system_libraries+=( re2 )
+ fi
+ build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
+
+ # See dependency logic in third_party/BUILD.gn
+ myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
+
+ # Disable deprecated libgnome-keyring dependency, bug #713012
+ myconf_gn+=" use_gnome_keyring=false"
+
+ # Optional dependencies.
+ myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
+ myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
+ myconf_gn+=" enable_widevine=$(usex widevine true false)"
+ myconf_gn+=" use_cups=$(usex cups true false)"
+ myconf_gn+=" use_kerberos=$(usex kerberos true false)"
+ myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
+ myconf_gn+=" use_vaapi=$(usex vaapi true false)"
+ myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
+
+ # TODO: link_pulseaudio=true for GN.
+
+ myconf_gn+=" disable_fieldtrial_testing_config=true"
+
+ # Never use bundled gold binary. Disable gold linker flags for now.
+ # Do not use bundled clang.
+ # Trying to use gold results in linker crash.
+ myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
+
+ # Disable forced lld, bug 641556
+ myconf_gn+=" use_lld=false"
+
+ # Disable pseudolocales, only used for testing
+ myconf_gn+=" enable_pseudolocales=false"
+
+ # Disable code formating of generated files
+ myconf_gn+=" blink_enable_generated_code_formatting=false"
+
+ ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
+ myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
+ myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
+
+ # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
+ # Note: these are for Gentoo use ONLY. For your own distribution,
+ # please get your own set of keys. Feel free to contact chromium@gentoo.org
+ # for more info. The OAuth2 credentials, however, have been left out.
+ # Those OAuth2 credentials have been broken for quite some time anyway.
+ # Instead we apply a patch to use the --oauth2-client-id= and
+ # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
+ # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
+ # Chromium without baked-in values.
+ local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
+ myconf_gn+=" google_api_key=\"${google_api_key}\""
+ local myarch="$(tc-arch)"
+
+ # Avoid CFLAGS problems, bug #352457, bug #390147.
+ if ! use custom-cflags; then
+ replace-flags "-Os" "-O2"
+ strip-flags
+
+ # Debug info section overflows without component build
+ # Prevent linker from running out of address space, bug #471810 .
+ if ! use component-build || use x86; then
+ filter-flags "-g*"
+ fi
+
+ # Prevent libvpx build failures. Bug 530248, 544702, 546984.
+ if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
+ filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
+ fi
+ fi
+
+ if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
+ append-flags -stdlib=libc++
+ append-ldflags -stdlib=libc++
+ fi
+
+ if [[ $myarch = amd64 ]] ; then
+ myconf_gn+=" target_cpu=\"x64\""
+ ffmpeg_target_arch=x64
+ elif [[ $myarch = x86 ]] ; then
+ myconf_gn+=" target_cpu=\"x86\""
+ ffmpeg_target_arch=ia32
+
+ # This is normally defined by compiler_cpu_abi in
+ # build/config/compiler/BUILD.gn, but we patch that part out.
+ append-flags -msse2 -mfpmath=sse -mmmx
+ elif [[ $myarch = arm64 ]] ; then
+ myconf_gn+=" target_cpu=\"arm64\""
+ ffmpeg_target_arch=arm64
+ elif [[ $myarch = arm ]] ; then
+ myconf_gn+=" target_cpu=\"arm\""
+ ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
+ elif [[ $myarch = ppc64 ]] ; then
+ myconf_gn+=" target_cpu=\"ppc64\""
+ ffmpeg_target_arch=ppc64
+ else
+ die "Failed to determine target arch, got '$myarch'."
+ fi
+
+ # Make sure that -Werror doesn't get added to CFLAGS by the build system.
+ # Depending on GCC version the warnings are different and we don't want
+ # the build to fail because of that.
+ myconf_gn+=" treat_warnings_as_errors=false"
+
+ # Disable fatal linker warnings, bug 506268.
+ myconf_gn+=" fatal_linker_warnings=false"
+
+ # Bug 491582.
+ export TMPDIR="${WORKDIR}/temp"
+ mkdir -p -m 755 "${TMPDIR}" || die
+
+ # https://bugs.gentoo.org/654216
+ addpredict /dev/dri/ #nowarn
+
+ #if ! use system-ffmpeg; then
+ if false; then
+ local build_ffmpeg_args=""
+ if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
+ build_ffmpeg_args+=" --disable-asm"
+ fi
+
+ # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
+ einfo "Configuring bundled ffmpeg..."
+ pushd third_party/ffmpeg > /dev/null || die
+ chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
+ --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
+ chromium/scripts/copy_config.sh || die
+ chromium/scripts/generate_gn.py || die
+ popd > /dev/null || die
+ fi
+
+ # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
+ append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
+
+ # Disable unknown warning message from clang.
+ tc-is-clang && append-flags -Wno-unknown-warning-option
+
+ # Explicitly disable ICU data file support for system-icu builds.
+ if use system-icu; then
+ myconf_gn+=" icu_use_data_file=false"
+ fi
+
+ # Enable ozone wayland and/or headless support
+ myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
+ myconf_gn+=" ozone_platform_headless=true"
+ myconf_gn+=" ozone_platform_x11=$(usex headless false true)"
+ if use wayland || use headless; then
+ if use headless; then
+ myconf_gn+=" ozone_platform=\"headless\""
+ myconf_gn+=" use_x11=false"
+ else
+ myconf_gn+=" ozone_platform_wayland=true"
+ myconf_gn+=" use_system_libdrm=true"
+ myconf_gn+=" use_system_minigbm=true"
+ myconf_gn+=" use_xkbcommon=true"
+ myconf_gn+=" ozone_platform=\"wayland\""
+ fi
+ else
+ myconf_gn+=" ozone_platform=\"x11\""
+ fi
+
+ # Enable official builds
+ myconf_gn+=" is_official_build=$(usex official true false)"
+ myconf_gn+=" use_thin_lto=false"
+ if use official; then
+ # 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
+ # Disable CFI: unsupported for GCC, requires clang+lto+lld
+ myconf_gn+=" is_cfi=false"
+ # Disable PGO, because profile data is only compatible with >=clang-11
+ myconf_gn+=" chrome_pgo_phase=0"
+ # Don't add symbols to build
+ myconf_gn+=" symbol_level=0"
+ fi
+
+ einfo "Configuring Chromium..."
+ set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
+ echo "$@"
+ "$@" || die
+}
+
+src_compile() {
+ # Final link uses lots of file descriptors.
+ ulimit -n 2048
+
+ # Calling this here supports resumption via FEATURES=keepwork
+ python_setup
+
+ # Don't inherit PYTHONPATH from environment, bug #789021, #812689
+ local -x PYTHONPATH=
+
+ #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
+
+ # Build mksnapshot and pax-mark it.
+ local x
+ for x in mksnapshot v8_context_snapshot_generator; do
+ if tc-is-cross-compiler; then
+ eninja -C out/Release "host/${x}"
+ pax-mark m "out/Release/host/${x}"
+ else
+ eninja -C out/Release "${x}"
+ pax-mark m "out/Release/${x}"
+ fi
+ done
+
+ # 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
+ use suid && eninja -C out/Release chrome_sandbox
+
+ pax-mark m out/Release/chrome
+
+ mv out/Release/chromedriver{.unstripped,} || die
+
+ # Build manpage; bug #684550
+ sed -e 's|@@PACKAGE@@|chromium-browser|g;
+ s|@@MENUNAME@@|Chromium|g;' \
+ chrome/app/resources/manpage.1.in > \
+ out/Release/chromium-browser.1 || die
+
+ # Build desktop file; bug #706786
+ sed -e 's|@@MENUNAME@@|Chromium|g;
+ s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
+ s|@@PACKAGE@@|chromium-browser|g;
+ s|\(^Exec=\)/usr/bin/|\1|g;' \
+ chrome/installer/linux/common/desktop.template > \
+ out/Release/chromium-browser-chromium.desktop || die
+
+ # Build vk_swiftshader_icd.json; bug #827861
+ sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
+ third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
+ out/Release/vk_swiftshader_icd.json || die
+}
+
+src_install() {
+ local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
+ exeinto "${CHROMIUM_HOME}"
+ doexe out/Release/chrome
+
+ if use suid; then
+ newexe out/Release/chrome_sandbox chrome-sandbox
+ fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
+ fi
+
+ doexe out/Release/chromedriver
+ doexe out/Release/chrome_crashpad_handler
+
+ ozone_auto_session () {
+ use wayland && ! use headless && echo true || echo false
+ }
+ local sedargs=( -e
+ "s:/usr/lib/:/usr/$(get_libdir)/:g;
+ s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
+ )
+ sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
+ doexe chromium-launcher.sh
+
+ # It is important that we name the target "chromium-browser",
+ # xdg-utils expect it; bug #355517.
+ dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
+ # keep the old symlink around for consistency
+ dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
+
+ dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
+
+ # Allow users to override command-line options, bug #357629.
+ insinto /etc/chromium
+ newins "${FILESDIR}/chromium.default" "default"
+
+ pushd out/Release/locales > /dev/null || die
+ chromium_remove_language_paks
+ popd
+
+ insinto "${CHROMIUM_HOME}"
+ doins out/Release/*.bin
+ doins out/Release/*.pak
+ (
+ shopt -s nullglob
+ local files=(out/Release/*.so out/Release/*.so.[0-9])
+ [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
+ )
+
+ if ! use system-icu; then
+ doins out/Release/icudtl.dat
+ fi
+
+ doins -r out/Release/locales
+ doins -r out/Release/resources
+ doins -r out/Release/MEIPreload
+
+ # Install vk_swiftshader_icd.json; bug #827861
+ doins out/Release/vk_swiftshader_icd.json
+
+ if [[ -d out/Release/swiftshader ]]; then
+ insinto "${CHROMIUM_HOME}/swiftshader"
+ doins out/Release/swiftshader/*.so
+ fi
+
+ # Install icons
+ local branding size
+ for size in 16 24 32 48 64 128 256 ; do
+ case ${size} in
+ 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
+ *) branding="chrome/app/theme/chromium" ;;
+ esac
+ newicon -s ${size} "${branding}/product_logo_${size}.png" \
+ chromium-browser.png
+ done
+
+ # Install desktop entry
+ domenu out/Release/chromium-browser-chromium.desktop
+
+ # Install GNOME default application entry (bug #303100).
+ insinto /usr/share/gnome-control-center/default-apps
+ newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
+
+ # Install manpage; bug #684550
+ doman out/Release/chromium-browser.1
+ dosym chromium-browser.1 /usr/share/man/man1/chromium.1
+
+ readme.gentoo_create_doc
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+ readme.gentoo_print_elog
+
+ if use vaapi; then
+ elog "VA-API is disabled by default at runtime. You have to enable it"
+ elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
+ elog "in /etc/chromium/default."
+ fi
+ if use screencast; then
+ elog "Screencast is disabled by default at runtime. Either enable it"
+ elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
+ elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
+ elog "to CHROMIUM_FLAGS in /etc/chromium/default."
+ fi
+}
diff --git a/www-client/chromium/chromium-98.0.4750.0.ebuild b/www-client/chromium/chromium-98.0.4750.0.ebuild
new file mode 100644
index 0000000..840aa82
--- /dev/null
+++ b/www-client/chromium/chromium-98.0.4750.0.ebuild
@@ -0,0 +1,963 @@
+# Copyright 2009-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_REQ_USE="xml"
+
+CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
+ 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 vi zh-CN zh-TW"
+
+inherit check-reqs chromium-2 desktop flag-o-matic ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
+
+DESCRIPTION="Open-source version of Google Chrome web browser"
+HOMEPAGE="https://chromium.org/"
+PATCHSET="3"
+PATCHSET_NAME="chromium-$(ver_cut 1)-patchset-${PATCHSET}"
+SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
+ https://github.com/stha09/chromium-patches/releases/download/${PATCHSET_NAME}/${PATCHSET_NAME}.tar.xz"
+
+LICENSE="BSD"
+SLOT="0/dev"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="component-build cups cpu_flags_arm_neon debug +hangouts headless +js-type-check kerberos +official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-harfbuzz +system-icu +system-png vaapi wayland widevine"
+REQUIRED_USE="
+ component-build? ( !suid )
+ screencast? ( wayland )
+"
+
+COMMON_X_DEPEND="
+ media-libs/mesa:=[gbm(+)]
+ x11-libs/libX11:=
+ x11-libs/libXcomposite:=
+ x11-libs/libXcursor:=
+ x11-libs/libXdamage:=
+ x11-libs/libXext:=
+ x11-libs/libXfixes:=
+ >=x11-libs/libXi-1.6.0:=
+ x11-libs/libXrandr:=
+ x11-libs/libXrender:=
+ x11-libs/libXtst:=
+ x11-libs/libxcb:=
+ x11-libs/libxshmfence:=
+ vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
+"
+
+COMMON_DEPEND="
+ app-arch/bzip2:=
+ cups? ( >=net-print/cups-1.3.11:= )
+ dev-libs/expat:=
+ dev-libs/glib:2
+ >=dev-libs/libxml2-2.9.4-r3:=[icu]
+ dev-libs/nspr:=
+ >=dev-libs/nss-3.26:=
+ >=media-libs/alsa-lib-1.0.19:=
+ media-libs/fontconfig:=
+ >=media-libs/freetype-2.11.0-r1:=
+ system-harfbuzz? ( >=media-libs/harfbuzz-2.9.0:0=[icu(-)] )
+ media-libs/libjpeg-turbo:=
+ system-png? ( media-libs/libpng:=[-apng] )
+ pulseaudio? ( media-sound/pulseaudio:= )
+ system-ffmpeg? (
+ >=media-video/ffmpeg-4.3:=
+ || (
+ media-video/ffmpeg[-samba]
+ >=net-fs/samba-4.5.10-r1[-debug(-)]
+ )
+ >=media-libs/opus-1.3.1:=
+ )
+ net-misc/curl[ssl]
+ sys-apps/dbus:=
+ sys-apps/pciutils:=
+ virtual/udev
+ x11-libs/cairo:=
+ x11-libs/gdk-pixbuf:2
+ x11-libs/libxkbcommon:=
+ x11-libs/pango:=
+ media-libs/flac:=
+ >=media-libs/libwebp-0.4.0:=
+ sys-libs/zlib:=[minizip]
+ kerberos? ( virtual/krb5 )
+ !headless? (
+ ${COMMON_X_DEPEND}
+ >=app-accessibility/at-spi2-atk-2.26:2
+ >=app-accessibility/at-spi2-core-2.26:2
+ >=dev-libs/atk-2.26
+ x11-libs/gtk+:3[X]
+ wayland? (
+ dev-libs/wayland:=
+ screencast? ( media-video/pipewire:0/0.3 )
+ x11-libs/gtk+:3[wayland,X]
+ x11-libs/libdrm:=
+ )
+ )
+"
+RDEPEND="${COMMON_DEPEND}
+ x11-misc/xdg-utils
+ virtual/opengl
+ virtual/ttf-fonts
+ selinux? ( sec-policy/selinux-chromium )
+"
+DEPEND="${COMMON_DEPEND}
+"
+# dev-vcs/git - https://bugs.gentoo.org/593476
+BDEPEND="
+ ${PYTHON_DEPS}
+ $(python_gen_any_dep '
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ')
+ >=app-arch/gzip-1.7
+ dev-lang/perl
+ >=dev-util/gn-0.1807
+ dev-vcs/git
+ >=dev-util/gperf-3.0.3
+ >=dev-util/ninja-1.7.2
+ >=net-libs/nodejs-7.6.0[inspector]
+ >=sys-devel/bison-2.4.3
+ sys-devel/flex
+ virtual/pkgconfig
+ js-type-check? ( virtual/jre )
+"
+
+# These are intended for ebuild maintainer use to force clang if GCC is broken.
+: ${CHROMIUM_FORCE_CLANG=no}
+: ${CHROMIUM_FORCE_LIBCXX=no}
+
+if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
+ BDEPEND+=" >=sys-devel/clang-12"
+fi
+
+if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
+ RDEPEND+=" >=sys-libs/libcxx-12"
+ DEPEND+=" >=sys-libs/libcxx-12"
+else
+ COMMON_DEPEND="
+ dev-libs/libxslt:=
+ >=dev-libs/re2-0.2019.08.01:=
+ >=media-libs/openh264-1.6.0:=
+ system-icu? ( >=dev-libs/icu-69.1:= )
+ "
+ RDEPEND+="${COMMON_DEPEND}"
+ DEPEND+="${COMMON_DEPEND}"
+fi
+
+if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
+ EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
+fi
+
+DISABLE_AUTOFORMATTING="yes"
+DOC_CONTENTS="
+Some web pages may require additional fonts to display properly.
+Try installing some of the following packages if some characters
+are not displayed properly:
+- media-fonts/arphicfonts
+- media-fonts/droid
+- media-fonts/ipamonafont
+- media-fonts/noto
+- media-fonts/ja-ipafonts
+- media-fonts/takao-fonts
+- media-fonts/wqy-microhei
+- media-fonts/wqy-zenhei
+
+To fix broken icons on the Downloads page, you should install an icon
+theme that covers the appropriate MIME types, and configure this as your
+GTK+ icon theme.
+
+For native file dialogs in KDE, install kde-apps/kdialog.
+
+To make password storage work with your desktop environment you may
+have install one of the supported credentials management applications:
+- app-crypt/libsecret (GNOME)
+- kde-frameworks/kwallet (KDE)
+If you have one of above packages installed, but don't want to use
+them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
+in /etc/chromium/default.
+"
+
+python_check_deps() {
+ has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
+}
+
+pre_build_checks() {
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ local -x CPP="$(tc-getCXX) -E"
+ if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
+ die "At least gcc 9.2 is required"
+ fi
+ if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
+ CPP="${CHOST}-clang++ -E"
+ if ! ver_test "$(clang-major-version)" -ge 12; then
+ die "At least clang 12 is required"
+ fi
+ fi
+ fi
+
+ # Check build requirements, bug #541816 and bug #471810 .
+ CHECKREQS_MEMORY="4G"
+ CHECKREQS_DISK_BUILD="9G"
+ if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
+ if use custom-cflags || use component-build; then
+ CHECKREQS_DISK_BUILD="25G"
+ fi
+ if ! use component-build; then
+ CHECKREQS_MEMORY="16G"
+ fi
+ fi
+ check-reqs_pkg_setup
+}
+
+pkg_pretend() {
+ pre_build_checks
+}
+
+pkg_setup() {
+ pre_build_checks
+
+ chromium_suid_sandbox_check_kernel_config
+
+ # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
+ if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
+ ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
+ ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
+ fi
+}
+
+src_prepare() {
+ # Calling this here supports resumption via FEATURES=keepwork
+ python_setup
+
+ local PATCHES=(
+ "${WORKDIR}/patches"
+ "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
+ "${FILESDIR}/chromium-98-EnumTable-crash.patch"
+ "${FILESDIR}/chromium-98-system-libdrm.patch"
+ "${FILESDIR}/chromium-glibc-2.34.patch"
+ "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
+ "${FILESDIR}/chromium-shim_headers.patch"
+ )
+
+ default
+
+ mkdir -p third_party/node/linux/node-linux-x64/bin || die
+ ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
+
+ # adjust python interpreter version
+ sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
+
+ local keeplibs=(
+ base/third_party/cityhash
+ base/third_party/double_conversion
+ base/third_party/dynamic_annotations
+ base/third_party/icu
+ base/third_party/nspr
+ base/third_party/superfasthash
+ base/third_party/symbolize
+ base/third_party/valgrind
+ base/third_party/xdg_mime
+ base/third_party/xdg_user_dirs
+ 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
+ net/third_party/uri_template
+ third_party/abseil-cpp
+ third_party/angle
+ third_party/angle/src/common/third_party/base
+ third_party/angle/src/common/third_party/smhasher
+ third_party/angle/src/common/third_party/xxhash
+ third_party/angle/src/third_party/libXNVCtrl
+ third_party/angle/src/third_party/trace_event
+ third_party/angle/src/third_party/volk
+ third_party/apple_apsl
+ third_party/axe-core
+ third_party/blink
+ third_party/boringssl
+ third_party/boringssl/src/third_party/fiat
+ third_party/breakpad
+ third_party/breakpad/breakpad/src/third_party/curl
+ third_party/brotli
+ third_party/catapult
+ third_party/catapult/common/py_vulcanize/third_party/rcssmin
+ third_party/catapult/common/py_vulcanize/third_party/rjsmin
+ third_party/catapult/third_party/beautifulsoup4-4.9.3
+ third_party/catapult/third_party/html5lib-1.1
+ third_party/catapult/third_party/polymer
+ third_party/catapult/third_party/six
+ third_party/catapult/tracing/third_party/d3
+ third_party/catapult/tracing/third_party/gl-matrix
+ third_party/catapult/tracing/third_party/jpeg-js
+ third_party/catapult/tracing/third_party/jszip
+ third_party/catapult/tracing/third_party/mannwhitneyu
+ third_party/catapult/tracing/third_party/oboe
+ third_party/catapult/tracing/third_party/pako
+ third_party/ced
+ third_party/cld_3
+ third_party/closure_compiler
+ third_party/crashpad
+ third_party/crashpad/crashpad/third_party/lss
+ third_party/crashpad/crashpad/third_party/zlib
+ third_party/crc32c
+ third_party/cros_system_api
+ third_party/dav1d
+ third_party/dawn
+ third_party/dawn/third_party/khronos
+ third_party/dawn/third_party/tint
+ third_party/depot_tools
+ third_party/devscripts
+ third_party/devtools-frontend
+ third_party/devtools-frontend/src/front_end/third_party/acorn
+ third_party/devtools-frontend/src/front_end/third_party/axe-core
+ third_party/devtools-frontend/src/front_end/third_party/chromium
+ third_party/devtools-frontend/src/front_end/third_party/codemirror
+ 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/lighthouse
+ third_party/devtools-frontend/src/front_end/third_party/lit-html
+ 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/wasmparser
+ third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
+ third_party/devtools-frontend/src/third_party
+ third_party/distributed_point_functions
+ third_party/dom_distiller_js
+ third_party/eigen3
+ third_party/emoji-segmenter
+ third_party/farmhash
+ third_party/fdlibm
+ third_party/fft2d
+ third_party/flatbuffers
+ third_party/freetype
+ third_party/fusejs
+ third_party/highway
+ third_party/libgifcodec
+ third_party/liburlpattern
+ third_party/libzip
+ third_party/gemmlowp
+ third_party/google_input_tools
+ third_party/google_input_tools/third_party/closure_library
+ third_party/google_input_tools/third_party/closure_library/third_party/closure
+ third_party/googletest
+ third_party/hunspell
+ third_party/iccjpeg
+ third_party/inspector_protocol
+ third_party/jinja2
+ third_party/jsoncpp
+ third_party/jstemplate
+ third_party/khronos
+ third_party/leveldatabase
+ third_party/libXNVCtrl
+ third_party/libaddressinput
+ third_party/libaom
+ third_party/libaom/source/libaom/third_party/fastfeat
+ third_party/libaom/source/libaom/third_party/vector
+ third_party/libaom/source/libaom/third_party/x86inc
+ third_party/libavif
+ third_party/libgav1
+ third_party/libjingle
+ third_party/libjxl
+ third_party/libphonenumber
+ third_party/libsecret
+ third_party/libsrtp
+ third_party/libsync
+ third_party/libudev
+ third_party/libva_protected_content
+ third_party/libvpx
+ third_party/libvpx/source/libvpx/third_party/x86inc
+ third_party/libwebm
+ third_party/libx11
+ third_party/libxcb-keysyms
+ third_party/libxml/chromium
+ third_party/libyuv
+ third_party/llvm
+ third_party/lottie
+ third_party/lss
+ third_party/lzma_sdk
+ third_party/mako
+ third_party/maldoca
+ third_party/maldoca/src/third_party/tensorflow_protos
+ third_party/maldoca/src/third_party/zlibwrapper
+ third_party/markupsafe
+ third_party/mesa
+ third_party/metrics_proto
+ third_party/minigbm
+ third_party/modp_b64
+ third_party/nasm
+ third_party/nearby
+ third_party/neon_2_sse
+ third_party/node
+ third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
+ third_party/one_euro_filter
+ third_party/opencv
+ third_party/openscreen
+ third_party/openscreen/src/third_party/mozilla
+ third_party/openscreen/src/third_party/tinycbor/src/src
+ third_party/ots
+ third_party/pdfium
+ third_party/pdfium/third_party/agg23
+ third_party/pdfium/third_party/base
+ third_party/pdfium/third_party/bigint
+ third_party/pdfium/third_party/freetype
+ third_party/pdfium/third_party/lcms
+ third_party/pdfium/third_party/libopenjpeg20
+ third_party/pdfium/third_party/libpng16
+ third_party/pdfium/third_party/libtiff
+ third_party/pdfium/third_party/skia_shared
+ third_party/perfetto
+ third_party/perfetto/protos/third_party/chromium
+ third_party/pffft
+ third_party/ply
+ third_party/polymer
+ third_party/private-join-and-compute
+ third_party/private_membership
+ third_party/protobuf
+ third_party/protobuf/third_party/six
+ third_party/pyjson5
+ third_party/qcms
+ third_party/rnnoise
+ third_party/s2cellid
+ third_party/securemessage
+ third_party/shell-encryption
+ third_party/simplejson
+ third_party/skia
+ third_party/skia/include/third_party/skcms
+ third_party/skia/include/third_party/vulkan
+ third_party/skia/third_party/skcms
+ third_party/skia/third_party/vulkan
+ third_party/smhasher
+ third_party/snappy
+ third_party/sqlite
+ third_party/swiftshader
+ third_party/swiftshader/third_party/astc-encoder
+ third_party/swiftshader/third_party/llvm-subzero
+ third_party/swiftshader/third_party/marl
+ third_party/swiftshader/third_party/subzero
+ third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
+ third_party/tcmalloc
+ third_party/tensorflow-text
+ third_party/tflite
+ third_party/tflite/src/third_party/eigen3
+ third_party/tflite/src/third_party/fft2d
+ third_party/ruy
+ third_party/six
+ third_party/ukey2
+ third_party/unrar
+ third_party/usrsctp
+ third_party/utf
+ third_party/vulkan
+ third_party/web-animations-js
+ third_party/webdriver
+ third_party/webgpu-cts
+ third_party/webrtc
+ third_party/webrtc/common_audio/third_party/ooura
+ third_party/webrtc/common_audio/third_party/spl_sqrt_floor
+ third_party/webrtc/modules/third_party/fft
+ third_party/webrtc/modules/third_party/g711
+ third_party/webrtc/modules/third_party/g722
+ third_party/webrtc/rtc_base/third_party/base64
+ third_party/webrtc/rtc_base/third_party/sigslot
+ third_party/widevine
+ third_party/woff2
+ third_party/wuffs
+ third_party/x11proto
+ third_party/xcbproto
+ third_party/zxcvbn-cpp
+ third_party/zlib/google
+ url/third_party/mozilla
+ v8/src/third_party/siphash
+ v8/src/third_party/valgrind
+ v8/src/third_party/utf8-decoder
+ v8/third_party/inspector_protocol
+ v8/third_party/v8
+
+ # gyp -> gn leftovers
+ base/third_party/libevent
+ third_party/speech-dispatcher
+ third_party/usb_ids
+ third_party/xdg-utils
+ )
+ if ! use system-ffmpeg; then
+ keeplibs+=( third_party/ffmpeg third_party/opus )
+ fi
+ if ! use system-icu; then
+ keeplibs+=( third_party/icu )
+ fi
+ if ! use system-png; then
+ keeplibs+=( third_party/libpng )
+ fi
+ if use system-harfbuzz; then
+ keeplibs+=( third_party/harfbuzz-ng/utils )
+ else
+ keeplibs+=( third_party/harfbuzz-ng )
+ fi
+ if use wayland && ! use headless ; then
+ keeplibs+=( third_party/wayland )
+ fi
+ if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
+ keeplibs+=( third_party/libxml )
+ keeplibs+=( third_party/libxslt )
+ keeplibs+=( third_party/openh264 )
+ keeplibs+=( third_party/re2 )
+ if use system-icu; then
+ keeplibs+=( third_party/icu )
+ fi
+ fi
+ if use arm64 || use ppc64 ; then
+ keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
+ fi
+ # we need to generate ppc64 stuff because upstream does not ship it yet
+ # it has to be done before unbundling.
+ if use ppc64; then
+ pushd third_party/libvpx >/dev/null || die
+ mkdir -p source/config/linux/ppc64 || die
+ ./generate_gni.sh || die
+ popd >/dev/null || die
+ fi
+
+ # Remove most bundled libraries. Some are still needed.
+ build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
+
+ if use js-type-check; then
+ ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
+ fi
+
+ # 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
+}
+
+src_configure() {
+ # Calling this here supports resumption via FEATURES=keepwork
+ python_setup
+
+ local myconf_gn=""
+
+ # Make sure the build system will use the right tools, bug #340795.
+ tc-export AR CC CXX NM
+
+ if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
+ # Force clang since gcc is pretty broken at the moment.
+ CC=${CHOST}-clang
+ CXX=${CHOST}-clang++
+ strip-unsupported-flags
+ fi
+
+ if tc-is-clang; then
+ myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
+ else
+ if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
+ die "Compiling with sys-libs/libcxx requires clang."
+ fi
+ myconf_gn+=" is_clang=false"
+ fi
+
+ # Define a custom toolchain for GN
+ myconf_gn+=" custom_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\""
+ else
+ myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
+ fi
+
+ # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
+ myconf_gn+=" is_debug=false"
+
+ # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
+ # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
+ myconf_gn+=" dcheck_always_on=$(usex debug true false)"
+ myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
+
+ # Component build isn't generally intended for use by end users. It's mostly useful
+ # for development and debugging.
+ myconf_gn+=" is_component_build=$(usex component-build true false)"
+
+ # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
+ myconf_gn+=" enable_nacl=false"
+
+ # Use system-provided libraries.
+ # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
+ # TODO: use_system_hunspell (upstream changes needed).
+ # TODO: use_system_protobuf (bug #525560).
+ # TODO: use_system_sqlite (http://crbug.com/22208).
+
+ # libevent: https://bugs.gentoo.org/593458
+ local gn_system_libraries=(
+ flac
+ fontconfig
+ freetype
+ # Need harfbuzz_from_pkgconfig target
+ #harfbuzz-ng
+ libdrm
+ libjpeg
+ libwebp
+ zlib
+ )
+ if use system-ffmpeg; then
+ gn_system_libraries+=( ffmpeg opus )
+ fi
+ if use system-icu; then
+ gn_system_libraries+=( icu )
+ fi
+ if use system-png; then
+ gn_system_libraries+=( libpng )
+ fi
+ if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
+ # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
+ gn_system_libraries+=( libxml )
+ gn_system_libraries+=( libxslt )
+ gn_system_libraries+=( openh264 )
+ gn_system_libraries+=( re2 )
+ fi
+ build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
+
+ # See dependency logic in third_party/BUILD.gn
+ myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
+
+ # Disable deprecated libgnome-keyring dependency, bug #713012
+ myconf_gn+=" use_gnome_keyring=false"
+
+ # Optional dependencies.
+ myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
+ myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
+ myconf_gn+=" enable_widevine=$(usex widevine true false)"
+ myconf_gn+=" use_cups=$(usex cups true false)"
+ myconf_gn+=" use_kerberos=$(usex kerberos true false)"
+ myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
+ myconf_gn+=" use_vaapi=$(usex vaapi true false)"
+ myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
+
+ # TODO: link_pulseaudio=true for GN.
+
+ myconf_gn+=" disable_fieldtrial_testing_config=true"
+
+ # Never use bundled gold binary. Disable gold linker flags for now.
+ # Do not use bundled clang.
+ # Trying to use gold results in linker crash.
+ myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
+
+ # Disable forced lld, bug 641556
+ myconf_gn+=" use_lld=false"
+
+ # Disable pseudolocales, only used for testing
+ myconf_gn+=" enable_pseudolocales=false"
+
+ # Disable code formating of generated files
+ myconf_gn+=" blink_enable_generated_code_formatting=false"
+
+ ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
+ myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
+ myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
+
+ # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
+ # Note: these are for Gentoo use ONLY. For your own distribution,
+ # please get your own set of keys. Feel free to contact chromium@gentoo.org
+ # for more info. The OAuth2 credentials, however, have been left out.
+ # Those OAuth2 credentials have been broken for quite some time anyway.
+ # Instead we apply a patch to use the --oauth2-client-id= and
+ # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
+ # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
+ # Chromium without baked-in values.
+ local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
+ myconf_gn+=" google_api_key=\"${google_api_key}\""
+ local myarch="$(tc-arch)"
+
+ # Avoid CFLAGS problems, bug #352457, bug #390147.
+ if ! use custom-cflags; then
+ replace-flags "-Os" "-O2"
+ strip-flags
+
+ # Debug info section overflows without component build
+ # Prevent linker from running out of address space, bug #471810 .
+ if ! use component-build || use x86; then
+ filter-flags "-g*"
+ fi
+
+ # Prevent libvpx build failures. Bug 530248, 544702, 546984.
+ if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
+ filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
+ fi
+ fi
+
+ if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
+ append-flags -stdlib=libc++
+ append-ldflags -stdlib=libc++
+ fi
+
+ if [[ $myarch = amd64 ]] ; then
+ myconf_gn+=" target_cpu=\"x64\""
+ ffmpeg_target_arch=x64
+ elif [[ $myarch = x86 ]] ; then
+ myconf_gn+=" target_cpu=\"x86\""
+ ffmpeg_target_arch=ia32
+
+ # This is normally defined by compiler_cpu_abi in
+ # build/config/compiler/BUILD.gn, but we patch that part out.
+ append-flags -msse2 -mfpmath=sse -mmmx
+ elif [[ $myarch = arm64 ]] ; then
+ myconf_gn+=" target_cpu=\"arm64\""
+ ffmpeg_target_arch=arm64
+ elif [[ $myarch = arm ]] ; then
+ myconf_gn+=" target_cpu=\"arm\""
+ ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
+ elif [[ $myarch = ppc64 ]] ; then
+ myconf_gn+=" target_cpu=\"ppc64\""
+ ffmpeg_target_arch=ppc64
+ else
+ die "Failed to determine target arch, got '$myarch'."
+ fi
+
+ # Make sure that -Werror doesn't get added to CFLAGS by the build system.
+ # Depending on GCC version the warnings are different and we don't want
+ # the build to fail because of that.
+ myconf_gn+=" treat_warnings_as_errors=false"
+
+ # Disable fatal linker warnings, bug 506268.
+ myconf_gn+=" fatal_linker_warnings=false"
+
+ # Bug 491582.
+ export TMPDIR="${WORKDIR}/temp"
+ mkdir -p -m 755 "${TMPDIR}" || die
+
+ # https://bugs.gentoo.org/654216
+ addpredict /dev/dri/ #nowarn
+
+ #if ! use system-ffmpeg; then
+ if false; then
+ local build_ffmpeg_args=""
+ if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
+ build_ffmpeg_args+=" --disable-asm"
+ fi
+
+ # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
+ einfo "Configuring bundled ffmpeg..."
+ pushd third_party/ffmpeg > /dev/null || die
+ chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
+ --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
+ chromium/scripts/copy_config.sh || die
+ chromium/scripts/generate_gn.py || die
+ popd > /dev/null || die
+ fi
+
+ # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
+ append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
+
+ # Disable unknown warning message from clang.
+ tc-is-clang && append-flags -Wno-unknown-warning-option
+
+ # Explicitly disable ICU data file support for system-icu builds.
+ if use system-icu; then
+ myconf_gn+=" icu_use_data_file=false"
+ fi
+
+ # Enable ozone wayland and/or headless support
+ myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
+ myconf_gn+=" ozone_platform_headless=true"
+ myconf_gn+=" ozone_platform_x11=$(usex headless false true)"
+ if use wayland || use headless; then
+ if use headless; then
+ myconf_gn+=" ozone_platform=\"headless\""
+ myconf_gn+=" use_x11=false"
+ else
+ myconf_gn+=" ozone_platform_wayland=true"
+ myconf_gn+=" use_system_libdrm=true"
+ myconf_gn+=" use_system_minigbm=true"
+ myconf_gn+=" use_xkbcommon=true"
+ myconf_gn+=" ozone_platform=\"wayland\""
+ fi
+ else
+ myconf_gn+=" ozone_platform=\"x11\""
+ fi
+
+ # Enable official builds
+ myconf_gn+=" is_official_build=$(usex official true false)"
+ myconf_gn+=" use_thin_lto=false"
+ if use official; then
+ # 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
+ # Disable CFI: unsupported for GCC, requires clang+lto+lld
+ myconf_gn+=" is_cfi=false"
+ # Disable PGO, because profile data is only compatible with >=clang-11
+ myconf_gn+=" chrome_pgo_phase=0"
+ # Don't add symbols to build
+ myconf_gn+=" symbol_level=0"
+ fi
+
+ einfo "Configuring Chromium..."
+ set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
+ echo "$@"
+ "$@" || die
+}
+
+src_compile() {
+ # Final link uses lots of file descriptors.
+ ulimit -n 2048
+
+ # Calling this here supports resumption via FEATURES=keepwork
+ python_setup
+
+ # Don't inherit PYTHONPATH from environment, bug #789021, #812689
+ local -x PYTHONPATH=
+
+ #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
+
+ # Build mksnapshot and pax-mark it.
+ local x
+ for x in mksnapshot v8_context_snapshot_generator; do
+ if tc-is-cross-compiler; then
+ eninja -C out/Release "host/${x}"
+ pax-mark m "out/Release/host/${x}"
+ else
+ eninja -C out/Release "${x}"
+ pax-mark m "out/Release/${x}"
+ fi
+ done
+
+ # 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
+ use suid && eninja -C out/Release chrome_sandbox
+
+ pax-mark m out/Release/chrome
+
+ mv out/Release/chromedriver{.unstripped,} || die
+
+ # Build manpage; bug #684550
+ sed -e 's|@@PACKAGE@@|chromium-browser|g;
+ s|@@MENUNAME@@|Chromium|g;' \
+ chrome/app/resources/manpage.1.in > \
+ out/Release/chromium-browser.1 || die
+
+ # Build desktop file; bug #706786
+ sed -e 's|@@MENUNAME@@|Chromium|g;
+ s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
+ s|@@PACKAGE@@|chromium-browser|g;
+ s|\(^Exec=\)/usr/bin/|\1|g;' \
+ chrome/installer/linux/common/desktop.template > \
+ out/Release/chromium-browser-chromium.desktop || die
+
+ # Build vk_swiftshader_icd.json; bug #827861
+ sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
+ third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
+ out/Release/vk_swiftshader_icd.json || die
+}
+
+src_install() {
+ local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
+ exeinto "${CHROMIUM_HOME}"
+ doexe out/Release/chrome
+
+ if use suid; then
+ newexe out/Release/chrome_sandbox chrome-sandbox
+ fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
+ fi
+
+ doexe out/Release/chromedriver
+ doexe out/Release/chrome_crashpad_handler
+
+ ozone_auto_session () {
+ use wayland && ! use headless && echo true || echo false
+ }
+ local sedargs=( -e
+ "s:/usr/lib/:/usr/$(get_libdir)/:g;
+ s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
+ )
+ sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
+ doexe chromium-launcher.sh
+
+ # It is important that we name the target "chromium-browser",
+ # xdg-utils expect it; bug #355517.
+ dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
+ # keep the old symlink around for consistency
+ dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
+
+ dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
+
+ # Allow users to override command-line options, bug #357629.
+ insinto /etc/chromium
+ newins "${FILESDIR}/chromium.default" "default"
+
+ pushd out/Release/locales > /dev/null || die
+ chromium_remove_language_paks
+ popd
+
+ insinto "${CHROMIUM_HOME}"
+ doins out/Release/*.bin
+ doins out/Release/*.pak
+ (
+ shopt -s nullglob
+ local files=(out/Release/*.so out/Release/*.so.[0-9])
+ [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
+ )
+
+ if ! use system-icu; then
+ doins out/Release/icudtl.dat
+ fi
+
+ doins -r out/Release/locales
+ doins -r out/Release/resources
+ doins -r out/Release/MEIPreload
+
+ # Install vk_swiftshader_icd.json; bug #827861
+ doins out/Release/vk_swiftshader_icd.json
+
+ if [[ -d out/Release/swiftshader ]]; then
+ insinto "${CHROMIUM_HOME}/swiftshader"
+ doins out/Release/swiftshader/*.so
+ fi
+
+ # Install icons
+ local branding size
+ for size in 16 24 32 48 64 128 256 ; do
+ case ${size} in
+ 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
+ *) branding="chrome/app/theme/chromium" ;;
+ esac
+ newicon -s ${size} "${branding}/product_logo_${size}.png" \
+ chromium-browser.png
+ done
+
+ # Install desktop entry
+ domenu out/Release/chromium-browser-chromium.desktop
+
+ # Install GNOME default application entry (bug #303100).
+ insinto /usr/share/gnome-control-center/default-apps
+ newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
+
+ # Install manpage; bug #684550
+ doman out/Release/chromium-browser.1
+ dosym chromium-browser.1 /usr/share/man/man1/chromium.1
+
+ readme.gentoo_create_doc
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+ readme.gentoo_print_elog
+
+ if use vaapi; then
+ elog "VA-API is disabled by default at runtime. You have to enable it"
+ elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
+ elog "in /etc/chromium/default."
+ fi
+ if use screencast; then
+ elog "Screencast is disabled by default at runtime. Either enable it"
+ elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
+ elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
+ elog "to CHROMIUM_FLAGS in /etc/chromium/default."
+ fi
+}
diff --git a/www-client/chromium/files/chromium-93-InkDropHost-crash.patch b/www-client/chromium/files/chromium-93-InkDropHost-crash.patch
new file mode 100644
index 0000000..54d16db
--- /dev/null
+++ b/www-client/chromium/files/chromium-93-InkDropHost-crash.patch
@@ -0,0 +1,25 @@
+diff --git a/ui/views/animation/ink_drop_host_view.h b/ui/views/animation/ink_drop_host_view.h
+index bd0975b..e5df288 100644
+--- a/ui/views/animation/ink_drop_host_view.h
++++ b/ui/views/animation/ink_drop_host_view.h
+@@ -238,6 +238,11 @@ class VIEWS_EXPORT InkDropHost {
+ // Used to observe View and inform the InkDrop of host-transform changes.
+ ViewLayerTransformObserver host_view_transform_observer_;
+
++ // Declared before |ink_drop_|, because InkDropImpl may call
++ // RemoveInkDropLayer on partly destructed InkDropHost. In
++ // that case |ink_drop_mask_| must be still valid.
++ std::unique_ptr<views::InkDropMask> ink_drop_mask_;
++
+ // Should not be accessed directly. Use GetInkDrop() instead.
+ std::unique_ptr<InkDrop> ink_drop_;
+
+@@ -261,8 +266,6 @@ class VIEWS_EXPORT InkDropHost {
+ int ink_drop_small_corner_radius_ = 2;
+ int ink_drop_large_corner_radius_ = 4;
+
+- std::unique_ptr<views::InkDropMask> ink_drop_mask_;
+-
+ base::RepeatingCallback<std::unique_ptr<InkDrop>()> create_ink_drop_callback_;
+ base::RepeatingCallback<std::unique_ptr<InkDropRipple>()>
+ create_ink_drop_ripple_callback_;
diff --git a/www-client/chromium/files/chromium-96-EnumTable-crash.patch b/www-client/chromium/files/chromium-96-EnumTable-crash.patch
new file mode 100644
index 0000000..9736739
--- /dev/null
+++ b/www-client/chromium/files/chromium-96-EnumTable-crash.patch
@@ -0,0 +1,76 @@
+diff --git a/components/cast_channel/enum_table.h b/components/cast_channel/enum_table.h
+index aad9e08..2f3fcad 100644
+--- a/components/cast_channel/enum_table.h
++++ b/components/cast_channel/enum_table.h
+@@ -8,6 +8,7 @@
+ #include <cstdint>
+ #include <cstring>
+ #include <ostream>
++#include <vector>
+
+ #include "base/check_op.h"
+ #include "base/macros.h"
+@@ -188,7 +189,6 @@ class
+ inline constexpr GenericEnumTableEntry(int32_t value);
+ inline constexpr GenericEnumTableEntry(int32_t value, base::StringPiece str);
+
+- GenericEnumTableEntry(const GenericEnumTableEntry&) = delete;
+ GenericEnumTableEntry& operator=(const GenericEnumTableEntry&) = delete;
+
+ private:
+@@ -254,7 +254,6 @@ class EnumTable {
+ constexpr Entry(E value, base::StringPiece str)
+ : GenericEnumTableEntry(static_cast<int32_t>(value), str) {}
+
+- Entry(const Entry&) = delete;
+ Entry& operator=(const Entry&) = delete;
+ };
+
+@@ -313,15 +312,14 @@ class EnumTable {
+ if (is_sorted_) {
+ const std::size_t index = static_cast<std::size_t>(value);
+ if (ANALYZER_ASSUME_TRUE(index < data_.size())) {
+- const auto& entry = data_.begin()[index];
++ const auto& entry = data_[index];
+ if (ANALYZER_ASSUME_TRUE(entry.has_str()))
+ return entry.str();
+ }
+ return absl::nullopt;
+ }
+ return GenericEnumTableEntry::FindByValue(
+- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
+- data_.size(), static_cast<int32_t>(value));
++ &data_[0], data_.size(), static_cast<int32_t>(value));
+ }
+
+ // This overload of GetString is designed for cases where the argument is a
+@@ -349,8 +347,7 @@ class EnumTable {
+ // enum value directly.
+ absl::optional<E> GetEnum(base::StringPiece str) const {
+ auto* entry = GenericEnumTableEntry::FindByString(
+- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
+- data_.size(), str);
++ &data_[0], data_.size(), str);
+ return entry ? static_cast<E>(entry->value) : absl::optional<E>();
+ }
+
+@@ -365,7 +362,7 @@ class EnumTable {
+ // Align the data on a cache line boundary.
+ alignas(64)
+ #endif
+- std::initializer_list<Entry> data_;
++ const std::vector<Entry> data_;
+ bool is_sorted_;
+
+ constexpr EnumTable(std::initializer_list<Entry> data, bool is_sorted)
+@@ -377,8 +374,8 @@ class EnumTable {
+
+ for (std::size_t i = 0; i < data.size(); i++) {
+ for (std::size_t j = i + 1; j < data.size(); j++) {
+- const Entry& ei = data.begin()[i];
+- const Entry& ej = data.begin()[j];
++ const Entry& ei = data[i];
++ const Entry& ej = data[j];
+ DCHECK(ei.value != ej.value)
+ << "Found duplicate enum values at indices " << i << " and " << j;
+ DCHECK(!(ei.has_str() && ej.has_str() && ei.str() == ej.str()))
diff --git a/www-client/chromium/files/chromium-96-freetype-unbundle.patch b/www-client/chromium/files/chromium-96-freetype-unbundle.patch
new file mode 100644
index 0000000..6ef5ff6
--- /dev/null
+++ b/www-client/chromium/files/chromium-96-freetype-unbundle.patch
@@ -0,0 +1,10 @@
+--- a/build/linux/BUILD.gn
++++ b/build/linux/BUILD.gn
+@@ -23,6 +23,7 @@
+ # the system, use with caution,for details see build/config/freetype/BUILD.gn.
+ pkg_config("freetype_from_pkgconfig") {
+ visibility = [
++ "//build/config/freetype:freetype",
+ "//third_party:freetype_harfbuzz",
+ "//third_party/harfbuzz-ng:harfbuzz_source",
+ ]
diff --git a/www-client/chromium/files/chromium-98-EnumTable-crash.patch b/www-client/chromium/files/chromium-98-EnumTable-crash.patch
new file mode 100644
index 0000000..f058ec1
--- /dev/null
+++ b/www-client/chromium/files/chromium-98-EnumTable-crash.patch
@@ -0,0 +1,76 @@
+diff --git a/components/cast_channel/enum_table.h b/components/cast_channel/enum_table.h
+index 842553a..89de703 100644
+--- a/components/cast_channel/enum_table.h
++++ b/components/cast_channel/enum_table.h
+@@ -8,6 +8,7 @@
+ #include <cstdint>
+ #include <cstring>
+ #include <ostream>
++#include <vector>
+
+ #include "base/check_op.h"
+ #include "base/notreached.h"
+@@ -187,7 +188,6 @@ class
+ inline constexpr GenericEnumTableEntry(int32_t value);
+ inline constexpr GenericEnumTableEntry(int32_t value, base::StringPiece str);
+
+- GenericEnumTableEntry(const GenericEnumTableEntry&) = delete;
+ GenericEnumTableEntry& operator=(const GenericEnumTableEntry&) = delete;
+
+ private:
+@@ -253,7 +253,6 @@ class EnumTable {
+ constexpr Entry(E value, base::StringPiece str)
+ : GenericEnumTableEntry(static_cast<int32_t>(value), str) {}
+
+- Entry(const Entry&) = delete;
+ Entry& operator=(const Entry&) = delete;
+ };
+
+@@ -312,15 +311,14 @@ class EnumTable {
+ if (is_sorted_) {
+ const std::size_t index = static_cast<std::size_t>(value);
+ if (ANALYZER_ASSUME_TRUE(index < data_.size())) {
+- const auto& entry = data_.begin()[index];
++ const auto& entry = data_[index];
+ if (ANALYZER_ASSUME_TRUE(entry.has_str()))
+ return entry.str();
+ }
+ return absl::nullopt;
+ }
+ return GenericEnumTableEntry::FindByValue(
+- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
+- data_.size(), static_cast<int32_t>(value));
++ &data_[0], data_.size(), static_cast<int32_t>(value));
+ }
+
+ // This overload of GetString is designed for cases where the argument is a
+@@ -348,8 +346,7 @@ class EnumTable {
+ // enum value directly.
+ absl::optional<E> GetEnum(base::StringPiece str) const {
+ auto* entry = GenericEnumTableEntry::FindByString(
+- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
+- data_.size(), str);
++ &data_[0], data_.size(), str);
+ return entry ? static_cast<E>(entry->value) : absl::optional<E>();
+ }
+
+@@ -364,7 +361,7 @@ class EnumTable {
+ // Align the data on a cache line boundary.
+ alignas(64)
+ #endif
+- std::initializer_list<Entry> data_;
++ const std::vector<Entry> data_;
+ bool is_sorted_;
+
+ constexpr EnumTable(std::initializer_list<Entry> data, bool is_sorted)
+@@ -376,8 +373,8 @@ class EnumTable {
+
+ for (std::size_t i = 0; i < data.size(); i++) {
+ for (std::size_t j = i + 1; j < data.size(); j++) {
+- const Entry& ei = data.begin()[i];
+- const Entry& ej = data.begin()[j];
++ const Entry& ei = data[i];
++ const Entry& ej = data[j];
+ DCHECK(ei.value != ej.value)
+ << "Found duplicate enum values at indices " << i << " and " << j;
+ DCHECK(!(ei.has_str() && ej.has_str() && ei.str() == ej.str()))
diff --git a/www-client/chromium/files/chromium-98-system-libdrm.patch b/www-client/chromium/files/chromium-98-system-libdrm.patch
new file mode 100644
index 0000000..f2f18be
--- /dev/null
+++ b/www-client/chromium/files/chromium-98-system-libdrm.patch
@@ -0,0 +1,34 @@
+diff --git a/media/gpu/chromeos/BUILD.gn b/media/gpu/chromeos/BUILD.gn
+index a5c8945..d742d80 100644
+--- a/media/gpu/chromeos/BUILD.gn
++++ b/media/gpu/chromeos/BUILD.gn
+@@ -32,6 +32,7 @@ source_set("chromeos") {
+
+ if (use_vaapi) {
+ deps += [
++ "//build/config/linux/libdrm",
+ "//media/gpu/vaapi",
+ "//media/gpu/vaapi:common",
+ ]
+diff --git a/media/gpu/chromeos/video_decoder_pipeline.cc b/media/gpu/chromeos/video_decoder_pipeline.cc
+index 2d77cd9..1883fd4 100644
+--- a/media/gpu/chromeos/video_decoder_pipeline.cc
++++ b/media/gpu/chromeos/video_decoder_pipeline.cc
+@@ -4,6 +4,9 @@
+
+ #include "media/gpu/chromeos/video_decoder_pipeline.h"
+
++#if BUILDFLAG(USE_VAAPI)
++#include <drm_fourcc.h>
++#endif
+ #include <memory>
+
+ #include "base/bind.h"
+@@ -28,7 +31,6 @@
+
+ #if BUILDFLAG(USE_VAAPI)
+ #include "media/gpu/vaapi/vaapi_video_decoder.h"
+-#include "third_party/libdrm/src/include/drm/drm_fourcc.h"
+ #elif BUILDFLAG(USE_V4L2_CODEC)
+ #include "media/gpu/v4l2/v4l2_video_decoder.h"
+ #else
diff --git a/www-client/chromium/files/chromium-browser.xml b/www-client/chromium/files/chromium-browser.xml
new file mode 100644
index 0000000..2c95a55
--- /dev/null
+++ b/www-client/chromium/files/chromium-browser.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE default-apps SYSTEM "gnome-da-list.dtd">
+<default-apps>
+ <web-browsers>
+ <web-browser>
+ <name>Chromium</name>
+ <executable>chromium-browser</executable>
+ <command>chromium-browser %s</command>
+ <icon-name>chromium-browser</icon-name>
+ <run-in-terminal>false</run-in-terminal>
+ </web-browser>
+ </web-browsers>
+</default-apps>
diff --git a/www-client/chromium/files/chromium-glibc-2.34.patch b/www-client/chromium/files/chromium-glibc-2.34.patch
new file mode 100644
index 0000000..64c03a6
--- /dev/null
+++ b/www-client/chromium/files/chromium-glibc-2.34.patch
@@ -0,0 +1,50 @@
+From 600d63c2c59a9892dbc5423d7d8bb1565a9f91e7 Mon Sep 17 00:00:00 2001
+From: Michel Salim <michel@fb.com>
+Date: Thu, 04 Nov 2021 14:22:40 -0700
+Subject: [PATCH] Handle long SIGSTKSZ in glibc > 2.33
+
+`SIGSTKSZ` is no longer constant in glibc > 2.33 but a function
+returning a long. Cast before taking `max`.
+
+See https://sourceware.org/git/?p=glibc.git;a=blob;f=NEWS;h=85e84fe53699fe9e392edffa993612ce08b2954a;hb=HEAD
+
+Signed-off-by: Michel Salim <michel@fb.com>
+Change-Id: I197f8ff3053eede80d6aed096be4f0113dd43241
+(relocated to chromium repo, removed static)
+---
+
+diff --git a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
+index ca353c4..5cdabcf 100644
+--- a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
++++ b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
+@@ -138,7 +138,7 @@
+ // SIGSTKSZ may be too small to prevent the signal handlers from overrunning
+ // the alternative stack. Ensure that the size of the alternative stack is
+ // large enough.
+- static const unsigned kSigStackSize = std::max(16384, SIGSTKSZ);
++ const unsigned kSigStackSize = std::max(16384U, (unsigned)SIGSTKSZ);
+
+ // Only set an alternative stack if there isn't already one, or if the current
+ // one is too small.
+diff --git a/sandbox/linux/services/credentials.cc b/sandbox/linux/services/credentials.cc
+index ca6b595..1c1ee42 100644
+--- a/sandbox/linux/services/credentials.cc
++++ b/sandbox/linux/services/credentials.cc
+@@ -11,6 +11,7 @@
+ #include <stddef.h>
+ #include <stdint.h>
+ #include <stdio.h>
++#include <string.h>
+ #include <sys/syscall.h>
+ #include <sys/types.h>
+ #include <sys/wait.h>
+@@ -100,7 +101,8 @@ bool ChrootToSafeEmptyDir() {
+ // TODO(crbug.com/1247458) Broken in MSan builds after LLVM f1bb30a4956f.
+ clone_flags |= CLONE_VM | CLONE_VFORK | CLONE_SETTLS;
+
+- char tls_buf[PTHREAD_STACK_MIN] = {0};
++ char tls_buf[PTHREAD_STACK_MIN];
++ memset(tls_buf, 0, PTHREAD_STACK_MIN);
+ tls = tls_buf;
+ #endif
+
diff --git a/www-client/chromium/files/chromium-launcher-r7.sh b/www-client/chromium/files/chromium-launcher-r7.sh
new file mode 100644
index 0000000..1163ff3
--- /dev/null
+++ b/www-client/chromium/files/chromium-launcher-r7.sh
@@ -0,0 +1,59 @@
+#!/bin/bash
+
+# Allow the user to override command-line flags, bug #357629.
+# This is based on Debian's chromium-browser package, and is intended
+# to be consistent with Debian.
+for f in /etc/chromium/*; do
+ [[ -f ${f} ]] && source "${f}"
+done
+
+# Prefer user defined CHROMIUM_USER_FLAGS (from env) over system
+# default CHROMIUM_FLAGS (from /etc/chromium/default).
+CHROMIUM_FLAGS=${CHROMIUM_USER_FLAGS:-"$CHROMIUM_FLAGS"}
+
+# Let the wrapped binary know that it has been run through the wrapper
+export CHROME_WRAPPER=$(readlink -f "$0")
+
+PROGDIR=${CHROME_WRAPPER%/*}
+
+case ":$PATH:" in
+ *:$PROGDIR:*)
+ # $PATH already contains $PROGDIR
+ ;;
+ *)
+ # Append $PROGDIR to $PATH
+ export PATH="$PATH:$PROGDIR"
+ ;;
+esac
+
+if [[ ${EUID} == 0 && -O ${XDG_CONFIG_HOME:-${HOME}} ]]; then
+ # Running as root with HOME owned by root.
+ # Pass --user-data-dir to work around upstream failsafe.
+ CHROMIUM_FLAGS="--user-data-dir=${XDG_CONFIG_HOME:-${HOME}/.config}/chromium
+ ${CHROMIUM_FLAGS}"
+fi
+
+# Select session type and platform
+if @@OZONE_AUTO_SESSION@@; then
+ platform=
+ if [[ ${XDG_SESSION_TYPE} == x11 ]]; then
+ platform=x11
+ elif [[ ${XDG_SESSION_TYPE} == wayland ]]; then
+ platform=wayland
+ else
+ if [[ -n ${WAYLAND_DISPLAY} ]]; then
+ platform=wayland
+ else
+ platform=x11
+ fi
+ fi
+ if ${DISABLE_OZONE_PLATFORM:-false}; then
+ platform=x11
+ fi
+ CHROMIUM_FLAGS="--ozone-platform=${platform} ${CHROMIUM_FLAGS}"
+fi
+
+# Set the .desktop file name
+export CHROME_DESKTOP="chromium-browser-chromium.desktop"
+
+exec -a "chromium-browser" "$PROGDIR/chrome" --extra-plugin-dir=/usr/lib/nsbrowser/plugins ${CHROMIUM_FLAGS} "$@"
--git a/www-client/chromium/files/chromium-shim_headers.patch b/www-client/chromium/files/chromium-shim_headers.patch
new file mode 100644
index 0000000..9372632
--- /dev/null
+++ b/www-client/chromium/files/chromium-shim_headers.patch
@@ -0,0 +1,48 @@
+From e273172bbafedca36984fc40f4aa6c44b79ac2ef Mon Sep 17 00:00:00 2001
+From: Stephan Hartmann <stha09@googlemail.com>
+Date: Fri, 25 Dec 2020 09:10:32 +0000
+Subject: [PATCH] shim_headers: fix outputs generation
+
+---
+ build/shim_headers.gni | 11 +++++++----
+ 1 file changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/build/shim_headers.gni b/build/shim_headers.gni
+index 0900cba..5138647 100644
+--- a/build/shim_headers.gni
++++ b/build/shim_headers.gni
+@@ -6,6 +6,8 @@ template("shim_headers") {
+ action_name = "gen_${target_name}"
+ config_name = "${target_name}_config"
+ shim_headers_path = "${root_gen_dir}/shim_headers/${target_name}"
++ shim_root_path = rebase_path(invoker.root_path)
++ shim_rel_path = rebase_path("${shim_root_path}", rebase_path("//"))
+
+ config(config_name) {
+ include_dirs = [ shim_headers_path ]
+@@ -16,7 +18,7 @@ template("shim_headers") {
+ args = [
+ "--generate",
+ "--headers-root",
+- rebase_path(invoker.root_path),
++ "${shim_root_path}",
+ "--output-directory",
+ rebase_path(shim_headers_path),
+ ]
+@@ -27,9 +29,10 @@ template("shim_headers") {
+ ]
+ }
+ args += invoker.headers
+-
+- outputs = process_file_template(invoker.headers,
+- "${shim_headers_path}/{{source_file_part}}")
++ outputs = []
++ foreach(shim_header, invoker.headers) {
++ outputs += [ "${shim_headers_path}/${shim_rel_path}/" + shim_header ]
++ }
+ }
+
+ group(target_name) {
+--
+2.26.2
+
diff --git a/www-client/chromium/files/chromium-use-oauth2-client-switches-as-default.patch b/www-client/chromium/files/chromium-use-oauth2-client-switches-as-default.patch
new file mode 100644
index 0000000..9d9c57b
--- /dev/null
+++ b/www-client/chromium/files/chromium-use-oauth2-client-switches-as-default.patch
@@ -0,0 +1,17 @@
+diff -upr chromium-89.0.4389.58.orig/google_apis/google_api_keys.cc chromium-89.0.4389.58/google_apis/google_api_keys.cc
+--- chromium-89.0.4389.58.orig/google_apis/google_api_keys.cc 2021-02-24 22:37:18.494007649 +0000
++++ chromium-89.0.4389.58/google_apis/google_api_keys.cc 2021-02-24 22:35:00.865777600 +0000
+@@ -154,11 +154,11 @@ class APIKeyCache {
+
+ std::string default_client_id = CalculateKeyValue(
+ GOOGLE_DEFAULT_CLIENT_ID,
+- STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), nullptr,
++ STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), ::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), nullptr,
++ STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), ::switches::kOAuth2ClientSecret,
+ std::string(), environment.get(), command_line, gaia_config);
+
+ // We currently only allow overriding the baked-in values for the
diff --git a/www-client/chromium/files/chromium.default b/www-client/chromium/files/chromium.default
new file mode 100644
index 0000000..c140cde
--- /dev/null
+++ b/www-client/chromium/files/chromium.default
@@ -0,0 +1,5 @@
+# Default settings for chromium. This file is sourced by /bin/bash from
+# the chromium launcher.
+
+# Options to pass to chromium.
+#CHROMIUM_FLAGS=""
diff --git a/www-client/chromium/metadata.xml b/www-client/chromium/metadata.xml
new file mode 100644
index 0000000..dcdaa4c
--- /dev/null
+++ b/www-client/chromium/metadata.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>chromium@gentoo.org</email>
+ <name>Chromium in Gentoo Project</name>
+ </maintainer>
+ <use>
+ <flag name="js-type-check">Enable JavaScript type-checking for Chrome's web technology-based UI. Requires Java.</flag>
+ <flag name="component-build">Split build into more shared libraries to speed up linking. Mostly intended for debugging and development, NOT RECOMMENDED for general use.</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="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="official">Enable Official build instead of Developer build.</flag>
+ <flag name="pic">Disable optimized assembly code that is not PIC friendly</flag>
+ <flag name="proprietary-codecs">Enable codecs for patent-encumbered audio and video formats.</flag>
+ <flag name="screencast">Enable support for remote desktop and screen cast using <pkg>media-video/pipewire</pkg></flag>
+ <flag name="suid">Build the SUID sandbox, which is only needed on CONFIG_USER_NS=n kernels</flag>
+ <flag name="system-ffmpeg">Use system ffmpeg instead of the bundled one</flag>
+ <flag name="system-harfbuzz">Use system harfbuzz instead of the bundled one.</flag>
+ <flag name="system-icu">Use system icu instead of the bundled one</flag>
+ <flag name="system-png">Use system libpng instead of the bundled one.</flag>
+ <flag name="widevine">Unsupported closed-source DRM capability (required by Netflix VOD)</flag>
+ </use>
+</pkgmetadata>
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] proj/riscv:master commit in: www-client/chromium/files/, www-client/chromium/
@ 2024-04-12 4:09 Yixun Lan
0 siblings, 0 replies; 10+ messages in thread
From: Yixun Lan @ 2024-04-12 4:09 UTC (permalink / raw
To: gentoo-commits
commit: afda4a50bf7de01b268a57d527896effc924e93f
Author: Andrew Cameron <apcameron <AT> gmail <DOT> com>
AuthorDate: Wed Apr 10 21:38:04 2024 +0000
Commit: Yixun Lan <dlan <AT> gentoo <DOT> org>
CommitDate: Fri Apr 12 03:45:24 2024 +0000
URL: https://gitweb.gentoo.org/proj/riscv.git/commit/?id=afda4a50
www-client/chromium: Update to 123.0.6312.105
Closes: https://github.com/gentoo/riscv/pull/13
Signed-off-by: Andrew Cameron <apcameron <AT> gmail.com>
Signed-off-by: Yixun Lan <dlan <AT> gentoo.org>
www-client/chromium/Manifest | 2 +
www-client/chromium/chromium-123.0.6312.105.ebuild | 1453 ++++++++++++++++++++
.../files/chromium-124-libwebp-shim-sharpyuv.patch | 36 +
3 files changed, 1491 insertions(+)
diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
index 3e9db3c..fd20d18 100644
--- a/www-client/chromium/Manifest
+++ b/www-client/chromium/Manifest
@@ -1,7 +1,9 @@
DIST chromium-123-clang.tar.xz 50178332 BLAKE2B 4b5c4f81a83c7b0c809c93a713e869fde6fe559477665cb3b2f03c62d2175f821b81fb03b0ddd127c6eaf77c41011b4de06561f09a58384153d80fe2b3aa7427 SHA512 17108b9579f16d0da383bd5e41d012f94bcb8445a517ff823aa49b66d3861b0a124b6cce6183fbc64e8050f1ebcd65a9daa2acbda5fdaa42390bfbf4ecb16bd3
DIST chromium-123-rust.tar.xz 145295100 BLAKE2B ae6603a0e0218e4e39d3e8b7aa48a2cd946c90779dac48be26582926963c8a10a48e3e58fd00a23cb8cd9a3584d9d4a142e843f93c761e862253817635f18c2c SHA512 b4f8dce6d74be4be495d9948d7593ec9664c0b93e87456fab33d3ae5ac0e486a4e8576b26a9ab9890285a7c0d566afb803b98225c0692b6cac9f623a10b954a2
+DIST chromium-123.0.6312.105.tar.xz 3481204616 BLAKE2B 8adbc4a0c96ea53b45b26a48c8eb94e29b31b981471a0d5fda4cdea1f7aa69714a9e5a5729a61a49a92b6322889ee794b4c7ac5e243bc495ff5bd04cdc59f616 SHA512 a1abbba78c96fd7bc44a23b21d8180ebff015d17abcb186dece595513fda9d4443ac67498a78181589884c384a48e6c3abfe72e6ee806fdfc764d05f13fb5cb6
DIST chromium-123.0.6312.58.tar.xz 3465099244 BLAKE2B d0b85e740924a33350c5b6d3a6d1e94c8b946c52ac760237b2391127c99326c64b50de29751850dc368331b66402ab0c4fc65b9aeef09302857a1f5300a0d17b SHA512 4cb08767b8a6fe268c44bd7b621632c71f7d2f3f6c1b7bae9e0373dfc2eada397ab511a068582c2d17bbf3ee9ff16f05fccd454d610d63dd2fd14d6ca355a0c0
DIST chromium-patches-123.tar.bz2 4697 BLAKE2B 8a7dd76edb23afb7b2f65084696bce5d6e54d63ca34c4590052db1086ed0a422b1efde863c4daad4e2526f329eb65276b9ad5406017cd97fb75b1a9556c1f933 SHA512 ea47255deac1893896f64496629d34c7092f266a175b8400fcf4f01b9d038ae240e911bff488558bb28e6f5795bbcf276adf20ed1e0ccb8ac99f9ddd260742f9
DIST chromium-ppc64le-gentoo-patches-1.tar.xz 5636 BLAKE2B 1d898939df023c59285b27bee552470483ea06375d1ee8d6947b89c5927c23cc7bfec6b49f3b376ece931d11a56f8e2a45791e0f92ad61974fc8c34c1082d89c SHA512 8a71cb007e47cda8e5fe5d185729389e65c48bd322c8ee8b3986bee8571427b959628f2666bda646a3f89ae64197c0957d3626845ff03461dbd5dee4c964d07c
DIST chromium-profiler-0.2.tar 259952640 BLAKE2B 5e82389fce00b267280d633b26551231c558b80f0c92cd7d60271095a3503365ab673e7a46dc5f74f8a82db1f21262cb24dcc0531d954bab5fb3b175dab3394d SHA512 9fa89a5ab728419683e7495ae676567480987d68a2d589f2aa97bfcbcf123f3c8f97f8bca5f65e5e3f6e41475535add473ded83b9c7a33bb4746a9d05b298a6c
DIST chromium_122.0.6261.57-1raptor0~deb12u1.debian.tar.xz 551860 BLAKE2B b3f9bef07a38061553816d6f0faf610cc19cc8565605bb520c163906a02e91795a6c6ae05c92ebbb6ccaf95e130438c8bf3c70d26a04951e8438074edb48b63d SHA512 6037a47e1011304ee33447ac11fa84a3355176b5452ad9f7132eebf2527eb3e4fc42635e148731b77b17db243b42172203feacb0443e6071dc9cc7c52d41f7d6
+DIST chromium_123.0.6312.86-1raptor0~deb12u1.debian.tar.xz 579124 BLAKE2B a27996211fbed198480e50934e39b0eda4c39e5e78a03f9b290cb90a6c8d7003b6aa828bf35e6744e9d7aa9a922f43baa77d6c9768140baf5749a797c2dad664 SHA512 cfb51fd910f3330100a2dc9ea993d537f126329ff2c590744954a3bfbb712d7bf1d7ad9066628aba5d28c98f2f9b069cf02f8c6048d2ad0a1a376468bdbd9196
diff --git a/www-client/chromium/chromium-123.0.6312.105.ebuild b/www-client/chromium/chromium-123.0.6312.105.ebuild
new file mode 100644
index 0000000..5388d0d
--- /dev/null
+++ b/www-client/chromium/chromium-123.0.6312.105.ebuild
@@ -0,0 +1,1453 @@
+# Copyright 2009-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..12} )
+PYTHON_REQ_USE="xml(+)"
+
+# 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 try and avoid forcing the use of the custom/bundled libcxx, but sometimes
+# it is unavoidable. Remember to force the use of Clang when this is forced.
+
+# GCC is _not_ supported upstream, though patches are welcome. We do our
+# best to enable builds with GCC but reserve the right to force Clang
+# builds if we can't keep up with upstream's changes. Please comment
+# when forcing Clang builds so we can track the need for it.
+
+# 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.
+
+# These variables let us easily bound supported major dependency versions in one place.
+GCC_MIN_VER=12
+GN_MIN_VER=0.2154
+# Since Google use prerelease llvm we can let any adventurous users try to build with prerelease
+# ebuilds; try to keep this up to date with the latest version in the tree.
+LLVM_MAX_SLOT=19
+LLVM_MIN_SLOT=17
+RUST_MIN_VER=1.72.0
+# chromium-tools/get-chromium-toolchain-strings.sh
+GOOGLE_CLANG_VER=llvmorg-19-init-2319-g7c4c2746-1
+GOOGLE_RUST_VER=340bb19fea20fd5f9357bbfac542fad84fc7ea2b-3
+
+# https://bugs.chromium.org/p/v8/issues/detail?id=14449 - V8 used in 120 can't build with GCC
+# Resolved upstream, requires testing and some backporting I'm sure
+: ${CHROMIUM_FORCE_CLANG=yes}
+# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101227 - Chromium 120:
+# webrtc - no matching member function for call to 'emplace'
+: ${CHROMIUM_FORCE_LIBCXX=yes}
+# 121's 'gcc_link_wrapper.py' currently fails if not using lld due to the addition of rust
+: ${CHROMIUM_FORCE_LLD=yes}
+
+: ${CHROMIUM_FORCE_GOOGLE_TOOLCHAIN=no}
+
+VIRTUALX_REQUIRED="pgo"
+
+CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
+ 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"
+
+inherit check-reqs chromium-2 desktop flag-o-matic llvm ninja-utils pax-utils
+inherit python-any-r1 qmake-utils readme.gentoo-r1 toolchain-funcs virtualx xdg-utils
+
+DESCRIPTION="Open-source version of Google Chrome web browser"
+HOMEPAGE="https://www.chromium.org/"
+PATCHSET_PPC64="123.0.6312.86-1raptor0~deb12u1"
+PATCH_V="${PV%%\.*}"
+SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
+ system-toolchain? (
+ 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
+ )
+ 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
+ )
+ pgo? ( https://github.com/elkablo/chromium-profiler/releases/download/v0.2/chromium-profiler-0.2.tar )"
+
+LICENSE="BSD"
+SLOT="0/stable"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv"
+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 libcxx lto +official pax-kernel pgo +proprietary-codecs pulseaudio"
+IUSE+=" qt5 qt6 +screencast selinux +system-toolchain +vaapi +wayland +widevine"
+RESTRICT="!bindist? ( bindist )"
+
+REQUIRED_USE="
+ !headless? ( || ( X wayland ) )
+ pgo? ( X !wayland )
+ qt6? ( qt5 )
+ screencast? ( wayland )
+ !system-toolchain? ( libcxx )
+ ffmpeg-chromium? ( bindist proprietary-codecs )
+"
+
+COMMON_X_DEPEND="
+ x11-libs/libXcomposite:=
+ x11-libs/libXcursor:=
+ x11-libs/libXdamage:=
+ x11-libs/libXfixes:=
+ >=x11-libs/libXi-1.6.0:=
+ x11-libs/libXrandr:=
+ x11-libs/libXrender:=
+ x11-libs/libXtst:=
+ x11-libs/libxshmfence:=
+"
+
+COMMON_SNAPSHOT_DEPEND="
+ system-icu? ( >=dev-libs/icu-71.1:= )
+ >=dev-libs/libxml2-2.12.4:=[icu]
+ dev-libs/nspr:=
+ >=dev-libs/nss-3.26:=
+ dev-libs/libxslt:=
+ media-libs/fontconfig:=
+ >=media-libs/freetype-2.11.0-r1:=
+ system-harfbuzz? ( >=media-libs/harfbuzz-3:0=[icu(-)] )
+ media-libs/libjpeg-turbo:=
+ system-png? ( media-libs/libpng:=[-apng(-)] )
+ system-zstd? ( >=app-arch/zstd-1.5.5:= )
+ >=media-libs/libwebp-0.4.0:=
+ 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:=
+ pulseaudio? ( media-libs/libpulse:= )
+ sys-apps/pciutils:=
+ kerberos? ( virtual/krb5 )
+ vaapi? ( >=media-libs/libva-2.7:=[X?,wayland?] )
+ X? (
+ x11-libs/libX11:=
+ x11-libs/libXext:=
+ x11-libs/libxcb:=
+ )
+ x11-libs/libxkbcommon:=
+ wayland? (
+ dev-libs/libffi:=
+ dev-libs/wayland:=
+ screencast? ( media-video/pipewire:= )
+ )
+ )
+"
+
+COMMON_DEPEND="
+ ${COMMON_SNAPSHOT_DEPEND}
+ app-arch/bzip2:=
+ dev-libs/expat:=
+ net-misc/curl[ssl]
+ sys-apps/dbus:=
+ media-libs/flac:=
+ sys-libs/zlib:=[minizip]
+ !headless? (
+ X? ( ${COMMON_X_DEPEND} )
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ media-libs/mesa:=[X?,wayland?]
+ cups? ( >=net-print/cups-1.3.11:= )
+ virtual/udev
+ x11-libs/cairo:=
+ x11-libs/gdk-pixbuf:2
+ x11-libs/pango:=
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtwidgets:5
+ )
+ qt6? ( dev-qt/qtbase:6[gui,widgets] )
+ )
+"
+RDEPEND="${COMMON_DEPEND}
+ !headless? (
+ || (
+ x11-libs/gtk+:3[X?,wayland?]
+ gui-libs/gtk:4[X?,wayland?]
+ )
+ qt5? ( dev-qt/qtgui:5[X?,wayland?] )
+ qt6? ( dev-qt/qtbase:6[X?,wayland?] )
+ )
+ virtual/ttf-fonts
+ selinux? ( sec-policy/selinux-chromium )
+ bindist? (
+ !ffmpeg-chromium? ( >=media-video/ffmpeg-6.1-r1:0/58.60.60[chromium] )
+ ffmpeg-chromium? ( media-video/ffmpeg-chromium:${PV%%\.*} )
+ )
+"
+DEPEND="${COMMON_DEPEND}
+ !headless? (
+ gtk4? ( gui-libs/gtk:4[X?,wayland?] )
+ !gtk4? ( x11-libs/gtk+:3[X?,wayland?] )
+ )
+"
+
+depend_clang_llvm_version() {
+ echo "sys-devel/clang:$1"
+ echo "sys-devel/llvm:$1"
+ echo "=sys-devel/lld-$1*"
+}
+
+# When passed multiple arguments we assume that
+# we want a range of versions, inclusive.
+depend_clang_llvm_versions() {
+ local _v
+ if [[ $# -eq 1 ]]; then
+ depend_clang_llvm_version "$1"
+ elif [[ $# -eq 2 ]]; then
+ if [[ $1 -eq $2 ]]; then
+ depend_clang_llvm_version "$1"
+ fi
+ echo "|| ("
+ for ((i=$1; i<=$2; i++)); do
+ echo "("
+ depend_clang_llvm_version "${i}"
+ echo ")"
+ done
+ echo ")"
+ else
+ die "depend_clang_llvm_versions() requires 1 or 2 arguments"
+ fi
+}
+
+BDEPEND="
+ ${COMMON_SNAPSHOT_DEPEND}
+ ${PYTHON_DEPS}
+ $(python_gen_any_dep '
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ')
+ >=app-arch/gzip-1.7
+ !headless? (
+ qt5? ( dev-qt/qtcore:5 )
+ qt6? ( dev-qt/qtbase:6 )
+ )
+ system-toolchain? (
+ libcxx? ( >=sys-devel/clang-${LLVM_MIN_SLOT} )
+ lto? ( $(depend_clang_llvm_versions ${LLVM_MIN_SLOT} ${LLVM_MAX_SLOT}) )
+ pgo? (
+ >=dev-python/selenium-3.141.0
+ >=dev-util/web_page_replay_go-20220314
+ $(depend_clang_llvm_versions ${LLVM_MIN_SLOT} ${LLVM_MAX_SLOT})
+ )
+ >=virtual/rust-${RUST_MIN_VER}[profiler(-)]
+ )
+ >=dev-build/gn-${GN_MIN_VER}
+ dev-lang/perl
+ >=dev-build/ninja-1.7.2
+ >=dev-util/gperf-3.0.3
+ dev-vcs/git
+ >=net-libs/nodejs-7.6.0[inspector]
+ >=sys-devel/bison-2.4.3
+ sys-devel/flex
+ virtual/pkgconfig
+"
+
+if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
+ BDEPEND+="system-toolchain? ( >=sys-devel/clang-${LLVM_MIN_SLOT} ) "
+fi
+
+if [[ ${CHROMIUM_FORCE_LLD} == yes ]]; then
+ BDEPEND+="system-toolchain? ( >=sys-devel/lld-${LLVM_MIN_SLOT} ) "
+else
+ # #918897: Hack for arm64
+ BDEPEND+=" arm64? ( >=sys-devel/lld-${LLVM_MIN_SLOT} )"
+fi
+
+if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
+ EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
+fi
+
+DISABLE_AUTOFORMATTING="yes"
+DOC_CONTENTS="
+Some web pages may require additional fonts to display properly.
+Try installing some of the following packages if some characters
+are not displayed properly:
+- media-fonts/arphicfonts
+- media-fonts/droid
+- media-fonts/ipamonafont
+- media-fonts/noto
+- media-fonts/ja-ipafonts
+- media-fonts/takao-fonts
+- media-fonts/wqy-microhei
+- media-fonts/wqy-zenhei
+
+To fix broken icons on the Downloads page, you should install an icon
+theme that covers the appropriate MIME types, and configure this as your
+GTK+ icon theme.
+
+For native file dialogs in KDE, install kde-apps/kdialog.
+
+To make password storage work with your desktop environment you may
+have install one of the supported credentials management applications:
+- app-crypt/libsecret (GNOME)
+- kde-frameworks/kwallet (KDE)
+If you have one of above packages installed, but don't want to use
+them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
+in /etc/chromium/default.
+"
+
+python_check_deps() {
+ python_has_version "dev-python/setuptools[${PYTHON_USEDEP}]"
+}
+
+needs_clang() {
+ [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || use libcxx || use lto || use pgo
+}
+
+needs_lld() {
+ # #641556: Force lld for lto and pgo builds, otherwise disable
+ # #918897: Temporary hack w/ use arm64
+ [[ ${CHROMIUM_FORCE_LLD} == yes ]] || use lto || use pgo || use arm64
+}
+
+llvm_check_deps() {
+ if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
+ einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+
+ if ( use lto || use pgo ) && ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
+ einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+
+ einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
+}
+
+pre_build_checks() {
+ # Check build requirements: bugs #471810, #541816, #914220
+ # We're going to start doing maths here on the size of an unpacked source tarball,
+ # this should make updates easier as chromium continues to balloon in size.
+ local BASE_DISK=18
+ local EXTRA_DISK=1
+ local CHECKREQS_MEMORY="4G"
+ tc-is-cross-compiler && EXTRA_DISK=2
+ if use lto || use pgo; then
+ CHECKREQS_MEMORY="9G"
+ tc-is-cross-compiler && EXTRA_DISK=4
+ use pgo && EXTRA_DISK=8
+ fi
+ if is-flagq '-g?(gdb)?([1-9])'; then
+ if use custom-cflags; then
+ EXTRA_DISK=13
+ fi
+ CHECKREQS_MEMORY="16G"
+ fi
+ CHECKREQS_DISK_BUILD="$((BASE_DISK + EXTRA_DISK))G"
+ check-reqs_${EBUILD_PHASE_FUNC}
+}
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ # The pre_build_checks are all about compilation resources, no need to run it for a binpkg
+ pre_build_checks
+ fi
+
+ if use headless; then
+ local headless_unused_flags=("cups" "kerberos" "pulseaudio" "qt5" "qt6" "vaapi" "wayland")
+ for myiuse in ${headless_unused_flags[@]}; do
+ use ${myiuse} && ewarn "Ignoring USE=${myiuse}, USE=headless is set."
+ done
+ fi
+
+ if ! use bindist && use ffmpeg-chromium; then
+ ewarn "Ignoring USE=ffmpeg-chromium, USE=bindist is not set."
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ # 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
+ local -x CPP="$(tc-getCXX) -E"
+ if tc-is-gcc && ! ver_test "$(gcc-version)" -ge ${GCC_MIN_VER}; then
+ die "At least gcc ${GCC_MIN_VER} is required"
+ fi
+ if use pgo && tc-is-cross-compiler; then
+ die "The pgo USE flag cannot be used when cross-compiling"
+ fi
+ if needs_clang && ! tc-is-clang; then
+ if tc-is-cross-compiler; then
+ CPP="${CBUILD}-clang++ -E"
+ else
+ CPP="${CHOST}-clang++ -E"
+ fi
+ fi
+ if needs_clang || tc-is-clang; then
+ if ver_test "$(clang-major-version)" -lt ${LLVM_MIN_SLOT}; then
+ die "At least Clang ${LLVM_MIN_SLOT} is required"
+ fi
+ # Ideally we never see this, but it should help prevent bugs like 927154
+ if ver_test "$(clang-major-version)" -gt ${LLVM_MAX_SLOT}; then
+ die "Clang $(clang-major-version) is too new; ${LLVM_MAX_SLOT} is the highest supported version"
+ fi
+ fi
+ fi
+ # 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"
+ fi
+ fi
+
+ chromium_suid_sandbox_check_kernel_config
+}
+
+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" || die
+
+ local PATCHES=(
+ "${FILESDIR}/chromium-cross-compile.patch"
+ "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
+ "${FILESDIR}/chromium-109-system-zlib.patch"
+ "${FILESDIR}/chromium-111-InkDropHost-crash.patch"
+ "${FILESDIR}/chromium-117-system-zstd.patch"
+ "${FILESDIR}/chromium-124-libwebp-shim-sharpyuv.patch"
+ "${FILESDIR}/00swiftshader-MCDissassembler.patch"
+ "${FILESDIR}/00swiftshader-use-llvm16.patch"
+ "${FILESDIR}/01fix-rust-target.patch"
+ "${FILESDIR}/02Debian-fix-rust-linking.patch"
+ "${FILESDIR}/03riscv-dav1d.patch"
+ "${FILESDIR}/05riscv-sandbox.patch"
+ "${FILESDIR}/06riscv-ffmpeg.patch"
+ "${FILESDIR}/09riscv.patch"
+ "${FILESDIR}/10cpuinfo.patch"
+ )
+
+ 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
+ sed -i -e \
+ "/if (is_clang && toolchain_has_rust) {/,+2d" \
+ build/config/compiler/BUILD.gn || die "Failed to disable bundled compiler builtins"
+ 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"
+ 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" )
+ fi
+
+ default
+
+ mkdir -p third_party/node/linux/node-linux-x64/bin || die
+ ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
+
+ # adjust python interpreter version
+ sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
+
+ local keeplibs=(
+ base/third_party/cityhash
+ base/third_party/double_conversion
+ base/third_party/dynamic_annotations
+ base/third_party/icu
+ base/third_party/nspr
+ base/third_party/superfasthash
+ base/third_party/symbolize
+ base/third_party/valgrind
+ base/third_party/xdg_user_dirs
+ 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
+ net/third_party/uri_template
+ third_party/abseil-cpp
+ third_party/angle
+ third_party/angle/src/common/third_party/xxhash
+ third_party/angle/src/third_party/ceval
+ third_party/angle/src/third_party/libXNVCtrl
+ third_party/angle/src/third_party/volk
+ third_party/anonymous_tokens
+ third_party/apple_apsl
+ third_party/axe-core
+ third_party/blink
+ third_party/bidimapper
+ third_party/boringssl
+ third_party/boringssl/src/third_party/fiat
+ third_party/breakpad
+ third_party/breakpad/breakpad/src/third_party/curl
+ third_party/brotli
+ third_party/catapult
+ third_party/catapult/common/py_vulcanize/third_party/rcssmin
+ third_party/catapult/common/py_vulcanize/third_party/rjsmin
+ third_party/catapult/third_party/beautifulsoup4-4.9.3
+ third_party/catapult/third_party/html5lib-1.1
+ third_party/catapult/third_party/polymer
+ third_party/catapult/third_party/six
+ third_party/catapult/tracing/third_party/d3
+ third_party/catapult/tracing/third_party/gl-matrix
+ third_party/catapult/tracing/third_party/jpeg-js
+ third_party/catapult/tracing/third_party/jszip
+ third_party/catapult/tracing/third_party/mannwhitneyu
+ third_party/catapult/tracing/third_party/oboe
+ third_party/catapult/tracing/third_party/pako
+ third_party/ced
+ third_party/cld_3
+ third_party/closure_compiler
+ third_party/content_analysis_sdk
+ third_party/cpuinfo
+ third_party/crashpad
+ third_party/crashpad/crashpad/third_party/lss
+ third_party/crashpad/crashpad/third_party/zlib
+ third_party/crc32c
+ third_party/cros_system_api
+ third_party/d3
+ third_party/dav1d
+ third_party/dawn
+ third_party/dawn/third_party/gn/webgpu-cts
+ third_party/dawn/third_party/khronos
+ third_party/depot_tools
+ third_party/devscripts
+ third_party/devtools-frontend
+ third_party/devtools-frontend/src/front_end/third_party/acorn
+ third_party/devtools-frontend/src/front_end/third_party/additional_readme_paths.json
+ third_party/devtools-frontend/src/front_end/third_party/axe-core
+ third_party/devtools-frontend/src/front_end/third_party/chromium
+ third_party/devtools-frontend/src/front_end/third_party/codemirror
+ third_party/devtools-frontend/src/front_end/third_party/csp_evaluator
+ 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/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/rxjs
+ 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/test/unittests/front_end/third_party/i18n
+ third_party/devtools-frontend/src/third_party
+ third_party/distributed_point_functions
+ third_party/dom_distiller_js
+ third_party/eigen3
+ third_party/emoji-segmenter
+ third_party/farmhash
+ third_party/fdlibm
+ third_party/ffmpeg
+ third_party/fft2d
+ third_party/flatbuffers
+ third_party/fp16
+ third_party/freetype
+ third_party/fusejs
+ third_party/fxdiv
+ third_party/highway
+ third_party/liburlpattern
+ third_party/libzip
+ third_party/lit
+ third_party/gemmlowp
+ third_party/google_input_tools
+ third_party/google_input_tools/third_party/closure_library
+ third_party/google_input_tools/third_party/closure_library/third_party/closure
+ third_party/googletest
+ third_party/hunspell
+ third_party/iccjpeg
+ third_party/inspector_protocol
+ third_party/ipcz
+ third_party/jinja2
+ third_party/jsoncpp
+ third_party/jstemplate
+ third_party/khronos
+ third_party/leveldatabase
+ third_party/libaddressinput
+ third_party/libaom
+ third_party/libaom/source/libaom/third_party/fastfeat
+ third_party/libaom/source/libaom/third_party/SVT-AV1
+ third_party/libaom/source/libaom/third_party/vector
+ third_party/libaom/source/libaom/third_party/x86inc
+ third_party/libavif
+ third_party/libevent
+ third_party/libgav1
+ third_party/libjingle
+ third_party/libphonenumber
+ third_party/libsecret
+ third_party/libsrtp
+ third_party/libsync
+ third_party/libudev
+ third_party/libva_protected_content
+ third_party/libvpx
+ third_party/libvpx/source/libvpx/third_party/x86inc
+ third_party/libwebm
+ third_party/libx11
+ third_party/libxcb-keysyms
+ third_party/libxml/chromium
+ third_party/libyuv
+ third_party/lottie
+ third_party/lss
+ third_party/lzma_sdk
+ third_party/mako
+ third_party/maldoca
+ third_party/maldoca/src/third_party/tensorflow_protos
+ third_party/maldoca/src/third_party/zlibwrapper
+ third_party/markupsafe
+ third_party/material_color_utilities
+ third_party/mesa
+ third_party/metrics_proto
+ third_party/minigbm
+ third_party/modp_b64
+ third_party/nasm
+ third_party/nearby
+ third_party/neon_2_sse
+ third_party/node
+ third_party/omnibox_proto
+ third_party/one_euro_filter
+ third_party/openscreen
+ third_party/openscreen/src/third_party/
+ third_party/openscreen/src/third_party/tinycbor/src/src
+ third_party/opus
+ third_party/ots
+ third_party/pdfium
+ third_party/pdfium/third_party/agg23
+ third_party/pdfium/third_party/base
+ third_party/pdfium/third_party/bigint
+ third_party/pdfium/third_party/freetype
+ third_party/pdfium/third_party/lcms
+ third_party/pdfium/third_party/libopenjpeg
+ third_party/pdfium/third_party/libtiff
+ third_party/perfetto
+ third_party/perfetto/protos/third_party/chromium
+ third_party/pffft
+ third_party/ply
+ third_party/polymer
+ third_party/private-join-and-compute
+ third_party/private_membership
+ third_party/protobuf
+ third_party/pthreadpool
+ third_party/puffin
+ third_party/pyjson5
+ third_party/pyyaml
+ third_party/qcms
+ third_party/re2
+ third_party/rnnoise
+ third_party/rust
+ third_party/s2cellid
+ third_party/securemessage
+ third_party/selenium-atoms
+ third_party/shell-encryption
+ third_party/simplejson
+ third_party/skia
+ third_party/skia/include/third_party/vulkan
+ third_party/skia/third_party/vulkan
+ third_party/smhasher
+ third_party/snappy
+ third_party/sqlite
+ third_party/swiftshader
+ third_party/swiftshader/third_party/astc-encoder
+ third_party/swiftshader/third_party/llvm-subzero
+ third_party/swiftshader/third_party/marl
+ third_party/swiftshader/third_party/subzero
+ third_party/swiftshader/third_party/SPIRV-Headers/include/spirv
+ third_party/swiftshader/third_party/SPIRV-Tools
+ third_party/tensorflow_models
+ third_party/tensorflow-text
+ third_party/tflite
+ 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/ruy
+ third_party/six
+ third_party/ukey2
+ third_party/unrar
+ third_party/utf
+ third_party/vulkan
+ third_party/wayland
+ third_party/webdriver
+ third_party/webgpu-cts
+ third_party/webrtc
+ third_party/webrtc/common_audio/third_party/ooura
+ third_party/webrtc/common_audio/third_party/spl_sqrt_floor
+ third_party/webrtc/modules/third_party/fft
+ third_party/webrtc/modules/third_party/g711
+ third_party/webrtc/modules/third_party/g722
+ third_party/webrtc/rtc_base/third_party/base64
+ third_party/webrtc/rtc_base/third_party/sigslot
+ third_party/widevine
+ third_party/woff2
+ third_party/wuffs
+ third_party/x11proto
+ third_party/xcbproto
+ third_party/xnnpack
+ third_party/zxcvbn-cpp
+ third_party/zlib/google
+ url/third_party/mozilla
+ v8/src/third_party/siphash
+ v8/src/third_party/valgrind
+ v8/src/third_party/utf8-decoder
+ v8/third_party/glibc
+ v8/third_party/inspector_protocol
+ v8/third_party/v8
+
+ # gyp -> gn leftovers
+ third_party/speech-dispatcher
+ third_party/usb_ids
+ third_party/xdg-utils
+ )
+
+ # USE=system-*
+ if ! use system-harfbuzz; then
+ keeplibs+=( third_party/harfbuzz-ng )
+ fi
+
+ if ! use system-icu; then
+ keeplibs+=( third_party/icu )
+ fi
+
+ if ! use system-png; then
+ keeplibs+=( third_party/libpng )
+ fi
+
+ if ! use system-zstd; then
+ keeplibs+=( third_party/zstd )
+ fi
+
+ if use libcxx || [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
+ keeplibs+=( third_party/libc++ )
+ 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 )
+ fi
+ if use riscv ; then
+ keeplibs+=( third_party/swiftshader/third_party/llvm-16.0 )
+ fi
+ # we need to generate ppc64 stuff because upstream does not ship it yet
+ # it has to be done before unbundling.
+ if use ppc64; then
+ pushd third_party/libvpx >/dev/null || die
+ mkdir -p source/config/linux/ppc64 || die
+ # requires git and clang, bug #832803
+ # Revert https://chromium.googlesource.com/chromium/src/+/b463d0f40b08b4e896e7f458d89ae58ce2a27165%5E%21/third_party/libvpx/generate_gni.sh
+ # and https://chromium.googlesource.com/chromium/src/+/71ebcbce867dd31da5f8b405a28fcb0de0657d91%5E%21/third_party/libvpx/generate_gni.sh
+ # since we're not in a git repo
+ sed -i -e "s|^update_readme||g; s|clang-format|${EPREFIX}/bin/true|g; /^git -C/d; /git cl/d; /cd \$BASE_DIR\/\$LIBVPX_SRC_DIR/ign format --in-place \$BASE_DIR\/BUILD.gn\ngn format --in-place \$BASE_DIR\/libvpx_srcs.gni" \
+ generate_gni.sh || die
+ ./generate_gni.sh || die
+ popd >/dev/null || die
+
+ pushd third_party/ffmpeg >/dev/null || die
+ cp libavcodec/ppc/h264dsp.c libavcodec/ppc/h264dsp_ppc.c || die
+ cp libavcodec/ppc/h264qpel.c libavcodec/ppc/h264qpel_ppc.c || die
+ popd >/dev/null || die
+ fi
+
+ einfo "Unbundling third-party libraries ..."
+ # Remove most bundled libraries. Some are still needed.
+ build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
+
+ # 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
+}
+
+chromium_rust_version_check() {
+ [[ ${MERGE_TYPE} == binary ]] && return
+ local rustc_version=( $(eselect --brief rust show 2>/dev/null) )
+ rustc_version=${rustc_version[0]#rust-bin-}
+ rustc_version=${rustc_version#rust-}
+
+ [[ -z "${rustc_version}" ]] && die "Failed to determine rust version, check 'eselect rust' output"
+
+ echo $rustc_version
+}
+
+chromium_configure() {
+ # Calling this here supports resumption via FEATURES=keepwork
+ python_setup
+
+ local myconf_gn=""
+
+ if use system-toolchain && [[ ${CHROMIUM_FORCE_GOOGLE_TOOLCHAIN} == no ]]; then
+ # Make sure the build system will use the right tools, bug #340795.
+ tc-export AR CC CXX NM
+
+ if needs_clang && ! tc-is-clang; then
+ # Force clang since gcc is either broken or build is using libcxx.
+ if tc-is-cross-compiler; then
+ CC="${CBUILD}-clang -target ${CHOST} --sysroot ${ESYSROOT}"
+ CXX="${CBUILD}-clang++ -target ${CHOST} --sysroot ${ESYSROOT}"
+ BUILD_CC=${CBUILD}-clang
+ BUILD_CXX=${CBUILD}-clang++
+ else
+ CC=${CHOST}-clang
+ CXX=${CHOST}-clang++
+ fi
+ strip-unsupported-flags
+ fi
+
+ if tc-is-clang; then
+ myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
+ else
+ myconf_gn+=" is_clang=false"
+ fi
+
+ if needs_lld ; then
+ # https://bugs.gentoo.org/918897#c32
+ append-ldflags -Wl,--undefined-version
+ myconf_gn+=" use_lld=true"
+ else
+ # This doesn't prevent lld from being used, but rather prevents gn from forcing it
+ myconf_gn+=" use_lld=false"
+ fi
+
+ if use lto; then
+ AR=llvm-ar
+ NM=llvm-nm
+ if tc-is-cross-compiler; then
+ BUILD_AR=llvm-ar
+ BUILD_NM=llvm-nm
+ fi
+ fi
+
+ myconf_gn+=" custom_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
+
+ # Don't inherit PKG_CONFIG_PATH from environment
+ local -x PKG_CONFIG_PATH=
+ else
+ myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
+ fi
+
+ local rustc_ver
+ rustc_ver=$(chromium_rust_version_check)
+ if ver_test "${rustc_ver}" -lt "${RUST_MIN_VER}"; then
+ eerror "Rust >=${RUST_MIN_VER} is required"
+ eerror "Please run 'eselect rust' and select the correct rust version"
+ die "Selected rust version is too old"
+ else
+ einfo "Using rust ${rustc_ver} to build"
+ fi
+ if [[ "$(eselect --brief rust show 2>/dev/null)" == *"bin"* ]]; then
+ myconf_gn+=" rust_sysroot_absolute=\"${EPREFIX}/opt/rust-bin-${rustc_ver}/\""
+ else
+ myconf_gn+=" rust_sysroot_absolute=\"${EPREFIX}/usr/lib/rust/${rustc_ver}/\""
+ fi
+ myconf_gn+=" rustc_version=\"${rustc_ver}\""
+ fi
+
+ # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
+ myconf_gn+=" is_debug=false"
+
+ # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
+ # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
+ myconf_gn+=" dcheck_always_on=$(usex debug true false)"
+ myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
+
+ # Component build isn't generally intended for use by end users. It's mostly useful
+ # for development and debugging.
+ myconf_gn+=" is_component_build=false"
+
+ # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
+ myconf_gn+=" enable_nacl=false"
+
+ # Use system-provided libraries.
+ # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
+ # TODO: use_system_hunspell (upstream changes needed).
+ # TODO: use_system_protobuf (bug #525560).
+ # TODO: use_system_sqlite (http://crbug.com/22208).
+
+ # libevent: https://bugs.gentoo.org/593458
+ local gn_system_libraries=(
+ flac
+ fontconfig
+ freetype
+ # Need harfbuzz_from_pkgconfig target
+ #harfbuzz-ng
+ libdrm
+ libjpeg
+ libwebp
+ libxml
+ libxslt
+ openh264
+ zlib
+ )
+ if use system-icu; then
+ gn_system_libraries+=( icu )
+ fi
+ if use system-png; then
+ gn_system_libraries+=( libpng )
+ fi
+ if use system-zstd; then
+ gn_system_libraries+=( zstd )
+ fi
+
+ build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
+
+ # See dependency logic in third_party/BUILD.gn
+ myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
+
+ # Optional dependencies.
+ myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
+ myconf_gn+=" enable_widevine=$(usex widevine true false)"
+
+ if use headless; then
+ myconf_gn+=" use_cups=false"
+ myconf_gn+=" use_kerberos=false"
+ myconf_gn+=" use_pulseaudio=false"
+ myconf_gn+=" use_vaapi=false"
+ myconf_gn+=" rtc_use_pipewire=false"
+ else
+ myconf_gn+=" use_cups=$(usex cups true false)"
+ myconf_gn+=" use_kerberos=$(usex kerberos true false)"
+ myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
+ myconf_gn+=" use_vaapi=$(usex vaapi true false)"
+ myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
+ myconf_gn+=" gtk_version=$(usex gtk4 4 3)"
+ fi
+
+ # Allows distributions to link pulseaudio directly (DT_NEEDED) instead of
+ # using dlopen. This helps with automated detection of ABI mismatches and
+ # prevents silent errors.
+ if use pulseaudio; then
+ myconf_gn+=" link_pulseaudio=true"
+ fi
+
+ # Non-developer builds of Chromium (for example, non-Chrome browsers, or
+ # Chromium builds provided by Linux distros) should disable the testing config
+ myconf_gn+=" disable_fieldtrial_testing_config=true"
+
+ if use system-toolchain; then
+ myconf_gn+=" use_gold=false"
+ fi
+
+ # The sysroot is the oldest debian image that chromium supports, we don't need it
+ myconf_gn+=" use_sysroot=false"
+
+ # This determines whether or not GN uses the bundled libcxx
+ # default: true
+ if use libcxx || [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
+ myconf_gn+=" use_custom_libcxx=true"
+ else
+ myconf_gn+=" use_custom_libcxx=false"
+ fi
+
+ # Disable pseudolocales, only used for testing
+ myconf_gn+=" enable_pseudolocales=false"
+
+ # Disable code formating of generated files
+ myconf_gn+=" blink_enable_generated_code_formatting=false"
+
+ if use bindist ; then
+ # proprietary_codecs just forces Chromium to say that it can use h264/aac,
+ # the work is still done by ffmpeg. If this is set to no Chromium
+ # won't be able to load the codec even if the library can handle it
+ myconf_gn+=" proprietary_codecs=true"
+ myconf_gn+=" ffmpeg_branding=\"Chrome\""
+ # build ffmpeg as an external component (libffmpeg.so) that we can remove / substitute
+ myconf_gn+=" is_component_ffmpeg=true"
+ else
+ ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
+ myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
+ myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
+ fi
+
+ # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
+ # Note: these are for Gentoo use ONLY. For your own distribution,
+ # please get your own set of keys. Feel free to contact chromium@gentoo.org
+ # for more info. The OAuth2 credentials, however, have been left out.
+ # Those OAuth2 credentials have been broken for quite some time anyway.
+ # Instead we apply a patch to use the --oauth2-client-id= and
+ # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
+ # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
+ # Chromium without baked-in values.
+ local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
+ myconf_gn+=" google_api_key=\"${google_api_key}\""
+ local myarch="$(tc-arch)"
+
+ # Avoid CFLAGS problems, bug #352457, bug #390147.
+ if ! use custom-cflags; then
+ replace-flags "-Os" "-O2"
+ strip-flags
+
+ # Debug info section overflows without component build
+ # Prevent linker from running out of address space, bug #471810 .
+ filter-flags "-g*"
+
+ # Prevent libvpx/xnnpack build failures. Bug 530248, 544702, 546984, 853646.
+ if [[ ${myarch} == amd64 ]]; then
+ filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4 -mno-xop -mno-sse4a
+ fi
+
+ if tc-is-gcc; then
+ # https://bugs.gentoo.org/904455
+ local -x CPP="$(tc-getCXX) -E"
+ # https://bugs.gentoo.org/912381
+ filter-lto
+ fi
+ fi
+
+ if [[ $myarch = amd64 ]] ; then
+ myconf_gn+=" target_cpu=\"x64\""
+ ffmpeg_target_arch=x64
+ elif [[ $myarch = arm64 ]] ; then
+ myconf_gn+=" target_cpu=\"arm64\""
+ ffmpeg_target_arch=arm64
+ elif [[ $myarch = ppc64 ]] ; then
+ myconf_gn+=" target_cpu=\"ppc64\""
+ ffmpeg_target_arch=ppc64
+ elif [[ $myarch = riscv ]] ; then
+ myconf_gn+=" target_cpu=\"riscv64\""
+ ffmpeg_target_arch=riscv64
+ else
+ die "Failed to determine target arch, got '$myarch'."
+ fi
+
+ # Make sure that -Werror doesn't get added to CFLAGS by the build system.
+ # Depending on GCC version the warnings are different and we don't want
+ # the build to fail because of that.
+ myconf_gn+=" treat_warnings_as_errors=false"
+
+ # Disable fatal linker warnings, bug 506268.
+ myconf_gn+=" fatal_linker_warnings=false"
+
+ # Disable external code space for V8 for ppc64. It is disabled for ppc64
+ # by default, but cross-compiling on amd64 enables it again.
+ if tc-is-cross-compiler; then
+ if ! use amd64 && ! use arm64; then
+ myconf_gn+=" v8_enable_external_code_space=false"
+ fi
+ fi
+
+ # Only enabled for clang, but gcc has endian macros too
+ myconf_gn+=" v8_use_libm_trig_functions=true"
+
+ # Bug 491582.
+ export TMPDIR="${WORKDIR}/temp"
+ mkdir -p -m 755 "${TMPDIR}" || die
+
+ # https://bugs.gentoo.org/654216
+ addpredict /dev/dri/ #nowarn
+
+ # Disable unknown warning message from clang.
+ if tc-is-clang; then
+ append-flags -Wno-unknown-warning-option
+ if tc-is-cross-compiler; then
+ export BUILD_CXXFLAGS+=" -Wno-unknown-warning-option"
+ export BUILD_CFLAGS+=" -Wno-unknown-warning-option"
+ fi
+ fi
+
+ # Explicitly disable ICU data file support for system-icu/headless builds.
+ if use system-icu || use headless; then
+ myconf_gn+=" icu_use_data_file=false"
+ fi
+
+ # Don't need nocompile checks and GN crashes with our config
+ myconf_gn+=" enable_nocompile_tests=false"
+
+ # Enable ozone wayland and/or headless support
+ myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
+ myconf_gn+=" ozone_platform_headless=true"
+ if use headless; then
+ myconf_gn+=" ozone_platform=\"headless\""
+ myconf_gn+=" use_xkbcommon=false use_gtk=false use_qt=false"
+ myconf_gn+=" use_glib=false use_gio=false"
+ myconf_gn+=" use_pangocairo=false use_alsa=false"
+ myconf_gn+=" use_libpci=false use_udev=false"
+ 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
+ local cbuild_libdir=$(get_libdir)
+ if tc-is-cross-compiler; then
+ # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
+ local cbuild_libdir=$($(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libxslt)
+ cbuild_libdir=${cbuild_libdir:2}
+ cbuild_libdir=${cbuild_libdir/% }
+ fi
+ if use qt5; then
+ if tc-is-cross-compiler; then
+ myconf_gn+=" moc_qt5_path=\"${EPREFIX}/${cbuild_libdir}/qt5/bin\""
+ else
+ myconf_gn+=" moc_qt5_path=\"$(qt5_get_bindir)\""
+ fi
+ fi
+ if use qt6; then
+ myconf_gn+=" moc_qt6_path=\"${EPREFIX}/usr/${cbuild_libdir}/qt6/libexec\""
+ fi
+
+ myconf_gn+=" use_qt=true"
+ myconf_gn+=" use_qt6=$(usex qt6 true false)"
+ else
+ myconf_gn+=" use_qt=false"
+ fi
+ myconf_gn+=" ozone_platform_x11=$(usex X true false)"
+ myconf_gn+=" ozone_platform_wayland=$(usex wayland true false)"
+ myconf_gn+=" ozone_platform=$(usex wayland \"wayland\" \"x11\")"
+ 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
+
+ # Enable official builds
+ myconf_gn+=" is_official_build=$(usex official true false)"
+ myconf_gn+=" use_thin_lto=$(usex lto true false)"
+ myconf_gn+=" thin_lto_enable_optimizations=$(usex lto true false)"
+ if use official; then
+ # 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
+ # Disable CFI: unsupported for GCC, requires clang+lto+lld
+ myconf_gn+=" is_cfi=false"
+ # Don't add symbols to build
+ myconf_gn+=" symbol_level=0"
+ fi
+
+ if use pgo; then
+ myconf_gn+=" chrome_pgo_phase=${1}"
+ if [[ "$1" == "2" ]]; then
+ myconf_gn+=" pgo_data_path=\"${2}\""
+ fi
+ else
+ # Disable PGO
+ myconf_gn+=" chrome_pgo_phase=0"
+ fi
+
+ # user CXXFLAGS might overwrite -march=armv8-a+crc+crypto, bug #851639
+ if use arm64 && tc-is-gcc; then
+ sed -i '/^#if HAVE_ARM64_CRC32C/a #pragma GCC target ("+crc+crypto")' \
+ third_party/crc32c/src/src/crc32c_arm64.cc || die
+ fi
+
+ # skipping typecheck is only supported on amd64, bug #876157
+ if ! use amd64; then
+ myconf_gn+=" devtools_skip_typecheck=false"
+ fi
+
+ einfo "Configuring Chromium ..."
+ set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
+ echo "$@"
+ "$@" || die
+}
+
+src_configure() {
+ chromium_configure $(usex pgo 1 0)
+}
+
+chromium_compile() {
+ # Final link uses lots of file descriptors.
+ ulimit -n 2048
+
+ # Calling this here supports resumption via FEATURES=keepwork
+ python_setup
+
+ # Don't inherit PYTHONPATH from environment, bug #789021, #812689
+ local -x PYTHONPATH=
+
+ # Build mksnapshot and pax-mark it.
+ if use pax-kernel; then
+ local x
+ for x in mksnapshot v8_context_snapshot_generator; do
+ if tc-is-cross-compiler; then
+ eninja -C out/Release "host/${x}"
+ pax-mark m "out/Release/host/${x}"
+ else
+ eninja -C out/Release "${x}"
+ pax-mark m "out/Release/${x}"
+ fi
+ done
+ fi
+
+ # 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
+
+ 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
+# session isn't left running. If we return 1, virtx will call die().
+chromium_profile() {
+ einfo "Profiling for PGO"
+
+ pushd "${WORKDIR}/chromium-profiler-"* >/dev/null || return 1
+
+ # Remove old profdata in case profiling was interrupted.
+ rm -rf "${1}" || return 1
+
+ if ! "${EPYTHON}" ./chromium_profiler.py \
+ --chrome-executable "${S}/out/Release/chrome" \
+ --chromedriver-executable "${S}/out/Release/chromedriver.unstripped" \
+ --add-arg no-sandbox --add-arg disable-dev-shm-usage \
+ --profile-output "${1}"; then
+ eerror "Profiling failed"
+ return 1
+ fi
+
+ popd >/dev/null || return 1
+}
+
+src_compile() {
+ if use pgo; then
+ local profdata
+
+ profdata="${WORKDIR}/chromium.profdata"
+
+ if [[ ! -e "${WORKDIR}/.pgo-profiled" ]]; then
+ chromium_compile
+ virtx chromium_profile "$profdata"
+
+ touch "${WORKDIR}/.pgo-profiled" || die
+ fi
+
+ if [[ ! -e "${WORKDIR}/.pgo-phase-2-configured" ]]; then
+ # Remove phase 1 output
+ rm -r out/Release || die
+
+ chromium_configure 2 "$profdata"
+
+ touch "${WORKDIR}/.pgo-phase-2-configured" || die
+ fi
+
+ if [[ ! -e "${WORKDIR}/.pgo-phase-2-compiled" ]]; then
+ chromium_compile
+ touch "${WORKDIR}/.pgo-phase-2-compiled" || die
+ fi
+ else
+ chromium_compile
+ fi
+
+ mv out/Release/chromedriver{.unstripped,} || die
+
+ rm -f out/Release/locales/*.pak.info || die
+
+ # Build manpage; bug #684550
+ sed -e 's|@@PACKAGE@@|chromium-browser|g;
+ s|@@MENUNAME@@|Chromium|g;' \
+ chrome/app/resources/manpage.1.in > \
+ out/Release/chromium-browser.1 || die
+
+ # Build desktop file; bug #706786
+ sed -e 's|@@MENUNAME@@|Chromium|g;
+ s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
+ s|@@PACKAGE@@|chromium-browser|g;
+ s|\(^Exec=\)/usr/bin/|\1|g;' \
+ chrome/installer/linux/common/desktop.template > \
+ out/Release/chromium-browser-chromium.desktop || die
+
+ # Build vk_swiftshader_icd.json; bug #827861
+ sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
+ third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
+ out/Release/vk_swiftshader_icd.json || die
+}
+
+src_install() {
+ local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
+ exeinto "${CHROMIUM_HOME}"
+ doexe out/Release/chrome
+
+ newexe out/Release/chrome_sandbox chrome-sandbox
+ fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
+
+ doexe out/Release/chromedriver
+ doexe out/Release/chrome_crashpad_handler
+
+ ozone_auto_session () {
+ use X && use wayland && ! use headless && echo true || echo false
+ }
+ local sedargs=( -e
+ "s:/usr/lib/:/usr/$(get_libdir)/:g;
+ s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
+ )
+ sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
+ doexe chromium-launcher.sh
+
+ # It is important that we name the target "chromium-browser",
+ # xdg-utils expect it; bug #355517.
+ dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
+ # keep the old symlink around for consistency
+ dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
+
+ dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
+
+ # Allow users to override command-line options, bug #357629.
+ insinto /etc/chromium
+ newins "${FILESDIR}/chromium.default" "default"
+
+ pushd out/Release/locales > /dev/null || die
+ chromium_remove_language_paks
+ popd
+
+ insinto "${CHROMIUM_HOME}"
+ doins out/Release/*.bin
+ doins out/Release/*.pak
+
+ if use bindist; then
+ # We built libffmpeg as a component library, but we can't distribute it
+ # with proprietary codec support. Remove it and make a symlink to the requested
+ # system library.
+ rm -f out/Release/libffmpeg.so \
+ || die "Failed to remove bundled libffmpeg.so (with proprietary codecs)"
+ # symlink the libffmpeg.so from either ffmpeg-chromium or ffmpeg[chromium].
+ einfo "Creating symlink to libffmpeg.so from $(usex ffmpeg-chromium ffmpeg-chromium ffmpeg[chromium])..."
+ dosym ../chromium/libffmpeg.so$(usex ffmpeg-chromium .${PV%%\.*} "") \
+ /usr/$(get_libdir)/chromium-browser/libffmpeg.so
+ fi
+
+ (
+ shopt -s nullglob
+ local files=(out/Release/*.so out/Release/*.so.[0-9])
+ [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
+ )
+
+ # Install bundled xdg-utils, avoids installing X11 libraries with USE="-X wayland"
+ doins out/Release/xdg-{settings,mime}
+
+ if ! use system-icu && ! use headless; then
+ doins out/Release/icudtl.dat
+ fi
+
+ doins -r out/Release/locales
+ doins -r out/Release/MEIPreload
+
+ # Install vk_swiftshader_icd.json; bug #827861
+ doins out/Release/vk_swiftshader_icd.json
+
+ if [[ -d out/Release/swiftshader ]]; then
+ insinto "${CHROMIUM_HOME}/swiftshader"
+ doins out/Release/swiftshader/*.so
+ fi
+
+ # Install icons
+ local branding size
+ for size in 16 24 32 48 64 128 256 ; do
+ case ${size} in
+ 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
+ *) branding="chrome/app/theme/chromium" ;;
+ esac
+ newicon -s ${size} "${branding}/product_logo_${size}.png" \
+ chromium-browser.png
+ done
+
+ # Install desktop entry
+ domenu out/Release/chromium-browser-chromium.desktop
+
+ # Install GNOME default application entry (bug #303100).
+ insinto /usr/share/gnome-control-center/default-apps
+ newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
+
+ # Install manpage; bug #684550
+ doman out/Release/chromium-browser.1
+ dosym chromium-browser.1 /usr/share/man/man1/chromium.1
+
+ readme.gentoo_create_doc
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+ readme.gentoo_print_elog
+
+ if ! use headless; then
+ if use vaapi; then
+ elog "VA-API is disabled by default at runtime. You have to enable it"
+ elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
+ elog "in /etc/chromium/default."
+ fi
+ if use screencast; then
+ elog "Screencast is disabled by default at runtime. Either enable it"
+ elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
+ elog "inside Chromium or add --enable-features=WebRTCPipeWireCapturer"
+ elog "to CHROMIUM_FLAGS in /etc/chromium/default."
+ fi
+ if use gtk4; then
+ elog "Chromium prefers GTK3 over GTK4 at runtime. To override this"
+ elog "behavior you need to pass --gtk-version=4, e.g. by adding it"
+ elog "to CHROMIUM_FLAGS in /etc/chromium/default."
+ fi
+ if use qt5 && use qt6; then
+ elog "Chromium automatically selects Qt5 or Qt6 based on your desktop"
+ elog "environment. To override you need to pass --qt-version=5 or"
+ elog "--qt-version=6, e.g. by adding it to CHROMIUM_FLAGS in"
+ elog "/etc/chromium/default."
+ fi
+ fi
+}
diff --git a/www-client/chromium/files/chromium-124-libwebp-shim-sharpyuv.patch b/www-client/chromium/files/chromium-124-libwebp-shim-sharpyuv.patch
new file mode 100644
index 0000000..fa03873
--- /dev/null
+++ b/www-client/chromium/files/chromium-124-libwebp-shim-sharpyuv.patch
@@ -0,0 +1,36 @@
+From 40c466949bd8ccb61cb55655848d23684a9f8a94 Mon Sep 17 00:00:00 2001
+From: Matt Jolly <kangie@gentoo.org>
+Date: Mon, 25 Mar 2024 21:38:35 +1000
+Subject: [PATCH] libwebp shim: add libwebp_sharpyuv target
+
+Signed-off-by: Matt Jolly <Kangie@gentoo.org>
+--- a/build/linux/unbundle/libwebp.gn
++++ b/build/linux/unbundle/libwebp.gn
+@@ -22,14 +22,24 @@ shim_headers("libwebp_shim") {
+ "webp/mux.h",
+ "webp/mux_types.h",
+ "webp/types.h",
++ "webp/sharpyuv/sharpyuv.h",
++ "webp/sharpyuv/sharpyuv_csp.h",
+ ]
+ }
+
++source_set("libwebp_sharpyuv") {
++ deps = [ ":libwebp_shim" ]
++ public_configs = [ ":system_libwebp" ]
++}
++
+ source_set("libwebp_webp") {
+ deps = [ ":libwebp_shim" ]
+ public_configs = [ ":system_libwebp" ]
+ }
+
+ group("libwebp") {
+- deps = [ ":libwebp_webp" ]
++ deps = [
++ ":libwebp_webp",
++ ":libwebp_sharpyuv"
++ ]
+ }
+--
+2.44.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] proj/riscv:master commit in: www-client/chromium/files/, www-client/chromium/
@ 2024-04-12 4:09 Yixun Lan
0 siblings, 0 replies; 10+ messages in thread
From: Yixun Lan @ 2024-04-12 4:09 UTC (permalink / raw
To: gentoo-commits
commit: 755ae4bd759dfafd7fe64890f3294f2a64a94485
Author: Yixun Lan <dlan <AT> gentoo <DOT> org>
AuthorDate: Thu Apr 11 04:17:27 2024 +0000
Commit: Yixun Lan <dlan <AT> gentoo <DOT> org>
CommitDate: Thu Apr 11 04:17:46 2024 +0000
URL: https://gitweb.gentoo.org/proj/riscv.git/commit/?id=755ae4bd
www-client/chromium: drop 98.0.4750.0
Signed-off-by: Yixun Lan <dlan <AT> gentoo.org>
www-client/chromium/Manifest | 3 -
www-client/chromium/chromium-98.0.4750.0.ebuild | 968 ---------------------
www-client/chromium/files/11cpuinfo.patch | 11 -
.../files/chromium-108-EnumTable-crash.patch | 76 --
.../chromium/files/chromium-119-minizip-cast.patch | 23 -
.../files/chromium-119.0.6045.159-icu-74.patch | 21 -
.../files/chromium-93-InkDropHost-crash.patch | 25 -
.../files/chromium-96-EnumTable-crash.patch | 76 --
.../files/chromium-96-freetype-unbundle.patch | 10 -
.../files/chromium-98-EnumTable-crash.patch | 76 --
.../chromium/files/chromium-98-system-libdrm.patch | 34 -
.../chromium/files/chromium-glibc-2.34.patch | 50 --
| 48 -
13 files changed, 1421 deletions(-)
diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
index 7b7e129..3e9db3c 100644
--- a/www-client/chromium/Manifest
+++ b/www-client/chromium/Manifest
@@ -1,9 +1,6 @@
DIST chromium-123-clang.tar.xz 50178332 BLAKE2B 4b5c4f81a83c7b0c809c93a713e869fde6fe559477665cb3b2f03c62d2175f821b81fb03b0ddd127c6eaf77c41011b4de06561f09a58384153d80fe2b3aa7427 SHA512 17108b9579f16d0da383bd5e41d012f94bcb8445a517ff823aa49b66d3861b0a124b6cce6183fbc64e8050f1ebcd65a9daa2acbda5fdaa42390bfbf4ecb16bd3
DIST chromium-123-rust.tar.xz 145295100 BLAKE2B ae6603a0e0218e4e39d3e8b7aa48a2cd946c90779dac48be26582926963c8a10a48e3e58fd00a23cb8cd9a3584d9d4a142e843f93c761e862253817635f18c2c SHA512 b4f8dce6d74be4be495d9948d7593ec9664c0b93e87456fab33d3ae5ac0e486a4e8576b26a9ab9890285a7c0d566afb803b98225c0692b6cac9f623a10b954a2
DIST chromium-123.0.6312.58.tar.xz 3465099244 BLAKE2B d0b85e740924a33350c5b6d3a6d1e94c8b946c52ac760237b2391127c99326c64b50de29751850dc368331b66402ab0c4fc65b9aeef09302857a1f5300a0d17b SHA512 4cb08767b8a6fe268c44bd7b621632c71f7d2f3f6c1b7bae9e0373dfc2eada397ab511a068582c2d17bbf3ee9ff16f05fccd454d610d63dd2fd14d6ca355a0c0
-DIST chromium-98-extra-patchset-0.tar.xz 187228 BLAKE2B 094c716b274de559f848ed7f55cd2584892b6d43ba0e79bc3b458bb56320a0de7bd06bed475404004b83e464dc5554987318783eb7bd4838a84e69788e30c567 SHA512 565a69262e353b2eda8bc7c97c88e78972e047146b810f3d9f09bb19aa963a0600a104cfdacafd8794e2b393cb31381b8e73086c246b6b1267defd065367fced
-DIST chromium-98-patchset-3.tar.xz 6164 BLAKE2B be4fa2997e13e89a0c8db1e99fa80adb937c0c02f1e18bd0ec93bdbdd484da4a8507baf13c5e6e602d5f5ecb2921f33bc3afdc3c3103b1b5314b62f59c1a71ad SHA512 47026635ca5c2e1d3965c82a449077380e6518b33e16b83bd105085cca50f512d08027eebd34d7ce5ce39d988f0120deccfb72697abac0d41e4502b6ad8abdf3
-DIST chromium-98.0.4750.0.tar.xz 1230864580 BLAKE2B b8b5d05bf15a9429f3f5fa851415d21f6e757a99fce9ac47bdeb7f534f9eefc77d13c5f8ba93bfa140bdb536c13e1b6141ac4d7e0f17b742039c403044789c56 SHA512 7f8cc349aa50af0d149ba08e5ed60171e94943bbd52cb0f820f3c7d56749d9e2fd6d71761262ac012cfcad1f7e4f63c0404f39f044df531e776ae6fce951544f
DIST chromium-patches-123.tar.bz2 4697 BLAKE2B 8a7dd76edb23afb7b2f65084696bce5d6e54d63ca34c4590052db1086ed0a422b1efde863c4daad4e2526f329eb65276b9ad5406017cd97fb75b1a9556c1f933 SHA512 ea47255deac1893896f64496629d34c7092f266a175b8400fcf4f01b9d038ae240e911bff488558bb28e6f5795bbcf276adf20ed1e0ccb8ac99f9ddd260742f9
DIST chromium-ppc64le-gentoo-patches-1.tar.xz 5636 BLAKE2B 1d898939df023c59285b27bee552470483ea06375d1ee8d6947b89c5927c23cc7bfec6b49f3b376ece931d11a56f8e2a45791e0f92ad61974fc8c34c1082d89c SHA512 8a71cb007e47cda8e5fe5d185729389e65c48bd322c8ee8b3986bee8571427b959628f2666bda646a3f89ae64197c0957d3626845ff03461dbd5dee4c964d07c
DIST chromium-profiler-0.2.tar 259952640 BLAKE2B 5e82389fce00b267280d633b26551231c558b80f0c92cd7d60271095a3503365ab673e7a46dc5f74f8a82db1f21262cb24dcc0531d954bab5fb3b175dab3394d SHA512 9fa89a5ab728419683e7495ae676567480987d68a2d589f2aa97bfcbcf123f3c8f97f8bca5f65e5e3f6e41475535add473ded83b9c7a33bb4746a9d05b298a6c
diff --git a/www-client/chromium/chromium-98.0.4750.0.ebuild b/www-client/chromium/chromium-98.0.4750.0.ebuild
deleted file mode 100644
index e12c50a..0000000
--- a/www-client/chromium/chromium-98.0.4750.0.ebuild
+++ /dev/null
@@ -1,968 +0,0 @@
-# Copyright 2009-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- 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 vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-PATCHSET="3"
-PATCHSET_NAME="chromium-$(ver_cut 1)-patchset-${PATCHSET}"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- https://github.com/stha09/chromium-patches/releases/download/${PATCHSET_NAME}/${PATCHSET_NAME}.tar.xz"
-SRC_URI+=" https://dev.gentoo.org/~dlan/distfiles/${CATEGORY}/${PN}/chromium-$(ver_cut 1)-extra-patchset-0.tar.xz"
-
-LICENSE="BSD"
-SLOT="0/dev"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon debug +hangouts headless +js-type-check kerberos +official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-harfbuzz +system-icu +system-png vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm(+)]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxcb:=
- x11-libs/libxshmfence:=
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-2.9.0:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- system-png? ( media-libs/libpng:=[-apng] )
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/libxkbcommon:=
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:0/0.3 )
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=no}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-12"
- DEPEND+=" >=sys-libs/libcxx-12"
-else
- COMMON_DEPEND="
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-69.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- CPP="${CHOST}-clang++ -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="4G"
- CHECKREQS_DISK_BUILD="9G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${WORKDIR}/patches"
- "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-98-EnumTable-crash.patch"
- "${FILESDIR}/chromium-98-system-libdrm.patch"
- "${FILESDIR}/chromium-glibc-2.34.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- "${WORKDIR}/extra-patches"
- )
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- 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
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- 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/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- 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/wasmparser
- third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/maldoca
- third_party/maldoca/src/third_party/tensorflow_protos
- third_party/maldoca/src/third_party/zlibwrapper
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/snappy
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tcmalloc
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ruy
- third_party/six
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-png; then
- keeplibs+=( third_party/libpng )
- fi
- if use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng/utils )
- else
- keeplibs+=( third_party/harfbuzz-ng )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 || use riscv; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-
- # 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
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_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\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-png; then
- gn_system_libraries+=( libpng )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- elif [[ $myarch = riscv ]] ; then
- myconf_gn+=" target_cpu=\"riscv64\""
- ffmpeg_target_arch=riscv64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- myconf_gn+=" ozone_platform_x11=$(usex headless false true)"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" ozone_platform=\"x11\""
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # 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
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- # Don't add symbols to build
- myconf_gn+=" symbol_level=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # 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
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build vk_swiftshader_icd.json; bug #827861
- sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
- third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
- out/Release/vk_swiftshader_icd.json || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
- doins -r out/Release/MEIPreload
-
- # Install vk_swiftshader_icd.json; bug #827861
- doins out/Release/vk_swiftshader_icd.json
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
-}
diff --git a/www-client/chromium/files/11cpuinfo.patch b/www-client/chromium/files/11cpuinfo.patch
deleted file mode 100644
index 99c5cdd..0000000
--- a/www-client/chromium/files/11cpuinfo.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -Naur a/third_party/cpuinfo/src/src/riscv/linux/riscv-hw.c b/third_party/cpuinfo/src/src/riscv/linux/riscv-hw.c
---- a/third_party/cpuinfo/src/src/riscv/linux/riscv-hw.c 2024-03-16 12:12:29.835536873 +0000
-+++ b/third_party/cpuinfo/src/src/riscv/linux/riscv-hw.c 2024-03-16 12:06:55.888004794 +0000
-@@ -14,7 +14,6 @@
- #endif
-
- #include <sched.h>
--#include <sys/hwprobe.h>
-
- #include <cpuinfo/log.h>
- #include <riscv/api.h>
diff --git a/www-client/chromium/files/chromium-108-EnumTable-crash.patch b/www-client/chromium/files/chromium-108-EnumTable-crash.patch
deleted file mode 100644
index 661ec33..0000000
--- a/www-client/chromium/files/chromium-108-EnumTable-crash.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-diff --git a/components/media_router/common/providers/cast/channel/enum_table.h b/components/media_router/common/providers/cast/channel/enum_table.h
-index 842553a..89de703 100644
---- a/components/media_router/common/providers/cast/channel/enum_table.h
-+++ b/components/media_router/common/providers/cast/channel/enum_table.h
-@@ -8,6 +8,7 @@
- #include <cstdint>
- #include <cstring>
- #include <ostream>
-+#include <vector>
-
- #include "base/check_op.h"
- #include "base/notreached.h"
-@@ -187,7 +188,6 @@ class
- inline constexpr GenericEnumTableEntry(int32_t value);
- inline constexpr GenericEnumTableEntry(int32_t value, base::StringPiece str);
-
-- GenericEnumTableEntry(const GenericEnumTableEntry&) = delete;
- GenericEnumTableEntry& operator=(const GenericEnumTableEntry&) = delete;
-
- private:
-@@ -253,7 +253,6 @@ class EnumTable {
- constexpr Entry(E value, base::StringPiece str)
- : GenericEnumTableEntry(static_cast<int32_t>(value), str) {}
-
-- Entry(const Entry&) = delete;
- Entry& operator=(const Entry&) = delete;
- };
-
-@@ -312,15 +311,14 @@ class EnumTable {
- if (is_sorted_) {
- const std::size_t index = static_cast<std::size_t>(value);
- if (ANALYZER_ASSUME_TRUE(index < data_.size())) {
-- const auto& entry = data_.begin()[index];
-+ const auto& entry = data_[index];
- if (ANALYZER_ASSUME_TRUE(entry.has_str()))
- return entry.str();
- }
- return absl::nullopt;
- }
- return GenericEnumTableEntry::FindByValue(
-- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
-- data_.size(), static_cast<int32_t>(value));
-+ &data_[0], data_.size(), static_cast<int32_t>(value));
- }
-
- // This overload of GetString is designed for cases where the argument is a
-@@ -348,8 +346,7 @@ class EnumTable {
- // enum value directly.
- absl::optional<E> GetEnum(base::StringPiece str) const {
- auto* entry = GenericEnumTableEntry::FindByString(
-- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
-- data_.size(), str);
-+ &data_[0], data_.size(), str);
- return entry ? static_cast<E>(entry->value) : absl::optional<E>();
- }
-
-@@ -364,7 +361,7 @@ class EnumTable {
- // Align the data on a cache line boundary.
- alignas(64)
- #endif
-- std::initializer_list<Entry> data_;
-+ const std::vector<Entry> data_;
- bool is_sorted_;
-
- constexpr EnumTable(std::initializer_list<Entry> data, bool is_sorted)
-@@ -376,8 +373,8 @@ class EnumTable {
-
- for (std::size_t i = 0; i < data.size(); i++) {
- for (std::size_t j = i + 1; j < data.size(); j++) {
-- const Entry& ei = data.begin()[i];
-- const Entry& ej = data.begin()[j];
-+ const Entry& ei = data[i];
-+ const Entry& ej = data[j];
- DCHECK(ei.value != ej.value)
- << "Found duplicate enum values at indices " << i << " and " << j;
- DCHECK(!(ei.has_str() && ej.has_str() && ei.str() == ej.str()))
diff --git a/www-client/chromium/files/chromium-119-minizip-cast.patch b/www-client/chromium/files/chromium-119-minizip-cast.patch
deleted file mode 100644
index 0d03e8e..0000000
--- a/www-client/chromium/files/chromium-119-minizip-cast.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-clang-16 does not get the types for an aggregate right and fails with narrowing error
---- a/third_party/zlib/google/zip_internal.cc
-+++ b/third_party/zlib/google/zip_internal.cc
-@@ -260,13 +260,12 @@ zip_fileinfo TimeToZipFileInfo(const base::Time& file_time) {
- // It assumes that dates below 1980 are in the double digit format.
- // Hence the fail safe option is to leave the date unset. Some programs
- // might show the unset date as 1980-0-0 which is invalid.
-- zip_info.tmz_date = {
-- .tm_sec = static_cast<uInt>(file_time_parts.second),
-- .tm_min = static_cast<uInt>(file_time_parts.minute),
-- .tm_hour = static_cast<uInt>(file_time_parts.hour),
-- .tm_mday = static_cast<uInt>(file_time_parts.day_of_month),
-- .tm_mon = static_cast<uInt>(file_time_parts.month - 1),
-- .tm_year = static_cast<uInt>(file_time_parts.year)};
-+ zip_info.tmz_date.tm_sec = static_cast<uInt>(file_time_parts.second);
-+ zip_info.tmz_date.tm_min = static_cast<uInt>(file_time_parts.minute);
-+ zip_info.tmz_date.tm_hour = static_cast<uInt>(file_time_parts.hour);
-+ zip_info.tmz_date.tm_mday = static_cast<uInt>(file_time_parts.day_of_month);
-+ zip_info.tmz_date.tm_mon = static_cast<uInt>(file_time_parts.month - 1);
-+ zip_info.tmz_date.tm_year = static_cast<uInt>(file_time_parts.year);
- }
-
- return zip_info;
diff --git a/www-client/chromium/files/chromium-119.0.6045.159-icu-74.patch b/www-client/chromium/files/chromium-119.0.6045.159-icu-74.patch
deleted file mode 100644
index efb8fb1..0000000
--- a/www-client/chromium/files/chromium-119.0.6045.159-icu-74.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-https://bugs.gentoo.org/917645
-(copied patch from qtwebengine:6 - https://bugs.gentoo.org/917633)
-
-Quick fix for a static_assert failure with icu74. Still waiting
-for a proper upstream fix and unknown if entirely right, but is
-an extension of [1] (is now 48 rather than 43).
-
-[1] https://crrev.com/e60b571faa3f14dd9119a6792dccf12f8bf80192
---- a/third_party/blink/renderer/platform/text/text_break_iterator.cc
-+++ b/third_party/blink/renderer/platform/text/text_break_iterator.cc
-@@ -161,7 +161,9 @@ static const unsigned char kAsciiLineBreakTable[][(kAsciiLineBreakTableLastChar
- };
- // clang-format on
-
--#if U_ICU_VERSION_MAJOR_NUM >= 58
-+#if U_ICU_VERSION_MAJOR_NUM >= 74
-+#define BA_LB_COUNT (U_LB_COUNT - 8)
-+#elif U_ICU_VERSION_MAJOR_NUM >= 58
- #define BA_LB_COUNT (U_LB_COUNT - 3)
- #else
- #define BA_LB_COUNT U_LB_COUNT
diff --git a/www-client/chromium/files/chromium-93-InkDropHost-crash.patch b/www-client/chromium/files/chromium-93-InkDropHost-crash.patch
deleted file mode 100644
index 54d16db..0000000
--- a/www-client/chromium/files/chromium-93-InkDropHost-crash.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/ui/views/animation/ink_drop_host_view.h b/ui/views/animation/ink_drop_host_view.h
-index bd0975b..e5df288 100644
---- a/ui/views/animation/ink_drop_host_view.h
-+++ b/ui/views/animation/ink_drop_host_view.h
-@@ -238,6 +238,11 @@ class VIEWS_EXPORT InkDropHost {
- // Used to observe View and inform the InkDrop of host-transform changes.
- ViewLayerTransformObserver host_view_transform_observer_;
-
-+ // Declared before |ink_drop_|, because InkDropImpl may call
-+ // RemoveInkDropLayer on partly destructed InkDropHost. In
-+ // that case |ink_drop_mask_| must be still valid.
-+ std::unique_ptr<views::InkDropMask> ink_drop_mask_;
-+
- // Should not be accessed directly. Use GetInkDrop() instead.
- std::unique_ptr<InkDrop> ink_drop_;
-
-@@ -261,8 +266,6 @@ class VIEWS_EXPORT InkDropHost {
- int ink_drop_small_corner_radius_ = 2;
- int ink_drop_large_corner_radius_ = 4;
-
-- std::unique_ptr<views::InkDropMask> ink_drop_mask_;
--
- base::RepeatingCallback<std::unique_ptr<InkDrop>()> create_ink_drop_callback_;
- base::RepeatingCallback<std::unique_ptr<InkDropRipple>()>
- create_ink_drop_ripple_callback_;
diff --git a/www-client/chromium/files/chromium-96-EnumTable-crash.patch b/www-client/chromium/files/chromium-96-EnumTable-crash.patch
deleted file mode 100644
index 9736739..0000000
--- a/www-client/chromium/files/chromium-96-EnumTable-crash.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-diff --git a/components/cast_channel/enum_table.h b/components/cast_channel/enum_table.h
-index aad9e08..2f3fcad 100644
---- a/components/cast_channel/enum_table.h
-+++ b/components/cast_channel/enum_table.h
-@@ -8,6 +8,7 @@
- #include <cstdint>
- #include <cstring>
- #include <ostream>
-+#include <vector>
-
- #include "base/check_op.h"
- #include "base/macros.h"
-@@ -188,7 +189,6 @@ class
- inline constexpr GenericEnumTableEntry(int32_t value);
- inline constexpr GenericEnumTableEntry(int32_t value, base::StringPiece str);
-
-- GenericEnumTableEntry(const GenericEnumTableEntry&) = delete;
- GenericEnumTableEntry& operator=(const GenericEnumTableEntry&) = delete;
-
- private:
-@@ -254,7 +254,6 @@ class EnumTable {
- constexpr Entry(E value, base::StringPiece str)
- : GenericEnumTableEntry(static_cast<int32_t>(value), str) {}
-
-- Entry(const Entry&) = delete;
- Entry& operator=(const Entry&) = delete;
- };
-
-@@ -313,15 +312,14 @@ class EnumTable {
- if (is_sorted_) {
- const std::size_t index = static_cast<std::size_t>(value);
- if (ANALYZER_ASSUME_TRUE(index < data_.size())) {
-- const auto& entry = data_.begin()[index];
-+ const auto& entry = data_[index];
- if (ANALYZER_ASSUME_TRUE(entry.has_str()))
- return entry.str();
- }
- return absl::nullopt;
- }
- return GenericEnumTableEntry::FindByValue(
-- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
-- data_.size(), static_cast<int32_t>(value));
-+ &data_[0], data_.size(), static_cast<int32_t>(value));
- }
-
- // This overload of GetString is designed for cases where the argument is a
-@@ -349,8 +347,7 @@ class EnumTable {
- // enum value directly.
- absl::optional<E> GetEnum(base::StringPiece str) const {
- auto* entry = GenericEnumTableEntry::FindByString(
-- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
-- data_.size(), str);
-+ &data_[0], data_.size(), str);
- return entry ? static_cast<E>(entry->value) : absl::optional<E>();
- }
-
-@@ -365,7 +362,7 @@ class EnumTable {
- // Align the data on a cache line boundary.
- alignas(64)
- #endif
-- std::initializer_list<Entry> data_;
-+ const std::vector<Entry> data_;
- bool is_sorted_;
-
- constexpr EnumTable(std::initializer_list<Entry> data, bool is_sorted)
-@@ -377,8 +374,8 @@ class EnumTable {
-
- for (std::size_t i = 0; i < data.size(); i++) {
- for (std::size_t j = i + 1; j < data.size(); j++) {
-- const Entry& ei = data.begin()[i];
-- const Entry& ej = data.begin()[j];
-+ const Entry& ei = data[i];
-+ const Entry& ej = data[j];
- DCHECK(ei.value != ej.value)
- << "Found duplicate enum values at indices " << i << " and " << j;
- DCHECK(!(ei.has_str() && ej.has_str() && ei.str() == ej.str()))
diff --git a/www-client/chromium/files/chromium-96-freetype-unbundle.patch b/www-client/chromium/files/chromium-96-freetype-unbundle.patch
deleted file mode 100644
index 6ef5ff6..0000000
--- a/www-client/chromium/files/chromium-96-freetype-unbundle.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/build/linux/BUILD.gn
-+++ b/build/linux/BUILD.gn
-@@ -23,6 +23,7 @@
- # the system, use with caution,for details see build/config/freetype/BUILD.gn.
- pkg_config("freetype_from_pkgconfig") {
- visibility = [
-+ "//build/config/freetype:freetype",
- "//third_party:freetype_harfbuzz",
- "//third_party/harfbuzz-ng:harfbuzz_source",
- ]
diff --git a/www-client/chromium/files/chromium-98-EnumTable-crash.patch b/www-client/chromium/files/chromium-98-EnumTable-crash.patch
deleted file mode 100644
index f058ec1..0000000
--- a/www-client/chromium/files/chromium-98-EnumTable-crash.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-diff --git a/components/cast_channel/enum_table.h b/components/cast_channel/enum_table.h
-index 842553a..89de703 100644
---- a/components/cast_channel/enum_table.h
-+++ b/components/cast_channel/enum_table.h
-@@ -8,6 +8,7 @@
- #include <cstdint>
- #include <cstring>
- #include <ostream>
-+#include <vector>
-
- #include "base/check_op.h"
- #include "base/notreached.h"
-@@ -187,7 +188,6 @@ class
- inline constexpr GenericEnumTableEntry(int32_t value);
- inline constexpr GenericEnumTableEntry(int32_t value, base::StringPiece str);
-
-- GenericEnumTableEntry(const GenericEnumTableEntry&) = delete;
- GenericEnumTableEntry& operator=(const GenericEnumTableEntry&) = delete;
-
- private:
-@@ -253,7 +253,6 @@ class EnumTable {
- constexpr Entry(E value, base::StringPiece str)
- : GenericEnumTableEntry(static_cast<int32_t>(value), str) {}
-
-- Entry(const Entry&) = delete;
- Entry& operator=(const Entry&) = delete;
- };
-
-@@ -312,15 +311,14 @@ class EnumTable {
- if (is_sorted_) {
- const std::size_t index = static_cast<std::size_t>(value);
- if (ANALYZER_ASSUME_TRUE(index < data_.size())) {
-- const auto& entry = data_.begin()[index];
-+ const auto& entry = data_[index];
- if (ANALYZER_ASSUME_TRUE(entry.has_str()))
- return entry.str();
- }
- return absl::nullopt;
- }
- return GenericEnumTableEntry::FindByValue(
-- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
-- data_.size(), static_cast<int32_t>(value));
-+ &data_[0], data_.size(), static_cast<int32_t>(value));
- }
-
- // This overload of GetString is designed for cases where the argument is a
-@@ -348,8 +346,7 @@ class EnumTable {
- // enum value directly.
- absl::optional<E> GetEnum(base::StringPiece str) const {
- auto* entry = GenericEnumTableEntry::FindByString(
-- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
-- data_.size(), str);
-+ &data_[0], data_.size(), str);
- return entry ? static_cast<E>(entry->value) : absl::optional<E>();
- }
-
-@@ -364,7 +361,7 @@ class EnumTable {
- // Align the data on a cache line boundary.
- alignas(64)
- #endif
-- std::initializer_list<Entry> data_;
-+ const std::vector<Entry> data_;
- bool is_sorted_;
-
- constexpr EnumTable(std::initializer_list<Entry> data, bool is_sorted)
-@@ -376,8 +373,8 @@ class EnumTable {
-
- for (std::size_t i = 0; i < data.size(); i++) {
- for (std::size_t j = i + 1; j < data.size(); j++) {
-- const Entry& ei = data.begin()[i];
-- const Entry& ej = data.begin()[j];
-+ const Entry& ei = data[i];
-+ const Entry& ej = data[j];
- DCHECK(ei.value != ej.value)
- << "Found duplicate enum values at indices " << i << " and " << j;
- DCHECK(!(ei.has_str() && ej.has_str() && ei.str() == ej.str()))
diff --git a/www-client/chromium/files/chromium-98-system-libdrm.patch b/www-client/chromium/files/chromium-98-system-libdrm.patch
deleted file mode 100644
index f2f18be..0000000
--- a/www-client/chromium/files/chromium-98-system-libdrm.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-diff --git a/media/gpu/chromeos/BUILD.gn b/media/gpu/chromeos/BUILD.gn
-index a5c8945..d742d80 100644
---- a/media/gpu/chromeos/BUILD.gn
-+++ b/media/gpu/chromeos/BUILD.gn
-@@ -32,6 +32,7 @@ source_set("chromeos") {
-
- if (use_vaapi) {
- deps += [
-+ "//build/config/linux/libdrm",
- "//media/gpu/vaapi",
- "//media/gpu/vaapi:common",
- ]
-diff --git a/media/gpu/chromeos/video_decoder_pipeline.cc b/media/gpu/chromeos/video_decoder_pipeline.cc
-index 2d77cd9..1883fd4 100644
---- a/media/gpu/chromeos/video_decoder_pipeline.cc
-+++ b/media/gpu/chromeos/video_decoder_pipeline.cc
-@@ -4,6 +4,9 @@
-
- #include "media/gpu/chromeos/video_decoder_pipeline.h"
-
-+#if BUILDFLAG(USE_VAAPI)
-+#include <drm_fourcc.h>
-+#endif
- #include <memory>
-
- #include "base/bind.h"
-@@ -28,7 +31,6 @@
-
- #if BUILDFLAG(USE_VAAPI)
- #include "media/gpu/vaapi/vaapi_video_decoder.h"
--#include "third_party/libdrm/src/include/drm/drm_fourcc.h"
- #elif BUILDFLAG(USE_V4L2_CODEC)
- #include "media/gpu/v4l2/v4l2_video_decoder.h"
- #else
diff --git a/www-client/chromium/files/chromium-glibc-2.34.patch b/www-client/chromium/files/chromium-glibc-2.34.patch
deleted file mode 100644
index 64c03a6..0000000
--- a/www-client/chromium/files/chromium-glibc-2.34.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 600d63c2c59a9892dbc5423d7d8bb1565a9f91e7 Mon Sep 17 00:00:00 2001
-From: Michel Salim <michel@fb.com>
-Date: Thu, 04 Nov 2021 14:22:40 -0700
-Subject: [PATCH] Handle long SIGSTKSZ in glibc > 2.33
-
-`SIGSTKSZ` is no longer constant in glibc > 2.33 but a function
-returning a long. Cast before taking `max`.
-
-See https://sourceware.org/git/?p=glibc.git;a=blob;f=NEWS;h=85e84fe53699fe9e392edffa993612ce08b2954a;hb=HEAD
-
-Signed-off-by: Michel Salim <michel@fb.com>
-Change-Id: I197f8ff3053eede80d6aed096be4f0113dd43241
-(relocated to chromium repo, removed static)
----
-
-diff --git a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-index ca353c4..5cdabcf 100644
---- a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-@@ -138,7 +138,7 @@
- // SIGSTKSZ may be too small to prevent the signal handlers from overrunning
- // the alternative stack. Ensure that the size of the alternative stack is
- // large enough.
-- static const unsigned kSigStackSize = std::max(16384, SIGSTKSZ);
-+ const unsigned kSigStackSize = std::max(16384U, (unsigned)SIGSTKSZ);
-
- // Only set an alternative stack if there isn't already one, or if the current
- // one is too small.
-diff --git a/sandbox/linux/services/credentials.cc b/sandbox/linux/services/credentials.cc
-index ca6b595..1c1ee42 100644
---- a/sandbox/linux/services/credentials.cc
-+++ b/sandbox/linux/services/credentials.cc
-@@ -11,6 +11,7 @@
- #include <stddef.h>
- #include <stdint.h>
- #include <stdio.h>
-+#include <string.h>
- #include <sys/syscall.h>
- #include <sys/types.h>
- #include <sys/wait.h>
-@@ -100,7 +101,8 @@ bool ChrootToSafeEmptyDir() {
- // TODO(crbug.com/1247458) Broken in MSan builds after LLVM f1bb30a4956f.
- clone_flags |= CLONE_VM | CLONE_VFORK | CLONE_SETTLS;
-
-- char tls_buf[PTHREAD_STACK_MIN] = {0};
-+ char tls_buf[PTHREAD_STACK_MIN];
-+ memset(tls_buf, 0, PTHREAD_STACK_MIN);
- tls = tls_buf;
- #endif
-
diff --git a/www-client/chromium/files/chromium-shim_headers.patch b/www-client/chromium/files/chromium-shim_headers.patch
deleted file mode 100644
index 9372632..0000000
--- a/www-client/chromium/files/chromium-shim_headers.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From e273172bbafedca36984fc40f4aa6c44b79ac2ef Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Fri, 25 Dec 2020 09:10:32 +0000
-Subject: [PATCH] shim_headers: fix outputs generation
-
----
- build/shim_headers.gni | 11 +++++++----
- 1 file changed, 7 insertions(+), 4 deletions(-)
-
-diff --git a/build/shim_headers.gni b/build/shim_headers.gni
-index 0900cba..5138647 100644
---- a/build/shim_headers.gni
-+++ b/build/shim_headers.gni
-@@ -6,6 +6,8 @@ template("shim_headers") {
- action_name = "gen_${target_name}"
- config_name = "${target_name}_config"
- shim_headers_path = "${root_gen_dir}/shim_headers/${target_name}"
-+ shim_root_path = rebase_path(invoker.root_path)
-+ shim_rel_path = rebase_path("${shim_root_path}", rebase_path("//"))
-
- config(config_name) {
- include_dirs = [ shim_headers_path ]
-@@ -16,7 +18,7 @@ template("shim_headers") {
- args = [
- "--generate",
- "--headers-root",
-- rebase_path(invoker.root_path),
-+ "${shim_root_path}",
- "--output-directory",
- rebase_path(shim_headers_path),
- ]
-@@ -27,9 +29,10 @@ template("shim_headers") {
- ]
- }
- args += invoker.headers
--
-- outputs = process_file_template(invoker.headers,
-- "${shim_headers_path}/{{source_file_part}}")
-+ outputs = []
-+ foreach(shim_header, invoker.headers) {
-+ outputs += [ "${shim_headers_path}/${shim_rel_path}/" + shim_header ]
-+ }
- }
-
- group(target_name) {
---
-2.26.2
-
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] proj/riscv:master commit in: www-client/chromium/files/, www-client/chromium/
@ 2024-06-25 23:55 Yixun Lan
0 siblings, 0 replies; 10+ messages in thread
From: Yixun Lan @ 2024-06-25 23:55 UTC (permalink / raw
To: gentoo-commits
commit: a7dfb559023514cba7e10f1808086cfef85a8288
Author: Andrew Cameron <apcameron <AT> gmail <DOT> com>
AuthorDate: Fri Jun 14 12:58:30 2024 +0000
Commit: Yixun Lan <dlan <AT> gentoo <DOT> org>
CommitDate: Tue Jun 25 23:55:10 2024 +0000
URL: https://gitweb.gentoo.org/proj/riscv.git/commit/?id=a7dfb559
Update Chromium to 126.0.6478.114
Tested on my Visonfive 2
Closes: https://github.com/gentoo/riscv/pull/15
Signed-off-by: Andrew Cameron <apcameron <AT> gmail.com>
Signed-off-by: Yixun Lan <dlan <AT> gentoo.org>
www-client/chromium/Manifest | 12 +-
www-client/chromium/chromium-123.0.6312.105.ebuild | 1453 --------------------
...2.122.ebuild => chromium-126.0.6478.114.ebuild} | 68 +-
...linking.patch => Debian-fix-rust-linking.patch} | 0
.../chromium/files/chromium-125-ninja-1-12.patch | 17 +
.../chromium-125-oauth2-client-switches.patch | 45 +
.../chromium/files/chromium-125-system-zstd.patch | 53 +
.../chromium-126-oauth2-client-switches.patch | 45 +
.../files/{10cpuinfo.patch => cpuinfo.patch} | 0
...fix-rust-target.patch => fix-rust-target.patch} | 0
.../{03riscv-dav1d.patch => riscv-dav1d.patch} | 0
.../{06riscv-ffmpeg.patch => riscv-ffmpeg.patch} | 569 +++-----
.../{05riscv-sandbox.patch => riscv-sandbox.patch} | 451 ++++--
.../chromium/files/{09riscv.patch => riscv.patch} | 0
...ler.patch => swiftshader-MCDissassembler.patch} | 0
...e-llvm16.patch => swiftshader-use-llvm16.patch} | 0
16 files changed, 744 insertions(+), 1969 deletions(-)
diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
index 3786d14..726d054 100644
--- a/www-client/chromium/Manifest
+++ b/www-client/chromium/Manifest
@@ -1,9 +1,7 @@
-DIST chromium-123-clang.tar.xz 50178332 BLAKE2B 4b5c4f81a83c7b0c809c93a713e869fde6fe559477665cb3b2f03c62d2175f821b81fb03b0ddd127c6eaf77c41011b4de06561f09a58384153d80fe2b3aa7427 SHA512 17108b9579f16d0da383bd5e41d012f94bcb8445a517ff823aa49b66d3861b0a124b6cce6183fbc64e8050f1ebcd65a9daa2acbda5fdaa42390bfbf4ecb16bd3
-DIST chromium-123-rust.tar.xz 145295100 BLAKE2B ae6603a0e0218e4e39d3e8b7aa48a2cd946c90779dac48be26582926963c8a10a48e3e58fd00a23cb8cd9a3584d9d4a142e843f93c761e862253817635f18c2c SHA512 b4f8dce6d74be4be495d9948d7593ec9664c0b93e87456fab33d3ae5ac0e486a4e8576b26a9ab9890285a7c0d566afb803b98225c0692b6cac9f623a10b954a2
-DIST chromium-123.0.6312.105.tar.xz 3481204616 BLAKE2B 8adbc4a0c96ea53b45b26a48c8eb94e29b31b981471a0d5fda4cdea1f7aa69714a9e5a5729a61a49a92b6322889ee794b4c7ac5e243bc495ff5bd04cdc59f616 SHA512 a1abbba78c96fd7bc44a23b21d8180ebff015d17abcb186dece595513fda9d4443ac67498a78181589884c384a48e6c3abfe72e6ee806fdfc764d05f13fb5cb6
-DIST chromium-123.0.6312.122.tar.xz 3488275388 BLAKE2B 9f7e6c4984a41dbed6849eee08d4f6b8241c86ece0250d67786038980f3d7f208897f42b279c20ffbb965e8e49427ce74e896c34b40390321780b9cc2ba685ce SHA512 23e13d1d5758aa771f4c66e1a55068438e7c4890456dcb0b7a1fc1839b750e612e29d59e744c8b773935757aad01b78a5fecc3e03057a8acbb7e997dbb98f007
-DIST chromium-patches-123.tar.bz2 4697 BLAKE2B 8a7dd76edb23afb7b2f65084696bce5d6e54d63ca34c4590052db1086ed0a422b1efde863c4daad4e2526f329eb65276b9ad5406017cd97fb75b1a9556c1f933 SHA512 ea47255deac1893896f64496629d34c7092f266a175b8400fcf4f01b9d038ae240e911bff488558bb28e6f5795bbcf276adf20ed1e0ccb8ac99f9ddd260742f9
+DIST chromium-126-clang.tar.xz 50615992 BLAKE2B 293709399ddf343ba195cec452974178228ebb72921931ad58136351956b881f8dc0bc8ca740252bcd4971701c9ee8ccc0a33648aee25a5b1cece56e0af6b83f SHA512 7bb2938b1df452585d0ee93da3bcf9c3e64e88e39059a713fe21758df670190b12ca002ef2764dc99efdb4284b4c4b7cde861e2e495d99956c21120a51b8c3dc
+DIST chromium-126-rust.tar.xz 150643432 BLAKE2B d9c827008a2fae07977628beccdf3cf4e5d9bf3c9728e4b2839c8bc86ee2f87844921064e30c067a1b620a3d53cbf54a74053172b1436239332fc668f772924d SHA512 431c0305a81e59da231d56f1b119226b661d7f5a93d0da92afbfc384b0e5be28f282c2911137983298a5369c93b60184d41875ec63b47048a782ee2b1301fc77
+DIST chromium-126.0.6478.114.tar.xz 4167281776 BLAKE2B 4ca720b0280dc6f0aafb5da5d31f97d8d55faec9ac187fc7f3e16e447d147a6912b2b8f26247503390755146e42b32458e4c71a80e6a132cc456f414454ecf53 SHA512 49ca506eb7ac52cdfb5b491bff10deec46d62686feeb3392803eecd61a570ce6c9e6c97d61c79907aaaee39b6d32a4da399c92b8078dbdf2df097f37c757d286
+DIST chromium-patches-126.tar.bz2 4538 BLAKE2B c1f224015618ec908ef09d0c04a2243923371e2caeccd60d93747599fd1434b284291a5b4326008db21749cf78827d5a4b50d22fc805dcd3c1fd86303dc82729 SHA512 6692075adac0379b5f27d1023de1a051cf7f7f7138efd32dfc3af0d501b714142a16daf18022bb46d92218587f364f4dafe9f4aea24f6826e88b0e7cc2be7d0b
DIST chromium-ppc64le-gentoo-patches-1.tar.xz 5636 BLAKE2B 1d898939df023c59285b27bee552470483ea06375d1ee8d6947b89c5927c23cc7bfec6b49f3b376ece931d11a56f8e2a45791e0f92ad61974fc8c34c1082d89c SHA512 8a71cb007e47cda8e5fe5d185729389e65c48bd322c8ee8b3986bee8571427b959628f2666bda646a3f89ae64197c0957d3626845ff03461dbd5dee4c964d07c
DIST chromium-profiler-0.2.tar 259952640 BLAKE2B 5e82389fce00b267280d633b26551231c558b80f0c92cd7d60271095a3503365ab673e7a46dc5f74f8a82db1f21262cb24dcc0531d954bab5fb3b175dab3394d SHA512 9fa89a5ab728419683e7495ae676567480987d68a2d589f2aa97bfcbcf123f3c8f97f8bca5f65e5e3f6e41475535add473ded83b9c7a33bb4746a9d05b298a6c
-DIST chromium_123.0.6312.105-1raptor0~deb12u1.debian.tar.xz 579484 BLAKE2B 587082358377f7bc0dca0dec83772abb7e040ad894ca4d456a294b7f5c19297acbc5b1dac725d3c1dbaaeefd480328c6c06c607438e560aa6359c1e98c4b1c9c SHA512 6b670a139e284cc96da65ff3c1b3e715cd9b436de2404792d619cfad23e2040fd931e7cc49f0b1ac17e11522804a4c9a621cb943e0dab33fb5bf422e954c5421
-DIST chromium_123.0.6312.86-1raptor0~deb12u1.debian.tar.xz 579124 BLAKE2B a27996211fbed198480e50934e39b0eda4c39e5e78a03f9b290cb90a6c8d7003b6aa828bf35e6744e9d7aa9a922f43baa77d6c9768140baf5749a797c2dad664 SHA512 cfb51fd910f3330100a2dc9ea993d537f126329ff2c590744954a3bfbb712d7bf1d7ad9066628aba5d28c98f2f9b069cf02f8c6048d2ad0a1a376468bdbd9196
+DIST chromium_126.0.6478.56-1raptor0~deb12u2.debian.tar.xz 613448 BLAKE2B 35af65461a5132ac7a28e004f3b8a5e1afc10924726154dd47a23371ebe5508765e0bfd3c1b1d56ff5671039b522536fa21ec22dcb9f14426929a5905976e8a0 SHA512 870b864620e48e6aefa2b36026553b06dde0afc8e8de6cbaf0e4db2333d02164a95fa5f243066e026aa3dff4b3a7366853f49c02f607dec36cec77e4b4683736
diff --git a/www-client/chromium/chromium-123.0.6312.105.ebuild b/www-client/chromium/chromium-123.0.6312.105.ebuild
deleted file mode 100644
index 5388d0d..0000000
--- a/www-client/chromium/chromium-123.0.6312.105.ebuild
+++ /dev/null
@@ -1,1453 +0,0 @@
-# Copyright 2009-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{11..12} )
-PYTHON_REQ_USE="xml(+)"
-
-# 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 try and avoid forcing the use of the custom/bundled libcxx, but sometimes
-# it is unavoidable. Remember to force the use of Clang when this is forced.
-
-# GCC is _not_ supported upstream, though patches are welcome. We do our
-# best to enable builds with GCC but reserve the right to force Clang
-# builds if we can't keep up with upstream's changes. Please comment
-# when forcing Clang builds so we can track the need for it.
-
-# 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.
-
-# These variables let us easily bound supported major dependency versions in one place.
-GCC_MIN_VER=12
-GN_MIN_VER=0.2154
-# Since Google use prerelease llvm we can let any adventurous users try to build with prerelease
-# ebuilds; try to keep this up to date with the latest version in the tree.
-LLVM_MAX_SLOT=19
-LLVM_MIN_SLOT=17
-RUST_MIN_VER=1.72.0
-# chromium-tools/get-chromium-toolchain-strings.sh
-GOOGLE_CLANG_VER=llvmorg-19-init-2319-g7c4c2746-1
-GOOGLE_RUST_VER=340bb19fea20fd5f9357bbfac542fad84fc7ea2b-3
-
-# https://bugs.chromium.org/p/v8/issues/detail?id=14449 - V8 used in 120 can't build with GCC
-# Resolved upstream, requires testing and some backporting I'm sure
-: ${CHROMIUM_FORCE_CLANG=yes}
-# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101227 - Chromium 120:
-# webrtc - no matching member function for call to 'emplace'
-: ${CHROMIUM_FORCE_LIBCXX=yes}
-# 121's 'gcc_link_wrapper.py' currently fails if not using lld due to the addition of rust
-: ${CHROMIUM_FORCE_LLD=yes}
-
-: ${CHROMIUM_FORCE_GOOGLE_TOOLCHAIN=no}
-
-VIRTUALX_REQUIRED="pgo"
-
-CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- 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"
-
-inherit check-reqs chromium-2 desktop flag-o-matic llvm ninja-utils pax-utils
-inherit python-any-r1 qmake-utils readme.gentoo-r1 toolchain-funcs virtualx xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://www.chromium.org/"
-PATCHSET_PPC64="123.0.6312.86-1raptor0~deb12u1"
-PATCH_V="${PV%%\.*}"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- system-toolchain? (
- 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
- )
- 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
- )
- pgo? ( https://github.com/elkablo/chromium-profiler/releases/download/v0.2/chromium-profiler-0.2.tar )"
-
-LICENSE="BSD"
-SLOT="0/stable"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv"
-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 libcxx lto +official pax-kernel pgo +proprietary-codecs pulseaudio"
-IUSE+=" qt5 qt6 +screencast selinux +system-toolchain +vaapi +wayland +widevine"
-RESTRICT="!bindist? ( bindist )"
-
-REQUIRED_USE="
- !headless? ( || ( X wayland ) )
- pgo? ( X !wayland )
- qt6? ( qt5 )
- screencast? ( wayland )
- !system-toolchain? ( libcxx )
- ffmpeg-chromium? ( bindist proprietary-codecs )
-"
-
-COMMON_X_DEPEND="
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxshmfence:=
-"
-
-COMMON_SNAPSHOT_DEPEND="
- system-icu? ( >=dev-libs/icu-71.1:= )
- >=dev-libs/libxml2-2.12.4:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- dev-libs/libxslt:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-3:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- system-png? ( media-libs/libpng:=[-apng(-)] )
- system-zstd? ( >=app-arch/zstd-1.5.5:= )
- >=media-libs/libwebp-0.4.0:=
- 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:=
- pulseaudio? ( media-libs/libpulse:= )
- sys-apps/pciutils:=
- kerberos? ( virtual/krb5 )
- vaapi? ( >=media-libs/libva-2.7:=[X?,wayland?] )
- X? (
- x11-libs/libX11:=
- x11-libs/libXext:=
- x11-libs/libxcb:=
- )
- x11-libs/libxkbcommon:=
- wayland? (
- dev-libs/libffi:=
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:= )
- )
- )
-"
-
-COMMON_DEPEND="
- ${COMMON_SNAPSHOT_DEPEND}
- app-arch/bzip2:=
- dev-libs/expat:=
- net-misc/curl[ssl]
- sys-apps/dbus:=
- media-libs/flac:=
- sys-libs/zlib:=[minizip]
- !headless? (
- X? ( ${COMMON_X_DEPEND} )
- >=app-accessibility/at-spi2-core-2.46.0:2
- media-libs/mesa:=[X?,wayland?]
- cups? ( >=net-print/cups-1.3.11:= )
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/pango:=
- qt5? (
- dev-qt/qtcore:5
- dev-qt/qtwidgets:5
- )
- qt6? ( dev-qt/qtbase:6[gui,widgets] )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- !headless? (
- || (
- x11-libs/gtk+:3[X?,wayland?]
- gui-libs/gtk:4[X?,wayland?]
- )
- qt5? ( dev-qt/qtgui:5[X?,wayland?] )
- qt6? ( dev-qt/qtbase:6[X?,wayland?] )
- )
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- bindist? (
- !ffmpeg-chromium? ( >=media-video/ffmpeg-6.1-r1:0/58.60.60[chromium] )
- ffmpeg-chromium? ( media-video/ffmpeg-chromium:${PV%%\.*} )
- )
-"
-DEPEND="${COMMON_DEPEND}
- !headless? (
- gtk4? ( gui-libs/gtk:4[X?,wayland?] )
- !gtk4? ( x11-libs/gtk+:3[X?,wayland?] )
- )
-"
-
-depend_clang_llvm_version() {
- echo "sys-devel/clang:$1"
- echo "sys-devel/llvm:$1"
- echo "=sys-devel/lld-$1*"
-}
-
-# When passed multiple arguments we assume that
-# we want a range of versions, inclusive.
-depend_clang_llvm_versions() {
- local _v
- if [[ $# -eq 1 ]]; then
- depend_clang_llvm_version "$1"
- elif [[ $# -eq 2 ]]; then
- if [[ $1 -eq $2 ]]; then
- depend_clang_llvm_version "$1"
- fi
- echo "|| ("
- for ((i=$1; i<=$2; i++)); do
- echo "("
- depend_clang_llvm_version "${i}"
- echo ")"
- done
- echo ")"
- else
- die "depend_clang_llvm_versions() requires 1 or 2 arguments"
- fi
-}
-
-BDEPEND="
- ${COMMON_SNAPSHOT_DEPEND}
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- !headless? (
- qt5? ( dev-qt/qtcore:5 )
- qt6? ( dev-qt/qtbase:6 )
- )
- system-toolchain? (
- libcxx? ( >=sys-devel/clang-${LLVM_MIN_SLOT} )
- lto? ( $(depend_clang_llvm_versions ${LLVM_MIN_SLOT} ${LLVM_MAX_SLOT}) )
- pgo? (
- >=dev-python/selenium-3.141.0
- >=dev-util/web_page_replay_go-20220314
- $(depend_clang_llvm_versions ${LLVM_MIN_SLOT} ${LLVM_MAX_SLOT})
- )
- >=virtual/rust-${RUST_MIN_VER}[profiler(-)]
- )
- >=dev-build/gn-${GN_MIN_VER}
- dev-lang/perl
- >=dev-build/ninja-1.7.2
- >=dev-util/gperf-3.0.3
- dev-vcs/git
- >=net-libs/nodejs-7.6.0[inspector]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
-"
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+="system-toolchain? ( >=sys-devel/clang-${LLVM_MIN_SLOT} ) "
-fi
-
-if [[ ${CHROMIUM_FORCE_LLD} == yes ]]; then
- BDEPEND+="system-toolchain? ( >=sys-devel/lld-${LLVM_MIN_SLOT} ) "
-else
- # #918897: Hack for arm64
- BDEPEND+=" arm64? ( >=sys-devel/lld-${LLVM_MIN_SLOT} )"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- python_has_version "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-needs_clang() {
- [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || use libcxx || use lto || use pgo
-}
-
-needs_lld() {
- # #641556: Force lld for lto and pgo builds, otherwise disable
- # #918897: Temporary hack w/ use arm64
- [[ ${CHROMIUM_FORCE_LLD} == yes ]] || use lto || use pgo || use arm64
-}
-
-llvm_check_deps() {
- if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
- einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
-
- if ( use lto || use pgo ) && ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
- einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
-
- einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
-}
-
-pre_build_checks() {
- # Check build requirements: bugs #471810, #541816, #914220
- # We're going to start doing maths here on the size of an unpacked source tarball,
- # this should make updates easier as chromium continues to balloon in size.
- local BASE_DISK=18
- local EXTRA_DISK=1
- local CHECKREQS_MEMORY="4G"
- tc-is-cross-compiler && EXTRA_DISK=2
- if use lto || use pgo; then
- CHECKREQS_MEMORY="9G"
- tc-is-cross-compiler && EXTRA_DISK=4
- use pgo && EXTRA_DISK=8
- fi
- if is-flagq '-g?(gdb)?([1-9])'; then
- if use custom-cflags; then
- EXTRA_DISK=13
- fi
- CHECKREQS_MEMORY="16G"
- fi
- CHECKREQS_DISK_BUILD="$((BASE_DISK + EXTRA_DISK))G"
- check-reqs_${EBUILD_PHASE_FUNC}
-}
-
-pkg_pretend() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- # The pre_build_checks are all about compilation resources, no need to run it for a binpkg
- pre_build_checks
- fi
-
- if use headless; then
- local headless_unused_flags=("cups" "kerberos" "pulseaudio" "qt5" "qt6" "vaapi" "wayland")
- for myiuse in ${headless_unused_flags[@]}; do
- use ${myiuse} && ewarn "Ignoring USE=${myiuse}, USE=headless is set."
- done
- fi
-
- if ! use bindist && use ffmpeg-chromium; then
- ewarn "Ignoring USE=ffmpeg-chromium, USE=bindist is not set."
- fi
-}
-
-pkg_setup() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- # 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
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge ${GCC_MIN_VER}; then
- die "At least gcc ${GCC_MIN_VER} is required"
- fi
- if use pgo && tc-is-cross-compiler; then
- die "The pgo USE flag cannot be used when cross-compiling"
- fi
- if needs_clang && ! tc-is-clang; then
- if tc-is-cross-compiler; then
- CPP="${CBUILD}-clang++ -E"
- else
- CPP="${CHOST}-clang++ -E"
- fi
- fi
- if needs_clang || tc-is-clang; then
- if ver_test "$(clang-major-version)" -lt ${LLVM_MIN_SLOT}; then
- die "At least Clang ${LLVM_MIN_SLOT} is required"
- fi
- # Ideally we never see this, but it should help prevent bugs like 927154
- if ver_test "$(clang-major-version)" -gt ${LLVM_MAX_SLOT}; then
- die "Clang $(clang-major-version) is too new; ${LLVM_MAX_SLOT} is the highest supported version"
- fi
- fi
- fi
- # 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"
- fi
- fi
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-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" || die
-
- local PATCHES=(
- "${FILESDIR}/chromium-cross-compile.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
- "${FILESDIR}/chromium-109-system-zlib.patch"
- "${FILESDIR}/chromium-111-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-117-system-zstd.patch"
- "${FILESDIR}/chromium-124-libwebp-shim-sharpyuv.patch"
- "${FILESDIR}/00swiftshader-MCDissassembler.patch"
- "${FILESDIR}/00swiftshader-use-llvm16.patch"
- "${FILESDIR}/01fix-rust-target.patch"
- "${FILESDIR}/02Debian-fix-rust-linking.patch"
- "${FILESDIR}/03riscv-dav1d.patch"
- "${FILESDIR}/05riscv-sandbox.patch"
- "${FILESDIR}/06riscv-ffmpeg.patch"
- "${FILESDIR}/09riscv.patch"
- "${FILESDIR}/10cpuinfo.patch"
- )
-
- 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
- sed -i -e \
- "/if (is_clang && toolchain_has_rust) {/,+2d" \
- build/config/compiler/BUILD.gn || die "Failed to disable bundled compiler builtins"
- 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"
- 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" )
- fi
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_user_dirs
- 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
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/ceval
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/volk
- third_party/anonymous_tokens
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/bidimapper
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/content_analysis_sdk
- third_party/cpuinfo
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/d3
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/gn/webgpu-cts
- third_party/dawn/third_party/khronos
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/additional_readme_paths.json
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/csp_evaluator
- 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/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/rxjs
- 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/test/unittests/front_end/third_party/i18n
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/ffmpeg
- third_party/fft2d
- third_party/flatbuffers
- third_party/fp16
- third_party/freetype
- third_party/fusejs
- third_party/fxdiv
- third_party/highway
- third_party/liburlpattern
- third_party/libzip
- third_party/lit
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/ipcz
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/SVT-AV1
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libevent
- third_party/libgav1
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/maldoca
- third_party/maldoca/src/third_party/tensorflow_protos
- third_party/maldoca/src/third_party/zlibwrapper
- third_party/markupsafe
- third_party/material_color_utilities
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/omnibox_proto
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/opus
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg
- third_party/pdfium/third_party/libtiff
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/pthreadpool
- third_party/puffin
- third_party/pyjson5
- third_party/pyyaml
- third_party/qcms
- third_party/re2
- third_party/rnnoise
- third_party/rust
- third_party/s2cellid
- third_party/securemessage
- third_party/selenium-atoms
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/snappy
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv
- third_party/swiftshader/third_party/SPIRV-Tools
- third_party/tensorflow_models
- third_party/tensorflow-text
- third_party/tflite
- 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/ruy
- third_party/six
- third_party/ukey2
- third_party/unrar
- third_party/utf
- third_party/vulkan
- third_party/wayland
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/xnnpack
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/glibc
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
-
- # USE=system-*
- if ! use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng )
- fi
-
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
-
- if ! use system-png; then
- keeplibs+=( third_party/libpng )
- fi
-
- if ! use system-zstd; then
- keeplibs+=( third_party/zstd )
- fi
-
- if use libcxx || [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libc++ )
- 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 )
- fi
- if use riscv ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-16.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- # requires git and clang, bug #832803
- # Revert https://chromium.googlesource.com/chromium/src/+/b463d0f40b08b4e896e7f458d89ae58ce2a27165%5E%21/third_party/libvpx/generate_gni.sh
- # and https://chromium.googlesource.com/chromium/src/+/71ebcbce867dd31da5f8b405a28fcb0de0657d91%5E%21/third_party/libvpx/generate_gni.sh
- # since we're not in a git repo
- sed -i -e "s|^update_readme||g; s|clang-format|${EPREFIX}/bin/true|g; /^git -C/d; /git cl/d; /cd \$BASE_DIR\/\$LIBVPX_SRC_DIR/ign format --in-place \$BASE_DIR\/BUILD.gn\ngn format --in-place \$BASE_DIR\/libvpx_srcs.gni" \
- generate_gni.sh || die
- ./generate_gni.sh || die
- popd >/dev/null || die
-
- pushd third_party/ffmpeg >/dev/null || die
- cp libavcodec/ppc/h264dsp.c libavcodec/ppc/h264dsp_ppc.c || die
- cp libavcodec/ppc/h264qpel.c libavcodec/ppc/h264qpel_ppc.c || die
- popd >/dev/null || die
- fi
-
- einfo "Unbundling third-party libraries ..."
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- # 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
-}
-
-chromium_rust_version_check() {
- [[ ${MERGE_TYPE} == binary ]] && return
- local rustc_version=( $(eselect --brief rust show 2>/dev/null) )
- rustc_version=${rustc_version[0]#rust-bin-}
- rustc_version=${rustc_version#rust-}
-
- [[ -z "${rustc_version}" ]] && die "Failed to determine rust version, check 'eselect rust' output"
-
- echo $rustc_version
-}
-
-chromium_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- if use system-toolchain && [[ ${CHROMIUM_FORCE_GOOGLE_TOOLCHAIN} == no ]]; then
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if needs_clang && ! tc-is-clang; then
- # Force clang since gcc is either broken or build is using libcxx.
- if tc-is-cross-compiler; then
- CC="${CBUILD}-clang -target ${CHOST} --sysroot ${ESYSROOT}"
- CXX="${CBUILD}-clang++ -target ${CHOST} --sysroot ${ESYSROOT}"
- BUILD_CC=${CBUILD}-clang
- BUILD_CXX=${CBUILD}-clang++
- else
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- fi
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- if needs_lld ; then
- # https://bugs.gentoo.org/918897#c32
- append-ldflags -Wl,--undefined-version
- myconf_gn+=" use_lld=true"
- else
- # This doesn't prevent lld from being used, but rather prevents gn from forcing it
- myconf_gn+=" use_lld=false"
- fi
-
- if use lto; then
- AR=llvm-ar
- NM=llvm-nm
- if tc-is-cross-compiler; then
- BUILD_AR=llvm-ar
- BUILD_NM=llvm-nm
- fi
- fi
-
- myconf_gn+=" custom_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
-
- # Don't inherit PKG_CONFIG_PATH from environment
- local -x PKG_CONFIG_PATH=
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- local rustc_ver
- rustc_ver=$(chromium_rust_version_check)
- if ver_test "${rustc_ver}" -lt "${RUST_MIN_VER}"; then
- eerror "Rust >=${RUST_MIN_VER} is required"
- eerror "Please run 'eselect rust' and select the correct rust version"
- die "Selected rust version is too old"
- else
- einfo "Using rust ${rustc_ver} to build"
- fi
- if [[ "$(eselect --brief rust show 2>/dev/null)" == *"bin"* ]]; then
- myconf_gn+=" rust_sysroot_absolute=\"${EPREFIX}/opt/rust-bin-${rustc_ver}/\""
- else
- myconf_gn+=" rust_sysroot_absolute=\"${EPREFIX}/usr/lib/rust/${rustc_ver}/\""
- fi
- myconf_gn+=" rustc_version=\"${rustc_ver}\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=false"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libwebp
- libxml
- libxslt
- openh264
- zlib
- )
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-png; then
- gn_system_libraries+=( libpng )
- fi
- if use system-zstd; then
- gn_system_libraries+=( zstd )
- fi
-
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
-
- # Optional dependencies.
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
-
- if use headless; then
- myconf_gn+=" use_cups=false"
- myconf_gn+=" use_kerberos=false"
- myconf_gn+=" use_pulseaudio=false"
- myconf_gn+=" use_vaapi=false"
- myconf_gn+=" rtc_use_pipewire=false"
- else
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
- myconf_gn+=" gtk_version=$(usex gtk4 4 3)"
- fi
-
- # Allows distributions to link pulseaudio directly (DT_NEEDED) instead of
- # using dlopen. This helps with automated detection of ABI mismatches and
- # prevents silent errors.
- if use pulseaudio; then
- myconf_gn+=" link_pulseaudio=true"
- fi
-
- # Non-developer builds of Chromium (for example, non-Chrome browsers, or
- # Chromium builds provided by Linux distros) should disable the testing config
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- if use system-toolchain; then
- myconf_gn+=" use_gold=false"
- fi
-
- # The sysroot is the oldest debian image that chromium supports, we don't need it
- myconf_gn+=" use_sysroot=false"
-
- # This determines whether or not GN uses the bundled libcxx
- # default: true
- if use libcxx || [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- myconf_gn+=" use_custom_libcxx=true"
- else
- myconf_gn+=" use_custom_libcxx=false"
- fi
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- if use bindist ; then
- # proprietary_codecs just forces Chromium to say that it can use h264/aac,
- # the work is still done by ffmpeg. If this is set to no Chromium
- # won't be able to load the codec even if the library can handle it
- myconf_gn+=" proprietary_codecs=true"
- myconf_gn+=" ffmpeg_branding=\"Chrome\""
- # build ffmpeg as an external component (libffmpeg.so) that we can remove / substitute
- myconf_gn+=" is_component_ffmpeg=true"
- else
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
- fi
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- filter-flags "-g*"
-
- # Prevent libvpx/xnnpack build failures. Bug 530248, 544702, 546984, 853646.
- if [[ ${myarch} == amd64 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4 -mno-xop -mno-sse4a
- fi
-
- if tc-is-gcc; then
- # https://bugs.gentoo.org/904455
- local -x CPP="$(tc-getCXX) -E"
- # https://bugs.gentoo.org/912381
- filter-lto
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- elif [[ $myarch = riscv ]] ; then
- myconf_gn+=" target_cpu=\"riscv64\""
- ffmpeg_target_arch=riscv64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Disable external code space for V8 for ppc64. It is disabled for ppc64
- # by default, but cross-compiling on amd64 enables it again.
- if tc-is-cross-compiler; then
- if ! use amd64 && ! use arm64; then
- myconf_gn+=" v8_enable_external_code_space=false"
- fi
- fi
-
- # Only enabled for clang, but gcc has endian macros too
- myconf_gn+=" v8_use_libm_trig_functions=true"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- # Disable unknown warning message from clang.
- if tc-is-clang; then
- append-flags -Wno-unknown-warning-option
- if tc-is-cross-compiler; then
- export BUILD_CXXFLAGS+=" -Wno-unknown-warning-option"
- export BUILD_CFLAGS+=" -Wno-unknown-warning-option"
- fi
- fi
-
- # Explicitly disable ICU data file support for system-icu/headless builds.
- if use system-icu || use headless; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Don't need nocompile checks and GN crashes with our config
- myconf_gn+=" enable_nocompile_tests=false"
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_xkbcommon=false use_gtk=false use_qt=false"
- myconf_gn+=" use_glib=false use_gio=false"
- myconf_gn+=" use_pangocairo=false use_alsa=false"
- myconf_gn+=" use_libpci=false use_udev=false"
- 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
- local cbuild_libdir=$(get_libdir)
- if tc-is-cross-compiler; then
- # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
- local cbuild_libdir=$($(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libxslt)
- cbuild_libdir=${cbuild_libdir:2}
- cbuild_libdir=${cbuild_libdir/% }
- fi
- if use qt5; then
- if tc-is-cross-compiler; then
- myconf_gn+=" moc_qt5_path=\"${EPREFIX}/${cbuild_libdir}/qt5/bin\""
- else
- myconf_gn+=" moc_qt5_path=\"$(qt5_get_bindir)\""
- fi
- fi
- if use qt6; then
- myconf_gn+=" moc_qt6_path=\"${EPREFIX}/usr/${cbuild_libdir}/qt6/libexec\""
- fi
-
- myconf_gn+=" use_qt=true"
- myconf_gn+=" use_qt6=$(usex qt6 true false)"
- else
- myconf_gn+=" use_qt=false"
- fi
- myconf_gn+=" ozone_platform_x11=$(usex X true false)"
- myconf_gn+=" ozone_platform_wayland=$(usex wayland true false)"
- myconf_gn+=" ozone_platform=$(usex wayland \"wayland\" \"x11\")"
- 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
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=$(usex lto true false)"
- myconf_gn+=" thin_lto_enable_optimizations=$(usex lto true false)"
- if use official; then
- # 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
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Don't add symbols to build
- myconf_gn+=" symbol_level=0"
- fi
-
- if use pgo; then
- myconf_gn+=" chrome_pgo_phase=${1}"
- if [[ "$1" == "2" ]]; then
- myconf_gn+=" pgo_data_path=\"${2}\""
- fi
- else
- # Disable PGO
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- # user CXXFLAGS might overwrite -march=armv8-a+crc+crypto, bug #851639
- if use arm64 && tc-is-gcc; then
- sed -i '/^#if HAVE_ARM64_CRC32C/a #pragma GCC target ("+crc+crypto")' \
- third_party/crc32c/src/src/crc32c_arm64.cc || die
- fi
-
- # skipping typecheck is only supported on amd64, bug #876157
- if ! use amd64; then
- myconf_gn+=" devtools_skip_typecheck=false"
- fi
-
- einfo "Configuring Chromium ..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_configure() {
- chromium_configure $(usex pgo 1 0)
-}
-
-chromium_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- # Build mksnapshot and pax-mark it.
- if use pax-kernel; then
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
- fi
-
- # 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
-
- 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
-# session isn't left running. If we return 1, virtx will call die().
-chromium_profile() {
- einfo "Profiling for PGO"
-
- pushd "${WORKDIR}/chromium-profiler-"* >/dev/null || return 1
-
- # Remove old profdata in case profiling was interrupted.
- rm -rf "${1}" || return 1
-
- if ! "${EPYTHON}" ./chromium_profiler.py \
- --chrome-executable "${S}/out/Release/chrome" \
- --chromedriver-executable "${S}/out/Release/chromedriver.unstripped" \
- --add-arg no-sandbox --add-arg disable-dev-shm-usage \
- --profile-output "${1}"; then
- eerror "Profiling failed"
- return 1
- fi
-
- popd >/dev/null || return 1
-}
-
-src_compile() {
- if use pgo; then
- local profdata
-
- profdata="${WORKDIR}/chromium.profdata"
-
- if [[ ! -e "${WORKDIR}/.pgo-profiled" ]]; then
- chromium_compile
- virtx chromium_profile "$profdata"
-
- touch "${WORKDIR}/.pgo-profiled" || die
- fi
-
- if [[ ! -e "${WORKDIR}/.pgo-phase-2-configured" ]]; then
- # Remove phase 1 output
- rm -r out/Release || die
-
- chromium_configure 2 "$profdata"
-
- touch "${WORKDIR}/.pgo-phase-2-configured" || die
- fi
-
- if [[ ! -e "${WORKDIR}/.pgo-phase-2-compiled" ]]; then
- chromium_compile
- touch "${WORKDIR}/.pgo-phase-2-compiled" || die
- fi
- else
- chromium_compile
- fi
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- rm -f out/Release/locales/*.pak.info || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build vk_swiftshader_icd.json; bug #827861
- sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
- third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
- out/Release/vk_swiftshader_icd.json || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use X && use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
-
- if use bindist; then
- # We built libffmpeg as a component library, but we can't distribute it
- # with proprietary codec support. Remove it and make a symlink to the requested
- # system library.
- rm -f out/Release/libffmpeg.so \
- || die "Failed to remove bundled libffmpeg.so (with proprietary codecs)"
- # symlink the libffmpeg.so from either ffmpeg-chromium or ffmpeg[chromium].
- einfo "Creating symlink to libffmpeg.so from $(usex ffmpeg-chromium ffmpeg-chromium ffmpeg[chromium])..."
- dosym ../chromium/libffmpeg.so$(usex ffmpeg-chromium .${PV%%\.*} "") \
- /usr/$(get_libdir)/chromium-browser/libffmpeg.so
- fi
-
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- # Install bundled xdg-utils, avoids installing X11 libraries with USE="-X wayland"
- doins out/Release/xdg-{settings,mime}
-
- if ! use system-icu && ! use headless; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/MEIPreload
-
- # Install vk_swiftshader_icd.json; bug #827861
- doins out/Release/vk_swiftshader_icd.json
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if ! use headless; then
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-features=WebRTCPipeWireCapturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
- if use gtk4; then
- elog "Chromium prefers GTK3 over GTK4 at runtime. To override this"
- elog "behavior you need to pass --gtk-version=4, e.g. by adding it"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
- if use qt5 && use qt6; then
- elog "Chromium automatically selects Qt5 or Qt6 based on your desktop"
- elog "environment. To override you need to pass --qt-version=5 or"
- elog "--qt-version=6, e.g. by adding it to CHROMIUM_FLAGS in"
- elog "/etc/chromium/default."
- fi
- fi
-}
diff --git a/www-client/chromium/chromium-123.0.6312.122.ebuild b/www-client/chromium/chromium-126.0.6478.114.ebuild
similarity index 96%
rename from www-client/chromium/chromium-123.0.6312.122.ebuild
rename to www-client/chromium/chromium-126.0.6478.114.ebuild
index d9b1d00..6416959 100644
--- a/www-client/chromium/chromium-123.0.6312.122.ebuild
+++ b/www-client/chromium/chromium-126.0.6478.114.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{11..12} )
+PYTHON_COMPAT=( python3_{11..13} )
PYTHON_REQ_USE="xml(+)"
# PACKAGING NOTES
@@ -36,15 +36,15 @@ PYTHON_REQ_USE="xml(+)"
# These variables let us easily bound supported major dependency versions in one place.
GCC_MIN_VER=12
-GN_MIN_VER=0.2154
+GN_MIN_VER=0.2165
# Since Google use prerelease llvm we can let any adventurous users try to build with prerelease
# ebuilds; try to keep this up to date with the latest version in the tree.
LLVM_MAX_SLOT=19
LLVM_MIN_SLOT=17
RUST_MIN_VER=1.72.0
# chromium-tools/get-chromium-toolchain-strings.sh
-GOOGLE_CLANG_VER=llvmorg-19-init-2319-g7c4c2746-1
-GOOGLE_RUST_VER=340bb19fea20fd5f9357bbfac542fad84fc7ea2b-3
+GOOGLE_CLANG_VER=llvmorg-19-init-9433-g76ea5feb-1
+GOOGLE_RUST_VER=31e6e8c6c5b6ce62656c922c7384d3376018c980-2
# https://bugs.chromium.org/p/v8/issues/detail?id=14449 - V8 used in 120 can't build with GCC
# Resolved upstream, requires testing and some backporting I'm sure
@@ -64,11 +64,11 @@ CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu
sv sw ta te th tr uk ur vi zh-CN zh-TW"
inherit check-reqs chromium-2 desktop flag-o-matic llvm ninja-utils pax-utils
-inherit python-any-r1 qmake-utils readme.gentoo-r1 toolchain-funcs virtualx xdg-utils
+inherit python-any-r1 qmake-utils readme.gentoo-r1 systemd toolchain-funcs virtualx xdg-utils
DESCRIPTION="Open-source version of Google Chrome web browser"
HOMEPAGE="https://www.chromium.org/"
-PATCHSET_PPC64="123.0.6312.105-1raptor0~deb12u1"
+PATCHSET_PPC64="126.0.6478.56-1raptor0~deb12u2"
PATCH_V="${PV%%\.*}"
SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
system-toolchain? (
@@ -88,7 +88,7 @@ SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}
LICENSE="BSD"
SLOT="0/stable"
-KEYWORDS="~amd64 arm64 ~ppc64 ~riscv"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv"
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 libcxx lto +official pax-kernel pgo +proprietary-codecs pulseaudio"
IUSE+=" qt5 qt6 +screencast selinux +system-toolchain +vaapi +wayland +widevine"
@@ -250,8 +250,8 @@ BDEPEND="
>=virtual/rust-${RUST_MIN_VER}[profiler(-)]
)
>=dev-build/gn-${GN_MIN_VER}
+ dev-build/ninja
dev-lang/perl
- >=dev-build/ninja-1.7.2
>=dev-util/gperf-3.0.3
dev-vcs/git
>=net-libs/nodejs-7.6.0[inspector]
@@ -336,7 +336,7 @@ pre_build_checks() {
# Check build requirements: bugs #471810, #541816, #914220
# We're going to start doing maths here on the size of an unpacked source tarball,
# this should make updates easier as chromium continues to balloon in size.
- local BASE_DISK=18
+ local BASE_DISK=22
local EXTRA_DISK=1
local CHECKREQS_MEMORY="4G"
tc-is-cross-compiler && EXTRA_DISK=2
@@ -422,22 +422,20 @@ src_prepare() {
"chrome/browser/media/router/media_router_feature.cc" || die
local PATCHES=(
- "${FILESDIR}/chromium-cross-compile.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
"${FILESDIR}/chromium-109-system-zlib.patch"
"${FILESDIR}/chromium-111-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-117-system-zstd.patch"
- "${FILESDIR}/chromium-124-libwebp-shim-sharpyuv.patch"
- "${FILESDIR}/chromium-123-qt-gui-check.patch"
- "${FILESDIR}/00swiftshader-MCDissassembler.patch"
- "${FILESDIR}/00swiftshader-use-llvm16.patch"
- "${FILESDIR}/01fix-rust-target.patch"
- "${FILESDIR}/02Debian-fix-rust-linking.patch"
- "${FILESDIR}/03riscv-dav1d.patch"
- "${FILESDIR}/05riscv-sandbox.patch"
- "${FILESDIR}/06riscv-ffmpeg.patch"
- "${FILESDIR}/09riscv.patch"
- "${FILESDIR}/10cpuinfo.patch"
+ "${FILESDIR}/chromium-125-system-zstd.patch"
+ "${FILESDIR}/chromium-126-oauth2-client-switches.patch"
+ "${FILESDIR}/chromium-cross-compile.patch"
+ "${FILESDIR}/swiftshader-MCDissassembler.patch"
+ "${FILESDIR}/swiftshader-use-llvm16.patch"
+ "${FILESDIR}/fix-rust-target.patch"
+ "${FILESDIR}/Debian-fix-rust-linking.patch"
+ "${FILESDIR}/riscv-dav1d.patch"
+ "${FILESDIR}/riscv-sandbox.patch"
+ "${FILESDIR}/riscv-ffmpeg.patch"
+ "${FILESDIR}/riscv.patch"
+ "${FILESDIR}/cpuinfo.patch"
)
if use system-toolchain; then
@@ -467,7 +465,6 @@ src_prepare() {
done
PATCHES+=( "${WORKDIR}/ppc64le" )
PATCHES+=( "${WORKDIR}/debian/patches/fixes/rust-clanglib.patch" )
- PATCHES+=( "${WORKDIR}/debian/patches/fixes/blink-fonts-shape-result.patch" )
fi
default
@@ -481,7 +478,6 @@ src_prepare() {
local keeplibs=(
base/third_party/cityhash
base/third_party/double_conversion
- base/third_party/dynamic_annotations
base/third_party/icu
base/third_party/nspr
base/third_party/superfasthash
@@ -562,7 +558,6 @@ src_prepare() {
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/vscode.web-custom-data
third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
third_party/devtools-frontend/src/third_party
third_party/distributed_point_functions
third_party/dom_distiller_js
@@ -594,6 +589,7 @@ src_prepare() {
third_party/jsoncpp
third_party/jstemplate
third_party/khronos
+ third_party/lens_server_proto
third_party/leveldatabase
third_party/libaddressinput
third_party/libaom
@@ -644,7 +640,6 @@ src_prepare() {
third_party/ots
third_party/pdfium
third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
third_party/pdfium/third_party/bigint
third_party/pdfium/third_party/freetype
third_party/pdfium/third_party/lcms
@@ -669,6 +664,8 @@ src_prepare() {
third_party/s2cellid
third_party/securemessage
third_party/selenium-atoms
+ third_party/sentencepiece
+ third_party/sentencepiece/src/third_party/darts_clone
third_party/shell-encryption
third_party/simplejson
third_party/skia
@@ -690,6 +687,7 @@ 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/ruy
third_party/six
third_party/ukey2
@@ -827,6 +825,12 @@ chromium_configure() {
if tc-is-clang; then
myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
+ # Workaround for build failure with clang-18 and -march=native without
+ # avx512. Does not affect e.g. -march=skylake, only native (bug #931623).
+ use amd64 && is-flagq -march=native &&
+ [[ $(clang-major-version) -eq 18 ]] && [[ $(clang-minor-version) -lt 6 ]] &&
+ tc-cpp-is-true "!defined(__AVX512F__)" ${CXXFLAGS} &&
+ append-flags -mevex512
else
myconf_gn+=" is_clang=false"
fi
@@ -1051,7 +1055,7 @@ chromium_configure() {
elif [[ $myarch = riscv ]] ; then
myconf_gn+=" target_cpu=\"riscv64\""
ffmpeg_target_arch=riscv64
- else
+ else
die "Failed to determine target arch, got '$myarch'."
fi
@@ -1452,4 +1456,12 @@ pkg_postinst() {
elog "/etc/chromium/default."
fi
fi
+
+ if systemd_is_booted && ! [[ -f "/etc/machine-id" ]]; then
+ ewarn "The lack of an '/etc/machine-id' file on this system booted with systemd"
+ ewarn "indicates that the Gentoo handbook was not followed to completion."
+ ewarn ""
+ ewarn "Chromium is known to behave unpredictably with this system configuration;"
+ ewarn "please complete the configuration of this system before logging any bugs."
+ fi
}
diff --git a/www-client/chromium/files/02Debian-fix-rust-linking.patch b/www-client/chromium/files/Debian-fix-rust-linking.patch
similarity index 100%
rename from www-client/chromium/files/02Debian-fix-rust-linking.patch
rename to www-client/chromium/files/Debian-fix-rust-linking.patch
diff --git a/www-client/chromium/files/chromium-125-ninja-1-12.patch b/www-client/chromium/files/chromium-125-ninja-1-12.patch
new file mode 100644
index 0000000..55d0887
--- /dev/null
+++ b/www-client/chromium/files/chromium-125-ninja-1-12.patch
@@ -0,0 +1,17 @@
+https://chromium-review.googlesource.com/c/chromium/src/+/5487538
+commit a976cb05b4024b7a6452d1541378d718cdfe33e6
+Author: Takuto Ikuta <tikuta@chromium.org>
+Date: Thu Apr 25 07:25:32 2024
+
+ [devtools] fix a missing build dependency to a generated file
+
+--- a/chrome/browser/devtools/BUILD.gn
++++ b/chrome/browser/devtools/BUILD.gn
+@@ -117,6 +117,7 @@
+ "//chrome/browser/autofill:autofill",
+ "//components/autofill/content/browser:browser",
+ "//components/autofill/core/browser:browser",
++ "//components/enterprise/buildflags",
+ "//components/paint_preview/buildflags:buildflags",
+ "//components/variations/service:service",
+ "//components/webapps/common:common",
diff --git a/www-client/chromium/files/chromium-125-oauth2-client-switches.patch b/www-client/chromium/files/chromium-125-oauth2-client-switches.patch
new file mode 100644
index 0000000..6c7f56b
--- /dev/null
+++ b/www-client/chromium/files/chromium-125-oauth2-client-switches.patch
@@ -0,0 +1,45 @@
+From 6a84205d0399a94e8b526176a7dcafd6c2051a95 Mon Sep 17 00:00:00 2001
+From: Matt Jolly <Matt.Jolly@footclan.ninja>
+Date: Thu, 18 Apr 2024 21:15:20 +1000
+Subject: [PATCH] www-client/chromium: work around dead oauth2 credentials -
+ 125 update
+
+125 moved the content to a new file.
+
+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
+@@ -182,11 +182,11 @@ class APIKeyCache {
+
+ std::string default_client_id = CalculateKeyValue(
+ GOOGLE_DEFAULT_CLIENT_ID,
+- STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), nullptr,
++ STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), ::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), nullptr,
++ STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), ::switches::kOAuth2ClientSecret,
+ std::string(), environment.get(), command_line, gaia_config);
+
+ // We currently only allow overriding the baked-in values for the
+--
+2.44.0
+
diff --git a/www-client/chromium/files/chromium-125-system-zstd.patch b/www-client/chromium/files/chromium-125-system-zstd.patch
new file mode 100644
index 0000000..6211662
--- /dev/null
+++ b/www-client/chromium/files/chromium-125-system-zstd.patch
@@ -0,0 +1,53 @@
+From 4ac5e29c999c7bbcb8409a2008b0061e1ae365dd Mon Sep 17 00:00:00 2001
+From: Matt Jolly <Matt.Jolly@footclan.ninja>
+Date: Thu, 18 Apr 2024 21:54:54 +1000
+Subject: [PATCH] Zstd now needs compress, too
+
+Existing patch updated for 125, added source_set("compress")
+
+--- a/build/linux/unbundle/replace_gn_files.py
++++ b/build/linux/unbundle/replace_gn_files.py
+@@ -80,6 +80,7 @@ REPLACEMENTS = {
+ 'vulkan_memory_allocator' : 'third_party/vulkan_memory_allocator/BUILD.gn',
+ 'woff2': 'third_party/woff2/BUILD.gn',
+ 'zlib': 'third_party/zlib/BUILD.gn',
++ 'zstd': 'third_party/zstd/BUILD.gn',
+ }
+
+
+--- /dev/null
++++ b/build/linux/unbundle/zstd.gn
+@@ -0,0 +1,30 @@
++import("//build/config/linux/pkg_config.gni")
++import("//build/shim_headers.gni")
++
++pkg_config("system_zstd") {
++ packages = [ "libzstd" ]
++}
++
++shim_headers("zstd_shim") {
++ root_path = "src/lib"
++ headers = [
++ "zdict.h",
++ "zstd.h",
++ "zstd_errors.h",
++ ]
++}
++
++source_set("zstd") {
++ deps = [ ":zstd_shim" ]
++ public_configs = [ ":system_zstd" ]
++}
++
++source_set("compress") {
++ deps = [ ":zstd_shim" ]
++ public_configs = [ ":system_zstd" ]
++}
++
++source_set("decompress") {
++ deps = [ ":zstd_shim" ]
++ public_configs = [ ":system_zstd" ]
++}
+--
+2.44.0
+
diff --git a/www-client/chromium/files/chromium-126-oauth2-client-switches.patch b/www-client/chromium/files/chromium-126-oauth2-client-switches.patch
new file mode 100644
index 0000000..b7ddf79
--- /dev/null
+++ b/www-client/chromium/files/chromium-126-oauth2-client-switches.patch
@@ -0,0 +1,45 @@
+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/10cpuinfo.patch b/www-client/chromium/files/cpuinfo.patch
similarity index 100%
rename from www-client/chromium/files/10cpuinfo.patch
rename to www-client/chromium/files/cpuinfo.patch
diff --git a/www-client/chromium/files/01fix-rust-target.patch b/www-client/chromium/files/fix-rust-target.patch
similarity index 100%
rename from www-client/chromium/files/01fix-rust-target.patch
rename to www-client/chromium/files/fix-rust-target.patch
diff --git a/www-client/chromium/files/03riscv-dav1d.patch b/www-client/chromium/files/riscv-dav1d.patch
similarity index 100%
rename from www-client/chromium/files/03riscv-dav1d.patch
rename to www-client/chromium/files/riscv-dav1d.patch
diff --git a/www-client/chromium/files/06riscv-ffmpeg.patch b/www-client/chromium/files/riscv-ffmpeg.patch
similarity index 94%
rename from www-client/chromium/files/06riscv-ffmpeg.patch
rename to www-client/chromium/files/riscv-ffmpeg.patch
index 2914148..9bb4826 100644
--- a/www-client/chromium/files/06riscv-ffmpeg.patch
+++ b/www-client/chromium/files/riscv-ffmpeg.patch
@@ -1,24 +1,20 @@
-Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h
-@@ -0,0 +1,768 @@
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h
+@@ -0,0 +1,775 @@
+/* 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-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/hacker/chromium/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=riscv64 --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-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/hacker/chromium/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --arch=riscv64 --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 "gcc 13.2.1 (GCC) 20230801"
++#define CC_IDENT "Debian clang version 16.0.6 (27)"
+#define OS_NAME linux
-+#define av_restrict restrict
+#define EXTERN_PREFIX ""
+#define EXTERN_ASM
+#define BUILDSUF ""
+#define SLIBSUF ".so"
-+#define HAVE_MMX2 HAVE_MMXEXT
+#define SWS_MAX_FILTER_SIZE 256
+#define ARCH_AARCH64 0
+#define ARCH_ALPHA 0
@@ -63,8 +59,8 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h
+#define HAVE_POWER8 0
+#define HAVE_PPC4XX 0
+#define HAVE_VSX 0
-+#define HAVE_RV 1
-+#define HAVE_RVV 1
++#define HAVE_RV 0
++#define HAVE_RVV 0
+#define HAVE_AESNI 0
+#define HAVE_AMD3DNOW 0
+#define HAVE_AMD3DNOWEXT 0
@@ -250,6 +246,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h
+#define HAVE_OPENCV2_CORE_CORE_C_H 0
+#define HAVE_OPENGL_GL3_H 0
+#define HAVE_POLL_H 1
++#define HAVE_PTHREAD_NP_H 0
+#define HAVE_SYS_PARAM_H 1
+#define HAVE_SYS_RESOURCE_H 1
+#define HAVE_SYS_SELECT_H 1
@@ -340,6 +337,8 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h
+#define HAVE_POSIX_MEMALIGN 1
+#define HAVE_PRCTL 0 /* #define HAVE_PRCTL 1 -- forced to 0 for Fuchsia */
+#define HAVE_PTHREAD_CANCEL 1
++#define HAVE_PTHREAD_SET_NAME_NP 0
++#define HAVE_PTHREAD_SETNAME_NP 0
+#define HAVE_SCHED_GETAFFINITY 1
+#define HAVE_SECITEMIMPORT 0
+#define HAVE_SETCONSOLETEXTATTRIBUTE 0
@@ -383,7 +382,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h
+#define HAVE_INLINE_ASM_NONLOCAL_LABELS 1
+#define HAVE_PRAGMA_DEPRECATED 1
+#define HAVE_RSYNC_CONTIMEOUT 0
-+#define HAVE_SYMVER_ASM_LABEL 0
++#define HAVE_SYMVER_ASM_LABEL 1
+#define HAVE_SYMVER_GNU_ASM 1
+#define HAVE_VFP_ARGS 0
+#define HAVE_XFORM_ASM 0
@@ -423,18 +422,19 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h
+#define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
+#define HAVE_GZIP 1
+#define HAVE_LIBDRM_GETFB2 0
-+#define HAVE_MAKEINFO 1
-+#define HAVE_MAKEINFO_HTML 1
++#define HAVE_MAKEINFO 0
++#define HAVE_MAKEINFO_HTML 0
+#define HAVE_OPENCL_D3D11 0
+#define HAVE_OPENCL_DRM_ARM 0
+#define HAVE_OPENCL_DRM_BEIGNET 0
+#define HAVE_OPENCL_DXVA2 0
+#define HAVE_OPENCL_VAAPI_BEIGNET 0
+#define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
++#define HAVE_OPENCL_VIDEOTOOLBOX 0
+#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
@@ -470,6 +470,8 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h
+#define CONFIG_FREI0R 0
+#define CONFIG_LIBCDIO 0
+#define CONFIG_LIBDAVS2 0
++#define CONFIG_LIBDVDNAV 0
++#define CONFIG_LIBDVDREAD 0
+#define CONFIG_LIBRUBBERBAND 0
+#define CONFIG_LIBVIDSTAB 0
+#define CONFIG_LIBX264 0
@@ -549,6 +551,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h
+#define CONFIG_LIBTENSORFLOW 0
+#define CONFIG_LIBTESSERACT 0
+#define CONFIG_LIBTHEORA 0
++#define CONFIG_LIBTORCH 0
+#define CONFIG_LIBTWOLAME 0
+#define CONFIG_LIBUAVS3D 0
+#define CONFIG_LIBV4L2 0
@@ -598,7 +601,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h
+#define CONFIG_OPENCL 0
+#define CONFIG_AMF 0
+#define CONFIG_AUDIOTOOLBOX 0
-+#define CONFIG_CRYSTALHD 0
+#define CONFIG_CUDA 0
+#define CONFIG_CUDA_LLVM 0
+#define CONFIG_CUVID 0
@@ -711,10 +713,12 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h
+#define CONFIG_H264_SEI 1
+#define CONFIG_HEVCPARSE 0
+#define CONFIG_HEVC_SEI 0
-+#define CONFIG_HPELDSP 1
++#define CONFIG_HPELDSP 0
+#define CONFIG_HUFFMAN 0
+#define CONFIG_HUFFYUVDSP 0
+#define CONFIG_HUFFYUVENCDSP 0
++#define CONFIG_IAMFDEC 0
++#define CONFIG_IAMFENC 0
+#define CONFIG_IDCTDSP 0
+#define CONFIG_IIRFILTER 0
+#define CONFIG_INFLATE_WRAPPER 0
@@ -724,6 +728,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h
+#define CONFIG_JPEGTABLES 0
+#define CONFIG_LGPLV3 0
+#define CONFIG_LIBX262 0
++#define CONFIG_LIBX264_HDR10 0
+#define CONFIG_LLAUDDSP 0
+#define CONFIG_LLVIDDSP 0
+#define CONFIG_LLVIDENCDSP 0
@@ -765,17 +770,15 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h
+#define CONFIG_VAAPI_ENCODE 0
+#define CONFIG_VC1DSP 0
+#define CONFIG_VIDEODSP 1
-+#define CONFIG_VP3DSP 1
++#define CONFIG_VP3DSP 0
+#define CONFIG_VP56DSP 0
-+#define CONFIG_VP8DSP 1
++#define CONFIG_VP8DSP 0
+#define CONFIG_WMA_FREQS 0
+#define CONFIG_WMV2DSP 0
+#endif /* FFMPEG_CONFIG_H */
-Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_components.h
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_components.h
-@@ -0,0 +1,2217 @@
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_components.h
+@@ -0,0 +1,2210 @@
+/* Automatically generated by configure - do not modify! */
+#ifndef FFMPEG_CONFIG_COMPONENTS_H
+#define FFMPEG_CONFIG_COMPONENTS_H
@@ -801,7 +804,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_MEDIA100_TO_MJPEGB_BSF 0
+#define CONFIG_MJPEG2JPEG_BSF 0
+#define CONFIG_MJPEGA_DUMP_HEADER_BSF 0
-+#define CONFIG_MP3_HEADER_DECOMPRESS_BSF 0
+#define CONFIG_MPEG2_METADATA_BSF 0
+#define CONFIG_MPEG4_UNPACK_BFRAMES_BSF 0
+#define CONFIG_MOV2TEXTSUB_BSF 0
@@ -813,6 +815,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_PRORES_METADATA_BSF 0
+#define CONFIG_REMOVE_EXTRADATA_BSF 0
+#define CONFIG_SETTS_BSF 0
++#define CONFIG_SHOWINFO_BSF 0
+#define CONFIG_TEXT2MOVSUB_BSF 0
+#define CONFIG_TRACE_HEADERS_BSF 0
+#define CONFIG_TRUEHD_CORE_BSF 0
@@ -841,7 +844,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_AVRN_DECODER 0
+#define CONFIG_AVS_DECODER 0
+#define CONFIG_AVUI_DECODER 0
-+#define CONFIG_AYUV_DECODER 0
+#define CONFIG_BETHSOFTVID_DECODER 0
+#define CONFIG_BFI_DECODER 0
+#define CONFIG_BINK_DECODER 0
@@ -908,7 +910,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_H263P_DECODER 0
+#define CONFIG_H263_V4L2M2M_DECODER 0
+#define CONFIG_H264_DECODER 1
-+#define CONFIG_H264_CRYSTALHD_DECODER 0
+#define CONFIG_H264_V4L2M2M_DECODER 0
+#define CONFIG_H264_MEDIACODEC_DECODER 0
+#define CONFIG_H264_MMAL_DECODER 0
@@ -956,13 +957,11 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_MPEG1VIDEO_DECODER 0
+#define CONFIG_MPEG2VIDEO_DECODER 0
+#define CONFIG_MPEG4_DECODER 0
-+#define CONFIG_MPEG4_CRYSTALHD_DECODER 0
+#define CONFIG_MPEG4_V4L2M2M_DECODER 0
+#define CONFIG_MPEG4_MMAL_DECODER 0
+#define CONFIG_MPEGVIDEO_DECODER 0
+#define CONFIG_MPEG1_V4L2M2M_DECODER 0
+#define CONFIG_MPEG2_MMAL_DECODER 0
-+#define CONFIG_MPEG2_CRYSTALHD_DECODER 0
+#define CONFIG_MPEG2_V4L2M2M_DECODER 0
+#define CONFIG_MPEG2_QSV_DECODER 0
+#define CONFIG_MPEG2_MEDIACODEC_DECODER 0
@@ -971,7 +970,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_MSMPEG4V1_DECODER 0
+#define CONFIG_MSMPEG4V2_DECODER 0
+#define CONFIG_MSMPEG4V3_DECODER 0
-+#define CONFIG_MSMPEG4_CRYSTALHD_DECODER 0
+#define CONFIG_MSP2_DECODER 0
+#define CONFIG_MSRLE_DECODER 0
+#define CONFIG_MSS1_DECODER 0
@@ -1048,7 +1046,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_TARGA_DECODER 0
+#define CONFIG_TARGA_Y216_DECODER 0
+#define CONFIG_TDSC_DECODER 0
-+#define CONFIG_THEORA_DECODER 1
++#define CONFIG_THEORA_DECODER 0
+#define CONFIG_THP_DECODER 0
+#define CONFIG_TIERTEXSEQVIDEO_DECODER 0
+#define CONFIG_TIFF_DECODER 0
@@ -1070,7 +1068,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_VBN_DECODER 0
+#define CONFIG_VBLE_DECODER 0
+#define CONFIG_VC1_DECODER 0
-+#define CONFIG_VC1_CRYSTALHD_DECODER 0
+#define CONFIG_VC1IMAGE_DECODER 0
+#define CONFIG_VC1_MMAL_DECODER 0
+#define CONFIG_VC1_QSV_DECODER 0
@@ -1079,14 +1076,14 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_VMDVIDEO_DECODER 0
+#define CONFIG_VMIX_DECODER 0
+#define CONFIG_VMNC_DECODER 0
-+#define CONFIG_VP3_DECODER 1
++#define CONFIG_VP3_DECODER 0
+#define CONFIG_VP4_DECODER 0
+#define CONFIG_VP5_DECODER 0
+#define CONFIG_VP6_DECODER 0
+#define CONFIG_VP6A_DECODER 0
+#define CONFIG_VP6F_DECODER 0
+#define CONFIG_VP7_DECODER 0
-+#define CONFIG_VP8_DECODER 1
++#define CONFIG_VP8_DECODER 0
+#define CONFIG_VP8_RKMPP_DECODER 0
+#define CONFIG_VP8_V4L2M2M_DECODER 0
+#define CONFIG_VP9_DECODER 0
@@ -1102,7 +1099,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_WMV1_DECODER 0
+#define CONFIG_WMV2_DECODER 0
+#define CONFIG_WMV3_DECODER 0
-+#define CONFIG_WMV3_CRYSTALHD_DECODER 0
+#define CONFIG_WMV3IMAGE_DECODER 0
+#define CONFIG_WNV1_DECODER 0
+#define CONFIG_XAN_WC3_DECODER 0
@@ -1416,7 +1412,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_ASV2_ENCODER 0
+#define CONFIG_AVRP_ENCODER 0
+#define CONFIG_AVUI_ENCODER 0
-+#define CONFIG_AYUV_ENCODER 0
+#define CONFIG_BITPACKED_ENCODER 0
+#define CONFIG_BMP_ENCODER 0
+#define CONFIG_CFHD_ENCODER 0
@@ -1426,6 +1421,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_DNXHD_ENCODER 0
+#define CONFIG_DPX_ENCODER 0
+#define CONFIG_DVVIDEO_ENCODER 0
++#define CONFIG_DXV_ENCODER 0
+#define CONFIG_EXR_ENCODER 0
+#define CONFIG_FFV1_ENCODER 0
+#define CONFIG_FFVHUFF_ENCODER 0
@@ -1786,8 +1782,8 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_TAK_PARSER 0
+#define CONFIG_VC1_PARSER 0
+#define CONFIG_VORBIS_PARSER 1
-+#define CONFIG_VP3_PARSER 1
-+#define CONFIG_VP8_PARSER 1
++#define CONFIG_VP3_PARSER 0
++#define CONFIG_VP8_PARSER 0
+#define CONFIG_VP9_PARSER 1
+#define CONFIG_VVC_PARSER 0
+#define CONFIG_WEBP_PARSER 0
@@ -2399,8 +2395,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_AVSYNCTEST_FILTER 0
+#define CONFIG_AMOVIE_FILTER 0
+#define CONFIG_MOVIE_FILTER 0
-+#define CONFIG_AFIFO_FILTER 0
-+#define CONFIG_FIFO_FILTER 0
+#define CONFIG_AA_DEMUXER 0
+#define CONFIG_AAC_DEMUXER 1
+#define CONFIG_AAX_DEMUXER 0
@@ -2484,6 +2478,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_DV_DEMUXER 0
+#define CONFIG_DVBSUB_DEMUXER 0
+#define CONFIG_DVBTXT_DEMUXER 0
++#define CONFIG_DVDVIDEO_DEMUXER 0
+#define CONFIG_DXA_DEMUXER 0
+#define CONFIG_EA_DEMUXER 0
+#define CONFIG_EA_CDATA_DEMUXER 0
@@ -2765,6 +2760,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_AC4_MUXER 0
+#define CONFIG_ADTS_MUXER 0
+#define CONFIG_ADX_MUXER 0
++#define CONFIG_AEA_MUXER 0
+#define CONFIG_AIFF_MUXER 0
+#define CONFIG_ALP_MUXER 0
+#define CONFIG_AMR_MUXER 0
@@ -2804,7 +2800,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_F4V_MUXER 0
+#define CONFIG_FFMETADATA_MUXER 0
+#define CONFIG_FIFO_MUXER 0
-+#define CONFIG_FIFO_TEST_MUXER 0
+#define CONFIG_FILMSTRIP_MUXER 0
+#define CONFIG_FITS_MUXER 0
+#define CONFIG_FLAC_MUXER 0
@@ -2894,6 +2889,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_PCM_U8_MUXER 0
+#define CONFIG_PSP_MUXER 0
+#define CONFIG_RAWVIDEO_MUXER 0
++#define CONFIG_RCWT_MUXER 0
+#define CONFIG_RM_MUXER 0
+#define CONFIG_ROQ_MUXER 0
+#define CONFIG_RSO_MUXER 0
@@ -2993,23 +2989,16 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_compon
+#define CONFIG_IPFS_GATEWAY_PROTOCOL 0
+#define CONFIG_IPNS_GATEWAY_PROTOCOL 0
+#endif /* FFMPEG_CONFIG_COMPONENTS_H */
-Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/bsf_list.c
-===================================================================
--- /dev/null
-+++ src/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
@@ -0,0 +1,2 @@
+static const FFBitStreamFilter * const bitstream_filters[] = {
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/codec_list.c
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/codec_list.c
-@@ -0,0 +1,20 @@
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/codec_list.c
+@@ -0,0 +1,17 @@
+static const FFCodec * const codec_list[] = {
+ &ff_h264_decoder,
-+ &ff_theora_decoder,
-+ &ff_vp3_decoder,
-+ &ff_vp8_decoder,
+ &ff_aac_decoder,
+ &ff_flac_decoder,
+ &ff_mp3_decoder,
@@ -3025,11 +3014,9 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/co
+ &ff_pcm_u8_decoder,
+ &ff_libopus_decoder,
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/parser_list.c
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/parser_list.c
-@@ -0,0 +1,11 @@
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/parser_list.c
+@@ -0,0 +1,9 @@
+static const AVCodecParser * const parser_list[] = {
+ &ff_aac_parser,
+ &ff_flac_parser,
@@ -3037,16 +3024,12 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/pa
+ &ff_mpegaudio_parser,
+ &ff_opus_parser,
+ &ff_vorbis_parser,
-+ &ff_vp3_parser,
-+ &ff_vp8_parser,
+ &ff_vp9_parser,
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/demuxer_list.c
-===================================================================
--- /dev/null
-+++ src/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
@@ -0,0 +1,9 @@
-+static const AVInputFormat * const demuxer_list[] = {
++static const FFInputFormat * const demuxer_list[] = {
+ &ff_aac_demuxer,
+ &ff_flac_demuxer,
+ &ff_matroska_demuxer,
@@ -3055,24 +3038,18 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/d
+ &ff_ogg_demuxer,
+ &ff_wav_demuxer,
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/muxer_list.c
-===================================================================
--- /dev/null
-+++ src/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
@@ -0,0 +1,2 @@
+static const FFOutputFormat * const muxer_list[] = {
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/protocol_list.c
-===================================================================
--- /dev/null
-+++ src/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
@@ -0,0 +1,2 @@
+static const URLProtocol * const url_protocols[] = {
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/avconfig.h
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/avconfig.h
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/avconfig.h
@@ -0,0 +1,6 @@
+/* Generated by ffmpeg configure */
+#ifndef AVUTIL_AVCONFIG_H
@@ -3080,37 +3057,31 @@ Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/avc
+#define AV_HAVE_BIGENDIAN 0
+#define AV_HAVE_FAST_UNALIGNED 0
+#endif /* AVUTIL_AVCONFIG_H */
-Index: src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/ffversion.h
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/ffversion.h
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/ffversion.h
@@ -0,0 +1,5 @@
+/* Automatically generated by version.sh, do not manually edit! */
+#ifndef AVUTIL_FFVERSION_H
+#define AVUTIL_FFVERSION_H
+#define FFMPEG_VERSION "5.1.git"
+#endif /* AVUTIL_FFVERSION_H */
-Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config.h
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config.h
-@@ -0,0 +1,768 @@
++++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config.h
+@@ -0,0 +1,775 @@
+/* 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-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --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/hacker/chromium/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=riscv64 --enable-decoder='aac,h264' --enable
-demuxer=aac --enable-parser='aac,h264' --enable-decoder=mpeg4 --enable-parser='h263,mpeg4video' --enable-demuxer=avi" -- 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-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --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/hacker/chromium/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --arch=riscv64 --enable-pic --cc=clang --cxx=clang++ --ld=clang --extra-ldflags='-fuse-ld=lld' --enable-decoder='aac,h26
4' --enable-demuxer=aac --enable-parser='aac,h264' --enable-decoder=mpeg4 --enable-parser='h263,mpeg4video' --enable-demuxer=avi" -- 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 "gcc 13.2.1 (GCC) 20230801"
++#define CC_IDENT "Debian clang version 16.0.6 (27)"
+#define OS_NAME linux
-+#define av_restrict restrict
+#define EXTERN_PREFIX ""
+#define EXTERN_ASM
+#define BUILDSUF ""
+#define SLIBSUF ".so"
-+#define HAVE_MMX2 HAVE_MMXEXT
+#define SWS_MAX_FILTER_SIZE 256
+#define ARCH_AARCH64 0
+#define ARCH_ALPHA 0
@@ -3155,8 +3126,8 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config.h
+#define HAVE_POWER8 0
+#define HAVE_PPC4XX 0
+#define HAVE_VSX 0
-+#define HAVE_RV 1
-+#define HAVE_RVV 1
++#define HAVE_RV 0
++#define HAVE_RVV 0
+#define HAVE_AESNI 0
+#define HAVE_AMD3DNOW 0
+#define HAVE_AMD3DNOWEXT 0
@@ -3342,6 +3313,7 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config.h
+#define HAVE_OPENCV2_CORE_CORE_C_H 0
+#define HAVE_OPENGL_GL3_H 0
+#define HAVE_POLL_H 1
++#define HAVE_PTHREAD_NP_H 0
+#define HAVE_SYS_PARAM_H 1
+#define HAVE_SYS_RESOURCE_H 1
+#define HAVE_SYS_SELECT_H 1
@@ -3432,6 +3404,8 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config.h
+#define HAVE_POSIX_MEMALIGN 1
+#define HAVE_PRCTL 0 /* #define HAVE_PRCTL 1 -- forced to 0 for Fuchsia */
+#define HAVE_PTHREAD_CANCEL 1
++#define HAVE_PTHREAD_SET_NAME_NP 0
++#define HAVE_PTHREAD_SETNAME_NP 0
+#define HAVE_SCHED_GETAFFINITY 1
+#define HAVE_SECITEMIMPORT 0
+#define HAVE_SETCONSOLETEXTATTRIBUTE 0
@@ -3475,7 +3449,7 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config.h
+#define HAVE_INLINE_ASM_NONLOCAL_LABELS 1
+#define HAVE_PRAGMA_DEPRECATED 1
+#define HAVE_RSYNC_CONTIMEOUT 0
-+#define HAVE_SYMVER_ASM_LABEL 0
++#define HAVE_SYMVER_ASM_LABEL 1
+#define HAVE_SYMVER_GNU_ASM 1
+#define HAVE_VFP_ARGS 0
+#define HAVE_XFORM_ASM 0
@@ -3515,18 +3489,19 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config.h
+#define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
+#define HAVE_GZIP 1
+#define HAVE_LIBDRM_GETFB2 0
-+#define HAVE_MAKEINFO 1
-+#define HAVE_MAKEINFO_HTML 1
++#define HAVE_MAKEINFO 0
++#define HAVE_MAKEINFO_HTML 0
+#define HAVE_OPENCL_D3D11 0
+#define HAVE_OPENCL_DRM_ARM 0
+#define HAVE_OPENCL_DRM_BEIGNET 0
+#define HAVE_OPENCL_DXVA2 0
+#define HAVE_OPENCL_VAAPI_BEIGNET 0
+#define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
++#define HAVE_OPENCL_VIDEOTOOLBOX 0
+#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
@@ -3562,6 +3537,8 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config.h
+#define CONFIG_FREI0R 0
+#define CONFIG_LIBCDIO 0
+#define CONFIG_LIBDAVS2 0
++#define CONFIG_LIBDVDNAV 0
++#define CONFIG_LIBDVDREAD 0
+#define CONFIG_LIBRUBBERBAND 0
+#define CONFIG_LIBVIDSTAB 0
+#define CONFIG_LIBX264 0
@@ -3641,6 +3618,7 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config.h
+#define CONFIG_LIBTENSORFLOW 0
+#define CONFIG_LIBTESSERACT 0
+#define CONFIG_LIBTHEORA 0
++#define CONFIG_LIBTORCH 0
+#define CONFIG_LIBTWOLAME 0
+#define CONFIG_LIBUAVS3D 0
+#define CONFIG_LIBV4L2 0
@@ -3690,7 +3668,6 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config.h
+#define CONFIG_OPENCL 0
+#define CONFIG_AMF 0
+#define CONFIG_AUDIOTOOLBOX 0
-+#define CONFIG_CRYSTALHD 0
+#define CONFIG_CUDA 0
+#define CONFIG_CUDA_LLVM 0
+#define CONFIG_CUVID 0
@@ -3807,6 +3784,8 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config.h
+#define CONFIG_HUFFMAN 0
+#define CONFIG_HUFFYUVDSP 0
+#define CONFIG_HUFFYUVENCDSP 0
++#define CONFIG_IAMFDEC 0
++#define CONFIG_IAMFENC 0
+#define CONFIG_IDCTDSP 1
+#define CONFIG_IIRFILTER 0
+#define CONFIG_INFLATE_WRAPPER 0
@@ -3816,6 +3795,7 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config.h
+#define CONFIG_JPEGTABLES 0
+#define CONFIG_LGPLV3 0
+#define CONFIG_LIBX262 0
++#define CONFIG_LIBX264_HDR10 0
+#define CONFIG_LLAUDDSP 0
+#define CONFIG_LLVIDDSP 0
+#define CONFIG_LLVIDENCDSP 0
@@ -3857,17 +3837,15 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config.h
+#define CONFIG_VAAPI_ENCODE 0
+#define CONFIG_VC1DSP 0
+#define CONFIG_VIDEODSP 1
-+#define CONFIG_VP3DSP 1
++#define CONFIG_VP3DSP 0
+#define CONFIG_VP56DSP 0
-+#define CONFIG_VP8DSP 1
++#define CONFIG_VP8DSP 0
+#define CONFIG_WMA_FREQS 0
+#define CONFIG_WMV2DSP 0
+#endif /* FFMPEG_CONFIG_H */
-Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_components.h
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_components.h
-@@ -0,0 +1,2217 @@
++++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_components.h
+@@ -0,0 +1,2210 @@
+/* Automatically generated by configure - do not modify! */
+#ifndef FFMPEG_CONFIG_COMPONENTS_H
+#define FFMPEG_CONFIG_COMPONENTS_H
@@ -3893,7 +3871,6 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_MEDIA100_TO_MJPEGB_BSF 0
+#define CONFIG_MJPEG2JPEG_BSF 0
+#define CONFIG_MJPEGA_DUMP_HEADER_BSF 0
-+#define CONFIG_MP3_HEADER_DECOMPRESS_BSF 0
+#define CONFIG_MPEG2_METADATA_BSF 0
+#define CONFIG_MPEG4_UNPACK_BFRAMES_BSF 0
+#define CONFIG_MOV2TEXTSUB_BSF 0
@@ -3905,6 +3882,7 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_PRORES_METADATA_BSF 0
+#define CONFIG_REMOVE_EXTRADATA_BSF 0
+#define CONFIG_SETTS_BSF 0
++#define CONFIG_SHOWINFO_BSF 0
+#define CONFIG_TEXT2MOVSUB_BSF 0
+#define CONFIG_TRACE_HEADERS_BSF 0
+#define CONFIG_TRUEHD_CORE_BSF 0
@@ -3933,7 +3911,6 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_AVRN_DECODER 0
+#define CONFIG_AVS_DECODER 0
+#define CONFIG_AVUI_DECODER 0
-+#define CONFIG_AYUV_DECODER 0
+#define CONFIG_BETHSOFTVID_DECODER 0
+#define CONFIG_BFI_DECODER 0
+#define CONFIG_BINK_DECODER 0
@@ -4000,7 +3977,6 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_H263P_DECODER 0
+#define CONFIG_H263_V4L2M2M_DECODER 0
+#define CONFIG_H264_DECODER 1
-+#define CONFIG_H264_CRYSTALHD_DECODER 0
+#define CONFIG_H264_V4L2M2M_DECODER 0
+#define CONFIG_H264_MEDIACODEC_DECODER 0
+#define CONFIG_H264_MMAL_DECODER 0
@@ -4048,13 +4024,11 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_MPEG1VIDEO_DECODER 0
+#define CONFIG_MPEG2VIDEO_DECODER 0
+#define CONFIG_MPEG4_DECODER 1
-+#define CONFIG_MPEG4_CRYSTALHD_DECODER 0
+#define CONFIG_MPEG4_V4L2M2M_DECODER 0
+#define CONFIG_MPEG4_MMAL_DECODER 0
+#define CONFIG_MPEGVIDEO_DECODER 0
+#define CONFIG_MPEG1_V4L2M2M_DECODER 0
+#define CONFIG_MPEG2_MMAL_DECODER 0
-+#define CONFIG_MPEG2_CRYSTALHD_DECODER 0
+#define CONFIG_MPEG2_V4L2M2M_DECODER 0
+#define CONFIG_MPEG2_QSV_DECODER 0
+#define CONFIG_MPEG2_MEDIACODEC_DECODER 0
@@ -4063,7 +4037,6 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_MSMPEG4V1_DECODER 0
+#define CONFIG_MSMPEG4V2_DECODER 0
+#define CONFIG_MSMPEG4V3_DECODER 0
-+#define CONFIG_MSMPEG4_CRYSTALHD_DECODER 0
+#define CONFIG_MSP2_DECODER 0
+#define CONFIG_MSRLE_DECODER 0
+#define CONFIG_MSS1_DECODER 0
@@ -4140,7 +4113,7 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_TARGA_DECODER 0
+#define CONFIG_TARGA_Y216_DECODER 0
+#define CONFIG_TDSC_DECODER 0
-+#define CONFIG_THEORA_DECODER 1
++#define CONFIG_THEORA_DECODER 0
+#define CONFIG_THP_DECODER 0
+#define CONFIG_TIERTEXSEQVIDEO_DECODER 0
+#define CONFIG_TIFF_DECODER 0
@@ -4162,7 +4135,6 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_VBN_DECODER 0
+#define CONFIG_VBLE_DECODER 0
+#define CONFIG_VC1_DECODER 0
-+#define CONFIG_VC1_CRYSTALHD_DECODER 0
+#define CONFIG_VC1IMAGE_DECODER 0
+#define CONFIG_VC1_MMAL_DECODER 0
+#define CONFIG_VC1_QSV_DECODER 0
@@ -4171,14 +4143,14 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_VMDVIDEO_DECODER 0
+#define CONFIG_VMIX_DECODER 0
+#define CONFIG_VMNC_DECODER 0
-+#define CONFIG_VP3_DECODER 1
++#define CONFIG_VP3_DECODER 0
+#define CONFIG_VP4_DECODER 0
+#define CONFIG_VP5_DECODER 0
+#define CONFIG_VP6_DECODER 0
+#define CONFIG_VP6A_DECODER 0
+#define CONFIG_VP6F_DECODER 0
+#define CONFIG_VP7_DECODER 0
-+#define CONFIG_VP8_DECODER 1
++#define CONFIG_VP8_DECODER 0
+#define CONFIG_VP8_RKMPP_DECODER 0
+#define CONFIG_VP8_V4L2M2M_DECODER 0
+#define CONFIG_VP9_DECODER 0
@@ -4194,7 +4166,6 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_WMV1_DECODER 0
+#define CONFIG_WMV2_DECODER 0
+#define CONFIG_WMV3_DECODER 0
-+#define CONFIG_WMV3_CRYSTALHD_DECODER 0
+#define CONFIG_WMV3IMAGE_DECODER 0
+#define CONFIG_WNV1_DECODER 0
+#define CONFIG_XAN_WC3_DECODER 0
@@ -4508,7 +4479,6 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_ASV2_ENCODER 0
+#define CONFIG_AVRP_ENCODER 0
+#define CONFIG_AVUI_ENCODER 0
-+#define CONFIG_AYUV_ENCODER 0
+#define CONFIG_BITPACKED_ENCODER 0
+#define CONFIG_BMP_ENCODER 0
+#define CONFIG_CFHD_ENCODER 0
@@ -4518,6 +4488,7 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_DNXHD_ENCODER 0
+#define CONFIG_DPX_ENCODER 0
+#define CONFIG_DVVIDEO_ENCODER 0
++#define CONFIG_DXV_ENCODER 0
+#define CONFIG_EXR_ENCODER 0
+#define CONFIG_FFV1_ENCODER 0
+#define CONFIG_FFVHUFF_ENCODER 0
@@ -4878,8 +4849,8 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_TAK_PARSER 0
+#define CONFIG_VC1_PARSER 0
+#define CONFIG_VORBIS_PARSER 1
-+#define CONFIG_VP3_PARSER 1
-+#define CONFIG_VP8_PARSER 1
++#define CONFIG_VP3_PARSER 0
++#define CONFIG_VP8_PARSER 0
+#define CONFIG_VP9_PARSER 1
+#define CONFIG_VVC_PARSER 0
+#define CONFIG_WEBP_PARSER 0
@@ -5491,8 +5462,6 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_AVSYNCTEST_FILTER 0
+#define CONFIG_AMOVIE_FILTER 0
+#define CONFIG_MOVIE_FILTER 0
-+#define CONFIG_AFIFO_FILTER 0
-+#define CONFIG_FIFO_FILTER 0
+#define CONFIG_AA_DEMUXER 0
+#define CONFIG_AAC_DEMUXER 1
+#define CONFIG_AAX_DEMUXER 0
@@ -5576,6 +5545,7 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_DV_DEMUXER 0
+#define CONFIG_DVBSUB_DEMUXER 0
+#define CONFIG_DVBTXT_DEMUXER 0
++#define CONFIG_DVDVIDEO_DEMUXER 0
+#define CONFIG_DXA_DEMUXER 0
+#define CONFIG_EA_DEMUXER 0
+#define CONFIG_EA_CDATA_DEMUXER 0
@@ -5857,6 +5827,7 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_AC4_MUXER 0
+#define CONFIG_ADTS_MUXER 0
+#define CONFIG_ADX_MUXER 0
++#define CONFIG_AEA_MUXER 0
+#define CONFIG_AIFF_MUXER 0
+#define CONFIG_ALP_MUXER 0
+#define CONFIG_AMR_MUXER 0
@@ -5896,7 +5867,6 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_F4V_MUXER 0
+#define CONFIG_FFMETADATA_MUXER 0
+#define CONFIG_FIFO_MUXER 0
-+#define CONFIG_FIFO_TEST_MUXER 0
+#define CONFIG_FILMSTRIP_MUXER 0
+#define CONFIG_FITS_MUXER 0
+#define CONFIG_FLAC_MUXER 0
@@ -5986,6 +5956,7 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_PCM_U8_MUXER 0
+#define CONFIG_PSP_MUXER 0
+#define CONFIG_RAWVIDEO_MUXER 0
++#define CONFIG_RCWT_MUXER 0
+#define CONFIG_RM_MUXER 0
+#define CONFIG_ROQ_MUXER 0
+#define CONFIG_RSO_MUXER 0
@@ -6085,25 +6056,18 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/config_comp
+#define CONFIG_IPFS_GATEWAY_PROTOCOL 0
+#define CONFIG_IPNS_GATEWAY_PROTOCOL 0
+#endif /* FFMPEG_CONFIG_COMPONENTS_H */
-Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavcodec/bsf_list.c
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavcodec/bsf_list.c
++++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavcodec/bsf_list.c
@@ -0,0 +1,2 @@
+static const FFBitStreamFilter * const bitstream_filters[] = {
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavcodec/codec_list.c
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavcodec/codec_list.c
-@@ -0,0 +1,22 @@
++++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavcodec/codec_list.c
+@@ -0,0 +1,19 @@
+static const FFCodec * const codec_list[] = {
+ &ff_h263_decoder,
+ &ff_h264_decoder,
+ &ff_mpeg4_decoder,
-+ &ff_theora_decoder,
-+ &ff_vp3_decoder,
-+ &ff_vp8_decoder,
+ &ff_aac_decoder,
+ &ff_flac_decoder,
+ &ff_mp3_decoder,
@@ -6119,11 +6083,9 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavcodec/
+ &ff_pcm_u8_decoder,
+ &ff_libopus_decoder,
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavcodec/parser_list.c
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavcodec/parser_list.c
-@@ -0,0 +1,13 @@
++++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavcodec/parser_list.c
+@@ -0,0 +1,11 @@
+static const AVCodecParser * const parser_list[] = {
+ &ff_aac_parser,
+ &ff_flac_parser,
@@ -6133,16 +6095,12 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavcodec/
+ &ff_mpegaudio_parser,
+ &ff_opus_parser,
+ &ff_vorbis_parser,
-+ &ff_vp3_parser,
-+ &ff_vp8_parser,
+ &ff_vp9_parser,
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavformat/demuxer_list.c
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavformat/demuxer_list.c
++++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavformat/demuxer_list.c
@@ -0,0 +1,10 @@
-+static const AVInputFormat * const demuxer_list[] = {
++static const FFInputFormat * const demuxer_list[] = {
+ &ff_aac_demuxer,
+ &ff_avi_demuxer,
+ &ff_flac_demuxer,
@@ -6152,24 +6110,18 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavformat
+ &ff_ogg_demuxer,
+ &ff_wav_demuxer,
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavformat/muxer_list.c
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavformat/muxer_list.c
++++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavformat/muxer_list.c
@@ -0,0 +1,2 @@
+static const FFOutputFormat * const muxer_list[] = {
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavformat/protocol_list.c
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavformat/protocol_list.c
++++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavformat/protocol_list.c
@@ -0,0 +1,2 @@
+static const URLProtocol * const url_protocols[] = {
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavutil/avconfig.h
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavutil/avconfig.h
++++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavutil/avconfig.h
@@ -0,0 +1,6 @@
+/* Generated by ffmpeg configure */
+#ifndef AVUTIL_AVCONFIG_H
@@ -6177,37 +6129,31 @@ Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavutil/a
+#define AV_HAVE_BIGENDIAN 0
+#define AV_HAVE_FAST_UNALIGNED 0
+#endif /* AVUTIL_AVCONFIG_H */
-Index: src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavutil/ffversion.h
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavutil/ffversion.h
++++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/riscv64/libavutil/ffversion.h
@@ -0,0 +1,5 @@
+/* Automatically generated by version.sh, do not manually edit! */
+#ifndef AVUTIL_FFVERSION_H
+#define AVUTIL_FFVERSION_H
+#define FFMPEG_VERSION "5.1.git"
+#endif /* AVUTIL_FFVERSION_H */
-Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h
-@@ -0,0 +1,768 @@
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h
+@@ -0,0 +1,775 @@
+/* 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-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/hacker/chromium/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=riscv64" -- 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-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/hacker/chromium/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --arch=riscv64 --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 "gcc 13.2.1 (GCC) 20230801"
++#define CC_IDENT "Debian clang version 16.0.6 (27)"
+#define OS_NAME linux
-+#define av_restrict restrict
+#define EXTERN_PREFIX ""
+#define EXTERN_ASM
+#define BUILDSUF ""
+#define SLIBSUF ".so"
-+#define HAVE_MMX2 HAVE_MMXEXT
+#define SWS_MAX_FILTER_SIZE 256
+#define ARCH_AARCH64 0
+#define ARCH_ALPHA 0
@@ -6252,8 +6198,8 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h
+#define HAVE_POWER8 0
+#define HAVE_PPC4XX 0
+#define HAVE_VSX 0
-+#define HAVE_RV 1
-+#define HAVE_RVV 1
++#define HAVE_RV 0
++#define HAVE_RVV 0
+#define HAVE_AESNI 0
+#define HAVE_AMD3DNOW 0
+#define HAVE_AMD3DNOWEXT 0
@@ -6439,6 +6385,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h
+#define HAVE_OPENCV2_CORE_CORE_C_H 0
+#define HAVE_OPENGL_GL3_H 0
+#define HAVE_POLL_H 1
++#define HAVE_PTHREAD_NP_H 0
+#define HAVE_SYS_PARAM_H 1
+#define HAVE_SYS_RESOURCE_H 1
+#define HAVE_SYS_SELECT_H 1
@@ -6529,6 +6476,8 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h
+#define HAVE_POSIX_MEMALIGN 1
+#define HAVE_PRCTL 0 /* #define HAVE_PRCTL 1 -- forced to 0 for Fuchsia */
+#define HAVE_PTHREAD_CANCEL 1
++#define HAVE_PTHREAD_SET_NAME_NP 0
++#define HAVE_PTHREAD_SETNAME_NP 0
+#define HAVE_SCHED_GETAFFINITY 1
+#define HAVE_SECITEMIMPORT 0
+#define HAVE_SETCONSOLETEXTATTRIBUTE 0
@@ -6572,7 +6521,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h
+#define HAVE_INLINE_ASM_NONLOCAL_LABELS 1
+#define HAVE_PRAGMA_DEPRECATED 1
+#define HAVE_RSYNC_CONTIMEOUT 0
-+#define HAVE_SYMVER_ASM_LABEL 0
++#define HAVE_SYMVER_ASM_LABEL 1
+#define HAVE_SYMVER_GNU_ASM 1
+#define HAVE_VFP_ARGS 0
+#define HAVE_XFORM_ASM 0
@@ -6612,18 +6561,19 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h
+#define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
+#define HAVE_GZIP 1
+#define HAVE_LIBDRM_GETFB2 0
-+#define HAVE_MAKEINFO 1
-+#define HAVE_MAKEINFO_HTML 1
++#define HAVE_MAKEINFO 0
++#define HAVE_MAKEINFO_HTML 0
+#define HAVE_OPENCL_D3D11 0
+#define HAVE_OPENCL_DRM_ARM 0
+#define HAVE_OPENCL_DRM_BEIGNET 0
+#define HAVE_OPENCL_DXVA2 0
+#define HAVE_OPENCL_VAAPI_BEIGNET 0
+#define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
++#define HAVE_OPENCL_VIDEOTOOLBOX 0
+#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
@@ -6659,6 +6609,8 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h
+#define CONFIG_FREI0R 0
+#define CONFIG_LIBCDIO 0
+#define CONFIG_LIBDAVS2 0
++#define CONFIG_LIBDVDNAV 0
++#define CONFIG_LIBDVDREAD 0
+#define CONFIG_LIBRUBBERBAND 0
+#define CONFIG_LIBVIDSTAB 0
+#define CONFIG_LIBX264 0
@@ -6738,6 +6690,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h
+#define CONFIG_LIBTENSORFLOW 0
+#define CONFIG_LIBTESSERACT 0
+#define CONFIG_LIBTHEORA 0
++#define CONFIG_LIBTORCH 0
+#define CONFIG_LIBTWOLAME 0
+#define CONFIG_LIBUAVS3D 0
+#define CONFIG_LIBV4L2 0
@@ -6787,7 +6740,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h
+#define CONFIG_OPENCL 0
+#define CONFIG_AMF 0
+#define CONFIG_AUDIOTOOLBOX 0
-+#define CONFIG_CRYSTALHD 0
+#define CONFIG_CUDA 0
+#define CONFIG_CUDA_LLVM 0
+#define CONFIG_CUVID 0
@@ -6895,15 +6847,17 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h
+#define CONFIG_H264CHROMA 0
+#define CONFIG_H264DSP 0
+#define CONFIG_H264PARSE 0
-+#define CONFIG_H264PRED 1
++#define CONFIG_H264PRED 0
+#define CONFIG_H264QPEL 0
+#define CONFIG_H264_SEI 0
+#define CONFIG_HEVCPARSE 0
+#define CONFIG_HEVC_SEI 0
-+#define CONFIG_HPELDSP 1
++#define CONFIG_HPELDSP 0
+#define CONFIG_HUFFMAN 0
+#define CONFIG_HUFFYUVDSP 0
+#define CONFIG_HUFFYUVENCDSP 0
++#define CONFIG_IAMFDEC 0
++#define CONFIG_IAMFENC 0
+#define CONFIG_IDCTDSP 0
+#define CONFIG_IIRFILTER 0
+#define CONFIG_INFLATE_WRAPPER 0
@@ -6913,6 +6867,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h
+#define CONFIG_JPEGTABLES 0
+#define CONFIG_LGPLV3 0
+#define CONFIG_LIBX262 0
++#define CONFIG_LIBX264_HDR10 0
+#define CONFIG_LLAUDDSP 0
+#define CONFIG_LLVIDDSP 0
+#define CONFIG_LLVIDENCDSP 0
@@ -6953,18 +6908,16 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h
+#define CONFIG_VAAPI_1 0
+#define CONFIG_VAAPI_ENCODE 0
+#define CONFIG_VC1DSP 0
-+#define CONFIG_VIDEODSP 1
-+#define CONFIG_VP3DSP 1
++#define CONFIG_VIDEODSP 0
++#define CONFIG_VP3DSP 0
+#define CONFIG_VP56DSP 0
-+#define CONFIG_VP8DSP 1
++#define CONFIG_VP8DSP 0
+#define CONFIG_WMA_FREQS 0
+#define CONFIG_WMV2DSP 0
+#endif /* FFMPEG_CONFIG_H */
-Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_components.h
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_components.h
-@@ -0,0 +1,2217 @@
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_components.h
+@@ -0,0 +1,2210 @@
+/* Automatically generated by configure - do not modify! */
+#ifndef FFMPEG_CONFIG_COMPONENTS_H
+#define FFMPEG_CONFIG_COMPONENTS_H
@@ -6990,7 +6943,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_MEDIA100_TO_MJPEGB_BSF 0
+#define CONFIG_MJPEG2JPEG_BSF 0
+#define CONFIG_MJPEGA_DUMP_HEADER_BSF 0
-+#define CONFIG_MP3_HEADER_DECOMPRESS_BSF 0
+#define CONFIG_MPEG2_METADATA_BSF 0
+#define CONFIG_MPEG4_UNPACK_BFRAMES_BSF 0
+#define CONFIG_MOV2TEXTSUB_BSF 0
@@ -7002,6 +6954,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_PRORES_METADATA_BSF 0
+#define CONFIG_REMOVE_EXTRADATA_BSF 0
+#define CONFIG_SETTS_BSF 0
++#define CONFIG_SHOWINFO_BSF 0
+#define CONFIG_TEXT2MOVSUB_BSF 0
+#define CONFIG_TRACE_HEADERS_BSF 0
+#define CONFIG_TRUEHD_CORE_BSF 0
@@ -7030,7 +6983,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_AVRN_DECODER 0
+#define CONFIG_AVS_DECODER 0
+#define CONFIG_AVUI_DECODER 0
-+#define CONFIG_AYUV_DECODER 0
+#define CONFIG_BETHSOFTVID_DECODER 0
+#define CONFIG_BFI_DECODER 0
+#define CONFIG_BINK_DECODER 0
@@ -7097,7 +7049,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_H263P_DECODER 0
+#define CONFIG_H263_V4L2M2M_DECODER 0
+#define CONFIG_H264_DECODER 0
-+#define CONFIG_H264_CRYSTALHD_DECODER 0
+#define CONFIG_H264_V4L2M2M_DECODER 0
+#define CONFIG_H264_MEDIACODEC_DECODER 0
+#define CONFIG_H264_MMAL_DECODER 0
@@ -7145,13 +7096,11 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_MPEG1VIDEO_DECODER 0
+#define CONFIG_MPEG2VIDEO_DECODER 0
+#define CONFIG_MPEG4_DECODER 0
-+#define CONFIG_MPEG4_CRYSTALHD_DECODER 0
+#define CONFIG_MPEG4_V4L2M2M_DECODER 0
+#define CONFIG_MPEG4_MMAL_DECODER 0
+#define CONFIG_MPEGVIDEO_DECODER 0
+#define CONFIG_MPEG1_V4L2M2M_DECODER 0
+#define CONFIG_MPEG2_MMAL_DECODER 0
-+#define CONFIG_MPEG2_CRYSTALHD_DECODER 0
+#define CONFIG_MPEG2_V4L2M2M_DECODER 0
+#define CONFIG_MPEG2_QSV_DECODER 0
+#define CONFIG_MPEG2_MEDIACODEC_DECODER 0
@@ -7160,7 +7109,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_MSMPEG4V1_DECODER 0
+#define CONFIG_MSMPEG4V2_DECODER 0
+#define CONFIG_MSMPEG4V3_DECODER 0
-+#define CONFIG_MSMPEG4_CRYSTALHD_DECODER 0
+#define CONFIG_MSP2_DECODER 0
+#define CONFIG_MSRLE_DECODER 0
+#define CONFIG_MSS1_DECODER 0
@@ -7237,7 +7185,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_TARGA_DECODER 0
+#define CONFIG_TARGA_Y216_DECODER 0
+#define CONFIG_TDSC_DECODER 0
-+#define CONFIG_THEORA_DECODER 1
++#define CONFIG_THEORA_DECODER 0
+#define CONFIG_THP_DECODER 0
+#define CONFIG_TIERTEXSEQVIDEO_DECODER 0
+#define CONFIG_TIFF_DECODER 0
@@ -7259,7 +7207,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_VBN_DECODER 0
+#define CONFIG_VBLE_DECODER 0
+#define CONFIG_VC1_DECODER 0
-+#define CONFIG_VC1_CRYSTALHD_DECODER 0
+#define CONFIG_VC1IMAGE_DECODER 0
+#define CONFIG_VC1_MMAL_DECODER 0
+#define CONFIG_VC1_QSV_DECODER 0
@@ -7268,14 +7215,14 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_VMDVIDEO_DECODER 0
+#define CONFIG_VMIX_DECODER 0
+#define CONFIG_VMNC_DECODER 0
-+#define CONFIG_VP3_DECODER 1
++#define CONFIG_VP3_DECODER 0
+#define CONFIG_VP4_DECODER 0
+#define CONFIG_VP5_DECODER 0
+#define CONFIG_VP6_DECODER 0
+#define CONFIG_VP6A_DECODER 0
+#define CONFIG_VP6F_DECODER 0
+#define CONFIG_VP7_DECODER 0
-+#define CONFIG_VP8_DECODER 1
++#define CONFIG_VP8_DECODER 0
+#define CONFIG_VP8_RKMPP_DECODER 0
+#define CONFIG_VP8_V4L2M2M_DECODER 0
+#define CONFIG_VP9_DECODER 0
@@ -7291,7 +7238,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_WMV1_DECODER 0
+#define CONFIG_WMV2_DECODER 0
+#define CONFIG_WMV3_DECODER 0
-+#define CONFIG_WMV3_CRYSTALHD_DECODER 0
+#define CONFIG_WMV3IMAGE_DECODER 0
+#define CONFIG_WNV1_DECODER 0
+#define CONFIG_XAN_WC3_DECODER 0
@@ -7605,7 +7551,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_ASV2_ENCODER 0
+#define CONFIG_AVRP_ENCODER 0
+#define CONFIG_AVUI_ENCODER 0
-+#define CONFIG_AYUV_ENCODER 0
+#define CONFIG_BITPACKED_ENCODER 0
+#define CONFIG_BMP_ENCODER 0
+#define CONFIG_CFHD_ENCODER 0
@@ -7615,6 +7560,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_DNXHD_ENCODER 0
+#define CONFIG_DPX_ENCODER 0
+#define CONFIG_DVVIDEO_ENCODER 0
++#define CONFIG_DXV_ENCODER 0
+#define CONFIG_EXR_ENCODER 0
+#define CONFIG_FFV1_ENCODER 0
+#define CONFIG_FFVHUFF_ENCODER 0
@@ -7975,8 +7921,8 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_TAK_PARSER 0
+#define CONFIG_VC1_PARSER 0
+#define CONFIG_VORBIS_PARSER 1
-+#define CONFIG_VP3_PARSER 1
-+#define CONFIG_VP8_PARSER 1
++#define CONFIG_VP3_PARSER 0
++#define CONFIG_VP8_PARSER 0
+#define CONFIG_VP9_PARSER 1
+#define CONFIG_VVC_PARSER 0
+#define CONFIG_WEBP_PARSER 0
@@ -8588,8 +8534,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_AVSYNCTEST_FILTER 0
+#define CONFIG_AMOVIE_FILTER 0
+#define CONFIG_MOVIE_FILTER 0
-+#define CONFIG_AFIFO_FILTER 0
-+#define CONFIG_FIFO_FILTER 0
+#define CONFIG_AA_DEMUXER 0
+#define CONFIG_AAC_DEMUXER 0
+#define CONFIG_AAX_DEMUXER 0
@@ -8673,6 +8617,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_DV_DEMUXER 0
+#define CONFIG_DVBSUB_DEMUXER 0
+#define CONFIG_DVBTXT_DEMUXER 0
++#define CONFIG_DVDVIDEO_DEMUXER 0
+#define CONFIG_DXA_DEMUXER 0
+#define CONFIG_EA_DEMUXER 0
+#define CONFIG_EA_CDATA_DEMUXER 0
@@ -8954,6 +8899,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_AC4_MUXER 0
+#define CONFIG_ADTS_MUXER 0
+#define CONFIG_ADX_MUXER 0
++#define CONFIG_AEA_MUXER 0
+#define CONFIG_AIFF_MUXER 0
+#define CONFIG_ALP_MUXER 0
+#define CONFIG_AMR_MUXER 0
@@ -8993,7 +8939,6 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_F4V_MUXER 0
+#define CONFIG_FFMETADATA_MUXER 0
+#define CONFIG_FIFO_MUXER 0
-+#define CONFIG_FIFO_TEST_MUXER 0
+#define CONFIG_FILMSTRIP_MUXER 0
+#define CONFIG_FITS_MUXER 0
+#define CONFIG_FLAC_MUXER 0
@@ -9083,6 +9028,7 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_PCM_U8_MUXER 0
+#define CONFIG_PSP_MUXER 0
+#define CONFIG_RAWVIDEO_MUXER 0
++#define CONFIG_RCWT_MUXER 0
+#define CONFIG_RM_MUXER 0
+#define CONFIG_ROQ_MUXER 0
+#define CONFIG_RSO_MUXER 0
@@ -9182,22 +9128,15 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_comp
+#define CONFIG_IPFS_GATEWAY_PROTOCOL 0
+#define CONFIG_IPNS_GATEWAY_PROTOCOL 0
+#endif /* FFMPEG_CONFIG_COMPONENTS_H */
-Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/bsf_list.c
-===================================================================
--- /dev/null
-+++ src/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
@@ -0,0 +1,2 @@
+static const FFBitStreamFilter * const bitstream_filters[] = {
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/codec_list.c
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/codec_list.c
-@@ -0,0 +1,18 @@
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/codec_list.c
+@@ -0,0 +1,15 @@
+static const FFCodec * const codec_list[] = {
-+ &ff_theora_decoder,
-+ &ff_vp3_decoder,
-+ &ff_vp8_decoder,
+ &ff_flac_decoder,
+ &ff_mp3_decoder,
+ &ff_vorbis_decoder,
@@ -9212,26 +9151,20 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/
+ &ff_pcm_u8_decoder,
+ &ff_libopus_decoder,
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/parser_list.c
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/parser_list.c
-@@ -0,0 +1,9 @@
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/parser_list.c
+@@ -0,0 +1,7 @@
+static const AVCodecParser * const parser_list[] = {
+ &ff_flac_parser,
+ &ff_mpegaudio_parser,
+ &ff_opus_parser,
+ &ff_vorbis_parser,
-+ &ff_vp3_parser,
-+ &ff_vp8_parser,
+ &ff_vp9_parser,
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/demuxer_list.c
-===================================================================
--- /dev/null
-+++ src/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
@@ -0,0 +1,8 @@
-+static const AVInputFormat * const demuxer_list[] = {
++static const FFInputFormat * const demuxer_list[] = {
+ &ff_flac_demuxer,
+ &ff_matroska_demuxer,
+ &ff_mov_demuxer,
@@ -9239,24 +9172,18 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat
+ &ff_ogg_demuxer,
+ &ff_wav_demuxer,
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/muxer_list.c
-===================================================================
--- /dev/null
-+++ src/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
@@ -0,0 +1,2 @@
+static const FFOutputFormat * const muxer_list[] = {
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/protocol_list.c
-===================================================================
--- /dev/null
-+++ src/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
@@ -0,0 +1,2 @@
+static const URLProtocol * const url_protocols[] = {
+ NULL };
-Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/avconfig.h
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/avconfig.h
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/avconfig.h
@@ -0,0 +1,6 @@
+/* Generated by ffmpeg configure */
+#ifndef AVUTIL_AVCONFIG_H
@@ -9264,30 +9191,83 @@ Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/a
+#define AV_HAVE_BIGENDIAN 0
+#define AV_HAVE_FAST_UNALIGNED 0
+#endif /* AVUTIL_AVCONFIG_H */
-Index: src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/ffversion.h
-===================================================================
--- /dev/null
-+++ src/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/ffversion.h
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/ffversion.h
@@ -0,0 +1,5 @@
+/* Automatically generated by version.sh, do not manually edit! */
+#ifndef AVUTIL_FFVERSION_H
+#define AVUTIL_FFVERSION_H
+#define FFMPEG_VERSION "5.1.git"
+#endif /* AVUTIL_FFVERSION_H */
-Index: src/third_party/ffmpeg/ffmpeg_generated.gni
-===================================================================
---- src.orig/third_party/ffmpeg/ffmpeg_generated.gni
-+++ src/third_party/ffmpeg/ffmpeg_generated.gni
-@@ -638,3 +638,64 @@ if (use_linux_config && current_cpu == "
- ]
+--- a/media/ffmpeg/scripts/build_ffmpeg.py
++++ b/media/ffmpeg/scripts/build_ffmpeg.py
+@@ -43,7 +43,7 @@
+
+ ARCH_MAP = {
+ 'android': ['ia32', 'x64', 'arm-neon', 'arm64'],
+- 'linux': ['ia32', 'x64', 'noasm-x64', 'arm', 'arm-neon', 'arm64'],
++ 'linux': ['ia32', 'x64', 'noasm-x64', 'arm', 'arm-neon', 'arm64', 'riscv64'],
+ 'mac': ['x64', 'arm64'],
+ 'win': ['ia32', 'x64', 'arm64'],
}
+@@ -672,7 +672,7 @@
+ '--disable-securetransport',
+ '--disable-faan',
+ '--disable-alsa',
+- '--disable-iamf',
++ # '--disable-iamf',
+ # Disable automatically detected external libraries. This prevents
+ # automatic inclusion of things like hardware decoders. Each roll should
+@@ -898,6 +898,10 @@
+ '--extra-cflags=--target=mips64el-linux-gnuabi64',
+ '--extra-ldflags=--target=mips64el-linux-gnuabi64',
+ ])
++ elif target_arch == 'riscv64':
++ configure_flags['Common'].extend([
++ '--arch=riscv64',
++ ])
+ else:
+ print('Error: Unknown target arch %r for target OS %r!' %
+ (target_arch, target_os),
+--- a/third_party/ffmpeg/chromium/scripts/generate_gn.py
++++ b/third_party/ffmpeg/chromium/scripts/generate_gn.py
+@@ -77,7 +77,7 @@
+ _Attrs = ('ARCHITECTURE', 'TARGET', 'PLATFORM')
+ Attr = collections.namedtuple('Attr', _Attrs)(*_Attrs)
+ SUPPORT_MATRIX = {
+- Attr.ARCHITECTURE: set(['ia32', 'x64', 'arm', 'arm64', 'arm-neon']),
++ Attr.ARCHITECTURE: set(['ia32', 'x64', 'arm', 'arm64', 'arm-neon', 'riscv64']),
+ Attr.TARGET: set(['Chromium', 'Chrome', 'ChromeOS']),
+ Attr.PLATFORM: set(['android', 'linux', 'win', 'mac'])
+ }
+--- a/media/ffmpeg/scripts/robo_lib/config.py
++++ b/media/ffmpeg/scripts/robo_lib/config.py
+@@ -189,6 +189,8 @@
+ self._host_architecture = "mips64el"
+ elif platform.machine().startswith("arm"):
+ self._host_architecture = "arm"
++ elif platform.machine() == "riscv64":
++ self._host_architecture = "riscv64"
+ else:
+ raise ValueError(
+ f"Unrecognized CPU architecture: {platform.machine()}")
+--- a/third_party/ffmpeg/ffmpeg_generated.gni
++++ b/third_party/ffmpeg/ffmpeg_generated.gni
+@@ -697,3 +697,90 @@
+ if (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") {
+ ffmpeg_asm_sources += [ "libavcodec/x86/simple_idct10.asm" ]
+ }
++
+if (use_linux_config && current_cpu == "riscv64") {
+ ffmpeg_c_sources += [
++ "libavcodec/riscv/aacencdsp_init.c",
+ "libavcodec/riscv/aacpsdsp_init.c",
+ "libavcodec/riscv/ac3dsp_init.c",
+ "libavcodec/riscv/alacdsp_init.c",
+ "libavcodec/riscv/audiodsp_init.c",
++ "libavcodec/riscv/blockdsp_init.c",
++ "libavcodec/riscv/bswapdsp_init.c",
+ "libavcodec/riscv/exrdsp_init.c",
+ "libavcodec/riscv/flacdsp_init.c",
+ "libavcodec/riscv/fmtconvert_init.c",
@@ -9298,12 +9278,20 @@ Index: src/third_party/ffmpeg/ffmpeg_generated.gni
+ "libavcodec/riscv/jpeg2000dsp_init.c",
+ "libavcodec/riscv/llauddsp_init.c",
+ "libavcodec/riscv/llviddsp_init.c",
++ "libavcodec/riscv/llvidencdsp_init.c",
++ "libavcodec/riscv/lpc_init.c",
++ "libavcodec/riscv/me_cmp_init.c",
+ "libavcodec/riscv/opusdsp_init.c",
+ "libavcodec/riscv/pixblockdsp_init.c",
++ "libavcodec/riscv/rv34dsp_init.c",
+ "libavcodec/riscv/sbrdsp_init.c",
++ "libavcodec/riscv/svqenc_init.c",
++ "libavcodec/riscv/takdsp_init.c",
+ "libavcodec/riscv/utvideodsp_init.c",
++ "libavcodec/riscv/vc1dsp_init.c",
+ "libavcodec/riscv/vorbisdsp_init.c",
-+ "libavcodec/riscv/bswapdsp_init.c",
++ "libavcodec/riscv/vp8dsp_init.c",
++ "libavfilter/riscv/af_afir_init.c",
+ "libavutil/riscv/cpu.c",
+ "libavutil/riscv/fixed_dsp_init.c",
+ "libavutil/riscv/float_dsp_init.c",
@@ -9314,11 +9302,14 @@ Index: src/third_party/ffmpeg/ffmpeg_generated.gni
+ "libavutil/riscv/timer.h",
+ ]
+ ffmpeg_gas_sources += [
++ "libavcodec/riscv/aacencdsp_rvv.S",
+ "libavcodec/riscv/aacpsdsp_rvv.S",
+ "libavcodec/riscv/ac3dsp_rvb.S",
++ "libavcodec/riscv/ac3dsp_rvv.S",
+ "libavcodec/riscv/alacdsp_rvv.S",
+ "libavcodec/riscv/audiodsp_rvf.S",
+ "libavcodec/riscv/audiodsp_rvv.S",
++ "libavcodec/riscv/blockdsp_rvv.S",
+ "libavcodec/riscv/bswapdsp_rvb.S",
+ "libavcodec/riscv/bswapdsp_rvv.S",
+ "libavcodec/riscv/exrdsp_rvv.S",
@@ -9331,141 +9322,27 @@ Index: src/third_party/ffmpeg/ffmpeg_generated.gni
+ "libavcodec/riscv/jpeg2000dsp_rvv.S",
+ "libavcodec/riscv/llauddsp_rvv.S",
+ "libavcodec/riscv/llviddsp_rvv.S",
++ "libavcodec/riscv/llvidencdsp_rvv.S",
++ "libavcodec/riscv/lpc_rvv.S",
++ "libavcodec/riscv/me_cmp_rvv.S",
+ "libavcodec/riscv/opusdsp_rvv.S",
+ "libavcodec/riscv/pixblockdsp_rvi.S",
+ "libavcodec/riscv/pixblockdsp_rvv.S",
++ "libavcodec/riscv/rv34dsp_rvv.S",
+ "libavcodec/riscv/sbrdsp_rvv.S",
++ "libavcodec/riscv/svqenc_rvv.S",
++ "libavcodec/riscv/takdsp_rvv.S",
+ "libavcodec/riscv/utvideodsp_rvv.S",
++ "libavcodec/riscv/vc1dsp_rvv.S",
+ "libavcodec/riscv/vorbisdsp_rvv.S",
++ "libavcodec/riscv/vp8dsp_rvv.S",
++ "libavfilter/riscv/af_afir_rvv.S",
+ "libavutil/riscv/asm.S",
++ "libavutil/riscv/bswap_rvb.S",
+ "libavutil/riscv/fixed_dsp_rvv.S",
+ "libavutil/riscv/float_dsp_rvv.S",
++ "libswscale/riscv/rgb2rgb_rvb.S",
+ "libswscale/riscv/rgb2rgb_rvv.S",
+ ]
+}
-Index: src/third_party/ffmpeg/chromium/scripts/build_ffmpeg.py
-===================================================================
---- src.orig/third_party/ffmpeg/chromium/scripts/build_ffmpeg.py
-+++ src/third_party/ffmpeg/chromium/scripts/build_ffmpeg.py
-@@ -43,7 +43,7 @@ BRANDINGS = [
- ARCH_MAP = {
- 'android': ['ia32', 'x64', 'arm-neon', 'arm64'],
- 'linux': [
-- 'ia32', 'x64', 'noasm-x64', 'arm', 'arm-neon', 'arm64'
-+ 'ia32', 'x64', 'noasm-x64', 'arm', 'arm-neon', 'arm64', 'riscv64'
- ],
- 'mac': ['x64', 'arm64'],
- 'win': ['ia32', 'x64', 'arm64'],
-@@ -889,6 +889,10 @@ def ConfigureAndBuild(target_arch, targe
- '--extra-cflags=--target=mips64el-linux-gnuabi64',
- '--extra-ldflags=--target=mips64el-linux-gnuabi64',
- ])
-+ elif target_arch == 'riscv64':
-+ configure_flags['Common'].extend([
-+ '--arch=riscv64',
-+ ])
- else:
- print(
- 'Error: Unknown target arch %r for target OS %r!' % (target_arch,
-@@ -902,7 +906,7 @@ def ConfigureAndBuild(target_arch, targe
- '--disable-inline-asm',
- ])
-
-- if 'win' not in target_os and 'android' not in target_os:
-+ if 'win' not in target_os and 'android' not in target_os and 'riscv64' not in target_arch:
- configure_flags['Common'].extend([
- '--enable-pic',
- '--cc=clang',
-Index: src/third_party/ffmpeg/chromium/scripts/copy_config.sh
-===================================================================
---- src.orig/third_party/ffmpeg/chromium/scripts/copy_config.sh
-+++ src/third_party/ffmpeg/chromium/scripts/copy_config.sh
-@@ -10,7 +10,7 @@ for os in android linux linux-noasm mac
- # Copy config files for various architectures:
- # - ia32/x64 have config.asm, config.h
- # - arm/arm-neon have config.h
-- for arch in arm arm-neon arm64 ia32 x64 mipsel mips64el; do
-+ for arch in arm arm-neon arm64 ia32 x64 mipsel mips64el riscv64; do
- # Don't waste time on non-existent configs, if no config.h then skip.
- [ ! -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
-Index: src/third_party/ffmpeg/chromium/scripts/generate_gn.py
-===================================================================
---- src.orig/third_party/ffmpeg/chromium/scripts/generate_gn.py
-+++ src/third_party/ffmpeg/chromium/scripts/generate_gn.py
-@@ -82,7 +82,7 @@ _Attrs = ('ARCHITECTURE', 'TARGET', 'PLA
- Attr = collections.namedtuple('Attr', _Attrs)(*_Attrs)
- SUPPORT_MATRIX = {
- Attr.ARCHITECTURE:
-- set(['ia32', 'x64', 'arm', 'arm64', 'arm-neon']),
-+ set(['ia32', 'x64', 'arm', 'arm64', 'arm-neon', 'riscv64']),
- Attr.TARGET:
- set(['Chromium', 'Chrome', 'ChromeOS']),
- Attr.PLATFORM:
-Index: src/third_party/ffmpeg/chromium/scripts/generate_gn_unittest.py
-===================================================================
---- src.orig/third_party/ffmpeg/chromium/scripts/generate_gn_unittest.py
-+++ src/third_party/ffmpeg/chromium/scripts/generate_gn_unittest.py
-@@ -329,6 +329,10 @@ class SourceSetUnittest(unittest.TestCas
- f = SourceSet(
- set(['common', 'arm-neon', 'chrome', 'chromeos']),
- set([SourceListCondition('arm-neon', 'ChromeOS', 'linux')]))
-+ g = SourceSet(
-+ set(['common']),
-+ set([SourceListCondition('riscv64', 'Chromium', 'linux')]))
-+
-
- expected = set()
- expected.add(
-@@ -340,7 +344,8 @@ class SourceSetUnittest(unittest.TestCas
- SourceListCondition('x64', 'Chromium', 'linux'),
- SourceListCondition('x64', 'Chrome', 'linux'),
- SourceListCondition('arm', 'Chromium', 'linux'),
-- SourceListCondition('arm-neon', 'ChromeOS', 'linux')
-+ SourceListCondition('arm-neon', 'ChromeOS', 'linux'),
-+ SourceListCondition('riscv64', 'Chromium', 'linux')
- ])))
- expected.add(
- SourceSet(
-@@ -368,7 +373,7 @@ class SourceSetUnittest(unittest.TestCas
- set(['arm-neon', 'chromeos']),
- set([SourceListCondition('arm-neon', 'ChromeOS', 'linux')])))
-
-- source_sets = gg.CreatePairwiseDisjointSets([a, b, c, d, e, f])
-+ source_sets = gg.CreatePairwiseDisjointSets([a, b, c, d, e, f, g])
- self.assertEqualSourceSets(expected, set(source_sets))
-
- def testReduceConditions(self):
-@@ -381,6 +386,7 @@ class SourceSetUnittest(unittest.TestCas
- SourceListCondition('arm', 'Chromium', 'linux'),
- SourceListCondition('arm64', 'Chromium', 'linux'),
- SourceListCondition('arm-neon', 'Chromium', 'linux'),
-+ SourceListCondition('riscv64', 'Chromium', 'linux'),
- ]))
- gg.ReduceConditionalLogic(a)
-
-Index: src/third_party/ffmpeg/chromium/scripts/robo_lib/config.py
-===================================================================
---- src.orig/third_party/ffmpeg/chromium/scripts/robo_lib/config.py
-+++ src/third_party/ffmpeg/chromium/scripts/robo_lib/config.py
-@@ -162,6 +162,8 @@ class RoboConfiguration:
- self._host_architecture = "mips64el"
- elif platform.machine().startswith("arm"):
- self._host_architecture = "arm"
-+ elif platform.machine() == "riscv64":
-+ self._host_architecture = "riscv64"
- else:
- raise ValueError(f"Unrecognized CPU architecture: {platform.machine()}")
-
-@@ -235,9 +237,7 @@ class RoboConfiguration:
- def EnsureNoMakeInfo(self):
- """Ensure that makeinfo is not available."""
- if os.system("makeinfo --version > /dev/null 2>&1") == 0:
-- raise errors.UserInstructions(
-- "makeinfo is available and we don't need it, so please remove it\nExample: sudo apt-get remove texinfo"
-- )
-+ pass
-
- def llvm_path(self):
- return self._llvm_path
diff --git a/www-client/chromium/files/05riscv-sandbox.patch b/www-client/chromium/files/riscv-sandbox.patch
similarity index 79%
rename from www-client/chromium/files/05riscv-sandbox.patch
rename to www-client/chromium/files/riscv-sandbox.patch
index eb14a7d..0753bb1 100644
--- a/www-client/chromium/files/05riscv-sandbox.patch
+++ b/www-client/chromium/files/riscv-sandbox.patch
@@ -1,33 +1,13 @@
-From 50538ec46b4ef930fedf96aa8d5519f678240dfa Mon Sep 17 00:00:00 2001
-From: kxxt <rsworktech@outlook.com>
-Date: Sat, 12 Aug 2023 08:34:05 +0800
-Subject: [PATCH] upgpatch: fix sandbox for chromium
+From 90499f55f949f95b01c84257d306cf209c04b431 Mon Sep 17 00:00:00 2001
+From: Andreas Schwab <schwab@suse.de>
+Date: Fri, 04 Mar 2022 15:27:35 +0100
+Subject: [PATCH] Add support for riscv64-linux
+Change-Id: Ibcdaaba1b0c92a1cd85361b9859370c686832c49
---
- sandbox/features.gni | 3 +-
- sandbox/linux/bpf_dsl/linux_syscall_ranges.h | 7 +
- sandbox/linux/bpf_dsl/seccomp_macros.h | 40 +
- .../seccomp-bpf-helpers/baseline_policy.cc | 11 +-
- .../syscall_parameters_restrictions.cc | 3 +-
- .../linux/seccomp-bpf-helpers/syscall_sets.cc | 69 +-
- .../linux/seccomp-bpf-helpers/syscall_sets.h | 14 +-
- sandbox/linux/seccomp-bpf/syscall.cc | 36 +-
- sandbox/linux/services/credentials.cc | 2 +-
- sandbox/linux/services/syscall_wrappers.cc | 2 +-
- .../linux/syscall_broker/broker_process.cc | 20 +-
- sandbox/linux/system_headers/linux_seccomp.h | 8 +
- sandbox/linux/system_headers/linux_signal.h | 2 +-
- sandbox/linux/system_headers/linux_stat.h | 2 +-
- sandbox/linux/system_headers/linux_syscalls.h | 4 +
- .../system_headers/riscv64_linux_syscalls.h | 1222 +++++++++++++++++
- .../linux/bpf_cros_amd_gpu_policy_linux.cc | 2 +-
- sandbox/policy/linux/bpf_gpu_policy_linux.cc | 2 +-
- .../policy/linux/bpf_network_policy_linux.cc | 2 +-
- 19 files changed, 1397 insertions(+), 54 deletions(-)
- create mode 100644 sandbox/linux/system_headers/riscv64_linux_syscalls.h
diff --git a/sandbox/features.gni b/sandbox/features.gni
-index 8434144118b49..8aa52983f78f8 100644
+index 8434144..8aa52983 100644
--- a/sandbox/features.gni
+++ b/sandbox/features.gni
@@ -9,7 +9,8 @@
@@ -41,7 +21,7 @@ index 8434144118b49..8aa52983f78f8 100644
# 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
diff --git a/sandbox/linux/bpf_dsl/linux_syscall_ranges.h b/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
-index 1d0590b7dd6ce..b722fbc95ee3e 100644
+index 1d0590b..b722fbc9 100644
--- a/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
+++ b/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
@@ -56,6 +56,13 @@
@@ -59,10 +39,10 @@ index 1d0590b7dd6ce..b722fbc95ee3e 100644
#error "Unsupported architecture"
#endif
diff --git a/sandbox/linux/bpf_dsl/seccomp_macros.h b/sandbox/linux/bpf_dsl/seccomp_macros.h
-index 87d5825aa3ddb..cc9b89ba3714a 100644
+index 87d5825..49fc9a6 100644
--- a/sandbox/linux/bpf_dsl/seccomp_macros.h
+++ b/sandbox/linux/bpf_dsl/seccomp_macros.h
-@@ -343,6 +343,46 @@ struct regs_struct {
+@@ -343,6 +343,48 @@
#define SECCOMP_PT_PARM4(_regs) (_regs).regs[3]
#define SECCOMP_PT_PARM5(_regs) (_regs).regs[4]
#define SECCOMP_PT_PARM6(_regs) (_regs).regs[5]
@@ -85,6 +65,7 @@ index 87d5825aa3ddb..cc9b89ba3714a 100644
+#define SECCOMP_PARM4(_ctx) SECCOMP_REG(_ctx, REG_A0+3)
+#define SECCOMP_PARM5(_ctx) SECCOMP_REG(_ctx, REG_A0+4)
+#define SECCOMP_PARM6(_ctx) SECCOMP_REG(_ctx, REG_A0+5)
++#define SECCOMP_PARM7(_ctx) SECCOMP_REG(_ctx, REG_A0+6)
+
+#define SECCOMP_NR_IDX (offsetof(struct arch_seccomp_data, nr))
+#define SECCOMP_ARCH_IDX (offsetof(struct arch_seccomp_data, arch))
@@ -106,24 +87,82 @@ index 87d5825aa3ddb..cc9b89ba3714a 100644
+#define SECCOMP_PT_PARM4(_regs) (_regs).regs[REG_A0+3]
+#define SECCOMP_PT_PARM5(_regs) (_regs).regs[REG_A0+4]
+#define SECCOMP_PT_PARM6(_regs) (_regs).regs[REG_A0+5]
++#define SECCOMP_PT_PARM7(_regs) (_regs).regs[REG_A0+6]
#else
#error Unsupported target platform
+diff --git a/sandbox/linux/integration_tests/bpf_dsl_seccomp_unittest.cc b/sandbox/linux/integration_tests/bpf_dsl_seccomp_unittest.cc
+index 4a2721c..8ef9f51a 100644
+--- a/sandbox/linux/integration_tests/bpf_dsl_seccomp_unittest.cc
++++ b/sandbox/linux/integration_tests/bpf_dsl_seccomp_unittest.cc
+@@ -17,6 +17,7 @@
+ #include <sys/types.h>
+ #include <sys/utsname.h>
+ #include <unistd.h>
++#include <linux/elf.h>
+
+ #include <memory>
+ #include <vector>
+@@ -2029,7 +2030,15 @@
+ BPF_ASSERT_EQ(kTraceData, data);
+
+ regs_struct regs;
++#if defined(__riscv)
++ iovec iov;
++ iov.iov_base = ®s;
++ iov.iov_len = sizeof(regs);
++ BPF_ASSERT_NE(-1, ptrace(PTRACE_GETREGSET, pid,
++ reinterpret_case<void*>(NT_PRSTATUS), &iov));
++#else
+ BPF_ASSERT_NE(-1, ptrace(PTRACE_GETREGS, pid, NULL, ®s));
++#endif
+ switch (SECCOMP_PT_SYSCALL(regs)) {
+ case __NR_write:
+ // Skip writes to stdout, make it return kExpectedReturnValue. Allow
+@@ -2037,7 +2046,14 @@
+ if (SECCOMP_PT_PARM1(regs) == STDOUT_FILENO) {
+ BPF_ASSERT_NE(-1, SetSyscall(pid, ®s, -1));
+ SECCOMP_PT_RESULT(regs) = kExpectedReturnValue;
++#if defined(__riscv)
++ iov.iov_len = sizeof(regs);
++ BPF_ASSERT_NE(-1, ptrace(PTRACE_SETREGSET, pid,
++ reinterpret_cast<void*>(NT_PRSTATUS),
++ &iov));
++#else
+ BPF_ASSERT_NE(-1, ptrace(PTRACE_SETREGS, pid, NULL, ®s));
++#endif
+ }
+ break;
+
+@@ -2045,7 +2061,13 @@
+ // Rewrite to exit(kExpectedReturnValue).
+ BPF_ASSERT_NE(-1, SetSyscall(pid, ®s, __NR_exit));
+ SECCOMP_PT_PARM1(regs) = kExpectedReturnValue;
++#if defined(__riscv)
++ iov.iov_len = sizeof(regs);
++ BPF_ASSERT_NE(-1, ptrace(PTRACE_SETREGSET, pid,
++ reinterpret_cast<void*>(NT_PRSTATUS), &iov));
++#else
+ BPF_ASSERT_NE(-1, ptrace(PTRACE_SETREGS, pid, NULL, ®s));
++#endif
+ break;
+
+ default:
diff --git a/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc b/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
-index 7bde501115bdf..b92ab3901acd8 100644
+index 7bde501..b92ab39 100644
--- a/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
+++ b/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
-@@ -59,6 +59,9 @@ bool IsBaselinePolicyAllowed(int sysno) {
- #endif
+@@ -60,6 +60,9 @@
#if defined(__mips__)
SyscallSets::IsMipsPrivate(sysno) ||
-+#endif
+ #endif
+#if defined(__riscv)
+ SyscallSets::IsRiscvPrivate(sysno) ||
- #endif
++#endif
SyscallSets::IsAllowedOperationOnFd(sysno);
// clang-format on
-@@ -193,7 +196,7 @@ ResultExpr EvaluateSyscallImpl(int fs_denied_errno,
+ }
+@@ -193,7 +196,7 @@
return RestrictFcntlCommands();
#endif
@@ -132,7 +171,7 @@ index 7bde501115bdf..b92ab3901acd8 100644
// fork() is never used as a system call (clone() is used instead), but we
// have seen it in fallback code on Android.
if (sysno == __NR_fork) {
-@@ -255,7 +258,7 @@ ResultExpr EvaluateSyscallImpl(int fs_denied_errno,
+@@ -255,7 +258,7 @@
}
#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
@@ -141,7 +180,7 @@ index 7bde501115bdf..b92ab3901acd8 100644
if (sysno == __NR_mmap)
return RestrictMmapFlags();
#endif
-@@ -276,7 +279,7 @@ ResultExpr EvaluateSyscallImpl(int fs_denied_errno,
+@@ -276,7 +279,7 @@
return RestrictPrctl();
#if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
@@ -150,7 +189,7 @@ index 7bde501115bdf..b92ab3901acd8 100644
if (sysno == __NR_socketpair) {
// Only allow AF_UNIX, PF_UNIX. Crash if anything else is seen.
static_assert(AF_UNIX == PF_UNIX,
-@@ -366,7 +369,7 @@ ResultExpr EvaluateSyscallImpl(int fs_denied_errno,
+@@ -366,7 +369,7 @@
// Allow creating pipes, but don't allow weird flags to pipe2().
// O_NOTIFICATION_PIPE (== O_EXCL) can be used to create
// "notification pipes", which are rarely used.
@@ -159,8 +198,39 @@ index 7bde501115bdf..b92ab3901acd8 100644
if (sysno == __NR_pipe) {
return Allow();
}
+diff --git a/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc b/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc
+index a0a8796..8bea4c9 100644
+--- a/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc
++++ b/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc
+@@ -270,7 +270,7 @@
+ }
+
+ // Not all architectures can restrict the domain for socketpair().
+-#if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__)
++#if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || defined(__riscv)
+ BPF_DEATH_TEST_C(BaselinePolicy,
+ SocketpairWrongDomain,
+ DEATH_SEGV_MESSAGE(GetErrorMessageContentForTests()),
+@@ -279,7 +279,7 @@
+ std::ignore = socketpair(AF_INET, SOCK_STREAM, 0, sv);
+ _exit(1);
+ }
+-#endif // defined(__x86_64__) || defined(__arm__) || defined(__aarch64__)
++#endif // defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || defined(__riscv)
+
+ BPF_TEST_C(BaselinePolicy, EPERM_open, BaselinePolicy) {
+ errno = 0;
+@@ -343,7 +343,7 @@
+ TEST_BASELINE_SIGSYS(__NR_syslog)
+ TEST_BASELINE_SIGSYS(__NR_timer_create)
+
+-#if !defined(__aarch64__)
++#if !defined(__aarch64__) && !defined(__riscv)
+ TEST_BASELINE_SIGSYS(__NR_inotify_init)
+ TEST_BASELINE_SIGSYS(__NR_vserver)
+ #endif
diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
-index 026e86bd85bec..ebb72ddcd5f67 100644
+index 74112e8..b451c19 100644
--- a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
+++ b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
@@ -37,6 +37,7 @@
@@ -171,20 +241,35 @@ index 026e86bd85bec..ebb72ddcd5f67 100644
!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.
-@@ -449,7 +450,7 @@ ResultExpr RestrictPtrace() {
+@@ -463,8 +464,10 @@
#endif
return Switch(request)
.Cases({
-#if !defined(__aarch64__)
+#if !defined(__aarch64__) && !defined(__riscv)
PTRACE_GETREGS, PTRACE_GETFPREGS, PTRACE_GET_THREAD_AREA,
++#endif
++#if !defined(__aarch64__)
PTRACE_GETREGSET,
#endif
+ #if defined(__arm__)
+diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc
+index 10e64a2c..ddfd6a7 100644
+--- a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc
++++ b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc
+@@ -7,6 +7,7 @@
+ #include <errno.h>
+ #include <fcntl.h>
+ #include <linux/elf.h>
++#include <asm/ptrace.h>
+ #include <sched.h>
+ #include <sys/prctl.h>
+ #include <sys/ptrace.h>
diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
-index 27ea264070dcd..8fc2d3c354adb 100644
+index 4cde283..bc680424 100644
--- a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
+++ b/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
-@@ -103,7 +103,7 @@ bool SyscallSets::IsUmask(int sysno) {
+@@ -103,7 +103,7 @@
// Both EPERM and ENOENT are valid errno unless otherwise noted in comment.
bool SyscallSets::IsFileSystem(int sysno) {
switch (sysno) {
@@ -193,7 +278,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_access: // EPERM not a valid errno.
case __NR_chmod:
case __NR_chown:
-@@ -136,7 +136,7 @@ bool SyscallSets::IsFileSystem(int sysno) {
+@@ -136,7 +136,7 @@
case __NR_faccessat2:
case __NR_fchmodat:
case __NR_fchownat: // Should be called chownat ?
@@ -202,7 +287,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_newfstatat: // fstatat(). EPERM not a valid errno.
#elif defined(__i386__) || defined(__arm__) || \
(defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-@@ -241,7 +241,7 @@ bool SyscallSets::IsAllowedFileSystemAccessViaFd(int sysno) {
+@@ -241,7 +241,7 @@
case __NR_oldfstat:
#endif
#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
@@ -211,7 +296,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_sync_file_range: // EPERM not a valid errno.
#elif defined(__arm__)
case __NR_arm_sync_file_range: // EPERM not a valid errno.
-@@ -260,7 +260,7 @@ bool SyscallSets::IsDeniedFileSystemAccessViaFd(int sysno) {
+@@ -260,7 +260,7 @@
#if defined(__i386__) || defined(__arm__)
case __NR_fchown32:
#endif
@@ -220,7 +305,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_getdents: // EPERM not a valid errno.
#endif
case __NR_getdents64: // EPERM not a valid errno.
-@@ -339,7 +339,7 @@ bool SyscallSets::IsProcessPrivilegeChange(int sysno) {
+@@ -339,7 +339,7 @@
bool SyscallSets::IsProcessGroupOrSession(int sysno) {
switch (sysno) {
case __NR_setpgid:
@@ -229,7 +314,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_getpgrp:
#endif
case __NR_setsid:
-@@ -373,7 +373,7 @@ bool SyscallSets::IsAllowedSignalHandling(int sysno) {
+@@ -373,7 +373,7 @@
case __NR_rt_sigqueueinfo:
case __NR_rt_sigsuspend:
case __NR_rt_tgsigqueueinfo:
@@ -238,7 +323,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_signalfd:
#endif
case __NR_signalfd4:
-@@ -397,12 +397,12 @@ bool SyscallSets::IsAllowedOperationOnFd(int sysno) {
+@@ -397,12 +397,12 @@
switch (sysno) {
case __NR_close:
case __NR_dup:
@@ -253,7 +338,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_shutdown:
#endif
return true;
-@@ -441,7 +441,7 @@ bool SyscallSets::IsAllowedProcessStartOrDeath(int sysno) {
+@@ -441,7 +441,7 @@
return true;
case __NR_clone: // Should be parameter-restricted.
case __NR_setns: // Privileged.
@@ -262,7 +347,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_fork:
#endif
#if defined(__i386__) || defined(__x86_64__)
-@@ -452,7 +452,7 @@ bool SyscallSets::IsAllowedProcessStartOrDeath(int sysno) {
+@@ -452,7 +452,7 @@
#endif
case __NR_set_tid_address:
case __NR_unshare:
@@ -271,7 +356,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_vfork:
#endif
default:
-@@ -477,7 +477,7 @@ bool SyscallSets::IsAllowedFutex(int sysno) {
+@@ -477,7 +477,7 @@
bool SyscallSets::IsAllowedEpoll(int sysno) {
switch (sysno) {
@@ -280,7 +365,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_epoll_create:
case __NR_epoll_wait:
#endif
-@@ -499,7 +499,7 @@ bool SyscallSets::IsAllowedEpoll(int sysno) {
+@@ -499,7 +499,7 @@
bool SyscallSets::IsDeniedGetOrModifySocket(int sysno) {
switch (sysno) {
#if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
@@ -289,7 +374,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_accept:
case __NR_accept4:
case __NR_bind:
-@@ -553,7 +553,7 @@ bool SyscallSets::IsAllowedAddressSpaceAccess(int sysno) {
+@@ -553,7 +553,7 @@
case __NR_mincore:
case __NR_mlockall:
#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
@@ -298,7 +383,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_mmap:
#endif
#if defined(__i386__) || defined(__arm__) || \
-@@ -586,7 +586,7 @@ bool SyscallSets::IsAllowedGeneralIo(int sysno) {
+@@ -586,7 +586,7 @@
(defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
case __NR__llseek:
#endif
@@ -307,7 +392,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_poll:
#endif
case __NR_ppoll:
-@@ -607,7 +607,7 @@ bool SyscallSets::IsAllowedGeneralIo(int sysno) {
+@@ -607,7 +607,7 @@
case __NR_recv:
#endif
#if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
@@ -316,7 +401,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_recvfrom: // Could specify source.
case __NR_recvmsg: // Could specify source.
#endif
-@@ -622,7 +622,7 @@ bool SyscallSets::IsAllowedGeneralIo(int sysno) {
+@@ -622,7 +622,7 @@
case __NR_send:
#endif
#if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
@@ -325,7 +410,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_sendmsg: // Could specify destination.
case __NR_sendto: // Could specify destination.
#endif
-@@ -671,7 +671,7 @@ bool SyscallSets::IsSeccomp(int sysno) {
+@@ -671,7 +671,7 @@
bool SyscallSets::IsAllowedBasicScheduler(int sysno) {
switch (sysno) {
case __NR_sched_yield:
@@ -334,7 +419,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_pause:
#endif
case __NR_nanosleep:
-@@ -755,7 +755,7 @@ bool SyscallSets::IsNuma(int sysno) {
+@@ -755,7 +755,7 @@
case __NR_getcpu:
case __NR_mbind:
#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
@@ -343,7 +428,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_migrate_pages:
#endif
case __NR_move_pages:
-@@ -790,7 +790,7 @@ bool SyscallSets::IsGlobalProcessEnvironment(int sysno) {
+@@ -790,7 +790,7 @@
switch (sysno) {
case __NR_acct: // Privileged.
#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
@@ -352,7 +437,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_getrlimit:
#endif
#if defined(__i386__) || defined(__arm__)
-@@ -825,7 +825,7 @@ bool SyscallSets::IsDebug(int sysno) {
+@@ -825,7 +825,7 @@
bool SyscallSets::IsGlobalSystemStatus(int sysno) {
switch (sysno) {
@@ -361,7 +446,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR__sysctl:
case __NR_sysfs:
#endif
-@@ -843,7 +843,7 @@ bool SyscallSets::IsGlobalSystemStatus(int sysno) {
+@@ -843,7 +843,7 @@
bool SyscallSets::IsEventFd(int sysno) {
switch (sysno) {
@@ -370,47 +455,40 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_eventfd:
#endif
case __NR_eventfd2:
-@@ -895,7 +895,8 @@ bool SyscallSets::IsKeyManagement(int sysno) {
+@@ -895,6 +895,7 @@
}
#if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || \
-- (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS))
-+ (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS)) || \
-+ defined(__riscv)
++ defined(__riscv) || \
+ (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS))
bool SyscallSets::IsSystemVSemaphores(int sysno) {
switch (sysno) {
- case __NR_semctl:
-@@ -915,7 +916,8 @@ bool SyscallSets::IsSystemVSemaphores(int sysno) {
+@@ -914,7 +915,7 @@
+ #endif
#if defined(__i386__) || defined(__x86_64__) || defined(__arm__) || \
- defined(__aarch64__) || \
-- (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS))
-+ (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS)) || \
-+ defined(__riscv)
+- defined(__aarch64__) || \
++ defined(__aarch64__) || defined(__riscv) || \
+ (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS))
// These give a lot of ambient authority and bypass the setuid sandbox.
bool SyscallSets::IsSystemVSharedMemory(int sysno) {
- switch (sysno) {
-@@ -931,7 +933,8 @@ bool SyscallSets::IsSystemVSharedMemory(int sysno) {
+@@ -931,6 +932,7 @@
#endif
#if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || \
-- (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS))
-+ (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS)) || \
-+ defined(__riscv)
++ defined(__riscv) || \
+ (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS))
bool SyscallSets::IsSystemVMessageQueue(int sysno) {
switch (sysno) {
- case __NR_msgctl:
-@@ -962,7 +965,8 @@ bool SyscallSets::IsSystemVIpc(int sysno) {
+@@ -962,6 +964,7 @@
bool SyscallSets::IsAnySystemV(int sysno) {
#if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || \
-- (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS))
-+ (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS)) || \
-+ defined(__riscv)
++ defined(__riscv) || \
+ (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS))
return IsSystemVMessageQueue(sysno) || IsSystemVSemaphores(sysno) ||
IsSystemVSharedMemory(sysno);
- #elif defined(__i386__) || \
-@@ -999,7 +1003,7 @@ bool SyscallSets::IsAdvancedScheduler(int sysno) {
+@@ -999,7 +1002,7 @@
bool SyscallSets::IsInotify(int sysno) {
switch (sysno) {
case __NR_inotify_add_watch:
@@ -419,7 +497,7 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_inotify_init:
#endif
case __NR_inotify_init1:
-@@ -1137,7 +1141,7 @@ bool SyscallSets::IsMisc(int sysno) {
+@@ -1134,7 +1137,7 @@
#if defined(__x86_64__)
case __NR_tuxcall:
#endif
@@ -428,13 +506,14 @@ index 27ea264070dcd..8fc2d3c354adb 100644
case __NR_vserver:
#endif
return true;
-@@ -1196,6 +1200,17 @@ bool SyscallSets::IsMipsMisc(int sysno) {
+@@ -1193,6 +1196,18 @@
}
#endif // defined(__mips__)
+#if defined(__riscv)
+bool SyscallSets::IsRiscvPrivate(int sysno) {
+ switch (sysno) {
++ case __NR_riscv_hwprobe:
+ case __NR_riscv_flush_icache:
+ return true;
+ default:
@@ -447,10 +526,10 @@ index 27ea264070dcd..8fc2d3c354adb 100644
switch (sysno) {
case __NR_getitimer:
diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h b/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
-index 9be7b03ec4377..41b3605dce15d 100644
+index 9be7b03..41b3605 100644
--- a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
+++ b/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
-@@ -52,7 +52,7 @@ class SANDBOX_EXPORT SyscallSets {
+@@ -52,7 +52,7 @@
#endif
#if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
@@ -459,7 +538,7 @@ index 9be7b03ec4377..41b3605dce15d 100644
static bool IsNetworkSocketInformation(int sysno);
#endif
-@@ -79,18 +79,21 @@ class SANDBOX_EXPORT SyscallSets {
+@@ -79,18 +79,21 @@
static bool IsAsyncIo(int sysno);
static bool IsKeyManagement(int sysno);
#if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || \
@@ -484,7 +563,7 @@ index 9be7b03ec4377..41b3605dce15d 100644
static bool IsSystemVMessageQueue(int sysno);
#endif
-@@ -117,6 +120,9 @@ class SANDBOX_EXPORT SyscallSets {
+@@ -117,6 +120,9 @@
static bool IsMipsPrivate(int sysno);
static bool IsMipsMisc(int sysno);
#endif // defined(__mips__)
@@ -495,10 +574,10 @@ index 9be7b03ec4377..41b3605dce15d 100644
};
diff --git a/sandbox/linux/seccomp-bpf/syscall.cc b/sandbox/linux/seccomp-bpf/syscall.cc
-index 02cbb047c1558..57da8c1754f46 100644
+index 02cbb04..9eb97f27 100644
--- a/sandbox/linux/seccomp-bpf/syscall.cc
+++ b/sandbox/linux/seccomp-bpf/syscall.cc
-@@ -18,7 +18,7 @@ namespace sandbox {
+@@ -18,7 +18,7 @@
namespace {
#if defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARM_FAMILY) || \
@@ -507,7 +586,7 @@ index 02cbb047c1558..57da8c1754f46 100644
// Number that's not currently used by any Linux kernel ABIs.
const int kInvalidSyscallNumber = 0x351d3;
#else
-@@ -308,6 +308,28 @@ asm(// We need to be able to tell the kernel exactly where we made a
+@@ -308,6 +308,28 @@
"2:ret\n"
".cfi_endproc\n"
".size SyscallAsm, .-SyscallAsm\n"
@@ -518,16 +597,16 @@ index 02cbb047c1558..57da8c1754f46 100644
+ "SyscallAsm:\n"
+ ".cfi_startproc\n"
+ "bgez a0,1f\n"
-+ "la a0,2f\n"
++ "lla a0,2f\n"
+ "j 2f\n"
+ "1:mv a7, a0\n"
-+ "ld a0, (t0)\n"
-+ "ld a1, 8(t0)\n"
-+ "ld a2, 16(t0)\n"
-+ "ld a3, 24(t0)\n"
-+ "ld a4, 32(t0)\n"
-+ "ld a5, 40(t0)\n"
-+ "ld a6, 48(t0)\n"
++ "ld a0, (a1)\n"
++ "ld a2, 16(a1)\n"
++ "ld a3, 24(a1)\n"
++ "ld a4, 32(a1)\n"
++ "ld a5, 40(a1)\n"
++ "ld a6, 48(a1)\n"
++ "ld a1, 8(a1)\n"
+ // Enter the kernel
+ "scall\n"
+ "2:ret\n"
@@ -536,30 +615,65 @@ index 02cbb047c1558..57da8c1754f46 100644
#endif
); // asm
-@@ -425,6 +447,18 @@ intptr_t Syscall::Call(int nr,
+@@ -319,6 +341,10 @@
+ extern "C" {
+ intptr_t SyscallAsm(intptr_t nr, const intptr_t args[8]);
+ }
++#elif defined(__riscv)
++extern "C" {
++intptr_t SyscallAsm(intptr_t nr, const intptr_t args[7]);
++}
+ #endif
+
+ } // namespace
+@@ -351,6 +377,10 @@
+ // where that makes sense.
+ #if defined(__mips__)
+ const intptr_t args[8] = {p0, p1, p2, p3, p4, p5, p6, p7};
++#elif defined(__riscv)
++ DCHECK_EQ(p7, 0) << " Support for syscalls with more than seven arguments "
++ "not added for this architecture";
++ const intptr_t args[7] = {p0, p1, p2, p3, p4, p5, p6};
+ #else
+ DCHECK_EQ(p6, 0) << " Support for syscalls with more than six arguments not "
+ "added for this architecture";
+@@ -425,6 +455,8 @@
ret = inout;
}
+#elif defined(__riscv)
-+ intptr_t ret;
-+ {
-+ register intptr_t inout __asm__("a0") = nr;
-+ register const intptr_t* data __asm__("t0") = args;
-+ asm volatile("jal SyscallAsm\n"
-+ : "=r"(inout)
-+ : "0"(inout), "r"(data)
-+ : "memory", "a1", "a2", "a3", "a4", "a5", "a6", "a7");
-+ ret = inout;
-+ }
-+
++ intptr_t ret = SyscallAsm(nr, args);
#else
#error "Unimplemented architecture"
#endif
+diff --git a/sandbox/linux/seccomp-bpf/trap.cc b/sandbox/linux/seccomp-bpf/trap.cc
+index d466e62..a5ed98b7 100644
+--- a/sandbox/linux/seccomp-bpf/trap.cc
++++ b/sandbox/linux/seccomp-bpf/trap.cc
+@@ -216,6 +216,18 @@
+ SECCOMP_PARM6(ctx),
+ SECCOMP_PARM7(ctx),
+ SECCOMP_PARM8(ctx));
++#elif defined(__riscv)
++ // RISC-V supports up to seven arguments for syscall.
++ // However, seccomp bpf can filter only up to six arguments, so using seven
++ // arguments has sense only when using UnsafeTrap() handler.
++ rc = Syscall::Call(SECCOMP_SYSCALL(ctx),
++ SECCOMP_PARM1(ctx),
++ SECCOMP_PARM2(ctx),
++ SECCOMP_PARM3(ctx),
++ SECCOMP_PARM4(ctx),
++ SECCOMP_PARM5(ctx),
++ SECCOMP_PARM6(ctx),
++ SECCOMP_PARM7(ctx));
+ #else
+ rc = Syscall::Call(SECCOMP_SYSCALL(ctx),
+ SECCOMP_PARM1(ctx),
diff --git a/sandbox/linux/services/credentials.cc b/sandbox/linux/services/credentials.cc
-index e284c59d239ae..5b5346a2778bc 100644
+index a33597c..d4180ac 100644
--- a/sandbox/linux/services/credentials.cc
+++ b/sandbox/linux/services/credentials.cc
-@@ -80,7 +80,7 @@ bool ChrootToSafeEmptyDir() {
+@@ -80,7 +80,7 @@
pid_t pid = -1;
alignas(16) char stack_buf[PTHREAD_STACK_MIN];
#if defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARM_FAMILY) || \
@@ -569,10 +683,10 @@ index e284c59d239ae..5b5346a2778bc 100644
void* stack = stack_buf + sizeof(stack_buf);
#else
diff --git a/sandbox/linux/services/syscall_wrappers.cc b/sandbox/linux/services/syscall_wrappers.cc
-index 7650e983b3802..bb4bd33236381 100644
+index 7650e98..bb4bd332 100644
--- a/sandbox/linux/services/syscall_wrappers.cc
+++ b/sandbox/linux/services/syscall_wrappers.cc
-@@ -61,7 +61,7 @@ long sys_clone(unsigned long flags,
+@@ -61,7 +61,7 @@
#if defined(ARCH_CPU_X86_64)
return syscall(__NR_clone, flags, child_stack, ptid, ctid, tls);
#elif defined(ARCH_CPU_X86) || defined(ARCH_CPU_ARM_FAMILY) || \
@@ -582,10 +696,10 @@ index 7650e983b3802..bb4bd33236381 100644
return syscall(__NR_clone, flags, child_stack, ptid, tls, ctid);
#endif
diff --git a/sandbox/linux/syscall_broker/broker_process.cc b/sandbox/linux/syscall_broker/broker_process.cc
-index a55b548a8ec75..39279b947828e 100644
+index c6c1117..779065a 100644
--- a/sandbox/linux/syscall_broker/broker_process.cc
+++ b/sandbox/linux/syscall_broker/broker_process.cc
-@@ -122,44 +122,46 @@ bool BrokerProcess::IsSyscallBrokerable(int sysno, bool fast_check) const {
+@@ -122,44 +122,46 @@
// and are default disabled in Android. So, we should refuse to broker them
// to be consistent with the platform's restrictions.
switch (sysno) {
@@ -639,7 +753,7 @@ index a55b548a8ec75..39279b947828e 100644
case __NR_stat:
case __NR_lstat:
#endif
-@@ -169,7 +171,7 @@ bool BrokerProcess::IsSyscallBrokerable(int sysno, bool fast_check) const {
+@@ -169,7 +171,7 @@
#if defined(__NR_fstatat64)
case __NR_fstatat64:
#endif
@@ -648,7 +762,7 @@ index a55b548a8ec75..39279b947828e 100644
case __NR_newfstatat:
#endif
return !fast_check || policy_->allowed_command_set.test(COMMAND_STAT);
-@@ -184,7 +186,7 @@ bool BrokerProcess::IsSyscallBrokerable(int sysno, bool fast_check) const {
+@@ -184,7 +186,7 @@
return !fast_check || policy_->allowed_command_set.test(COMMAND_STAT);
#endif
@@ -658,7 +772,7 @@ index a55b548a8ec75..39279b947828e 100644
return !fast_check || policy_->allowed_command_set.test(COMMAND_UNLINK);
#endif
diff --git a/sandbox/linux/system_headers/linux_seccomp.h b/sandbox/linux/system_headers/linux_seccomp.h
-index 8690a96eb01b1..dec2afc744985 100644
+index 8690a96..dec2afc7 100644
--- a/sandbox/linux/system_headers/linux_seccomp.h
+++ b/sandbox/linux/system_headers/linux_seccomp.h
@@ -39,6 +39,10 @@
@@ -684,7 +798,7 @@ index 8690a96eb01b1..dec2afc744985 100644
#ifndef PR_SET_SECCOMP
#define PR_SET_SECCOMP 22
diff --git a/sandbox/linux/system_headers/linux_signal.h b/sandbox/linux/system_headers/linux_signal.h
-index 69ccaf1081578..2ffe30973cd32 100644
+index 69ccaf1..2ffe3097 100644
--- a/sandbox/linux/system_headers/linux_signal.h
+++ b/sandbox/linux/system_headers/linux_signal.h
@@ -13,7 +13,7 @@
@@ -697,10 +811,10 @@ index 69ccaf1081578..2ffe30973cd32 100644
#define LINUX_SIGHUP 1
#define LINUX_SIGINT 2
diff --git a/sandbox/linux/system_headers/linux_stat.h b/sandbox/linux/system_headers/linux_stat.h
-index 3aae8cbced775..74977adb53caf 100644
+index 3aae8cb..74977adb 100644
--- a/sandbox/linux/system_headers/linux_stat.h
+++ b/sandbox/linux/system_headers/linux_stat.h
-@@ -150,7 +150,7 @@ struct kernel_stat {
+@@ -150,7 +150,7 @@
int st_blocks;
int st_pad4[14];
};
@@ -710,7 +824,7 @@ index 3aae8cbced775..74977adb53caf 100644
unsigned long st_dev;
unsigned long st_ino;
diff --git a/sandbox/linux/system_headers/linux_syscalls.h b/sandbox/linux/system_headers/linux_syscalls.h
-index 438147b4018b6..d6de8c1cb2340 100644
+index 438147b..d6de8c1 100644
--- a/sandbox/linux/system_headers/linux_syscalls.h
+++ b/sandbox/linux/system_headers/linux_syscalls.h
@@ -35,5 +35,9 @@
@@ -725,10 +839,10 @@ index 438147b4018b6..d6de8c1cb2340 100644
diff --git a/sandbox/linux/system_headers/riscv64_linux_syscalls.h b/sandbox/linux/system_headers/riscv64_linux_syscalls.h
new file mode 100644
-index 0000000000000..822f660dc5086
+index 0000000..50e043d0
--- /dev/null
+++ b/sandbox/linux/system_headers/riscv64_linux_syscalls.h
-@@ -0,0 +1,1222 @@
+@@ -0,0 +1,1226 @@
+// Copyright 2014 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
@@ -1714,6 +1828,10 @@ index 0000000000000..822f660dc5086
+#define __NR_recvmmsg 243
+#endif
+
++#if !defined(__NR_riscv_hwprobe)
++#define __NR_riscv_hwprobe 258
++#endif
++
+#if !defined(__NR_riscv_flush_icache)
+#define __NR_riscv_flush_icache 259
+#endif
@@ -1951,11 +2069,24 @@ index 0000000000000..822f660dc5086
+#endif
+
+#endif // SANDBOX_LINUX_SYSTEM_HEADERS_RISCV64_LINUX_SYSCALLS_H_
+diff --git a/sandbox/policy/linux/bpf_cdm_policy_linux.cc b/sandbox/policy/linux/bpf_cdm_policy_linux.cc
+index 433720f..482ce1d 100644
+--- a/sandbox/policy/linux/bpf_cdm_policy_linux.cc
++++ b/sandbox/policy/linux/bpf_cdm_policy_linux.cc
+@@ -33,7 +33,7 @@
+ case __NR_ftruncate:
+ case __NR_fallocate:
+ #if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
+- defined(__aarch64__)
++ defined(__aarch64__) || defined(__riscv)
+ case __NR_getrlimit:
+ #endif
+ #if defined(__i386__) || defined(__arm__)
diff --git a/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc b/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
-index df2567f74981f..41e158a292369 100644
+index df2567f..41e158a 100644
--- a/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
+++ b/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
-@@ -38,7 +38,7 @@ ResultExpr CrosAmdGpuProcessPolicy::EvaluateSyscall(int sysno) const {
+@@ -38,7 +38,7 @@
case __NR_sched_setscheduler:
case __NR_sysinfo:
case __NR_uname:
@@ -1965,10 +2096,10 @@ index df2567f74981f..41e158a292369 100644
case __NR_stat:
#endif
diff --git a/sandbox/policy/linux/bpf_gpu_policy_linux.cc b/sandbox/policy/linux/bpf_gpu_policy_linux.cc
-index 35ccbb7a7f82b..65a0587e25af5 100644
+index 35ccbb7..65a0587 100644
--- a/sandbox/policy/linux/bpf_gpu_policy_linux.cc
+++ b/sandbox/policy/linux/bpf_gpu_policy_linux.cc
-@@ -73,7 +73,7 @@ ResultExpr GpuProcessPolicy::EvaluateSyscall(int sysno) const {
+@@ -73,7 +73,7 @@
(defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
case __NR_ftruncate64:
#endif
@@ -1978,10 +2109,10 @@ index 35ccbb7a7f82b..65a0587e25af5 100644
#endif
case __NR_getdents64:
diff --git a/sandbox/policy/linux/bpf_network_policy_linux.cc b/sandbox/policy/linux/bpf_network_policy_linux.cc
-index 98e738a7e38be..b72914eafc775 100644
+index e5168ff0..3e6f821 100644
--- a/sandbox/policy/linux/bpf_network_policy_linux.cc
+++ b/sandbox/policy/linux/bpf_network_policy_linux.cc
-@@ -255,7 +255,7 @@ ResultExpr NetworkProcessPolicy::EvaluateSyscall(int sysno) const {
+@@ -260,7 +260,7 @@
case __NR_fdatasync:
case __NR_fsync:
case __NR_mremap:
@@ -1990,6 +2121,56 @@ index 98e738a7e38be..b72914eafc775 100644
case __NR_getdents:
#endif
case __NR_getdents64:
---
-2.41.0
+diff --git a/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc b/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
+index bff338a..36acee52 100644
+--- a/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
++++ b/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
+@@ -33,7 +33,7 @@
+ case __NR_fdatasync:
+ case __NR_fsync:
+ #if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
+- defined(__aarch64__)
++ defined(__aarch64__) || defined (__riscv)
+ case __NR_getrlimit:
+ #endif
+ #if defined(__i386__) || defined(__arm__)
+diff --git a/sandbox/policy/linux/bpf_renderer_policy_linux.cc b/sandbox/policy/linux/bpf_renderer_policy_linux.cc
+index 0555a85..8f8907f 100644
+--- a/sandbox/policy/linux/bpf_renderer_policy_linux.cc
++++ b/sandbox/policy/linux/bpf_renderer_policy_linux.cc
+@@ -82,7 +82,7 @@
+ case __NR_ftruncate64:
+ #endif
+ #if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
+- defined(__aarch64__)
++ defined(__aarch64__) || defined(__riscv)
+ case __NR_getrlimit:
+ case __NR_setrlimit:
+ // We allow setrlimit to dynamically adjust the address space limit as
+diff --git a/sandbox/policy/linux/bpf_service_policy_linux.cc b/sandbox/policy/linux/bpf_service_policy_linux.cc
+index 32754e6..3f42eabb 100644
+--- a/sandbox/policy/linux/bpf_service_policy_linux.cc
++++ b/sandbox/policy/linux/bpf_service_policy_linux.cc
+@@ -26,7 +26,7 @@
+ return RestrictIoctl();
+ // Allow the system calls below.
+ #if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
+- defined(__aarch64__)
++ defined(__aarch64__) || defined(__riscv)
+ case __NR_getrlimit:
+ #endif
+ #if defined(__i386__) || defined(__arm__)
+diff --git a/sandbox/policy/linux/bpf_utility_policy_linux.cc b/sandbox/policy/linux/bpf_utility_policy_linux.cc
+index e299ce99..ed110689 100644
+--- a/sandbox/policy/linux/bpf_utility_policy_linux.cc
++++ b/sandbox/policy/linux/bpf_utility_policy_linux.cc
+@@ -34,7 +34,7 @@
+ case __NR_fdatasync:
+ case __NR_fsync:
+ #if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
+- defined(__aarch64__)
++ defined(__aarch64__) || defined(__riscv)
+ case __NR_getrlimit:
+ #endif
+ #if defined(__i386__) || defined(__arm__)
diff --git a/www-client/chromium/files/09riscv.patch b/www-client/chromium/files/riscv.patch
similarity index 100%
rename from www-client/chromium/files/09riscv.patch
rename to www-client/chromium/files/riscv.patch
diff --git a/www-client/chromium/files/00swiftshader-MCDissassembler.patch b/www-client/chromium/files/swiftshader-MCDissassembler.patch
similarity index 100%
rename from www-client/chromium/files/00swiftshader-MCDissassembler.patch
rename to www-client/chromium/files/swiftshader-MCDissassembler.patch
diff --git a/www-client/chromium/files/00swiftshader-use-llvm16.patch b/www-client/chromium/files/swiftshader-use-llvm16.patch
similarity index 100%
rename from www-client/chromium/files/00swiftshader-use-llvm16.patch
rename to www-client/chromium/files/swiftshader-use-llvm16.patch
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] proj/riscv:master commit in: www-client/chromium/files/, www-client/chromium/
@ 2025-01-15 23:27 Jakov Smolić
0 siblings, 0 replies; 10+ messages in thread
From: Jakov Smolić @ 2025-01-15 23:27 UTC (permalink / raw
To: gentoo-commits
commit: a3497033fa3db7d2cce42faed6474c4cae0d782f
Author: Andrew Cameron <apcameron <AT> gmail <DOT> com>
AuthorDate: Sat Jan 4 11:28:23 2025 +0000
Commit: Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
CommitDate: Wed Jan 15 23:27:17 2025 +0000
URL: https://gitweb.gentoo.org/proj/riscv.git/commit/?id=a3497033
Update Chromium to 129.0.6668.100
Tested on my Visionfive 2
Signed-off-by: Andrew Cameron <apcameron <AT> gmail.com>
Closes: https://github.com/gentoo/riscv/pull/21
Signed-off-by: Jakov Smolić <jsmolic <AT> gentoo.org>
www-client/chromium/Manifest | 11 +-
www-client/chromium/chromium-128.0.6613.119.ebuild | 1467 ------
www-client/chromium/chromium-128.0.6613.137.ebuild | 1467 ------
...13.ebuild => chromium-129.0.6668.100-r1.ebuild} | 166 +-
.../chromium/files/Debian-fix-rust-linking.patch | 18 +-
...e-runtime_api_delegate-add-riscv64-define.patch | 33 +
...s-common-api-runtime.json-riscv64-support.patch | 36 +
www-client/chromium/files/riscv-cargo.patch | 32 +
www-client/chromium/files/riscv-ffmpeg.patch | 4812 ++------------------
www-client/chromium/files/riscv-misc.patch | 41 +
www-client/chromium/files/riscv-sandbox.patch | 443 +-
www-client/chromium/files/riscv.patch | 19 +-
12 files changed, 834 insertions(+), 7711 deletions(-)
diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
index 60692e8..9f92372 100644
--- a/www-client/chromium/Manifest
+++ b/www-client/chromium/Manifest
@@ -1,10 +1,7 @@
-DIST chromium-128-clang.tar.xz 51489372 BLAKE2B 352a585e3acf0f0685ab2eaeb13e847195119bc6e3694f7fc20eeabdb25821019187e52997618214ccb469766c2982f489c6bdc643a339c1cfbe3e5fb3a131d4 SHA512 bc448096975111ff6ff5a9f82a6acb2bb244e9c344a8e6ef8bcdee5a06d0004955f76f6566f01519da5cc2eae08a2df2dd0ac5afee38dbc2ba918e735f338422
-DIST chromium-128-rust.tar.xz 148907072 BLAKE2B 9b28d1eca65d3e62ef142f96d9b3371bb65c6778414e5b64f0ad02c4aace219974f1cb292c9a6d9c443e3ed4f61192248ccaf9b18079cbd5a5f5c3abfe79d485 SHA512 5469490b23656a83d6198a087ddb82dd342fd8a426b32193218f7174395053f2ec7aaced5c464b8b16cdbddc252f80a98ca2a4b88742d2b0c910f2d2bfa7e431
-DIST chromium-128.0.6613.113.tar.xz 6711639096 BLAKE2B 1719b97aa30584b1d997d5fa894d23ec5b8063f9fdb53b9a7cd760896634a71a9c547e6a65d1db3c5e6308233c39dcf09db3a78d52ef960313c2c7b4381e6a46 SHA512 57ecf8d5d741a9a3ba9bb1ffd1e75ee83c14a0c552657063fca9bd4e5eec82b5ccafe81e1cea26cbb29992ce418bdcce11794e7ba3f7a860648df270cb2cd2cf
-DIST chromium-128.0.6613.119.tar.xz 6718742128 BLAKE2B b47eb124c249bae074883cdf1e98eaddd2aae1b5575960fea68632bd4684a1a28f59b41894935b02609f75de60f44b61d418ee0065bf005272a066133dca2946 SHA512 a3a1411b21885ce0c29574355d52a1bfad84299fdc99daf191d70f911f191d482f0e4a3d181faa1a1a7b031727f482fd3d95b6d9e1280167c0610f731356d11f
-DIST chromium-128.0.6613.137.tar.xz 6724182764 BLAKE2B 9f4d77b058af1619a4a13beac31ea463bd3d02086c172fb074d510b3f1dcba284fb1fa9ac5883ade2c2855f851a22bcbd4503960b4a27bc5844f16ad81558aba SHA512 3be85d2270a70ce3779b57e5d011e45312c67607e9e7c7f7ef396c515e37fed767105dfe0cc1f76830b007cebc05662f5318750c656c8a9765a25fa62036df6e
-DIST chromium-patches-128.tar.bz2 5087 BLAKE2B b0321fb45390a282afeeeb8fb4d6014d6e6b708e6851235e0897ac77d524160b4d33476aa70532df45d0ccf233fee3b4028cd4d845667dc6a2a46ecebfeb6752 SHA512 978908d27dc6fc620209486a9ad7f73babde8710728960f44f2680445276516e59a85c08656af2663d9e197df45874f24a1f19f14a21798fbcf7c5a10bb19371
+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-profiler-0.2.tar 259952640 BLAKE2B 5e82389fce00b267280d633b26551231c558b80f0c92cd7d60271095a3503365ab673e7a46dc5f74f8a82db1f21262cb24dcc0531d954bab5fb3b175dab3394d SHA512 9fa89a5ab728419683e7495ae676567480987d68a2d589f2aa97bfcbcf123f3c8f97f8bca5f65e5e3f6e41475535add473ded83b9c7a33bb4746a9d05b298a6c
-DIST chromium_128.0.6613.119-1raptor0~deb12u1.debian.tar.xz 8673272 BLAKE2B 0ae1ead2b8d0ce196d5d16e132194da12d3dde3b43c270f794630c3427d38aaac6c6a289ac64b4748354e9d4d20ae8597076b64a4b7a7e1225c66a9f86e9f7ff SHA512 c896f8f07aa44cd6950375b36fe89fc2780ff9867e01feab71100c8551b22d3c89c5ba9e80cffbad22ff8575d20fc782b70969a51c68384fd8de62a09c4ffdcf
DIST chromium_128.0.6613.84-1raptor0~deb12u1.debian.tar.xz 8674292 BLAKE2B 74c8556f578231cd133ce3a11306ce38d32332a3db7b0f32a63df1806201933e69e9ff01e66d7ccef279f2134e0a69c89365d7a08a7a7e7d69816a188ae0b91c SHA512 b1b85bc99493676d466e648c00eb7e337efbcb197e9ed5ae6394133721db828583340df5ebfa45a3dccc72f400ad6ada637d400d8e2fae35c1322ca5e15dc10e
diff --git a/www-client/chromium/chromium-128.0.6613.119.ebuild b/www-client/chromium/chromium-128.0.6613.119.ebuild
deleted file mode 100644
index 687d896..0000000
--- a/www-client/chromium/chromium-128.0.6613.119.ebuild
+++ /dev/null
@@ -1,1467 +0,0 @@
-# Copyright 2009-2024 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.
-
-GN_MIN_VER=0.2165
-RUST_MIN_VER=1.78.0
-# chromium-tools/get-chromium-toolchain-strings.sh
-GOOGLE_CLANG_VER=llvmorg-19-init-14561-gecea8371-3000
-GOOGLE_RUST_VER=3cf924b934322fd7b514600a7dc84fc517515346-3
-
-: ${CHROMIUM_FORCE_GOOGLE_TOOLCHAIN=no}
-
-VIRTUALX_REQUIRED="pgo"
-
-CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- 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"
-
-# While prerelease llvm is actually used in the google build, until we have a
-# sane way to select 'rust built with this llvm slot' that isn't stable and testing
-# subslots we will have to restrict LLVM_COMPAT to stable and testing keywords.
-LLVM_COMPAT=( {17..18} )
-PYTHON_COMPAT=( python3_{11..13} )
-PYTHON_REQ_USE="xml(+)"
-
-inherit check-reqs chromium-2 desktop flag-o-matic llvm-utils ninja-utils pax-utils
-inherit python-any-r1 qmake-utils readme.gentoo-r1 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"
-PATCH_V="${PV%%\.*}"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- system-toolchain? (
- 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
- )
- 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
- )
- pgo? ( https://github.com/elkablo/chromium-profiler/releases/download/v0.2/chromium-profiler-0.2.tar )"
-
-LICENSE="BSD"
-SLOT="0/stable"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv"
-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 )"
-
-REQUIRED_USE="
- !headless? ( || ( X wayland ) )
- pgo? ( X !wayland )
- qt6? ( qt5 )
- screencast? ( wayland )
- ffmpeg-chromium? ( bindist proprietary-codecs )
-"
-
-COMMON_X_DEPEND="
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxshmfence:=
-"
-
-COMMON_SNAPSHOT_DEPEND="
- system-icu? ( >=dev-libs/icu-73.0:= )
- >=dev-libs/libxml2-2.12.4:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- dev-libs/libxslt:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-3:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- system-png? ( media-libs/libpng:=[-apng(-)] )
- system-zstd? ( >=app-arch/zstd-1.5.5:= )
- >=media-libs/libwebp-0.4.0:=
- 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:=
- pulseaudio? ( media-libs/libpulse:= )
- sys-apps/pciutils:=
- kerberos? ( virtual/krb5 )
- vaapi? ( >=media-libs/libva-2.7:=[X?,wayland?] )
- X? (
- x11-base/xorg-proto:=
- x11-libs/libX11:=
- x11-libs/libxcb:=
- x11-libs/libXext:=
- )
- x11-libs/libxkbcommon:=
- wayland? (
- dev-libs/libffi:=
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:= )
- )
- )
-"
-
-COMMON_DEPEND="
- ${COMMON_SNAPSHOT_DEPEND}
- app-arch/bzip2:=
- dev-libs/expat:=
- net-misc/curl[ssl]
- sys-apps/dbus:=
- media-libs/flac:=
- sys-libs/zlib:=[minizip]
- !headless? (
- X? ( ${COMMON_X_DEPEND} )
- >=app-accessibility/at-spi2-core-2.46.0:2
- media-libs/mesa:=[X?,wayland?]
- cups? ( >=net-print/cups-1.3.11:= )
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/pango:=
- qt5? (
- dev-qt/qtcore:5
- dev-qt/qtwidgets:5
- )
- qt6? ( dev-qt/qtbase:6[gui,widgets] )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- !headless? (
- || (
- x11-libs/gtk+:3[X?,wayland?]
- gui-libs/gtk:4[X?,wayland?]
- )
- qt5? ( dev-qt/qtgui:5[X?,wayland?] )
- qt6? ( dev-qt/qtbase:6[X?,wayland?] )
- )
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- bindist? (
- !ffmpeg-chromium? ( >=media-video/ffmpeg-6.1-r1:0/58.60.60[chromium] )
- ffmpeg-chromium? ( media-video/ffmpeg-chromium:${PV%%\.*} )
- )
-"
-DEPEND="${COMMON_DEPEND}
- !headless? (
- gtk4? ( gui-libs/gtk:4[X?,wayland?] )
- !gtk4? ( x11-libs/gtk+:3[X?,wayland?] )
- )
-"
-
-depend_clang_llvm_version() {
- echo "sys-devel/clang:$1"
- echo "sys-devel/llvm:$1"
- echo "=sys-devel/lld-$1*"
- echo "virtual/rust:0/llvm-${1}[profiler(-)]"
- echo "pgo? ( sys-libs/compiler-rt-sanitizers:${1}[profile] )"
-}
-
-# Parse LLVM_COMPAT and generate a usedep for each version
-depend_clang_llvm_versions() {
- if [[ ${#LLVM_COMPAT[@]} -eq 0 ]]; then
- depend_clang_llvm_version ${#LLVM_COMPAT[0]}
- else
- echo "|| ("
- for (( i=${#LLVM_COMPAT[@]}-1 ; i>=0 ; i-- )); do
- echo "("
- depend_clang_llvm_version ${LLVM_COMPAT[i]}
- echo ")"
- done
- echo ")"
- fi
-}
-
-BDEPEND="
- ${COMMON_SNAPSHOT_DEPEND}
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- !headless? (
- qt5? ( dev-qt/qtcore:5 )
- qt6? ( dev-qt/qtbase:6 )
- )
- system-toolchain? (
- $(depend_clang_llvm_versions)
- 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
- >=dev-util/gperf-3.0.3
- dev-vcs/git
- >=net-libs/nodejs-7.6.0[inspector]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
-"
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- python_has_version "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- # Check build requirements: bugs #471810, #541816, #914220
- # We're going to start doing maths here on the size of an unpacked source tarball,
- # this should make updates easier as chromium continues to balloon in size.
- local BASE_DISK=24
- local EXTRA_DISK=1
- local CHECKREQS_MEMORY="4G"
- tc-is-cross-compiler && EXTRA_DISK=2
- if tc-is-lto || use pgo; then
- CHECKREQS_MEMORY="9G"
- tc-is-cross-compiler && EXTRA_DISK=4
- use pgo && EXTRA_DISK=8
- fi
- if is-flagq '-g?(gdb)?([1-9])'; then
- if use custom-cflags; then
- EXTRA_DISK=13
- fi
- CHECKREQS_MEMORY="16G"
- fi
- CHECKREQS_DISK_BUILD="$((BASE_DISK + EXTRA_DISK))G"
- check-reqs_${EBUILD_PHASE_FUNC}
-}
-
-pkg_pretend() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- # The pre_build_checks are all about compilation resources, no need to run it for a binpkg
- pre_build_checks
- fi
-
- if use headless; then
- local headless_unused_flags=("cups" "kerberos" "pulseaudio" "qt5" "qt6" "vaapi" "wayland")
- for myiuse in ${headless_unused_flags[@]}; do
- use ${myiuse} && ewarn "Ignoring USE=${myiuse}, USE=headless is set."
- done
- fi
-
- if ! use bindist && use ffmpeg-chromium; then
- ewarn "Ignoring USE=ffmpeg-chromium, USE=bindist is not set."
- fi
-}
-
-# Chromium should build with any version of clang that we support
-# but we may need to pick the "best" one for a build (highest installed,
-# rust is built against it, etc.)
-# Check each slot in LLVM_COMPAT to see if clang/llvm/lld are available
-# and output the _highest_ slot that is actually available on a system.
-chromium_pick_llvm_slot() {
- # LLVM_COMPAT is always going to be oldest to newest (or one value)
- # let's flip it and check from newest to oldest and return the first one we find.
- local slot
- for (( i=${#LLVM_COMPAT[@]}-1 ; i>=0 ; i-- )); do
- slot=${LLVM_COMPAT[i]}
- if has_version "sys-devel/clang:${slot}" && \
- has_version "sys-devel/llvm:${slot}" && \
- has_version "sys-devel/lld:${slot}" && \
- has_version "virtual/rust:0/llvm-${slot}" && \
- ( ! use pgo || has_version "sys-libs/compiler-rt-sanitizers:${slot}" ) ; then
-
- echo "${slot}"
- return
- fi
- done
-
- die_msg="
-No suitable clang/llvm/lld slot found.
-Slots checked: ${LLVM_COMPAT[*]}.
-"
- die "${die_msg}"
-}
-
-# We need the rust version in src_configure and pkg_setup
-chromium_extract_rust_version() {
- [[ ${MERGE_TYPE} == binary ]] && return
- local rustc_version=( $(eselect --brief rust show 2>/dev/null) )
- rustc_version=${rustc_version[0]#rust-bin-}
- rustc_version=${rustc_version#rust-}
-
- [[ -z "${rustc_version}" ]] && die "Failed to determine rust version, check 'eselect rust' output"
-
- echo $rustc_version
-}
-
-pkg_setup() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- # 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
- # 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.
- 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
-
- # 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_SLOT=$(chromium_pick_llvm_slot)
- export LLVM_SLOT # used in src_configure for rust-y business
- AR=llvm-ar
- CPP="${CHOST}-clang++ -E"
- NM=llvm-nm
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
-
- if tc-is-cross-compiler; then
- use pgo && die "The pgo USE flag cannot be used when cross-compiling"
- CPP="${CBUILD}-clang++ -E"
- fi
-
- # The llvm-r1_pkg_setup we have at home.
- # We prepend the path _first_ to explicitly use the selected slot.
- llvm_prepend_path "${LLVM_SLOT}"
-
- llvm_fix_clang_version CC CPP CXX
- llvm_fix_tool_path ADDR2LINE AR AS LD NM OBJCOPY OBJDUMP RANLIB
- llvm_fix_tool_path READELF STRINGS STRIP
-
- # Set LLVM_CONFIG to help Meson (bug #907965) but only do it
- # for empty ESYSROOT (as a proxy for "are we cross-compiling?").
- if [[ -z ${ESYSROOT} ]] ; then
- llvm_fix_tool_path LLVM_CONFIG
- fi
-
- einfo "Using LLVM/Clang slot ${LLVM_SLOT} to build"
-
- local rustc_ver=$(chromium_extract_rust_version)
- if ver_test "${rustc_ver}" -lt "${RUST_MIN_VER}"; then
- eerror "Rust >=${RUST_MIN_VER} is required"
- eerror "Please run 'eselect rust' and select the correct rust version"
- die "Selected rust version is too old"
- else
- einfo "Using rust ${rustc_ver} to build"
- fi
-
- fi
- # 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"
- fi
- fi
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-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
-
- use pgo && unpack chromium-profiler-0.2.tar
-
- if use ppc64; then
- unpack chromium_${PATCHSET_PPC64}.debian.tar.xz
- unpack chromium-ppc64le-gentoo-patches-1.tar.xz
- fi
-}
-
-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" || die
-
- 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-127-updater-systemd.patch"
- "${FILESDIR}/swiftshader-MCDissassembler.patch"
- "${FILESDIR}/swiftshader-use-llvm16.patch"
- "${FILESDIR}/Debian-fix-rust-linking.patch"
- "${FILESDIR}/riscv-dav1d.patch"
- "${FILESDIR}/riscv-sandbox.patch"
- "${FILESDIR}/riscv-ffmpeg.patch"
- "${FILESDIR}/riscv.patch"
- "${FILESDIR}/cpuinfo.patch"
- "${FILESDIR}/riscv-v8.patch"
- )
-
- # 127: test deps are broken for ui/lens with system ICU "//third_party/icu:icuuc_public"
- sed -i '/source_set("unit_tests") {/,/}/d' \
- chrome/browser/ui/lens/BUILD.gn || die "Failed to remove bad test target"
- sed -i '/lens:unit_tests/d' chrome/test/BUILD.gn components/BUILD.gn \
- || die "Failed to remove dependencies on bad target"
-
- 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
- sed -i -e \
- "/if (is_clang && toolchain_has_rust) {/,+2d" \
- build/config/compiler/BUILD.gn || die "Failed to disable bundled compiler builtins"
- 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"
- 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" )
- fi
-
- default
-
- 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
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/xdg_user_dirs
- 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
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/ceval
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/volk
- third_party/anonymous_tokens
- third_party/apple_apsl
- third_party/axe-core
- third_party/bidimapper
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/content_analysis_sdk
- third_party/cpuinfo
- third_party/crabbyavif
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/d3
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/gn/webgpu-cts
- third_party/dawn/third_party/khronos
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/additional_readme_paths.json
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/csp_evaluator
- 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/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/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
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/ffmpeg
- third_party/fft2d
- third_party/flatbuffers
- third_party/fp16
- third_party/freetype
- third_party/fusejs
- third_party/fxdiv
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/highway
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/ipcz
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/lens_server_proto
- third_party/leveldatabase
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/SVT-AV1
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libc++
- third_party/libevent
- third_party/libgav1
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/liburlpattern
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/libzip
- third_party/lit
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/material_color_utilities
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/omnibox_proto
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/opus
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg
- third_party/pdfium/third_party/libtiff
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/perfetto/protos/third_party/simpleperf
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private_membership
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/pthreadpool
- third_party/puffin
- third_party/pyjson5
- third_party/pyyaml
- third_party/qcms
- third_party/re2
- third_party/rnnoise
- third_party/rust
- third_party/ruy
- third_party/s2cellid
- third_party/securemessage
- third_party/selenium-atoms
- third_party/sentencepiece
- third_party/sentencepiece/src/third_party/darts_clone
- third_party/shell-encryption
- third_party/simplejson
- third_party/six
- third_party/skia
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/snappy
- third_party/spirv-headers
- third_party/spirv-tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv
- third_party/swiftshader/third_party/SPIRV-Tools
- third_party/swiftshader/third_party/subzero
- third_party/tensorflow_models
- third_party/tensorflow-text
- third_party/tflite
- 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/ukey2
- third_party/unrar
- third_party/utf
- third_party/vulkan
- third_party/wayland
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/xnnpack
- third_party/zlib/google
- third_party/zxcvbn-cpp
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/utf8-decoder
- v8/src/third_party/valgrind
- v8/third_party/glibc
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
-
- # USE=system-*
- if ! use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng )
- fi
-
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
-
- if ! use system-png; then
- keeplibs+=( third_party/libpng )
- fi
-
- if ! use system-zstd; then
- 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 )
- fi
- if use riscv ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-16.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- # requires git and clang, bug #832803
- # Revert https://chromium.googlesource.com/chromium/src/+/b463d0f40b08b4e896e7f458d89ae58ce2a27165%5E%21/third_party/libvpx/generate_gni.sh
- # and https://chromium.googlesource.com/chromium/src/+/71ebcbce867dd31da5f8b405a28fcb0de0657d91%5E%21/third_party/libvpx/generate_gni.sh
- # since we're not in a git repo
- sed -i -e "s|^update_readme||g; s|clang-format|${EPREFIX}/bin/true|g; /^git -C/d; /git cl/d; /cd \$BASE_DIR\/\$LIBVPX_SRC_DIR/ign format --in-place \$BASE_DIR\/BUILD.gn\ngn format --in-place \$BASE_DIR\/libvpx_srcs.gni" \
- generate_gni.sh || die
- ./generate_gni.sh || die
- popd >/dev/null || die
-
- pushd third_party/ffmpeg >/dev/null || die
- cp libavcodec/ppc/h264dsp.c libavcodec/ppc/h264dsp_ppc.c || die
- cp libavcodec/ppc/h264qpel.c libavcodec/ppc/h264qpel_ppc.c || die
- popd >/dev/null || die
- fi
-
- einfo "Unbundling third-party libraries ..."
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- # 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
-}
-
-chromium_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- 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
-
- 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"
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- myconf_gn+=" custom_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
-
- # 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/\""
-
- # from get_llvm_prefix
- local prefix=${ESYSROOT}
- [[ ${1} == -b ]] && prefix=${BROOT}
- myconf_gn+=" bindgen_libclang_path=\"${prefix}/usr/lib/llvm/${LLVM_SLOT}/$(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
- local rustc_ver=$(chromium_extract_rust_version)
- if [[ "$(eselect --brief rust show 2>/dev/null)" == *"bin"* ]]; then
- myconf_gn+=" rust_sysroot_absolute=\"${EPREFIX}/opt/rust-bin-${rustc_ver}/\""
- else
- myconf_gn+=" rust_sysroot_absolute=\"${EPREFIX}/usr/lib/rust/${rustc_ver}/\""
- fi
- myconf_gn+=" rustc_version=\"${rustc_ver}\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=false"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libwebp
- libxml
- libxslt
- openh264
- zlib
- )
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-png; then
- gn_system_libraries+=( libpng )
- fi
- if use system-zstd; then
- gn_system_libraries+=( zstd )
- fi
-
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
-
- # Optional dependencies.
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
-
- if use headless; then
- myconf_gn+=" use_cups=false"
- myconf_gn+=" use_kerberos=false"
- myconf_gn+=" use_pulseaudio=false"
- myconf_gn+=" use_vaapi=false"
- myconf_gn+=" rtc_use_pipewire=false"
- else
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
- myconf_gn+=" gtk_version=$(usex gtk4 4 3)"
- fi
-
- # Allows distributions to link pulseaudio directly (DT_NEEDED) instead of
- # using dlopen. This helps with automated detection of ABI mismatches and
- # prevents silent errors.
- if use pulseaudio; then
- myconf_gn+=" link_pulseaudio=true"
- fi
-
- # Non-developer builds of Chromium (for example, non-Chrome browsers, or
- # Chromium builds provided by Linux distros) should disable the testing config
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # The sysroot is the oldest debian image that chromium supports, we don't need it
- myconf_gn+=" use_sysroot=false"
-
- # Use in-tree libc++ (buildtools/third_party/libc++ and buildtools/third_party/libc++abi)
- # instead of the system C++ library for C++ standard library support.
- # default: true, but let's be explicit (forced since 120 ; USE removed 127).
- myconf_gn+=" use_custom_libcxx=true"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- if use bindist ; then
- # proprietary_codecs just forces Chromium to say that it can use h264/aac,
- # the work is still done by ffmpeg. If this is set to no Chromium
- # won't be able to load the codec even if the library can handle it
- myconf_gn+=" proprietary_codecs=true"
- myconf_gn+=" ffmpeg_branding=\"Chrome\""
- # build ffmpeg as an external component (libffmpeg.so) that we can remove / substitute
- myconf_gn+=" is_component_ffmpeg=true"
- else
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
- fi
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- filter-flags "-g*"
-
- # Prevent libvpx/xnnpack build failures. Bug 530248, 544702, 546984, 853646.
- if [[ ${myarch} == amd64 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4 -mno-xop -mno-sse4a
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- elif [[ $myarch = riscv ]] ; then
- myconf_gn+=" target_cpu=\"riscv64\""
- ffmpeg_target_arch=riscv64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- myconf_gn+=" treat_warnings_as_errors=false"
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Disable external code space for V8 for ppc64. It is disabled for ppc64
- # by default, but cross-compiling on amd64 enables it again.
- if tc-is-cross-compiler; then
- if ! use amd64 && ! use arm64; then
- myconf_gn+=" v8_enable_external_code_space=false"
- fi
- fi
-
- # Only enabled for clang, but gcc has endian macros too
- myconf_gn+=" v8_use_libm_trig_functions=true"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- # We don't use the same clang version as upstream, and with -Werror
- # we need to make sure that we don't get superfluous warnings.
- append-flags -Wno-unknown-warning-option
- if tc-is-cross-compiler; then
- export BUILD_CXXFLAGS+=" -Wno-unknown-warning-option"
- export BUILD_CFLAGS+=" -Wno-unknown-warning-option"
- fi
-
- # Explicitly disable ICU data file support for system-icu/headless builds.
- if use system-icu || use headless; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Don't need nocompile checks and GN crashes with our config
- myconf_gn+=" enable_nocompile_tests=false"
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_xkbcommon=false use_gtk=false use_qt=false"
- myconf_gn+=" use_glib=false use_gio=false"
- myconf_gn+=" use_pangocairo=false use_alsa=false"
- myconf_gn+=" use_libpci=false use_udev=false"
- 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
- local cbuild_libdir=$(get_libdir)
- if tc-is-cross-compiler; then
- # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
- local cbuild_libdir=$($(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libxslt)
- cbuild_libdir=${cbuild_libdir:2}
- cbuild_libdir=${cbuild_libdir/% }
- fi
- if use qt5; then
- if tc-is-cross-compiler; then
- myconf_gn+=" moc_qt5_path=\"${EPREFIX}/${cbuild_libdir}/qt5/bin\""
- else
- myconf_gn+=" moc_qt5_path=\"$(qt5_get_bindir)\""
- fi
- fi
- if use qt6; then
- myconf_gn+=" moc_qt6_path=\"${EPREFIX}/usr/${cbuild_libdir}/qt6/libexec\""
- fi
-
- myconf_gn+=" use_qt=true"
- myconf_gn+=" use_qt6=$(usex qt6 true false)"
- else
- myconf_gn+=" use_qt=false"
- fi
- myconf_gn+=" ozone_platform_x11=$(usex X true false)"
- myconf_gn+=" ozone_platform_wayland=$(usex wayland true false)"
- myconf_gn+=" ozone_platform=$(usex wayland \"wayland\" \"x11\")"
- 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}"
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- if use official; then
- # 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
- myconf_gn+=" is_cfi=false"
- # Don't add symbols to build
- myconf_gn+=" symbol_level=0"
- fi
-
- if use pgo; then
- myconf_gn+=" chrome_pgo_phase=${1}"
- if [[ "$1" == "2" ]]; then
- myconf_gn+=" pgo_data_path=\"${2}\""
- fi
- else
- # Disable PGO
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- # skipping typecheck is only supported on amd64, bug #876157
- if ! use amd64; then
- myconf_gn+=" devtools_skip_typecheck=false"
- fi
-
- einfo "Configuring Chromium ..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_configure() {
- chromium_configure $(usex pgo 1 0)
-}
-
-chromium_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- # Build mksnapshot and pax-mark it.
- if use pax-kernel; then
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
- fi
-
- # 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
-
- 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
-# session isn't left running. If we return 1, virtx will call die().
-chromium_profile() {
- einfo "Profiling for PGO"
-
- pushd "${WORKDIR}/chromium-profiler-"* >/dev/null || return 1
-
- # Remove old profdata in case profiling was interrupted.
- rm -rf "${1}" || return 1
-
- if ! "${EPYTHON}" ./chromium_profiler.py \
- --chrome-executable "${S}/out/Release/chrome" \
- --chromedriver-executable "${S}/out/Release/chromedriver.unstripped" \
- --add-arg no-sandbox --add-arg disable-dev-shm-usage \
- --profile-output "${1}"; then
- eerror "Profiling failed"
- return 1
- fi
-
- popd >/dev/null || return 1
-}
-
-src_compile() {
- if use pgo; then
- local profdata
-
- profdata="${WORKDIR}/chromium.profdata"
-
- if [[ ! -e "${WORKDIR}/.pgo-profiled" ]]; then
- chromium_compile
- virtx chromium_profile "$profdata"
-
- touch "${WORKDIR}/.pgo-profiled" || die
- fi
-
- if [[ ! -e "${WORKDIR}/.pgo-phase-2-configured" ]]; then
- # Remove phase 1 output
- rm -r out/Release || die
-
- chromium_configure 2 "$profdata"
-
- touch "${WORKDIR}/.pgo-phase-2-configured" || die
- fi
-
- if [[ ! -e "${WORKDIR}/.pgo-phase-2-compiled" ]]; then
- chromium_compile
- touch "${WORKDIR}/.pgo-phase-2-compiled" || die
- fi
- else
- chromium_compile
- fi
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- rm -f out/Release/locales/*.pak.info || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build vk_swiftshader_icd.json; bug #827861
- sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
- third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
- out/Release/vk_swiftshader_icd.json || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use X && use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
-
- if use bindist; then
- # We built libffmpeg as a component library, but we can't distribute it
- # with proprietary codec support. Remove it and make a symlink to the requested
- # system library.
- rm -f out/Release/libffmpeg.so \
- || die "Failed to remove bundled libffmpeg.so (with proprietary codecs)"
- # symlink the libffmpeg.so from either ffmpeg-chromium or ffmpeg[chromium].
- einfo "Creating symlink to libffmpeg.so from $(usex ffmpeg-chromium ffmpeg-chromium ffmpeg[chromium])..."
- dosym ../chromium/libffmpeg.so$(usex ffmpeg-chromium .${PV%%\.*} "") \
- /usr/$(get_libdir)/chromium-browser/libffmpeg.so
- fi
-
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- # Install bundled xdg-utils, avoids installing X11 libraries with USE="-X wayland"
- doins out/Release/xdg-{settings,mime}
-
- if ! use system-icu && ! use headless; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/MEIPreload
-
- # Install vk_swiftshader_icd.json; bug #827861
- doins out/Release/vk_swiftshader_icd.json
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if ! use headless; then
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-features=WebRTCPipeWireCapturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
- if use gtk4; then
- elog "Chromium prefers GTK3 over GTK4 at runtime. To override this"
- elog "behavior you need to pass --gtk-version=4, e.g. by adding it"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
- if use qt5 && use qt6; then
- elog "Chromium automatically selects Qt5 or Qt6 based on your desktop"
- elog "environment. To override you need to pass --qt-version=5 or"
- elog "--qt-version=6, e.g. by adding it to CHROMIUM_FLAGS in"
- elog "/etc/chromium/default."
- fi
- fi
-
- if systemd_is_booted && ! [[ -f "/etc/machine-id" ]]; then
- ewarn "The lack of an '/etc/machine-id' file on this system booted with systemd"
- ewarn "indicates that the Gentoo handbook was not followed to completion."
- ewarn ""
- ewarn "Chromium is known to behave unpredictably with this system configuration;"
- ewarn "please complete the configuration of this system before logging any bugs."
- fi
-}
diff --git a/www-client/chromium/chromium-128.0.6613.137.ebuild b/www-client/chromium/chromium-128.0.6613.137.ebuild
deleted file mode 100644
index 26fe209..0000000
--- a/www-client/chromium/chromium-128.0.6613.137.ebuild
+++ /dev/null
@@ -1,1467 +0,0 @@
-# Copyright 2009-2024 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.
-
-GN_MIN_VER=0.2165
-RUST_MIN_VER=1.78.0
-# chromium-tools/get-chromium-toolchain-strings.sh
-GOOGLE_CLANG_VER=llvmorg-19-init-14561-gecea8371-3000
-GOOGLE_RUST_VER=3cf924b934322fd7b514600a7dc84fc517515346-3
-
-: ${CHROMIUM_FORCE_GOOGLE_TOOLCHAIN=no}
-
-VIRTUALX_REQUIRED="pgo"
-
-CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- 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"
-
-# While prerelease llvm is actually used in the google build, until we have a
-# sane way to select 'rust built with this llvm slot' that isn't stable and testing
-# subslots we will have to restrict LLVM_COMPAT to stable and testing keywords.
-LLVM_COMPAT=( {17..18} )
-PYTHON_COMPAT=( python3_{11..13} )
-PYTHON_REQ_USE="xml(+)"
-
-inherit check-reqs chromium-2 desktop flag-o-matic llvm-utils ninja-utils pax-utils
-inherit python-any-r1 qmake-utils readme.gentoo-r1 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.119-1raptor0~deb12u1"
-PATCH_V="${PV%%\.*}"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- system-toolchain? (
- 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
- )
- 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
- )
- pgo? ( https://github.com/elkablo/chromium-profiler/releases/download/v0.2/chromium-profiler-0.2.tar )"
-
-LICENSE="BSD"
-SLOT="0/stable"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv"
-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 )"
-
-REQUIRED_USE="
- !headless? ( || ( X wayland ) )
- pgo? ( X !wayland )
- qt6? ( qt5 )
- screencast? ( wayland )
- ffmpeg-chromium? ( bindist proprietary-codecs )
-"
-
-COMMON_X_DEPEND="
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxshmfence:=
-"
-
-COMMON_SNAPSHOT_DEPEND="
- system-icu? ( >=dev-libs/icu-73.0:= )
- >=dev-libs/libxml2-2.12.4:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- dev-libs/libxslt:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-3:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- system-png? ( media-libs/libpng:=[-apng(-)] )
- system-zstd? ( >=app-arch/zstd-1.5.5:= )
- >=media-libs/libwebp-0.4.0:=
- 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:=
- pulseaudio? ( media-libs/libpulse:= )
- sys-apps/pciutils:=
- kerberos? ( virtual/krb5 )
- vaapi? ( >=media-libs/libva-2.7:=[X?,wayland?] )
- X? (
- x11-base/xorg-proto:=
- x11-libs/libX11:=
- x11-libs/libxcb:=
- x11-libs/libXext:=
- )
- x11-libs/libxkbcommon:=
- wayland? (
- dev-libs/libffi:=
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:= )
- )
- )
-"
-
-COMMON_DEPEND="
- ${COMMON_SNAPSHOT_DEPEND}
- app-arch/bzip2:=
- dev-libs/expat:=
- net-misc/curl[ssl]
- sys-apps/dbus:=
- media-libs/flac:=
- sys-libs/zlib:=[minizip]
- !headless? (
- X? ( ${COMMON_X_DEPEND} )
- >=app-accessibility/at-spi2-core-2.46.0:2
- media-libs/mesa:=[X?,wayland?]
- cups? ( >=net-print/cups-1.3.11:= )
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/pango:=
- qt5? (
- dev-qt/qtcore:5
- dev-qt/qtwidgets:5
- )
- qt6? ( dev-qt/qtbase:6[gui,widgets] )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- !headless? (
- || (
- x11-libs/gtk+:3[X?,wayland?]
- gui-libs/gtk:4[X?,wayland?]
- )
- qt5? ( dev-qt/qtgui:5[X?,wayland?] )
- qt6? ( dev-qt/qtbase:6[X?,wayland?] )
- )
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- bindist? (
- !ffmpeg-chromium? ( >=media-video/ffmpeg-6.1-r1:0/58.60.60[chromium] )
- ffmpeg-chromium? ( media-video/ffmpeg-chromium:${PV%%\.*} )
- )
-"
-DEPEND="${COMMON_DEPEND}
- !headless? (
- gtk4? ( gui-libs/gtk:4[X?,wayland?] )
- !gtk4? ( x11-libs/gtk+:3[X?,wayland?] )
- )
-"
-
-depend_clang_llvm_version() {
- echo "sys-devel/clang:$1"
- echo "sys-devel/llvm:$1"
- echo "=sys-devel/lld-$1*"
- echo "virtual/rust:0/llvm-${1}[profiler(-)]"
- echo "pgo? ( sys-libs/compiler-rt-sanitizers:${1}[profile] )"
-}
-
-# Parse LLVM_COMPAT and generate a usedep for each version
-depend_clang_llvm_versions() {
- if [[ ${#LLVM_COMPAT[@]} -eq 0 ]]; then
- depend_clang_llvm_version ${#LLVM_COMPAT[0]}
- else
- echo "|| ("
- for (( i=${#LLVM_COMPAT[@]}-1 ; i>=0 ; i-- )); do
- echo "("
- depend_clang_llvm_version ${LLVM_COMPAT[i]}
- echo ")"
- done
- echo ")"
- fi
-}
-
-BDEPEND="
- ${COMMON_SNAPSHOT_DEPEND}
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- !headless? (
- qt5? ( dev-qt/qtcore:5 )
- qt6? ( dev-qt/qtbase:6 )
- )
- system-toolchain? (
- $(depend_clang_llvm_versions)
- 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
- >=dev-util/gperf-3.0.3
- dev-vcs/git
- >=net-libs/nodejs-7.6.0[inspector]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
-"
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- python_has_version "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- # Check build requirements: bugs #471810, #541816, #914220
- # We're going to start doing maths here on the size of an unpacked source tarball,
- # this should make updates easier as chromium continues to balloon in size.
- local BASE_DISK=24
- local EXTRA_DISK=1
- local CHECKREQS_MEMORY="4G"
- tc-is-cross-compiler && EXTRA_DISK=2
- if tc-is-lto || use pgo; then
- CHECKREQS_MEMORY="9G"
- tc-is-cross-compiler && EXTRA_DISK=4
- use pgo && EXTRA_DISK=8
- fi
- if is-flagq '-g?(gdb)?([1-9])'; then
- if use custom-cflags; then
- EXTRA_DISK=13
- fi
- CHECKREQS_MEMORY="16G"
- fi
- CHECKREQS_DISK_BUILD="$((BASE_DISK + EXTRA_DISK))G"
- check-reqs_${EBUILD_PHASE_FUNC}
-}
-
-pkg_pretend() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- # The pre_build_checks are all about compilation resources, no need to run it for a binpkg
- pre_build_checks
- fi
-
- if use headless; then
- local headless_unused_flags=("cups" "kerberos" "pulseaudio" "qt5" "qt6" "vaapi" "wayland")
- for myiuse in ${headless_unused_flags[@]}; do
- use ${myiuse} && ewarn "Ignoring USE=${myiuse}, USE=headless is set."
- done
- fi
-
- if ! use bindist && use ffmpeg-chromium; then
- ewarn "Ignoring USE=ffmpeg-chromium, USE=bindist is not set."
- fi
-}
-
-# Chromium should build with any version of clang that we support
-# but we may need to pick the "best" one for a build (highest installed,
-# rust is built against it, etc.)
-# Check each slot in LLVM_COMPAT to see if clang/llvm/lld are available
-# and output the _highest_ slot that is actually available on a system.
-chromium_pick_llvm_slot() {
- # LLVM_COMPAT is always going to be oldest to newest (or one value)
- # let's flip it and check from newest to oldest and return the first one we find.
- local slot
- for (( i=${#LLVM_COMPAT[@]}-1 ; i>=0 ; i-- )); do
- slot=${LLVM_COMPAT[i]}
- if has_version "sys-devel/clang:${slot}" && \
- has_version "sys-devel/llvm:${slot}" && \
- has_version "sys-devel/lld:${slot}" && \
- has_version "virtual/rust:0/llvm-${slot}" && \
- ( ! use pgo || has_version "sys-libs/compiler-rt-sanitizers:${slot}" ) ; then
-
- echo "${slot}"
- return
- fi
- done
-
- die_msg="
-No suitable clang/llvm/lld slot found.
-Slots checked: ${LLVM_COMPAT[*]}.
-"
- die "${die_msg}"
-}
-
-# We need the rust version in src_configure and pkg_setup
-chromium_extract_rust_version() {
- [[ ${MERGE_TYPE} == binary ]] && return
- local rustc_version=( $(eselect --brief rust show 2>/dev/null) )
- rustc_version=${rustc_version[0]#rust-bin-}
- rustc_version=${rustc_version#rust-}
-
- [[ -z "${rustc_version}" ]] && die "Failed to determine rust version, check 'eselect rust' output"
-
- echo $rustc_version
-}
-
-pkg_setup() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- # 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
- # 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.
- 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
-
- # 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_SLOT=$(chromium_pick_llvm_slot)
- export LLVM_SLOT # used in src_configure for rust-y business
- AR=llvm-ar
- CPP="${CHOST}-clang++ -E"
- NM=llvm-nm
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
-
- if tc-is-cross-compiler; then
- use pgo && die "The pgo USE flag cannot be used when cross-compiling"
- CPP="${CBUILD}-clang++ -E"
- fi
-
- # The llvm-r1_pkg_setup we have at home.
- # We prepend the path _first_ to explicitly use the selected slot.
- llvm_prepend_path "${LLVM_SLOT}"
-
- llvm_fix_clang_version CC CPP CXX
- llvm_fix_tool_path ADDR2LINE AR AS LD NM OBJCOPY OBJDUMP RANLIB
- llvm_fix_tool_path READELF STRINGS STRIP
-
- # Set LLVM_CONFIG to help Meson (bug #907965) but only do it
- # for empty ESYSROOT (as a proxy for "are we cross-compiling?").
- if [[ -z ${ESYSROOT} ]] ; then
- llvm_fix_tool_path LLVM_CONFIG
- fi
-
- einfo "Using LLVM/Clang slot ${LLVM_SLOT} to build"
-
- local rustc_ver=$(chromium_extract_rust_version)
- if ver_test "${rustc_ver}" -lt "${RUST_MIN_VER}"; then
- eerror "Rust >=${RUST_MIN_VER} is required"
- eerror "Please run 'eselect rust' and select the correct rust version"
- die "Selected rust version is too old"
- else
- einfo "Using rust ${rustc_ver} to build"
- fi
-
- fi
- # 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"
- fi
- fi
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-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
-
- use pgo && unpack chromium-profiler-0.2.tar
-
- if use ppc64; then
- unpack chromium_${PATCHSET_PPC64}.debian.tar.xz
- unpack chromium-ppc64le-gentoo-patches-1.tar.xz
- fi
-}
-
-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" || die
-
- 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-127-updater-systemd.patch"
- "${FILESDIR}/swiftshader-MCDissassembler.patch"
- "${FILESDIR}/swiftshader-use-llvm16.patch"
- "${FILESDIR}/Debian-fix-rust-linking.patch"
- "${FILESDIR}/riscv-dav1d.patch"
- "${FILESDIR}/riscv-sandbox.patch"
- "${FILESDIR}/riscv-ffmpeg.patch"
- "${FILESDIR}/riscv.patch"
- "${FILESDIR}/cpuinfo.patch"
- "${FILESDIR}/riscv-v8.patch"
- )
-
- # 127: test deps are broken for ui/lens with system ICU "//third_party/icu:icuuc_public"
- sed -i '/source_set("unit_tests") {/,/}/d' \
- chrome/browser/ui/lens/BUILD.gn || die "Failed to remove bad test target"
- sed -i '/lens:unit_tests/d' chrome/test/BUILD.gn components/BUILD.gn \
- || die "Failed to remove dependencies on bad target"
-
- 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
- sed -i -e \
- "/if (is_clang && toolchain_has_rust) {/,+2d" \
- build/config/compiler/BUILD.gn || die "Failed to disable bundled compiler builtins"
- 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"
- 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" )
- fi
-
- default
-
- 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
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/xdg_user_dirs
- 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
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/ceval
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/volk
- third_party/anonymous_tokens
- third_party/apple_apsl
- third_party/axe-core
- third_party/bidimapper
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/content_analysis_sdk
- third_party/cpuinfo
- third_party/crabbyavif
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/d3
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/gn/webgpu-cts
- third_party/dawn/third_party/khronos
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/additional_readme_paths.json
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/csp_evaluator
- 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/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/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
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/ffmpeg
- third_party/fft2d
- third_party/flatbuffers
- third_party/fp16
- third_party/freetype
- third_party/fusejs
- third_party/fxdiv
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/highway
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/ipcz
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/lens_server_proto
- third_party/leveldatabase
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/SVT-AV1
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libc++
- third_party/libevent
- third_party/libgav1
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/liburlpattern
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/libzip
- third_party/lit
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/material_color_utilities
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/omnibox_proto
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/opus
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg
- third_party/pdfium/third_party/libtiff
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/perfetto/protos/third_party/simpleperf
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private_membership
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/pthreadpool
- third_party/puffin
- third_party/pyjson5
- third_party/pyyaml
- third_party/qcms
- third_party/re2
- third_party/rnnoise
- third_party/rust
- third_party/ruy
- third_party/s2cellid
- third_party/securemessage
- third_party/selenium-atoms
- third_party/sentencepiece
- third_party/sentencepiece/src/third_party/darts_clone
- third_party/shell-encryption
- third_party/simplejson
- third_party/six
- third_party/skia
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/snappy
- third_party/spirv-headers
- third_party/spirv-tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv
- third_party/swiftshader/third_party/SPIRV-Tools
- third_party/swiftshader/third_party/subzero
- third_party/tensorflow_models
- third_party/tensorflow-text
- third_party/tflite
- 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/ukey2
- third_party/unrar
- third_party/utf
- third_party/vulkan
- third_party/wayland
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/xnnpack
- third_party/zlib/google
- third_party/zxcvbn-cpp
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/utf8-decoder
- v8/src/third_party/valgrind
- v8/third_party/glibc
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
-
- # USE=system-*
- if ! use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng )
- fi
-
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
-
- if ! use system-png; then
- keeplibs+=( third_party/libpng )
- fi
-
- if ! use system-zstd; then
- 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 )
- fi
- if use riscv ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-16.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- # requires git and clang, bug #832803
- # Revert https://chromium.googlesource.com/chromium/src/+/b463d0f40b08b4e896e7f458d89ae58ce2a27165%5E%21/third_party/libvpx/generate_gni.sh
- # and https://chromium.googlesource.com/chromium/src/+/71ebcbce867dd31da5f8b405a28fcb0de0657d91%5E%21/third_party/libvpx/generate_gni.sh
- # since we're not in a git repo
- sed -i -e "s|^update_readme||g; s|clang-format|${EPREFIX}/bin/true|g; /^git -C/d; /git cl/d; /cd \$BASE_DIR\/\$LIBVPX_SRC_DIR/ign format --in-place \$BASE_DIR\/BUILD.gn\ngn format --in-place \$BASE_DIR\/libvpx_srcs.gni" \
- generate_gni.sh || die
- ./generate_gni.sh || die
- popd >/dev/null || die
-
- pushd third_party/ffmpeg >/dev/null || die
- cp libavcodec/ppc/h264dsp.c libavcodec/ppc/h264dsp_ppc.c || die
- cp libavcodec/ppc/h264qpel.c libavcodec/ppc/h264qpel_ppc.c || die
- popd >/dev/null || die
- fi
-
- einfo "Unbundling third-party libraries ..."
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- # 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
-}
-
-chromium_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- 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
-
- 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"
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- myconf_gn+=" custom_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
-
- # 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/\""
-
- # from get_llvm_prefix
- local prefix=${ESYSROOT}
- [[ ${1} == -b ]] && prefix=${BROOT}
- myconf_gn+=" bindgen_libclang_path=\"${prefix}/usr/lib/llvm/${LLVM_SLOT}/$(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
- local rustc_ver=$(chromium_extract_rust_version)
- if [[ "$(eselect --brief rust show 2>/dev/null)" == *"bin"* ]]; then
- myconf_gn+=" rust_sysroot_absolute=\"${EPREFIX}/opt/rust-bin-${rustc_ver}/\""
- else
- myconf_gn+=" rust_sysroot_absolute=\"${EPREFIX}/usr/lib/rust/${rustc_ver}/\""
- fi
- myconf_gn+=" rustc_version=\"${rustc_ver}\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=false"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libwebp
- libxml
- libxslt
- openh264
- zlib
- )
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-png; then
- gn_system_libraries+=( libpng )
- fi
- if use system-zstd; then
- gn_system_libraries+=( zstd )
- fi
-
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
-
- # Optional dependencies.
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
-
- if use headless; then
- myconf_gn+=" use_cups=false"
- myconf_gn+=" use_kerberos=false"
- myconf_gn+=" use_pulseaudio=false"
- myconf_gn+=" use_vaapi=false"
- myconf_gn+=" rtc_use_pipewire=false"
- else
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
- myconf_gn+=" gtk_version=$(usex gtk4 4 3)"
- fi
-
- # Allows distributions to link pulseaudio directly (DT_NEEDED) instead of
- # using dlopen. This helps with automated detection of ABI mismatches and
- # prevents silent errors.
- if use pulseaudio; then
- myconf_gn+=" link_pulseaudio=true"
- fi
-
- # Non-developer builds of Chromium (for example, non-Chrome browsers, or
- # Chromium builds provided by Linux distros) should disable the testing config
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # The sysroot is the oldest debian image that chromium supports, we don't need it
- myconf_gn+=" use_sysroot=false"
-
- # Use in-tree libc++ (buildtools/third_party/libc++ and buildtools/third_party/libc++abi)
- # instead of the system C++ library for C++ standard library support.
- # default: true, but let's be explicit (forced since 120 ; USE removed 127).
- myconf_gn+=" use_custom_libcxx=true"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- if use bindist ; then
- # proprietary_codecs just forces Chromium to say that it can use h264/aac,
- # the work is still done by ffmpeg. If this is set to no Chromium
- # won't be able to load the codec even if the library can handle it
- myconf_gn+=" proprietary_codecs=true"
- myconf_gn+=" ffmpeg_branding=\"Chrome\""
- # build ffmpeg as an external component (libffmpeg.so) that we can remove / substitute
- myconf_gn+=" is_component_ffmpeg=true"
- else
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
- fi
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- filter-flags "-g*"
-
- # Prevent libvpx/xnnpack build failures. Bug 530248, 544702, 546984, 853646.
- if [[ ${myarch} == amd64 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4 -mno-xop -mno-sse4a
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- elif [[ $myarch = riscv ]] ; then
- myconf_gn+=" target_cpu=\"riscv64\""
- ffmpeg_target_arch=riscv64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- myconf_gn+=" treat_warnings_as_errors=false"
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Disable external code space for V8 for ppc64. It is disabled for ppc64
- # by default, but cross-compiling on amd64 enables it again.
- if tc-is-cross-compiler; then
- if ! use amd64 && ! use arm64; then
- myconf_gn+=" v8_enable_external_code_space=false"
- fi
- fi
-
- # Only enabled for clang, but gcc has endian macros too
- myconf_gn+=" v8_use_libm_trig_functions=true"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- # We don't use the same clang version as upstream, and with -Werror
- # we need to make sure that we don't get superfluous warnings.
- append-flags -Wno-unknown-warning-option
- if tc-is-cross-compiler; then
- export BUILD_CXXFLAGS+=" -Wno-unknown-warning-option"
- export BUILD_CFLAGS+=" -Wno-unknown-warning-option"
- fi
-
- # Explicitly disable ICU data file support for system-icu/headless builds.
- if use system-icu || use headless; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Don't need nocompile checks and GN crashes with our config
- myconf_gn+=" enable_nocompile_tests=false"
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_xkbcommon=false use_gtk=false use_qt=false"
- myconf_gn+=" use_glib=false use_gio=false"
- myconf_gn+=" use_pangocairo=false use_alsa=false"
- myconf_gn+=" use_libpci=false use_udev=false"
- 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
- local cbuild_libdir=$(get_libdir)
- if tc-is-cross-compiler; then
- # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
- local cbuild_libdir=$($(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libxslt)
- cbuild_libdir=${cbuild_libdir:2}
- cbuild_libdir=${cbuild_libdir/% }
- fi
- if use qt5; then
- if tc-is-cross-compiler; then
- myconf_gn+=" moc_qt5_path=\"${EPREFIX}/${cbuild_libdir}/qt5/bin\""
- else
- myconf_gn+=" moc_qt5_path=\"$(qt5_get_bindir)\""
- fi
- fi
- if use qt6; then
- myconf_gn+=" moc_qt6_path=\"${EPREFIX}/usr/${cbuild_libdir}/qt6/libexec\""
- fi
-
- myconf_gn+=" use_qt=true"
- myconf_gn+=" use_qt6=$(usex qt6 true false)"
- else
- myconf_gn+=" use_qt=false"
- fi
- myconf_gn+=" ozone_platform_x11=$(usex X true false)"
- myconf_gn+=" ozone_platform_wayland=$(usex wayland true false)"
- myconf_gn+=" ozone_platform=$(usex wayland \"wayland\" \"x11\")"
- 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}"
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- if use official; then
- # 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
- myconf_gn+=" is_cfi=false"
- # Don't add symbols to build
- myconf_gn+=" symbol_level=0"
- fi
-
- if use pgo; then
- myconf_gn+=" chrome_pgo_phase=${1}"
- if [[ "$1" == "2" ]]; then
- myconf_gn+=" pgo_data_path=\"${2}\""
- fi
- else
- # Disable PGO
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- # skipping typecheck is only supported on amd64, bug #876157
- if ! use amd64; then
- myconf_gn+=" devtools_skip_typecheck=false"
- fi
-
- einfo "Configuring Chromium ..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_configure() {
- chromium_configure $(usex pgo 1 0)
-}
-
-chromium_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- # Build mksnapshot and pax-mark it.
- if use pax-kernel; then
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
- fi
-
- # 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
-
- 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
-# session isn't left running. If we return 1, virtx will call die().
-chromium_profile() {
- einfo "Profiling for PGO"
-
- pushd "${WORKDIR}/chromium-profiler-"* >/dev/null || return 1
-
- # Remove old profdata in case profiling was interrupted.
- rm -rf "${1}" || return 1
-
- if ! "${EPYTHON}" ./chromium_profiler.py \
- --chrome-executable "${S}/out/Release/chrome" \
- --chromedriver-executable "${S}/out/Release/chromedriver.unstripped" \
- --add-arg no-sandbox --add-arg disable-dev-shm-usage \
- --profile-output "${1}"; then
- eerror "Profiling failed"
- return 1
- fi
-
- popd >/dev/null || return 1
-}
-
-src_compile() {
- if use pgo; then
- local profdata
-
- profdata="${WORKDIR}/chromium.profdata"
-
- if [[ ! -e "${WORKDIR}/.pgo-profiled" ]]; then
- chromium_compile
- virtx chromium_profile "$profdata"
-
- touch "${WORKDIR}/.pgo-profiled" || die
- fi
-
- if [[ ! -e "${WORKDIR}/.pgo-phase-2-configured" ]]; then
- # Remove phase 1 output
- rm -r out/Release || die
-
- chromium_configure 2 "$profdata"
-
- touch "${WORKDIR}/.pgo-phase-2-configured" || die
- fi
-
- if [[ ! -e "${WORKDIR}/.pgo-phase-2-compiled" ]]; then
- chromium_compile
- touch "${WORKDIR}/.pgo-phase-2-compiled" || die
- fi
- else
- chromium_compile
- fi
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- rm -f out/Release/locales/*.pak.info || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build vk_swiftshader_icd.json; bug #827861
- sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
- third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
- out/Release/vk_swiftshader_icd.json || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use X && use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
-
- if use bindist; then
- # We built libffmpeg as a component library, but we can't distribute it
- # with proprietary codec support. Remove it and make a symlink to the requested
- # system library.
- rm -f out/Release/libffmpeg.so \
- || die "Failed to remove bundled libffmpeg.so (with proprietary codecs)"
- # symlink the libffmpeg.so from either ffmpeg-chromium or ffmpeg[chromium].
- einfo "Creating symlink to libffmpeg.so from $(usex ffmpeg-chromium ffmpeg-chromium ffmpeg[chromium])..."
- dosym ../chromium/libffmpeg.so$(usex ffmpeg-chromium .${PV%%\.*} "") \
- /usr/$(get_libdir)/chromium-browser/libffmpeg.so
- fi
-
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- # Install bundled xdg-utils, avoids installing X11 libraries with USE="-X wayland"
- doins out/Release/xdg-{settings,mime}
-
- if ! use system-icu && ! use headless; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/MEIPreload
-
- # Install vk_swiftshader_icd.json; bug #827861
- doins out/Release/vk_swiftshader_icd.json
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if ! use headless; then
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-features=WebRTCPipeWireCapturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
- if use gtk4; then
- elog "Chromium prefers GTK3 over GTK4 at runtime. To override this"
- elog "behavior you need to pass --gtk-version=4, e.g. by adding it"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
- if use qt5 && use qt6; then
- elog "Chromium automatically selects Qt5 or Qt6 based on your desktop"
- elog "environment. To override you need to pass --qt-version=5 or"
- elog "--qt-version=6, e.g. by adding it to CHROMIUM_FLAGS in"
- elog "/etc/chromium/default."
- fi
- fi
-
- if systemd_is_booted && ! [[ -f "/etc/machine-id" ]]; then
- ewarn "The lack of an '/etc/machine-id' file on this system booted with systemd"
- ewarn "indicates that the Gentoo handbook was not followed to completion."
- ewarn ""
- ewarn "Chromium is known to behave unpredictably with this system configuration;"
- ewarn "please complete the configuration of this system before logging any bugs."
- fi
-}
diff --git a/www-client/chromium/chromium-128.0.6613.113.ebuild b/www-client/chromium/chromium-129.0.6668.100-r1.ebuild
similarity index 89%
rename from www-client/chromium/chromium-128.0.6613.113.ebuild
rename to www-client/chromium/chromium-129.0.6668.100-r1.ebuild
index c16e043..80d0a5d 100644
--- a/www-client/chromium/chromium-128.0.6613.113.ebuild
+++ b/www-client/chromium/chromium-129.0.6668.100-r1.ebuild
@@ -25,10 +25,9 @@ EAPI=8
# no reason not to. Todo: Re-enable USE=system-ffmpeg.
GN_MIN_VER=0.2165
-RUST_MIN_VER=1.78.0
# chromium-tools/get-chromium-toolchain-strings.sh
-GOOGLE_CLANG_VER=llvmorg-19-init-14561-gecea8371-3000
-GOOGLE_RUST_VER=3cf924b934322fd7b514600a7dc84fc517515346-3
+GOOGLE_CLANG_VER=llvmorg-20-init-1009-g7088a5ed-10
+GOOGLE_RUST_VER=595316b4006932405a63862d8fe65f71a6356293-5
: ${CHROMIUM_FORCE_GOOGLE_TOOLCHAIN=no}
@@ -38,15 +37,15 @@ 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"
-# While prerelease llvm is actually used in the google build, until we have a
-# sane way to select 'rust built with this llvm slot' that isn't stable and testing
-# subslots we will have to restrict LLVM_COMPAT to stable and testing keywords.
-LLVM_COMPAT=( {17..18} )
+LLVM_COMPAT=( 18 )
PYTHON_COMPAT=( python3_{11..13} )
PYTHON_REQ_USE="xml(+)"
+RUST_MIN_VER=1.78.0
+RUST_NEEDS_LLVM=1
+RUST_OPTIONAL=1
-inherit check-reqs chromium-2 desktop flag-o-matic llvm-utils ninja-utils pax-utils
-inherit python-any-r1 qmake-utils readme.gentoo-r1 systemd toolchain-funcs virtualx xdg-utils
+inherit check-reqs chromium-2 desktop flag-o-matic llvm-r1 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/"
@@ -59,7 +58,7 @@ SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}
!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
+ https://commondatastorage.googleapis.com/chromium-browser-clang/Linux_x64/rust-toolchain-${GOOGLE_RUST_VER}-${GOOGLE_CLANG_VER%???}.tar.xz
-> chromium-${PV%%\.*}-rust.tar.xz
)
ppc64? (
@@ -70,7 +69,7 @@ SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}
LICENSE="BSD"
SLOT="0/stable"
-KEYWORDS="amd64 arm64 ~ppc64 ~riscv"
+KEYWORDS="amd64 arm64 ~riscv"
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"
@@ -182,29 +181,6 @@ DEPEND="${COMMON_DEPEND}
)
"
-depend_clang_llvm_version() {
- echo "sys-devel/clang:$1"
- echo "sys-devel/llvm:$1"
- echo "=sys-devel/lld-$1*"
- echo "virtual/rust:0/llvm-${1}[profiler(-)]"
- echo "pgo? ( sys-libs/compiler-rt-sanitizers:${1}[profile] )"
-}
-
-# Parse LLVM_COMPAT and generate a usedep for each version
-depend_clang_llvm_versions() {
- if [[ ${#LLVM_COMPAT[@]} -eq 0 ]]; then
- depend_clang_llvm_version ${#LLVM_COMPAT[0]}
- else
- echo "|| ("
- for (( i=${#LLVM_COMPAT[@]}-1 ; i>=0 ; i-- )); do
- echo "("
- depend_clang_llvm_version ${LLVM_COMPAT[i]}
- echo ")"
- done
- echo ")"
- fi
-}
-
BDEPEND="
${COMMON_SNAPSHOT_DEPEND}
${PYTHON_DEPS}
@@ -217,7 +193,12 @@ BDEPEND="
qt6? ( dev-qt/qtbase:6 )
)
system-toolchain? (
- $(depend_clang_llvm_versions)
+ $(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
@@ -313,47 +294,6 @@ pkg_pretend() {
fi
}
-# Chromium should build with any version of clang that we support
-# but we may need to pick the "best" one for a build (highest installed,
-# rust is built against it, etc.)
-# Check each slot in LLVM_COMPAT to see if clang/llvm/lld are available
-# and output the _highest_ slot that is actually available on a system.
-chromium_pick_llvm_slot() {
- # LLVM_COMPAT is always going to be oldest to newest (or one value)
- # let's flip it and check from newest to oldest and return the first one we find.
- local slot
- for (( i=${#LLVM_COMPAT[@]}-1 ; i>=0 ; i-- )); do
- slot=${LLVM_COMPAT[i]}
- if has_version "sys-devel/clang:${slot}" && \
- has_version "sys-devel/llvm:${slot}" && \
- has_version "sys-devel/lld:${slot}" && \
- has_version "virtual/rust:0/llvm-${slot}" && \
- ( ! use pgo || has_version "sys-libs/compiler-rt-sanitizers:${slot}" ) ; then
-
- echo "${slot}"
- return
- fi
- done
-
- die_msg="
-No suitable clang/llvm/lld slot found.
-Slots checked: ${LLVM_COMPAT[*]}.
-"
- die "${die_msg}"
-}
-
-# We need the rust version in src_configure and pkg_setup
-chromium_extract_rust_version() {
- [[ ${MERGE_TYPE} == binary ]] && return
- local rustc_version=( $(eselect --brief rust show 2>/dev/null) )
- rustc_version=${rustc_version[0]#rust-bin-}
- rustc_version=${rustc_version#rust-}
-
- [[ -z "${rustc_version}" ]] && die "Failed to determine rust version, check 'eselect rust' output"
-
- echo $rustc_version
-}
-
pkg_setup() {
if [[ ${MERGE_TYPE} != binary ]]; then
# The pre_build_checks are all about compilation resources, no need to run it for a binpkg
@@ -361,10 +301,7 @@ pkg_setup() {
if use system-toolchain; then
# 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.
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"
@@ -378,8 +315,7 @@ pkg_setup() {
die "Please switch to a different linker."
fi
- LLVM_SLOT=$(chromium_pick_llvm_slot)
- export LLVM_SLOT # used in src_configure for rust-y business
+ # We're forcing clang here; user choice is respected via llvm_slot_x USE
AR=llvm-ar
CPP="${CHOST}-clang++ -E"
NM=llvm-nm
@@ -391,32 +327,10 @@ pkg_setup() {
CPP="${CBUILD}-clang++ -E"
fi
- # The llvm-r1_pkg_setup we have at home.
- # We prepend the path _first_ to explicitly use the selected slot.
- llvm_prepend_path "${LLVM_SLOT}"
-
- llvm_fix_clang_version CC CPP CXX
- llvm_fix_tool_path ADDR2LINE AR AS LD NM OBJCOPY OBJDUMP RANLIB
- llvm_fix_tool_path READELF STRINGS STRIP
-
- # Set LLVM_CONFIG to help Meson (bug #907965) but only do it
- # for empty ESYSROOT (as a proxy for "are we cross-compiling?").
- if [[ -z ${ESYSROOT} ]] ; then
- llvm_fix_tool_path LLVM_CONFIG
- fi
-
- einfo "Using LLVM/Clang slot ${LLVM_SLOT} to build"
-
- local rustc_ver=$(chromium_extract_rust_version)
- if ver_test "${rustc_ver}" -lt "${RUST_MIN_VER}"; then
- eerror "Rust >=${RUST_MIN_VER} is required"
- eerror "Please run 'eselect rust' and select the correct rust version"
- die "Selected rust version is too old"
- else
- einfo "Using rust ${rustc_ver} to build"
- fi
-
+ llvm-r1_pkg_setup
+ rust_pkg_setup
fi
+
# 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"
@@ -457,7 +371,7 @@ src_prepare() {
# disable global media controls, crashes with libstdc++
sed -i -e \
"/\"GlobalMediaControlsCastStartStop\"/,+4{s/ENABLED/DISABLED/;}" \
- "chrome/browser/media/router/media_router_feature.cc" || die
+ "chrome/browser/media/router/media_router_feature.cc"
local PATCHES=(
"${FILESDIR}/chromium-cross-compile.patch"
@@ -465,31 +379,27 @@ src_prepare() {
"${FILESDIR}/chromium-111-InkDropHost-crash.patch"
"${FILESDIR}/chromium-126-oauth2-client-switches.patch"
"${FILESDIR}/chromium-127-bindgen-custom-toolchain.patch"
- "${FILESDIR}/chromium-127-updater-systemd.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}/cpuinfo.patch"
- "${FILESDIR}/riscv-v8.patch"
+ "${FILESDIR}/riscv-misc.patch"
)
- # 127: test deps are broken for ui/lens with system ICU "//third_party/icu:icuuc_public"
- sed -i '/source_set("unit_tests") {/,/}/d' \
- chrome/browser/ui/lens/BUILD.gn || die "Failed to remove bad test target"
- sed -i '/lens:unit_tests/d' chrome/test/BUILD.gn components/BUILD.gn \
- || die "Failed to remove dependencies on bad target"
-
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
- sed -i -e \
- "/if (is_clang && toolchain_has_rust) {/,+2d" \
- build/config/compiler/BUILD.gn || die "Failed to disable bundled compiler builtins"
+ # 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"
@@ -650,7 +560,6 @@ src_prepare() {
third_party/libsecret
third_party/libsrtp
third_party/libsync
- third_party/libudev
third_party/liburlpattern
third_party/libva_protected_content
third_party/libvpx
@@ -704,6 +613,7 @@ src_prepare() {
third_party/pyjson5
third_party/pyyaml
third_party/qcms
+ third_party/rapidhash
third_party/re2
third_party/rnnoise
third_party/rust
@@ -888,23 +798,15 @@ chromium_configure() {
# rust_bindgen_root = directory with `bin/bindgen` beneath it.
myconf_gn+=" rust_bindgen_root=\"${EPREFIX}/usr/\""
- # from get_llvm_prefix
- local prefix=${ESYSROOT}
- [[ ${1} == -b ]] && prefix=${BROOT}
- myconf_gn+=" bindgen_libclang_path=\"${prefix}/usr/lib/llvm/${LLVM_SLOT}/$(get_libdir)\""
+ 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
- local rustc_ver=$(chromium_extract_rust_version)
- if [[ "$(eselect --brief rust show 2>/dev/null)" == *"bin"* ]]; then
- myconf_gn+=" rust_sysroot_absolute=\"${EPREFIX}/opt/rust-bin-${rustc_ver}/\""
- else
- myconf_gn+=" rust_sysroot_absolute=\"${EPREFIX}/usr/lib/rust/${rustc_ver}/\""
- fi
- myconf_gn+=" rustc_version=\"${rustc_ver}\""
+ myconf_gn+=" rust_sysroot_absolute=\"$(get_rust_prefix)\""
+ myconf_gn+=" rustc_version=\"${RUST_SLOT}\""
fi
# GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
@@ -1167,6 +1069,8 @@ chromium_configure() {
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"
# Don't add symbols to build
myconf_gn+=" symbol_level=0"
diff --git a/www-client/chromium/files/Debian-fix-rust-linking.patch b/www-client/chromium/files/Debian-fix-rust-linking.patch
index 8be91bf..1fc0efb 100644
--- a/www-client/chromium/files/Debian-fix-rust-linking.patch
+++ b/www-client/chromium/files/Debian-fix-rust-linking.patch
@@ -1,8 +1,6 @@
-Index: chromium-121.0.6167.75/build/toolchain/gcc_toolchain.gni
-===================================================================
---- chromium-121.0.6167.75.orig/build/toolchain/gcc_toolchain.gni
-+++ chromium-121.0.6167.75/build/toolchain/gcc_toolchain.gni
-@@ -464,7 +464,13 @@ template("single_gcc_toolchain") {
+--- a/build/toolchain/gcc_toolchain.gni 2024-08-19 14:13:35.233954725 +0200
++++ b/build/toolchain/gcc_toolchain.gni 2024-08-22 00:56:01.438433033 +0200
+@@ -441,7 +441,13 @@
# -soname flag is not available on aix ld
soname_flag = "-Wl,-soname=\"$soname\""
}
@@ -17,7 +15,7 @@ Index: chromium-121.0.6167.75/build/toolchain/gcc_toolchain.gni
# Generate a map file to be used for binary size analysis.
# Map file adds ~10% to the link time on a z620.
-@@ -576,7 +582,13 @@ template("single_gcc_toolchain") {
+@@ -553,7 +559,13 @@
whole_archive_flag = "-Wl,--whole-archive"
no_whole_archive_flag = "-Wl,--no-whole-archive"
}
@@ -32,19 +30,19 @@ Index: chromium-121.0.6167.75/build/toolchain/gcc_toolchain.gni
if (defined(invoker.strip)) {
strip_command = "${invoker.strip} -o \"$sofile\" \"$unstripped_sofile\""
-@@ -615,7 +627,13 @@ template("single_gcc_toolchain")
+@@ -617,8 +629,12 @@
# We need to specify link groups, at least, for single pass linkers. I.e.
# Rust libraries are alpha-sorted instead of by dependencies so they fail
# to link if not properly ordered or grouped.
- link_command = "$ld {{ldflags}}${extra_ldflags} -o \"$unstripped_outfile\" $start_group_flag @\"$rspfile\" $end_group_flag {{solibs}} {{libs}} $start_group_flag {{rlibs}} $end_group_flag"
+-
+ if (target_cpu == "riscv64") {
-+ # Work around linker failures due to Rust libraries and the use of whole-archive
+ link_command = "$ld -Wl,--start-group {{ldflags}}${extra_ldflags} -o \"$unstripped_outfile\" @\"$rspfile\" {{solibs}} {{libs}} {{rlibs}} -Wl,--end-group"
+ }
+ else {
-+ link_command = "$ld {{ldflags}}${extra_ldflags} -o \"$unstripped_outfile\" $start_group_flag @\"$rspfile\" {{solibs}} $end_group_flag {{libs}} {{rlibs}}"
++ link_command = "$ld {{ldflags}}${extra_ldflags} -o \"$unstripped_outfile\" $start_group_flag @\"$rspfile\" $end_group_flag {{solibs}} {{libs}} $start_group_flag {{rlibs}} $end_group_flag"
+ }
-
# 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/chrome-runtime_api_delegate-add-riscv64-define.patch b/www-client/chromium/files/chrome-runtime_api_delegate-add-riscv64-define.patch
new file mode 100644
index 0000000..930574c
--- /dev/null
+++ b/www-client/chromium/files/chrome-runtime_api_delegate-add-riscv64-define.patch
@@ -0,0 +1,33 @@
+From 81033cc7b695b94f8932c29f7812c41fb057aa2b Mon Sep 17 00:00:00 2001
+From: kxxt <rsworktech@outlook.com>
+Date: Sun, 25 Aug 2024 10:46:25 +0200
+Subject: [PATCH] chrome: runtime_api_delegate: add riscv64 define
+
+---
+ .../extensions/api/runtime/chrome_runtime_api_delegate.cc | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/chrome/browser/extensions/api/runtime/chrome_runtime_api_delegate.cc b/chrome/browser/extensions/api/runtime/chrome_runtime_api_delegate.cc
+index 0c2f88ce0d92c..113a8e0010075 100644
+--- a/chrome/browser/extensions/api/runtime/chrome_runtime_api_delegate.cc
++++ b/chrome/browser/extensions/api/runtime/chrome_runtime_api_delegate.cc
+@@ -303,6 +303,8 @@ bool ChromeRuntimeAPIDelegate::GetPlatformInfo(PlatformInfo* info) {
+ info->arch = extensions::api::runtime::PlatformArch::kMips;
+ } else if (strcmp(arch, "mips64el") == 0) {
+ info->arch = extensions::api::runtime::PlatformArch::kMips64;
++ } else if (strcmp(arch, "riscv64") == 0) {
++ info->arch = extensions::api::runtime::PlatformArch::kRiscv64;
+ } else {
+ NOTREACHED_IN_MIGRATION();
+ return false;
+@@ -319,6 +321,8 @@ bool ChromeRuntimeAPIDelegate::GetPlatformInfo(PlatformInfo* info) {
+ info->nacl_arch = extensions::api::runtime::PlatformNaclArch::kMips;
+ } else if (strcmp(nacl_arch, "mips64") == 0) {
+ info->nacl_arch = extensions::api::runtime::PlatformNaclArch::kMips64;
++ } else if (strcmp(arch, "riscv64") == 0) {
++ info->nacl_arch = extensions::api::runtime::PlatformNaclArch::kRiscv64;
+ } else {
+ NOTREACHED_IN_MIGRATION();
+ 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/extensions-common-api-runtime.json-riscv64-support.patch
new file mode 100644
index 0000000..5c9fec6
--- /dev/null
+++ b/www-client/chromium/files/extensions-common-api-runtime.json-riscv64-support.patch
@@ -0,0 +1,36 @@
+From 688e2d4d0880e596656f2f079357767d24950c62 Mon Sep 17 00:00:00 2001
+From: kxxt <rsworktech@outlook.com>
+Date: Sat, 10 Feb 2024 09:49:46 +0800
+Subject: [PATCH] extensions/common/api/runtime.json: riscv64 support
+
+---
+ extensions/common/api/runtime.json | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/extensions/common/api/runtime.json b/extensions/common/api/runtime.json
+index 65a024c03011e..9965a83545807 100644
+--- a/extensions/common/api/runtime.json
++++ b/extensions/common/api/runtime.json
+@@ -98,7 +98,8 @@
+ {"name": "x86-32", "description": "Specifies the processer architecture as x86-32."},
+ {"name": "x86-64", "description": "Specifies the processer architecture as x86-64."},
+ {"name": "mips", "description": "Specifies the processer architecture as mips."},
+- {"name": "mips64", "description": "Specifies the processer architecture as mips64."}
++ {"name": "mips64", "description": "Specifies the processer architecture as mips64."},
++ {"name": "riscv64", "description": "Specifies the processer architecture as riscv64."}
+ ],
+ "description": "The machine's processor architecture."
+ },
+@@ -111,7 +112,8 @@
+ {"name": "x86-32", "description": "Specifies the native client architecture as x86-32."},
+ {"name": "x86-64", "description": "Specifies the native client architecture as x86-64."},
+ {"name": "mips", "description": "Specifies the native client architecture as mips."},
+- {"name": "mips64", "description": "Specifies the native client architecture as mips64."}
++ {"name": "mips64", "description": "Specifies the native client architecture as mips64."},
++ {"name": "riscv64", "description": "Specifies the native client architecture as riscv64."}
+ ]
+ },
+ {
+--
+2.43.0
+
diff --git a/www-client/chromium/files/riscv-cargo.patch b/www-client/chromium/files/riscv-cargo.patch
new file mode 100644
index 0000000..35412dd
--- /dev/null
+++ b/www-client/chromium/files/riscv-cargo.patch
@@ -0,0 +1,32 @@
+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 f2fb1f2..6a21d07 100644
--- a/www-client/chromium/files/riscv-ffmpeg.patch
+++ b/www-client/chromium/files/riscv-ffmpeg.patch
@@ -1,6 +1,6 @@
diff '--color=auto' -Naur a/third_party/ffmpeg/CREDITS.chromium b/third_party/ffmpeg/CREDITS.chromium
---- a/third_party/ffmpeg/CREDITS.chromium 2024-08-13 10:43:45.203116000 +0100
-+++ b/third_party/ffmpeg/CREDITS.chromium 2024-08-18 23:57:19.000000000 +0100
+--- 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 @@
********************************************************************************
@@ -64,904 +64,19 @@ 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 +213,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/ios/arm64/config.h b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config.h
---- a/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config.h 2024-08-13 10:43:45.215117000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config.h 2024-08-19 01:29:21.000000000 +0100
-@@ -1,14 +1,13 @@
- /* 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-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/ezemtsov/projects/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang --enable-cro
ss-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=arm64-apple-macosx' --extra-cflags=-F/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/19/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/home/ezemtsov/p
rojects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64' --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/usr/local/google/home/dalecurtis/code/chrome/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang -
-enable-cross-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=arm64-apple-macosx' --extra-cflags=-F/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/third_party/llvm-build/Release+Asserts/lib/clang/19/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/home/dalecurtis/code
/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64' --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 7c4c274643cedcf9671e1db65361231a7d9bee70)"
-+#define CC_IDENT "clang version 19.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 084e2b53d22c11e013b0a495b65d39aa7f934048)"
- #define OS_NAME darwin
--#define av_restrict restrict
- #define EXTERN_PREFIX "_"
- #define EXTERN_ASM _
- #define BUILDSUF ""
-@@ -60,6 +59,7 @@
- #define HAVE_VSX 0
- #define HAVE_RV 0
- #define HAVE_RVV 0
-+#define HAVE_RV_ZVBB 0
- #define HAVE_AESNI 0
- #define HAVE_AMD3DNOW 0
- #define HAVE_AMD3DNOWEXT 0
-@@ -78,7 +78,6 @@
- #define HAVE_SSE42 0
- #define HAVE_SSSE3 0
- #define HAVE_XOP 0
--#define HAVE_CPUNOP 0
- #define HAVE_I686 0
- #define HAVE_MIPSFPU 0
- #define HAVE_MIPS32R2 0
-@@ -112,6 +111,7 @@
- #define HAVE_VSX_EXTERNAL 0
- #define HAVE_RV_EXTERNAL 0
- #define HAVE_RVV_EXTERNAL 0
-+#define HAVE_RV_ZVBB_EXTERNAL 0
- #define HAVE_AESNI_EXTERNAL 0
- #define HAVE_AMD3DNOW_EXTERNAL 0
- #define HAVE_AMD3DNOWEXT_EXTERNAL 0
-@@ -130,7 +130,6 @@
- #define HAVE_SSE42_EXTERNAL 0
- #define HAVE_SSSE3_EXTERNAL 0
- #define HAVE_XOP_EXTERNAL 0
--#define HAVE_CPUNOP_EXTERNAL 0
- #define HAVE_I686_EXTERNAL 0
- #define HAVE_MIPSFPU_EXTERNAL 0
- #define HAVE_MIPS32R2_EXTERNAL 0
-@@ -164,6 +163,7 @@
- #define HAVE_VSX_INLINE 0
- #define HAVE_RV_INLINE 0
- #define HAVE_RVV_INLINE 0
-+#define HAVE_RV_ZVBB_INLINE 0
- #define HAVE_AESNI_INLINE 0
- #define HAVE_AMD3DNOW_INLINE 0
- #define HAVE_AMD3DNOWEXT_INLINE 0
-@@ -182,7 +182,6 @@
- #define HAVE_SSE42_INLINE 0
- #define HAVE_SSSE3_INLINE 0
- #define HAVE_XOP_INLINE 0
--#define HAVE_CPUNOP_INLINE 0
- #define HAVE_I686_INLINE 0
- #define HAVE_MIPSFPU_INLINE 0
- #define HAVE_MIPS32R2_INLINE 0
-@@ -220,6 +219,7 @@
- #define HAVE_BIGENDIAN 0
- #define HAVE_FAST_UNALIGNED 1
- #define HAVE_ARPA_INET_H 0
-+#define HAVE_ASM_HWPROBE_H 0
- #define HAVE_ASM_TYPES_H 0
- #define HAVE_CDIO_PARANOIA_H 0
- #define HAVE_CDIO_PARANOIA_PARANOIA_H 0
-@@ -246,6 +246,7 @@
- #define HAVE_OPENGL_GL3_H 0
- #define HAVE_POLL_H 1
- #define HAVE_PTHREAD_NP_H 0
-+#define HAVE_SYS_HWPROBE_H 0
- #define HAVE_SYS_PARAM_H 1
- #define HAVE_SYS_RESOURCE_H 1
- #define HAVE_SYS_SELECT_H 1
-@@ -419,6 +420,7 @@
- #define HAVE_STRUCT_SOCKADDR_STORAGE 0
- #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0
- #define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
-+#define HAVE_STRUCT_MFXCONFIGINTERFACE 0
- #define HAVE_GZIP 1
- #define HAVE_LIBDRM_GETFB2 0
- #define HAVE_MAKEINFO 0
-@@ -429,6 +431,7 @@
- #define HAVE_OPENCL_DXVA2 0
- #define HAVE_OPENCL_VAAPI_BEIGNET 0
- #define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
-+#define HAVE_OPENCL_VIDEOTOOLBOX 0
- #define HAVE_PERL 1
- #define HAVE_POD2MAN 1
- #define HAVE_TEXI2HTML 0
-@@ -468,6 +471,8 @@
- #define CONFIG_FREI0R 0
- #define CONFIG_LIBCDIO 0
- #define CONFIG_LIBDAVS2 0
-+#define CONFIG_LIBDVDNAV 0
-+#define CONFIG_LIBDVDREAD 0
- #define CONFIG_LIBRUBBERBAND 0
- #define CONFIG_LIBVIDSTAB 0
- #define CONFIG_LIBX264 0
-@@ -517,6 +522,7 @@
- #define CONFIG_LIBJXL 0
- #define CONFIG_LIBKLVANC 0
- #define CONFIG_LIBKVAZAAR 0
-+#define CONFIG_LIBLC3 0
- #define CONFIG_LIBMODPLUG 0
- #define CONFIG_LIBMP3LAME 0
- #define CONFIG_LIBMYSOFA 0
-@@ -547,6 +553,7 @@
- #define CONFIG_LIBTENSORFLOW 0
- #define CONFIG_LIBTESSERACT 0
- #define CONFIG_LIBTHEORA 0
-+#define CONFIG_LIBTORCH 0
- #define CONFIG_LIBTWOLAME 0
- #define CONFIG_LIBUAVS3D 0
- #define CONFIG_LIBV4L2 0
-@@ -596,7 +603,6 @@
- #define CONFIG_OPENCL 0
- #define CONFIG_AMF 0
- #define CONFIG_AUDIOTOOLBOX 0
--#define CONFIG_CRYSTALHD 0
- #define CONFIG_CUDA 0
- #define CONFIG_CUDA_LLVM 0
- #define CONFIG_CUVID 0
-@@ -640,6 +646,7 @@
- #define CONFIG_ERROR_RESILIENCE 0
- #define CONFIG_FAAN 0
- #define CONFIG_FAST_UNALIGNED 1
-+#define CONFIG_IAMF 0
- #define CONFIG_LSP 0
- #define CONFIG_PIXELUTILS 0
- #define CONFIG_NETWORK 0
-@@ -688,7 +695,8 @@
- #define CONFIG_DEFLATE_WRAPPER 0
- #define CONFIG_DIRAC_PARSE 1
- #define CONFIG_DNN 0
--#define CONFIG_DOVI_RPU 0
-+#define CONFIG_DOVI_RPUDEC 0
-+#define CONFIG_DOVI_RPUENC 0
- #define CONFIG_DVPROFILE 0
- #define CONFIG_EVCPARSE 0
- #define CONFIG_EXIF 0
-@@ -720,10 +728,12 @@
- #define CONFIG_INFLATE_WRAPPER 0
- #define CONFIG_INTRAX8 0
- #define CONFIG_ISO_MEDIA 1
-+#define CONFIG_ISO_WRITER 0
- #define CONFIG_IVIDSP 0
- #define CONFIG_JPEGTABLES 0
- #define CONFIG_LGPLV3 0
- #define CONFIG_LIBX262 0
-+#define CONFIG_LIBX264_HDR10 0
- #define CONFIG_LLAUDDSP 0
- #define CONFIG_LLVIDDSP 0
- #define CONFIG_LLVIDENCDSP 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config_components.h b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config_components.h
---- a/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config_components.h 2024-08-13 10:43:45.215117000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config_components.h 2024-08-19 01:29:21.000000000 +0100
-@@ -11,6 +11,7 @@
- #define CONFIG_DTS2PTS_BSF 0
- #define CONFIG_DV_ERROR_MARKER_BSF 0
- #define CONFIG_EAC3_CORE_BSF 0
-+#define CONFIG_EVC_FRAME_MERGE_BSF 0
- #define CONFIG_EXTRACT_EXTRADATA_BSF 0
- #define CONFIG_FILTER_UNITS_BSF 0
- #define CONFIG_H264_METADATA_BSF 0
-@@ -23,7 +24,6 @@
- #define CONFIG_MEDIA100_TO_MJPEGB_BSF 0
- #define CONFIG_MJPEG2JPEG_BSF 0
- #define CONFIG_MJPEGA_DUMP_HEADER_BSF 0
--#define CONFIG_MP3_HEADER_DECOMPRESS_BSF 0
- #define CONFIG_MPEG2_METADATA_BSF 0
- #define CONFIG_MPEG4_UNPACK_BFRAMES_BSF 0
- #define CONFIG_MOV2TEXTSUB_BSF 0
-@@ -45,7 +45,6 @@
- #define CONFIG_VP9_SUPERFRAME_SPLIT_BSF 0
- #define CONFIG_VVC_METADATA_BSF 0
- #define CONFIG_VVC_MP4TOANNEXB_BSF 0
--#define CONFIG_EVC_FRAME_MERGE_BSF 0
- #define CONFIG_AASC_DECODER 0
- #define CONFIG_AIC_DECODER 0
- #define CONFIG_ALIAS_PIX_DECODER 0
-@@ -64,7 +63,6 @@
- #define CONFIG_AVRN_DECODER 0
- #define CONFIG_AVS_DECODER 0
- #define CONFIG_AVUI_DECODER 0
--#define CONFIG_AYUV_DECODER 0
- #define CONFIG_BETHSOFTVID_DECODER 0
- #define CONFIG_BFI_DECODER 0
- #define CONFIG_BINK_DECODER 0
-@@ -131,7 +129,6 @@
- #define CONFIG_H263P_DECODER 0
- #define CONFIG_H263_V4L2M2M_DECODER 0
- #define CONFIG_H264_DECODER 1
--#define CONFIG_H264_CRYSTALHD_DECODER 0
- #define CONFIG_H264_V4L2M2M_DECODER 0
- #define CONFIG_H264_MEDIACODEC_DECODER 0
- #define CONFIG_H264_MMAL_DECODER 0
-@@ -179,13 +176,11 @@
- #define CONFIG_MPEG1VIDEO_DECODER 0
- #define CONFIG_MPEG2VIDEO_DECODER 0
- #define CONFIG_MPEG4_DECODER 0
--#define CONFIG_MPEG4_CRYSTALHD_DECODER 0
- #define CONFIG_MPEG4_V4L2M2M_DECODER 0
- #define CONFIG_MPEG4_MMAL_DECODER 0
- #define CONFIG_MPEGVIDEO_DECODER 0
- #define CONFIG_MPEG1_V4L2M2M_DECODER 0
- #define CONFIG_MPEG2_MMAL_DECODER 0
--#define CONFIG_MPEG2_CRYSTALHD_DECODER 0
- #define CONFIG_MPEG2_V4L2M2M_DECODER 0
- #define CONFIG_MPEG2_QSV_DECODER 0
- #define CONFIG_MPEG2_MEDIACODEC_DECODER 0
-@@ -194,7 +189,6 @@
- #define CONFIG_MSMPEG4V1_DECODER 0
- #define CONFIG_MSMPEG4V2_DECODER 0
- #define CONFIG_MSMPEG4V3_DECODER 0
--#define CONFIG_MSMPEG4_CRYSTALHD_DECODER 0
- #define CONFIG_MSP2_DECODER 0
- #define CONFIG_MSRLE_DECODER 0
- #define CONFIG_MSS1_DECODER 0
-@@ -293,7 +287,6 @@
- #define CONFIG_VBN_DECODER 0
- #define CONFIG_VBLE_DECODER 0
- #define CONFIG_VC1_DECODER 0
--#define CONFIG_VC1_CRYSTALHD_DECODER 0
- #define CONFIG_VC1IMAGE_DECODER 0
- #define CONFIG_VC1_MMAL_DECODER 0
- #define CONFIG_VC1_QSV_DECODER 0
-@@ -325,7 +318,6 @@
- #define CONFIG_WMV1_DECODER 0
- #define CONFIG_WMV2_DECODER 0
- #define CONFIG_WMV3_DECODER 0
--#define CONFIG_WMV3_CRYSTALHD_DECODER 0
- #define CONFIG_WMV3IMAGE_DECODER 0
- #define CONFIG_WNV1_DECODER 0
- #define CONFIG_XAN_WC3_DECODER 0
-@@ -592,6 +584,7 @@
- #define CONFIG_LIBGSM_MS_DECODER 0
- #define CONFIG_LIBILBC_DECODER 0
- #define CONFIG_LIBJXL_DECODER 0
-+#define CONFIG_LIBLC3_DECODER 0
- #define CONFIG_LIBOPENCORE_AMRNB_DECODER 0
- #define CONFIG_LIBOPENCORE_AMRWB_DECODER 0
- #define CONFIG_LIBOPUS_DECODER 1
-@@ -639,7 +632,6 @@
- #define CONFIG_ASV2_ENCODER 0
- #define CONFIG_AVRP_ENCODER 0
- #define CONFIG_AVUI_ENCODER 0
--#define CONFIG_AYUV_ENCODER 0
- #define CONFIG_BITPACKED_ENCODER 0
- #define CONFIG_BMP_ENCODER 0
- #define CONFIG_CFHD_ENCODER 0
-@@ -821,6 +813,7 @@
- #define CONFIG_LIBGSM_MS_ENCODER 0
- #define CONFIG_LIBILBC_ENCODER 0
- #define CONFIG_LIBJXL_ENCODER 0
-+#define CONFIG_LIBLC3_ENCODER 0
- #define CONFIG_LIBMP3LAME_ENCODER 0
- #define CONFIG_LIBOPENCORE_AMRNB_ENCODER 0
- #define CONFIG_LIBOPENJPEG_ENCODER 0
-@@ -1573,6 +1566,8 @@
- #define CONFIG_HSTACK_QSV_FILTER 0
- #define CONFIG_VSTACK_QSV_FILTER 0
- #define CONFIG_XSTACK_QSV_FILTER 0
-+#define CONFIG_PAD_VAAPI_FILTER 0
-+#define CONFIG_DRAWBOX_VAAPI_FILTER 0
- #define CONFIG_ALLRGB_FILTER 0
- #define CONFIG_ALLYUV_FILTER 0
- #define CONFIG_CELLAUTO_FILTER 0
-@@ -1706,6 +1701,7 @@
- #define CONFIG_DV_DEMUXER 0
- #define CONFIG_DVBSUB_DEMUXER 0
- #define CONFIG_DVBTXT_DEMUXER 0
-+#define CONFIG_DVDVIDEO_DEMUXER 0
- #define CONFIG_DXA_DEMUXER 0
- #define CONFIG_EA_DEMUXER 0
- #define CONFIG_EA_CDATA_DEMUXER 0
-@@ -1767,6 +1763,7 @@
- #define CONFIG_KUX_DEMUXER 0
- #define CONFIG_KVAG_DEMUXER 0
- #define CONFIG_LAF_DEMUXER 0
-+#define CONFIG_LC3_DEMUXER 0
- #define CONFIG_LMLM4_DEMUXER 0
- #define CONFIG_LOAS_DEMUXER 0
- #define CONFIG_LUODAT_DEMUXER 0
-@@ -1850,6 +1847,7 @@
- #define CONFIG_QOA_DEMUXER 0
- #define CONFIG_R3D_DEMUXER 0
- #define CONFIG_RAWVIDEO_DEMUXER 0
-+#define CONFIG_RCWT_DEMUXER 0
- #define CONFIG_REALTEXT_DEMUXER 0
- #define CONFIG_REDSPARK_DEMUXER 0
- #define CONFIG_RKA_DEMUXER 0
-@@ -1987,6 +1985,7 @@
- #define CONFIG_AC4_MUXER 0
- #define CONFIG_ADTS_MUXER 0
- #define CONFIG_ADX_MUXER 0
-+#define CONFIG_AEA_MUXER 0
- #define CONFIG_AIFF_MUXER 0
- #define CONFIG_ALP_MUXER 0
- #define CONFIG_AMR_MUXER 0
-@@ -2026,7 +2025,6 @@
- #define CONFIG_F4V_MUXER 0
- #define CONFIG_FFMETADATA_MUXER 0
- #define CONFIG_FIFO_MUXER 0
--#define CONFIG_FIFO_TEST_MUXER 0
- #define CONFIG_FILMSTRIP_MUXER 0
- #define CONFIG_FITS_MUXER 0
- #define CONFIG_FLAC_MUXER 0
-@@ -2060,6 +2058,7 @@
- #define CONFIG_JACOSUB_MUXER 0
- #define CONFIG_KVAG_MUXER 0
- #define CONFIG_LATM_MUXER 0
-+#define CONFIG_LC3_MUXER 0
- #define CONFIG_LRC_MUXER 0
- #define CONFIG_M4V_MUXER 0
- #define CONFIG_MD5_MUXER 0
-@@ -2162,6 +2161,7 @@
- #define CONFIG_WV_MUXER 0
- #define CONFIG_YUV4MPEGPIPE_MUXER 0
- #define CONFIG_CHROMAPRINT_MUXER 0
-+#define CONFIG_ANDROID_CONTENT_PROTOCOL 0
- #define CONFIG_ASYNC_PROTOCOL 0
- #define CONFIG_BLURAY_PROTOCOL 0
- #define CONFIG_CACHE_PROTOCOL 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/libavformat/demuxer_list.c b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/libavformat/demuxer_list.c
---- a/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/libavformat/demuxer_list.c 2024-08-13 10:43:45.215117000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/libavformat/demuxer_list.c 2024-08-19 01:29:21.000000000 +0100
-@@ -1,4 +1,4 @@
--static const AVInputFormat * const demuxer_list[] = {
-+static const FFInputFormat * const demuxer_list[] = {
- &ff_aac_demuxer,
- &ff_flac_demuxer,
- &ff_matroska_demuxer,
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/libavutil/ffversion.h b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/libavutil/ffversion.h
---- a/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/libavutil/ffversion.h 2024-08-13 10:43:45.219117400 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/libavutil/ffversion.h 2024-08-19 01:29:21.000000000 +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-115016-g631703bfb9"
-+#define FFMPEG_VERSION "N-116569-gd0c8e13654"
- #endif /* AVUTIL_FFVERSION_H */
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.asm b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.asm
---- a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.asm 2024-08-13 10:43:45.219117400 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.asm 2024-08-19 01:29:21.000000000 +0100
-@@ -44,6 +44,7 @@
- %define HAVE_VSX 0
- %define HAVE_RV 0
- %define HAVE_RVV 0
-+%define HAVE_RV_ZVBB 0
- %define HAVE_AESNI 1
- %define HAVE_AMD3DNOW 1
- %define HAVE_AMD3DNOWEXT 1
-@@ -62,7 +63,6 @@
- %define HAVE_SSE42 1
- %define HAVE_SSSE3 1
- %define HAVE_XOP 1
--%define HAVE_CPUNOP 0
- %define HAVE_I686 1
- %define HAVE_MIPSFPU 0
- %define HAVE_MIPS32R2 0
-@@ -96,6 +96,7 @@
- %define HAVE_VSX_EXTERNAL 0
- %define HAVE_RV_EXTERNAL 0
- %define HAVE_RVV_EXTERNAL 0
-+%define HAVE_RV_ZVBB_EXTERNAL 0
- %define HAVE_AESNI_EXTERNAL 1
- %define HAVE_AMD3DNOW_EXTERNAL 1
- %define HAVE_AMD3DNOWEXT_EXTERNAL 1
-@@ -114,7 +115,6 @@
- %define HAVE_SSE42_EXTERNAL 1
- %define HAVE_SSSE3_EXTERNAL 1
- %define HAVE_XOP_EXTERNAL 1
--%define HAVE_CPUNOP_EXTERNAL 0
- %define HAVE_I686_EXTERNAL 0
- %define HAVE_MIPSFPU_EXTERNAL 0
- %define HAVE_MIPS32R2_EXTERNAL 0
-@@ -148,6 +148,7 @@
- %define HAVE_VSX_INLINE 0
- %define HAVE_RV_INLINE 0
- %define HAVE_RVV_INLINE 0
-+%define HAVE_RV_ZVBB_INLINE 0
- %define HAVE_AESNI_INLINE 1
- %define HAVE_AMD3DNOW_INLINE 1
- %define HAVE_AMD3DNOWEXT_INLINE 1
-@@ -166,7 +167,6 @@
- %define HAVE_SSE42_INLINE 1
- %define HAVE_SSSE3_INLINE 1
- %define HAVE_XOP_INLINE 1
--%define HAVE_CPUNOP_INLINE 0
- %define HAVE_I686_INLINE 0
- %define HAVE_MIPSFPU_INLINE 0
- %define HAVE_MIPS32R2_INLINE 0
-@@ -204,6 +204,7 @@
- %define HAVE_BIGENDIAN 0
- %define HAVE_FAST_UNALIGNED 1
- %define HAVE_ARPA_INET_H 0
-+%define HAVE_ASM_HWPROBE_H 0
- %define HAVE_ASM_TYPES_H 0
- %define HAVE_CDIO_PARANOIA_H 0
- %define HAVE_CDIO_PARANOIA_PARANOIA_H 0
-@@ -230,6 +231,7 @@
- %define HAVE_OPENGL_GL3_H 0
- %define HAVE_POLL_H 1
- %define HAVE_PTHREAD_NP_H 0
-+%define HAVE_SYS_HWPROBE_H 0
- %define HAVE_SYS_PARAM_H 1
- %define HAVE_SYS_RESOURCE_H 1
- %define HAVE_SYS_SELECT_H 1
-@@ -403,6 +405,7 @@
- %define HAVE_STRUCT_SOCKADDR_STORAGE 0
- %define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0
- %define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
-+%define HAVE_STRUCT_MFXCONFIGINTERFACE 0
- %define HAVE_GZIP 1
- %define HAVE_LIBDRM_GETFB2 0
- %define HAVE_MAKEINFO 0
-@@ -413,6 +416,7 @@
- %define HAVE_OPENCL_DXVA2 0
- %define HAVE_OPENCL_VAAPI_BEIGNET 0
- %define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
-+%define HAVE_OPENCL_VIDEOTOOLBOX 0
- %define HAVE_PERL 1
- %define HAVE_POD2MAN 1
- %define HAVE_TEXI2HTML 0
-@@ -452,6 +456,8 @@
- %define CONFIG_FREI0R 0
- %define CONFIG_LIBCDIO 0
- %define CONFIG_LIBDAVS2 0
-+%define CONFIG_LIBDVDNAV 0
-+%define CONFIG_LIBDVDREAD 0
- %define CONFIG_LIBRUBBERBAND 0
- %define CONFIG_LIBVIDSTAB 0
- %define CONFIG_LIBX264 0
-@@ -501,6 +507,7 @@
- %define CONFIG_LIBJXL 0
- %define CONFIG_LIBKLVANC 0
- %define CONFIG_LIBKVAZAAR 0
-+%define CONFIG_LIBLC3 0
- %define CONFIG_LIBMODPLUG 0
- %define CONFIG_LIBMP3LAME 0
- %define CONFIG_LIBMYSOFA 0
-@@ -531,6 +538,7 @@
- %define CONFIG_LIBTENSORFLOW 0
- %define CONFIG_LIBTESSERACT 0
- %define CONFIG_LIBTHEORA 0
-+%define CONFIG_LIBTORCH 0
- %define CONFIG_LIBTWOLAME 0
- %define CONFIG_LIBUAVS3D 0
- %define CONFIG_LIBV4L2 0
-@@ -580,7 +588,6 @@
- %define CONFIG_OPENCL 0
- %define CONFIG_AMF 0
- %define CONFIG_AUDIOTOOLBOX 0
--%define CONFIG_CRYSTALHD 0
- %define CONFIG_CUDA 0
- %define CONFIG_CUDA_LLVM 0
- %define CONFIG_CUVID 0
-@@ -624,6 +631,7 @@
- %define CONFIG_ERROR_RESILIENCE 0
- %define CONFIG_FAAN 0
- %define CONFIG_FAST_UNALIGNED 1
-+%define CONFIG_IAMF 0
- %define CONFIG_LSP 0
- %define CONFIG_PIXELUTILS 0
- %define CONFIG_NETWORK 0
-@@ -672,7 +680,8 @@
- %define CONFIG_DEFLATE_WRAPPER 0
- %define CONFIG_DIRAC_PARSE 1
- %define CONFIG_DNN 0
--%define CONFIG_DOVI_RPU 0
-+%define CONFIG_DOVI_RPUDEC 0
-+%define CONFIG_DOVI_RPUENC 0
- %define CONFIG_DVPROFILE 0
- %define CONFIG_EVCPARSE 0
- %define CONFIG_EXIF 0
-@@ -704,10 +713,12 @@
- %define CONFIG_INFLATE_WRAPPER 0
- %define CONFIG_INTRAX8 0
- %define CONFIG_ISO_MEDIA 1
-+%define CONFIG_ISO_WRITER 0
- %define CONFIG_IVIDSP 0
- %define CONFIG_JPEGTABLES 0
- %define CONFIG_LGPLV3 0
- %define CONFIG_LIBX262 0
-+%define CONFIG_LIBX264_HDR10 0
- %define CONFIG_LLAUDDSP 0
- %define CONFIG_LLVIDDSP 0
- %define CONFIG_LLVIDENCDSP 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.h b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.h
---- a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.h 2024-08-13 10:43:45.219117400 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.h 2024-08-19 01:29:21.000000000 +0100
-@@ -1,14 +1,13 @@
- /* 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-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/ezemtsov/projects/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang --enable-cro
ss-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=x86_64-apple-macosx' --extra-cflags=-F/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/19/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/home/ezemtsov/
projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=x86_64 --extra-cflags=-m64 --extra-ldflags='-arch x86_64' --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/usr/local/google/home/dalecurtis/code/chrome/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang -
-enable-cross-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=x86_64-apple-macosx' --extra-cflags=-F/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/third_party/llvm-build/Release+Asserts/lib/clang/19/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/home/dalecurtis/cod
e/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=x86_64 --extra-cflags=-m64 --extra-ldflags='-arch x86_64' --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 7c4c274643cedcf9671e1db65361231a7d9bee70)"
-+#define CC_IDENT "clang version 19.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 084e2b53d22c11e013b0a495b65d39aa7f934048)"
- #define OS_NAME darwin
--#define av_restrict restrict
- #define EXTERN_PREFIX "_"
- #define EXTERN_ASM _
- #define BUILDSUF ""
-@@ -59,6 +58,7 @@
- #define HAVE_VSX 0
- #define HAVE_RV 0
- #define HAVE_RVV 0
-+#define HAVE_RV_ZVBB 0
- #define HAVE_AESNI 1
- #define HAVE_AMD3DNOW 1
- #define HAVE_AMD3DNOWEXT 1
-@@ -77,7 +77,6 @@
- #define HAVE_SSE42 1
- #define HAVE_SSSE3 1
- #define HAVE_XOP 1
--#define HAVE_CPUNOP 0
- #define HAVE_I686 1
- #define HAVE_MIPSFPU 0
- #define HAVE_MIPS32R2 0
-@@ -111,6 +110,7 @@
- #define HAVE_VSX_EXTERNAL 0
- #define HAVE_RV_EXTERNAL 0
- #define HAVE_RVV_EXTERNAL 0
-+#define HAVE_RV_ZVBB_EXTERNAL 0
- #define HAVE_AESNI_EXTERNAL 1
- #define HAVE_AMD3DNOW_EXTERNAL 1
- #define HAVE_AMD3DNOWEXT_EXTERNAL 1
-@@ -129,7 +129,6 @@
- #define HAVE_SSE42_EXTERNAL 1
- #define HAVE_SSSE3_EXTERNAL 1
- #define HAVE_XOP_EXTERNAL 1
--#define HAVE_CPUNOP_EXTERNAL 0
- #define HAVE_I686_EXTERNAL 0
- #define HAVE_MIPSFPU_EXTERNAL 0
- #define HAVE_MIPS32R2_EXTERNAL 0
-@@ -163,6 +162,7 @@
- #define HAVE_VSX_INLINE 0
- #define HAVE_RV_INLINE 0
- #define HAVE_RVV_INLINE 0
-+#define HAVE_RV_ZVBB_INLINE 0
- #define HAVE_AESNI_INLINE 1
- #define HAVE_AMD3DNOW_INLINE 1
- #define HAVE_AMD3DNOWEXT_INLINE 1
-@@ -181,7 +181,6 @@
- #define HAVE_SSE42_INLINE 1
- #define HAVE_SSSE3_INLINE 1
- #define HAVE_XOP_INLINE 1
--#define HAVE_CPUNOP_INLINE 0
- #define HAVE_I686_INLINE 0
- #define HAVE_MIPSFPU_INLINE 0
- #define HAVE_MIPS32R2_INLINE 0
-@@ -219,6 +218,7 @@
- #define HAVE_BIGENDIAN 0
- #define HAVE_FAST_UNALIGNED 1
- #define HAVE_ARPA_INET_H 0
-+#define HAVE_ASM_HWPROBE_H 0
- #define HAVE_ASM_TYPES_H 0
- #define HAVE_CDIO_PARANOIA_H 0
- #define HAVE_CDIO_PARANOIA_PARANOIA_H 0
-@@ -245,6 +245,7 @@
- #define HAVE_OPENGL_GL3_H 0
- #define HAVE_POLL_H 1
- #define HAVE_PTHREAD_NP_H 0
-+#define HAVE_SYS_HWPROBE_H 0
- #define HAVE_SYS_PARAM_H 1
- #define HAVE_SYS_RESOURCE_H 1
- #define HAVE_SYS_SELECT_H 1
-@@ -418,6 +419,7 @@
- #define HAVE_STRUCT_SOCKADDR_STORAGE 0
- #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0
- #define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
-+#define HAVE_STRUCT_MFXCONFIGINTERFACE 0
- #define HAVE_GZIP 1
- #define HAVE_LIBDRM_GETFB2 0
- #define HAVE_MAKEINFO 0
-@@ -428,6 +430,7 @@
- #define HAVE_OPENCL_DXVA2 0
- #define HAVE_OPENCL_VAAPI_BEIGNET 0
- #define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
-+#define HAVE_OPENCL_VIDEOTOOLBOX 0
- #define HAVE_PERL 1
- #define HAVE_POD2MAN 1
- #define HAVE_TEXI2HTML 0
-@@ -467,6 +470,8 @@
- #define CONFIG_FREI0R 0
- #define CONFIG_LIBCDIO 0
- #define CONFIG_LIBDAVS2 0
-+#define CONFIG_LIBDVDNAV 0
-+#define CONFIG_LIBDVDREAD 0
- #define CONFIG_LIBRUBBERBAND 0
- #define CONFIG_LIBVIDSTAB 0
- #define CONFIG_LIBX264 0
-@@ -516,6 +521,7 @@
- #define CONFIG_LIBJXL 0
- #define CONFIG_LIBKLVANC 0
- #define CONFIG_LIBKVAZAAR 0
-+#define CONFIG_LIBLC3 0
- #define CONFIG_LIBMODPLUG 0
- #define CONFIG_LIBMP3LAME 0
- #define CONFIG_LIBMYSOFA 0
-@@ -546,6 +552,7 @@
- #define CONFIG_LIBTENSORFLOW 0
- #define CONFIG_LIBTESSERACT 0
- #define CONFIG_LIBTHEORA 0
-+#define CONFIG_LIBTORCH 0
- #define CONFIG_LIBTWOLAME 0
- #define CONFIG_LIBUAVS3D 0
- #define CONFIG_LIBV4L2 0
-@@ -595,7 +602,6 @@
- #define CONFIG_OPENCL 0
- #define CONFIG_AMF 0
- #define CONFIG_AUDIOTOOLBOX 0
--#define CONFIG_CRYSTALHD 0
- #define CONFIG_CUDA 0
- #define CONFIG_CUDA_LLVM 0
- #define CONFIG_CUVID 0
-@@ -639,6 +645,7 @@
- #define CONFIG_ERROR_RESILIENCE 0
- #define CONFIG_FAAN 0
- #define CONFIG_FAST_UNALIGNED 1
-+#define CONFIG_IAMF 0
- #define CONFIG_LSP 0
- #define CONFIG_PIXELUTILS 0
- #define CONFIG_NETWORK 0
-@@ -687,7 +694,8 @@
- #define CONFIG_DEFLATE_WRAPPER 0
- #define CONFIG_DIRAC_PARSE 1
- #define CONFIG_DNN 0
--#define CONFIG_DOVI_RPU 0
-+#define CONFIG_DOVI_RPUDEC 0
-+#define CONFIG_DOVI_RPUENC 0
- #define CONFIG_DVPROFILE 0
- #define CONFIG_EVCPARSE 0
- #define CONFIG_EXIF 0
-@@ -719,10 +727,12 @@
- #define CONFIG_INFLATE_WRAPPER 0
- #define CONFIG_INTRAX8 0
- #define CONFIG_ISO_MEDIA 1
-+#define CONFIG_ISO_WRITER 0
- #define CONFIG_IVIDSP 0
- #define CONFIG_JPEGTABLES 0
- #define CONFIG_LGPLV3 0
- #define CONFIG_LIBX262 0
-+#define CONFIG_LIBX264_HDR10 0
- #define CONFIG_LLAUDDSP 0
- #define CONFIG_LLVIDDSP 0
- #define CONFIG_LLVIDENCDSP 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config_components.h b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config_components.h
---- a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config_components.h 2024-08-13 10:43:45.219117400 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config_components.h 2024-08-19 01:29:21.000000000 +0100
-@@ -11,6 +11,7 @@
- #define CONFIG_DTS2PTS_BSF 0
- #define CONFIG_DV_ERROR_MARKER_BSF 0
- #define CONFIG_EAC3_CORE_BSF 0
-+#define CONFIG_EVC_FRAME_MERGE_BSF 0
- #define CONFIG_EXTRACT_EXTRADATA_BSF 0
- #define CONFIG_FILTER_UNITS_BSF 0
- #define CONFIG_H264_METADATA_BSF 0
-@@ -23,7 +24,6 @@
- #define CONFIG_MEDIA100_TO_MJPEGB_BSF 0
- #define CONFIG_MJPEG2JPEG_BSF 0
- #define CONFIG_MJPEGA_DUMP_HEADER_BSF 0
--#define CONFIG_MP3_HEADER_DECOMPRESS_BSF 0
- #define CONFIG_MPEG2_METADATA_BSF 0
- #define CONFIG_MPEG4_UNPACK_BFRAMES_BSF 0
- #define CONFIG_MOV2TEXTSUB_BSF 0
-@@ -45,7 +45,6 @@
- #define CONFIG_VP9_SUPERFRAME_SPLIT_BSF 0
- #define CONFIG_VVC_METADATA_BSF 0
- #define CONFIG_VVC_MP4TOANNEXB_BSF 0
--#define CONFIG_EVC_FRAME_MERGE_BSF 0
- #define CONFIG_AASC_DECODER 0
- #define CONFIG_AIC_DECODER 0
- #define CONFIG_ALIAS_PIX_DECODER 0
-@@ -64,7 +63,6 @@
- #define CONFIG_AVRN_DECODER 0
- #define CONFIG_AVS_DECODER 0
- #define CONFIG_AVUI_DECODER 0
--#define CONFIG_AYUV_DECODER 0
- #define CONFIG_BETHSOFTVID_DECODER 0
- #define CONFIG_BFI_DECODER 0
- #define CONFIG_BINK_DECODER 0
-@@ -131,7 +129,6 @@
- #define CONFIG_H263P_DECODER 0
- #define CONFIG_H263_V4L2M2M_DECODER 0
- #define CONFIG_H264_DECODER 1
--#define CONFIG_H264_CRYSTALHD_DECODER 0
- #define CONFIG_H264_V4L2M2M_DECODER 0
- #define CONFIG_H264_MEDIACODEC_DECODER 0
- #define CONFIG_H264_MMAL_DECODER 0
-@@ -179,13 +176,11 @@
- #define CONFIG_MPEG1VIDEO_DECODER 0
- #define CONFIG_MPEG2VIDEO_DECODER 0
- #define CONFIG_MPEG4_DECODER 0
--#define CONFIG_MPEG4_CRYSTALHD_DECODER 0
- #define CONFIG_MPEG4_V4L2M2M_DECODER 0
- #define CONFIG_MPEG4_MMAL_DECODER 0
- #define CONFIG_MPEGVIDEO_DECODER 0
- #define CONFIG_MPEG1_V4L2M2M_DECODER 0
- #define CONFIG_MPEG2_MMAL_DECODER 0
--#define CONFIG_MPEG2_CRYSTALHD_DECODER 0
- #define CONFIG_MPEG2_V4L2M2M_DECODER 0
- #define CONFIG_MPEG2_QSV_DECODER 0
- #define CONFIG_MPEG2_MEDIACODEC_DECODER 0
-@@ -194,7 +189,6 @@
- #define CONFIG_MSMPEG4V1_DECODER 0
- #define CONFIG_MSMPEG4V2_DECODER 0
- #define CONFIG_MSMPEG4V3_DECODER 0
--#define CONFIG_MSMPEG4_CRYSTALHD_DECODER 0
- #define CONFIG_MSP2_DECODER 0
- #define CONFIG_MSRLE_DECODER 0
- #define CONFIG_MSS1_DECODER 0
-@@ -293,7 +287,6 @@
- #define CONFIG_VBN_DECODER 0
- #define CONFIG_VBLE_DECODER 0
- #define CONFIG_VC1_DECODER 0
--#define CONFIG_VC1_CRYSTALHD_DECODER 0
- #define CONFIG_VC1IMAGE_DECODER 0
- #define CONFIG_VC1_MMAL_DECODER 0
- #define CONFIG_VC1_QSV_DECODER 0
-@@ -325,7 +318,6 @@
- #define CONFIG_WMV1_DECODER 0
- #define CONFIG_WMV2_DECODER 0
- #define CONFIG_WMV3_DECODER 0
--#define CONFIG_WMV3_CRYSTALHD_DECODER 0
- #define CONFIG_WMV3IMAGE_DECODER 0
- #define CONFIG_WNV1_DECODER 0
- #define CONFIG_XAN_WC3_DECODER 0
-@@ -592,6 +584,7 @@
- #define CONFIG_LIBGSM_MS_DECODER 0
- #define CONFIG_LIBILBC_DECODER 0
- #define CONFIG_LIBJXL_DECODER 0
-+#define CONFIG_LIBLC3_DECODER 0
- #define CONFIG_LIBOPENCORE_AMRNB_DECODER 0
- #define CONFIG_LIBOPENCORE_AMRWB_DECODER 0
- #define CONFIG_LIBOPUS_DECODER 1
-@@ -639,7 +632,6 @@
- #define CONFIG_ASV2_ENCODER 0
- #define CONFIG_AVRP_ENCODER 0
- #define CONFIG_AVUI_ENCODER 0
--#define CONFIG_AYUV_ENCODER 0
- #define CONFIG_BITPACKED_ENCODER 0
- #define CONFIG_BMP_ENCODER 0
- #define CONFIG_CFHD_ENCODER 0
-@@ -821,6 +813,7 @@
- #define CONFIG_LIBGSM_MS_ENCODER 0
- #define CONFIG_LIBILBC_ENCODER 0
- #define CONFIG_LIBJXL_ENCODER 0
-+#define CONFIG_LIBLC3_ENCODER 0
- #define CONFIG_LIBMP3LAME_ENCODER 0
- #define CONFIG_LIBOPENCORE_AMRNB_ENCODER 0
- #define CONFIG_LIBOPENJPEG_ENCODER 0
-@@ -1573,6 +1566,8 @@
- #define CONFIG_HSTACK_QSV_FILTER 0
- #define CONFIG_VSTACK_QSV_FILTER 0
- #define CONFIG_XSTACK_QSV_FILTER 0
-+#define CONFIG_PAD_VAAPI_FILTER 0
-+#define CONFIG_DRAWBOX_VAAPI_FILTER 0
- #define CONFIG_ALLRGB_FILTER 0
- #define CONFIG_ALLYUV_FILTER 0
- #define CONFIG_CELLAUTO_FILTER 0
-@@ -1706,6 +1701,7 @@
- #define CONFIG_DV_DEMUXER 0
- #define CONFIG_DVBSUB_DEMUXER 0
- #define CONFIG_DVBTXT_DEMUXER 0
-+#define CONFIG_DVDVIDEO_DEMUXER 0
- #define CONFIG_DXA_DEMUXER 0
- #define CONFIG_EA_DEMUXER 0
- #define CONFIG_EA_CDATA_DEMUXER 0
-@@ -1767,6 +1763,7 @@
- #define CONFIG_KUX_DEMUXER 0
- #define CONFIG_KVAG_DEMUXER 0
- #define CONFIG_LAF_DEMUXER 0
-+#define CONFIG_LC3_DEMUXER 0
- #define CONFIG_LMLM4_DEMUXER 0
- #define CONFIG_LOAS_DEMUXER 0
- #define CONFIG_LUODAT_DEMUXER 0
-@@ -1850,6 +1847,7 @@
- #define CONFIG_QOA_DEMUXER 0
- #define CONFIG_R3D_DEMUXER 0
- #define CONFIG_RAWVIDEO_DEMUXER 0
-+#define CONFIG_RCWT_DEMUXER 0
- #define CONFIG_REALTEXT_DEMUXER 0
- #define CONFIG_REDSPARK_DEMUXER 0
- #define CONFIG_RKA_DEMUXER 0
-@@ -1987,6 +1985,7 @@
- #define CONFIG_AC4_MUXER 0
- #define CONFIG_ADTS_MUXER 0
- #define CONFIG_ADX_MUXER 0
-+#define CONFIG_AEA_MUXER 0
- #define CONFIG_AIFF_MUXER 0
- #define CONFIG_ALP_MUXER 0
- #define CONFIG_AMR_MUXER 0
-@@ -2026,7 +2025,6 @@
- #define CONFIG_F4V_MUXER 0
- #define CONFIG_FFMETADATA_MUXER 0
- #define CONFIG_FIFO_MUXER 0
--#define CONFIG_FIFO_TEST_MUXER 0
- #define CONFIG_FILMSTRIP_MUXER 0
- #define CONFIG_FITS_MUXER 0
- #define CONFIG_FLAC_MUXER 0
-@@ -2060,6 +2058,7 @@
- #define CONFIG_JACOSUB_MUXER 0
- #define CONFIG_KVAG_MUXER 0
- #define CONFIG_LATM_MUXER 0
-+#define CONFIG_LC3_MUXER 0
- #define CONFIG_LRC_MUXER 0
- #define CONFIG_M4V_MUXER 0
- #define CONFIG_MD5_MUXER 0
-@@ -2162,6 +2161,7 @@
- #define CONFIG_WV_MUXER 0
- #define CONFIG_YUV4MPEGPIPE_MUXER 0
- #define CONFIG_CHROMAPRINT_MUXER 0
-+#define CONFIG_ANDROID_CONTENT_PROTOCOL 0
- #define CONFIG_ASYNC_PROTOCOL 0
- #define CONFIG_BLURAY_PROTOCOL 0
- #define CONFIG_CACHE_PROTOCOL 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/libavformat/demuxer_list.c b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/libavformat/demuxer_list.c
---- a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/libavformat/demuxer_list.c 2024-08-13 10:43:45.219117400 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/libavformat/demuxer_list.c 2024-08-19 01:29:21.000000000 +0100
-@@ -1,4 +1,4 @@
--static const AVInputFormat * const demuxer_list[] = {
-+static const FFInputFormat * const demuxer_list[] = {
- &ff_aac_demuxer,
- &ff_flac_demuxer,
- &ff_matroska_demuxer,
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/libavutil/ffversion.h b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/libavutil/ffversion.h
---- a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/libavutil/ffversion.h 2024-08-13 10:43:45.219117400 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/libavutil/ffversion.h 2024-08-19 01:29:21.000000000 +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-115016-g631703bfb9"
-+#define FFMPEG_VERSION "N-116569-gd0c8e13654"
- #endif /* AVUTIL_FFVERSION_H */
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-08-19 01:29:20.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 @@
+/* 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/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_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-co
mpile --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_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 084e2b53d22c11e013b0a495b65d39aa7f934048)"
++#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
@@ -1200,7 +315,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 0
++#define HAVE_SYS_HWPROBE_H 1
+#define HAVE_SYS_PARAM_H 1
+#define HAVE_SYS_RESOURCE_H 1
+#define HAVE_SYS_SELECT_H 1
@@ -1335,7 +450,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 1
++#define HAVE_RSYNC_CONTIMEOUT 0
+#define HAVE_SYMVER_ASM_LABEL 1
+#define HAVE_SYMVER_GNU_ASM 1
+#define HAVE_VFP_ARGS 0
@@ -1737,7 +852,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#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-08-19 01:29:20.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 @@
+/* Automatically generated by configure - do not modify! */
+#ifndef FFMPEG_CONFIG_COMPONENTS_H
@@ -3959,13 +3074,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-08-19 01:29:20.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/bsf_list.c 2024-10-05 16:34:43.813187846 +0100
@@ -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-08-19 01:29:20.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/codec_list.c 2024-10-05 16:34:43.813187846 +0100
@@ -0,0 +1,17 @@
+static const FFCodec * const codec_list[] = {
+ &ff_h264_decoder,
@@ -3986,7 +3101,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-08-19 01:29:20.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/parser_list.c 2024-10-05 16:34:43.813187846 +0100
@@ -0,0 +1,9 @@
+static const AVCodecParser * const parser_list[] = {
+ &ff_aac_parser,
@@ -3999,7 +3114,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-08-19 01:29:20.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/demuxer_list.c 2024-10-05 16:34:43.813187846 +0100
@@ -0,0 +1,9 @@
+static const FFInputFormat * const demuxer_list[] = {
+ &ff_aac_demuxer,
@@ -4012,19 +3127,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-08-19 01:29:20.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/muxer_list.c 2024-10-05 16:34:43.813187846 +0100
@@ -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-08-19 01:29:20.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/protocol_list.c 2024-10-05 16:34:43.813187846 +0100
@@ -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-08-19 01:29:20.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/avconfig.h 2024-10-05 16:34:43.816521179 +0100
@@ -0,0 +1,6 @@
+/* Generated by ffmpeg configure */
+#ifndef AVUTIL_AVCONFIG_H
@@ -4034,879 +3149,115 @@ 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-08-19 01:29:20.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/ffversion.h 2024-10-05 16:34:43.816521179 +0100
@@ -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-05-24-bc1ee906ce"
++#define FFMPEG_VERSION "git-2024-08-15-14d16cd143"
+#endif /* AVUTIL_FFVERSION_H */
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config.h b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config.h
---- a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config.h 2024-08-13 10:43:45.235118600 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config.h 2024-08-19 01:29:20.000000000 +0100
-@@ -1,14 +1,13 @@
- /* 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-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/ezemtsov/projects/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang --enable-cro
ss-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=arm64-apple-macosx' --extra-cflags=-F/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/19/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/home/ezemtsov/p
rojects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64'" -- 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/usr/local/google/home/dalecurtis/code/chrome/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang -
-enable-cross-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=arm64-apple-macosx' --extra-cflags=-F/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/third_party/llvm-build/Release+Asserts/lib/clang/19/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/home/dalecurtis/code
/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64'" -- 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 7c4c274643cedcf9671e1db65361231a7d9bee70)"
-+#define CC_IDENT "clang version 19.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 084e2b53d22c11e013b0a495b65d39aa7f934048)"
- #define OS_NAME darwin
--#define av_restrict restrict
- #define EXTERN_PREFIX "_"
- #define EXTERN_ASM _
- #define BUILDSUF ""
-@@ -60,6 +59,7 @@
- #define HAVE_VSX 0
- #define HAVE_RV 0
- #define HAVE_RVV 0
-+#define HAVE_RV_ZVBB 0
- #define HAVE_AESNI 0
- #define HAVE_AMD3DNOW 0
- #define HAVE_AMD3DNOWEXT 0
-@@ -78,7 +78,6 @@
- #define HAVE_SSE42 0
- #define HAVE_SSSE3 0
- #define HAVE_XOP 0
--#define HAVE_CPUNOP 0
- #define HAVE_I686 0
- #define HAVE_MIPSFPU 0
- #define HAVE_MIPS32R2 0
-@@ -112,6 +111,7 @@
- #define HAVE_VSX_EXTERNAL 0
- #define HAVE_RV_EXTERNAL 0
- #define HAVE_RVV_EXTERNAL 0
-+#define HAVE_RV_ZVBB_EXTERNAL 0
- #define HAVE_AESNI_EXTERNAL 0
- #define HAVE_AMD3DNOW_EXTERNAL 0
- #define HAVE_AMD3DNOWEXT_EXTERNAL 0
-@@ -130,7 +130,6 @@
- #define HAVE_SSE42_EXTERNAL 0
- #define HAVE_SSSE3_EXTERNAL 0
- #define HAVE_XOP_EXTERNAL 0
--#define HAVE_CPUNOP_EXTERNAL 0
- #define HAVE_I686_EXTERNAL 0
- #define HAVE_MIPSFPU_EXTERNAL 0
- #define HAVE_MIPS32R2_EXTERNAL 0
-@@ -164,6 +163,7 @@
- #define HAVE_VSX_INLINE 0
- #define HAVE_RV_INLINE 0
- #define HAVE_RVV_INLINE 0
-+#define HAVE_RV_ZVBB_INLINE 0
- #define HAVE_AESNI_INLINE 0
- #define HAVE_AMD3DNOW_INLINE 0
- #define HAVE_AMD3DNOWEXT_INLINE 0
-@@ -182,7 +182,6 @@
- #define HAVE_SSE42_INLINE 0
- #define HAVE_SSSE3_INLINE 0
- #define HAVE_XOP_INLINE 0
--#define HAVE_CPUNOP_INLINE 0
- #define HAVE_I686_INLINE 0
- #define HAVE_MIPSFPU_INLINE 0
- #define HAVE_MIPS32R2_INLINE 0
-@@ -220,6 +219,7 @@
- #define HAVE_BIGENDIAN 0
- #define HAVE_FAST_UNALIGNED 1
- #define HAVE_ARPA_INET_H 0
-+#define HAVE_ASM_HWPROBE_H 0
- #define HAVE_ASM_TYPES_H 0
- #define HAVE_CDIO_PARANOIA_H 0
- #define HAVE_CDIO_PARANOIA_PARANOIA_H 0
-@@ -246,6 +246,7 @@
- #define HAVE_OPENGL_GL3_H 0
- #define HAVE_POLL_H 1
- #define HAVE_PTHREAD_NP_H 0
-+#define HAVE_SYS_HWPROBE_H 0
- #define HAVE_SYS_PARAM_H 1
- #define HAVE_SYS_RESOURCE_H 1
- #define HAVE_SYS_SELECT_H 1
-@@ -419,6 +420,7 @@
- #define HAVE_STRUCT_SOCKADDR_STORAGE 0
- #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0
- #define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
-+#define HAVE_STRUCT_MFXCONFIGINTERFACE 0
- #define HAVE_GZIP 1
- #define HAVE_LIBDRM_GETFB2 0
- #define HAVE_MAKEINFO 0
-@@ -429,6 +431,7 @@
- #define HAVE_OPENCL_DXVA2 0
- #define HAVE_OPENCL_VAAPI_BEIGNET 0
- #define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
-+#define HAVE_OPENCL_VIDEOTOOLBOX 0
- #define HAVE_PERL 1
- #define HAVE_POD2MAN 1
- #define HAVE_TEXI2HTML 0
-@@ -468,6 +471,8 @@
- #define CONFIG_FREI0R 0
- #define CONFIG_LIBCDIO 0
- #define CONFIG_LIBDAVS2 0
-+#define CONFIG_LIBDVDNAV 0
-+#define CONFIG_LIBDVDREAD 0
- #define CONFIG_LIBRUBBERBAND 0
- #define CONFIG_LIBVIDSTAB 0
- #define CONFIG_LIBX264 0
-@@ -517,6 +522,7 @@
- #define CONFIG_LIBJXL 0
- #define CONFIG_LIBKLVANC 0
- #define CONFIG_LIBKVAZAAR 0
-+#define CONFIG_LIBLC3 0
- #define CONFIG_LIBMODPLUG 0
- #define CONFIG_LIBMP3LAME 0
- #define CONFIG_LIBMYSOFA 0
-@@ -547,6 +553,7 @@
- #define CONFIG_LIBTENSORFLOW 0
- #define CONFIG_LIBTESSERACT 0
- #define CONFIG_LIBTHEORA 0
-+#define CONFIG_LIBTORCH 0
- #define CONFIG_LIBTWOLAME 0
- #define CONFIG_LIBUAVS3D 0
- #define CONFIG_LIBV4L2 0
-@@ -596,7 +603,6 @@
- #define CONFIG_OPENCL 0
- #define CONFIG_AMF 0
- #define CONFIG_AUDIOTOOLBOX 0
--#define CONFIG_CRYSTALHD 0
- #define CONFIG_CUDA 0
- #define CONFIG_CUDA_LLVM 0
- #define CONFIG_CUVID 0
-@@ -640,6 +646,7 @@
- #define CONFIG_ERROR_RESILIENCE 0
- #define CONFIG_FAAN 0
- #define CONFIG_FAST_UNALIGNED 1
-+#define CONFIG_IAMF 0
- #define CONFIG_LSP 0
- #define CONFIG_PIXELUTILS 0
- #define CONFIG_NETWORK 0
-@@ -688,7 +695,8 @@
- #define CONFIG_DEFLATE_WRAPPER 0
- #define CONFIG_DIRAC_PARSE 1
- #define CONFIG_DNN 0
--#define CONFIG_DOVI_RPU 0
-+#define CONFIG_DOVI_RPUDEC 0
-+#define CONFIG_DOVI_RPUENC 0
- #define CONFIG_DVPROFILE 0
- #define CONFIG_EVCPARSE 0
- #define CONFIG_EXIF 0
-@@ -720,10 +728,12 @@
- #define CONFIG_INFLATE_WRAPPER 0
- #define CONFIG_INTRAX8 0
- #define CONFIG_ISO_MEDIA 1
-+#define CONFIG_ISO_WRITER 0
- #define CONFIG_IVIDSP 0
- #define CONFIG_JPEGTABLES 0
- #define CONFIG_LGPLV3 0
- #define CONFIG_LIBX262 0
-+#define CONFIG_LIBX264_HDR10 0
- #define CONFIG_LLAUDDSP 0
- #define CONFIG_LLVIDDSP 0
- #define CONFIG_LLVIDENCDSP 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config_components.h b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config_components.h
---- a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config_components.h 2024-08-13 10:43:45.235118600 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config_components.h 2024-08-19 01:29:21.000000000 +0100
-@@ -11,6 +11,7 @@
- #define CONFIG_DTS2PTS_BSF 0
- #define CONFIG_DV_ERROR_MARKER_BSF 0
- #define CONFIG_EAC3_CORE_BSF 0
-+#define CONFIG_EVC_FRAME_MERGE_BSF 0
- #define CONFIG_EXTRACT_EXTRADATA_BSF 0
- #define CONFIG_FILTER_UNITS_BSF 0
- #define CONFIG_H264_METADATA_BSF 0
-@@ -23,7 +24,6 @@
- #define CONFIG_MEDIA100_TO_MJPEGB_BSF 0
- #define CONFIG_MJPEG2JPEG_BSF 0
- #define CONFIG_MJPEGA_DUMP_HEADER_BSF 0
--#define CONFIG_MP3_HEADER_DECOMPRESS_BSF 0
- #define CONFIG_MPEG2_METADATA_BSF 0
- #define CONFIG_MPEG4_UNPACK_BFRAMES_BSF 0
- #define CONFIG_MOV2TEXTSUB_BSF 0
-@@ -45,7 +45,6 @@
- #define CONFIG_VP9_SUPERFRAME_SPLIT_BSF 0
- #define CONFIG_VVC_METADATA_BSF 0
- #define CONFIG_VVC_MP4TOANNEXB_BSF 0
--#define CONFIG_EVC_FRAME_MERGE_BSF 0
- #define CONFIG_AASC_DECODER 0
- #define CONFIG_AIC_DECODER 0
- #define CONFIG_ALIAS_PIX_DECODER 0
-@@ -64,7 +63,6 @@
- #define CONFIG_AVRN_DECODER 0
- #define CONFIG_AVS_DECODER 0
- #define CONFIG_AVUI_DECODER 0
--#define CONFIG_AYUV_DECODER 0
- #define CONFIG_BETHSOFTVID_DECODER 0
- #define CONFIG_BFI_DECODER 0
- #define CONFIG_BINK_DECODER 0
-@@ -131,7 +129,6 @@
- #define CONFIG_H263P_DECODER 0
- #define CONFIG_H263_V4L2M2M_DECODER 0
- #define CONFIG_H264_DECODER 0
--#define CONFIG_H264_CRYSTALHD_DECODER 0
- #define CONFIG_H264_V4L2M2M_DECODER 0
- #define CONFIG_H264_MEDIACODEC_DECODER 0
- #define CONFIG_H264_MMAL_DECODER 0
-@@ -179,13 +176,11 @@
- #define CONFIG_MPEG1VIDEO_DECODER 0
- #define CONFIG_MPEG2VIDEO_DECODER 0
- #define CONFIG_MPEG4_DECODER 0
--#define CONFIG_MPEG4_CRYSTALHD_DECODER 0
- #define CONFIG_MPEG4_V4L2M2M_DECODER 0
- #define CONFIG_MPEG4_MMAL_DECODER 0
- #define CONFIG_MPEGVIDEO_DECODER 0
- #define CONFIG_MPEG1_V4L2M2M_DECODER 0
- #define CONFIG_MPEG2_MMAL_DECODER 0
--#define CONFIG_MPEG2_CRYSTALHD_DECODER 0
- #define CONFIG_MPEG2_V4L2M2M_DECODER 0
- #define CONFIG_MPEG2_QSV_DECODER 0
- #define CONFIG_MPEG2_MEDIACODEC_DECODER 0
-@@ -194,7 +189,6 @@
- #define CONFIG_MSMPEG4V1_DECODER 0
- #define CONFIG_MSMPEG4V2_DECODER 0
- #define CONFIG_MSMPEG4V3_DECODER 0
--#define CONFIG_MSMPEG4_CRYSTALHD_DECODER 0
- #define CONFIG_MSP2_DECODER 0
- #define CONFIG_MSRLE_DECODER 0
- #define CONFIG_MSS1_DECODER 0
-@@ -293,7 +287,6 @@
- #define CONFIG_VBN_DECODER 0
- #define CONFIG_VBLE_DECODER 0
- #define CONFIG_VC1_DECODER 0
--#define CONFIG_VC1_CRYSTALHD_DECODER 0
- #define CONFIG_VC1IMAGE_DECODER 0
- #define CONFIG_VC1_MMAL_DECODER 0
- #define CONFIG_VC1_QSV_DECODER 0
-@@ -325,7 +318,6 @@
- #define CONFIG_WMV1_DECODER 0
- #define CONFIG_WMV2_DECODER 0
- #define CONFIG_WMV3_DECODER 0
--#define CONFIG_WMV3_CRYSTALHD_DECODER 0
- #define CONFIG_WMV3IMAGE_DECODER 0
- #define CONFIG_WNV1_DECODER 0
- #define CONFIG_XAN_WC3_DECODER 0
-@@ -592,6 +584,7 @@
- #define CONFIG_LIBGSM_MS_DECODER 0
- #define CONFIG_LIBILBC_DECODER 0
- #define CONFIG_LIBJXL_DECODER 0
-+#define CONFIG_LIBLC3_DECODER 0
- #define CONFIG_LIBOPENCORE_AMRNB_DECODER 0
- #define CONFIG_LIBOPENCORE_AMRWB_DECODER 0
- #define CONFIG_LIBOPUS_DECODER 1
-@@ -639,7 +632,6 @@
- #define CONFIG_ASV2_ENCODER 0
- #define CONFIG_AVRP_ENCODER 0
- #define CONFIG_AVUI_ENCODER 0
--#define CONFIG_AYUV_ENCODER 0
- #define CONFIG_BITPACKED_ENCODER 0
- #define CONFIG_BMP_ENCODER 0
- #define CONFIG_CFHD_ENCODER 0
-@@ -821,6 +813,7 @@
- #define CONFIG_LIBGSM_MS_ENCODER 0
- #define CONFIG_LIBILBC_ENCODER 0
- #define CONFIG_LIBJXL_ENCODER 0
-+#define CONFIG_LIBLC3_ENCODER 0
- #define CONFIG_LIBMP3LAME_ENCODER 0
- #define CONFIG_LIBOPENCORE_AMRNB_ENCODER 0
- #define CONFIG_LIBOPENJPEG_ENCODER 0
-@@ -1573,6 +1566,8 @@
- #define CONFIG_HSTACK_QSV_FILTER 0
- #define CONFIG_VSTACK_QSV_FILTER 0
- #define CONFIG_XSTACK_QSV_FILTER 0
-+#define CONFIG_PAD_VAAPI_FILTER 0
-+#define CONFIG_DRAWBOX_VAAPI_FILTER 0
- #define CONFIG_ALLRGB_FILTER 0
- #define CONFIG_ALLYUV_FILTER 0
- #define CONFIG_CELLAUTO_FILTER 0
-@@ -1706,6 +1701,7 @@
- #define CONFIG_DV_DEMUXER 0
- #define CONFIG_DVBSUB_DEMUXER 0
- #define CONFIG_DVBTXT_DEMUXER 0
-+#define CONFIG_DVDVIDEO_DEMUXER 0
- #define CONFIG_DXA_DEMUXER 0
- #define CONFIG_EA_DEMUXER 0
- #define CONFIG_EA_CDATA_DEMUXER 0
-@@ -1767,6 +1763,7 @@
- #define CONFIG_KUX_DEMUXER 0
- #define CONFIG_KVAG_DEMUXER 0
- #define CONFIG_LAF_DEMUXER 0
-+#define CONFIG_LC3_DEMUXER 0
- #define CONFIG_LMLM4_DEMUXER 0
- #define CONFIG_LOAS_DEMUXER 0
- #define CONFIG_LUODAT_DEMUXER 0
-@@ -1850,6 +1847,7 @@
- #define CONFIG_QOA_DEMUXER 0
- #define CONFIG_R3D_DEMUXER 0
- #define CONFIG_RAWVIDEO_DEMUXER 0
-+#define CONFIG_RCWT_DEMUXER 0
- #define CONFIG_REALTEXT_DEMUXER 0
- #define CONFIG_REDSPARK_DEMUXER 0
- #define CONFIG_RKA_DEMUXER 0
-@@ -1987,6 +1985,7 @@
- #define CONFIG_AC4_MUXER 0
- #define CONFIG_ADTS_MUXER 0
- #define CONFIG_ADX_MUXER 0
-+#define CONFIG_AEA_MUXER 0
- #define CONFIG_AIFF_MUXER 0
- #define CONFIG_ALP_MUXER 0
- #define CONFIG_AMR_MUXER 0
-@@ -2026,7 +2025,6 @@
- #define CONFIG_F4V_MUXER 0
- #define CONFIG_FFMETADATA_MUXER 0
- #define CONFIG_FIFO_MUXER 0
--#define CONFIG_FIFO_TEST_MUXER 0
- #define CONFIG_FILMSTRIP_MUXER 0
- #define CONFIG_FITS_MUXER 0
- #define CONFIG_FLAC_MUXER 0
-@@ -2060,6 +2058,7 @@
- #define CONFIG_JACOSUB_MUXER 0
- #define CONFIG_KVAG_MUXER 0
- #define CONFIG_LATM_MUXER 0
-+#define CONFIG_LC3_MUXER 0
- #define CONFIG_LRC_MUXER 0
- #define CONFIG_M4V_MUXER 0
- #define CONFIG_MD5_MUXER 0
-@@ -2162,6 +2161,7 @@
- #define CONFIG_WV_MUXER 0
- #define CONFIG_YUV4MPEGPIPE_MUXER 0
- #define CONFIG_CHROMAPRINT_MUXER 0
-+#define CONFIG_ANDROID_CONTENT_PROTOCOL 0
- #define CONFIG_ASYNC_PROTOCOL 0
- #define CONFIG_BLURAY_PROTOCOL 0
- #define CONFIG_CACHE_PROTOCOL 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/libavformat/demuxer_list.c b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/libavformat/demuxer_list.c
---- a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/libavformat/demuxer_list.c 2024-08-13 10:43:45.235118600 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/libavformat/demuxer_list.c 2024-08-19 01:29:21.000000000 +0100
-@@ -1,4 +1,4 @@
--static const AVInputFormat * const demuxer_list[] = {
-+static const FFInputFormat * const demuxer_list[] = {
- &ff_flac_demuxer,
- &ff_matroska_demuxer,
- &ff_mov_demuxer,
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/libavutil/ffversion.h b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/libavutil/ffversion.h
---- a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/libavutil/ffversion.h 2024-08-13 10:43:45.235118600 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/libavutil/ffversion.h 2024-08-19 01:29:21.000000000 +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-115016-g631703bfb9"
-+#define FFMPEG_VERSION "N-116569-gd0c8e13654"
- #endif /* AVUTIL_FFVERSION_H */
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.asm b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.asm
---- a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.asm 2024-08-13 10:43:45.235118600 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.asm 2024-08-19 01:29:21.000000000 +0100
-@@ -44,6 +44,7 @@
- %define HAVE_VSX 0
- %define HAVE_RV 0
- %define HAVE_RVV 0
-+%define HAVE_RV_ZVBB 0
- %define HAVE_AESNI 1
- %define HAVE_AMD3DNOW 1
- %define HAVE_AMD3DNOWEXT 1
-@@ -62,7 +63,6 @@
- %define HAVE_SSE42 1
- %define HAVE_SSSE3 1
- %define HAVE_XOP 1
--%define HAVE_CPUNOP 0
- %define HAVE_I686 1
- %define HAVE_MIPSFPU 0
- %define HAVE_MIPS32R2 0
-@@ -96,6 +96,7 @@
- %define HAVE_VSX_EXTERNAL 0
- %define HAVE_RV_EXTERNAL 0
- %define HAVE_RVV_EXTERNAL 0
-+%define HAVE_RV_ZVBB_EXTERNAL 0
- %define HAVE_AESNI_EXTERNAL 1
- %define HAVE_AMD3DNOW_EXTERNAL 1
+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
-@@ -114,7 +115,6 @@
- %define HAVE_SSE42_EXTERNAL 1
- %define HAVE_SSSE3_EXTERNAL 1
- %define HAVE_XOP_EXTERNAL 1
--%define HAVE_CPUNOP_EXTERNAL 0
- %define HAVE_I686_EXTERNAL 0
- %define HAVE_MIPSFPU_EXTERNAL 0
- %define HAVE_MIPS32R2_EXTERNAL 0
-@@ -148,6 +148,7 @@
- %define HAVE_VSX_INLINE 0
- %define HAVE_RV_INLINE 0
- %define HAVE_RVV_INLINE 0
-+%define HAVE_RV_ZVBB_INLINE 0
- %define HAVE_AESNI_INLINE 1
- %define HAVE_AMD3DNOW_INLINE 1
- %define HAVE_AMD3DNOWEXT_INLINE 1
-@@ -166,7 +167,6 @@
- %define HAVE_SSE42_INLINE 1
- %define HAVE_SSSE3_INLINE 1
- %define HAVE_XOP_INLINE 1
--%define HAVE_CPUNOP_INLINE 0
- %define HAVE_I686_INLINE 0
- %define HAVE_MIPSFPU_INLINE 0
- %define HAVE_MIPS32R2_INLINE 0
-@@ -204,6 +204,7 @@
- %define HAVE_BIGENDIAN 0
- %define HAVE_FAST_UNALIGNED 1
- %define HAVE_ARPA_INET_H 0
-+%define HAVE_ASM_HWPROBE_H 0
- %define HAVE_ASM_TYPES_H 0
- %define HAVE_CDIO_PARANOIA_H 0
- %define HAVE_CDIO_PARANOIA_PARANOIA_H 0
-@@ -230,6 +231,7 @@
- %define HAVE_OPENGL_GL3_H 0
- %define HAVE_POLL_H 1
- %define HAVE_PTHREAD_NP_H 0
-+%define HAVE_SYS_HWPROBE_H 0
- %define HAVE_SYS_PARAM_H 1
- %define HAVE_SYS_RESOURCE_H 1
- %define HAVE_SYS_SELECT_H 1
-@@ -403,6 +405,7 @@
- %define HAVE_STRUCT_SOCKADDR_STORAGE 0
- %define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0
- %define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
-+%define HAVE_STRUCT_MFXCONFIGINTERFACE 0
- %define HAVE_GZIP 1
- %define HAVE_LIBDRM_GETFB2 0
- %define HAVE_MAKEINFO 0
-@@ -413,6 +416,7 @@
- %define HAVE_OPENCL_DXVA2 0
- %define HAVE_OPENCL_VAAPI_BEIGNET 0
- %define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
-+%define HAVE_OPENCL_VIDEOTOOLBOX 0
+ %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
-@@ -452,6 +456,8 @@
- %define CONFIG_FREI0R 0
- %define CONFIG_LIBCDIO 0
- %define CONFIG_LIBDAVS2 0
-+%define CONFIG_LIBDVDNAV 0
-+%define CONFIG_LIBDVDREAD 0
- %define CONFIG_LIBRUBBERBAND 0
- %define CONFIG_LIBVIDSTAB 0
- %define CONFIG_LIBX264 0
-@@ -501,6 +507,7 @@
- %define CONFIG_LIBJXL 0
- %define CONFIG_LIBKLVANC 0
- %define CONFIG_LIBKVAZAAR 0
-+%define CONFIG_LIBLC3 0
- %define CONFIG_LIBMODPLUG 0
- %define CONFIG_LIBMP3LAME 0
- %define CONFIG_LIBMYSOFA 0
-@@ -531,6 +538,7 @@
- %define CONFIG_LIBTENSORFLOW 0
- %define CONFIG_LIBTESSERACT 0
- %define CONFIG_LIBTHEORA 0
-+%define CONFIG_LIBTORCH 0
- %define CONFIG_LIBTWOLAME 0
- %define CONFIG_LIBUAVS3D 0
- %define CONFIG_LIBV4L2 0
-@@ -580,7 +588,6 @@
- %define CONFIG_OPENCL 0
- %define CONFIG_AMF 0
- %define CONFIG_AUDIOTOOLBOX 0
--%define CONFIG_CRYSTALHD 0
- %define CONFIG_CUDA 0
- %define CONFIG_CUDA_LLVM 0
- %define CONFIG_CUVID 0
-@@ -624,6 +631,7 @@
- %define CONFIG_ERROR_RESILIENCE 0
- %define CONFIG_FAAN 0
- %define CONFIG_FAST_UNALIGNED 1
-+%define CONFIG_IAMF 0
- %define CONFIG_LSP 0
- %define CONFIG_PIXELUTILS 0
- %define CONFIG_NETWORK 0
-@@ -672,7 +680,8 @@
- %define CONFIG_DEFLATE_WRAPPER 0
- %define CONFIG_DIRAC_PARSE 1
- %define CONFIG_DNN 0
--%define CONFIG_DOVI_RPU 0
-+%define CONFIG_DOVI_RPUDEC 0
-+%define CONFIG_DOVI_RPUENC 0
- %define CONFIG_DVPROFILE 0
- %define CONFIG_EVCPARSE 0
- %define CONFIG_EXIF 0
-@@ -704,10 +713,12 @@
- %define CONFIG_INFLATE_WRAPPER 0
- %define CONFIG_INTRAX8 0
- %define CONFIG_ISO_MEDIA 1
-+%define CONFIG_ISO_WRITER 0
- %define CONFIG_IVIDSP 0
- %define CONFIG_JPEGTABLES 0
- %define CONFIG_LGPLV3 0
- %define CONFIG_LIBX262 0
-+%define CONFIG_LIBX264_HDR10 0
- %define CONFIG_LLAUDDSP 0
- %define CONFIG_LLVIDDSP 0
- %define CONFIG_LLVIDENCDSP 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.h b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.h
---- a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.h 2024-08-13 10:43:45.235118600 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.h 2024-08-19 01:29:21.000000000 +0100
-@@ -1,14 +1,13 @@
+-%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-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/ezemtsov/projects/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang --enable-cro
ss-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=x86_64-apple-macosx' --extra-cflags=-F/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/19/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/home/ezemtsov/
projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=x86_64 --extra-cflags=-m64 --extra-ldflags='-arch x86_64'" -- 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/usr/local/google/home/dalecurtis/code/chrome/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang -
-enable-cross-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=x86_64-apple-macosx' --extra-cflags=-F/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/third_party/llvm-build/Release+Asserts/lib/clang/19/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/home/dalecurtis/cod
e/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=x86_64 --extra-cflags=-m64 --extra-ldflags='-arch x86_64'" -- 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/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 --ena
ble-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 7c4c274643cedcf9671e1db65361231a7d9bee70)"
-+#define CC_IDENT "clang version 19.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 084e2b53d22c11e013b0a495b65d39aa7f934048)"
- #define OS_NAME darwin
--#define av_restrict restrict
- #define EXTERN_PREFIX "_"
- #define EXTERN_ASM _
- #define BUILDSUF ""
-@@ -59,6 +58,7 @@
- #define HAVE_VSX 0
- #define HAVE_RV 0
- #define HAVE_RVV 0
-+#define HAVE_RV_ZVBB 0
- #define HAVE_AESNI 1
- #define HAVE_AMD3DNOW 1
- #define HAVE_AMD3DNOWEXT 1
-@@ -77,7 +77,6 @@
- #define HAVE_SSE42 1
- #define HAVE_SSSE3 1
- #define HAVE_XOP 1
--#define HAVE_CPUNOP 0
- #define HAVE_I686 1
- #define HAVE_MIPSFPU 0
- #define HAVE_MIPS32R2 0
-@@ -111,6 +110,7 @@
- #define HAVE_VSX_EXTERNAL 0
- #define HAVE_RV_EXTERNAL 0
- #define HAVE_RVV_EXTERNAL 0
-+#define HAVE_RV_ZVBB_EXTERNAL 0
- #define HAVE_AESNI_EXTERNAL 1
- #define HAVE_AMD3DNOW_EXTERNAL 1
+-#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
-@@ -129,7 +129,6 @@
- #define HAVE_SSE42_EXTERNAL 1
- #define HAVE_SSSE3_EXTERNAL 1
- #define HAVE_XOP_EXTERNAL 1
--#define HAVE_CPUNOP_EXTERNAL 0
- #define HAVE_I686_EXTERNAL 0
- #define HAVE_MIPSFPU_EXTERNAL 0
- #define HAVE_MIPS32R2_EXTERNAL 0
-@@ -163,6 +162,7 @@
- #define HAVE_VSX_INLINE 0
- #define HAVE_RV_INLINE 0
- #define HAVE_RVV_INLINE 0
-+#define HAVE_RV_ZVBB_INLINE 0
- #define HAVE_AESNI_INLINE 1
- #define HAVE_AMD3DNOW_INLINE 1
- #define HAVE_AMD3DNOWEXT_INLINE 1
-@@ -181,7 +181,6 @@
- #define HAVE_SSE42_INLINE 1
- #define HAVE_SSSE3_INLINE 1
- #define HAVE_XOP_INLINE 1
--#define HAVE_CPUNOP_INLINE 0
- #define HAVE_I686_INLINE 0
- #define HAVE_MIPSFPU_INLINE 0
- #define HAVE_MIPS32R2_INLINE 0
-@@ -219,6 +218,7 @@
- #define HAVE_BIGENDIAN 0
- #define HAVE_FAST_UNALIGNED 1
- #define HAVE_ARPA_INET_H 0
-+#define HAVE_ASM_HWPROBE_H 0
- #define HAVE_ASM_TYPES_H 0
- #define HAVE_CDIO_PARANOIA_H 0
- #define HAVE_CDIO_PARANOIA_PARANOIA_H 0
-@@ -245,6 +245,7 @@
- #define HAVE_OPENGL_GL3_H 0
- #define HAVE_POLL_H 1
- #define HAVE_PTHREAD_NP_H 0
-+#define HAVE_SYS_HWPROBE_H 0
- #define HAVE_SYS_PARAM_H 1
- #define HAVE_SYS_RESOURCE_H 1
- #define HAVE_SYS_SELECT_H 1
-@@ -418,6 +419,7 @@
- #define HAVE_STRUCT_SOCKADDR_STORAGE 0
- #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0
- #define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
-+#define HAVE_STRUCT_MFXCONFIGINTERFACE 0
- #define HAVE_GZIP 1
- #define HAVE_LIBDRM_GETFB2 0
- #define HAVE_MAKEINFO 0
-@@ -428,6 +430,7 @@
- #define HAVE_OPENCL_DXVA2 0
- #define HAVE_OPENCL_VAAPI_BEIGNET 0
- #define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
-+#define HAVE_OPENCL_VIDEOTOOLBOX 0
+ #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
-@@ -467,6 +470,8 @@
- #define CONFIG_FREI0R 0
- #define CONFIG_LIBCDIO 0
- #define CONFIG_LIBDAVS2 0
-+#define CONFIG_LIBDVDNAV 0
-+#define CONFIG_LIBDVDREAD 0
- #define CONFIG_LIBRUBBERBAND 0
- #define CONFIG_LIBVIDSTAB 0
- #define CONFIG_LIBX264 0
-@@ -516,6 +521,7 @@
- #define CONFIG_LIBJXL 0
- #define CONFIG_LIBKLVANC 0
- #define CONFIG_LIBKVAZAAR 0
-+#define CONFIG_LIBLC3 0
- #define CONFIG_LIBMODPLUG 0
- #define CONFIG_LIBMP3LAME 0
- #define CONFIG_LIBMYSOFA 0
-@@ -546,6 +552,7 @@
- #define CONFIG_LIBTENSORFLOW 0
- #define CONFIG_LIBTESSERACT 0
- #define CONFIG_LIBTHEORA 0
-+#define CONFIG_LIBTORCH 0
- #define CONFIG_LIBTWOLAME 0
- #define CONFIG_LIBUAVS3D 0
- #define CONFIG_LIBV4L2 0
-@@ -595,7 +602,6 @@
- #define CONFIG_OPENCL 0
- #define CONFIG_AMF 0
- #define CONFIG_AUDIOTOOLBOX 0
--#define CONFIG_CRYSTALHD 0
- #define CONFIG_CUDA 0
- #define CONFIG_CUDA_LLVM 0
- #define CONFIG_CUVID 0
-@@ -639,6 +645,7 @@
- #define CONFIG_ERROR_RESILIENCE 0
- #define CONFIG_FAAN 0
- #define CONFIG_FAST_UNALIGNED 1
-+#define CONFIG_IAMF 0
- #define CONFIG_LSP 0
- #define CONFIG_PIXELUTILS 0
- #define CONFIG_NETWORK 0
-@@ -687,7 +694,8 @@
- #define CONFIG_DEFLATE_WRAPPER 0
- #define CONFIG_DIRAC_PARSE 1
- #define CONFIG_DNN 0
--#define CONFIG_DOVI_RPU 0
-+#define CONFIG_DOVI_RPUDEC 0
-+#define CONFIG_DOVI_RPUENC 0
- #define CONFIG_DVPROFILE 0
- #define CONFIG_EVCPARSE 0
- #define CONFIG_EXIF 0
-@@ -719,10 +727,12 @@
- #define CONFIG_INFLATE_WRAPPER 0
- #define CONFIG_INTRAX8 0
- #define CONFIG_ISO_MEDIA 1
-+#define CONFIG_ISO_WRITER 0
- #define CONFIG_IVIDSP 0
- #define CONFIG_JPEGTABLES 0
- #define CONFIG_LGPLV3 0
- #define CONFIG_LIBX262 0
-+#define CONFIG_LIBX264_HDR10 0
- #define CONFIG_LLAUDDSP 0
- #define CONFIG_LLVIDDSP 0
- #define CONFIG_LLVIDENCDSP 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config_components.h b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config_components.h
---- a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config_components.h 2024-08-13 10:43:45.235118600 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config_components.h 2024-08-19 01:29:21.000000000 +0100
-@@ -11,6 +11,7 @@
- #define CONFIG_DTS2PTS_BSF 0
- #define CONFIG_DV_ERROR_MARKER_BSF 0
- #define CONFIG_EAC3_CORE_BSF 0
-+#define CONFIG_EVC_FRAME_MERGE_BSF 0
- #define CONFIG_EXTRACT_EXTRADATA_BSF 0
- #define CONFIG_FILTER_UNITS_BSF 0
- #define CONFIG_H264_METADATA_BSF 0
-@@ -23,7 +24,6 @@
- #define CONFIG_MEDIA100_TO_MJPEGB_BSF 0
- #define CONFIG_MJPEG2JPEG_BSF 0
- #define CONFIG_MJPEGA_DUMP_HEADER_BSF 0
--#define CONFIG_MP3_HEADER_DECOMPRESS_BSF 0
- #define CONFIG_MPEG2_METADATA_BSF 0
- #define CONFIG_MPEG4_UNPACK_BFRAMES_BSF 0
- #define CONFIG_MOV2TEXTSUB_BSF 0
-@@ -45,7 +45,6 @@
- #define CONFIG_VP9_SUPERFRAME_SPLIT_BSF 0
- #define CONFIG_VVC_METADATA_BSF 0
- #define CONFIG_VVC_MP4TOANNEXB_BSF 0
--#define CONFIG_EVC_FRAME_MERGE_BSF 0
- #define CONFIG_AASC_DECODER 0
- #define CONFIG_AIC_DECODER 0
- #define CONFIG_ALIAS_PIX_DECODER 0
-@@ -64,7 +63,6 @@
- #define CONFIG_AVRN_DECODER 0
- #define CONFIG_AVS_DECODER 0
- #define CONFIG_AVUI_DECODER 0
--#define CONFIG_AYUV_DECODER 0
- #define CONFIG_BETHSOFTVID_DECODER 0
- #define CONFIG_BFI_DECODER 0
- #define CONFIG_BINK_DECODER 0
-@@ -131,7 +129,6 @@
- #define CONFIG_H263P_DECODER 0
- #define CONFIG_H263_V4L2M2M_DECODER 0
- #define CONFIG_H264_DECODER 0
--#define CONFIG_H264_CRYSTALHD_DECODER 0
- #define CONFIG_H264_V4L2M2M_DECODER 0
- #define CONFIG_H264_MEDIACODEC_DECODER 0
- #define CONFIG_H264_MMAL_DECODER 0
-@@ -179,13 +176,11 @@
- #define CONFIG_MPEG1VIDEO_DECODER 0
- #define CONFIG_MPEG2VIDEO_DECODER 0
- #define CONFIG_MPEG4_DECODER 0
--#define CONFIG_MPEG4_CRYSTALHD_DECODER 0
- #define CONFIG_MPEG4_V4L2M2M_DECODER 0
- #define CONFIG_MPEG4_MMAL_DECODER 0
- #define CONFIG_MPEGVIDEO_DECODER 0
- #define CONFIG_MPEG1_V4L2M2M_DECODER 0
- #define CONFIG_MPEG2_MMAL_DECODER 0
--#define CONFIG_MPEG2_CRYSTALHD_DECODER 0
- #define CONFIG_MPEG2_V4L2M2M_DECODER 0
- #define CONFIG_MPEG2_QSV_DECODER 0
- #define CONFIG_MPEG2_MEDIACODEC_DECODER 0
-@@ -194,7 +189,6 @@
- #define CONFIG_MSMPEG4V1_DECODER 0
- #define CONFIG_MSMPEG4V2_DECODER 0
- #define CONFIG_MSMPEG4V3_DECODER 0
--#define CONFIG_MSMPEG4_CRYSTALHD_DECODER 0
- #define CONFIG_MSP2_DECODER 0
- #define CONFIG_MSRLE_DECODER 0
- #define CONFIG_MSS1_DECODER 0
-@@ -293,7 +287,6 @@
- #define CONFIG_VBN_DECODER 0
- #define CONFIG_VBLE_DECODER 0
- #define CONFIG_VC1_DECODER 0
--#define CONFIG_VC1_CRYSTALHD_DECODER 0
- #define CONFIG_VC1IMAGE_DECODER 0
- #define CONFIG_VC1_MMAL_DECODER 0
- #define CONFIG_VC1_QSV_DECODER 0
-@@ -325,7 +318,6 @@
- #define CONFIG_WMV1_DECODER 0
- #define CONFIG_WMV2_DECODER 0
- #define CONFIG_WMV3_DECODER 0
--#define CONFIG_WMV3_CRYSTALHD_DECODER 0
- #define CONFIG_WMV3IMAGE_DECODER 0
- #define CONFIG_WNV1_DECODER 0
- #define CONFIG_XAN_WC3_DECODER 0
-@@ -592,6 +584,7 @@
- #define CONFIG_LIBGSM_MS_DECODER 0
- #define CONFIG_LIBILBC_DECODER 0
- #define CONFIG_LIBJXL_DECODER 0
-+#define CONFIG_LIBLC3_DECODER 0
- #define CONFIG_LIBOPENCORE_AMRNB_DECODER 0
- #define CONFIG_LIBOPENCORE_AMRWB_DECODER 0
- #define CONFIG_LIBOPUS_DECODER 1
-@@ -639,7 +632,6 @@
- #define CONFIG_ASV2_ENCODER 0
- #define CONFIG_AVRP_ENCODER 0
- #define CONFIG_AVUI_ENCODER 0
--#define CONFIG_AYUV_ENCODER 0
- #define CONFIG_BITPACKED_ENCODER 0
- #define CONFIG_BMP_ENCODER 0
- #define CONFIG_CFHD_ENCODER 0
-@@ -821,6 +813,7 @@
- #define CONFIG_LIBGSM_MS_ENCODER 0
- #define CONFIG_LIBILBC_ENCODER 0
- #define CONFIG_LIBJXL_ENCODER 0
-+#define CONFIG_LIBLC3_ENCODER 0
- #define CONFIG_LIBMP3LAME_ENCODER 0
- #define CONFIG_LIBOPENCORE_AMRNB_ENCODER 0
- #define CONFIG_LIBOPENJPEG_ENCODER 0
-@@ -1573,6 +1566,8 @@
- #define CONFIG_HSTACK_QSV_FILTER 0
- #define CONFIG_VSTACK_QSV_FILTER 0
- #define CONFIG_XSTACK_QSV_FILTER 0
-+#define CONFIG_PAD_VAAPI_FILTER 0
-+#define CONFIG_DRAWBOX_VAAPI_FILTER 0
- #define CONFIG_ALLRGB_FILTER 0
- #define CONFIG_ALLYUV_FILTER 0
- #define CONFIG_CELLAUTO_FILTER 0
-@@ -1706,6 +1701,7 @@
- #define CONFIG_DV_DEMUXER 0
- #define CONFIG_DVBSUB_DEMUXER 0
- #define CONFIG_DVBTXT_DEMUXER 0
-+#define CONFIG_DVDVIDEO_DEMUXER 0
- #define CONFIG_DXA_DEMUXER 0
- #define CONFIG_EA_DEMUXER 0
- #define CONFIG_EA_CDATA_DEMUXER 0
-@@ -1767,6 +1763,7 @@
- #define CONFIG_KUX_DEMUXER 0
- #define CONFIG_KVAG_DEMUXER 0
- #define CONFIG_LAF_DEMUXER 0
-+#define CONFIG_LC3_DEMUXER 0
- #define CONFIG_LMLM4_DEMUXER 0
- #define CONFIG_LOAS_DEMUXER 0
- #define CONFIG_LUODAT_DEMUXER 0
-@@ -1850,6 +1847,7 @@
- #define CONFIG_QOA_DEMUXER 0
- #define CONFIG_R3D_DEMUXER 0
- #define CONFIG_RAWVIDEO_DEMUXER 0
-+#define CONFIG_RCWT_DEMUXER 0
- #define CONFIG_REALTEXT_DEMUXER 0
- #define CONFIG_REDSPARK_DEMUXER 0
- #define CONFIG_RKA_DEMUXER 0
-@@ -1987,6 +1985,7 @@
- #define CONFIG_AC4_MUXER 0
- #define CONFIG_ADTS_MUXER 0
- #define CONFIG_ADX_MUXER 0
-+#define CONFIG_AEA_MUXER 0
- #define CONFIG_AIFF_MUXER 0
- #define CONFIG_ALP_MUXER 0
- #define CONFIG_AMR_MUXER 0
-@@ -2026,7 +2025,6 @@
- #define CONFIG_F4V_MUXER 0
- #define CONFIG_FFMETADATA_MUXER 0
- #define CONFIG_FIFO_MUXER 0
--#define CONFIG_FIFO_TEST_MUXER 0
- #define CONFIG_FILMSTRIP_MUXER 0
- #define CONFIG_FITS_MUXER 0
- #define CONFIG_FLAC_MUXER 0
-@@ -2060,6 +2058,7 @@
- #define CONFIG_JACOSUB_MUXER 0
- #define CONFIG_KVAG_MUXER 0
- #define CONFIG_LATM_MUXER 0
-+#define CONFIG_LC3_MUXER 0
- #define CONFIG_LRC_MUXER 0
- #define CONFIG_M4V_MUXER 0
- #define CONFIG_MD5_MUXER 0
-@@ -2162,6 +2161,7 @@
- #define CONFIG_WV_MUXER 0
- #define CONFIG_YUV4MPEGPIPE_MUXER 0
- #define CONFIG_CHROMAPRINT_MUXER 0
-+#define CONFIG_ANDROID_CONTENT_PROTOCOL 0
- #define CONFIG_ASYNC_PROTOCOL 0
- #define CONFIG_BLURAY_PROTOCOL 0
- #define CONFIG_CACHE_PROTOCOL 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/libavformat/demuxer_list.c b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/libavformat/demuxer_list.c
---- a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/libavformat/demuxer_list.c 2024-08-13 10:43:45.235118600 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/libavformat/demuxer_list.c 2024-08-19 01:29:21.000000000 +0100
-@@ -1,4 +1,4 @@
--static const AVInputFormat * const demuxer_list[] = {
-+static const FFInputFormat * const demuxer_list[] = {
- &ff_flac_demuxer,
- &ff_matroska_demuxer,
- &ff_mov_demuxer,
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/libavutil/ffversion.h b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/libavutil/ffversion.h
---- a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/libavutil/ffversion.h 2024-08-13 10:43:45.239119000 +0100
-+++ b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/libavutil/ffversion.h 2024-08-19 01:29:21.000000000 +0100
+-#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-115016-g631703bfb9"
-+#define FFMPEG_VERSION "N-116569-gd0c8e13654"
+-#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-08-19 01:29:20.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 @@
+/* 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/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_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-co
mpile --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_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 084e2b53d22c11e013b0a495b65d39aa7f934048)"
++#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
@@ -5145,7 +3496,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 0
++#define HAVE_SYS_HWPROBE_H 1
+#define HAVE_SYS_PARAM_H 1
+#define HAVE_SYS_RESOURCE_H 1
+#define HAVE_SYS_SELECT_H 1
@@ -5280,7 +3631,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 1
++#define HAVE_RSYNC_CONTIMEOUT 0
+#define HAVE_SYMVER_ASM_LABEL 1
+#define HAVE_SYMVER_GNU_ASM 1
+#define HAVE_VFP_ARGS 0
@@ -5682,7 +4033,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#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-08-19 01:29:20.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 @@
+/* Automatically generated by configure - do not modify! */
+#ifndef FFMPEG_CONFIG_COMPONENTS_H
@@ -7904,13 +6255,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-08-19 01:29:20.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/bsf_list.c 2024-10-05 16:34:43.823187846 +0100
@@ -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-08-19 01:29:20.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/codec_list.c 2024-10-05 16:34:43.823187846 +0100
@@ -0,0 +1,15 @@
+static const FFCodec * const codec_list[] = {
+ &ff_flac_decoder,
@@ -7929,7 +6280,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-08-19 01:29:20.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/parser_list.c 2024-10-05 16:34:43.823187846 +0100
@@ -0,0 +1,7 @@
+static const AVCodecParser * const parser_list[] = {
+ &ff_flac_parser,
@@ -7940,7 +6291,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-08-19 01:29:20.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/demuxer_list.c 2024-10-05 16:34:43.823187846 +0100
@@ -0,0 +1,8 @@
+static const FFInputFormat * const demuxer_list[] = {
+ &ff_flac_demuxer,
@@ -7952,19 +6303,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-08-19 01:29:20.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/muxer_list.c 2024-10-05 16:34:43.826521179 +0100
@@ -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-08-19 01:29:20.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/protocol_list.c 2024-10-05 16:34:43.826521179 +0100
@@ -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-08-19 01:29:20.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/avconfig.h 2024-10-05 16:34:43.826521179 +0100
@@ -0,0 +1,6 @@
+/* Generated by ffmpeg configure */
+#ifndef AVUTIL_AVCONFIG_H
@@ -7974,17 +6325,118 @@ 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-08-19 01:29:20.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/ffversion.h 2024-10-05 16:34:43.826521179 +0100
@@ -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-05-24-bc1ee906ce"
++#define FFMPEG_VERSION "git-2024-08-15-14d16cd143"
+#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 --ena
ble-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
+@@ -10,7 +10,7 @@
+ # Copy config files for various architectures:
+ # - ia32/x64 have config.asm, config.h
+ # - arm/arm-neon have config.h
+- for arch in arm arm-neon arm64 ia32 x64 mipsel mips64el; do
++ for arch in arm arm-neon arm64 ia32 x64 mipsel mips64el riscv64; do
+ # Don't waste time on non-existent configs, if no config.h then skip.
+ [ ! -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-08-13 10:43:45.287123200 +0100
-+++ b/third_party/ffmpeg/ffmpeg_generated.gni 2024-08-18 23:57:20.000000000 +0100
-@@ -14,18 +14,12 @@
+--- 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 @@
use_linux_config = is_linux || is_chromeos || is_fuchsia
@@ -7992,119 +6444,24 @@ 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") {
++if ((use_linux_config && current_cpu == "riscv64") ||
++ (use_linux_config && current_cpu == "x64")) {
ffmpeg_c_sources += [
"libavcodec/ac3_channel_layout_tab.c",
"libavcodec/ac3_parser.c",
- "libavcodec/adts_parser.c",
- "libavcodec/allcodecs.c",
-- "libavcodec/autorename_libavcodec_flacdsp.c",
-- "libavcodec/autorename_libavcodec_mpegaudiodsp.c",
-- "libavcodec/autorename_libavcodec_vorbisdsp.c",
- "libavcodec/avcodec.c",
- "libavcodec/avdct.c",
- "libavcodec/avfft.c",
-@@ -45,6 +39,7 @@
- "libavcodec/flac_parser.c",
- "libavcodec/flacdata.c",
- "libavcodec/flacdec.c",
-+ "libavcodec/flacdsp.c",
- "libavcodec/get_buffer.c",
- "libavcodec/golomb.c",
- "libavcodec/imgconvert.c",
-@@ -62,6 +57,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",
-@@ -80,6 +76,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",
-@@ -89,6 +87,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",
-@@ -143,11 +142,6 @@
- "libavutil/aes.c",
- "libavutil/aes_ctr.c",
- "libavutil/ambient_viewing_environment.c",
-- "libavutil/autorename_libavutil_cpu.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",
-@@ -156,6 +150,7 @@
- "libavutil/buffer.c",
- "libavutil/camellia.c",
- "libavutil/channel_layout.c",
-+ "libavutil/cpu.c",
- "libavutil/crc.c",
- "libavutil/csp.c",
- "libavutil/detection_bbox.c",
-@@ -170,12 +165,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",
-@@ -193,6 +191,9 @@
- "libavutil/random_seed.c",
- "libavutil/rational.c",
- "libavutil/reverse.c",
-+ "libavutil/riscv/autorename_libavutil_riscv_cpu.c",
-+ "libavutil/riscv/fixed_dsp_init.c",
-+ "libavutil/riscv/float_dsp_init.c",
- "libavutil/samplefmt.c",
- "libavutil/sha.c",
- "libavutil/slicethread.c",
-@@ -205,19 +206,36 @@
- "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",
+@@ -211,16 +209,26 @@
]
-+ 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",
-+ ]
}
--if ((is_apple && ffmpeg_branding == "Chrome") ||
+-if ((current_cpu == "arm64" && ffmpeg_branding == "Chrome") ||
+- (current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
+- (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
+- (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") {
++if ((use_linux_config && current_cpu == "riscv64" &&
++ ffmpeg_branding == "Chrome") ||
++ (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "Chrome")) {
ffmpeg_c_sources += [
+ "libavcodec/aac/aacdec.c",
+ "libavcodec/aac/aacdec_float.c",
@@ -8118,13 +6475,14 @@ 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_videodsp.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",
-@@ -242,253 +260,24 @@
+@@ -245,46 +253,27 @@
"libavcodec/h264pred.c",
"libavcodec/h264qpel.c",
"libavcodec/h274.c",
@@ -8132,37 +6490,6 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- ]
-}
-
--if ((is_apple && current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
-- (is_win && current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
-- (is_win && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
-- (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
-- (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome")) {
-- ffmpeg_c_sources += [
-- "libavcodec/x86/autorename_libavcodec_x86_videodsp_init.c",
-- "libavcodec/x86/h264_intrapred_init.c",
-- "libavcodec/x86/h264_qpel.c",
-- "libavcodec/x86/h264chroma_init.c",
-- "libavcodec/x86/h264dsp_init.c",
-- ]
-- ffmpeg_asm_sources += [
-- "libavcodec/x86/autorename_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",
-- ]
--}
--
-if ((current_cpu == "arm64" && ffmpeg_branding == "Chrome") ||
- (current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
- (is_android && current_cpu == "arm" && arm_use_neon &&
@@ -8186,60 +6513,86 @@ 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/sbrdsp_init.c",
-+ "libavcodec/sbrdsp.c",
"libavcodec/sinewin.c",
+ "libavcodec/startcode.c",
-+ "libavcodec/videodsp.c",
"libavformat/apetag.c",
"libavformat/autorename_libavformat_aacdec.c",
"libavformat/img2.c",
]
--}
--
--if ((is_apple && current_cpu == "arm64" && ffmpeg_branding == "Chrome") ||
-- (is_win && current_cpu == "arm64" && ffmpeg_branding == "Chrome") ||
-- (use_linux_config && current_cpu == "arm64" &&
-- ffmpeg_branding == "Chrome")) {
-- ffmpeg_c_sources += [
+ }
+
+-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",
+- "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",
+ ]
+ }
+
+-if (current_cpu == "arm64" && ffmpeg_branding == "Chrome") {
++if (use_linux_config && current_cpu == "x64") {
+ ffmpeg_c_sources += [
+- "libavcodec/aarch64/aacpsdsp_init_aarch64.c",
+- "libavcodec/aarch64/autorename_libavcodec_aarch64_videodsp_init.c",
- "libavcodec/aarch64/h264chroma_init_aarch64.c",
- "libavcodec/aarch64/h264dsp_init_aarch64.c",
- "libavcodec/aarch64/h264pred_init.c",
- "libavcodec/aarch64/h264qpel_init_aarch64.c",
-- "libavcodec/aarch64/videodsp_init.c",
+- "libavcodec/aarch64/sbrdsp_init_aarch64.c",
- ]
- ffmpeg_gas_sources += [
+- ffmpeg_gas_sources += [
+- "libavcodec/aarch64/autorename_libavcodec_aarch64_aacpsdsp_neon.S",
- "libavcodec/aarch64/autorename_libavcodec_aarch64_h264cmc_neon.S",
- "libavcodec/aarch64/autorename_libavcodec_aarch64_h264dsp_neon.S",
- "libavcodec/aarch64/autorename_libavcodec_aarch64_h264idct_neon.S",
- "libavcodec/aarch64/autorename_libavcodec_aarch64_h264pred_neon.S",
- "libavcodec/aarch64/autorename_libavcodec_aarch64_h264qpel_neon.S",
- "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",
-- "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",
-- ]
--}
--
+ ffmpeg_asm_sources += [
+ "libavcodec/x86/dct32.asm",
+ "libavcodec/x86/flacdsp.asm",
+@@ -344,133 +320,35 @@
+ ]
+ }
+
-if (current_cpu == "x64" || (is_android && current_cpu == "x86") ||
- (is_win && current_cpu == "x86") ||
- (use_linux_config && current_cpu == "x86")) {
@@ -8253,13 +6606,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- "libavutil/x86/fixed_dsp_init.c",
- "libavutil/x86/imgutils_init.c",
- "libavutil/x86/lls_init.c",
-+ "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) ||
- (use_linux_config && current_cpu == "arm" && arm_use_neon) ||
@@ -8312,8 +6660,24 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- ]
-}
-
+-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
+- (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
+- (is_win && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
+- (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome")) {
+- ffmpeg_c_sources += [
+- "libavcodec/x86/aacpsdsp_init.c",
+- "libavcodec/x86/h264_intrapred_init.c",
+- "libavcodec/x86/h264_qpel.c",
+- "libavcodec/x86/h264chroma_init.c",
+- "libavcodec/x86/h264dsp_init.c",
+- "libavcodec/x86/sbrdsp_init.c",
+- "libavcodec/x86/videodsp_init.c",
+- ]
+-}
+-
-if (use_linux_config && current_cpu == "arm" && arm_use_neon &&
-- ffmpeg_branding == "Chrome") {
++if (use_linux_config && current_cpu == "riscv64" &&
+ ffmpeg_branding == "Chrome") {
- ffmpeg_gas_sources += [
- "libavcodec/arm/h264cmc_neon.S",
- "libavcodec/arm/h264dsp_neon.S",
@@ -8321,68 +6685,58 @@ 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",
-- ]
--}
--
--if (current_cpu == "arm64" && ffmpeg_branding == "Chrome") {
-- ffmpeg_c_sources += [
-- "libavcodec/aarch64/aacpsdsp_init_aarch64.c",
-- "libavcodec/aarch64/sbrdsp_init_aarch64.c",
-- ]
-- ffmpeg_gas_sources += [
-- "libavcodec/aarch64/autorename_libavcodec_aarch64_aacpsdsp_neon.S",
-- "libavcodec/aarch64/autorename_libavcodec_aarch64_sbrdsp_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",
-- ]
--}
--
--if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
-- (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
-- (is_win && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
-- (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome")) {
-- ffmpeg_c_sources += [
-- "libavcodec/x86/aacpsdsp_init.c",
-- "libavcodec/x86/sbrdsp_init.c",
-- ]
--}
--
++ "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")) {
-- ffmpeg_c_sources += [
++if (use_linux_config && current_cpu == "riscv64") {
+ ffmpeg_c_sources += [
- "libavcodec/arm/aacpsdsp_init_arm.c",
- "libavcodec/arm/sbrdsp_init_arm.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")) {
-- ffmpeg_asm_sources += [
-- "libavcodec/x86/aacpsdsp.asm",
-- "libavcodec/x86/sbrdsp.asm",
-- ]
++ "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") ||
@@ -8390,2396 +6744,180 @@ 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
+@@ -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"
+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
+@@ -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 "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-08-13 10:43:45.959181500 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_aacdec.c 2024-08-18 23:57:15.000000000 +0100
+--- 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
@@ -1,2 +1,2 @@
--// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
-+// Automatically generated on Sun Aug 18 23:57:15 2024. See crbug.com/495833.
+-// 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 "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-08-13 10:43:45.959181500 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_flacdec.c 2024-08-18 23:57:15.000000000 +0100
+--- 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
@@ -1,2 +1,2 @@
--// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
-+// Automatically generated on Sun Aug 18 23:57:15 2024. See crbug.com/495833.
+-// 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 "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-08-13 10:43:45.959181500 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_options.c 2024-08-18 23:57:15.000000000 +0100
+--- 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
@@ -1,2 +1,2 @@
--// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
-+// Automatically generated on Sun Aug 18 23:57:15 2024. See crbug.com/495833.
+-// 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 "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-08-13 10:43:45.959181500 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_pcm.c 2024-08-18 23:57:15.000000000 +0100
+--- 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
@@ -1,2 +1,2 @@
--// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
-+// Automatically generated on Sun Aug 18 23:57:15 2024. See crbug.com/495833.
+-// 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 "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-08-13 10:43:45.959181500 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_utils.c 2024-08-18 23:57:15.000000000 +0100
+--- 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
@@ -1,2 +1,2 @@
--// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
-+// Automatically generated on Sun Aug 18 23:57:15 2024. See crbug.com/495833.
+-// 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 "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-08-13 10:43:45.959181500 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_version.c 2024-08-18 23:57:15.000000000 +0100
+--- 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
@@ -1,2 +1,2 @@
--// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
-+// Automatically generated on Sun Aug 18 23:57:15 2024. See crbug.com/495833.
+-// 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 "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
+@@ -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"
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-08-13 10:43:46.075191700 +0100
-+++ b/third_party/ffmpeg/libavutil/autorename_libavutil_utils.c 2024-08-18 23:57:15.000000000 +0100
+--- 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
@@ -1,2 +1,2 @@
--// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
-+// Automatically generated on Sun Aug 18 23:57:15 2024. See crbug.com/495833.
+-// 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 "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-08-13 10:43:46.075191700 +0100
-+++ b/third_party/ffmpeg/libavutil/autorename_libavutil_version.c 2024-08-18 23:57:15.000000000 +0100
+--- 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
@@ -1,2 +1,2 @@
--// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
-+// Automatically generated on Sun Aug 18 23:57:15 2024. See crbug.com/495833.
+-// 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 "version.c"
-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 2024-08-18 23:57:15.000000000 +0100
+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
@@ -0,0 +1,2 @@
-+// Automatically generated on Sun Aug 18 23:57:15 2024. See crbug.com/495833.
-+#include "cpu.c"
-diff '--color=auto' -Naur a/third_party/ffmpeg/riscv-ffmpeg.patch b/third_party/ffmpeg/riscv-ffmpeg.patch
---- a/third_party/ffmpeg/riscv-ffmpeg.patch 1970-01-01 01:00:00.000000000 +0100
-+++ b/third_party/ffmpeg/riscv-ffmpeg.patch 2024-08-19 02:20:10.000000000 +0100
-@@ -0,0 +1,2327 @@
-+ CREDITS.chromium | 81 ++++--
-+ chromium/config/Chrome/ios/arm64/config.h | 26 +-
-+ .../config/Chrome/ios/arm64/config_components.h | 22 +-
-+ .../Chrome/ios/arm64/libavformat/demuxer_list.c | 2 +-
-+ .../config/Chrome/ios/arm64/libavutil/ffversion.h | 2 +-
-+ chromium/config/Chrome/ios/x64/config.asm | 21 +-
-+ chromium/config/Chrome/ios/x64/config.h | 26 +-
-+ chromium/config/Chrome/ios/x64/config_components.h | 22 +-
-+ .../Chrome/ios/x64/libavformat/demuxer_list.c | 2 +-
-+ .../config/Chrome/ios/x64/libavutil/ffversion.h | 2 +-
-+ chromium/config/Chromium/ios/arm64/config.h | 26 +-
-+ .../config/Chromium/ios/arm64/config_components.h | 22 +-
-+ .../Chromium/ios/arm64/libavformat/demuxer_list.c | 2 +-
-+ .../Chromium/ios/arm64/libavutil/ffversion.h | 2 +-
-+ chromium/config/Chromium/ios/x64/config.asm | 21 +-
-+ chromium/config/Chromium/ios/x64/config.h | 26 +-
-+ .../config/Chromium/ios/x64/config_components.h | 22 +-
-+ .../Chromium/ios/x64/libavformat/demuxer_list.c | 2 +-
-+ .../config/Chromium/ios/x64/libavutil/ffversion.h | 2 +-
-+ ffmpeg_generated.gni | 303 ++++-----------------
-+ libavformat/autorename_libavformat_aacdec.c | 2 +-
-+ libavformat/autorename_libavformat_flacdec.c | 2 +-
-+ libavformat/autorename_libavformat_options.c | 2 +-
-+ libavformat/autorename_libavformat_pcm.c | 2 +-
-+ libavformat/autorename_libavformat_utils.c | 2 +-
-+ libavformat/autorename_libavformat_version.c | 2 +-
-+ libavutil/autorename_libavutil_utils.c | 2 +-
-+ libavutil/autorename_libavutil_version.c | 2 +-
-+ 28 files changed, 266 insertions(+), 384 deletions(-)
-+
-+diff --git a/CREDITS.chromium b/CREDITS.chromium
-+index ccd7f4afa5..e12dcc247a 100644
-+--- a/CREDITS.chromium
-++++ b/CREDITS.chromium
-+@@ -129,6 +129,62 @@ incompatible with the GPLv2 and v3. To the best of our knowledge, they are
-+ compatible with the LGPL.
-+
-+
-++********************************************************************************
-++
-++libavcodec/riscv/startcode_rvb.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/startcode_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.
-++
-+ ********************************************************************************
-+
-+ libavformat/oggparsetheora.c
-+@@ -157,31 +213,6 @@ DEALINGS IN THE SOFTWARE.
-+
-+ ********************************************************************************
-+
-+-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 --git a/chromium/config/Chrome/ios/arm64/config.h b/chromium/config/Chrome/ios/arm64/config.h
-+index a9b33e0a22..5a1a06ad85 100644
-+--- a/chromium/config/Chrome/ios/arm64/config.h
-++++ b/chromium/config/Chrome/ios/arm64/config.h
-+@@ -1,14 +1,13 @@
-+ /* 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-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/ezemtsov/projects/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang --enable-cr
oss-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=arm64-apple-macosx' --extra-cflags=-F/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/19/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/home/ezemtsov/
projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64' --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/usr/local/google/home/dalecurtis/code/chrome/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang
--enable-cross-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=arm64-apple-macosx' --extra-cflags=-F/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/third_party/llvm-build/Release+Asserts/lib/clang/19/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/home/dalecurtis/cod
e/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64' --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 7c4c274643cedcf9671e1db65361231a7d9bee70)"
-++#define CC_IDENT "clang version 19.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 084e2b53d22c11e013b0a495b65d39aa7f934048)"
-+ #define OS_NAME darwin
-+-#define av_restrict restrict
-+ #define EXTERN_PREFIX "_"
-+ #define EXTERN_ASM _
-+ #define BUILDSUF ""
-+@@ -60,6 +59,7 @@
-+ #define HAVE_VSX 0
-+ #define HAVE_RV 0
-+ #define HAVE_RVV 0
-++#define HAVE_RV_ZVBB 0
-+ #define HAVE_AESNI 0
-+ #define HAVE_AMD3DNOW 0
-+ #define HAVE_AMD3DNOWEXT 0
-+@@ -78,7 +78,6 @@
-+ #define HAVE_SSE42 0
-+ #define HAVE_SSSE3 0
-+ #define HAVE_XOP 0
-+-#define HAVE_CPUNOP 0
-+ #define HAVE_I686 0
-+ #define HAVE_MIPSFPU 0
-+ #define HAVE_MIPS32R2 0
-+@@ -112,6 +111,7 @@
-+ #define HAVE_VSX_EXTERNAL 0
-+ #define HAVE_RV_EXTERNAL 0
-+ #define HAVE_RVV_EXTERNAL 0
-++#define HAVE_RV_ZVBB_EXTERNAL 0
-+ #define HAVE_AESNI_EXTERNAL 0
-+ #define HAVE_AMD3DNOW_EXTERNAL 0
-+ #define HAVE_AMD3DNOWEXT_EXTERNAL 0
-+@@ -130,7 +130,6 @@
-+ #define HAVE_SSE42_EXTERNAL 0
-+ #define HAVE_SSSE3_EXTERNAL 0
-+ #define HAVE_XOP_EXTERNAL 0
-+-#define HAVE_CPUNOP_EXTERNAL 0
-+ #define HAVE_I686_EXTERNAL 0
-+ #define HAVE_MIPSFPU_EXTERNAL 0
-+ #define HAVE_MIPS32R2_EXTERNAL 0
-+@@ -164,6 +163,7 @@
-+ #define HAVE_VSX_INLINE 0
-+ #define HAVE_RV_INLINE 0
-+ #define HAVE_RVV_INLINE 0
-++#define HAVE_RV_ZVBB_INLINE 0
-+ #define HAVE_AESNI_INLINE 0
-+ #define HAVE_AMD3DNOW_INLINE 0
-+ #define HAVE_AMD3DNOWEXT_INLINE 0
-+@@ -182,7 +182,6 @@
-+ #define HAVE_SSE42_INLINE 0
-+ #define HAVE_SSSE3_INLINE 0
-+ #define HAVE_XOP_INLINE 0
-+-#define HAVE_CPUNOP_INLINE 0
-+ #define HAVE_I686_INLINE 0
-+ #define HAVE_MIPSFPU_INLINE 0
-+ #define HAVE_MIPS32R2_INLINE 0
-+@@ -220,6 +219,7 @@
-+ #define HAVE_BIGENDIAN 0
-+ #define HAVE_FAST_UNALIGNED 1
-+ #define HAVE_ARPA_INET_H 0
-++#define HAVE_ASM_HWPROBE_H 0
-+ #define HAVE_ASM_TYPES_H 0
-+ #define HAVE_CDIO_PARANOIA_H 0
-+ #define HAVE_CDIO_PARANOIA_PARANOIA_H 0
-+@@ -246,6 +246,7 @@
-+ #define HAVE_OPENGL_GL3_H 0
-+ #define HAVE_POLL_H 1
-+ #define HAVE_PTHREAD_NP_H 0
-++#define HAVE_SYS_HWPROBE_H 0
-+ #define HAVE_SYS_PARAM_H 1
-+ #define HAVE_SYS_RESOURCE_H 1
-+ #define HAVE_SYS_SELECT_H 1
-+@@ -419,6 +420,7 @@
-+ #define HAVE_STRUCT_SOCKADDR_STORAGE 0
-+ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0
-+ #define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
-++#define HAVE_STRUCT_MFXCONFIGINTERFACE 0
-+ #define HAVE_GZIP 1
-+ #define HAVE_LIBDRM_GETFB2 0
-+ #define HAVE_MAKEINFO 0
-+@@ -429,6 +431,7 @@
-+ #define HAVE_OPENCL_DXVA2 0
-+ #define HAVE_OPENCL_VAAPI_BEIGNET 0
-+ #define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
-++#define HAVE_OPENCL_VIDEOTOOLBOX 0
-+ #define HAVE_PERL 1
-+ #define HAVE_POD2MAN 1
-+ #define HAVE_TEXI2HTML 0
-+@@ -468,6 +471,8 @@
-+ #define CONFIG_FREI0R 0
-+ #define CONFIG_LIBCDIO 0
-+ #define CONFIG_LIBDAVS2 0
-++#define CONFIG_LIBDVDNAV 0
-++#define CONFIG_LIBDVDREAD 0
-+ #define CONFIG_LIBRUBBERBAND 0
-+ #define CONFIG_LIBVIDSTAB 0
-+ #define CONFIG_LIBX264 0
-+@@ -517,6 +522,7 @@
-+ #define CONFIG_LIBJXL 0
-+ #define CONFIG_LIBKLVANC 0
-+ #define CONFIG_LIBKVAZAAR 0
-++#define CONFIG_LIBLC3 0
-+ #define CONFIG_LIBMODPLUG 0
-+ #define CONFIG_LIBMP3LAME 0
-+ #define CONFIG_LIBMYSOFA 0
-+@@ -547,6 +553,7 @@
-+ #define CONFIG_LIBTENSORFLOW 0
-+ #define CONFIG_LIBTESSERACT 0
-+ #define CONFIG_LIBTHEORA 0
-++#define CONFIG_LIBTORCH 0
-+ #define CONFIG_LIBTWOLAME 0
-+ #define CONFIG_LIBUAVS3D 0
-+ #define CONFIG_LIBV4L2 0
-+@@ -596,7 +603,6 @@
-+ #define CONFIG_OPENCL 0
-+ #define CONFIG_AMF 0
-+ #define CONFIG_AUDIOTOOLBOX 0
-+-#define CONFIG_CRYSTALHD 0
-+ #define CONFIG_CUDA 0
-+ #define CONFIG_CUDA_LLVM 0
-+ #define CONFIG_CUVID 0
-+@@ -640,6 +646,7 @@
-+ #define CONFIG_ERROR_RESILIENCE 0
-+ #define CONFIG_FAAN 0
-+ #define CONFIG_FAST_UNALIGNED 1
-++#define CONFIG_IAMF 0
-+ #define CONFIG_LSP 0
-+ #define CONFIG_PIXELUTILS 0
-+ #define CONFIG_NETWORK 0
-+@@ -688,7 +695,8 @@
-+ #define CONFIG_DEFLATE_WRAPPER 0
-+ #define CONFIG_DIRAC_PARSE 1
-+ #define CONFIG_DNN 0
-+-#define CONFIG_DOVI_RPU 0
-++#define CONFIG_DOVI_RPUDEC 0
-++#define CONFIG_DOVI_RPUENC 0
-+ #define CONFIG_DVPROFILE 0
-+ #define CONFIG_EVCPARSE 0
-+ #define CONFIG_EXIF 0
-+@@ -720,10 +728,12 @@
-+ #define CONFIG_INFLATE_WRAPPER 0
-+ #define CONFIG_INTRAX8 0
-+ #define CONFIG_ISO_MEDIA 1
-++#define CONFIG_ISO_WRITER 0
-+ #define CONFIG_IVIDSP 0
-+ #define CONFIG_JPEGTABLES 0
-+ #define CONFIG_LGPLV3 0
-+ #define CONFIG_LIBX262 0
-++#define CONFIG_LIBX264_HDR10 0
-+ #define CONFIG_LLAUDDSP 0
-+ #define CONFIG_LLVIDDSP 0
-+ #define CONFIG_LLVIDENCDSP 0
-+diff --git a/chromium/config/Chrome/ios/arm64/config_components.h b/chromium/config/Chrome/ios/arm64/config_components.h
-+index 78ba358a27..8ebce4c9b5 100644
-+--- a/chromium/config/Chrome/ios/arm64/config_components.h
-++++ b/chromium/config/Chrome/ios/arm64/config_components.h
-+@@ -11,6 +11,7 @@
-+ #define CONFIG_DTS2PTS_BSF 0
-+ #define CONFIG_DV_ERROR_MARKER_BSF 0
-+ #define CONFIG_EAC3_CORE_BSF 0
-++#define CONFIG_EVC_FRAME_MERGE_BSF 0
-+ #define CONFIG_EXTRACT_EXTRADATA_BSF 0
-+ #define CONFIG_FILTER_UNITS_BSF 0
-+ #define CONFIG_H264_METADATA_BSF 0
-+@@ -23,7 +24,6 @@
-+ #define CONFIG_MEDIA100_TO_MJPEGB_BSF 0
-+ #define CONFIG_MJPEG2JPEG_BSF 0
-+ #define CONFIG_MJPEGA_DUMP_HEADER_BSF 0
-+-#define CONFIG_MP3_HEADER_DECOMPRESS_BSF 0
-+ #define CONFIG_MPEG2_METADATA_BSF 0
-+ #define CONFIG_MPEG4_UNPACK_BFRAMES_BSF 0
-+ #define CONFIG_MOV2TEXTSUB_BSF 0
-+@@ -45,7 +45,6 @@
-+ #define CONFIG_VP9_SUPERFRAME_SPLIT_BSF 0
-+ #define CONFIG_VVC_METADATA_BSF 0
-+ #define CONFIG_VVC_MP4TOANNEXB_BSF 0
-+-#define CONFIG_EVC_FRAME_MERGE_BSF 0
-+ #define CONFIG_AASC_DECODER 0
-+ #define CONFIG_AIC_DECODER 0
-+ #define CONFIG_ALIAS_PIX_DECODER 0
-+@@ -64,7 +63,6 @@
-+ #define CONFIG_AVRN_DECODER 0
-+ #define CONFIG_AVS_DECODER 0
-+ #define CONFIG_AVUI_DECODER 0
-+-#define CONFIG_AYUV_DECODER 0
-+ #define CONFIG_BETHSOFTVID_DECODER 0
-+ #define CONFIG_BFI_DECODER 0
-+ #define CONFIG_BINK_DECODER 0
-+@@ -131,7 +129,6 @@
-+ #define CONFIG_H263P_DECODER 0
-+ #define CONFIG_H263_V4L2M2M_DECODER 0
-+ #define CONFIG_H264_DECODER 1
-+-#define CONFIG_H264_CRYSTALHD_DECODER 0
-+ #define CONFIG_H264_V4L2M2M_DECODER 0
-+ #define CONFIG_H264_MEDIACODEC_DECODER 0
-+ #define CONFIG_H264_MMAL_DECODER 0
-+@@ -179,13 +176,11 @@
-+ #define CONFIG_MPEG1VIDEO_DECODER 0
-+ #define CONFIG_MPEG2VIDEO_DECODER 0
-+ #define CONFIG_MPEG4_DECODER 0
-+-#define CONFIG_MPEG4_CRYSTALHD_DECODER 0
-+ #define CONFIG_MPEG4_V4L2M2M_DECODER 0
-+ #define CONFIG_MPEG4_MMAL_DECODER 0
-+ #define CONFIG_MPEGVIDEO_DECODER 0
-+ #define CONFIG_MPEG1_V4L2M2M_DECODER 0
-+ #define CONFIG_MPEG2_MMAL_DECODER 0
-+-#define CONFIG_MPEG2_CRYSTALHD_DECODER 0
-+ #define CONFIG_MPEG2_V4L2M2M_DECODER 0
-+ #define CONFIG_MPEG2_QSV_DECODER 0
-+ #define CONFIG_MPEG2_MEDIACODEC_DECODER 0
-+@@ -194,7 +189,6 @@
-+ #define CONFIG_MSMPEG4V1_DECODER 0
-+ #define CONFIG_MSMPEG4V2_DECODER 0
-+ #define CONFIG_MSMPEG4V3_DECODER 0
-+-#define CONFIG_MSMPEG4_CRYSTALHD_DECODER 0
-+ #define CONFIG_MSP2_DECODER 0
-+ #define CONFIG_MSRLE_DECODER 0
-+ #define CONFIG_MSS1_DECODER 0
-+@@ -293,7 +287,6 @@
-+ #define CONFIG_VBN_DECODER 0
-+ #define CONFIG_VBLE_DECODER 0
-+ #define CONFIG_VC1_DECODER 0
-+-#define CONFIG_VC1_CRYSTALHD_DECODER 0
-+ #define CONFIG_VC1IMAGE_DECODER 0
-+ #define CONFIG_VC1_MMAL_DECODER 0
-+ #define CONFIG_VC1_QSV_DECODER 0
-+@@ -325,7 +318,6 @@
-+ #define CONFIG_WMV1_DECODER 0
-+ #define CONFIG_WMV2_DECODER 0
-+ #define CONFIG_WMV3_DECODER 0
-+-#define CONFIG_WMV3_CRYSTALHD_DECODER 0
-+ #define CONFIG_WMV3IMAGE_DECODER 0
-+ #define CONFIG_WNV1_DECODER 0
-+ #define CONFIG_XAN_WC3_DECODER 0
-+@@ -592,6 +584,7 @@
-+ #define CONFIG_LIBGSM_MS_DECODER 0
-+ #define CONFIG_LIBILBC_DECODER 0
-+ #define CONFIG_LIBJXL_DECODER 0
-++#define CONFIG_LIBLC3_DECODER 0
-+ #define CONFIG_LIBOPENCORE_AMRNB_DECODER 0
-+ #define CONFIG_LIBOPENCORE_AMRWB_DECODER 0
-+ #define CONFIG_LIBOPUS_DECODER 1
-+@@ -639,7 +632,6 @@
-+ #define CONFIG_ASV2_ENCODER 0
-+ #define CONFIG_AVRP_ENCODER 0
-+ #define CONFIG_AVUI_ENCODER 0
-+-#define CONFIG_AYUV_ENCODER 0
-+ #define CONFIG_BITPACKED_ENCODER 0
-+ #define CONFIG_BMP_ENCODER 0
-+ #define CONFIG_CFHD_ENCODER 0
-+@@ -821,6 +813,7 @@
-+ #define CONFIG_LIBGSM_MS_ENCODER 0
-+ #define CONFIG_LIBILBC_ENCODER 0
-+ #define CONFIG_LIBJXL_ENCODER 0
-++#define CONFIG_LIBLC3_ENCODER 0
-+ #define CONFIG_LIBMP3LAME_ENCODER 0
-+ #define CONFIG_LIBOPENCORE_AMRNB_ENCODER 0
-+ #define CONFIG_LIBOPENJPEG_ENCODER 0
-+@@ -1573,6 +1566,8 @@
-+ #define CONFIG_HSTACK_QSV_FILTER 0
-+ #define CONFIG_VSTACK_QSV_FILTER 0
-+ #define CONFIG_XSTACK_QSV_FILTER 0
-++#define CONFIG_PAD_VAAPI_FILTER 0
-++#define CONFIG_DRAWBOX_VAAPI_FILTER 0
-+ #define CONFIG_ALLRGB_FILTER 0
-+ #define CONFIG_ALLYUV_FILTER 0
-+ #define CONFIG_CELLAUTO_FILTER 0
-+@@ -1706,6 +1701,7 @@
-+ #define CONFIG_DV_DEMUXER 0
-+ #define CONFIG_DVBSUB_DEMUXER 0
-+ #define CONFIG_DVBTXT_DEMUXER 0
-++#define CONFIG_DVDVIDEO_DEMUXER 0
-+ #define CONFIG_DXA_DEMUXER 0
-+ #define CONFIG_EA_DEMUXER 0
-+ #define CONFIG_EA_CDATA_DEMUXER 0
-+@@ -1767,6 +1763,7 @@
-+ #define CONFIG_KUX_DEMUXER 0
-+ #define CONFIG_KVAG_DEMUXER 0
-+ #define CONFIG_LAF_DEMUXER 0
-++#define CONFIG_LC3_DEMUXER 0
-+ #define CONFIG_LMLM4_DEMUXER 0
-+ #define CONFIG_LOAS_DEMUXER 0
-+ #define CONFIG_LUODAT_DEMUXER 0
-+@@ -1850,6 +1847,7 @@
-+ #define CONFIG_QOA_DEMUXER 0
-+ #define CONFIG_R3D_DEMUXER 0
-+ #define CONFIG_RAWVIDEO_DEMUXER 0
-++#define CONFIG_RCWT_DEMUXER 0
-+ #define CONFIG_REALTEXT_DEMUXER 0
-+ #define CONFIG_REDSPARK_DEMUXER 0
-+ #define CONFIG_RKA_DEMUXER 0
-+@@ -1987,6 +1985,7 @@
-+ #define CONFIG_AC4_MUXER 0
-+ #define CONFIG_ADTS_MUXER 0
-+ #define CONFIG_ADX_MUXER 0
-++#define CONFIG_AEA_MUXER 0
-+ #define CONFIG_AIFF_MUXER 0
-+ #define CONFIG_ALP_MUXER 0
-+ #define CONFIG_AMR_MUXER 0
-+@@ -2026,7 +2025,6 @@
-+ #define CONFIG_F4V_MUXER 0
-+ #define CONFIG_FFMETADATA_MUXER 0
-+ #define CONFIG_FIFO_MUXER 0
-+-#define CONFIG_FIFO_TEST_MUXER 0
-+ #define CONFIG_FILMSTRIP_MUXER 0
-+ #define CONFIG_FITS_MUXER 0
-+ #define CONFIG_FLAC_MUXER 0
-+@@ -2060,6 +2058,7 @@
-+ #define CONFIG_JACOSUB_MUXER 0
-+ #define CONFIG_KVAG_MUXER 0
-+ #define CONFIG_LATM_MUXER 0
-++#define CONFIG_LC3_MUXER 0
-+ #define CONFIG_LRC_MUXER 0
-+ #define CONFIG_M4V_MUXER 0
-+ #define CONFIG_MD5_MUXER 0
-+@@ -2162,6 +2161,7 @@
-+ #define CONFIG_WV_MUXER 0
-+ #define CONFIG_YUV4MPEGPIPE_MUXER 0
-+ #define CONFIG_CHROMAPRINT_MUXER 0
-++#define CONFIG_ANDROID_CONTENT_PROTOCOL 0
-+ #define CONFIG_ASYNC_PROTOCOL 0
-+ #define CONFIG_BLURAY_PROTOCOL 0
-+ #define CONFIG_CACHE_PROTOCOL 0
-+diff --git a/chromium/config/Chrome/ios/arm64/libavformat/demuxer_list.c b/chromium/config/Chrome/ios/arm64/libavformat/demuxer_list.c
-+index 920b22bfa7..29f1f59381 100644
-+--- a/chromium/config/Chrome/ios/arm64/libavformat/demuxer_list.c
-++++ b/chromium/config/Chrome/ios/arm64/libavformat/demuxer_list.c
-+@@ -1,4 +1,4 @@
-+-static const AVInputFormat * const demuxer_list[] = {
-++static const FFInputFormat * const demuxer_list[] = {
-+ &ff_aac_demuxer,
-+ &ff_flac_demuxer,
-+ &ff_matroska_demuxer,
-+diff --git a/chromium/config/Chrome/ios/arm64/libavutil/ffversion.h b/chromium/config/Chrome/ios/arm64/libavutil/ffversion.h
-+index e32799b284..63ce2ac5f8 100644
-+--- a/chromium/config/Chrome/ios/arm64/libavutil/ffversion.h
-++++ b/chromium/config/Chrome/ios/arm64/libavutil/ffversion.h
-+@@ -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-115016-g631703bfb9"
-++#define FFMPEG_VERSION "N-116569-gd0c8e13654"
-+ #endif /* AVUTIL_FFVERSION_H */
-+diff --git a/chromium/config/Chrome/ios/x64/config.asm b/chromium/config/Chrome/ios/x64/config.asm
-+index d13f207b0c..61fe976c14 100644
-+--- a/chromium/config/Chrome/ios/x64/config.asm
-++++ b/chromium/config/Chrome/ios/x64/config.asm
-+@@ -44,6 +44,7 @@
-+ %define HAVE_VSX 0
-+ %define HAVE_RV 0
-+ %define HAVE_RVV 0
-++%define HAVE_RV_ZVBB 0
-+ %define HAVE_AESNI 1
-+ %define HAVE_AMD3DNOW 1
-+ %define HAVE_AMD3DNOWEXT 1
-+@@ -62,7 +63,6 @@
-+ %define HAVE_SSE42 1
-+ %define HAVE_SSSE3 1
-+ %define HAVE_XOP 1
-+-%define HAVE_CPUNOP 0
-+ %define HAVE_I686 1
-+ %define HAVE_MIPSFPU 0
-+ %define HAVE_MIPS32R2 0
-+@@ -96,6 +96,7 @@
-+ %define HAVE_VSX_EXTERNAL 0
-+ %define HAVE_RV_EXTERNAL 0
-+ %define HAVE_RVV_EXTERNAL 0
-++%define HAVE_RV_ZVBB_EXTERNAL 0
-+ %define HAVE_AESNI_EXTERNAL 1
-+ %define HAVE_AMD3DNOW_EXTERNAL 1
-+ %define HAVE_AMD3DNOWEXT_EXTERNAL 1
-+@@ -114,7 +115,6 @@
-+ %define HAVE_SSE42_EXTERNAL 1
-+ %define HAVE_SSSE3_EXTERNAL 1
-+ %define HAVE_XOP_EXTERNAL 1
-+-%define HAVE_CPUNOP_EXTERNAL 0
-+ %define HAVE_I686_EXTERNAL 0
-+ %define HAVE_MIPSFPU_EXTERNAL 0
-+ %define HAVE_MIPS32R2_EXTERNAL 0
-+@@ -148,6 +148,7 @@
-+ %define HAVE_VSX_INLINE 0
-+ %define HAVE_RV_INLINE 0
-+ %define HAVE_RVV_INLINE 0
-++%define HAVE_RV_ZVBB_INLINE 0
-+ %define HAVE_AESNI_INLINE 1
-+ %define HAVE_AMD3DNOW_INLINE 1
-+ %define HAVE_AMD3DNOWEXT_INLINE 1
-+@@ -166,7 +167,6 @@
-+ %define HAVE_SSE42_INLINE 1
-+ %define HAVE_SSSE3_INLINE 1
-+ %define HAVE_XOP_INLINE 1
-+-%define HAVE_CPUNOP_INLINE 0
-+ %define HAVE_I686_INLINE 0
-+ %define HAVE_MIPSFPU_INLINE 0
-+ %define HAVE_MIPS32R2_INLINE 0
-+@@ -204,6 +204,7 @@
-+ %define HAVE_BIGENDIAN 0
-+ %define HAVE_FAST_UNALIGNED 1
-+ %define HAVE_ARPA_INET_H 0
-++%define HAVE_ASM_HWPROBE_H 0
-+ %define HAVE_ASM_TYPES_H 0
-+ %define HAVE_CDIO_PARANOIA_H 0
-+ %define HAVE_CDIO_PARANOIA_PARANOIA_H 0
-+@@ -230,6 +231,7 @@
-+ %define HAVE_OPENGL_GL3_H 0
-+ %define HAVE_POLL_H 1
-+ %define HAVE_PTHREAD_NP_H 0
-++%define HAVE_SYS_HWPROBE_H 0
-+ %define HAVE_SYS_PARAM_H 1
-+ %define HAVE_SYS_RESOURCE_H 1
-+ %define HAVE_SYS_SELECT_H 1
-+@@ -403,6 +405,7 @@
-+ %define HAVE_STRUCT_SOCKADDR_STORAGE 0
-+ %define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0
-+ %define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
-++%define HAVE_STRUCT_MFXCONFIGINTERFACE 0
-+ %define HAVE_GZIP 1
-+ %define HAVE_LIBDRM_GETFB2 0
-+ %define HAVE_MAKEINFO 0
-+@@ -413,6 +416,7 @@
-+ %define HAVE_OPENCL_DXVA2 0
-+ %define HAVE_OPENCL_VAAPI_BEIGNET 0
-+ %define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
-++%define HAVE_OPENCL_VIDEOTOOLBOX 0
-+ %define HAVE_PERL 1
-+ %define HAVE_POD2MAN 1
-+ %define HAVE_TEXI2HTML 0
-+@@ -452,6 +456,8 @@
-+ %define CONFIG_FREI0R 0
-+ %define CONFIG_LIBCDIO 0
-+ %define CONFIG_LIBDAVS2 0
-++%define CONFIG_LIBDVDNAV 0
-++%define CONFIG_LIBDVDREAD 0
-+ %define CONFIG_LIBRUBBERBAND 0
-+ %define CONFIG_LIBVIDSTAB 0
-+ %define CONFIG_LIBX264 0
-+@@ -501,6 +507,7 @@
-+ %define CONFIG_LIBJXL 0
-+ %define CONFIG_LIBKLVANC 0
-+ %define CONFIG_LIBKVAZAAR 0
-++%define CONFIG_LIBLC3 0
-+ %define CONFIG_LIBMODPLUG 0
-+ %define CONFIG_LIBMP3LAME 0
-+ %define CONFIG_LIBMYSOFA 0
-+@@ -531,6 +538,7 @@
-+ %define CONFIG_LIBTENSORFLOW 0
-+ %define CONFIG_LIBTESSERACT 0
-+ %define CONFIG_LIBTHEORA 0
-++%define CONFIG_LIBTORCH 0
-+ %define CONFIG_LIBTWOLAME 0
-+ %define CONFIG_LIBUAVS3D 0
-+ %define CONFIG_LIBV4L2 0
-+@@ -580,7 +588,6 @@
-+ %define CONFIG_OPENCL 0
-+ %define CONFIG_AMF 0
-+ %define CONFIG_AUDIOTOOLBOX 0
-+-%define CONFIG_CRYSTALHD 0
-+ %define CONFIG_CUDA 0
-+ %define CONFIG_CUDA_LLVM 0
-+ %define CONFIG_CUVID 0
-+@@ -624,6 +631,7 @@
-+ %define CONFIG_ERROR_RESILIENCE 0
-+ %define CONFIG_FAAN 0
-+ %define CONFIG_FAST_UNALIGNED 1
-++%define CONFIG_IAMF 0
-+ %define CONFIG_LSP 0
-+ %define CONFIG_PIXELUTILS 0
-+ %define CONFIG_NETWORK 0
-+@@ -672,7 +680,8 @@
-+ %define CONFIG_DEFLATE_WRAPPER 0
-+ %define CONFIG_DIRAC_PARSE 1
-+ %define CONFIG_DNN 0
-+-%define CONFIG_DOVI_RPU 0
-++%define CONFIG_DOVI_RPUDEC 0
-++%define CONFIG_DOVI_RPUENC 0
-+ %define CONFIG_DVPROFILE 0
-+ %define CONFIG_EVCPARSE 0
-+ %define CONFIG_EXIF 0
-+@@ -704,10 +713,12 @@
-+ %define CONFIG_INFLATE_WRAPPER 0
-+ %define CONFIG_INTRAX8 0
-+ %define CONFIG_ISO_MEDIA 1
-++%define CONFIG_ISO_WRITER 0
-+ %define CONFIG_IVIDSP 0
-+ %define CONFIG_JPEGTABLES 0
-+ %define CONFIG_LGPLV3 0
-+ %define CONFIG_LIBX262 0
-++%define CONFIG_LIBX264_HDR10 0
-+ %define CONFIG_LLAUDDSP 0
-+ %define CONFIG_LLVIDDSP 0
-+ %define CONFIG_LLVIDENCDSP 0
-+diff --git a/chromium/config/Chrome/ios/x64/config.h b/chromium/config/Chrome/ios/x64/config.h
-+index 9df971603d..cdeb923914 100644
-+--- a/chromium/config/Chrome/ios/x64/config.h
-++++ b/chromium/config/Chrome/ios/x64/config.h
-+@@ -1,14 +1,13 @@
-+ /* 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-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/ezemtsov/projects/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang --enable-cr
oss-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=x86_64-apple-macosx' --extra-cflags=-F/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/19/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/home/ezemtsov
/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=x86_64 --extra-cflags=-m64 --extra-ldflags='-arch x86_64' --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/usr/local/google/home/dalecurtis/code/chrome/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang
--enable-cross-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=x86_64-apple-macosx' --extra-cflags=-F/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/third_party/llvm-build/Release+Asserts/lib/clang/19/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/home/dalecurtis/co
de/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=x86_64 --extra-cflags=-m64 --extra-ldflags='-arch x86_64' --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 7c4c274643cedcf9671e1db65361231a7d9bee70)"
-++#define CC_IDENT "clang version 19.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 084e2b53d22c11e013b0a495b65d39aa7f934048)"
-+ #define OS_NAME darwin
-+-#define av_restrict restrict
-+ #define EXTERN_PREFIX "_"
-+ #define EXTERN_ASM _
-+ #define BUILDSUF ""
-+@@ -59,6 +58,7 @@
-+ #define HAVE_VSX 0
-+ #define HAVE_RV 0
-+ #define HAVE_RVV 0
-++#define HAVE_RV_ZVBB 0
-+ #define HAVE_AESNI 1
-+ #define HAVE_AMD3DNOW 1
-+ #define HAVE_AMD3DNOWEXT 1
-+@@ -77,7 +77,6 @@
-+ #define HAVE_SSE42 1
-+ #define HAVE_SSSE3 1
-+ #define HAVE_XOP 1
-+-#define HAVE_CPUNOP 0
-+ #define HAVE_I686 1
-+ #define HAVE_MIPSFPU 0
-+ #define HAVE_MIPS32R2 0
-+@@ -111,6 +110,7 @@
-+ #define HAVE_VSX_EXTERNAL 0
-+ #define HAVE_RV_EXTERNAL 0
-+ #define HAVE_RVV_EXTERNAL 0
-++#define HAVE_RV_ZVBB_EXTERNAL 0
-+ #define HAVE_AESNI_EXTERNAL 1
-+ #define HAVE_AMD3DNOW_EXTERNAL 1
-+ #define HAVE_AMD3DNOWEXT_EXTERNAL 1
-+@@ -129,7 +129,6 @@
-+ #define HAVE_SSE42_EXTERNAL 1
-+ #define HAVE_SSSE3_EXTERNAL 1
-+ #define HAVE_XOP_EXTERNAL 1
-+-#define HAVE_CPUNOP_EXTERNAL 0
-+ #define HAVE_I686_EXTERNAL 0
-+ #define HAVE_MIPSFPU_EXTERNAL 0
-+ #define HAVE_MIPS32R2_EXTERNAL 0
-+@@ -163,6 +162,7 @@
-+ #define HAVE_VSX_INLINE 0
-+ #define HAVE_RV_INLINE 0
-+ #define HAVE_RVV_INLINE 0
-++#define HAVE_RV_ZVBB_INLINE 0
-+ #define HAVE_AESNI_INLINE 1
-+ #define HAVE_AMD3DNOW_INLINE 1
-+ #define HAVE_AMD3DNOWEXT_INLINE 1
-+@@ -181,7 +181,6 @@
-+ #define HAVE_SSE42_INLINE 1
-+ #define HAVE_SSSE3_INLINE 1
-+ #define HAVE_XOP_INLINE 1
-+-#define HAVE_CPUNOP_INLINE 0
-+ #define HAVE_I686_INLINE 0
-+ #define HAVE_MIPSFPU_INLINE 0
-+ #define HAVE_MIPS32R2_INLINE 0
-+@@ -219,6 +218,7 @@
-+ #define HAVE_BIGENDIAN 0
-+ #define HAVE_FAST_UNALIGNED 1
-+ #define HAVE_ARPA_INET_H 0
-++#define HAVE_ASM_HWPROBE_H 0
-+ #define HAVE_ASM_TYPES_H 0
-+ #define HAVE_CDIO_PARANOIA_H 0
-+ #define HAVE_CDIO_PARANOIA_PARANOIA_H 0
-+@@ -245,6 +245,7 @@
-+ #define HAVE_OPENGL_GL3_H 0
-+ #define HAVE_POLL_H 1
-+ #define HAVE_PTHREAD_NP_H 0
-++#define HAVE_SYS_HWPROBE_H 0
-+ #define HAVE_SYS_PARAM_H 1
-+ #define HAVE_SYS_RESOURCE_H 1
-+ #define HAVE_SYS_SELECT_H 1
-+@@ -418,6 +419,7 @@
-+ #define HAVE_STRUCT_SOCKADDR_STORAGE 0
-+ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0
-+ #define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
-++#define HAVE_STRUCT_MFXCONFIGINTERFACE 0
-+ #define HAVE_GZIP 1
-+ #define HAVE_LIBDRM_GETFB2 0
-+ #define HAVE_MAKEINFO 0
-+@@ -428,6 +430,7 @@
-+ #define HAVE_OPENCL_DXVA2 0
-+ #define HAVE_OPENCL_VAAPI_BEIGNET 0
-+ #define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
-++#define HAVE_OPENCL_VIDEOTOOLBOX 0
-+ #define HAVE_PERL 1
-+ #define HAVE_POD2MAN 1
-+ #define HAVE_TEXI2HTML 0
-+@@ -467,6 +470,8 @@
-+ #define CONFIG_FREI0R 0
-+ #define CONFIG_LIBCDIO 0
-+ #define CONFIG_LIBDAVS2 0
-++#define CONFIG_LIBDVDNAV 0
-++#define CONFIG_LIBDVDREAD 0
-+ #define CONFIG_LIBRUBBERBAND 0
-+ #define CONFIG_LIBVIDSTAB 0
-+ #define CONFIG_LIBX264 0
-+@@ -516,6 +521,7 @@
-+ #define CONFIG_LIBJXL 0
-+ #define CONFIG_LIBKLVANC 0
-+ #define CONFIG_LIBKVAZAAR 0
-++#define CONFIG_LIBLC3 0
-+ #define CONFIG_LIBMODPLUG 0
-+ #define CONFIG_LIBMP3LAME 0
-+ #define CONFIG_LIBMYSOFA 0
-+@@ -546,6 +552,7 @@
-+ #define CONFIG_LIBTENSORFLOW 0
-+ #define CONFIG_LIBTESSERACT 0
-+ #define CONFIG_LIBTHEORA 0
-++#define CONFIG_LIBTORCH 0
-+ #define CONFIG_LIBTWOLAME 0
-+ #define CONFIG_LIBUAVS3D 0
-+ #define CONFIG_LIBV4L2 0
-+@@ -595,7 +602,6 @@
-+ #define CONFIG_OPENCL 0
-+ #define CONFIG_AMF 0
-+ #define CONFIG_AUDIOTOOLBOX 0
-+-#define CONFIG_CRYSTALHD 0
-+ #define CONFIG_CUDA 0
-+ #define CONFIG_CUDA_LLVM 0
-+ #define CONFIG_CUVID 0
-+@@ -639,6 +645,7 @@
-+ #define CONFIG_ERROR_RESILIENCE 0
-+ #define CONFIG_FAAN 0
-+ #define CONFIG_FAST_UNALIGNED 1
-++#define CONFIG_IAMF 0
-+ #define CONFIG_LSP 0
-+ #define CONFIG_PIXELUTILS 0
-+ #define CONFIG_NETWORK 0
-+@@ -687,7 +694,8 @@
-+ #define CONFIG_DEFLATE_WRAPPER 0
-+ #define CONFIG_DIRAC_PARSE 1
-+ #define CONFIG_DNN 0
-+-#define CONFIG_DOVI_RPU 0
-++#define CONFIG_DOVI_RPUDEC 0
-++#define CONFIG_DOVI_RPUENC 0
-+ #define CONFIG_DVPROFILE 0
-+ #define CONFIG_EVCPARSE 0
-+ #define CONFIG_EXIF 0
-+@@ -719,10 +727,12 @@
-+ #define CONFIG_INFLATE_WRAPPER 0
-+ #define CONFIG_INTRAX8 0
-+ #define CONFIG_ISO_MEDIA 1
-++#define CONFIG_ISO_WRITER 0
-+ #define CONFIG_IVIDSP 0
-+ #define CONFIG_JPEGTABLES 0
-+ #define CONFIG_LGPLV3 0
-+ #define CONFIG_LIBX262 0
-++#define CONFIG_LIBX264_HDR10 0
-+ #define CONFIG_LLAUDDSP 0
-+ #define CONFIG_LLVIDDSP 0
-+ #define CONFIG_LLVIDENCDSP 0
-+diff --git a/chromium/config/Chrome/ios/x64/config_components.h b/chromium/config/Chrome/ios/x64/config_components.h
-+index 78ba358a27..8ebce4c9b5 100644
-+--- a/chromium/config/Chrome/ios/x64/config_components.h
-++++ b/chromium/config/Chrome/ios/x64/config_components.h
-+@@ -11,6 +11,7 @@
-+ #define CONFIG_DTS2PTS_BSF 0
-+ #define CONFIG_DV_ERROR_MARKER_BSF 0
-+ #define CONFIG_EAC3_CORE_BSF 0
-++#define CONFIG_EVC_FRAME_MERGE_BSF 0
-+ #define CONFIG_EXTRACT_EXTRADATA_BSF 0
-+ #define CONFIG_FILTER_UNITS_BSF 0
-+ #define CONFIG_H264_METADATA_BSF 0
-+@@ -23,7 +24,6 @@
-+ #define CONFIG_MEDIA100_TO_MJPEGB_BSF 0
-+ #define CONFIG_MJPEG2JPEG_BSF 0
-+ #define CONFIG_MJPEGA_DUMP_HEADER_BSF 0
-+-#define CONFIG_MP3_HEADER_DECOMPRESS_BSF 0
-+ #define CONFIG_MPEG2_METADATA_BSF 0
-+ #define CONFIG_MPEG4_UNPACK_BFRAMES_BSF 0
-+ #define CONFIG_MOV2TEXTSUB_BSF 0
-+@@ -45,7 +45,6 @@
-+ #define CONFIG_VP9_SUPERFRAME_SPLIT_BSF 0
-+ #define CONFIG_VVC_METADATA_BSF 0
-+ #define CONFIG_VVC_MP4TOANNEXB_BSF 0
-+-#define CONFIG_EVC_FRAME_MERGE_BSF 0
-+ #define CONFIG_AASC_DECODER 0
-+ #define CONFIG_AIC_DECODER 0
-+ #define CONFIG_ALIAS_PIX_DECODER 0
-+@@ -64,7 +63,6 @@
-+ #define CONFIG_AVRN_DECODER 0
-+ #define CONFIG_AVS_DECODER 0
-+ #define CONFIG_AVUI_DECODER 0
-+-#define CONFIG_AYUV_DECODER 0
-+ #define CONFIG_BETHSOFTVID_DECODER 0
-+ #define CONFIG_BFI_DECODER 0
-+ #define CONFIG_BINK_DECODER 0
-+@@ -131,7 +129,6 @@
-+ #define CONFIG_H263P_DECODER 0
-+ #define CONFIG_H263_V4L2M2M_DECODER 0
-+ #define CONFIG_H264_DECODER 1
-+-#define CONFIG_H264_CRYSTALHD_DECODER 0
-+ #define CONFIG_H264_V4L2M2M_DECODER 0
-+ #define CONFIG_H264_MEDIACODEC_DECODER 0
-+ #define CONFIG_H264_MMAL_DECODER 0
-+@@ -179,13 +176,11 @@
-+ #define CONFIG_MPEG1VIDEO_DECODER 0
-+ #define CONFIG_MPEG2VIDEO_DECODER 0
-+ #define CONFIG_MPEG4_DECODER 0
-+-#define CONFIG_MPEG4_CRYSTALHD_DECODER 0
-+ #define CONFIG_MPEG4_V4L2M2M_DECODER 0
-+ #define CONFIG_MPEG4_MMAL_DECODER 0
-+ #define CONFIG_MPEGVIDEO_DECODER 0
-+ #define CONFIG_MPEG1_V4L2M2M_DECODER 0
-+ #define CONFIG_MPEG2_MMAL_DECODER 0
-+-#define CONFIG_MPEG2_CRYSTALHD_DECODER 0
-+ #define CONFIG_MPEG2_V4L2M2M_DECODER 0
-+ #define CONFIG_MPEG2_QSV_DECODER 0
-+ #define CONFIG_MPEG2_MEDIACODEC_DECODER 0
-+@@ -194,7 +189,6 @@
-+ #define CONFIG_MSMPEG4V1_DECODER 0
-+ #define CONFIG_MSMPEG4V2_DECODER 0
-+ #define CONFIG_MSMPEG4V3_DECODER 0
-+-#define CONFIG_MSMPEG4_CRYSTALHD_DECODER 0
-+ #define CONFIG_MSP2_DECODER 0
-+ #define CONFIG_MSRLE_DECODER 0
-+ #define CONFIG_MSS1_DECODER 0
-+@@ -293,7 +287,6 @@
-+ #define CONFIG_VBN_DECODER 0
-+ #define CONFIG_VBLE_DECODER 0
-+ #define CONFIG_VC1_DECODER 0
-+-#define CONFIG_VC1_CRYSTALHD_DECODER 0
-+ #define CONFIG_VC1IMAGE_DECODER 0
-+ #define CONFIG_VC1_MMAL_DECODER 0
-+ #define CONFIG_VC1_QSV_DECODER 0
-+@@ -325,7 +318,6 @@
-+ #define CONFIG_WMV1_DECODER 0
-+ #define CONFIG_WMV2_DECODER 0
-+ #define CONFIG_WMV3_DECODER 0
-+-#define CONFIG_WMV3_CRYSTALHD_DECODER 0
-+ #define CONFIG_WMV3IMAGE_DECODER 0
-+ #define CONFIG_WNV1_DECODER 0
-+ #define CONFIG_XAN_WC3_DECODER 0
-+@@ -592,6 +584,7 @@
-+ #define CONFIG_LIBGSM_MS_DECODER 0
-+ #define CONFIG_LIBILBC_DECODER 0
-+ #define CONFIG_LIBJXL_DECODER 0
-++#define CONFIG_LIBLC3_DECODER 0
-+ #define CONFIG_LIBOPENCORE_AMRNB_DECODER 0
-+ #define CONFIG_LIBOPENCORE_AMRWB_DECODER 0
-+ #define CONFIG_LIBOPUS_DECODER 1
-+@@ -639,7 +632,6 @@
-+ #define CONFIG_ASV2_ENCODER 0
-+ #define CONFIG_AVRP_ENCODER 0
-+ #define CONFIG_AVUI_ENCODER 0
-+-#define CONFIG_AYUV_ENCODER 0
-+ #define CONFIG_BITPACKED_ENCODER 0
-+ #define CONFIG_BMP_ENCODER 0
-+ #define CONFIG_CFHD_ENCODER 0
-+@@ -821,6 +813,7 @@
-+ #define CONFIG_LIBGSM_MS_ENCODER 0
-+ #define CONFIG_LIBILBC_ENCODER 0
-+ #define CONFIG_LIBJXL_ENCODER 0
-++#define CONFIG_LIBLC3_ENCODER 0
-+ #define CONFIG_LIBMP3LAME_ENCODER 0
-+ #define CONFIG_LIBOPENCORE_AMRNB_ENCODER 0
-+ #define CONFIG_LIBOPENJPEG_ENCODER 0
-+@@ -1573,6 +1566,8 @@
-+ #define CONFIG_HSTACK_QSV_FILTER 0
-+ #define CONFIG_VSTACK_QSV_FILTER 0
-+ #define CONFIG_XSTACK_QSV_FILTER 0
-++#define CONFIG_PAD_VAAPI_FILTER 0
-++#define CONFIG_DRAWBOX_VAAPI_FILTER 0
-+ #define CONFIG_ALLRGB_FILTER 0
-+ #define CONFIG_ALLYUV_FILTER 0
-+ #define CONFIG_CELLAUTO_FILTER 0
-+@@ -1706,6 +1701,7 @@
-+ #define CONFIG_DV_DEMUXER 0
-+ #define CONFIG_DVBSUB_DEMUXER 0
-+ #define CONFIG_DVBTXT_DEMUXER 0
-++#define CONFIG_DVDVIDEO_DEMUXER 0
-+ #define CONFIG_DXA_DEMUXER 0
-+ #define CONFIG_EA_DEMUXER 0
-+ #define CONFIG_EA_CDATA_DEMUXER 0
-+@@ -1767,6 +1763,7 @@
-+ #define CONFIG_KUX_DEMUXER 0
-+ #define CONFIG_KVAG_DEMUXER 0
-+ #define CONFIG_LAF_DEMUXER 0
-++#define CONFIG_LC3_DEMUXER 0
-+ #define CONFIG_LMLM4_DEMUXER 0
-+ #define CONFIG_LOAS_DEMUXER 0
-+ #define CONFIG_LUODAT_DEMUXER 0
-+@@ -1850,6 +1847,7 @@
-+ #define CONFIG_QOA_DEMUXER 0
-+ #define CONFIG_R3D_DEMUXER 0
-+ #define CONFIG_RAWVIDEO_DEMUXER 0
-++#define CONFIG_RCWT_DEMUXER 0
-+ #define CONFIG_REALTEXT_DEMUXER 0
-+ #define CONFIG_REDSPARK_DEMUXER 0
-+ #define CONFIG_RKA_DEMUXER 0
-+@@ -1987,6 +1985,7 @@
-+ #define CONFIG_AC4_MUXER 0
-+ #define CONFIG_ADTS_MUXER 0
-+ #define CONFIG_ADX_MUXER 0
-++#define CONFIG_AEA_MUXER 0
-+ #define CONFIG_AIFF_MUXER 0
-+ #define CONFIG_ALP_MUXER 0
-+ #define CONFIG_AMR_MUXER 0
-+@@ -2026,7 +2025,6 @@
-+ #define CONFIG_F4V_MUXER 0
-+ #define CONFIG_FFMETADATA_MUXER 0
-+ #define CONFIG_FIFO_MUXER 0
-+-#define CONFIG_FIFO_TEST_MUXER 0
-+ #define CONFIG_FILMSTRIP_MUXER 0
-+ #define CONFIG_FITS_MUXER 0
-+ #define CONFIG_FLAC_MUXER 0
-+@@ -2060,6 +2058,7 @@
-+ #define CONFIG_JACOSUB_MUXER 0
-+ #define CONFIG_KVAG_MUXER 0
-+ #define CONFIG_LATM_MUXER 0
-++#define CONFIG_LC3_MUXER 0
-+ #define CONFIG_LRC_MUXER 0
-+ #define CONFIG_M4V_MUXER 0
-+ #define CONFIG_MD5_MUXER 0
-+@@ -2162,6 +2161,7 @@
-+ #define CONFIG_WV_MUXER 0
-+ #define CONFIG_YUV4MPEGPIPE_MUXER 0
-+ #define CONFIG_CHROMAPRINT_MUXER 0
-++#define CONFIG_ANDROID_CONTENT_PROTOCOL 0
-+ #define CONFIG_ASYNC_PROTOCOL 0
-+ #define CONFIG_BLURAY_PROTOCOL 0
-+ #define CONFIG_CACHE_PROTOCOL 0
-+diff --git a/chromium/config/Chrome/ios/x64/libavformat/demuxer_list.c b/chromium/config/Chrome/ios/x64/libavformat/demuxer_list.c
-+index 920b22bfa7..29f1f59381 100644
-+--- a/chromium/config/Chrome/ios/x64/libavformat/demuxer_list.c
-++++ b/chromium/config/Chrome/ios/x64/libavformat/demuxer_list.c
-+@@ -1,4 +1,4 @@
-+-static const AVInputFormat * const demuxer_list[] = {
-++static const FFInputFormat * const demuxer_list[] = {
-+ &ff_aac_demuxer,
-+ &ff_flac_demuxer,
-+ &ff_matroska_demuxer,
-+diff --git a/chromium/config/Chrome/ios/x64/libavutil/ffversion.h b/chromium/config/Chrome/ios/x64/libavutil/ffversion.h
-+index e32799b284..63ce2ac5f8 100644
-+--- a/chromium/config/Chrome/ios/x64/libavutil/ffversion.h
-++++ b/chromium/config/Chrome/ios/x64/libavutil/ffversion.h
-+@@ -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-115016-g631703bfb9"
-++#define FFMPEG_VERSION "N-116569-gd0c8e13654"
-+ #endif /* AVUTIL_FFVERSION_H */
-+diff --git a/chromium/config/Chromium/ios/arm64/config.h b/chromium/config/Chromium/ios/arm64/config.h
-+index 0428a7286b..9eeb65d015 100644
-+--- a/chromium/config/Chromium/ios/arm64/config.h
-++++ b/chromium/config/Chromium/ios/arm64/config.h
-+@@ -1,14 +1,13 @@
-+ /* 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-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/ezemtsov/projects/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang --enable-cr
oss-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=arm64-apple-macosx' --extra-cflags=-F/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/19/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/home/ezemtsov/
projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64'" -- 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/usr/local/google/home/dalecurtis/code/chrome/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang
--enable-cross-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=arm64-apple-macosx' --extra-cflags=-F/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/third_party/llvm-build/Release+Asserts/lib/clang/19/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/home/dalecurtis/cod
e/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64'" -- 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 7c4c274643cedcf9671e1db65361231a7d9bee70)"
-++#define CC_IDENT "clang version 19.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 084e2b53d22c11e013b0a495b65d39aa7f934048)"
-+ #define OS_NAME darwin
-+-#define av_restrict restrict
-+ #define EXTERN_PREFIX "_"
-+ #define EXTERN_ASM _
-+ #define BUILDSUF ""
-+@@ -60,6 +59,7 @@
-+ #define HAVE_VSX 0
-+ #define HAVE_RV 0
-+ #define HAVE_RVV 0
-++#define HAVE_RV_ZVBB 0
-+ #define HAVE_AESNI 0
-+ #define HAVE_AMD3DNOW 0
-+ #define HAVE_AMD3DNOWEXT 0
-+@@ -78,7 +78,6 @@
-+ #define HAVE_SSE42 0
-+ #define HAVE_SSSE3 0
-+ #define HAVE_XOP 0
-+-#define HAVE_CPUNOP 0
-+ #define HAVE_I686 0
-+ #define HAVE_MIPSFPU 0
-+ #define HAVE_MIPS32R2 0
-+@@ -112,6 +111,7 @@
-+ #define HAVE_VSX_EXTERNAL 0
-+ #define HAVE_RV_EXTERNAL 0
-+ #define HAVE_RVV_EXTERNAL 0
-++#define HAVE_RV_ZVBB_EXTERNAL 0
-+ #define HAVE_AESNI_EXTERNAL 0
-+ #define HAVE_AMD3DNOW_EXTERNAL 0
-+ #define HAVE_AMD3DNOWEXT_EXTERNAL 0
-+@@ -130,7 +130,6 @@
-+ #define HAVE_SSE42_EXTERNAL 0
-+ #define HAVE_SSSE3_EXTERNAL 0
-+ #define HAVE_XOP_EXTERNAL 0
-+-#define HAVE_CPUNOP_EXTERNAL 0
-+ #define HAVE_I686_EXTERNAL 0
-+ #define HAVE_MIPSFPU_EXTERNAL 0
-+ #define HAVE_MIPS32R2_EXTERNAL 0
-+@@ -164,6 +163,7 @@
-+ #define HAVE_VSX_INLINE 0
-+ #define HAVE_RV_INLINE 0
-+ #define HAVE_RVV_INLINE 0
-++#define HAVE_RV_ZVBB_INLINE 0
-+ #define HAVE_AESNI_INLINE 0
-+ #define HAVE_AMD3DNOW_INLINE 0
-+ #define HAVE_AMD3DNOWEXT_INLINE 0
-+@@ -182,7 +182,6 @@
-+ #define HAVE_SSE42_INLINE 0
-+ #define HAVE_SSSE3_INLINE 0
-+ #define HAVE_XOP_INLINE 0
-+-#define HAVE_CPUNOP_INLINE 0
-+ #define HAVE_I686_INLINE 0
-+ #define HAVE_MIPSFPU_INLINE 0
-+ #define HAVE_MIPS32R2_INLINE 0
-+@@ -220,6 +219,7 @@
-+ #define HAVE_BIGENDIAN 0
-+ #define HAVE_FAST_UNALIGNED 1
-+ #define HAVE_ARPA_INET_H 0
-++#define HAVE_ASM_HWPROBE_H 0
-+ #define HAVE_ASM_TYPES_H 0
-+ #define HAVE_CDIO_PARANOIA_H 0
-+ #define HAVE_CDIO_PARANOIA_PARANOIA_H 0
-+@@ -246,6 +246,7 @@
-+ #define HAVE_OPENGL_GL3_H 0
-+ #define HAVE_POLL_H 1
-+ #define HAVE_PTHREAD_NP_H 0
-++#define HAVE_SYS_HWPROBE_H 0
-+ #define HAVE_SYS_PARAM_H 1
-+ #define HAVE_SYS_RESOURCE_H 1
-+ #define HAVE_SYS_SELECT_H 1
-+@@ -419,6 +420,7 @@
-+ #define HAVE_STRUCT_SOCKADDR_STORAGE 0
-+ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0
-+ #define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
-++#define HAVE_STRUCT_MFXCONFIGINTERFACE 0
-+ #define HAVE_GZIP 1
-+ #define HAVE_LIBDRM_GETFB2 0
-+ #define HAVE_MAKEINFO 0
-+@@ -429,6 +431,7 @@
-+ #define HAVE_OPENCL_DXVA2 0
-+ #define HAVE_OPENCL_VAAPI_BEIGNET 0
-+ #define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
-++#define HAVE_OPENCL_VIDEOTOOLBOX 0
-+ #define HAVE_PERL 1
-+ #define HAVE_POD2MAN 1
-+ #define HAVE_TEXI2HTML 0
-+@@ -468,6 +471,8 @@
-+ #define CONFIG_FREI0R 0
-+ #define CONFIG_LIBCDIO 0
-+ #define CONFIG_LIBDAVS2 0
-++#define CONFIG_LIBDVDNAV 0
-++#define CONFIG_LIBDVDREAD 0
-+ #define CONFIG_LIBRUBBERBAND 0
-+ #define CONFIG_LIBVIDSTAB 0
-+ #define CONFIG_LIBX264 0
-+@@ -517,6 +522,7 @@
-+ #define CONFIG_LIBJXL 0
-+ #define CONFIG_LIBKLVANC 0
-+ #define CONFIG_LIBKVAZAAR 0
-++#define CONFIG_LIBLC3 0
-+ #define CONFIG_LIBMODPLUG 0
-+ #define CONFIG_LIBMP3LAME 0
-+ #define CONFIG_LIBMYSOFA 0
-+@@ -547,6 +553,7 @@
-+ #define CONFIG_LIBTENSORFLOW 0
-+ #define CONFIG_LIBTESSERACT 0
-+ #define CONFIG_LIBTHEORA 0
-++#define CONFIG_LIBTORCH 0
-+ #define CONFIG_LIBTWOLAME 0
-+ #define CONFIG_LIBUAVS3D 0
-+ #define CONFIG_LIBV4L2 0
-+@@ -596,7 +603,6 @@
-+ #define CONFIG_OPENCL 0
-+ #define CONFIG_AMF 0
-+ #define CONFIG_AUDIOTOOLBOX 0
-+-#define CONFIG_CRYSTALHD 0
-+ #define CONFIG_CUDA 0
-+ #define CONFIG_CUDA_LLVM 0
-+ #define CONFIG_CUVID 0
-+@@ -640,6 +646,7 @@
-+ #define CONFIG_ERROR_RESILIENCE 0
-+ #define CONFIG_FAAN 0
-+ #define CONFIG_FAST_UNALIGNED 1
-++#define CONFIG_IAMF 0
-+ #define CONFIG_LSP 0
-+ #define CONFIG_PIXELUTILS 0
-+ #define CONFIG_NETWORK 0
-+@@ -688,7 +695,8 @@
-+ #define CONFIG_DEFLATE_WRAPPER 0
-+ #define CONFIG_DIRAC_PARSE 1
-+ #define CONFIG_DNN 0
-+-#define CONFIG_DOVI_RPU 0
-++#define CONFIG_DOVI_RPUDEC 0
-++#define CONFIG_DOVI_RPUENC 0
-+ #define CONFIG_DVPROFILE 0
-+ #define CONFIG_EVCPARSE 0
-+ #define CONFIG_EXIF 0
-+@@ -720,10 +728,12 @@
-+ #define CONFIG_INFLATE_WRAPPER 0
-+ #define CONFIG_INTRAX8 0
-+ #define CONFIG_ISO_MEDIA 1
-++#define CONFIG_ISO_WRITER 0
-+ #define CONFIG_IVIDSP 0
-+ #define CONFIG_JPEGTABLES 0
-+ #define CONFIG_LGPLV3 0
-+ #define CONFIG_LIBX262 0
-++#define CONFIG_LIBX264_HDR10 0
-+ #define CONFIG_LLAUDDSP 0
-+ #define CONFIG_LLVIDDSP 0
-+ #define CONFIG_LLVIDENCDSP 0
-+diff --git a/chromium/config/Chromium/ios/arm64/config_components.h b/chromium/config/Chromium/ios/arm64/config_components.h
-+index 7d2f7ea320..9b4b898861 100644
-+--- a/chromium/config/Chromium/ios/arm64/config_components.h
-++++ b/chromium/config/Chromium/ios/arm64/config_components.h
-+@@ -11,6 +11,7 @@
-+ #define CONFIG_DTS2PTS_BSF 0
-+ #define CONFIG_DV_ERROR_MARKER_BSF 0
-+ #define CONFIG_EAC3_CORE_BSF 0
-++#define CONFIG_EVC_FRAME_MERGE_BSF 0
-+ #define CONFIG_EXTRACT_EXTRADATA_BSF 0
-+ #define CONFIG_FILTER_UNITS_BSF 0
-+ #define CONFIG_H264_METADATA_BSF 0
-+@@ -23,7 +24,6 @@
-+ #define CONFIG_MEDIA100_TO_MJPEGB_BSF 0
-+ #define CONFIG_MJPEG2JPEG_BSF 0
-+ #define CONFIG_MJPEGA_DUMP_HEADER_BSF 0
-+-#define CONFIG_MP3_HEADER_DECOMPRESS_BSF 0
-+ #define CONFIG_MPEG2_METADATA_BSF 0
-+ #define CONFIG_MPEG4_UNPACK_BFRAMES_BSF 0
-+ #define CONFIG_MOV2TEXTSUB_BSF 0
-+@@ -45,7 +45,6 @@
-+ #define CONFIG_VP9_SUPERFRAME_SPLIT_BSF 0
-+ #define CONFIG_VVC_METADATA_BSF 0
-+ #define CONFIG_VVC_MP4TOANNEXB_BSF 0
-+-#define CONFIG_EVC_FRAME_MERGE_BSF 0
-+ #define CONFIG_AASC_DECODER 0
-+ #define CONFIG_AIC_DECODER 0
-+ #define CONFIG_ALIAS_PIX_DECODER 0
-+@@ -64,7 +63,6 @@
-+ #define CONFIG_AVRN_DECODER 0
-+ #define CONFIG_AVS_DECODER 0
-+ #define CONFIG_AVUI_DECODER 0
-+-#define CONFIG_AYUV_DECODER 0
-+ #define CONFIG_BETHSOFTVID_DECODER 0
-+ #define CONFIG_BFI_DECODER 0
-+ #define CONFIG_BINK_DECODER 0
-+@@ -131,7 +129,6 @@
-+ #define CONFIG_H263P_DECODER 0
-+ #define CONFIG_H263_V4L2M2M_DECODER 0
-+ #define CONFIG_H264_DECODER 0
-+-#define CONFIG_H264_CRYSTALHD_DECODER 0
-+ #define CONFIG_H264_V4L2M2M_DECODER 0
-+ #define CONFIG_H264_MEDIACODEC_DECODER 0
-+ #define CONFIG_H264_MMAL_DECODER 0
-+@@ -179,13 +176,11 @@
-+ #define CONFIG_MPEG1VIDEO_DECODER 0
-+ #define CONFIG_MPEG2VIDEO_DECODER 0
-+ #define CONFIG_MPEG4_DECODER 0
-+-#define CONFIG_MPEG4_CRYSTALHD_DECODER 0
-+ #define CONFIG_MPEG4_V4L2M2M_DECODER 0
-+ #define CONFIG_MPEG4_MMAL_DECODER 0
-+ #define CONFIG_MPEGVIDEO_DECODER 0
-+ #define CONFIG_MPEG1_V4L2M2M_DECODER 0
-+ #define CONFIG_MPEG2_MMAL_DECODER 0
-+-#define CONFIG_MPEG2_CRYSTALHD_DECODER 0
-+ #define CONFIG_MPEG2_V4L2M2M_DECODER 0
-+ #define CONFIG_MPEG2_QSV_DECODER 0
-+ #define CONFIG_MPEG2_MEDIACODEC_DECODER 0
-+@@ -194,7 +189,6 @@
-+ #define CONFIG_MSMPEG4V1_DECODER 0
-+ #define CONFIG_MSMPEG4V2_DECODER 0
-+ #define CONFIG_MSMPEG4V3_DECODER 0
-+-#define CONFIG_MSMPEG4_CRYSTALHD_DECODER 0
-+ #define CONFIG_MSP2_DECODER 0
-+ #define CONFIG_MSRLE_DECODER 0
-+ #define CONFIG_MSS1_DECODER 0
-+@@ -293,7 +287,6 @@
-+ #define CONFIG_VBN_DECODER 0
-+ #define CONFIG_VBLE_DECODER 0
-+ #define CONFIG_VC1_DECODER 0
-+-#define CONFIG_VC1_CRYSTALHD_DECODER 0
-+ #define CONFIG_VC1IMAGE_DECODER 0
-+ #define CONFIG_VC1_MMAL_DECODER 0
-+ #define CONFIG_VC1_QSV_DECODER 0
-+@@ -325,7 +318,6 @@
-+ #define CONFIG_WMV1_DECODER 0
-+ #define CONFIG_WMV2_DECODER 0
-+ #define CONFIG_WMV3_DECODER 0
-+-#define CONFIG_WMV3_CRYSTALHD_DECODER 0
-+ #define CONFIG_WMV3IMAGE_DECODER 0
-+ #define CONFIG_WNV1_DECODER 0
-+ #define CONFIG_XAN_WC3_DECODER 0
-+@@ -592,6 +584,7 @@
-+ #define CONFIG_LIBGSM_MS_DECODER 0
-+ #define CONFIG_LIBILBC_DECODER 0
-+ #define CONFIG_LIBJXL_DECODER 0
-++#define CONFIG_LIBLC3_DECODER 0
-+ #define CONFIG_LIBOPENCORE_AMRNB_DECODER 0
-+ #define CONFIG_LIBOPENCORE_AMRWB_DECODER 0
-+ #define CONFIG_LIBOPUS_DECODER 1
-+@@ -639,7 +632,6 @@
-+ #define CONFIG_ASV2_ENCODER 0
-+ #define CONFIG_AVRP_ENCODER 0
-+ #define CONFIG_AVUI_ENCODER 0
-+-#define CONFIG_AYUV_ENCODER 0
-+ #define CONFIG_BITPACKED_ENCODER 0
-+ #define CONFIG_BMP_ENCODER 0
-+ #define CONFIG_CFHD_ENCODER 0
-+@@ -821,6 +813,7 @@
-+ #define CONFIG_LIBGSM_MS_ENCODER 0
-+ #define CONFIG_LIBILBC_ENCODER 0
-+ #define CONFIG_LIBJXL_ENCODER 0
-++#define CONFIG_LIBLC3_ENCODER 0
-+ #define CONFIG_LIBMP3LAME_ENCODER 0
-+ #define CONFIG_LIBOPENCORE_AMRNB_ENCODER 0
-+ #define CONFIG_LIBOPENJPEG_ENCODER 0
-+@@ -1573,6 +1566,8 @@
-+ #define CONFIG_HSTACK_QSV_FILTER 0
-+ #define CONFIG_VSTACK_QSV_FILTER 0
-+ #define CONFIG_XSTACK_QSV_FILTER 0
-++#define CONFIG_PAD_VAAPI_FILTER 0
-++#define CONFIG_DRAWBOX_VAAPI_FILTER 0
-+ #define CONFIG_ALLRGB_FILTER 0
-+ #define CONFIG_ALLYUV_FILTER 0
-+ #define CONFIG_CELLAUTO_FILTER 0
-+@@ -1706,6 +1701,7 @@
-+ #define CONFIG_DV_DEMUXER 0
-+ #define CONFIG_DVBSUB_DEMUXER 0
-+ #define CONFIG_DVBTXT_DEMUXER 0
-++#define CONFIG_DVDVIDEO_DEMUXER 0
-+ #define CONFIG_DXA_DEMUXER 0
-+ #define CONFIG_EA_DEMUXER 0
-+ #define CONFIG_EA_CDATA_DEMUXER 0
-+@@ -1767,6 +1763,7 @@
-+ #define CONFIG_KUX_DEMUXER 0
-+ #define CONFIG_KVAG_DEMUXER 0
-+ #define CONFIG_LAF_DEMUXER 0
-++#define CONFIG_LC3_DEMUXER 0
-+ #define CONFIG_LMLM4_DEMUXER 0
-+ #define CONFIG_LOAS_DEMUXER 0
-+ #define CONFIG_LUODAT_DEMUXER 0
-+@@ -1850,6 +1847,7 @@
-+ #define CONFIG_QOA_DEMUXER 0
-+ #define CONFIG_R3D_DEMUXER 0
-+ #define CONFIG_RAWVIDEO_DEMUXER 0
-++#define CONFIG_RCWT_DEMUXER 0
-+ #define CONFIG_REALTEXT_DEMUXER 0
-+ #define CONFIG_REDSPARK_DEMUXER 0
-+ #define CONFIG_RKA_DEMUXER 0
-+@@ -1987,6 +1985,7 @@
-+ #define CONFIG_AC4_MUXER 0
-+ #define CONFIG_ADTS_MUXER 0
-+ #define CONFIG_ADX_MUXER 0
-++#define CONFIG_AEA_MUXER 0
-+ #define CONFIG_AIFF_MUXER 0
-+ #define CONFIG_ALP_MUXER 0
-+ #define CONFIG_AMR_MUXER 0
-+@@ -2026,7 +2025,6 @@
-+ #define CONFIG_F4V_MUXER 0
-+ #define CONFIG_FFMETADATA_MUXER 0
-+ #define CONFIG_FIFO_MUXER 0
-+-#define CONFIG_FIFO_TEST_MUXER 0
-+ #define CONFIG_FILMSTRIP_MUXER 0
-+ #define CONFIG_FITS_MUXER 0
-+ #define CONFIG_FLAC_MUXER 0
-+@@ -2060,6 +2058,7 @@
-+ #define CONFIG_JACOSUB_MUXER 0
-+ #define CONFIG_KVAG_MUXER 0
-+ #define CONFIG_LATM_MUXER 0
-++#define CONFIG_LC3_MUXER 0
-+ #define CONFIG_LRC_MUXER 0
-+ #define CONFIG_M4V_MUXER 0
-+ #define CONFIG_MD5_MUXER 0
-+@@ -2162,6 +2161,7 @@
-+ #define CONFIG_WV_MUXER 0
-+ #define CONFIG_YUV4MPEGPIPE_MUXER 0
-+ #define CONFIG_CHROMAPRINT_MUXER 0
-++#define CONFIG_ANDROID_CONTENT_PROTOCOL 0
-+ #define CONFIG_ASYNC_PROTOCOL 0
-+ #define CONFIG_BLURAY_PROTOCOL 0
-+ #define CONFIG_CACHE_PROTOCOL 0
-+diff --git a/chromium/config/Chromium/ios/arm64/libavformat/demuxer_list.c b/chromium/config/Chromium/ios/arm64/libavformat/demuxer_list.c
-+index 1908ba19e7..570a6441d3 100644
-+--- a/chromium/config/Chromium/ios/arm64/libavformat/demuxer_list.c
-++++ b/chromium/config/Chromium/ios/arm64/libavformat/demuxer_list.c
-+@@ -1,4 +1,4 @@
-+-static const AVInputFormat * const demuxer_list[] = {
-++static const FFInputFormat * const demuxer_list[] = {
-+ &ff_flac_demuxer,
-+ &ff_matroska_demuxer,
-+ &ff_mov_demuxer,
-+diff --git a/chromium/config/Chromium/ios/arm64/libavutil/ffversion.h b/chromium/config/Chromium/ios/arm64/libavutil/ffversion.h
-+index e32799b284..63ce2ac5f8 100644
-+--- a/chromium/config/Chromium/ios/arm64/libavutil/ffversion.h
-++++ b/chromium/config/Chromium/ios/arm64/libavutil/ffversion.h
-+@@ -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-115016-g631703bfb9"
-++#define FFMPEG_VERSION "N-116569-gd0c8e13654"
-+ #endif /* AVUTIL_FFVERSION_H */
-+diff --git a/chromium/config/Chromium/ios/x64/config.asm b/chromium/config/Chromium/ios/x64/config.asm
-+index e6a75b6deb..85470e7fa0 100644
-+--- a/chromium/config/Chromium/ios/x64/config.asm
-++++ b/chromium/config/Chromium/ios/x64/config.asm
-+@@ -44,6 +44,7 @@
-+ %define HAVE_VSX 0
-+ %define HAVE_RV 0
-+ %define HAVE_RVV 0
-++%define HAVE_RV_ZVBB 0
-+ %define HAVE_AESNI 1
-+ %define HAVE_AMD3DNOW 1
-+ %define HAVE_AMD3DNOWEXT 1
-+@@ -62,7 +63,6 @@
-+ %define HAVE_SSE42 1
-+ %define HAVE_SSSE3 1
-+ %define HAVE_XOP 1
-+-%define HAVE_CPUNOP 0
-+ %define HAVE_I686 1
-+ %define HAVE_MIPSFPU 0
-+ %define HAVE_MIPS32R2 0
-+@@ -96,6 +96,7 @@
-+ %define HAVE_VSX_EXTERNAL 0
-+ %define HAVE_RV_EXTERNAL 0
-+ %define HAVE_RVV_EXTERNAL 0
-++%define HAVE_RV_ZVBB_EXTERNAL 0
-+ %define HAVE_AESNI_EXTERNAL 1
-+ %define HAVE_AMD3DNOW_EXTERNAL 1
-+ %define HAVE_AMD3DNOWEXT_EXTERNAL 1
-+@@ -114,7 +115,6 @@
-+ %define HAVE_SSE42_EXTERNAL 1
-+ %define HAVE_SSSE3_EXTERNAL 1
-+ %define HAVE_XOP_EXTERNAL 1
-+-%define HAVE_CPUNOP_EXTERNAL 0
-+ %define HAVE_I686_EXTERNAL 0
-+ %define HAVE_MIPSFPU_EXTERNAL 0
-+ %define HAVE_MIPS32R2_EXTERNAL 0
-+@@ -148,6 +148,7 @@
-+ %define HAVE_VSX_INLINE 0
-+ %define HAVE_RV_INLINE 0
-+ %define HAVE_RVV_INLINE 0
-++%define HAVE_RV_ZVBB_INLINE 0
-+ %define HAVE_AESNI_INLINE 1
-+ %define HAVE_AMD3DNOW_INLINE 1
-+ %define HAVE_AMD3DNOWEXT_INLINE 1
-+@@ -166,7 +167,6 @@
-+ %define HAVE_SSE42_INLINE 1
-+ %define HAVE_SSSE3_INLINE 1
-+ %define HAVE_XOP_INLINE 1
-+-%define HAVE_CPUNOP_INLINE 0
-+ %define HAVE_I686_INLINE 0
-+ %define HAVE_MIPSFPU_INLINE 0
-+ %define HAVE_MIPS32R2_INLINE 0
-+@@ -204,6 +204,7 @@
-+ %define HAVE_BIGENDIAN 0
-+ %define HAVE_FAST_UNALIGNED 1
-+ %define HAVE_ARPA_INET_H 0
-++%define HAVE_ASM_HWPROBE_H 0
-+ %define HAVE_ASM_TYPES_H 0
-+ %define HAVE_CDIO_PARANOIA_H 0
-+ %define HAVE_CDIO_PARANOIA_PARANOIA_H 0
-+@@ -230,6 +231,7 @@
-+ %define HAVE_OPENGL_GL3_H 0
-+ %define HAVE_POLL_H 1
-+ %define HAVE_PTHREAD_NP_H 0
-++%define HAVE_SYS_HWPROBE_H 0
-+ %define HAVE_SYS_PARAM_H 1
-+ %define HAVE_SYS_RESOURCE_H 1
-+ %define HAVE_SYS_SELECT_H 1
-+@@ -403,6 +405,7 @@
-+ %define HAVE_STRUCT_SOCKADDR_STORAGE 0
-+ %define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0
-+ %define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
-++%define HAVE_STRUCT_MFXCONFIGINTERFACE 0
-+ %define HAVE_GZIP 1
-+ %define HAVE_LIBDRM_GETFB2 0
-+ %define HAVE_MAKEINFO 0
-+@@ -413,6 +416,7 @@
-+ %define HAVE_OPENCL_DXVA2 0
-+ %define HAVE_OPENCL_VAAPI_BEIGNET 0
-+ %define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
-++%define HAVE_OPENCL_VIDEOTOOLBOX 0
-+ %define HAVE_PERL 1
-+ %define HAVE_POD2MAN 1
-+ %define HAVE_TEXI2HTML 0
-+@@ -452,6 +456,8 @@
-+ %define CONFIG_FREI0R 0
-+ %define CONFIG_LIBCDIO 0
-+ %define CONFIG_LIBDAVS2 0
-++%define CONFIG_LIBDVDNAV 0
-++%define CONFIG_LIBDVDREAD 0
-+ %define CONFIG_LIBRUBBERBAND 0
-+ %define CONFIG_LIBVIDSTAB 0
-+ %define CONFIG_LIBX264 0
-+@@ -501,6 +507,7 @@
-+ %define CONFIG_LIBJXL 0
-+ %define CONFIG_LIBKLVANC 0
-+ %define CONFIG_LIBKVAZAAR 0
-++%define CONFIG_LIBLC3 0
-+ %define CONFIG_LIBMODPLUG 0
-+ %define CONFIG_LIBMP3LAME 0
-+ %define CONFIG_LIBMYSOFA 0
-+@@ -531,6 +538,7 @@
-+ %define CONFIG_LIBTENSORFLOW 0
-+ %define CONFIG_LIBTESSERACT 0
-+ %define CONFIG_LIBTHEORA 0
-++%define CONFIG_LIBTORCH 0
-+ %define CONFIG_LIBTWOLAME 0
-+ %define CONFIG_LIBUAVS3D 0
-+ %define CONFIG_LIBV4L2 0
-+@@ -580,7 +588,6 @@
-+ %define CONFIG_OPENCL 0
-+ %define CONFIG_AMF 0
-+ %define CONFIG_AUDIOTOOLBOX 0
-+-%define CONFIG_CRYSTALHD 0
-+ %define CONFIG_CUDA 0
-+ %define CONFIG_CUDA_LLVM 0
-+ %define CONFIG_CUVID 0
-+@@ -624,6 +631,7 @@
-+ %define CONFIG_ERROR_RESILIENCE 0
-+ %define CONFIG_FAAN 0
-+ %define CONFIG_FAST_UNALIGNED 1
-++%define CONFIG_IAMF 0
-+ %define CONFIG_LSP 0
-+ %define CONFIG_PIXELUTILS 0
-+ %define CONFIG_NETWORK 0
-+@@ -672,7 +680,8 @@
-+ %define CONFIG_DEFLATE_WRAPPER 0
-+ %define CONFIG_DIRAC_PARSE 1
-+ %define CONFIG_DNN 0
-+-%define CONFIG_DOVI_RPU 0
-++%define CONFIG_DOVI_RPUDEC 0
-++%define CONFIG_DOVI_RPUENC 0
-+ %define CONFIG_DVPROFILE 0
-+ %define CONFIG_EVCPARSE 0
-+ %define CONFIG_EXIF 0
-+@@ -704,10 +713,12 @@
-+ %define CONFIG_INFLATE_WRAPPER 0
-+ %define CONFIG_INTRAX8 0
-+ %define CONFIG_ISO_MEDIA 1
-++%define CONFIG_ISO_WRITER 0
-+ %define CONFIG_IVIDSP 0
-+ %define CONFIG_JPEGTABLES 0
-+ %define CONFIG_LGPLV3 0
-+ %define CONFIG_LIBX262 0
-++%define CONFIG_LIBX264_HDR10 0
-+ %define CONFIG_LLAUDDSP 0
-+ %define CONFIG_LLVIDDSP 0
-+ %define CONFIG_LLVIDENCDSP 0
-+diff --git a/chromium/config/Chromium/ios/x64/config.h b/chromium/config/Chromium/ios/x64/config.h
-+index aad723d910..59f14e9b14 100644
-+--- a/chromium/config/Chromium/ios/x64/config.h
-++++ b/chromium/config/Chromium/ios/x64/config.h
-+@@ -1,14 +1,13 @@
-+ /* 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-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/ezemtsov/projects/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang --enable-cr
oss-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=x86_64-apple-macosx' --extra-cflags=-F/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/19/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/home/ezemtsov
/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=x86_64 --extra-cflags=-m64 --extra-ldflags='-arch x86_64'" -- 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/usr/local/google/home/dalecurtis/code/chrome/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang
--enable-cross-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=x86_64-apple-macosx' --extra-cflags=-F/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/third_party/llvm-build/Release+Asserts/lib/clang/19/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/home/dalecurtis/co
de/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=x86_64 --extra-cflags=-m64 --extra-ldflags='-arch x86_64'" -- 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 7c4c274643cedcf9671e1db65361231a7d9bee70)"
-++#define CC_IDENT "clang version 19.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 084e2b53d22c11e013b0a495b65d39aa7f934048)"
-+ #define OS_NAME darwin
-+-#define av_restrict restrict
-+ #define EXTERN_PREFIX "_"
-+ #define EXTERN_ASM _
-+ #define BUILDSUF ""
-+@@ -59,6 +58,7 @@
-+ #define HAVE_VSX 0
-+ #define HAVE_RV 0
-+ #define HAVE_RVV 0
-++#define HAVE_RV_ZVBB 0
-+ #define HAVE_AESNI 1
-+ #define HAVE_AMD3DNOW 1
-+ #define HAVE_AMD3DNOWEXT 1
-+@@ -77,7 +77,6 @@
-+ #define HAVE_SSE42 1
-+ #define HAVE_SSSE3 1
-+ #define HAVE_XOP 1
-+-#define HAVE_CPUNOP 0
-+ #define HAVE_I686 1
-+ #define HAVE_MIPSFPU 0
-+ #define HAVE_MIPS32R2 0
-+@@ -111,6 +110,7 @@
-+ #define HAVE_VSX_EXTERNAL 0
-+ #define HAVE_RV_EXTERNAL 0
-+ #define HAVE_RVV_EXTERNAL 0
-++#define HAVE_RV_ZVBB_EXTERNAL 0
-+ #define HAVE_AESNI_EXTERNAL 1
-+ #define HAVE_AMD3DNOW_EXTERNAL 1
-+ #define HAVE_AMD3DNOWEXT_EXTERNAL 1
-+@@ -129,7 +129,6 @@
-+ #define HAVE_SSE42_EXTERNAL 1
-+ #define HAVE_SSSE3_EXTERNAL 1
-+ #define HAVE_XOP_EXTERNAL 1
-+-#define HAVE_CPUNOP_EXTERNAL 0
-+ #define HAVE_I686_EXTERNAL 0
-+ #define HAVE_MIPSFPU_EXTERNAL 0
-+ #define HAVE_MIPS32R2_EXTERNAL 0
-+@@ -163,6 +162,7 @@
-+ #define HAVE_VSX_INLINE 0
-+ #define HAVE_RV_INLINE 0
-+ #define HAVE_RVV_INLINE 0
-++#define HAVE_RV_ZVBB_INLINE 0
-+ #define HAVE_AESNI_INLINE 1
-+ #define HAVE_AMD3DNOW_INLINE 1
-+ #define HAVE_AMD3DNOWEXT_INLINE 1
-+@@ -181,7 +181,6 @@
-+ #define HAVE_SSE42_INLINE 1
-+ #define HAVE_SSSE3_INLINE 1
-+ #define HAVE_XOP_INLINE 1
-+-#define HAVE_CPUNOP_INLINE 0
-+ #define HAVE_I686_INLINE 0
-+ #define HAVE_MIPSFPU_INLINE 0
-+ #define HAVE_MIPS32R2_INLINE 0
-+@@ -219,6 +218,7 @@
-+ #define HAVE_BIGENDIAN 0
-+ #define HAVE_FAST_UNALIGNED 1
-+ #define HAVE_ARPA_INET_H 0
-++#define HAVE_ASM_HWPROBE_H 0
-+ #define HAVE_ASM_TYPES_H 0
-+ #define HAVE_CDIO_PARANOIA_H 0
-+ #define HAVE_CDIO_PARANOIA_PARANOIA_H 0
-+@@ -245,6 +245,7 @@
-+ #define HAVE_OPENGL_GL3_H 0
-+ #define HAVE_POLL_H 1
-+ #define HAVE_PTHREAD_NP_H 0
-++#define HAVE_SYS_HWPROBE_H 0
-+ #define HAVE_SYS_PARAM_H 1
-+ #define HAVE_SYS_RESOURCE_H 1
-+ #define HAVE_SYS_SELECT_H 1
-+@@ -418,6 +419,7 @@
-+ #define HAVE_STRUCT_SOCKADDR_STORAGE 0
-+ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0
-+ #define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
-++#define HAVE_STRUCT_MFXCONFIGINTERFACE 0
-+ #define HAVE_GZIP 1
-+ #define HAVE_LIBDRM_GETFB2 0
-+ #define HAVE_MAKEINFO 0
-+@@ -428,6 +430,7 @@
-+ #define HAVE_OPENCL_DXVA2 0
-+ #define HAVE_OPENCL_VAAPI_BEIGNET 0
-+ #define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
-++#define HAVE_OPENCL_VIDEOTOOLBOX 0
-+ #define HAVE_PERL 1
-+ #define HAVE_POD2MAN 1
-+ #define HAVE_TEXI2HTML 0
-+@@ -467,6 +470,8 @@
-+ #define CONFIG_FREI0R 0
-+ #define CONFIG_LIBCDIO 0
-+ #define CONFIG_LIBDAVS2 0
-++#define CONFIG_LIBDVDNAV 0
-++#define CONFIG_LIBDVDREAD 0
-+ #define CONFIG_LIBRUBBERBAND 0
-+ #define CONFIG_LIBVIDSTAB 0
-+ #define CONFIG_LIBX264 0
-+@@ -516,6 +521,7 @@
-+ #define CONFIG_LIBJXL 0
-+ #define CONFIG_LIBKLVANC 0
-+ #define CONFIG_LIBKVAZAAR 0
-++#define CONFIG_LIBLC3 0
-+ #define CONFIG_LIBMODPLUG 0
-+ #define CONFIG_LIBMP3LAME 0
-+ #define CONFIG_LIBMYSOFA 0
-+@@ -546,6 +552,7 @@
-+ #define CONFIG_LIBTENSORFLOW 0
-+ #define CONFIG_LIBTESSERACT 0
-+ #define CONFIG_LIBTHEORA 0
-++#define CONFIG_LIBTORCH 0
-+ #define CONFIG_LIBTWOLAME 0
-+ #define CONFIG_LIBUAVS3D 0
-+ #define CONFIG_LIBV4L2 0
-+@@ -595,7 +602,6 @@
-+ #define CONFIG_OPENCL 0
-+ #define CONFIG_AMF 0
-+ #define CONFIG_AUDIOTOOLBOX 0
-+-#define CONFIG_CRYSTALHD 0
-+ #define CONFIG_CUDA 0
-+ #define CONFIG_CUDA_LLVM 0
-+ #define CONFIG_CUVID 0
-+@@ -639,6 +645,7 @@
-+ #define CONFIG_ERROR_RESILIENCE 0
-+ #define CONFIG_FAAN 0
-+ #define CONFIG_FAST_UNALIGNED 1
-++#define CONFIG_IAMF 0
-+ #define CONFIG_LSP 0
-+ #define CONFIG_PIXELUTILS 0
-+ #define CONFIG_NETWORK 0
-+@@ -687,7 +694,8 @@
-+ #define CONFIG_DEFLATE_WRAPPER 0
-+ #define CONFIG_DIRAC_PARSE 1
-+ #define CONFIG_DNN 0
-+-#define CONFIG_DOVI_RPU 0
-++#define CONFIG_DOVI_RPUDEC 0
-++#define CONFIG_DOVI_RPUENC 0
-+ #define CONFIG_DVPROFILE 0
-+ #define CONFIG_EVCPARSE 0
-+ #define CONFIG_EXIF 0
-+@@ -719,10 +727,12 @@
-+ #define CONFIG_INFLATE_WRAPPER 0
-+ #define CONFIG_INTRAX8 0
-+ #define CONFIG_ISO_MEDIA 1
-++#define CONFIG_ISO_WRITER 0
-+ #define CONFIG_IVIDSP 0
-+ #define CONFIG_JPEGTABLES 0
-+ #define CONFIG_LGPLV3 0
-+ #define CONFIG_LIBX262 0
-++#define CONFIG_LIBX264_HDR10 0
-+ #define CONFIG_LLAUDDSP 0
-+ #define CONFIG_LLVIDDSP 0
-+ #define CONFIG_LLVIDENCDSP 0
-+diff --git a/chromium/config/Chromium/ios/x64/config_components.h b/chromium/config/Chromium/ios/x64/config_components.h
-+index 7d2f7ea320..9b4b898861 100644
-+--- a/chromium/config/Chromium/ios/x64/config_components.h
-++++ b/chromium/config/Chromium/ios/x64/config_components.h
-+@@ -11,6 +11,7 @@
-+ #define CONFIG_DTS2PTS_BSF 0
-+ #define CONFIG_DV_ERROR_MARKER_BSF 0
-+ #define CONFIG_EAC3_CORE_BSF 0
-++#define CONFIG_EVC_FRAME_MERGE_BSF 0
-+ #define CONFIG_EXTRACT_EXTRADATA_BSF 0
-+ #define CONFIG_FILTER_UNITS_BSF 0
-+ #define CONFIG_H264_METADATA_BSF 0
-+@@ -23,7 +24,6 @@
-+ #define CONFIG_MEDIA100_TO_MJPEGB_BSF 0
-+ #define CONFIG_MJPEG2JPEG_BSF 0
-+ #define CONFIG_MJPEGA_DUMP_HEADER_BSF 0
-+-#define CONFIG_MP3_HEADER_DECOMPRESS_BSF 0
-+ #define CONFIG_MPEG2_METADATA_BSF 0
-+ #define CONFIG_MPEG4_UNPACK_BFRAMES_BSF 0
-+ #define CONFIG_MOV2TEXTSUB_BSF 0
-+@@ -45,7 +45,6 @@
-+ #define CONFIG_VP9_SUPERFRAME_SPLIT_BSF 0
-+ #define CONFIG_VVC_METADATA_BSF 0
-+ #define CONFIG_VVC_MP4TOANNEXB_BSF 0
-+-#define CONFIG_EVC_FRAME_MERGE_BSF 0
-+ #define CONFIG_AASC_DECODER 0
-+ #define CONFIG_AIC_DECODER 0
-+ #define CONFIG_ALIAS_PIX_DECODER 0
-+@@ -64,7 +63,6 @@
-+ #define CONFIG_AVRN_DECODER 0
-+ #define CONFIG_AVS_DECODER 0
-+ #define CONFIG_AVUI_DECODER 0
-+-#define CONFIG_AYUV_DECODER 0
-+ #define CONFIG_BETHSOFTVID_DECODER 0
-+ #define CONFIG_BFI_DECODER 0
-+ #define CONFIG_BINK_DECODER 0
-+@@ -131,7 +129,6 @@
-+ #define CONFIG_H263P_DECODER 0
-+ #define CONFIG_H263_V4L2M2M_DECODER 0
-+ #define CONFIG_H264_DECODER 0
-+-#define CONFIG_H264_CRYSTALHD_DECODER 0
-+ #define CONFIG_H264_V4L2M2M_DECODER 0
-+ #define CONFIG_H264_MEDIACODEC_DECODER 0
-+ #define CONFIG_H264_MMAL_DECODER 0
-+@@ -179,13 +176,11 @@
-+ #define CONFIG_MPEG1VIDEO_DECODER 0
-+ #define CONFIG_MPEG2VIDEO_DECODER 0
-+ #define CONFIG_MPEG4_DECODER 0
-+-#define CONFIG_MPEG4_CRYSTALHD_DECODER 0
-+ #define CONFIG_MPEG4_V4L2M2M_DECODER 0
-+ #define CONFIG_MPEG4_MMAL_DECODER 0
-+ #define CONFIG_MPEGVIDEO_DECODER 0
-+ #define CONFIG_MPEG1_V4L2M2M_DECODER 0
-+ #define CONFIG_MPEG2_MMAL_DECODER 0
-+-#define CONFIG_MPEG2_CRYSTALHD_DECODER 0
-+ #define CONFIG_MPEG2_V4L2M2M_DECODER 0
-+ #define CONFIG_MPEG2_QSV_DECODER 0
-+ #define CONFIG_MPEG2_MEDIACODEC_DECODER 0
-+@@ -194,7 +189,6 @@
-+ #define CONFIG_MSMPEG4V1_DECODER 0
-+ #define CONFIG_MSMPEG4V2_DECODER 0
-+ #define CONFIG_MSMPEG4V3_DECODER 0
-+-#define CONFIG_MSMPEG4_CRYSTALHD_DECODER 0
-+ #define CONFIG_MSP2_DECODER 0
-+ #define CONFIG_MSRLE_DECODER 0
-+ #define CONFIG_MSS1_DECODER 0
-+@@ -293,7 +287,6 @@
-+ #define CONFIG_VBN_DECODER 0
-+ #define CONFIG_VBLE_DECODER 0
-+ #define CONFIG_VC1_DECODER 0
-+-#define CONFIG_VC1_CRYSTALHD_DECODER 0
-+ #define CONFIG_VC1IMAGE_DECODER 0
-+ #define CONFIG_VC1_MMAL_DECODER 0
-+ #define CONFIG_VC1_QSV_DECODER 0
-+@@ -325,7 +318,6 @@
-+ #define CONFIG_WMV1_DECODER 0
-+ #define CONFIG_WMV2_DECODER 0
-+ #define CONFIG_WMV3_DECODER 0
-+-#define CONFIG_WMV3_CRYSTALHD_DECODER 0
-+ #define CONFIG_WMV3IMAGE_DECODER 0
-+ #define CONFIG_WNV1_DECODER 0
-+ #define CONFIG_XAN_WC3_DECODER 0
-+@@ -592,6 +584,7 @@
-+ #define CONFIG_LIBGSM_MS_DECODER 0
-+ #define CONFIG_LIBILBC_DECODER 0
-+ #define CONFIG_LIBJXL_DECODER 0
-++#define CONFIG_LIBLC3_DECODER 0
-+ #define CONFIG_LIBOPENCORE_AMRNB_DECODER 0
-+ #define CONFIG_LIBOPENCORE_AMRWB_DECODER 0
-+ #define CONFIG_LIBOPUS_DECODER 1
-+@@ -639,7 +632,6 @@
-+ #define CONFIG_ASV2_ENCODER 0
-+ #define CONFIG_AVRP_ENCODER 0
-+ #define CONFIG_AVUI_ENCODER 0
-+-#define CONFIG_AYUV_ENCODER 0
-+ #define CONFIG_BITPACKED_ENCODER 0
-+ #define CONFIG_BMP_ENCODER 0
-+ #define CONFIG_CFHD_ENCODER 0
-+@@ -821,6 +813,7 @@
-+ #define CONFIG_LIBGSM_MS_ENCODER 0
-+ #define CONFIG_LIBILBC_ENCODER 0
-+ #define CONFIG_LIBJXL_ENCODER 0
-++#define CONFIG_LIBLC3_ENCODER 0
-+ #define CONFIG_LIBMP3LAME_ENCODER 0
-+ #define CONFIG_LIBOPENCORE_AMRNB_ENCODER 0
-+ #define CONFIG_LIBOPENJPEG_ENCODER 0
-+@@ -1573,6 +1566,8 @@
-+ #define CONFIG_HSTACK_QSV_FILTER 0
-+ #define CONFIG_VSTACK_QSV_FILTER 0
-+ #define CONFIG_XSTACK_QSV_FILTER 0
-++#define CONFIG_PAD_VAAPI_FILTER 0
-++#define CONFIG_DRAWBOX_VAAPI_FILTER 0
-+ #define CONFIG_ALLRGB_FILTER 0
-+ #define CONFIG_ALLYUV_FILTER 0
-+ #define CONFIG_CELLAUTO_FILTER 0
-+@@ -1706,6 +1701,7 @@
-+ #define CONFIG_DV_DEMUXER 0
-+ #define CONFIG_DVBSUB_DEMUXER 0
-+ #define CONFIG_DVBTXT_DEMUXER 0
-++#define CONFIG_DVDVIDEO_DEMUXER 0
-+ #define CONFIG_DXA_DEMUXER 0
-+ #define CONFIG_EA_DEMUXER 0
-+ #define CONFIG_EA_CDATA_DEMUXER 0
-+@@ -1767,6 +1763,7 @@
-+ #define CONFIG_KUX_DEMUXER 0
-+ #define CONFIG_KVAG_DEMUXER 0
-+ #define CONFIG_LAF_DEMUXER 0
-++#define CONFIG_LC3_DEMUXER 0
-+ #define CONFIG_LMLM4_DEMUXER 0
-+ #define CONFIG_LOAS_DEMUXER 0
-+ #define CONFIG_LUODAT_DEMUXER 0
-+@@ -1850,6 +1847,7 @@
-+ #define CONFIG_QOA_DEMUXER 0
-+ #define CONFIG_R3D_DEMUXER 0
-+ #define CONFIG_RAWVIDEO_DEMUXER 0
-++#define CONFIG_RCWT_DEMUXER 0
-+ #define CONFIG_REALTEXT_DEMUXER 0
-+ #define CONFIG_REDSPARK_DEMUXER 0
-+ #define CONFIG_RKA_DEMUXER 0
-+@@ -1987,6 +1985,7 @@
-+ #define CONFIG_AC4_MUXER 0
-+ #define CONFIG_ADTS_MUXER 0
-+ #define CONFIG_ADX_MUXER 0
-++#define CONFIG_AEA_MUXER 0
-+ #define CONFIG_AIFF_MUXER 0
-+ #define CONFIG_ALP_MUXER 0
-+ #define CONFIG_AMR_MUXER 0
-+@@ -2026,7 +2025,6 @@
-+ #define CONFIG_F4V_MUXER 0
-+ #define CONFIG_FFMETADATA_MUXER 0
-+ #define CONFIG_FIFO_MUXER 0
-+-#define CONFIG_FIFO_TEST_MUXER 0
-+ #define CONFIG_FILMSTRIP_MUXER 0
-+ #define CONFIG_FITS_MUXER 0
-+ #define CONFIG_FLAC_MUXER 0
-+@@ -2060,6 +2058,7 @@
-+ #define CONFIG_JACOSUB_MUXER 0
-+ #define CONFIG_KVAG_MUXER 0
-+ #define CONFIG_LATM_MUXER 0
-++#define CONFIG_LC3_MUXER 0
-+ #define CONFIG_LRC_MUXER 0
-+ #define CONFIG_M4V_MUXER 0
-+ #define CONFIG_MD5_MUXER 0
-+@@ -2162,6 +2161,7 @@
-+ #define CONFIG_WV_MUXER 0
-+ #define CONFIG_YUV4MPEGPIPE_MUXER 0
-+ #define CONFIG_CHROMAPRINT_MUXER 0
-++#define CONFIG_ANDROID_CONTENT_PROTOCOL 0
-+ #define CONFIG_ASYNC_PROTOCOL 0
-+ #define CONFIG_BLURAY_PROTOCOL 0
-+ #define CONFIG_CACHE_PROTOCOL 0
-+diff --git a/chromium/config/Chromium/ios/x64/libavformat/demuxer_list.c b/chromium/config/Chromium/ios/x64/libavformat/demuxer_list.c
-+index 1908ba19e7..570a6441d3 100644
-+--- a/chromium/config/Chromium/ios/x64/libavformat/demuxer_list.c
-++++ b/chromium/config/Chromium/ios/x64/libavformat/demuxer_list.c
-+@@ -1,4 +1,4 @@
-+-static const AVInputFormat * const demuxer_list[] = {
-++static const FFInputFormat * const demuxer_list[] = {
-+ &ff_flac_demuxer,
-+ &ff_matroska_demuxer,
-+ &ff_mov_demuxer,
-+diff --git a/chromium/config/Chromium/ios/x64/libavutil/ffversion.h b/chromium/config/Chromium/ios/x64/libavutil/ffversion.h
-+index e32799b284..63ce2ac5f8 100644
-+--- a/chromium/config/Chromium/ios/x64/libavutil/ffversion.h
-++++ b/chromium/config/Chromium/ios/x64/libavutil/ffversion.h
-+@@ -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-115016-g631703bfb9"
-++#define FFMPEG_VERSION "N-116569-gd0c8e13654"
-+ #endif /* AVUTIL_FFVERSION_H */
-+diff --git a/ffmpeg_generated.gni b/ffmpeg_generated.gni
-+index 37155be221..646895d03a 100644
-+--- a/ffmpeg_generated.gni
-++++ b/ffmpeg_generated.gni
-+@@ -14,18 +14,12 @@ ffmpeg_asm_sources = []
-+
-+ use_linux_config = is_linux || is_chromeos || is_fuchsia
-+
-+-if (current_cpu == "arm64" || current_cpu == "x64" ||
-+- (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") {
-+ ffmpeg_c_sources += [
-+ "libavcodec/ac3_channel_layout_tab.c",
-+ "libavcodec/ac3_parser.c",
-+ "libavcodec/adts_parser.c",
-+ "libavcodec/allcodecs.c",
-+- "libavcodec/autorename_libavcodec_flacdsp.c",
-+- "libavcodec/autorename_libavcodec_mpegaudiodsp.c",
-+- "libavcodec/autorename_libavcodec_vorbisdsp.c",
-+ "libavcodec/avcodec.c",
-+ "libavcodec/avdct.c",
-+ "libavcodec/avfft.c",
-+@@ -45,6 +39,7 @@ if (current_cpu == "arm64" || current_cpu == "x64" ||
-+ "libavcodec/flac_parser.c",
-+ "libavcodec/flacdata.c",
-+ "libavcodec/flacdec.c",
-++ "libavcodec/flacdsp.c",
-+ "libavcodec/get_buffer.c",
-+ "libavcodec/golomb.c",
-+ "libavcodec/imgconvert.c",
-+@@ -62,6 +57,7 @@ if (current_cpu == "arm64" || current_cpu == "x64" ||
-+ "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",
-+@@ -80,6 +76,8 @@ if (current_cpu == "arm64" || current_cpu == "x64" ||
-+ "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",
-+@@ -89,6 +87,7 @@ if (current_cpu == "arm64" || current_cpu == "x64" ||
-+ "libavcodec/vorbis_data.c",
-+ "libavcodec/vorbis_parser.c",
-+ "libavcodec/vorbisdec.c",
-++ "libavcodec/vorbisdsp.c",
-+ "libavcodec/vp9_parser.c",
-+ "libavcodec/xiph.c",
-+ "libavformat/allformats.c",
-+@@ -143,11 +142,6 @@ if (current_cpu == "arm64" || current_cpu == "x64" ||
-+ "libavutil/aes.c",
-+ "libavutil/aes_ctr.c",
-+ "libavutil/ambient_viewing_environment.c",
-+- "libavutil/autorename_libavutil_cpu.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",
-+@@ -156,6 +150,7 @@ if (current_cpu == "arm64" || current_cpu == "x64" ||
-+ "libavutil/buffer.c",
-+ "libavutil/camellia.c",
-+ "libavutil/channel_layout.c",
-++ "libavutil/cpu.c",
-+ "libavutil/crc.c",
-+ "libavutil/csp.c",
-+ "libavutil/detection_bbox.c",
-+@@ -170,12 +165,15 @@ if (current_cpu == "arm64" || current_cpu == "x64" ||
-+ "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",
-+@@ -193,6 +191,9 @@ if (current_cpu == "arm64" || current_cpu == "x64" ||
-+ "libavutil/random_seed.c",
-+ "libavutil/rational.c",
-+ "libavutil/reverse.c",
-++ "libavutil/riscv/autorename_libavutil_riscv_cpu.c",
-++ "libavutil/riscv/fixed_dsp_init.c",
-++ "libavutil/riscv/float_dsp_init.c",
-+ "libavutil/samplefmt.c",
-+ "libavutil/sha.c",
-+ "libavutil/slicethread.c",
-+@@ -205,19 +206,36 @@ if (current_cpu == "arm64" || current_cpu == "x64" ||
-+ "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",
-++ ]
-+ }
-+
-+-if ((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") {
-+ ffmpeg_c_sources += [
-++ "libavcodec/aac/aacdec.c",
-++ "libavcodec/aac/aacdec_float.c",
-++ "libavcodec/aac/aacdec_tab.c",
-++ "libavcodec/aac_ac3_parser.c",
-++ "libavcodec/aac_parser.c",
-++ "libavcodec/aacps_common.c",
-++ "libavcodec/aacps_float.c",
-++ "libavcodec/aacpsdsp_float.c",
-++ "libavcodec/aacsbr.c",
-++ "libavcodec/aactab.c",
-++ "libavcodec/adts_header.c",
-+ "libavcodec/atsc_a53.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",
-+@@ -242,253 +260,24 @@ if ((is_apple && ffmpeg_branding == "Chrome") ||
-+ "libavcodec/h264pred.c",
-+ "libavcodec/h264qpel.c",
-+ "libavcodec/h274.c",
-+- "libavcodec/startcode.c",
-+- ]
-+-}
-+-
-+-if ((is_apple && current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
-+- (is_win && current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
-+- (is_win && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
-+- (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
-+- (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome")) {
-+- ffmpeg_c_sources += [
-+- "libavcodec/x86/autorename_libavcodec_x86_videodsp_init.c",
-+- "libavcodec/x86/h264_intrapred_init.c",
-+- "libavcodec/x86/h264_qpel.c",
-+- "libavcodec/x86/h264chroma_init.c",
-+- "libavcodec/x86/h264dsp_init.c",
-+- ]
-+- ffmpeg_asm_sources += [
-+- "libavcodec/x86/autorename_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",
-+- ]
-+-}
-+-
-+-if ((current_cpu == "arm64" && ffmpeg_branding == "Chrome") ||
-+- (current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
-+- (is_android && current_cpu == "arm" && arm_use_neon &&
-+- ffmpeg_branding == "Chrome") ||
-+- (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
-+- (is_apple && ffmpeg_branding == "Chrome") ||
-+- (is_win && ffmpeg_branding == "Chrome") ||
-+- (use_linux_config && ffmpeg_branding == "Chrome")) {
-+- ffmpeg_c_sources += [
-+- "libavcodec/aac/aacdec.c",
-+- "libavcodec/aac/aacdec_float.c",
-+- "libavcodec/aac/aacdec_tab.c",
-+- "libavcodec/aac_ac3_parser.c",
-+- "libavcodec/aac_parser.c",
-+- "libavcodec/aacps_common.c",
-+- "libavcodec/aacps_float.c",
-+- "libavcodec/aacpsdsp_float.c",
-+- "libavcodec/aacsbr.c",
-+- "libavcodec/aactab.c",
-+- "libavcodec/adts_header.c",
-+- "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/sbrdsp_init.c",
-++ "libavcodec/sbrdsp.c",
-+ "libavcodec/sinewin.c",
-++ "libavcodec/startcode.c",
-++ "libavcodec/videodsp.c",
-+ "libavformat/apetag.c",
-+ "libavformat/autorename_libavformat_aacdec.c",
-+ "libavformat/img2.c",
-+ ]
-+-}
-+-
-+-if ((is_apple && current_cpu == "arm64" && ffmpeg_branding == "Chrome") ||
-+- (is_win && current_cpu == "arm64" && ffmpeg_branding == "Chrome") ||
-+- (use_linux_config && current_cpu == "arm64" &&
-+- ffmpeg_branding == "Chrome")) {
-+- ffmpeg_c_sources += [
-+- "libavcodec/aarch64/h264chroma_init_aarch64.c",
-+- "libavcodec/aarch64/h264dsp_init_aarch64.c",
-+- "libavcodec/aarch64/h264pred_init.c",
-+- "libavcodec/aarch64/h264qpel_init_aarch64.c",
-+- "libavcodec/aarch64/videodsp_init.c",
-+- ]
-+ ffmpeg_gas_sources += [
-+- "libavcodec/aarch64/autorename_libavcodec_aarch64_h264cmc_neon.S",
-+- "libavcodec/aarch64/autorename_libavcodec_aarch64_h264dsp_neon.S",
-+- "libavcodec/aarch64/autorename_libavcodec_aarch64_h264idct_neon.S",
-+- "libavcodec/aarch64/autorename_libavcodec_aarch64_h264pred_neon.S",
-+- "libavcodec/aarch64/autorename_libavcodec_aarch64_h264qpel_neon.S",
-+- "libavcodec/aarch64/autorename_libavcodec_aarch64_hpeldsp_neon.S",
-+- "libavcodec/aarch64/videodsp.S",
-+- ]
-+-}
-+-
-+-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",
-+- "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 == "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",
-+- "libavutil/x86/autorename_libavutil_x86_cpu.c",
-+- "libavutil/x86/autorename_libavutil_x86_float_dsp_init.c",
-+- "libavutil/x86/fixed_dsp_init.c",
-+- "libavutil/x86/imgutils_init.c",
-+- "libavutil/x86/lls_init.c",
-++ "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) ||
-+- (use_linux_config && current_cpu == "arm" && arm_use_neon) ||
-+- (use_linux_config && current_cpu == "arm")) {
-+- ffmpeg_c_sources += [
-+- "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/float_dsp_init_arm.c",
-+- "libavutil/arm/float_dsp_init_vfp.c",
-+- ]
-+- ffmpeg_gas_sources += [
-+- "libavcodec/arm/flacdsp_arm.S",
-+- "libavcodec/arm/mpegaudiodsp_fixed_armv6.S",
-+- "libavutil/arm/float_dsp_vfp.S",
-+- ]
-+-}
-+-
-+-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")) {
-+- ffmpeg_c_sources += [
-+- "libavcodec/arm/h264chroma_init_arm.c",
-+- "libavcodec/arm/h264dsp_init_arm.c",
-+- "libavcodec/arm/h264pred_init_arm.c",
-+- "libavcodec/arm/h264qpel_init_arm.c",
-+- "libavcodec/arm/videodsp_init_arm.c",
-+- "libavcodec/arm/videodsp_init_armv5te.c",
-+- ]
-+- ffmpeg_gas_sources += [
-+- "libavcodec/arm/startcode_armv6.S",
-+- "libavcodec/arm/videodsp_armv5te.S",
-+- ]
-+-}
-+-
-+-if (use_linux_config && current_cpu == "arm" && arm_use_neon &&
-+- ffmpeg_branding == "Chrome") {
-+- ffmpeg_gas_sources += [
-+- "libavcodec/arm/h264cmc_neon.S",
-+- "libavcodec/arm/h264dsp_neon.S",
-+- "libavcodec/arm/h264idct_neon.S",
-+- "libavcodec/arm/h264pred_neon.S",
-+- "libavcodec/arm/h264qpel_neon.S",
-+- "libavcodec/arm/hpeldsp_neon.S",
-+- ]
-+-}
-+-
-+-if (current_cpu == "arm64" && ffmpeg_branding == "Chrome") {
-+- ffmpeg_c_sources += [
-+- "libavcodec/aarch64/aacpsdsp_init_aarch64.c",
-+- "libavcodec/aarch64/sbrdsp_init_aarch64.c",
-+- ]
-+- ffmpeg_gas_sources += [
-+- "libavcodec/aarch64/autorename_libavcodec_aarch64_aacpsdsp_neon.S",
-+- "libavcodec/aarch64/autorename_libavcodec_aarch64_sbrdsp_neon.S",
-+- ]
-+-}
-+-
-+-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 += [
-+- "libavcodec/arm/vorbisdsp_neon.S",
-+- "libavutil/arm/float_dsp_neon.S",
-+- ]
-+-}
-+-
-+-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
-+- (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
-+- (is_win && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
-+- (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome")) {
-+- ffmpeg_c_sources += [
-+- "libavcodec/x86/aacpsdsp_init.c",
-+- "libavcodec/x86/sbrdsp_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") ||
-+- (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome")) {
-+- ffmpeg_c_sources += [
-+- "libavcodec/arm/aacpsdsp_init_arm.c",
-+- "libavcodec/arm/sbrdsp_init_arm.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")) {
-+- ffmpeg_asm_sources += [
-+- "libavcodec/x86/aacpsdsp.asm",
-+- "libavcodec/x86/sbrdsp.asm",
-+- ]
-+-}
-+-
-+-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 += [
-+- "libavcodec/arm/aacpsdsp_neon.S",
-+- "libavcodec/arm/sbrdsp_neon.S",
-+- ]
-+-}
-+-
-+-if ((is_android && current_cpu == "arm" && arm_use_neon) ||
-+- (is_android && current_cpu == "arm64") ||
-+- (is_android && current_cpu == "x64") ||
-+- (is_android && current_cpu == "x86")) {
-+- ffmpeg_c_sources += [ "compat/strtod.c" ]
-+-}
-+diff --git a/libavformat/autorename_libavformat_aacdec.c b/libavformat/autorename_libavformat_aacdec.c
-+index 79cdef5ea6..697232b08e 100644
-+--- a/libavformat/autorename_libavformat_aacdec.c
-++++ b/libavformat/autorename_libavformat_aacdec.c
-+@@ -1,2 +1,2 @@
-+-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
-++// Automatically generated on Sun Aug 18 23:57:15 2024. See crbug.com/495833.
-+ #include "aacdec.c"
-+diff --git a/libavformat/autorename_libavformat_flacdec.c b/libavformat/autorename_libavformat_flacdec.c
-+index 50d53b1b28..3438c2ece7 100644
-+--- a/libavformat/autorename_libavformat_flacdec.c
-++++ b/libavformat/autorename_libavformat_flacdec.c
-+@@ -1,2 +1,2 @@
-+-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
-++// Automatically generated on Sun Aug 18 23:57:15 2024. See crbug.com/495833.
-+ #include "flacdec.c"
-+diff --git a/libavformat/autorename_libavformat_options.c b/libavformat/autorename_libavformat_options.c
-+index b9b279f611..9afc6293ca 100644
-+--- a/libavformat/autorename_libavformat_options.c
-++++ b/libavformat/autorename_libavformat_options.c
-+@@ -1,2 +1,2 @@
-+-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
-++// Automatically generated on Sun Aug 18 23:57:15 2024. See crbug.com/495833.
-+ #include "options.c"
-+diff --git a/libavformat/autorename_libavformat_pcm.c b/libavformat/autorename_libavformat_pcm.c
-+index 94cc7fcf24..9d981e0447 100644
-+--- a/libavformat/autorename_libavformat_pcm.c
-++++ b/libavformat/autorename_libavformat_pcm.c
-+@@ -1,2 +1,2 @@
-+-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
-++// Automatically generated on Sun Aug 18 23:57:15 2024. See crbug.com/495833.
-+ #include "pcm.c"
-+diff --git a/libavformat/autorename_libavformat_utils.c b/libavformat/autorename_libavformat_utils.c
-+index 6a9a535662..ae2799ec69 100644
-+--- a/libavformat/autorename_libavformat_utils.c
-++++ b/libavformat/autorename_libavformat_utils.c
-+@@ -1,2 +1,2 @@
-+-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
-++// Automatically generated on Sun Aug 18 23:57:15 2024. See crbug.com/495833.
-+ #include "utils.c"
-+diff --git a/libavformat/autorename_libavformat_version.c b/libavformat/autorename_libavformat_version.c
-+index 00e3fc63d9..b208fa0692 100644
-+--- a/libavformat/autorename_libavformat_version.c
-++++ b/libavformat/autorename_libavformat_version.c
-+@@ -1,2 +1,2 @@
-+-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
-++// Automatically generated on Sun Aug 18 23:57:15 2024. See crbug.com/495833.
-+ #include "version.c"
-+diff --git a/libavutil/autorename_libavutil_utils.c b/libavutil/autorename_libavutil_utils.c
-+index 6a9a535662..ae2799ec69 100644
-+--- a/libavutil/autorename_libavutil_utils.c
-++++ b/libavutil/autorename_libavutil_utils.c
-+@@ -1,2 +1,2 @@
-+-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
-++// Automatically generated on Sun Aug 18 23:57:15 2024. See crbug.com/495833.
-+ #include "utils.c"
-+diff --git a/libavutil/autorename_libavutil_version.c b/libavutil/autorename_libavutil_version.c
-+index 00e3fc63d9..b208fa0692 100644
-+--- a/libavutil/autorename_libavutil_version.c
-++++ b/libavutil/autorename_libavutil_version.c
-+@@ -1,2 +1,2 @@
-+-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
-++// Automatically generated on Sun Aug 18 23:57:15 2024. See crbug.com/495833.
-+ #include "version.c"
++// 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"
diff --git a/www-client/chromium/files/riscv-misc.patch b/www-client/chromium/files/riscv-misc.patch
new file mode 100644
index 0000000..81714c8
--- /dev/null
+++ b/www-client/chromium/files/riscv-misc.patch
@@ -0,0 +1,41 @@
+Index: chromium-130.0.6723.116/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
+@@ -69,6 +69,8 @@ std::string CpuArchitectureToString(
+ return "arm32";
+ case variations::Study::TRANSLATED_X86_64:
+ return "translated_x86_64";
++ case variations::Study::RISCV64:
++ return "riscv64";
+ }
+ NOTREACHED_IN_MIGRATION();
+ }
+Index: chromium-130.0.6723.116/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
+@@ -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.
+ TRANSLATED_X86_64 = 4;
++
++ RISCV64 = 5;
+ }
+
+ // Enum to pass as optional bool.
+Index: chromium-130.0.6723.116/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
+ }
+ return Study::X86_64;
+ }
++ if (process_arch == "RISCV_64") {
++ return Study::RISCV64;
++ }
+ NOTREACHED_IN_MIGRATION();
+ return Study::X86_64;
+ }
+
diff --git a/www-client/chromium/files/riscv-sandbox.patch b/www-client/chromium/files/riscv-sandbox.patch
index 0753bb1..dc2d902 100644
--- a/www-client/chromium/files/riscv-sandbox.patch
+++ b/www-client/chromium/files/riscv-sandbox.patch
@@ -1,15 +1,7 @@
-From 90499f55f949f95b01c84257d306cf209c04b431 Mon Sep 17 00:00:00 2001
-From: Andreas Schwab <schwab@suse.de>
-Date: Fri, 04 Mar 2022 15:27:35 +0100
-Subject: [PATCH] Add support for riscv64-linux
-
-Change-Id: Ibcdaaba1b0c92a1cd85361b9859370c686832c49
----
-
-diff --git a/sandbox/features.gni b/sandbox/features.gni
-index 8434144..8aa52983 100644
---- a/sandbox/features.gni
-+++ b/sandbox/features.gni
+Index: chromium-130.0.6723.58/sandbox/features.gni
+===================================================================
+--- chromium-130.0.6723.58.orig/sandbox/features.gni
++++ chromium-130.0.6723.58/sandbox/features.gni
@@ -9,7 +9,8 @@
use_seccomp_bpf = (is_linux || is_chromeos || is_android) &&
(current_cpu == "x86" || current_cpu == "x64" ||
@@ -20,29 +12,28 @@ index 8434144..8aa52983 100644
# 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
-diff --git a/sandbox/linux/bpf_dsl/linux_syscall_ranges.h b/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
-index 1d0590b..b722fbc9 100644
---- a/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
-+++ b/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
-@@ -56,6 +56,13 @@
+Index: chromium-130.0.6723.58/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
+@@ -56,6 +56,12 @@
#define MAX_PUBLIC_SYSCALL __NR_syscalls
#define MAX_SYSCALL MAX_PUBLIC_SYSCALL
+#elif defined(__riscv)
+
-+#include <asm/unistd.h>
+#define MIN_SYSCALL 0u
-+#define MAX_PUBLIC_SYSCALL __NR_syscalls
++#define MAX_PUBLIC_SYSCALL 1024u
+#define MAX_SYSCALL MAX_PUBLIC_SYSCALL
+
#else
#error "Unsupported architecture"
#endif
-diff --git a/sandbox/linux/bpf_dsl/seccomp_macros.h b/sandbox/linux/bpf_dsl/seccomp_macros.h
-index 87d5825..49fc9a6 100644
---- a/sandbox/linux/bpf_dsl/seccomp_macros.h
-+++ b/sandbox/linux/bpf_dsl/seccomp_macros.h
-@@ -343,6 +343,48 @@
+Index: chromium-130.0.6723.58/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
+@@ -343,6 +343,48 @@ struct regs_struct {
#define SECCOMP_PT_PARM4(_regs) (_regs).regs[3]
#define SECCOMP_PT_PARM5(_regs) (_regs).regs[4]
#define SECCOMP_PT_PARM6(_regs) (_regs).regs[5]
@@ -91,68 +82,11 @@ index 87d5825..49fc9a6 100644
#else
#error Unsupported target platform
-diff --git a/sandbox/linux/integration_tests/bpf_dsl_seccomp_unittest.cc b/sandbox/linux/integration_tests/bpf_dsl_seccomp_unittest.cc
-index 4a2721c..8ef9f51a 100644
---- a/sandbox/linux/integration_tests/bpf_dsl_seccomp_unittest.cc
-+++ b/sandbox/linux/integration_tests/bpf_dsl_seccomp_unittest.cc
-@@ -17,6 +17,7 @@
- #include <sys/types.h>
- #include <sys/utsname.h>
- #include <unistd.h>
-+#include <linux/elf.h>
-
- #include <memory>
- #include <vector>
-@@ -2029,7 +2030,15 @@
- BPF_ASSERT_EQ(kTraceData, data);
-
- regs_struct regs;
-+#if defined(__riscv)
-+ iovec iov;
-+ iov.iov_base = ®s;
-+ iov.iov_len = sizeof(regs);
-+ BPF_ASSERT_NE(-1, ptrace(PTRACE_GETREGSET, pid,
-+ reinterpret_case<void*>(NT_PRSTATUS), &iov));
-+#else
- BPF_ASSERT_NE(-1, ptrace(PTRACE_GETREGS, pid, NULL, ®s));
-+#endif
- switch (SECCOMP_PT_SYSCALL(regs)) {
- case __NR_write:
- // Skip writes to stdout, make it return kExpectedReturnValue. Allow
-@@ -2037,7 +2046,14 @@
- if (SECCOMP_PT_PARM1(regs) == STDOUT_FILENO) {
- BPF_ASSERT_NE(-1, SetSyscall(pid, ®s, -1));
- SECCOMP_PT_RESULT(regs) = kExpectedReturnValue;
-+#if defined(__riscv)
-+ iov.iov_len = sizeof(regs);
-+ BPF_ASSERT_NE(-1, ptrace(PTRACE_SETREGSET, pid,
-+ reinterpret_cast<void*>(NT_PRSTATUS),
-+ &iov));
-+#else
- BPF_ASSERT_NE(-1, ptrace(PTRACE_SETREGS, pid, NULL, ®s));
-+#endif
- }
- break;
-
-@@ -2045,7 +2061,13 @@
- // Rewrite to exit(kExpectedReturnValue).
- BPF_ASSERT_NE(-1, SetSyscall(pid, ®s, __NR_exit));
- SECCOMP_PT_PARM1(regs) = kExpectedReturnValue;
-+#if defined(__riscv)
-+ iov.iov_len = sizeof(regs);
-+ BPF_ASSERT_NE(-1, ptrace(PTRACE_SETREGSET, pid,
-+ reinterpret_cast<void*>(NT_PRSTATUS), &iov));
-+#else
- BPF_ASSERT_NE(-1, ptrace(PTRACE_SETREGS, pid, NULL, ®s));
-+#endif
- break;
-
- default:
-diff --git a/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc b/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
-index 7bde501..b92ab39 100644
---- a/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
-+++ b/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
-@@ -60,6 +60,9 @@
+Index: chromium-130.0.6723.58/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
+@@ -60,6 +60,9 @@ bool IsBaselinePolicyAllowed(int sysno)
#if defined(__mips__)
SyscallSets::IsMipsPrivate(sysno) ||
#endif
@@ -162,7 +96,7 @@ index 7bde501..b92ab39 100644
SyscallSets::IsAllowedOperationOnFd(sysno);
// clang-format on
}
-@@ -193,7 +196,7 @@
+@@ -193,7 +196,7 @@ ResultExpr EvaluateSyscallImpl(int fs_de
return RestrictFcntlCommands();
#endif
@@ -171,7 +105,7 @@ index 7bde501..b92ab39 100644
// fork() is never used as a system call (clone() is used instead), but we
// have seen it in fallback code on Android.
if (sysno == __NR_fork) {
-@@ -255,7 +258,7 @@
+@@ -255,7 +258,7 @@ ResultExpr EvaluateSyscallImpl(int fs_de
}
#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
@@ -180,7 +114,7 @@ index 7bde501..b92ab39 100644
if (sysno == __NR_mmap)
return RestrictMmapFlags();
#endif
-@@ -276,7 +279,7 @@
+@@ -276,7 +279,7 @@ ResultExpr EvaluateSyscallImpl(int fs_de
return RestrictPrctl();
#if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
@@ -189,7 +123,7 @@ index 7bde501..b92ab39 100644
if (sysno == __NR_socketpair) {
// Only allow AF_UNIX, PF_UNIX. Crash if anything else is seen.
static_assert(AF_UNIX == PF_UNIX,
-@@ -366,7 +369,7 @@
+@@ -366,7 +369,7 @@ ResultExpr EvaluateSyscallImpl(int fs_de
// Allow creating pipes, but don't allow weird flags to pipe2().
// O_NOTIFICATION_PIPE (== O_EXCL) can be used to create
// "notification pipes", which are rarely used.
@@ -198,41 +132,10 @@ index 7bde501..b92ab39 100644
if (sysno == __NR_pipe) {
return Allow();
}
-diff --git a/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc b/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc
-index a0a8796..8bea4c9 100644
---- a/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc
-+++ b/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc
-@@ -270,7 +270,7 @@
- }
-
- // Not all architectures can restrict the domain for socketpair().
--#if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__)
-+#if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || defined(__riscv)
- BPF_DEATH_TEST_C(BaselinePolicy,
- SocketpairWrongDomain,
- DEATH_SEGV_MESSAGE(GetErrorMessageContentForTests()),
-@@ -279,7 +279,7 @@
- std::ignore = socketpair(AF_INET, SOCK_STREAM, 0, sv);
- _exit(1);
- }
--#endif // defined(__x86_64__) || defined(__arm__) || defined(__aarch64__)
-+#endif // defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || defined(__riscv)
-
- BPF_TEST_C(BaselinePolicy, EPERM_open, BaselinePolicy) {
- errno = 0;
-@@ -343,7 +343,7 @@
- TEST_BASELINE_SIGSYS(__NR_syslog)
- TEST_BASELINE_SIGSYS(__NR_timer_create)
-
--#if !defined(__aarch64__)
-+#if !defined(__aarch64__) && !defined(__riscv)
- TEST_BASELINE_SIGSYS(__NR_inotify_init)
- TEST_BASELINE_SIGSYS(__NR_vserver)
- #endif
-diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
-index 74112e8..b451c19 100644
---- a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
-+++ b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
+Index: chromium-130.0.6723.58/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
@@ -37,6 +37,7 @@
#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) && \
@@ -241,7 +144,7 @@ index 74112e8..b451c19 100644
!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 @@
+@@ -463,8 +464,10 @@ ResultExpr RestrictPtrace() {
#endif
return Switch(request)
.Cases({
@@ -253,23 +156,11 @@ index 74112e8..b451c19 100644
PTRACE_GETREGSET,
#endif
#if defined(__arm__)
-diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc
-index 10e64a2c..ddfd6a7 100644
---- a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc
-+++ b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc
-@@ -7,6 +7,7 @@
- #include <errno.h>
- #include <fcntl.h>
- #include <linux/elf.h>
-+#include <asm/ptrace.h>
- #include <sched.h>
- #include <sys/prctl.h>
- #include <sys/ptrace.h>
-diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
-index 4cde283..bc680424 100644
---- a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
-+++ b/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
-@@ -103,7 +103,7 @@
+Index: chromium-130.0.6723.58/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
+@@ -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) {
switch (sysno) {
@@ -278,7 +169,7 @@ index 4cde283..bc680424 100644
case __NR_access: // EPERM not a valid errno.
case __NR_chmod:
case __NR_chown:
-@@ -136,7 +136,7 @@
+@@ -136,7 +136,7 @@ bool SyscallSets::IsFileSystem(int sysno
case __NR_faccessat2:
case __NR_fchmodat:
case __NR_fchownat: // Should be called chownat ?
@@ -287,7 +178,7 @@ index 4cde283..bc680424 100644
case __NR_newfstatat: // fstatat(). EPERM not a valid errno.
#elif defined(__i386__) || defined(__arm__) || \
(defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-@@ -241,7 +241,7 @@
+@@ -241,7 +241,7 @@ bool SyscallSets::IsAllowedFileSystemAcc
case __NR_oldfstat:
#endif
#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
@@ -296,7 +187,7 @@ index 4cde283..bc680424 100644
case __NR_sync_file_range: // EPERM not a valid errno.
#elif defined(__arm__)
case __NR_arm_sync_file_range: // EPERM not a valid errno.
-@@ -260,7 +260,7 @@
+@@ -260,7 +260,7 @@ bool SyscallSets::IsDeniedFileSystemAcce
#if defined(__i386__) || defined(__arm__)
case __NR_fchown32:
#endif
@@ -305,7 +196,7 @@ index 4cde283..bc680424 100644
case __NR_getdents: // EPERM not a valid errno.
#endif
case __NR_getdents64: // EPERM not a valid errno.
-@@ -339,7 +339,7 @@
+@@ -339,7 +339,7 @@ bool SyscallSets::IsProcessPrivilegeChan
bool SyscallSets::IsProcessGroupOrSession(int sysno) {
switch (sysno) {
case __NR_setpgid:
@@ -314,7 +205,7 @@ index 4cde283..bc680424 100644
case __NR_getpgrp:
#endif
case __NR_setsid:
-@@ -373,7 +373,7 @@
+@@ -373,7 +373,7 @@ bool SyscallSets::IsAllowedSignalHandlin
case __NR_rt_sigqueueinfo:
case __NR_rt_sigsuspend:
case __NR_rt_tgsigqueueinfo:
@@ -323,7 +214,7 @@ index 4cde283..bc680424 100644
case __NR_signalfd:
#endif
case __NR_signalfd4:
-@@ -397,12 +397,12 @@
+@@ -397,12 +397,12 @@ bool SyscallSets::IsAllowedOperationOnFd
switch (sysno) {
case __NR_close:
case __NR_dup:
@@ -338,7 +229,7 @@ index 4cde283..bc680424 100644
case __NR_shutdown:
#endif
return true;
-@@ -441,7 +441,7 @@
+@@ -441,7 +441,7 @@ bool SyscallSets::IsAllowedProcessStartO
return true;
case __NR_clone: // Should be parameter-restricted.
case __NR_setns: // Privileged.
@@ -347,7 +238,7 @@ index 4cde283..bc680424 100644
case __NR_fork:
#endif
#if defined(__i386__) || defined(__x86_64__)
-@@ -452,7 +452,7 @@
+@@ -452,7 +452,7 @@ bool SyscallSets::IsAllowedProcessStartO
#endif
case __NR_set_tid_address:
case __NR_unshare:
@@ -356,7 +247,7 @@ index 4cde283..bc680424 100644
case __NR_vfork:
#endif
default:
-@@ -477,7 +477,7 @@
+@@ -477,7 +477,7 @@ bool SyscallSets::IsAllowedFutex(int sys
bool SyscallSets::IsAllowedEpoll(int sysno) {
switch (sysno) {
@@ -365,7 +256,7 @@ index 4cde283..bc680424 100644
case __NR_epoll_create:
case __NR_epoll_wait:
#endif
-@@ -499,7 +499,7 @@
+@@ -499,7 +499,7 @@ bool SyscallSets::IsAllowedEpoll(int sys
bool SyscallSets::IsDeniedGetOrModifySocket(int sysno) {
switch (sysno) {
#if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
@@ -374,7 +265,7 @@ index 4cde283..bc680424 100644
case __NR_accept:
case __NR_accept4:
case __NR_bind:
-@@ -553,7 +553,7 @@
+@@ -554,7 +554,7 @@ bool SyscallSets::IsAllowedAddressSpaceA
case __NR_mincore:
case __NR_mlockall:
#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
@@ -383,7 +274,7 @@ index 4cde283..bc680424 100644
case __NR_mmap:
#endif
#if defined(__i386__) || defined(__arm__) || \
-@@ -586,7 +586,7 @@
+@@ -587,7 +587,7 @@ bool SyscallSets::IsAllowedGeneralIo(int
(defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
case __NR__llseek:
#endif
@@ -392,7 +283,7 @@ index 4cde283..bc680424 100644
case __NR_poll:
#endif
case __NR_ppoll:
-@@ -607,7 +607,7 @@
+@@ -608,7 +608,7 @@ bool SyscallSets::IsAllowedGeneralIo(int
case __NR_recv:
#endif
#if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
@@ -401,7 +292,7 @@ index 4cde283..bc680424 100644
case __NR_recvfrom: // Could specify source.
case __NR_recvmsg: // Could specify source.
#endif
-@@ -622,7 +622,7 @@
+@@ -623,7 +623,7 @@ bool SyscallSets::IsAllowedGeneralIo(int
case __NR_send:
#endif
#if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
@@ -410,7 +301,7 @@ index 4cde283..bc680424 100644
case __NR_sendmsg: // Could specify destination.
case __NR_sendto: // Could specify destination.
#endif
-@@ -671,7 +671,7 @@
+@@ -672,7 +672,7 @@ bool SyscallSets::IsSeccomp(int sysno) {
bool SyscallSets::IsAllowedBasicScheduler(int sysno) {
switch (sysno) {
case __NR_sched_yield:
@@ -419,7 +310,7 @@ index 4cde283..bc680424 100644
case __NR_pause:
#endif
case __NR_nanosleep:
-@@ -755,7 +755,7 @@
+@@ -756,7 +756,7 @@ bool SyscallSets::IsNuma(int sysno) {
case __NR_getcpu:
case __NR_mbind:
#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
@@ -428,7 +319,7 @@ index 4cde283..bc680424 100644
case __NR_migrate_pages:
#endif
case __NR_move_pages:
-@@ -790,7 +790,7 @@
+@@ -791,7 +791,7 @@ bool SyscallSets::IsGlobalProcessEnviron
switch (sysno) {
case __NR_acct: // Privileged.
#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
@@ -437,7 +328,7 @@ index 4cde283..bc680424 100644
case __NR_getrlimit:
#endif
#if defined(__i386__) || defined(__arm__)
-@@ -825,7 +825,7 @@
+@@ -826,7 +826,7 @@ bool SyscallSets::IsDebug(int sysno) {
bool SyscallSets::IsGlobalSystemStatus(int sysno) {
switch (sysno) {
@@ -446,7 +337,7 @@ index 4cde283..bc680424 100644
case __NR__sysctl:
case __NR_sysfs:
#endif
-@@ -843,7 +843,7 @@
+@@ -844,7 +844,7 @@ bool SyscallSets::IsGlobalSystemStatus(i
bool SyscallSets::IsEventFd(int sysno) {
switch (sysno) {
@@ -455,7 +346,7 @@ index 4cde283..bc680424 100644
case __NR_eventfd:
#endif
case __NR_eventfd2:
-@@ -895,6 +895,7 @@
+@@ -896,6 +896,7 @@ bool SyscallSets::IsKeyManagement(int sy
}
#if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || \
@@ -463,7 +354,7 @@ index 4cde283..bc680424 100644
(defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS))
bool SyscallSets::IsSystemVSemaphores(int sysno) {
switch (sysno) {
-@@ -914,7 +915,7 @@
+@@ -915,7 +916,7 @@ bool SyscallSets::IsSystemVSemaphores(in
#endif
#if defined(__i386__) || defined(__x86_64__) || defined(__arm__) || \
@@ -472,7 +363,7 @@ index 4cde283..bc680424 100644
(defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS))
// These give a lot of ambient authority and bypass the setuid sandbox.
bool SyscallSets::IsSystemVSharedMemory(int sysno) {
-@@ -931,6 +932,7 @@
+@@ -932,6 +933,7 @@ bool SyscallSets::IsSystemVSharedMemory(
#endif
#if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || \
@@ -480,7 +371,7 @@ index 4cde283..bc680424 100644
(defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS))
bool SyscallSets::IsSystemVMessageQueue(int sysno) {
switch (sysno) {
-@@ -962,6 +964,7 @@
+@@ -963,6 +965,7 @@ bool SyscallSets::IsSystemVIpc(int sysno
bool SyscallSets::IsAnySystemV(int sysno) {
#if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || \
@@ -488,7 +379,7 @@ index 4cde283..bc680424 100644
(defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS))
return IsSystemVMessageQueue(sysno) || IsSystemVSemaphores(sysno) ||
IsSystemVSharedMemory(sysno);
-@@ -999,7 +1002,7 @@
+@@ -1000,7 +1003,7 @@ bool SyscallSets::IsAdvancedScheduler(in
bool SyscallSets::IsInotify(int sysno) {
switch (sysno) {
case __NR_inotify_add_watch:
@@ -497,7 +388,7 @@ index 4cde283..bc680424 100644
case __NR_inotify_init:
#endif
case __NR_inotify_init1:
-@@ -1134,7 +1137,7 @@
+@@ -1135,7 +1138,7 @@ bool SyscallSets::IsMisc(int sysno) {
#if defined(__x86_64__)
case __NR_tuxcall:
#endif
@@ -506,7 +397,7 @@ index 4cde283..bc680424 100644
case __NR_vserver:
#endif
return true;
-@@ -1193,6 +1196,18 @@
+@@ -1194,6 +1197,18 @@ bool SyscallSets::IsMipsMisc(int sysno)
}
#endif // defined(__mips__)
@@ -525,11 +416,11 @@ index 4cde283..bc680424 100644
bool SyscallSets::IsGoogle3Threading(int sysno) {
switch (sysno) {
case __NR_getitimer:
-diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h b/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
-index 9be7b03..41b3605 100644
---- a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
-+++ b/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
-@@ -52,7 +52,7 @@
+Index: chromium-130.0.6723.58/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
+@@ -52,7 +52,7 @@ class SANDBOX_EXPORT SyscallSets {
#endif
#if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
@@ -538,7 +429,7 @@ index 9be7b03..41b3605 100644
static bool IsNetworkSocketInformation(int sysno);
#endif
-@@ -79,18 +79,21 @@
+@@ -79,18 +79,21 @@ class SANDBOX_EXPORT SyscallSets {
static bool IsAsyncIo(int sysno);
static bool IsKeyManagement(int sysno);
#if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || \
@@ -563,7 +454,7 @@ index 9be7b03..41b3605 100644
static bool IsSystemVMessageQueue(int sysno);
#endif
-@@ -117,6 +120,9 @@
+@@ -117,6 +120,9 @@ class SANDBOX_EXPORT SyscallSets {
static bool IsMipsPrivate(int sysno);
static bool IsMipsMisc(int sysno);
#endif // defined(__mips__)
@@ -573,11 +464,11 @@ index 9be7b03..41b3605 100644
static bool IsGoogle3Threading(int sysno);
};
-diff --git a/sandbox/linux/seccomp-bpf/syscall.cc b/sandbox/linux/seccomp-bpf/syscall.cc
-index 02cbb04..9eb97f27 100644
---- a/sandbox/linux/seccomp-bpf/syscall.cc
-+++ b/sandbox/linux/seccomp-bpf/syscall.cc
-@@ -18,7 +18,7 @@
+Index: chromium-130.0.6723.58/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
+@@ -23,7 +23,7 @@ namespace sandbox {
namespace {
#if defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARM_FAMILY) || \
@@ -586,7 +477,7 @@ index 02cbb04..9eb97f27 100644
// Number that's not currently used by any Linux kernel ABIs.
const int kInvalidSyscallNumber = 0x351d3;
#else
-@@ -308,6 +308,28 @@
+@@ -313,6 +313,28 @@ asm(// We need to be able to tell the ke
"2:ret\n"
".cfi_endproc\n"
".size SyscallAsm, .-SyscallAsm\n"
@@ -615,7 +506,7 @@ index 02cbb04..9eb97f27 100644
#endif
); // asm
-@@ -319,6 +341,10 @@
+@@ -324,6 +346,10 @@ intptr_t SyscallAsm(intptr_t nr, const i
extern "C" {
intptr_t SyscallAsm(intptr_t nr, const intptr_t args[8]);
}
@@ -626,7 +517,7 @@ index 02cbb04..9eb97f27 100644
#endif
} // namespace
-@@ -351,6 +377,10 @@
+@@ -356,6 +382,10 @@ intptr_t Syscall::Call(int nr,
// where that makes sense.
#if defined(__mips__)
const intptr_t args[8] = {p0, p1, p2, p3, p4, p5, p6, p7};
@@ -637,7 +528,7 @@ index 02cbb04..9eb97f27 100644
#else
DCHECK_EQ(p6, 0) << " Support for syscalls with more than six arguments not "
"added for this architecture";
-@@ -425,6 +455,8 @@
+@@ -430,6 +460,8 @@ intptr_t Syscall::Call(int nr,
ret = inout;
}
@@ -646,47 +537,24 @@ index 02cbb04..9eb97f27 100644
#else
#error "Unimplemented architecture"
#endif
-diff --git a/sandbox/linux/seccomp-bpf/trap.cc b/sandbox/linux/seccomp-bpf/trap.cc
-index d466e62..a5ed98b7 100644
---- a/sandbox/linux/seccomp-bpf/trap.cc
-+++ b/sandbox/linux/seccomp-bpf/trap.cc
-@@ -216,6 +216,18 @@
- SECCOMP_PARM6(ctx),
- SECCOMP_PARM7(ctx),
- SECCOMP_PARM8(ctx));
-+#elif defined(__riscv)
-+ // RISC-V supports up to seven arguments for syscall.
-+ // However, seccomp bpf can filter only up to six arguments, so using seven
-+ // arguments has sense only when using UnsafeTrap() handler.
-+ rc = Syscall::Call(SECCOMP_SYSCALL(ctx),
-+ SECCOMP_PARM1(ctx),
-+ SECCOMP_PARM2(ctx),
-+ SECCOMP_PARM3(ctx),
-+ SECCOMP_PARM4(ctx),
-+ SECCOMP_PARM5(ctx),
-+ SECCOMP_PARM6(ctx),
-+ SECCOMP_PARM7(ctx));
- #else
- rc = Syscall::Call(SECCOMP_SYSCALL(ctx),
- SECCOMP_PARM1(ctx),
-diff --git a/sandbox/linux/services/credentials.cc b/sandbox/linux/services/credentials.cc
-index a33597c..d4180ac 100644
---- a/sandbox/linux/services/credentials.cc
-+++ b/sandbox/linux/services/credentials.cc
-@@ -80,7 +80,7 @@
- pid_t pid = -1;
- alignas(16) char stack_buf[PTHREAD_STACK_MIN];
+Index: chromium-130.0.6723.58/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
+@@ -87,7 +87,7 @@ bool ChrootToSafeEmptyDir() {
+ alignas(16) char stack_buf[PTHREAD_STACK_MIN_CONST];
+
#if defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARM_FAMILY) || \
- defined(ARCH_CPU_MIPS_FAMILY)
+ defined(ARCH_CPU_MIPS_FAMILY) || defined(ARCH_CPU_RISCV_FAMILY)
// The stack grows downward.
void* stack = stack_buf + sizeof(stack_buf);
#else
-diff --git a/sandbox/linux/services/syscall_wrappers.cc b/sandbox/linux/services/syscall_wrappers.cc
-index 7650e98..bb4bd332 100644
---- a/sandbox/linux/services/syscall_wrappers.cc
-+++ b/sandbox/linux/services/syscall_wrappers.cc
-@@ -61,7 +61,7 @@
+Index: chromium-130.0.6723.58/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
+@@ -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);
#elif defined(ARCH_CPU_X86) || defined(ARCH_CPU_ARM_FAMILY) || \
@@ -695,11 +563,11 @@ index 7650e98..bb4bd332 100644
// CONFIG_CLONE_BACKWARDS defined.
return syscall(__NR_clone, flags, child_stack, ptid, tls, ctid);
#endif
-diff --git a/sandbox/linux/syscall_broker/broker_process.cc b/sandbox/linux/syscall_broker/broker_process.cc
-index c6c1117..779065a 100644
---- a/sandbox/linux/syscall_broker/broker_process.cc
-+++ b/sandbox/linux/syscall_broker/broker_process.cc
-@@ -122,44 +122,46 @@
+Index: chromium-130.0.6723.58/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(
// and are default disabled in Android. So, we should refuse to broker them
// to be consistent with the platform's restrictions.
switch (sysno) {
@@ -753,7 +621,7 @@ index c6c1117..779065a 100644
case __NR_stat:
case __NR_lstat:
#endif
-@@ -169,7 +171,7 @@
+@@ -169,7 +171,7 @@ bool BrokerProcess::IsSyscallBrokerable(
#if defined(__NR_fstatat64)
case __NR_fstatat64:
#endif
@@ -762,7 +630,7 @@ index c6c1117..779065a 100644
case __NR_newfstatat:
#endif
return !fast_check || policy_->allowed_command_set.test(COMMAND_STAT);
-@@ -184,7 +186,7 @@
+@@ -184,7 +186,7 @@ bool BrokerProcess::IsSyscallBrokerable(
return !fast_check || policy_->allowed_command_set.test(COMMAND_STAT);
#endif
@@ -771,10 +639,10 @@ index c6c1117..779065a 100644
case __NR_unlink:
return !fast_check || policy_->allowed_command_set.test(COMMAND_UNLINK);
#endif
-diff --git a/sandbox/linux/system_headers/linux_seccomp.h b/sandbox/linux/system_headers/linux_seccomp.h
-index 8690a96..dec2afc7 100644
---- a/sandbox/linux/system_headers/linux_seccomp.h
-+++ b/sandbox/linux/system_headers/linux_seccomp.h
+Index: chromium-130.0.6723.58/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
@@ -39,6 +39,10 @@
#define EM_AARCH64 183
#endif
@@ -797,10 +665,10 @@ index 8690a96..dec2afc7 100644
// For prctl.h
#ifndef PR_SET_SECCOMP
#define PR_SET_SECCOMP 22
-diff --git a/sandbox/linux/system_headers/linux_signal.h b/sandbox/linux/system_headers/linux_signal.h
-index 69ccaf1..2ffe3097 100644
---- a/sandbox/linux/system_headers/linux_signal.h
-+++ b/sandbox/linux/system_headers/linux_signal.h
+Index: chromium-130.0.6723.58/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
@@ -13,7 +13,7 @@
// (not undefined, but defined different values and in different memory
// layouts). So, fill the gap here.
@@ -810,11 +678,11 @@ index 69ccaf1..2ffe3097 100644
#define LINUX_SIGHUP 1
#define LINUX_SIGINT 2
-diff --git a/sandbox/linux/system_headers/linux_stat.h b/sandbox/linux/system_headers/linux_stat.h
-index 3aae8cb..74977adb 100644
---- a/sandbox/linux/system_headers/linux_stat.h
-+++ b/sandbox/linux/system_headers/linux_stat.h
-@@ -150,7 +150,7 @@
+Index: chromium-130.0.6723.58/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
+@@ -150,7 +150,7 @@ struct kernel_stat {
int st_blocks;
int st_pad4[14];
};
@@ -823,10 +691,10 @@ index 3aae8cb..74977adb 100644
struct kernel_stat {
unsigned long st_dev;
unsigned long st_ino;
-diff --git a/sandbox/linux/system_headers/linux_syscalls.h b/sandbox/linux/system_headers/linux_syscalls.h
-index 438147b..d6de8c1 100644
---- a/sandbox/linux/system_headers/linux_syscalls.h
-+++ b/sandbox/linux/system_headers/linux_syscalls.h
+Index: chromium-130.0.6723.58/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
@@ -35,5 +35,9 @@
#include "sandbox/linux/system_headers/arm64_linux_syscalls.h"
#endif
@@ -837,11 +705,10 @@ index 438147b..d6de8c1 100644
+
#endif // SANDBOX_LINUX_SYSTEM_HEADERS_LINUX_SYSCALLS_H_
-diff --git a/sandbox/linux/system_headers/riscv64_linux_syscalls.h b/sandbox/linux/system_headers/riscv64_linux_syscalls.h
-new file mode 100644
-index 0000000..50e043d0
+Index: chromium-130.0.6723.58/sandbox/linux/system_headers/riscv64_linux_syscalls.h
+===================================================================
--- /dev/null
-+++ b/sandbox/linux/system_headers/riscv64_linux_syscalls.h
++++ chromium-130.0.6723.58/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
@@ -2069,11 +1936,11 @@ index 0000000..50e043d0
+#endif
+
+#endif // SANDBOX_LINUX_SYSTEM_HEADERS_RISCV64_LINUX_SYSCALLS_H_
-diff --git a/sandbox/policy/linux/bpf_cdm_policy_linux.cc b/sandbox/policy/linux/bpf_cdm_policy_linux.cc
-index 433720f..482ce1d 100644
---- a/sandbox/policy/linux/bpf_cdm_policy_linux.cc
-+++ b/sandbox/policy/linux/bpf_cdm_policy_linux.cc
-@@ -33,7 +33,7 @@
+Index: chromium-130.0.6723.58/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
+@@ -33,7 +33,7 @@ ResultExpr CdmProcessPolicy::EvaluateSys
case __NR_ftruncate:
case __NR_fallocate:
#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
@@ -2082,11 +1949,11 @@ index 433720f..482ce1d 100644
case __NR_getrlimit:
#endif
#if defined(__i386__) || defined(__arm__)
-diff --git a/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc b/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
-index df2567f..41e158a 100644
---- a/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
-+++ b/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
-@@ -38,7 +38,7 @@
+Index: chromium-130.0.6723.58/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
+@@ -38,7 +38,7 @@ ResultExpr CrosAmdGpuProcessPolicy::Eval
case __NR_sched_setscheduler:
case __NR_sysinfo:
case __NR_uname:
@@ -2095,11 +1962,11 @@ index df2567f..41e158a 100644
case __NR_readlink:
case __NR_stat:
#endif
-diff --git a/sandbox/policy/linux/bpf_gpu_policy_linux.cc b/sandbox/policy/linux/bpf_gpu_policy_linux.cc
-index 35ccbb7..65a0587 100644
---- a/sandbox/policy/linux/bpf_gpu_policy_linux.cc
-+++ b/sandbox/policy/linux/bpf_gpu_policy_linux.cc
-@@ -73,7 +73,7 @@
+Index: chromium-130.0.6723.58/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
+@@ -73,7 +73,7 @@ ResultExpr GpuProcessPolicy::EvaluateSys
(defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
case __NR_ftruncate64:
#endif
@@ -2108,11 +1975,11 @@ index 35ccbb7..65a0587 100644
case __NR_getdents:
#endif
case __NR_getdents64:
-diff --git a/sandbox/policy/linux/bpf_network_policy_linux.cc b/sandbox/policy/linux/bpf_network_policy_linux.cc
-index e5168ff0..3e6f821 100644
---- a/sandbox/policy/linux/bpf_network_policy_linux.cc
-+++ b/sandbox/policy/linux/bpf_network_policy_linux.cc
-@@ -260,7 +260,7 @@
+Index: chromium-130.0.6723.58/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
+@@ -260,7 +260,7 @@ ResultExpr NetworkProcessPolicy::Evaluat
case __NR_fdatasync:
case __NR_fsync:
case __NR_mremap:
@@ -2121,11 +1988,11 @@ index e5168ff0..3e6f821 100644
case __NR_getdents:
#endif
case __NR_getdents64:
-diff --git a/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc b/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
-index bff338a..36acee52 100644
---- a/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
-+++ b/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
-@@ -33,7 +33,7 @@
+Index: chromium-130.0.6723.58/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
+@@ -33,7 +33,7 @@ ResultExpr PrintCompositorProcessPolicy:
case __NR_fdatasync:
case __NR_fsync:
#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
@@ -2134,11 +2001,11 @@ index bff338a..36acee52 100644
case __NR_getrlimit:
#endif
#if defined(__i386__) || defined(__arm__)
-diff --git a/sandbox/policy/linux/bpf_renderer_policy_linux.cc b/sandbox/policy/linux/bpf_renderer_policy_linux.cc
-index 0555a85..8f8907f 100644
---- a/sandbox/policy/linux/bpf_renderer_policy_linux.cc
-+++ b/sandbox/policy/linux/bpf_renderer_policy_linux.cc
-@@ -82,7 +82,7 @@
+Index: chromium-130.0.6723.58/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
case __NR_ftruncate64:
#endif
#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
@@ -2147,11 +2014,11 @@ index 0555a85..8f8907f 100644
case __NR_getrlimit:
case __NR_setrlimit:
// We allow setrlimit to dynamically adjust the address space limit as
-diff --git a/sandbox/policy/linux/bpf_service_policy_linux.cc b/sandbox/policy/linux/bpf_service_policy_linux.cc
-index 32754e6..3f42eabb 100644
---- a/sandbox/policy/linux/bpf_service_policy_linux.cc
-+++ b/sandbox/policy/linux/bpf_service_policy_linux.cc
-@@ -26,7 +26,7 @@
+Index: chromium-130.0.6723.58/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
+@@ -26,7 +26,7 @@ ResultExpr ServiceProcessPolicy::Evaluat
return RestrictIoctl();
// Allow the system calls below.
#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
@@ -2160,11 +2027,11 @@ index 32754e6..3f42eabb 100644
case __NR_getrlimit:
#endif
#if defined(__i386__) || defined(__arm__)
-diff --git a/sandbox/policy/linux/bpf_utility_policy_linux.cc b/sandbox/policy/linux/bpf_utility_policy_linux.cc
-index e299ce99..ed110689 100644
---- a/sandbox/policy/linux/bpf_utility_policy_linux.cc
-+++ b/sandbox/policy/linux/bpf_utility_policy_linux.cc
-@@ -34,7 +34,7 @@
+Index: chromium-130.0.6723.58/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
+@@ -34,7 +34,7 @@ ResultExpr UtilityProcessPolicy::Evaluat
case __NR_fdatasync:
case __NR_fsync:
#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
diff --git a/www-client/chromium/files/riscv.patch b/www-client/chromium/files/riscv.patch
index f72a56c..3bd59e3 100644
--- a/www-client/chromium/files/riscv.patch
+++ b/www-client/chromium/files/riscv.patch
@@ -1,7 +1,16 @@
-diff -Naur a/build/config/clang/BUILD.gn b/build/config/clang/BUILD.gn
---- a/build/config/clang/BUILD.gn 2024-02-14 22:02:58.133536045 +0000
-+++ b/build/config/clang/BUILD.gn 2024-02-14 22:04:35.885744794 +0000
-@@ -136,6 +136,8 @@
+--- a/build/config/clang/BUILD.gn 2024-09-17 09:40:39.225707556 +0200
++++ b/build/config/clang/BUILD.gn 2024-09-17 09:42:35.703531635 +0200
+@@ -186,6 +186,9 @@
+ } else if (current_cpu == "arm64") {
+ _dir = "aarch64-unknown-linux-gnu"
+ _suffix = "-aarch64"
++ } else if (current_cpu == "riscv64") {
++ _dir = "riscv64-unknown-linux-gnu"
++ _suffix = "-riscv64"
+ } else {
+ assert(false) # Unhandled cpu type
+ }
+@@ -201,6 +201,8 @@
_dir = "armv7-unknown-linux-gnueabihf"
} else if (current_cpu == "arm64") {
_dir = "aarch64-unknown-linux-gnu"
@@ -10,3 +19,5 @@ diff -Naur a/build/config/clang/BUILD.gn b/build/config/clang/BUILD.gn
} else {
assert(false) # Unhandled cpu type
}
+
+
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] proj/riscv:master commit in: www-client/chromium/files/, www-client/chromium/
@ 2025-01-28 11:21 Yixun Lan
0 siblings, 0 replies; 10+ messages in thread
From: Yixun Lan @ 2025-01-28 11:21 UTC (permalink / raw
To: gentoo-commits
commit: 576909e8eba83d657e51a9aa8c4a5d764ec907c5
Author: Andrew Cameron <apcameron <AT> gmail <DOT> com>
AuthorDate: Mon Jan 27 10:22:36 2025 +0000
Commit: Yixun Lan <dlan <AT> gentoo <DOT> org>
CommitDate: Tue Jan 28 11:20:24 2025 +0000
URL: https://gitweb.gentoo.org/proj/riscv.git/commit/?id=576909e8
Update Chromium to 132.0.6834.110
Closes: https://github.com/gentoo/riscv/pull/22
Signed-off-by: Andrew Cameron <apcameron <AT> gmail.com>
Signed-off-by: Yixun Lan <dlan <AT> gentoo.org>
www-client/chromium/Manifest | 11 +-
...00-r1.ebuild => chromium-132.0.6834.110.ebuild} | 564 ++++++-----
...relocate-1-for-ff_h264_weight_funcs_8_rvv.patch | 26 +
...-runtime_api_delegate-add-riscv64-define.patch} | 1 +
...-common-api-runtime.json-riscv64-support.patch} | 1 +
.../chromium/files/Debian-fix-rust-linking.patch | 1 -
.../chromium-126-oauth2-client-switches.patch | 45 -
.../files/chromium-127-browser-ui-deps.patch | 57 --
.../files/chromium-127-updater-systemd.patch | 73 --
.../chromium-131-oauth2-client-switches.patch | 39 +
.../files/chromium-131-unbundle-icu-target.patch | 21 +
...=> chromium-132-bindgen-custom-toolchain.patch} | 41 +-
.../chromium-134-oauth2-client-switches.patch | 35 +
.../files/{riscv.patch => compiler-rt-riscv.patch} | 0
www-client/chromium/files/cpuinfo.patch | 22 +-
www-client/chromium/files/esbuild | Bin 0 -> 9437336 bytes
www-client/chromium/files/libstdc++-fixup.patch | 219 +++++
www-client/chromium/files/riscv-cargo.patch | 32 -
www-client/chromium/files/riscv-ffmpeg.patch | 1025 ++++++++++----------
www-client/chromium/files/riscv-misc.patch | 48 +-
www-client/chromium/files/riscv-sandbox.patch | 152 +--
www-client/chromium/files/riscv-v8.patch | 28 -
www-client/chromium/metadata.xml | 6 +-
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
similarity index 70%
rename from www-client/chromium/chromium-129.0.6668.100-r1.ebuild
rename to 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
similarity index 99%
rename from www-client/chromium/files/chrome-runtime_api_delegate-add-riscv64-define.patch
rename to 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
similarity index 99%
rename from www-client/chromium/files/extensions-common-api-runtime.json-riscv64-support.patch
rename to 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
similarity index 76%
rename from www-client/chromium/files/chromium-127-bindgen-custom-toolchain.patch
rename to 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
similarity index 100%
rename from www-client/chromium/files/riscv.patch
rename to 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
Binary files /dev/null and b/www-client/chromium/files/esbuild 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-co
mpile --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 --ena
ble-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-co
mpile --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 --ena
ble-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>
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] proj/riscv:master commit in: www-client/chromium/files/, www-client/chromium/
@ 2025-02-13 8:53 Jakov Smolić
0 siblings, 0 replies; 10+ messages in thread
From: Jakov Smolić @ 2025-02-13 8:53 UTC (permalink / raw
To: gentoo-commits
commit: 3a61cec67ada6d76c190aead3a3120d427c0df59
Author: Andrew Cameron <apcameron <AT> gmail <DOT> com>
AuthorDate: Wed Feb 12 17:48:03 2025 +0000
Commit: Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
CommitDate: Thu Feb 13 08:52:54 2025 +0000
URL: https://gitweb.gentoo.org/proj/riscv.git/commit/?id=3a61cec6
Update Chromium to 133.0.6943.53
Signed-off-by: Andrew Cameron <apcameron <AT> gmail.com>
Closes: https://github.com/gentoo/riscv/pull/24
Signed-off-by: Jakov Smolić <jsmolic <AT> gentoo.org>
www-client/chromium/Manifest | 8 +-
...34.159.ebuild => chromium-133.0.6943.53.ebuild} | 39 +-
www-client/chromium/files/libstdc++-fixup.patch | 160 ++---
www-client/chromium/files/riscv-ffmpeg.patch | 666 ++++++++++++++++++---
www-client/chromium/files/riscv-misc.patch | 50 +-
5 files changed, 664 insertions(+), 259 deletions(-)
diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
index 0358160..9bf6d39 100644
--- a/www-client/chromium/Manifest
+++ b/www-client/chromium/Manifest
@@ -1,6 +1,6 @@
-DIST chromium-132.0.6834.159-linux-testdata.tar.xz 299714080 BLAKE2B e6b4691524548d4a316852d88e7f7893571c870375613686fd53503c79cdbf02a4aa2d4a64591ce5069704044031a3579cfab99e439cf2675c4bbbb6011a9f9c SHA512 b20c57e06195fc4a3e12d035d421801a64c3d7dee3ace760e3a8349fdfdbda4c52abcaf01cf0920d668683a7c89a949862b995dd96a98323de2b300ac6067718
-DIST chromium-132.0.6834.159-linux.tar.xz 2196432176 BLAKE2B ec797628558a62cd73b47979ecaac5ab50c3af01e6f0b2018a6783e2374f341e48681ff3975333a31d26af06d40e6af3051a123f29442eda1a9d63ef371aef30 SHA512 afe6e8df6a46401fe4d21e3d9e1f06f2bc1c680705b2d79206d933b0c7cad81a5045a46019d8e79bee3e16a57b83a5b9ff024dd570f9f7e29b1784088dd2f01b
-DIST chromium-openpower-c11b515d9a.tar.bz2 396039 BLAKE2B c05653e6bb62188c18864e783197853f4c41f88d1c928044a0ea0cb4677bc17806fac266ab100cbbcec3cb0d964bf2172917df95679927c1f1a88fa34aef4f53 SHA512 e9d9bbb2dd8d998060c78dfd5bbaedc548a8c44b442f6259304797326c585046144a6bb8aa4e24c44b3b56068189bee8a01267db2a392e90fd5603d06c0ef9ff
-DIST chromium-patches-132.tar.bz2 5040 BLAKE2B d5bd84dd90b395c6a15135637f51f931c72a2f301b1c24e9b938c744f2767fa36857b8edfdf5c44cf085a1efcb40475401fec226ce43446442f32fb174b55355 SHA512 29833b306a34ab6562ee58eb03669818da7235cd36666b27d829bcbd3c4d0035a530fb6be1c33cf88c1c11d43e68e3781f9b9602c0c004e7a37ffa69f9ee17c7
+DIST chromium-133.0.6943.53-linux-testdata.tar.xz 299288504 BLAKE2B 4ad9c3115b9e1b37ee49aef22d91af3df26b28f771b1aa217a1d7bdb3023608b3483bd98c0e77f9f2a22f7edd12fb6e63515225957555b93fabf0d0739439ec8 SHA512 517a1635baf033a00df5fff8aea22c1150b4ca97b6f9aebecfb0681c81f2708700a536a837c13bbd5ffa9938c7f32a0cc65ac648474df2613f15bedbffafaa11
+DIST chromium-133.0.6943.53-linux.tar.xz 2300503052 BLAKE2B 567e1e7f1722bc4ff118ac292ecfd59cf8d9380612ec8a36a65b8df84802d75042128f4b9b0366e4682e5d5c98981470df204fba8fc26a4d53d2d379d73421d1 SHA512 d7d0a7433190f15516950fbd4ccb5f13ab3f543388748d6c48f3d4b24a745c263b12ec56225259d93a697774ebc75b18cb4bc17cfd9e98e4c0f66df7a2eff4f8
+DIST chromium-openpower-a85b64f07b.tar.bz2 387899 BLAKE2B b01fda2d64ce73068d1536a10cc0896f07a4b714cdb25698b1df8b3252baa0c21c4209b307cf1cb554854f6d0bfe3cd35e06aaa8d02ac5d409a119335084c324 SHA512 05eee81677e8766808441c939bee68e2e6c58ec91f471d88a40181d2eda78614a0a6d27d92ff8f9dda564d12f3451bace4ff2727594748c5c238a3533038019b
+DIST chromium-patches-133-1.tar.bz2 10661 BLAKE2B c8a141bd10e628533e373b08969f95443eb6ae7f4497359db02f370147ac6132fbc31db28915ebdd9f150c13be78f06af938bd7dffdf2c23d90e1b9e07bd92ab SHA512 48a356872acc41c96c92366bd09de5a1c4af87fe4c480dccc7bd7a2aae5c3be8e6411151ed36303a127022001248bd25ef8305e83bd0d533660e3f11943af686
DIST chromium-profiler-0.2.tar 259952640 BLAKE2B 5e82389fce00b267280d633b26551231c558b80f0c92cd7d60271095a3503365ab673e7a46dc5f74f8a82db1f21262cb24dcc0531d954bab5fb3b175dab3394d SHA512 9fa89a5ab728419683e7495ae676567480987d68a2d589f2aa97bfcbcf123f3c8f97f8bca5f65e5e3f6e41475535add473ded83b9c7a33bb4746a9d05b298a6c
DIST chromium-testfonts-f26f29c9d3.tar.gz 32750602 BLAKE2B 498f8b2e0811c98dc3d4aaa75559e69c782afb4bd12328cfdb7244ddba5cae7ee47becd27b2549d7b36bed417601f70f4c192934b0f08496cef1547d0502d93c SHA512 96b090446862997c8134e2971f0e38793ecc1208d547e554c9b651ccfb4127c4de86754903fea57a7292a2823c45117bae0ec13ed87aed20c248fb779579fbde
diff --git a/www-client/chromium/chromium-132.0.6834.159.ebuild b/www-client/chromium/chromium-133.0.6943.53.ebuild
similarity index 98%
rename from www-client/chromium/chromium-132.0.6834.159.ebuild
rename to www-client/chromium/chromium-133.0.6943.53.ebuild
index 546079c..976f414 100644
--- a/www-client/chromium/chromium-132.0.6834.159.ebuild
+++ b/www-client/chromium/chromium-133.0.6943.53.ebuild
@@ -29,8 +29,8 @@ inherit python-any-r1 readme.gentoo-r1 rust systemd toolchain-funcs virtualx xdg
DESCRIPTION="Open-source version of Google Chrome web browser"
HOMEPAGE="https://www.chromium.org/"
-PPC64_HASH="c11b515d9addc3f8b516502e553ace507eb81815"
-PATCH_V="${PV%%\.*}"
+PPC64_HASH="a85b64f07b489b8c6fdb13ecf79c16c56c560fc6"
+PATCH_V="${PV%%\.*}-1"
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
test? (
@@ -47,12 +47,12 @@ SLOT="0/stable"
# 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"
+ KEYWORDS="~amd64 ~arm64 ~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+=" qt6 +screencast selinux test +vaapi +wayland +widevine cpu_flags_ppc_vsx3"
+IUSE+=" qt6 +screencast selinux test +vaapi +wayland +widevine"
RESTRICT="
!bindist? ( bindist )
!test? ( test )
@@ -381,20 +381,20 @@ src_prepare() {
"${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
+ if [[ ${patch} == *"ppc64le"* ]]; then
+ use ppc64 && PATCHES+=( "${patch}" )
+ else
+ PATCHES+=( "${patch}" )
+ fi
done
- shopt -u globstar nullglob
+ shopt -u globstar nullglob
# 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) {"
@@ -406,7 +406,7 @@ src_prepare() {
# 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)
+ # Apply the OpenPOWER patches (check for page size and isa 3.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
@@ -550,6 +550,7 @@ src_prepare() {
third_party/fp16
third_party/freetype
third_party/fusejs
+ third_party/fuzztest
third_party/fxdiv
third_party/gemmlowp
third_party/google_input_tools
@@ -574,7 +575,6 @@ src_prepare() {
third_party/ipcz
third_party/jinja2
third_party/jsoncpp
- third_party/jstemplate
third_party/khronos
third_party/lens_server_proto
third_party/leveldatabase
@@ -587,7 +587,6 @@ src_prepare() {
third_party/libavif
third_party/libc++
third_party/libdrm
- third_party/libevent
third_party/libgav1
third_party/libjingle
third_party/libphonenumber
@@ -651,7 +650,6 @@ src_prepare() {
third_party/puffin
third_party/pyjson5
third_party/pyyaml
- third_party/qcms
third_party/rapidhash
third_party/re2
third_party/rnnoise
@@ -663,6 +661,7 @@ src_prepare() {
third_party/sentencepiece
third_party/sentencepiece/src/third_party/darts_clone
third_party/shell-encryption
+ third_party/simdutf
third_party/simplejson
third_party/six
third_party/skia
@@ -694,6 +693,7 @@ src_prepare() {
third_party/unrar
third_party/utf
third_party/vulkan
+ third_party/wasm_tts_engine
third_party/wayland
third_party/webdriver
third_party/webgpu-cts
@@ -714,12 +714,12 @@ src_prepare() {
third_party/zlib/google
third_party/zxcvbn-cpp
url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/utf8-decoder
- v8/src/third_party/valgrind
v8/third_party/glibc
v8/third_party/inspector_protocol
+ v8/third_party/siphash
+ v8/third_party/utf8-decoder
v8/third_party/v8
+ v8/third_party/valgrind
# gyp -> gn leftovers
third_party/speech-dispatcher
@@ -728,7 +728,7 @@ src_prepare() {
)
if use test; then
- # tar tvf /var/cache/distfiles/${P}-testdata.tar.xz | grep '^d' | grep 'third_party' | awk '{print $NF}'
+ # tar tvf /var/cache/distfiles/${P}-linux-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
@@ -1316,6 +1316,7 @@ src_test() {
TestLauncherTools.TruncateSnippetFocusedMatchesFatalMessagesTest
ToolsSanityTest.BadVirtualCallNull
ToolsSanityTest.BadVirtualCallWrongType
+ CancelableEventTest.BothCancelFailureAndSucceedOccurUnderContention #new m133: TODO investigate
)
local test_filter="-$(IFS=:; printf '%s' "${skip_tests[*]}")"
# test-launcher-bot-mode enables parallelism and plain output
diff --git a/www-client/chromium/files/libstdc++-fixup.patch b/www-client/chromium/files/libstdc++-fixup.patch
index 9402ef3..c2f3c14 100644
--- a/www-client/chromium/files/libstdc++-fixup.patch
+++ b/www-client/chromium/files/libstdc++-fixup.patch
@@ -1,7 +1,7 @@
-Index: chromium-132.0.6834.83/chrome/browser/ui/lens/lens_overlay_request_id_generator.h
+ndex: chromium-133.0.6943.53/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
+--- chromium-133.0.6943.53.orig/chrome/browser/ui/lens/lens_overlay_request_id_generator.h
++++ chromium-133.0.6943.53/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_
@@ -11,34 +11,22 @@ Index: chromium-132.0.6834.83/chrome/browser/ui/lens/lens_overlay_request_id_gen
#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
+Index: chromium-133.0.6943.53/components/payments/content/payment_method_manifest_table.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
+--- chromium-133.0.6943.53.orig/components/payments/content/payment_method_manifest_table.h
++++ chromium-133.0.6943.53/components/payments/content/payment_method_manifest_table.h
@@ -6,6 +6,7 @@
- #define COMPONENTS_SYNC_SERVICE_LOCAL_DATA_DESCRIPTION_H_
+ #define COMPONENTS_PAYMENTS_CONTENT_PAYMENT_METHOD_MANIFEST_TABLE_H_
+ #include <memory>
++#include <optional>
#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
+Index: chromium-133.0.6943.53/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
+--- chromium-133.0.6943.53.orig/components/viz/service/display/surface_aggregator.h
++++ chromium-133.0.6943.53/components/viz/service/display/surface_aggregator.h
@@ -132,13 +132,18 @@ class VIZ_SERVICE_EXPORT SurfaceAggregat
struct PrewalkResult;
@@ -62,11 +50,11 @@ Index: chromium-132.0.6834.83/components/viz/service/display/surface_aggregator.
base::TimeDelta prewalk_time;
base::TimeDelta copy_time;
-Index: chromium-132.0.6834.83/gpu/command_buffer/service/shared_image/shared_image_backing.h
+Index: chromium-133.0.6943.53/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
+--- chromium-133.0.6943.53.orig/gpu/command_buffer/service/shared_image/shared_image_backing.h
++++ chromium-133.0.6943.53/gpu/command_buffer/service/shared_image/shared_image_backing.h
+@@ -394,7 +394,7 @@ class GPU_GLES2_EXPORT SharedImageBackin
private:
class ScopedWriteUMA {
public:
@@ -75,7 +63,7 @@ Index: chromium-132.0.6834.83/gpu/command_buffer/service/shared_image/shared_ima
ScopedWriteUMA(const ScopedWriteUMA&) = delete;
ScopedWriteUMA& operator=(const ScopedWriteUMA&) = delete;
-@@ -403,7 +403,7 @@ class GPU_GLES2_EXPORT SharedImageBackin
+@@ -408,7 +408,7 @@ class GPU_GLES2_EXPORT SharedImageBackin
void SetConsumed() { content_consumed_ = true; }
private:
@@ -84,10 +72,10 @@ Index: chromium-132.0.6834.83/gpu/command_buffer/service/shared_image/shared_ima
};
const Mailbox mailbox_;
-Index: chromium-132.0.6834.83/mojo/public/cpp/bindings/lib/multiplex_router.h
+Index: chromium-133.0.6943.53/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
+--- chromium-133.0.6943.53.orig/mojo/public/cpp/bindings/lib/multiplex_router.h
++++ chromium-133.0.6943.53/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 {
@@ -100,11 +88,31 @@ Index: chromium-132.0.6834.83/mojo/public/cpp/bindings/lib/multiplex_router.h
};
std::optional<ExclusiveSyncWaitInfo> exclusive_sync_wait_;
-Index: chromium-132.0.6834.83/third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h
+Index: chromium-133.0.6943.53/third_party/blink/renderer/core/layout/inline/line_breaker.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
+--- chromium-133.0.6943.53.orig/third_party/blink/renderer/core/layout/inline/line_breaker.h
++++ chromium-133.0.6943.53/third_party/blink/renderer/core/layout/inline/line_breaker.h
+@@ -445,9 +445,12 @@ class CORE_EXPORT LineBreaker {
+ STACK_ALLOCATED();
+
+ public:
+- InlineItemResults* item_results = nullptr;
+- wtf_size_t item_result_index = WTF::kNotFound;
+- const ShapeResultView* collapsed_shape_result = nullptr;
++ TrailingCollapsibleSpace()
++ : item_results(nullptr), item_result_index(WTF::kNotFound),
++ collapsed_shape_result(nullptr) {}
++ InlineItemResults* item_results;
++ wtf_size_t item_result_index;
++ const ShapeResultView* collapsed_shape_result;
+ // Ancestors of `item_result`. ancestor_ruby_columns[0] is the parent of
+ // `item_result`, and ancestor_ruby_columns[n+1] is the parent of
+ // ancestor_ruby_columns[n]. This list is empty if `item_result` is not
+Index: chromium-133.0.6943.53/third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h
+===================================================================
+--- chromium-133.0.6943.53.orig/third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h
++++ chromium-133.0.6943.53/third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h
+@@ -888,8 +888,9 @@ class CORE_EXPORT PaintLayerScrollableAr
struct PendingViewState {
HistoryItem::ViewState state;
@@ -116,10 +124,10 @@ Index: chromium-132.0.6834.83/third_party/blink/renderer/core/paint/paint_layer_
};
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
+Index: chromium-133.0.6943.53/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
+--- chromium-133.0.6943.53.orig/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.h
++++ chromium-133.0.6943.53/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 {
@@ -130,64 +138,10 @@ Index: chromium-132.0.6834.83/third_party/blink/renderer/modules/media_controls/
};
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
+Index: chromium-133.0.6943.53/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
+--- chromium-133.0.6943.53.orig/third_party/webrtc/call/rtp_config.h
++++ chromium-133.0.6943.53/third_party/webrtc/call/rtp_config.h
@@ -79,10 +79,12 @@ struct RtpStreamConfig {
struct Rtx {
std::string ToString() const;
@@ -203,17 +157,5 @@ Index: chromium-132.0.6834.83/third_party/webrtc/call/rtp_config.h
};
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-ffmpeg.patch b/www-client/chromium/files/riscv-ffmpeg.patch
index 124abfe..c7a1059 100644
--- a/www-client/chromium/files/riscv-ffmpeg.patch
+++ b/www-client/chromium/files/riscv-ffmpeg.patch
@@ -1,6 +1,6 @@
diff '--color=auto' -Naur a/third_party/ffmpeg/CREDITS.chromium b/third_party/ffmpeg/CREDITS.chromium
---- 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
+--- a/third_party/ffmpeg/CREDITS.chromium 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/CREDITS.chromium 2025-02-07 10:57:59.000000000 +0000
@@ -131,6 +131,181 @@
********************************************************************************
@@ -215,10 +215,243 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/CREDITS.chromium b/third_party/ff
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/ios/arm64/config.h b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config.h
+--- a/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config.h 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config.h 2025-02-07 10:58:55.000000000 +0000
+@@ -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/ezemtsov/projects/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=cla
ng --enable-cross-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=arm64-apple-macosx' --extra-cflags=-F/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/20/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/
home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64' --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/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang --enable-cross-compile --cc=clang --l
d=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=arm64-apple-macosx' --extra-cflags=-F/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/20/include --extra-ldflags=-syslibroot --extra-ldflags=/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldf
lags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64' --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/a/external/github.com/llvm/llvm-project 923566a67de39a00eb6fc5cabbad307a72aa338e)"
++#define CC_IDENT "clang version 20.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 8cb44859cc31929521c09fc6a8add66d53db44de)"
+ #define OS_NAME darwin
+ #define EXTERN_PREFIX "_"
+ #define EXTERN_ASM _
+@@ -32,6 +32,7 @@
+ #define ARCH_SPARC64 0
+ #define ARCH_TILEGX 0
+ #define ARCH_TILEPRO 0
++#define ARCH_WASM 0
+ #define ARCH_X86 0
+ #define ARCH_X86_32 0
+ #define ARCH_X86_64 0
+@@ -57,6 +58,7 @@
+ #define HAVE_RVV 0
+ #define HAVE_RV_ZICBOP 1
+ #define HAVE_RV_ZVBB 0
++#define HAVE_SIMD128 0
+ #define HAVE_AESNI 0
+ #define HAVE_AMD3DNOW 0
+ #define HAVE_AMD3DNOWEXT 0
+@@ -112,6 +114,7 @@
+ #define HAVE_RVV_EXTERNAL 0
+ #define HAVE_RV_ZICBOP_EXTERNAL 0
+ #define HAVE_RV_ZVBB_EXTERNAL 0
++#define HAVE_SIMD128_EXTERNAL 0
+ #define HAVE_AESNI_EXTERNAL 0
+ #define HAVE_AMD3DNOW_EXTERNAL 0
+ #define HAVE_AMD3DNOWEXT_EXTERNAL 0
+@@ -167,6 +170,7 @@
+ #define HAVE_RVV_INLINE 0
+ #define HAVE_RV_ZICBOP_INLINE 0
+ #define HAVE_RV_ZVBB_INLINE 0
++#define HAVE_SIMD128_INLINE 0
+ #define HAVE_AESNI_INLINE 0
+ #define HAVE_AMD3DNOW_INLINE 0
+ #define HAVE_AMD3DNOWEXT_INLINE 0
+@@ -205,7 +209,6 @@
+ #define HAVE_FAST_CLZ 1
+ #define HAVE_FAST_CMOV 0
+ #define HAVE_FAST_FLOAT16 1
+-#define HAVE_LOCAL_ALIGNED 0
+ #define HAVE_SIMD_ALIGN_16 1
+ #define HAVE_SIMD_ALIGN_32 0
+ #define HAVE_SIMD_ALIGN_64 0
+diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config_components.h b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config_components.h
+--- a/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config_components.h 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config_components.h 2025-02-07 10:58:55.000000000 +0000
+@@ -243,6 +243,7 @@
+ #define CONFIG_RV20_DECODER 0
+ #define CONFIG_RV30_DECODER 0
+ #define CONFIG_RV40_DECODER 0
++#define CONFIG_RV60_DECODER 0
+ #define CONFIG_S302M_DECODER 0
+ #define CONFIG_SANM_DECODER 0
+ #define CONFIG_SCPR_DECODER 0
+@@ -650,6 +651,7 @@
+ #define CONFIG_DXV_ENCODER 0
+ #define CONFIG_EXR_ENCODER 0
+ #define CONFIG_FFV1_ENCODER 0
++#define CONFIG_FFV1_VULKAN_ENCODER 0
+ #define CONFIG_FFVHUFF_ENCODER 0
+ #define CONFIG_FITS_ENCODER 0
+ #define CONFIG_FLASHSV_ENCODER 0
+@@ -956,6 +958,7 @@
+ #define CONFIG_VP9_VAAPI_HWACCEL 0
+ #define CONFIG_VP9_VDPAU_HWACCEL 0
+ #define CONFIG_VP9_VIDEOTOOLBOX_HWACCEL 0
++#define CONFIG_VVC_VAAPI_HWACCEL 0
+ #define CONFIG_WMV3_D3D11VA_HWACCEL 0
+ #define CONFIG_WMV3_D3D11VA2_HWACCEL 0
+ #define CONFIG_WMV3_D3D12VA_HWACCEL 0
+diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/libavutil/ffversion.h b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/libavutil/ffversion.h
+--- a/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/libavutil/ffversion.h 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/libavutil/ffversion.h 2025-02-07 10:58:55.000000000 +0000
+@@ -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-118887-g99f17d50d3"
++#define FFMPEG_VERSION "N-119293-g19beff4292"
+ #endif /* AVUTIL_FFVERSION_H */
+diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.asm b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.asm
+--- a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.asm 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.asm 2025-02-07 10:58:55.000000000 +0000
+@@ -17,6 +17,7 @@
+ %define ARCH_SPARC64 0
+ %define ARCH_TILEGX 0
+ %define ARCH_TILEPRO 0
++%define ARCH_WASM 0
+ %define ARCH_X86 1
+ %define ARCH_X86_32 0
+ %define ARCH_X86_64 1
+@@ -42,6 +43,7 @@
+ %define HAVE_RVV 0
+ %define HAVE_RV_ZICBOP 1
+ %define HAVE_RV_ZVBB 0
++%define HAVE_SIMD128 0
+ %define HAVE_AESNI 1
+ %define HAVE_AMD3DNOW 1
+ %define HAVE_AMD3DNOWEXT 1
+@@ -97,6 +99,7 @@
+ %define HAVE_RVV_EXTERNAL 0
+ %define HAVE_RV_ZICBOP_EXTERNAL 0
+ %define HAVE_RV_ZVBB_EXTERNAL 0
++%define HAVE_SIMD128_EXTERNAL 0
+ %define HAVE_AESNI_EXTERNAL 1
+ %define HAVE_AMD3DNOW_EXTERNAL 1
+ %define HAVE_AMD3DNOWEXT_EXTERNAL 1
+@@ -152,6 +155,7 @@
+ %define HAVE_RVV_INLINE 0
+ %define HAVE_RV_ZICBOP_INLINE 0
+ %define HAVE_RV_ZVBB_INLINE 0
++%define HAVE_SIMD128_INLINE 0
+ %define HAVE_AESNI_INLINE 1
+ %define HAVE_AMD3DNOW_INLINE 1
+ %define HAVE_AMD3DNOWEXT_INLINE 1
+@@ -190,7 +194,6 @@
+ %define HAVE_FAST_CLZ 1
+ %define HAVE_FAST_CMOV 1
+ %define HAVE_FAST_FLOAT16 0
+-%define HAVE_LOCAL_ALIGNED 1
+ %define HAVE_SIMD_ALIGN_16 1
+ %define HAVE_SIMD_ALIGN_32 1
+ %define HAVE_SIMD_ALIGN_64 1
+diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.h b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.h
+--- a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.h 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.h 2025-02-07 10:58:55.000000000 +0000
+@@ -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/ezemtsov/projects/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=cla
ng --enable-cross-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=x86_64-apple-macosx' --extra-cflags=-F/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/20/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google
/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=x86_64 --extra-cflags=-m64 --extra-ldflags='-arch x86_64' --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/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang --enable-cross-compile --cc=clang --l
d=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=x86_64-apple-macosx' --extra-cflags=-F/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/20/include --extra-ldflags=-syslibroot --extra-ldflags=/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ld
flags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=x86_64 --extra-cflags=-m64 --extra-ldflags='-arch x86_64' --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/a/external/github.com/llvm/llvm-project 923566a67de39a00eb6fc5cabbad307a72aa338e)"
++#define CC_IDENT "clang version 20.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 8cb44859cc31929521c09fc6a8add66d53db44de)"
+ #define OS_NAME darwin
+ #define EXTERN_PREFIX "_"
+ #define EXTERN_ASM _
+@@ -31,6 +31,7 @@
+ #define ARCH_SPARC64 0
+ #define ARCH_TILEGX 0
+ #define ARCH_TILEPRO 0
++#define ARCH_WASM 0
+ #define ARCH_X86 1
+ #define ARCH_X86_32 0
+ #define ARCH_X86_64 1
+@@ -56,6 +57,7 @@
+ #define HAVE_RVV 0
+ #define HAVE_RV_ZICBOP 1
+ #define HAVE_RV_ZVBB 0
++#define HAVE_SIMD128 0
+ #define HAVE_AESNI 1
+ #define HAVE_AMD3DNOW 1
+ #define HAVE_AMD3DNOWEXT 1
+@@ -111,6 +113,7 @@
+ #define HAVE_RVV_EXTERNAL 0
+ #define HAVE_RV_ZICBOP_EXTERNAL 0
+ #define HAVE_RV_ZVBB_EXTERNAL 0
++#define HAVE_SIMD128_EXTERNAL 0
+ #define HAVE_AESNI_EXTERNAL 1
+ #define HAVE_AMD3DNOW_EXTERNAL 1
+ #define HAVE_AMD3DNOWEXT_EXTERNAL 1
+@@ -166,6 +169,7 @@
+ #define HAVE_RVV_INLINE 0
+ #define HAVE_RV_ZICBOP_INLINE 0
+ #define HAVE_RV_ZVBB_INLINE 0
++#define HAVE_SIMD128_INLINE 0
+ #define HAVE_AESNI_INLINE 1
+ #define HAVE_AMD3DNOW_INLINE 1
+ #define HAVE_AMD3DNOWEXT_INLINE 1
+@@ -204,7 +208,6 @@
+ #define HAVE_FAST_CLZ 1
+ #define HAVE_FAST_CMOV 1
+ #define HAVE_FAST_FLOAT16 0
+-#define HAVE_LOCAL_ALIGNED 1
+ #define HAVE_SIMD_ALIGN_16 1
+ #define HAVE_SIMD_ALIGN_32 1
+ #define HAVE_SIMD_ALIGN_64 1
+diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config_components.h b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config_components.h
+--- a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config_components.h 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config_components.h 2025-02-07 10:58:55.000000000 +0000
+@@ -243,6 +243,7 @@
+ #define CONFIG_RV20_DECODER 0
+ #define CONFIG_RV30_DECODER 0
+ #define CONFIG_RV40_DECODER 0
++#define CONFIG_RV60_DECODER 0
+ #define CONFIG_S302M_DECODER 0
+ #define CONFIG_SANM_DECODER 0
+ #define CONFIG_SCPR_DECODER 0
+@@ -650,6 +651,7 @@
+ #define CONFIG_DXV_ENCODER 0
+ #define CONFIG_EXR_ENCODER 0
+ #define CONFIG_FFV1_ENCODER 0
++#define CONFIG_FFV1_VULKAN_ENCODER 0
+ #define CONFIG_FFVHUFF_ENCODER 0
+ #define CONFIG_FITS_ENCODER 0
+ #define CONFIG_FLASHSV_ENCODER 0
+@@ -956,6 +958,7 @@
+ #define CONFIG_VP9_VAAPI_HWACCEL 0
+ #define CONFIG_VP9_VDPAU_HWACCEL 0
+ #define CONFIG_VP9_VIDEOTOOLBOX_HWACCEL 0
++#define CONFIG_VVC_VAAPI_HWACCEL 0
+ #define CONFIG_WMV3_D3D11VA_HWACCEL 0
+ #define CONFIG_WMV3_D3D11VA2_HWACCEL 0
+ #define CONFIG_WMV3_D3D12VA_HWACCEL 0
+diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/libavutil/ffversion.h b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/libavutil/ffversion.h
+--- a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/libavutil/ffversion.h 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/libavutil/ffversion.h 2025-02-07 10:58:55.000000000 +0000
+@@ -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-118887-g99f17d50d3"
++#define FFMPEG_VERSION "N-119293-g19beff4292"
+ #endif /* AVUTIL_FFVERSION_H */
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 2025-01-14 12:35:46.000000000 +0000
-@@ -0,0 +1,793 @@
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h 2025-02-07 10:58:54.000000000 +0000
+@@ -0,0 +1,796 @@
+/* Automatically generated by configure - do not modify! */
+#ifndef FFMPEG_CONFIG_H
+#define FFMPEG_CONFIG_H
@@ -227,7 +460,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#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/a/external/github.com/llvm/llvm-project b81d8e90339a788cc6cb148831612c6b39b93ad5)"
++#define CC_IDENT "clang version 20.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 091448e3c17bc8e7812dd7b571c852576d648977)"
+#define OS_NAME linux
+#define EXTERN_PREFIX ""
+#define EXTERN_ASM
@@ -252,6 +485,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define ARCH_SPARC64 0
+#define ARCH_TILEGX 0
+#define ARCH_TILEPRO 0
++#define ARCH_WASM 0
+#define ARCH_X86 0
+#define ARCH_X86_32 0
+#define ARCH_X86_64 0
@@ -276,7 +510,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_RV 1
+#define HAVE_RVV 1
+#define HAVE_RV_ZICBOP 1
-+#define HAVE_RV_ZVBB 0
++#define HAVE_RV_ZVBB 1
++#define HAVE_SIMD128 0
+#define HAVE_AESNI 0
+#define HAVE_AMD3DNOW 0
+#define HAVE_AMD3DNOWEXT 0
@@ -332,6 +567,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_RVV_EXTERNAL 0
+#define HAVE_RV_ZICBOP_EXTERNAL 0
+#define HAVE_RV_ZVBB_EXTERNAL 0
++#define HAVE_SIMD128_EXTERNAL 0
+#define HAVE_AESNI_EXTERNAL 0
+#define HAVE_AMD3DNOW_EXTERNAL 0
+#define HAVE_AMD3DNOWEXT_EXTERNAL 0
@@ -387,6 +623,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_RVV_INLINE 0
+#define HAVE_RV_ZICBOP_INLINE 0
+#define HAVE_RV_ZVBB_INLINE 0
++#define HAVE_SIMD128_INLINE 0
+#define HAVE_AESNI_INLINE 0
+#define HAVE_AMD3DNOW_INLINE 0
+#define HAVE_AMD3DNOWEXT_INLINE 0
@@ -425,7 +662,6 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_FAST_CLZ 0
+#define HAVE_FAST_CMOV 0
+#define HAVE_FAST_FLOAT16 0
-+#define HAVE_LOCAL_ALIGNED 0
+#define HAVE_SIMD_ALIGN_16 0
+#define HAVE_SIMD_ALIGN_32 0
+#define HAVE_SIMD_ALIGN_64 0
@@ -1014,8 +1250,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#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 2025-01-14 12:35:46.000000000 +0000
-@@ -0,0 +1,2234 @@
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_components.h 2025-02-07 10:58:54.000000000 +0000
+@@ -0,0 +1,2237 @@
+/* Automatically generated by configure - do not modify! */
+#ifndef FFMPEG_CONFIG_COMPONENTS_H
+#define FFMPEG_CONFIG_COMPONENTS_H
@@ -1261,6 +1497,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_RV20_DECODER 0
+#define CONFIG_RV30_DECODER 0
+#define CONFIG_RV40_DECODER 0
++#define CONFIG_RV60_DECODER 0
+#define CONFIG_S302M_DECODER 0
+#define CONFIG_SANM_DECODER 0
+#define CONFIG_SCPR_DECODER 0
@@ -1668,6 +1905,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_DXV_ENCODER 0
+#define CONFIG_EXR_ENCODER 0
+#define CONFIG_FFV1_ENCODER 0
++#define CONFIG_FFV1_VULKAN_ENCODER 0
+#define CONFIG_FFVHUFF_ENCODER 0
+#define CONFIG_FITS_ENCODER 0
+#define CONFIG_FLASHSV_ENCODER 0
@@ -1974,6 +2212,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_VP9_VAAPI_HWACCEL 0
+#define CONFIG_VP9_VDPAU_HWACCEL 0
+#define CONFIG_VP9_VIDEOTOOLBOX_HWACCEL 0
++#define CONFIG_VVC_VAAPI_HWACCEL 0
+#define CONFIG_WMV3_D3D11VA_HWACCEL 0
+#define CONFIG_WMV3_D3D11VA2_HWACCEL 0
+#define CONFIG_WMV3_D3D12VA_HWACCEL 0
@@ -3252,13 +3491,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 2025-01-14 12:35:46.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/bsf_list.c 2025-02-07 10:58:54.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 2025-01-14 12:35:46.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/codec_list.c 2025-02-07 10:58:54.000000000 +0000
@@ -0,0 +1,17 @@
+static const FFCodec * const codec_list[] = {
+ &ff_h264_decoder,
@@ -3279,7 +3518,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 2025-01-14 12:35:46.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/parser_list.c 2025-02-07 10:58:54.000000000 +0000
@@ -0,0 +1,9 @@
+static const AVCodecParser * const parser_list[] = {
+ &ff_aac_parser,
@@ -3292,7 +3531,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 2025-01-14 12:35:46.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/demuxer_list.c 2025-02-07 10:58:54.000000000 +0000
@@ -0,0 +1,9 @@
+static const FFInputFormat * const demuxer_list[] = {
+ &ff_aac_demuxer,
@@ -3305,19 +3544,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 2025-01-14 12:35:46.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/muxer_list.c 2025-02-07 10:58:54.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 2025-01-14 12:35:46.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/protocol_list.c 2025-02-07 10:58:54.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 2025-01-14 12:35:46.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/avconfig.h 2025-02-07 10:58:54.000000000 +0000
@@ -0,0 +1,6 @@
+/* Generated by ffmpeg configure */
+#ifndef AVUTIL_AVCONFIG_H
@@ -3327,17 +3566,250 @@ 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 2025-01-14 12:35:46.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/ffversion.h 2025-02-07 10:58:54.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-10-31-591ae4b02e"
++#define FFMPEG_VERSION "git-2024-12-13-d10a0f8"
+#endif /* AVUTIL_FFVERSION_H */
+diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config.h b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config.h
+--- a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config.h 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config.h 2025-02-07 10:58:55.000000000 +0000
+@@ -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/ezemtsov/projects/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=cla
ng --enable-cross-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=arm64-apple-macosx' --extra-cflags=-F/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/20/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/
home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64'" -- 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/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang --enable-cross-compile --cc=clang --l
d=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=arm64-apple-macosx' --extra-cflags=-F/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/20/include --extra-ldflags=-syslibroot --extra-ldflags=/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldf
lags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64'" -- 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/a/external/github.com/llvm/llvm-project 923566a67de39a00eb6fc5cabbad307a72aa338e)"
++#define CC_IDENT "clang version 20.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 8cb44859cc31929521c09fc6a8add66d53db44de)"
+ #define OS_NAME darwin
+ #define EXTERN_PREFIX "_"
+ #define EXTERN_ASM _
+@@ -32,6 +32,7 @@
+ #define ARCH_SPARC64 0
+ #define ARCH_TILEGX 0
+ #define ARCH_TILEPRO 0
++#define ARCH_WASM 0
+ #define ARCH_X86 0
+ #define ARCH_X86_32 0
+ #define ARCH_X86_64 0
+@@ -57,6 +58,7 @@
+ #define HAVE_RVV 0
+ #define HAVE_RV_ZICBOP 1
+ #define HAVE_RV_ZVBB 0
++#define HAVE_SIMD128 0
+ #define HAVE_AESNI 0
+ #define HAVE_AMD3DNOW 0
+ #define HAVE_AMD3DNOWEXT 0
+@@ -112,6 +114,7 @@
+ #define HAVE_RVV_EXTERNAL 0
+ #define HAVE_RV_ZICBOP_EXTERNAL 0
+ #define HAVE_RV_ZVBB_EXTERNAL 0
++#define HAVE_SIMD128_EXTERNAL 0
+ #define HAVE_AESNI_EXTERNAL 0
+ #define HAVE_AMD3DNOW_EXTERNAL 0
+ #define HAVE_AMD3DNOWEXT_EXTERNAL 0
+@@ -167,6 +170,7 @@
+ #define HAVE_RVV_INLINE 0
+ #define HAVE_RV_ZICBOP_INLINE 0
+ #define HAVE_RV_ZVBB_INLINE 0
++#define HAVE_SIMD128_INLINE 0
+ #define HAVE_AESNI_INLINE 0
+ #define HAVE_AMD3DNOW_INLINE 0
+ #define HAVE_AMD3DNOWEXT_INLINE 0
+@@ -205,7 +209,6 @@
+ #define HAVE_FAST_CLZ 1
+ #define HAVE_FAST_CMOV 0
+ #define HAVE_FAST_FLOAT16 1
+-#define HAVE_LOCAL_ALIGNED 0
+ #define HAVE_SIMD_ALIGN_16 1
+ #define HAVE_SIMD_ALIGN_32 0
+ #define HAVE_SIMD_ALIGN_64 0
+diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config_components.h b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config_components.h
+--- a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config_components.h 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config_components.h 2025-02-07 10:58:55.000000000 +0000
+@@ -243,6 +243,7 @@
+ #define CONFIG_RV20_DECODER 0
+ #define CONFIG_RV30_DECODER 0
+ #define CONFIG_RV40_DECODER 0
++#define CONFIG_RV60_DECODER 0
+ #define CONFIG_S302M_DECODER 0
+ #define CONFIG_SANM_DECODER 0
+ #define CONFIG_SCPR_DECODER 0
+@@ -650,6 +651,7 @@
+ #define CONFIG_DXV_ENCODER 0
+ #define CONFIG_EXR_ENCODER 0
+ #define CONFIG_FFV1_ENCODER 0
++#define CONFIG_FFV1_VULKAN_ENCODER 0
+ #define CONFIG_FFVHUFF_ENCODER 0
+ #define CONFIG_FITS_ENCODER 0
+ #define CONFIG_FLASHSV_ENCODER 0
+@@ -956,6 +958,7 @@
+ #define CONFIG_VP9_VAAPI_HWACCEL 0
+ #define CONFIG_VP9_VDPAU_HWACCEL 0
+ #define CONFIG_VP9_VIDEOTOOLBOX_HWACCEL 0
++#define CONFIG_VVC_VAAPI_HWACCEL 0
+ #define CONFIG_WMV3_D3D11VA_HWACCEL 0
+ #define CONFIG_WMV3_D3D11VA2_HWACCEL 0
+ #define CONFIG_WMV3_D3D12VA_HWACCEL 0
+diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/libavutil/ffversion.h b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/libavutil/ffversion.h
+--- a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/libavutil/ffversion.h 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/libavutil/ffversion.h 2025-02-07 10:58:55.000000000 +0000
+@@ -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-118887-g99f17d50d3"
++#define FFMPEG_VERSION "N-119293-g19beff4292"
+ #endif /* AVUTIL_FFVERSION_H */
+diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.asm b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.asm
+--- a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.asm 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.asm 2025-02-07 10:58:55.000000000 +0000
+@@ -17,6 +17,7 @@
+ %define ARCH_SPARC64 0
+ %define ARCH_TILEGX 0
+ %define ARCH_TILEPRO 0
++%define ARCH_WASM 0
+ %define ARCH_X86 1
+ %define ARCH_X86_32 0
+ %define ARCH_X86_64 1
+@@ -42,6 +43,7 @@
+ %define HAVE_RVV 0
+ %define HAVE_RV_ZICBOP 1
+ %define HAVE_RV_ZVBB 0
++%define HAVE_SIMD128 0
+ %define HAVE_AESNI 1
+ %define HAVE_AMD3DNOW 1
+ %define HAVE_AMD3DNOWEXT 1
+@@ -97,6 +99,7 @@
+ %define HAVE_RVV_EXTERNAL 0
+ %define HAVE_RV_ZICBOP_EXTERNAL 0
+ %define HAVE_RV_ZVBB_EXTERNAL 0
++%define HAVE_SIMD128_EXTERNAL 0
+ %define HAVE_AESNI_EXTERNAL 1
+ %define HAVE_AMD3DNOW_EXTERNAL 1
+ %define HAVE_AMD3DNOWEXT_EXTERNAL 1
+@@ -152,6 +155,7 @@
+ %define HAVE_RVV_INLINE 0
+ %define HAVE_RV_ZICBOP_INLINE 0
+ %define HAVE_RV_ZVBB_INLINE 0
++%define HAVE_SIMD128_INLINE 0
+ %define HAVE_AESNI_INLINE 1
+ %define HAVE_AMD3DNOW_INLINE 1
+ %define HAVE_AMD3DNOWEXT_INLINE 1
+@@ -190,7 +194,6 @@
+ %define HAVE_FAST_CLZ 1
+ %define HAVE_FAST_CMOV 1
+ %define HAVE_FAST_FLOAT16 0
+-%define HAVE_LOCAL_ALIGNED 1
+ %define HAVE_SIMD_ALIGN_16 1
+ %define HAVE_SIMD_ALIGN_32 1
+ %define HAVE_SIMD_ALIGN_64 1
+diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.h b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.h
+--- a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.h 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.h 2025-02-07 10:58:55.000000000 +0000
+@@ -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/ezemtsov/projects/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=cla
ng --enable-cross-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=x86_64-apple-macosx' --extra-cflags=-F/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/20/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google
/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=x86_64 --extra-cflags=-m64 --extra-ldflags='-arch x86_64'" -- 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/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang --enable-cross-compile --cc=clang --l
d=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=x86_64-apple-macosx' --extra-cflags=-F/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/20/include --extra-ldflags=-syslibroot --extra-ldflags=/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ld
flags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=x86_64 --extra-cflags=-m64 --extra-ldflags='-arch x86_64'" -- 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/a/external/github.com/llvm/llvm-project 923566a67de39a00eb6fc5cabbad307a72aa338e)"
++#define CC_IDENT "clang version 20.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 8cb44859cc31929521c09fc6a8add66d53db44de)"
+ #define OS_NAME darwin
+ #define EXTERN_PREFIX "_"
+ #define EXTERN_ASM _
+@@ -31,6 +31,7 @@
+ #define ARCH_SPARC64 0
+ #define ARCH_TILEGX 0
+ #define ARCH_TILEPRO 0
++#define ARCH_WASM 0
+ #define ARCH_X86 1
+ #define ARCH_X86_32 0
+ #define ARCH_X86_64 1
+@@ -56,6 +57,7 @@
+ #define HAVE_RVV 0
+ #define HAVE_RV_ZICBOP 1
+ #define HAVE_RV_ZVBB 0
++#define HAVE_SIMD128 0
+ #define HAVE_AESNI 1
+ #define HAVE_AMD3DNOW 1
+ #define HAVE_AMD3DNOWEXT 1
+@@ -111,6 +113,7 @@
+ #define HAVE_RVV_EXTERNAL 0
+ #define HAVE_RV_ZICBOP_EXTERNAL 0
+ #define HAVE_RV_ZVBB_EXTERNAL 0
++#define HAVE_SIMD128_EXTERNAL 0
+ #define HAVE_AESNI_EXTERNAL 1
+ #define HAVE_AMD3DNOW_EXTERNAL 1
+ #define HAVE_AMD3DNOWEXT_EXTERNAL 1
+@@ -166,6 +169,7 @@
+ #define HAVE_RVV_INLINE 0
+ #define HAVE_RV_ZICBOP_INLINE 0
+ #define HAVE_RV_ZVBB_INLINE 0
++#define HAVE_SIMD128_INLINE 0
+ #define HAVE_AESNI_INLINE 1
+ #define HAVE_AMD3DNOW_INLINE 1
+ #define HAVE_AMD3DNOWEXT_INLINE 1
+@@ -204,7 +208,6 @@
+ #define HAVE_FAST_CLZ 1
+ #define HAVE_FAST_CMOV 1
+ #define HAVE_FAST_FLOAT16 0
+-#define HAVE_LOCAL_ALIGNED 1
+ #define HAVE_SIMD_ALIGN_16 1
+ #define HAVE_SIMD_ALIGN_32 1
+ #define HAVE_SIMD_ALIGN_64 1
+diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config_components.h b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config_components.h
+--- a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config_components.h 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config_components.h 2025-02-07 10:58:55.000000000 +0000
+@@ -243,6 +243,7 @@
+ #define CONFIG_RV20_DECODER 0
+ #define CONFIG_RV30_DECODER 0
+ #define CONFIG_RV40_DECODER 0
++#define CONFIG_RV60_DECODER 0
+ #define CONFIG_S302M_DECODER 0
+ #define CONFIG_SANM_DECODER 0
+ #define CONFIG_SCPR_DECODER 0
+@@ -650,6 +651,7 @@
+ #define CONFIG_DXV_ENCODER 0
+ #define CONFIG_EXR_ENCODER 0
+ #define CONFIG_FFV1_ENCODER 0
++#define CONFIG_FFV1_VULKAN_ENCODER 0
+ #define CONFIG_FFVHUFF_ENCODER 0
+ #define CONFIG_FITS_ENCODER 0
+ #define CONFIG_FLASHSV_ENCODER 0
+@@ -956,6 +958,7 @@
+ #define CONFIG_VP9_VAAPI_HWACCEL 0
+ #define CONFIG_VP9_VDPAU_HWACCEL 0
+ #define CONFIG_VP9_VIDEOTOOLBOX_HWACCEL 0
++#define CONFIG_VVC_VAAPI_HWACCEL 0
+ #define CONFIG_WMV3_D3D11VA_HWACCEL 0
+ #define CONFIG_WMV3_D3D11VA2_HWACCEL 0
+ #define CONFIG_WMV3_D3D12VA_HWACCEL 0
+diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/libavutil/ffversion.h b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/libavutil/ffversion.h
+--- a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/libavutil/ffversion.h 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/libavutil/ffversion.h 2025-02-07 10:58:55.000000000 +0000
+@@ -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-118887-g99f17d50d3"
++#define FFMPEG_VERSION "N-119293-g19beff4292"
+ #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 2025-01-14 12:35:46.000000000 +0000
-@@ -0,0 +1,793 @@
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h 2025-02-07 10:58:54.000000000 +0000
+@@ -0,0 +1,796 @@
+/* Automatically generated by configure - do not modify! */
+#ifndef FFMPEG_CONFIG_H
+#define FFMPEG_CONFIG_H
@@ -3346,7 +3818,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#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/a/external/github.com/llvm/llvm-project b81d8e90339a788cc6cb148831612c6b39b93ad5)"
++#define CC_IDENT "clang version 20.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 091448e3c17bc8e7812dd7b571c852576d648977)"
+#define OS_NAME linux
+#define EXTERN_PREFIX ""
+#define EXTERN_ASM
@@ -3371,6 +3843,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define ARCH_SPARC64 0
+#define ARCH_TILEGX 0
+#define ARCH_TILEPRO 0
++#define ARCH_WASM 0
+#define ARCH_X86 0
+#define ARCH_X86_32 0
+#define ARCH_X86_64 0
@@ -3395,7 +3868,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_RV 1
+#define HAVE_RVV 1
+#define HAVE_RV_ZICBOP 1
-+#define HAVE_RV_ZVBB 0
++#define HAVE_RV_ZVBB 1
++#define HAVE_SIMD128 0
+#define HAVE_AESNI 0
+#define HAVE_AMD3DNOW 0
+#define HAVE_AMD3DNOWEXT 0
@@ -3451,6 +3925,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_RVV_EXTERNAL 0
+#define HAVE_RV_ZICBOP_EXTERNAL 0
+#define HAVE_RV_ZVBB_EXTERNAL 0
++#define HAVE_SIMD128_EXTERNAL 0
+#define HAVE_AESNI_EXTERNAL 0
+#define HAVE_AMD3DNOW_EXTERNAL 0
+#define HAVE_AMD3DNOWEXT_EXTERNAL 0
@@ -3506,6 +3981,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_RVV_INLINE 0
+#define HAVE_RV_ZICBOP_INLINE 0
+#define HAVE_RV_ZVBB_INLINE 0
++#define HAVE_SIMD128_INLINE 0
+#define HAVE_AESNI_INLINE 0
+#define HAVE_AMD3DNOW_INLINE 0
+#define HAVE_AMD3DNOWEXT_INLINE 0
@@ -3544,7 +4020,6 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_FAST_CLZ 0
+#define HAVE_FAST_CMOV 0
+#define HAVE_FAST_FLOAT16 0
-+#define HAVE_LOCAL_ALIGNED 0
+#define HAVE_SIMD_ALIGN_16 0
+#define HAVE_SIMD_ALIGN_32 0
+#define HAVE_SIMD_ALIGN_64 0
@@ -4133,8 +4608,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#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 2025-01-14 12:35:46.000000000 +0000
-@@ -0,0 +1,2234 @@
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_components.h 2025-02-07 10:58:54.000000000 +0000
+@@ -0,0 +1,2237 @@
+/* Automatically generated by configure - do not modify! */
+#ifndef FFMPEG_CONFIG_COMPONENTS_H
+#define FFMPEG_CONFIG_COMPONENTS_H
@@ -4380,6 +4855,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_RV20_DECODER 0
+#define CONFIG_RV30_DECODER 0
+#define CONFIG_RV40_DECODER 0
++#define CONFIG_RV60_DECODER 0
+#define CONFIG_S302M_DECODER 0
+#define CONFIG_SANM_DECODER 0
+#define CONFIG_SCPR_DECODER 0
@@ -4787,6 +5263,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_DXV_ENCODER 0
+#define CONFIG_EXR_ENCODER 0
+#define CONFIG_FFV1_ENCODER 0
++#define CONFIG_FFV1_VULKAN_ENCODER 0
+#define CONFIG_FFVHUFF_ENCODER 0
+#define CONFIG_FITS_ENCODER 0
+#define CONFIG_FLASHSV_ENCODER 0
@@ -5093,6 +5570,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_VP9_VAAPI_HWACCEL 0
+#define CONFIG_VP9_VDPAU_HWACCEL 0
+#define CONFIG_VP9_VIDEOTOOLBOX_HWACCEL 0
++#define CONFIG_VVC_VAAPI_HWACCEL 0
+#define CONFIG_WMV3_D3D11VA_HWACCEL 0
+#define CONFIG_WMV3_D3D11VA2_HWACCEL 0
+#define CONFIG_WMV3_D3D12VA_HWACCEL 0
@@ -6371,13 +6849,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 2025-01-14 12:35:46.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/bsf_list.c 2025-02-07 10:58:54.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 2025-01-14 12:35:46.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/codec_list.c 2025-02-07 10:58:54.000000000 +0000
@@ -0,0 +1,15 @@
+static const FFCodec * const codec_list[] = {
+ &ff_flac_decoder,
@@ -6396,7 +6874,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 2025-01-14 12:35:46.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/parser_list.c 2025-02-07 10:58:54.000000000 +0000
@@ -0,0 +1,7 @@
+static const AVCodecParser * const parser_list[] = {
+ &ff_flac_parser,
@@ -6407,7 +6885,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 2025-01-14 12:35:46.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/demuxer_list.c 2025-02-07 10:58:54.000000000 +0000
@@ -0,0 +1,8 @@
+static const FFInputFormat * const demuxer_list[] = {
+ &ff_flac_demuxer,
@@ -6419,19 +6897,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 2025-01-14 12:35:46.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/muxer_list.c 2025-02-07 10:58:54.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 2025-01-14 12:35:46.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/protocol_list.c 2025-02-07 10:58:54.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 2025-01-14 12:35:46.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/avconfig.h 2025-02-07 10:58:54.000000000 +0000
@@ -0,0 +1,6 @@
+/* Generated by ffmpeg configure */
+#ifndef AVUTIL_AVCONFIG_H
@@ -6441,16 +6919,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 2025-01-14 12:35:46.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/ffversion.h 2025-02-07 10:58:54.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-10-31-591ae4b02e"
++#define FFMPEG_VERSION "git-2024-12-13-d10a0f8"
+#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-12-18 22:01:41.000000000 +0000
-+++ b/third_party/ffmpeg/chromium/scripts/copy_config.sh 2025-01-14 12:33:32.000000000 +0000
+--- a/third_party/ffmpeg/chromium/scripts/copy_config.sh 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/chromium/scripts/copy_config.sh 2025-02-07 10:53:40.000000000 +0000
@@ -10,7 +10,7 @@
# Copy config files for various architectures:
# - ia32/x64 have config.asm, config.h
@@ -6461,8 +6939,8 @@ 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-12-18 22:01:41.000000000 +0000
-+++ b/third_party/ffmpeg/ffmpeg_generated.gni 2025-01-14 12:35:22.000000000 +0000
+--- a/third_party/ffmpeg/ffmpeg_generated.gni 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/ffmpeg_generated.gni 2025-02-07 10:58:00.000000000 +0000
@@ -1,4 +1,4 @@
-# Copyright 2024 The Chromium Authors. All rights reserved.
+# Copyright 2025 The Chromium Authors. All rights reserved.
@@ -6523,7 +7001,15 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavcodec/vp9_parser.c",
"libavcodec/xiph.c",
"libavformat/allformats.c",
-@@ -145,12 +144,7 @@
+@@ -107,6 +106,7 @@
+ "libavformat/dovi_isom.c",
+ "libavformat/dump.c",
+ "libavformat/dv.c",
++ "libavformat/dvdclut.c",
+ "libavformat/flac_picture.c",
+ "libavformat/format.c",
+ "libavformat/id3v1.c",
+@@ -145,12 +145,7 @@
"libavutil/aes.c",
"libavutil/aes_ctr.c",
"libavutil/ambient_viewing_environment.c",
@@ -6536,7 +7022,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavutil/autorename_libavutil_utils.c",
"libavutil/autorename_libavutil_version.c",
"libavutil/avstring.c",
-@@ -159,6 +153,7 @@
+@@ -159,6 +154,7 @@
"libavutil/buffer.c",
"libavutil/camellia.c",
"libavutil/channel_layout.c",
@@ -6544,7 +7030,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavutil/crc.c",
"libavutil/csp.c",
"libavutil/detection_bbox.c",
-@@ -172,12 +167,15 @@
+@@ -172,12 +168,15 @@
"libavutil/fifo.c",
"libavutil/file_open.c",
"libavutil/film_grain_params.c",
@@ -6560,7 +7046,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavutil/integer.c",
"libavutil/intmath.c",
"libavutil/lfg.c",
-@@ -195,6 +193,11 @@
+@@ -195,6 +194,11 @@
"libavutil/random_seed.c",
"libavutil/rational.c",
"libavutil/reverse.c",
@@ -6572,7 +7058,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavutil/samplefmt.c",
"libavutil/sha.c",
"libavutil/slicethread.c",
-@@ -207,22 +210,41 @@
+@@ -207,22 +211,41 @@
"libavutil/timestamp.c",
"libavutil/twofish.c",
"libavutil/tx.c",
@@ -6620,7 +7106,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavcodec/h2645_parse.c",
"libavcodec/h2645_sei.c",
"libavcodec/h2645_vui.c",
-@@ -247,236 +269,30 @@
+@@ -247,236 +270,30 @@
"libavcodec/h264pred.c",
"libavcodec/h264qpel.c",
"libavcodec/h274.c",
@@ -6876,85 +7362,85 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- ffmpeg_c_sources += [ "compat/strtod.c" ]
-}
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
+--- a/third_party/ffmpeg/libavcodec/autorename_libavcodec_parser.c 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_parser.c 2025-02-07 10:57:55.000000000 +0000
@@ -1,2 +1,2 @@
--// 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.
+-// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
++// Automatically generated on Fri Feb 7 10:57:54 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-12-18 22:01:41.000000000 +0000
-+++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_videodsp.c 2025-01-14 12:35:18.000000000 +0000
+--- a/third_party/ffmpeg/libavcodec/autorename_libavcodec_videodsp.c 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_videodsp.c 2025-02-07 10:57:55.000000000 +0000
@@ -1,2 +1,2 @@
--// 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.
+-// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
++// Automatically generated on Fri Feb 7 10:57:54 2025. See crbug.com/495833.
#include "videodsp.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-12-18 22:01:41.000000000 +0000
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_aacdec.c 2025-01-14 12:35:18.000000000 +0000
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_aacdec.c 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_aacdec.c 2025-02-07 10:57:55.000000000 +0000
@@ -1,2 +1,2 @@
--// 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.
+-// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
++// Automatically generated on Fri Feb 7 10:57:54 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-12-18 22:01:41.000000000 +0000
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_flacdec.c 2025-01-14 12:35:18.000000000 +0000
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_flacdec.c 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_flacdec.c 2025-02-07 10:57:55.000000000 +0000
@@ -1,2 +1,2 @@
--// 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.
+-// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
++// Automatically generated on Fri Feb 7 10:57:54 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-12-18 22:01:41.000000000 +0000
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_options.c 2025-01-14 12:35:18.000000000 +0000
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_options.c 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_options.c 2025-02-07 10:57:55.000000000 +0000
@@ -1,2 +1,2 @@
--// 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.
+-// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
++// Automatically generated on Fri Feb 7 10:57:54 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-12-18 22:01:41.000000000 +0000
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_pcm.c 2025-01-14 12:35:18.000000000 +0000
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_pcm.c 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_pcm.c 2025-02-07 10:57:55.000000000 +0000
@@ -1,2 +1,2 @@
--// 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.
+-// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
++// Automatically generated on Fri Feb 7 10:57:54 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-12-18 22:01:41.000000000 +0000
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_utils.c 2025-01-14 12:35:18.000000000 +0000
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_utils.c 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_utils.c 2025-02-07 10:57:55.000000000 +0000
@@ -1,2 +1,2 @@
--// 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.
+-// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
++// Automatically generated on Fri Feb 7 10:57:54 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-12-18 22:01:41.000000000 +0000
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_version.c 2025-01-14 12:35:18.000000000 +0000
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_version.c 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_version.c 2025-02-07 10:57:55.000000000 +0000
@@ -1,2 +1,2 @@
--// 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.
+-// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
++// Automatically generated on Fri Feb 7 10:57:54 2025. See crbug.com/495833.
#include "version.c"
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
+--- a/third_party/ffmpeg/libavutil/autorename_libavutil_executor.c 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/libavutil/autorename_libavutil_executor.c 2025-02-07 10:57:55.000000000 +0000
@@ -1,2 +1,2 @@
--// 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.
+-// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
++// Automatically generated on Fri Feb 7 10:57:54 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-12-18 22:01:41.000000000 +0000
-+++ b/third_party/ffmpeg/libavutil/autorename_libavutil_utils.c 2025-01-14 12:35:18.000000000 +0000
+--- a/third_party/ffmpeg/libavutil/autorename_libavutil_utils.c 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/libavutil/autorename_libavutil_utils.c 2025-02-07 10:57:55.000000000 +0000
@@ -1,2 +1,2 @@
--// 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.
+-// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
++// Automatically generated on Fri Feb 7 10:57:54 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-12-18 22:01:41.000000000 +0000
-+++ b/third_party/ffmpeg/libavutil/autorename_libavutil_version.c 2025-01-14 12:35:18.000000000 +0000
+--- a/third_party/ffmpeg/libavutil/autorename_libavutil_version.c 2025-02-03 19:02:21.000000000 +0000
++++ b/third_party/ffmpeg/libavutil/autorename_libavutil_version.c 2025-02-07 10:57:55.000000000 +0000
@@ -1,2 +1,2 @@
--// 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.
+-// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
++// Automatically generated on Fri Feb 7 10:57:54 2025. See crbug.com/495833.
#include "version.c"
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
++++ b/third_party/ffmpeg/libavutil/riscv/autorename_libavutil_riscv_cpu.c 2025-02-07 10:57:55.000000000 +0000
@@ -0,0 +1,2 @@
-+// Automatically generated on Tue Jan 14 12:35:17 2025. See crbug.com/495833.
++// Automatically generated on Fri Feb 7 10:57:54 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 cf8cbfb..15bce88 100644
--- a/www-client/chromium/files/riscv-misc.patch
+++ b/www-client/chromium/files/riscv-misc.patch
@@ -1,7 +1,7 @@
-Index: chromium-132.0.6834.83/components/metrics/debug/metrics_internals_utils.cc
+Index: chromium-133.0.6943.53/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
+--- chromium-133.0.6943.53.orig/components/metrics/debug/metrics_internals_utils.cc
++++ chromium-133.0.6943.53/components/metrics/debug/metrics_internals_utils.cc
@@ -69,6 +69,8 @@ std::string CpuArchitectureToString(
return "arm32";
case variations::Study::TRANSLATED_X86_64:
@@ -11,10 +11,10 @@ Index: chromium-132.0.6834.83/components/metrics/debug/metrics_internals_utils.c
}
NOTREACHED();
}
-Index: chromium-132.0.6834.83/components/variations/proto/study.proto
+Index: chromium-133.0.6943.53/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
+--- chromium-133.0.6943.53.orig/components/variations/proto/study.proto
++++ chromium-133.0.6943.53/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,42 +24,18 @@ Index: chromium-132.0.6834.83/components/variations/proto/study.proto
}
// Enum to pass as optional bool.
-Index: chromium-132.0.6834.83/components/variations/service/variations_field_trial_creator_base.cc
+Index: chromium-133.0.6943.53/components/variations/service/variations_field_trial_creator_base.cc
===================================================================
---- 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
+--- chromium-133.0.6943.53.orig/components/variations/service/variations_field_trial_creator_base.cc
++++ chromium-133.0.6943.53/components/variations/service/variations_field_trial_creator_base.cc
+@@ -120,6 +120,9 @@ Study::CpuArchitecture GetCurrentCpuArch
}
return Study::X86_64;
}
+ if (process_arch == "RISCV_64") {
+ return Study::RISCV64;
+ }
- NOTREACHED_IN_MIGRATION();
- return Study::X86_64;
+ NOTREACHED();
}
-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
+
+
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] proj/riscv:master commit in: www-client/chromium/files/, www-client/chromium/
@ 2025-04-06 20:32 Jakov Smolić
0 siblings, 0 replies; 10+ messages in thread
From: Jakov Smolić @ 2025-04-06 20:32 UTC (permalink / raw
To: gentoo-commits
commit: 2acd59c957f851c35cfe41abccd3d8ba8d79f4c2
Author: Andrew Cameron <apcameron <AT> gmail <DOT> com>
AuthorDate: Fri Mar 28 11:45:22 2025 +0000
Commit: Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
CommitDate: Sun Apr 6 20:32:48 2025 +0000
URL: https://gitweb.gentoo.org/proj/riscv.git/commit/?id=2acd59c9
Update Chromium to 134.0.6998.117
Signed-off-by: Andrew Cameron <apcameron <AT> gmail.com>
Closes: https://github.com/gentoo/riscv/pull/28
Signed-off-by: Jakov Smolić <jsmolic <AT> gentoo.org>
www-client/chromium/Manifest | 15 +-
www-client/chromium/chromium-133.0.6943.126.ebuild | 1473 --------------------
...3.141.ebuild => chromium-134.0.6998.117.ebuild} | 333 +++--
.../files/chromium-134-type-mismatch-error.patch | 14 +
.../files/chromium-135-map_droppable-glibc.patch | 27 +
.../chromium-135-oauth2-client-switches.patch | 41 +
www-client/chromium/files/libstdc++-fixup.patch | 75 +-
www-client/chromium/files/riscv-swiftshader.patch | 39 +
www-client/chromium/files/riscv-v8.patch | 821 +++++++++++
.../files/swiftshader-MCDissassembler.patch | 11 -
.../chromium/files/swiftshader-use-llvm16.patch | 11 -
11 files changed, 1187 insertions(+), 1673 deletions(-)
diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
index 7f3258e..41f472c 100644
--- a/www-client/chromium/Manifest
+++ b/www-client/chromium/Manifest
@@ -1,8 +1,11 @@
-DIST chromium-133.0.6943.126-linux-testdata.tar.xz 651001264 BLAKE2B ab44ac16596e6058c119732e0e11e3d86ff6bb845e0d1f28671eedae8279de2052b444f7d68d7d88157d208298b6107351213618c83c1a45b116bac40459f403 SHA512 fca40e7c98e8ef3dda261d7f2499e916880d00e692f681a6e4cb70d43fa669faace2bdacd679b97b53172de220dbdcc843a36d7af841d7c2842e99cec522338b
-DIST chromium-133.0.6943.126-linux.tar.xz 1454004424 BLAKE2B ced53ca553ccd01ec876c402b08112f00de70b411ae719f4959d7824c0bce00648c6f9ce53636b82d85f96f05d6a3784e322aa76fdf53bda2e2d77e019cf8b65 SHA512 24339db4b0da1d392c83a86ee4d8f18f136c3efa706932765352f028e0578610ea4d03606d023cf1b49269067a4b4d575e8c8a4b674582508e6138d5403c8542
-DIST chromium-133.0.6943.141-linux-testdata.tar.xz 650974680 BLAKE2B 00028e5b942a1a5f2393d10acbd6072632649a140599c5d419bd48edb15f4737a059e264bfd2ef6a1fb74901894a69758cba7ffc47d3eca8b6f2a570d6015f60 SHA512 8cf02ed1438ed8edaab5746f101d338962628597340aae039fd276906b080fbacef5a25b7d49f181b3f8bc5887d00efd854dd25a6ffcb9eedf66b8a36124db8c
-DIST chromium-133.0.6943.141-linux.tar.xz 1454239916 BLAKE2B 28379a87137d8162d1981d3a318da5cad1bfd2dd6461a29a049f20babf3a64fe7518057f7af5f33424d0ae4a655fb4b892ba6a82f0a39440e3487570767ae50d SHA512 04ca888078ab3ce4775d0dff9c9d46b342be5bda2fe41493dcf8695fa9b52ed749455275cfc4bba234a10fbe6df0eeac3d8bb2f8d73ca1250a142c58944ff6d9
-DIST chromium-openpower-deefc994ce.tar.bz2 394232 BLAKE2B 421b956493d964543c153ad6fb01798a8fa7331638ce9a2f414be1b77c029634e84a72c069a41b88f176f66611df0deb30a3af4061882d9ebf4ae8dc997a4cb9 SHA512 1f0a9c98dfe7441af14e14d8c2ddc0c7d393a56f392eef0782bec6c80d0742c1761fff3d3f6e3248cd8a3f3da0c10e675a7552ce240399088721f86b275b1d16
-DIST chromium-patches-133-2.tar.bz2 10895 BLAKE2B dafd0e4edd2869edaf86407365b97bab699602b5e70a53f88e4e5bec5c2d2b37b64c96559c7e955d0bf3faadb26beb486ac6f0a91b90ff19e52d68deab22f447 SHA512 9de1269527196f8c5d8e40bd20a5566d76a8311f12a33e3a6a67854993d4db5915d5b8d1e1fefa179ad1c8aff8b5454379b338a6e6a54d541c38c737e57b589b
+DIST chromium-134.0.6998.117-linux-testdata.tar.xz 653772892 BLAKE2B 145c4352deab97fcfe9c560646389cf596faaaae7d13c17f06a349c076048da2dfbbc88aba85a4335702a7f25136570a7e780c9e08fb21587242d0284acafcf3 SHA512 6445ab8a2e7efae2862a050cef12a0169d0e9f1d1b0853dccaffb438be20d6d442b11f83752e63baba4dae210097f51285493ccb5aba14350df05abc2a5c7fe4
+DIST chromium-134.0.6998.117-linux.tar.xz 1466183312 BLAKE2B 717948a59f5c7f11a76055f3a9b5a54c9836c5d6ff1a25804701dfe8bfd725187507f0d9485bfddbc574acc122170341c1e88110eba30e67b289a726da47d1bc SHA512 edfc60d1af58117ba5f0276051cf545800f1d4338189757c3ce76007a2ac425fedcef0c8fd14059e2a3c51b047186dc7ed6fb57291f2ab61b7d28907245bbbbd
+DIST chromium-134.0.6998.35-linux-testdata.tar.xz 653357556 BLAKE2B 0e34c31210e1bfc6aa2cc6d79d9cf1e9fcdb9d1693be867438cfc639a8461203d96cdf159624d81020611eb9dc3a51958af4d7ab8d30c46f2b98a9eb2a1a303b SHA512 ab36342b045ff796f4b200d25e2a259b2a65e93d6bc32dc30f001e0c5709047bc937023abcfbe748f9a567d0df18bc188c7bbfd24d142d9f6e63c26b350647f6
+DIST chromium-134.0.6998.35-linux.tar.xz 1463053644 BLAKE2B 28af05a5b650495174b2240a42b5f0073a30da7094170b80a8ea1d000b306d408e0b58772e8928b6dd110f815430a6725fddf7e1e7ee8073c6b343bee189e556 SHA512 f9da9256ef4518e53c139c6c074b6b4fe10f028e37ebee488a95ed84d6ed47acf802a9316eb215d9f2b3ebb8f1bc70ef837334256272e9f13fc3674ec36f1336
+DIST chromium-clang-llvmorg-20-init-17108-g29ed6000-3.tar.xz 54170388 BLAKE2B 1383726ef2977ddb6ca9cef7eb7f5730e9635c570c1e20c3103922242e012579b87cf7ada668a6dedec375fa821115e5c79c32b12ab486a9e427f2e00344cfdc SHA512 a2aee165ee5581f442af222b23182370349a3b0b5412d05600c2d2258f31449e986bb7e88601b26049b4a926b15938238bfe8abd01ff6eaf2df84a64812007a1
+DIST chromium-openpower-7d1ac28278.tar.bz2 390422 BLAKE2B b2e135ca43a0605ef5aa1bc46a2794a1bb8fb0e74dec6172d022453dc680ecec4d2cf6b23035634bfa0891b19e3dfdb980da73205c0c6d2e92179d154014feeb SHA512 c684bab2fe1857164d007a5e3e7b3892cab2c94214ff4395149d327bdb85f1d5196a91b8b4bd0da04c5ba32a86dfad42674c6cca743f4e02a6b7213d7514c1b3
+DIST chromium-openpower-a85b64f07b.tar.bz2 387899 BLAKE2B b01fda2d64ce73068d1536a10cc0896f07a4b714cdb25698b1df8b3252baa0c21c4209b307cf1cb554854f6d0bfe3cd35e06aaa8d02ac5d409a119335084c324 SHA512 05eee81677e8766808441c939bee68e2e6c58ec91f471d88a40181d2eda78614a0a6d27d92ff8f9dda564d12f3451bace4ff2727594748c5c238a3533038019b
+DIST chromium-patches-134-1.tar.bz2 10440 BLAKE2B 5755ed6a20b141d33015a3959b273ca0df079f891513e4d83f356a882d51702dbba697c950b3fd9c68e37500240d18abfa99d0246b1b847a8d8109dbe7d4dd05 SHA512 294276f13c1f3e46a552ea856237fa028568bef1e72d1600ba63a3d17365385f6a6073367a7d4fde99202272d906894a2208390682576392fe40a3489d58851b
DIST chromium-profiler-0.2.tar 259952640 BLAKE2B 5e82389fce00b267280d633b26551231c558b80f0c92cd7d60271095a3503365ab673e7a46dc5f74f8a82db1f21262cb24dcc0531d954bab5fb3b175dab3394d SHA512 9fa89a5ab728419683e7495ae676567480987d68a2d589f2aa97bfcbcf123f3c8f97f8bca5f65e5e3f6e41475535add473ded83b9c7a33bb4746a9d05b298a6c
+DIST chromium-rust-toolchain-ad211ced81-1-llvmorg-20-init-17108-g29ed6000.tar.xz 124591376 BLAKE2B c062e7283994ef15055a37f66a1c01dfcbcf03d16b7de48e7d017cec479f306999112dcd0f016157cfd0334349b55ae29512be3063dc6c3de90311520e90a5c1 SHA512 09be07ff0adfcc2928b28f5763a7e18bb7ef1f0cbf4a2475e3e6ae19a0a310a4a8f323375b947a48247853412119781bc9fa1422e24b96423c071f68337d6766
DIST chromium-testfonts-f26f29c9d3.tar.gz 32750602 BLAKE2B 498f8b2e0811c98dc3d4aaa75559e69c782afb4bd12328cfdb7244ddba5cae7ee47becd27b2549d7b36bed417601f70f4c192934b0f08496cef1547d0502d93c SHA512 96b090446862997c8134e2971f0e38793ecc1208d547e554c9b651ccfb4127c4de86754903fea57a7292a2823c45117bae0ec13ed87aed20c248fb779579fbde
diff --git a/www-client/chromium/chromium-133.0.6943.126.ebuild b/www-client/chromium/chromium-133.0.6943.126.ebuild
deleted file mode 100644
index 4b858d5..0000000
--- a/www-client/chromium/chromium-133.0.6943.126.ebuild
+++ /dev/null
@@ -1,1473 +0,0 @@
-# Copyright 2009-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# PACKAGING NOTES
-
-# 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.py
-TEST_FONT=f26f29c9d3bfae588207bbc9762de8d142e58935c62a86f67332819b15203b35
-
-VIRTUALX_REQUIRED="pgo"
-
-CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- 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=( 19 )
-PYTHON_COMPAT=( python3_{11..13} )
-PYTHON_REQ_USE="xml(+)"
-RUST_MIN_VER=1.78.0
-RUST_NEEDS_LLVM="yes please"
-
-inherit check-reqs chromium-2 desktop flag-o-matic llvm-r1 multiprocessing ninja-utils pax-utils
-inherit python-any-r1 readme.gentoo-r1 rust systemd toolchain-funcs virtualx xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://www.chromium.org/"
-PPC64_HASH="deefc994ce2d31faf6d27f5e81782e039c663aed"
-PATCH_V="${PV%%\.*}-2"
-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
- 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://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"
-# 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+=" qt6 +screencast selinux test +vaapi +wayland +widevine"
-RESTRICT="
- !bindist? ( bindist )
- !test? ( test )
-"
-
-REQUIRED_USE="
- !headless? ( || ( X wayland ) )
- pgo? ( X !wayland )
- screencast? ( wayland )
- ffmpeg-chromium? ( bindist proprietary-codecs )
-"
-
-COMMON_X_DEPEND="
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxshmfence:=
-"
-
-COMMON_SNAPSHOT_DEPEND="
- system-icu? ( >=dev-libs/icu-73.0:= )
- >=dev-libs/libxml2-2.12.4:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- dev-libs/libxslt:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-3:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- system-png? ( media-libs/libpng:=[-apng(-)] )
- system-zstd? ( >=app-arch/zstd-1.5.5:= )
- >=media-libs/libwebp-0.4.0:=
- media-libs/mesa:=[gbm(+)]
- >=media-libs/openh264-1.6.0:=
- sys-libs/zlib:=
- !headless? (
- dev-libs/glib:2
- >=media-libs/alsa-lib-1.0.19:=
- pulseaudio? ( media-libs/libpulse:= )
- sys-apps/pciutils:=
- kerberos? ( virtual/krb5 )
- vaapi? ( >=media-libs/libva-2.7:=[X?,wayland?] )
- X? (
- x11-base/xorg-proto:=
- x11-libs/libX11:=
- x11-libs/libxcb:=
- x11-libs/libXext:=
- )
- x11-libs/libxkbcommon:=
- wayland? (
- dev-libs/libffi:=
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:= )
- )
- )
-"
-
-COMMON_DEPEND="
- ${COMMON_SNAPSHOT_DEPEND}
- app-misc/jq:=
- app-arch/bzip2:=
- dev-libs/expat:=
- net-misc/curl[ssl]
- sys-apps/dbus:=
- media-libs/flac:=
- sys-libs/zlib:=[minizip]
- !headless? (
- X? ( ${COMMON_X_DEPEND} )
- >=app-accessibility/at-spi2-core-2.46.0:2
- media-libs/mesa:=[X?,wayland?]
- cups? ( >=net-print/cups-1.3.11:= )
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/pango:=
- qt6? ( dev-qt/qtbase:6[gui,widgets] )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- !headless? (
- || (
- x11-libs/gtk+:3[X?,wayland?]
- gui-libs/gtk:4[X?,wayland?]
- )
- qt6? ( dev-qt/qtbase:6[X?,wayland?] )
- )
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- bindist? (
- !ffmpeg-chromium? ( >=media-video/ffmpeg-6.1-r1:0/58.60.60[chromium] )
- ffmpeg-chromium? ( media-video/ffmpeg-chromium:${PV%%\.*} )
- )
-"
-DEPEND="${COMMON_DEPEND}
- !headless? (
- gtk4? ( gui-libs/gtk:4[X?,wayland?] )
- !gtk4? ( x11-libs/gtk+:3[X?,wayland?] )
- )
-"
-
-BDEPEND="
- ${COMMON_SNAPSHOT_DEPEND}
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- !headless? (
- qt6? ( dev-qt/qtbase:6 )
- )
- $(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] ) )
- )
- ')
- 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
- >=dev-util/gperf-3.0.3
- dev-vcs/git
- >=net-libs/nodejs-7.6.0[inspector]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
-"
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- python_has_version "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- # Check build requirements: bugs #471810, #541816, #914220
- # We're going to start doing maths here on the size of an unpacked source tarball,
- # this should make updates easier as chromium continues to balloon in size.
- local BASE_DISK=24
- local EXTRA_DISK=1
- local CHECKREQS_MEMORY="4G"
- tc-is-cross-compiler && EXTRA_DISK=2
- if tc-is-lto || use pgo; then
- CHECKREQS_MEMORY="9G"
- tc-is-cross-compiler && EXTRA_DISK=4
- use pgo && EXTRA_DISK=8
- fi
- if is-flagq '-g?(gdb)?([1-9])'; then
- if use custom-cflags; then
- EXTRA_DISK=13
- fi
- CHECKREQS_MEMORY="16G"
- fi
- CHECKREQS_DISK_BUILD="$((BASE_DISK + EXTRA_DISK))G"
- check-reqs_${EBUILD_PHASE_FUNC}
-}
-
-pkg_pretend() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- # The pre_build_checks are all about compilation resources, no need to run it for a binpkg
- pre_build_checks
- fi
-
- if use headless; then
- local headless_unused_flags=("cups" "kerberos" "pulseaudio" "qt6" "vaapi" "wayland")
- for myiuse in ${headless_unused_flags[@]}; do
- use ${myiuse} && ewarn "Ignoring USE=${myiuse}, USE=headless is set."
- done
- fi
-
- if ! use bindist && use ffmpeg-chromium; then
- ewarn "Ignoring USE=ffmpeg-chromium, USE=bindist is not set."
- fi
-}
-
-pkg_setup() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- # The pre_build_checks are all about compilation resources, no need to run it for a binpkg
- pre_build_checks
-
- # 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
-
- 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
-
- if [ "$use_lto" = "false" ] && use test; then
- die "Tests require CFI which requires LTO"
- fi
-
- export use_lto
-
- # 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"
- fi
- fi
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_unpack() {
- 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-openpower-${PPC64_HASH:0:10}.tar.bz2
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-cross-compile.patch"
- "${FILESDIR}/chromium-109-system-zlib.patch"
- "${FILESDIR}/chromium-111-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-131-unbundle-icu-target.patch"
- "${FILESDIR}/chromium-131-oauth2-client-switches.patch"
- "${FILESDIR}/chromium-132-bindgen-custom-toolchain.patch"
- "${FILESDIR}/chromium-134-qt5-optional.patch"
- "${FILESDIR}/chromium-134-map_droppable-glibc.patch"
- "${FILESDIR}/chromium-135-fix-non-wayland-build.patch"
- "${FILESDIR}/swiftshader-MCDissassembler.patch"
- "${FILESDIR}/swiftshader-use-llvm16.patch"
- "${FILESDIR}/Debian-fix-rust-linking.patch"
- "${FILESDIR}/riscv-dav1d.patch"
- "${FILESDIR}/riscv-sandbox.patch"
- "${FILESDIR}/riscv-ffmpeg.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"
- )
-
- 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
- # We can't use the bundled compiler builtins with the system toolchain
- # `grep` is a development convenience to ensure we fail early when google changes something.
- local builtins_match="if (is_clang && !is_nacl && !is_cronet_build) {"
- grep -q "${builtins_match}" build/config/compiler/BUILD.gn || die "Failed to disable bundled compiler builtins"
- sed -i -e "/${builtins_match}/,+2d" build/config/compiler/BUILD.gn
-
- if use ppc64; then
- local 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 isa 3.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
-
- # 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
-
- # Not included in -lite tarballs, but we should check for it anyway.
- if [[ -f third_party/node/linux/node-linux-x64/bin/node ]]; then
- rm third_party/node/linux/node-linux-x64/bin/node || die
- else
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- fi
- 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
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/ceval
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/volk
- third_party/anonymous_tokens
- third_party/apple_apsl
- third_party/axe-core
- third_party/bidimapper
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/content_analysis_sdk
- third_party/cpuinfo
- third_party/crabbyavif
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/d3
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/gn/webgpu-cts
- third_party/dawn/third_party/khronos
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/additional_readme_paths.json
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/csp_evaluator
- 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/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
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fast_float
- third_party/fdlibm
- third_party/ffmpeg
- third_party/fft2d
- third_party/flatbuffers
- third_party/fp16
- third_party/freetype
- third_party/fusejs
- third_party/fuzztest
- third_party/fxdiv
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- 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
- third_party/jsoncpp
- third_party/khronos
- third_party/lens_server_proto
- third_party/leveldatabase
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/SVT-AV1
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libc++
- third_party/libdrm
- third_party/libgav1
- third_party/libjingle
- third_party/libphonenumber
- 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
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- 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
- third_party/mako
- third_party/markupsafe
- third_party/material_color_utilities
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/omnibox_proto
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/opus
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg
- third_party/pdfium/third_party/libtiff
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/perfetto/protos/third_party/simpleperf
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private_membership
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/pthreadpool
- third_party/puffin
- third_party/pyjson5
- third_party/pyyaml
- third_party/rapidhash
- third_party/re2
- third_party/rnnoise
- third_party/rust
- third_party/ruy
- third_party/s2cellid
- third_party/securemessage
- third_party/selenium-atoms
- third_party/sentencepiece
- third_party/sentencepiece/src/third_party/darts_clone
- third_party/shell-encryption
- third_party/simdutf
- third_party/simplejson
- third_party/six
- third_party/skia
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/snappy
- third_party/spirv-headers
- third_party/spirv-tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv
- third_party/swiftshader/third_party/SPIRV-Tools
- third_party/swiftshader/third_party/subzero
- third_party/tensorflow_models
- third_party/tensorflow-text
- third_party/tflite
- 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/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
- third_party/vulkan
- third_party/wasm_tts_engine
- third_party/wayland
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/xnnpack
- third_party/zlib/google
- third_party/zxcvbn-cpp
- url/third_party/mozilla
- v8/third_party/glibc
- v8/third_party/inspector_protocol
- v8/third_party/siphash
- v8/third_party/utf8-decoder
- v8/third_party/v8
- v8/third_party/valgrind
-
- # gyp -> gn leftovers
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
-
- if use test; then
- # tar tvf /var/cache/distfiles/${P}-linux-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 )
- fi
-
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
-
- if ! use system-png; then
- keeplibs+=( third_party/libpng )
- fi
-
- if ! use system-zstd; then
- keeplibs+=( third_party/zstd )
- fi
-
- # Arch-specific
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- if use riscv ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-16.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- # requires git and clang, bug #832803
- # Revert https://chromium.googlesource.com/chromium/src/+/b463d0f40b08b4e896e7f458d89ae58ce2a27165%5E%21/third_party/libvpx/generate_gni.sh
- # and https://chromium.googlesource.com/chromium/src/+/71ebcbce867dd31da5f8b405a28fcb0de0657d91%5E%21/third_party/libvpx/generate_gni.sh
- # since we're not in a git repo
- sed -i -e "s|^update_readme||g; s|clang-format|${EPREFIX}/bin/true|g; /^git -C/d; /git cl/d; /cd \$BASE_DIR\/\$LIBVPX_SRC_DIR/ign format --in-place \$BASE_DIR\/BUILD.gn\ngn format --in-place \$BASE_DIR\/libvpx_srcs.gni" \
- generate_gni.sh || die
- ./generate_gni.sh || die
- popd >/dev/null || die
-
- pushd third_party/ffmpeg >/dev/null || die
- cp libavcodec/ppc/h264dsp.c libavcodec/ppc/h264dsp_ppc.c || die
- cp libavcodec/ppc/h264qpel.c libavcodec/ppc/h264qpel_ppc.c || die
- popd >/dev/null || die
- fi
-
- # 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
-}
-
-chromium_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # We already forced the "correct" clang via pkg_setup
-
- 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
-
- 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"
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- myconf_gn+=" custom_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
-
- # 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"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=false"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libjpeg
- libwebp
- libxml
- libxslt
- openh264
- zlib
- )
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-png; then
- gn_system_libraries+=( libpng )
- fi
- if use system-zstd; then
- gn_system_libraries+=( zstd )
- fi
-
- 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)"
-
- # Optional dependencies.
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
-
- if use headless; then
- myconf_gn+=" use_cups=false"
- myconf_gn+=" use_kerberos=false"
- myconf_gn+=" use_pulseaudio=false"
- myconf_gn+=" use_vaapi=false"
- myconf_gn+=" rtc_use_pipewire=false"
- else
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
- myconf_gn+=" gtk_version=$(usex gtk4 4 3)"
- fi
-
- # Allows distributions to link pulseaudio directly (DT_NEEDED) instead of
- # using dlopen. This helps with automated detection of ABI mismatches and
- # prevents silent errors.
- if use pulseaudio; then
- myconf_gn+=" link_pulseaudio=true"
- fi
-
- # Non-developer builds of Chromium (for example, non-Chrome browsers, or
- # Chromium builds provided by Linux distros) should disable the testing config
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # The sysroot is the oldest debian image that chromium supports, we don't need it
- myconf_gn+=" use_sysroot=false"
-
- # Use in-tree libc++ (buildtools/third_party/libc++ and buildtools/third_party/libc++abi)
- # instead of the system C++ library for C++ standard library support.
- # default: true, but let's be explicit (forced since 120 ; USE removed 127).
- myconf_gn+=" use_custom_libcxx=true"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- if use bindist ; then
- # proprietary_codecs just forces Chromium to say that it can use h264/aac,
- # the work is still done by ffmpeg. If this is set to no Chromium
- # won't be able to load the codec even if the library can handle it
- myconf_gn+=" proprietary_codecs=true"
- myconf_gn+=" ffmpeg_branding=\"Chrome\""
- # build ffmpeg as an external component (libffmpeg.so) that we can remove / substitute
- myconf_gn+=" is_component_ffmpeg=true"
- else
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
- fi
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- filter-flags "-g*"
-
- # Prevent libvpx/xnnpack build failures. Bug 530248, 544702, 546984, 853646.
- if [[ ${myarch} == amd64 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4 -mno-xop -mno-sse4a
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- elif [[ $myarch = riscv ]] ; then
- myconf_gn+=" target_cpu=\"riscv64\""
- ffmpeg_target_arch=riscv64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- myconf_gn+=" treat_warnings_as_errors=false"
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Disable external code space for V8 for ppc64. It is disabled for ppc64
- # by default, but cross-compiling on amd64 enables it again.
- if tc-is-cross-compiler; then
- if ! use amd64 && ! use arm64; then
- myconf_gn+=" v8_enable_external_code_space=false"
- fi
- fi
-
- # Only enabled for clang, but gcc has endian macros too
- myconf_gn+=" v8_use_libm_trig_functions=true"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- # We don't use the same clang version as upstream, and with -Werror
- # we need to make sure that we don't get superfluous warnings.
- append-flags -Wno-unknown-warning-option
- if tc-is-cross-compiler; then
- export BUILD_CXXFLAGS+=" -Wno-unknown-warning-option"
- export BUILD_CFLAGS+=" -Wno-unknown-warning-option"
- fi
-
- # Explicitly disable ICU data file support for system-icu/headless builds.
- if use system-icu || use headless; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # 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"
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_xkbcommon=false use_gtk=false use_qt=false"
- myconf_gn+=" use_glib=false use_gio=false"
- myconf_gn+=" use_pangocairo=false use_alsa=false"
- myconf_gn+=" use_libpci=false use_udev=false"
- myconf_gn+=" enable_print_preview=false"
- myconf_gn+=" enable_remoting=false"
- else
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" use_qt5=false"
- if use qt6; then
- myconf_gn+=" use_qt6=true"
- local cbuild_libdir=$(get_libdir)
- if tc-is-cross-compiler; then
- # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
- local cbuild_libdir=$($(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libxslt)
- cbuild_libdir=${cbuild_libdir:2}
- cbuild_libdir=${cbuild_libdir/% }
- fi
- myconf_gn+=" moc_qt6_path=\"${EPREFIX}/usr/${cbuild_libdir}/qt6/libexec\""
- else
- myconf_gn+=" use_qt6=false"
- fi
- myconf_gn+=" ozone_platform_x11=$(usex X true false)"
- myconf_gn+=" ozone_platform_wayland=$(usex wayland true false)"
- myconf_gn+=" ozone_platform=$(usex wayland \"wayland\" \"x11\")"
- use wayland && myconf_gn+=" use_system_libffi=true"
- fi
-
- myconf_gn+=" use_thin_lto=${use_lto}"
- myconf_gn+=" thin_lto_enable_optimizations=${use_lto}"
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- if use official; then
- # 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
- 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
-
- if use pgo; then
- myconf_gn+=" chrome_pgo_phase=${1}"
- if [[ "$1" == "2" ]]; then
- myconf_gn+=" pgo_data_path=\"${2}\""
- fi
- else
- # Disable PGO
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- # skipping typecheck is only supported on amd64, bug #876157
- if ! use amd64; then
- myconf_gn+=" devtools_skip_typecheck=false"
- fi
-
- einfo "Configuring Chromium ..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_configure() {
- chromium_configure $(usex pgo 1 0)
-}
-
-chromium_compile() {
-
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- # Build mksnapshot and pax-mark it.
- if use pax-kernel; then
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
- fi
-
- # 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 $(use test && echo "base_unittests")
-
- pax-mark m out/Release/chrome
-
-}
-
-# This function is called from virtx, and must always return so that Xvfb
-# session isn't left running. If we return 1, virtx will call die().
-chromium_profile() {
- einfo "Profiling for PGO"
-
- pushd "${WORKDIR}/chromium-profiler-"* >/dev/null || return 1
-
- # Remove old profdata in case profiling was interrupted.
- rm -rf "${1}" || return 1
-
- if ! "${EPYTHON}" ./chromium_profiler.py \
- --chrome-executable "${S}/out/Release/chrome" \
- --chromedriver-executable "${S}/out/Release/chromedriver.unstripped" \
- --add-arg no-sandbox --add-arg disable-dev-shm-usage \
- --profile-output "${1}"; then
- eerror "Profiling failed"
- return 1
- fi
-
- popd >/dev/null || return 1
-}
-
-src_compile() {
- if use pgo; then
- local profdata
-
- profdata="${WORKDIR}/chromium.profdata"
-
- if [[ ! -e "${WORKDIR}/.pgo-profiled" ]]; then
- chromium_compile
- virtx chromium_profile "$profdata"
-
- touch "${WORKDIR}/.pgo-profiled" || die
- fi
-
- if [[ ! -e "${WORKDIR}/.pgo-phase-2-configured" ]]; then
- # Remove phase 1 output
- rm -r out/Release || die
-
- chromium_configure 2 "$profdata"
-
- touch "${WORKDIR}/.pgo-phase-2-configured" || die
- fi
-
- if [[ ! -e "${WORKDIR}/.pgo-phase-2-compiled" ]]; then
- chromium_compile
- touch "${WORKDIR}/.pgo-phase-2-compiled" || die
- fi
- else
- chromium_compile
- fi
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- rm -f out/Release/locales/*.pak.info || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build vk_swiftshader_icd.json; bug #827861
- sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
- third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
- 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
- CancelableEventTest.BothCancelFailureAndSucceedOccurUnderContention #new m133: TODO investigate
- )
- 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}"
- doexe out/Release/chrome
-
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use X && use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
-
- if use bindist; then
- # We built libffmpeg as a component library, but we can't distribute it
- # with proprietary codec support. Remove it and make a symlink to the requested
- # system library.
- rm -f out/Release/libffmpeg.so \
- || die "Failed to remove bundled libffmpeg.so (with proprietary codecs)"
- # symlink the libffmpeg.so from either ffmpeg-chromium or ffmpeg[chromium].
- einfo "Creating symlink to libffmpeg.so from $(usex ffmpeg-chromium ffmpeg-chromium ffmpeg[chromium])..."
- dosym ../chromium/libffmpeg.so$(usex ffmpeg-chromium .${PV%%\.*} "") \
- /usr/$(get_libdir)/chromium-browser/libffmpeg.so
- fi
-
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- # Install bundled xdg-utils, avoids installing X11 libraries with USE="-X wayland"
- doins out/Release/xdg-{settings,mime}
-
- if ! use system-icu && ! use headless; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/MEIPreload
-
- # Install vk_swiftshader_icd.json; bug #827861
- doins out/Release/vk_swiftshader_icd.json
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if ! use headless; then
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-features=WebRTCPipeWireCapturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
- if use gtk4; then
- elog "Chromium prefers GTK3 over GTK4 at runtime. To override this"
- elog "behavior you need to pass --gtk-version=4, e.g. by adding it"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
- fi
-
- if systemd_is_booted && ! [[ -f "/etc/machine-id" ]]; then
- ewarn "The lack of an '/etc/machine-id' file on this system booted with systemd"
- ewarn "indicates that the Gentoo handbook was not followed to completion."
- ewarn ""
- ewarn "Chromium is known to behave unpredictably with this system configuration;"
- ewarn "please complete the configuration of this system before logging any bugs."
- fi
-}
diff --git a/www-client/chromium/chromium-133.0.6943.141.ebuild b/www-client/chromium/chromium-134.0.6998.117.ebuild
similarity index 81%
rename from www-client/chromium/chromium-133.0.6943.141.ebuild
rename to www-client/chromium/chromium-134.0.6998.117.ebuild
index b4f6f5e..66926bc 100644
--- a/www-client/chromium/chromium-133.0.6943.141.ebuild
+++ b/www-client/chromium/chromium-134.0.6998.117.ebuild
@@ -5,12 +5,29 @@ EAPI=8
# PACKAGING NOTES
-# This uses a gentoo-created tarball due to Google CI Failures.
-# Use 133(?) as a base for new official tarballs.
+# Upstream 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 may eventually hit the point where we need to use
+# the bundled Clang due to the use of prerelease features.
-GN_MIN_VER=0.2165
+# USE=bundled-toolchain is intended for users who want to use the same toolchain
+# as the upstream releases. It's also a good fallback in case we fall behind
+# and need to get a release out quickly (less likely with `dev` in-tree).
+
+# Since m133 we are using CI-generated tarballs from
+# https://github.com/chromium-linux-tarballs/chromium-tarballs/ (uploaded to S3
+# and made available via https://chromium-tarballs.distfiles.gentoo.org/).
+
+# We do this because upstream tarballs weigh in at about 3.5x the size of our
+# new "Distro tarballs" and include binaries (etc) that are not useful for
+# downstream consumers (like distributions).
+
+GN_MIN_VER=0.2207
# chromium-tools/get-chromium-toolchain-strings.py
TEST_FONT=f26f29c9d3bfae588207bbc9762de8d142e58935c62a86f67332819b15203b35
+BUNDLED_CLANG_VER=llvmorg-20-init-17108-g29ed6000-3
+BUNDLED_RUST_VER=ad211ced81509462cdfe4c29ed10f97279a0acae-1
+RUST_SHORT_HASH=${BUNDLED_RUST_VER:0:10}-${BUNDLED_RUST_VER##*-}
VIRTUALX_REQUIRED="pgo"
@@ -23,16 +40,25 @@ PYTHON_COMPAT=( python3_{11..13} )
PYTHON_REQ_USE="xml(+)"
RUST_MIN_VER=1.78.0
RUST_NEEDS_LLVM="yes please"
+RUST_OPTIONAL="yes" # Not actually optional, but we don't need system Rust (or LLVM) with USE=bundled-toolchain
inherit check-reqs chromium-2 desktop flag-o-matic llvm-r1 multiprocessing ninja-utils pax-utils
inherit python-any-r1 readme.gentoo-r1 rust systemd toolchain-funcs virtualx xdg-utils
DESCRIPTION="Open-source version of Google Chrome web browser"
HOMEPAGE="https://www.chromium.org/"
-PPC64_HASH="deefc994ce2d31faf6d27f5e81782e039c663aed"
-PATCH_V="${PV%%\.*}-2"
+PPC64_HASH="7d1ac28278b5679d0b950ebd380bdd889b319592"
+PATCH_V="${PV%%\.*}-1"
SRC_URI="https://chromium-tarballs.distfiles.gentoo.org/${P}-linux.tar.xz
+ !bundled-toolchain? (
https://gitlab.com/Matt.Jolly/chromium-patches/-/archive/${PATCH_V}/chromium-patches-${PATCH_V}.tar.bz2
+ )
+ bundled-toolchain? (
+ https://gsdview.appspot.com/chromium-browser-clang/Linux_x64/clang-${BUNDLED_CLANG_VER}.tar.xz
+ -> chromium-clang-${BUNDLED_CLANG_VER}.tar.xz
+ https://commondatastorage.googleapis.com/chromium-browser-clang/Linux_x64/rust-toolchain-${BUNDLED_RUST_VER}-${BUNDLED_CLANG_VER%-*}.tar.xz
+ -> chromium-rust-toolchain-${RUST_SHORT_HASH}-${BUNDLED_CLANG_VER%-*}.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
@@ -51,8 +77,8 @@ if [[ ${SLOT} != "0/dev" ]]; then
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+=" qt6 +screencast selinux test +vaapi +wayland +widevine"
+IUSE="+X ${IUSE_SYSTEM_LIBS} bindist bundled-toolchain cups debug ffmpeg-chromium gtk4 +hangouts headless kerberos +official pax-kernel pgo"
+IUSE+=" +proprietary-codecs pulseaudio qt6 +screencast selinux test +vaapi +wayland +widevine cpu_flags_ppc_vsx3"
RESTRICT="
!bindist? ( bindist )
!test? ( test )
@@ -125,15 +151,15 @@ COMMON_DEPEND="
media-libs/flac:=
sys-libs/zlib:=[minizip]
!headless? (
- X? ( ${COMMON_X_DEPEND} )
>=app-accessibility/at-spi2-core-2.46.0:2
media-libs/mesa:=[X?,wayland?]
- cups? ( >=net-print/cups-1.3.11:= )
virtual/udev
x11-libs/cairo:=
x11-libs/gdk-pixbuf:2
x11-libs/pango:=
+ cups? ( >=net-print/cups-1.3.11:= )
qt6? ( dev-qt/qtbase:6[gui,widgets] )
+ X? ( ${COMMON_X_DEPEND} )
)
"
RDEPEND="${COMMON_DEPEND}
@@ -168,14 +194,15 @@ BDEPEND="
!headless? (
qt6? ( dev-qt/qtbase:6 )
)
- $(llvm_gen_dep '
+ !bundled-toolchain? ( $(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] ) )
- )
- ')
+ ) ')
+ ${RUST_DEPEND}
+ )
pgo? (
>=dev-python/selenium-3.141.0
>=dev-util/web_page_replay_go-20220314
@@ -307,8 +334,10 @@ pkg_setup() {
die "Please switch to a different linker."
fi
- llvm-r1_pkg_setup
- rust_pkg_setup
+ if use !bundled-toolchain; then
+ llvm-r1_pkg_setup
+ rust_pkg_setup
+ fi
# Forcing clang; respect llvm_slot_x to enable selection of impl from LLVM_COMPAT
AR=llvm-ar
@@ -337,7 +366,8 @@ pkg_setup() {
src_unpack() {
unpack ${P}-linux.tar.xz
- unpack chromium-patches-${PATCH_V}.tar.bz2
+ # These should only be required when we're not using the official toolchain
+ use !bundled-toolchain && unpack chromium-patches-${PATCH_V}.tar.bz2
use pgo && unpack chromium-profiler-0.2.tar
@@ -352,6 +382,19 @@ src_unpack() {
tar xf "${testfonts_tar}" -C "${testfonts_dir}" || die "Failed to unpack testfonts"
fi
+ # We need to manually unpack this since M126 else we'd unpack one toolchain over the other.
+ # Since we're doing that anyway let's unpack to sensible locations to make symlink creation easier.
+ if use bundled-toolchain; then
+ einfo "Unpacking bundled Clang ..."
+ mkdir -p "${WORKDIR}"/clang || die "Failed to create clang directory"
+ tar xf "${DISTDIR}/chromium-clang-${BUNDLED_CLANG_VER}.tar.xz" -C "${WORKDIR}/clang" || die "Failed to unpack Clang"
+ einfo "Unpacking bundled Rust ..."
+ local rust_dir="${WORKDIR}/rust-toolchain"
+ mkdir -p "${rust_dir}" || die "Failed to create rust toolchain directory"
+ tar xf "${DISTDIR}/chromium-rust-toolchain-${RUST_SHORT_HASH}-${BUNDLED_CLANG_VER%-*}.tar.xz" -C "${rust_dir}" ||
+ die "Failed to unpack Rust"
+ fi
+
if use ppc64; then
unpack chromium-openpower-${PPC64_HASH:0:10}.tar.bz2
fi
@@ -366,13 +409,11 @@ src_prepare() {
"${FILESDIR}/chromium-109-system-zlib.patch"
"${FILESDIR}/chromium-111-InkDropHost-crash.patch"
"${FILESDIR}/chromium-131-unbundle-icu-target.patch"
- "${FILESDIR}/chromium-131-oauth2-client-switches.patch"
- "${FILESDIR}/chromium-132-bindgen-custom-toolchain.patch"
- "${FILESDIR}/chromium-134-qt5-optional.patch"
"${FILESDIR}/chromium-134-map_droppable-glibc.patch"
+ "${FILESDIR}/chromium-134-oauth2-client-switches.patch"
+ "${FILESDIR}/chromium-134-bindgen-custom-toolchain.patch"
"${FILESDIR}/chromium-135-fix-non-wayland-build.patch"
- "${FILESDIR}/swiftshader-MCDissassembler.patch"
- "${FILESDIR}/swiftshader-use-llvm16.patch"
+ "${FILESDIR}/riscv-swiftshader.patch"
"${FILESDIR}/Debian-fix-rust-linking.patch"
"${FILESDIR}/riscv-dav1d.patch"
"${FILESDIR}/riscv-sandbox.patch"
@@ -381,61 +422,88 @@ src_prepare() {
"${FILESDIR}/cpuinfo.patch"
"${FILESDIR}/riscv-misc.patch"
"${FILESDIR}/libstdc++-fixup.patch"
+ "${FILESDIR}/chromium-134-type-mismatch-error.patch"
"${FILESDIR}/0001-chrome-runtime_api_delegate-add-riscv64-define.patch"
"${FILESDIR}/0001-extensions-common-api-runtime.json-riscv64-support.patch"
+ "${FILESDIR}/riscv-v8.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}" )
+ if use bundled-toolchain; then
+ # We need to symlink the toolchain into the expected location
+ einfo "Symlinking Clang toolchain to expected location ..."
+ mkdir -p third_party/llvm-build/ || die "Failed to create llvm-build directory"
+ # the 'Chromium Linux Tarballs' seem to already have 'Release+Asserts/{lib,bin}'; not sure if this is an
+ # upstream change - we're using the same scripts to build, theoretically. We'll still attempt to create
+ # llvm-build, but we'll rm Release+Asserts and symlink directly.
+ if [[ -d third_party/llvm-build/Release+Asserts ]]; then
+ rm -r third_party/llvm-build/Release+Asserts || die "Failed to remove third_party/llvm-build/Release+Asserts"
fi
- done
-
- shopt -u globstar nullglob
- # We can't use the bundled compiler builtins with the system toolchain
- # `grep` is a development convenience to ensure we fail early when google changes something.
- local builtins_match="if (is_clang && !is_nacl && !is_cronet_build) {"
- grep -q "${builtins_match}" build/config/compiler/BUILD.gn || die "Failed to disable bundled compiler builtins"
- sed -i -e "/${builtins_match}/,+2d" build/config/compiler/BUILD.gn
-
- if use ppc64; then
- local 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 isa 3.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}" )
+ ln -s "${WORKDIR}"/clang third_party/llvm-build/Release+Asserts || die "Failed to bundle Clang"
+ einfo "Symlinking Rust toolchain to expected location ..."
+ # As above, so below
+ if [[ -d third_party/rust-toolchain ]]; then
+ rm -r third_party/rust-toolchain || die "Failed to remove third_party/rust-toolchain"
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}" )
+ 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"
+ else
+ # We don't need our toolchain patches if we're using the official toolchain
+ 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
+
+ # 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
+
+ # Strictly speaking this doesn't need to be gated (no bundled toolchain for ppc64); it keeps the logic together
+ 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 isa 3.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
- fi
- # 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
+ # Oxidised hacks, let's keep 'em all in one place
+ # This is a nightly option that does not exist in older releases
+ # https://github.com/rust-lang/rust/commit/389a399a501a626ebf891ae0bb076c25e325ae64
+ if ver_test ${RUST_SLOT} -lt "1.83.0"; then
+ sed '/rustflags = \[ "-Zdefault-visibility=hidden" \]/d' -i build/config/gcc/BUILD.gn ||
+ die "Failed to remove default visibility nightly option"
+ fi
- # Upstream Rust replaced adler with adler2, for never versions of Rust we still need
- # to tell GN that we have adler2 when it tries to copy the Rust sysroot
- # into the bulid directory.
- if ver_test ${RUST_SLOT} -ge "1.86.0"; then
- sed -i 's/adler/adler2/' build/rust/std/BUILD.gn ||
- die "Failed to tell GN that we have adler and not adler2"
+ # Upstream Rust replaced adler with adler2, for older versions of Rust we still need
+ # to tell GN that we have the older lib when it tries to copy the Rust sysroot
+ # into the bulid directory.
+ if ver_test ${RUST_SLOT} -lt "1.86.0"; then
+ sed -i 's/adler2/adler/' build/rust/std/BUILD.gn ||
+ die "Failed to tell GN that we have adler and not adler2"
+ fi
fi
default
@@ -447,13 +515,13 @@ src_prepare() {
mkdir -p third_party/node/linux/node-linux-x64/bin || die
fi
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
+ _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
@@ -565,7 +633,6 @@ src_prepare() {
third_party/fp16
third_party/freetype
third_party/fusejs
- third_party/fuzztest
third_party/fxdiv
third_party/gemmlowp
third_party/google_input_tools
@@ -599,7 +666,6 @@ src_prepare() {
third_party/libaom/source/libaom/third_party/SVT-AV1
third_party/libaom/source/libaom/third_party/vector
third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
third_party/libc++
third_party/libdrm
third_party/libgav1
@@ -671,6 +737,7 @@ src_prepare() {
third_party/rust
third_party/ruy
third_party/s2cellid
+ third_party/search_engines_data
third_party/securemessage
third_party/selenium-atoms
third_party/sentencepiece
@@ -729,10 +796,11 @@ src_prepare() {
third_party/zlib/google
third_party/zxcvbn-cpp
url/third_party/mozilla
- v8/third_party/glibc
- v8/third_party/inspector_protocol
v8/third_party/siphash
v8/third_party/utf8-decoder
+ v8/third_party/glibc
+ v8/third_party/inspector_protocol
+ v8/third_party/rapidhash-v8
v8/third_party/v8
v8/third_party/valgrind
@@ -743,9 +811,10 @@ src_prepare() {
)
if use test; then
- # tar tvf /var/cache/distfiles/${P}-linux-testdata.tar.xz | grep '^d' | grep 'third_party' | awk '{print $NF}'
+ # 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/fuzztest
third_party/google_benchmark/src/include/benchmark
third_party/google_benchmark/src/src
third_party/perfetto/protos/third_party/pprof
@@ -828,8 +897,6 @@ src_prepare() {
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
@@ -841,63 +908,65 @@ chromium_configure() {
local myconf_gn=""
- # We already forced the "correct" clang via pkg_setup
+ if use !bundled-toolchain; then
+ # We already forced the "correct" clang via pkg_setup
- 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
+ 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
+ strip-unsupported-flags
- 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+=" is_clang=true clang_use_chrome_plugins=false"
+ # https://bugs.gentoo.org/918897#c32
+ append-ldflags -Wl,--undefined-version
+ myconf_gn+=" use_lld=true"
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
+ # Make sure the build system will use the right tools, bug #340795.
+ tc-export AR CC CXX NM
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
+ myconf_gn+=" custom_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
+ 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
- # Don't inherit PKG_CONFIG_PATH from environment
- local -x PKG_CONFIG_PATH=
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
+ # 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/\""
+ # 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+=" 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}\""
+ myconf_gn+=" rust_sysroot_absolute=\"$(get_rust_prefix)\""
+ myconf_gn+=" rustc_version=\"${RUST_SLOT}\""
+ fi
# GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
myconf_gn+=" is_debug=false"
@@ -1209,6 +1278,24 @@ chromium_compile() {
pax-mark m out/Release/chrome
+ # This codepath does minimal patching, so we're at the mercy of upstream
+ # CFLAGS. This is fine - we're not intending to force this on users
+ # and we do a lot of flag 'management' anyway.
+ if use bundled-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/libqt6_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
diff --git a/www-client/chromium/files/chromium-134-type-mismatch-error.patch b/www-client/chromium/files/chromium-134-type-mismatch-error.patch
new file mode 100644
index 0000000..27f6895
--- /dev/null
+++ b/www-client/chromium/files/chromium-134-type-mismatch-error.patch
@@ -0,0 +1,14 @@
+diff -up chromium-134.0.6998.23/base/containers/to_value_list.h.me chromium-134.0.6998.23/base/containers/to_value_list.h
+--- chromium-134.0.6998.23/base/containers/to_value_list.h.me 2025-02-23 22:39:33.369668072 +0100
++++ chromium-134.0.6998.23/base/containers/to_value_list.h 2025-02-23 22:42:42.653990901 +0100
+@@ -36,8 +36,7 @@ Value::List ToValueList(Range&& range, P
+ auto container = Value::List::with_capacity(std::ranges::size(range));
+ std::ranges::for_each(
+ std::forward<Range>(range),
+- [&]<typename T>(T&& value) { container.Append(std::forward<T>(value)); },
+- std::move(proj));
++ [&](auto&& value) { container.Append(std::invoke(proj, std::forward<decltype(*std::ranges::begin(range))>(value))); });
+ return container;
+ }
+
+
diff --git a/www-client/chromium/files/chromium-135-map_droppable-glibc.patch b/www-client/chromium/files/chromium-135-map_droppable-glibc.patch
new file mode 100644
index 0000000..74e84e0
--- /dev/null
+++ b/www-client/chromium/files/chromium-135-map_droppable-glibc.patch
@@ -0,0 +1,27 @@
+https://github.com/FireBurn/chromium/commit/28dc20e11a6f6e6d176fc3ed0b74b405112ecb2d
+From: Mike Lothian <mike@fireburn.co.uk>
+Date: Wed, 12 Feb 2025 14:33:50 +0000
+Subject: [PATCH] Add MAP_DROPPABLE to syscall_parameters_restrictions.cc
+
+--- a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
++++ b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
+@@ -34,6 +34,10 @@
+ #include "sandbox/linux/system_headers/linux_syscalls.h"
+ #include "sandbox/linux/system_headers/linux_time.h"
+
++#if !defined(MAP_DROPPABLE)
++#define MAP_DROPPABLE 0x08 // Zero memory under memory pressure.
++#endif
++
+ #if BUILDFLAG(IS_LINUX) && !defined(__arm__) && !defined(__aarch64__) && \
+ !defined(PTRACE_GET_THREAD_AREA)
+ // Also include asm/ptrace-abi.h since ptrace.h in older libc (for instance
+@@ -236,7 +240,7 @@ ResultExpr RestrictMmapFlags() {
+ // TODO(davidung), remove MAP_DENYWRITE with updated Tegra libraries.
+ const uint64_t kAllowedMask = MAP_SHARED | MAP_PRIVATE | MAP_ANONYMOUS |
+ MAP_STACK | MAP_NORESERVE | MAP_FIXED |
+- MAP_DENYWRITE | MAP_LOCKED |
++ MAP_DENYWRITE | MAP_LOCKED | MAP_DROPPABLE |
+ kArchSpecificAllowedMask;
+ const Arg<int> flags(3);
+ return If((flags & ~kAllowedMask) == 0, Allow()).Else(CrashSIGSYS());
diff --git a/www-client/chromium/files/chromium-135-oauth2-client-switches.patch b/www-client/chromium/files/chromium-135-oauth2-client-switches.patch
new file mode 100644
index 0000000..4540d88
--- /dev/null
+++ b/www-client/chromium/files/chromium-135-oauth2-client-switches.patch
@@ -0,0 +1,41 @@
+From d5ebfd72adff704c046170cf7ab798f5f7415dd5 Mon Sep 17 00:00:00 2001
+From: FoldCat <akane@maidagency.org>
+Date: Tue, 4 Mar 2025 13:09:59 +0800
+Subject: [PATCH] work around dead oauth2 credentials, correcting the previous bad patch
+
+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.
+---
+ google_apis/api_key_cache.cc | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/google_apis/api_key_cache.cc b/google_apis/api_key_cache.cc
+index 55c6028248..12ccf9e358 100644
+--- a/google_apis/api_key_cache.cc
++++ b/google_apis/api_key_cache.cc
+@@ -191,13 +191,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::kOAuth2ClientSecret,
+ std::string(), environment.get(), command_line, gaia_config,
+ default_api_keys.allow_override_via_environment,
+ default_api_keys.allow_unset_values);
+--
+2.45.3
+
diff --git a/www-client/chromium/files/libstdc++-fixup.patch b/www-client/chromium/files/libstdc++-fixup.patch
index c2f3c14..f5ccd9f 100644
--- a/www-client/chromium/files/libstdc++-fixup.patch
+++ b/www-client/chromium/files/libstdc++-fixup.patch
@@ -1,7 +1,7 @@
-ndex: chromium-133.0.6943.53/chrome/browser/ui/lens/lens_overlay_request_id_generator.h
+ndex: chromium-134.0.6998.35/chrome/browser/ui/lens/lens_overlay_request_id_generator.h
===================================================================
---- chromium-133.0.6943.53.orig/chrome/browser/ui/lens/lens_overlay_request_id_generator.h
-+++ chromium-133.0.6943.53/chrome/browser/ui/lens/lens_overlay_request_id_generator.h
+--- chromium-134.0.6998.35.orig/chrome/browser/ui/lens/lens_overlay_request_id_generator.h
++++ chromium-134.0.6998.35/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_
@@ -11,10 +11,10 @@ ndex: chromium-133.0.6943.53/chrome/browser/ui/lens/lens_overlay_request_id_gene
#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-133.0.6943.53/components/payments/content/payment_method_manifest_table.h
+Index: chromium-134.0.6998.35/components/payments/content/payment_method_manifest_table.h
===================================================================
---- chromium-133.0.6943.53.orig/components/payments/content/payment_method_manifest_table.h
-+++ chromium-133.0.6943.53/components/payments/content/payment_method_manifest_table.h
+--- chromium-134.0.6998.35.orig/components/payments/content/payment_method_manifest_table.h
++++ chromium-134.0.6998.35/components/payments/content/payment_method_manifest_table.h
@@ -6,6 +6,7 @@
#define COMPONENTS_PAYMENTS_CONTENT_PAYMENT_METHOD_MANIFEST_TABLE_H_
@@ -23,10 +23,10 @@ Index: chromium-133.0.6943.53/components/payments/content/payment_method_manifes
#include <string>
#include <vector>
-Index: chromium-133.0.6943.53/components/viz/service/display/surface_aggregator.h
+Index: chromium-134.0.6998.35/components/viz/service/display/surface_aggregator.h
===================================================================
---- chromium-133.0.6943.53.orig/components/viz/service/display/surface_aggregator.h
-+++ chromium-133.0.6943.53/components/viz/service/display/surface_aggregator.h
+--- chromium-134.0.6998.35.orig/components/viz/service/display/surface_aggregator.h
++++ chromium-134.0.6998.35/components/viz/service/display/surface_aggregator.h
@@ -132,13 +132,18 @@ class VIZ_SERVICE_EXPORT SurfaceAggregat
struct PrewalkResult;
@@ -50,32 +50,10 @@ Index: chromium-133.0.6943.53/components/viz/service/display/surface_aggregator.
base::TimeDelta prewalk_time;
base::TimeDelta copy_time;
-Index: chromium-133.0.6943.53/gpu/command_buffer/service/shared_image/shared_image_backing.h
+Index: chromium-134.0.6998.35/mojo/public/cpp/bindings/lib/multiplex_router.h
===================================================================
---- chromium-133.0.6943.53.orig/gpu/command_buffer/service/shared_image/shared_image_backing.h
-+++ chromium-133.0.6943.53/gpu/command_buffer/service/shared_image/shared_image_backing.h
-@@ -394,7 +394,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;
-@@ -408,7 +408,7 @@ class GPU_GLES2_EXPORT SharedImageBackin
- void SetConsumed() { content_consumed_ = true; }
-
- private:
-- bool content_consumed_ = false;
-+ bool content_consumed_;
- };
-
- const Mailbox mailbox_;
-Index: chromium-133.0.6943.53/mojo/public/cpp/bindings/lib/multiplex_router.h
-===================================================================
---- chromium-133.0.6943.53.orig/mojo/public/cpp/bindings/lib/multiplex_router.h
-+++ chromium-133.0.6943.53/mojo/public/cpp/bindings/lib/multiplex_router.h
+--- chromium-134.0.6998.35.orig/mojo/public/cpp/bindings/lib/multiplex_router.h
++++ chromium-134.0.6998.35/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 {
@@ -88,11 +66,11 @@ Index: chromium-133.0.6943.53/mojo/public/cpp/bindings/lib/multiplex_router.h
};
std::optional<ExclusiveSyncWaitInfo> exclusive_sync_wait_;
-Index: chromium-133.0.6943.53/third_party/blink/renderer/core/layout/inline/line_breaker.h
+Index: chromium-134.0.6998.35/third_party/blink/renderer/core/layout/inline/line_breaker.h
===================================================================
---- chromium-133.0.6943.53.orig/third_party/blink/renderer/core/layout/inline/line_breaker.h
-+++ chromium-133.0.6943.53/third_party/blink/renderer/core/layout/inline/line_breaker.h
-@@ -445,9 +445,12 @@ class CORE_EXPORT LineBreaker {
+--- chromium-134.0.6998.35.orig/third_party/blink/renderer/core/layout/inline/line_breaker.h
++++ chromium-134.0.6998.35/third_party/blink/renderer/core/layout/inline/line_breaker.h
+@@ -451,9 +451,12 @@ class CORE_EXPORT LineBreaker {
STACK_ALLOCATED();
public:
@@ -108,11 +86,11 @@ Index: chromium-133.0.6943.53/third_party/blink/renderer/core/layout/inline/line
// Ancestors of `item_result`. ancestor_ruby_columns[0] is the parent of
// `item_result`, and ancestor_ruby_columns[n+1] is the parent of
// ancestor_ruby_columns[n]. This list is empty if `item_result` is not
-Index: chromium-133.0.6943.53/third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h
+Index: chromium-134.0.6998.35/third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h
===================================================================
---- chromium-133.0.6943.53.orig/third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h
-+++ chromium-133.0.6943.53/third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h
-@@ -888,8 +888,9 @@ class CORE_EXPORT PaintLayerScrollableAr
+--- chromium-134.0.6998.35.orig/third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h
++++ chromium-134.0.6998.35/third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h
+@@ -890,8 +890,9 @@ class CORE_EXPORT PaintLayerScrollableAr
struct PendingViewState {
HistoryItem::ViewState state;
@@ -124,10 +102,10 @@ Index: chromium-133.0.6943.53/third_party/blink/renderer/core/paint/paint_layer_
};
std::optional<PendingViewState> pending_view_state_;
};
-Index: chromium-133.0.6943.53/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.h
+Index: chromium-134.0.6998.35/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.h
===================================================================
---- chromium-133.0.6943.53.orig/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.h
-+++ chromium-133.0.6943.53/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.h
+--- chromium-134.0.6998.35.orig/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.h
++++ chromium-134.0.6998.35/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 {
@@ -138,10 +116,10 @@ Index: chromium-133.0.6943.53/third_party/blink/renderer/modules/media_controls/
};
void DefaultEventHandler(Event&) override;
-Index: chromium-133.0.6943.53/third_party/webrtc/call/rtp_config.h
+Index: chromium-134.0.6998.35/third_party/webrtc/call/rtp_config.h
===================================================================
---- chromium-133.0.6943.53.orig/third_party/webrtc/call/rtp_config.h
-+++ chromium-133.0.6943.53/third_party/webrtc/call/rtp_config.h
+--- chromium-134.0.6998.35.orig/third_party/webrtc/call/rtp_config.h
++++ chromium-134.0.6998.35/third_party/webrtc/call/rtp_config.h
@@ -79,10 +79,12 @@ struct RtpStreamConfig {
struct Rtx {
std::string ToString() const;
@@ -158,4 +136,3 @@ Index: chromium-133.0.6943.53/third_party/webrtc/call/rtp_config.h
std::optional<Rtx> rtx;
};
-
diff --git a/www-client/chromium/files/riscv-swiftshader.patch b/www-client/chromium/files/riscv-swiftshader.patch
new file mode 100644
index 0000000..e2d3b6e
--- /dev/null
+++ b/www-client/chromium/files/riscv-swiftshader.patch
@@ -0,0 +1,39 @@
+Index: chromium-134.0.6998.35/third_party/swiftshader/src/Reactor/BUILD.gn
+===================================================================
+--- chromium-134.0.6998.35.orig/third_party/swiftshader/src/Reactor/BUILD.gn
++++ chromium-134.0.6998.35/third_party/swiftshader/src/Reactor/BUILD.gn
+@@ -307,7 +307,7 @@ if (supports_subzero) {
+
+ if (supports_llvm) {
+ swiftshader_source_set("swiftshader_llvm_reactor") {
+- llvm_dir = "../../third_party/llvm-10.0"
++ llvm_dir = "../../third_party/llvm-16.0"
+
+ deps = [
+ ":swiftshader_reactor_base",
+Index: chromium-134.0.6998.35/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn
+===================================================================
+--- chromium-134.0.6998.35.orig/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn
++++ chromium-134.0.6998.35/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn
+@@ -778,6 +778,7 @@ swiftshader_llvm_source_set("swiftshader
+ "llvm/lib/MC/MCContext.cpp",
+ "llvm/lib/MC/MCDXContainerStreamer.cpp",
+ "llvm/lib/MC/MCDXContainerWriter.cpp",
++ "llvm/lib/MC/MCDisassembler/MCDisassembler.cpp",
+ "llvm/lib/MC/MCDisassembler/MCRelocationInfo.cpp",
+ "llvm/lib/MC/MCDwarf.cpp",
+ "llvm/lib/MC/MCELFObjectTargetWriter.cpp",
+Index: chromium-134.0.6998.35/third_party/swiftshader/third_party/llvm-16.0/llvm/include/llvm/Support/AlignOf.h
+===================================================================
+--- chromium-134.0.6998.35.orig/third_party/swiftshader/third_party/llvm-16.0/llvm/include/llvm/Support/AlignOf.h
++++ chromium-134.0.6998.35/third_party/swiftshader/third_party/llvm-16.0/llvm/include/llvm/Support/AlignOf.h
+@@ -20,7 +20,7 @@ namespace llvm {
+ /// A suitably aligned and sized character array member which can hold elements
+ /// of any type.
+ template <typename T, typename... Ts> struct AlignedCharArrayUnion {
+- alignas(Ts...) char buffer[std::max({sizeof(Ts)...})];
++ alignas(std::max({std::size_t(1), alignof(T), alignof(Ts)...})) char buffer[std::max({std::size_t(1), sizeof(T), sizeof(Ts)...})];
+ };
+
+ } // end namespace llvm
+
diff --git a/www-client/chromium/files/riscv-v8.patch b/www-client/chromium/files/riscv-v8.patch
new file mode 100644
index 0000000..a137aac
--- /dev/null
+++ b/www-client/chromium/files/riscv-v8.patch
@@ -0,0 +1,821 @@
+From 4d24761fae4b1de87a1ba7a507e98be157a64bf4 Mon Sep 17 00:00:00 2001
+From: Alexey Pavlyutkin <alexey.pavlyutkin@syntacore.com>
+Date: Thu, 13 Feb 2025 11:40:23 +0000
+Subject: [PATCH] [riscv][leaptiering] Enable leaptiering support
+
+Fix RISC-V build broken by unconditional enabling of leaptiering (see
+6207491).
+
+Change-Id: I72db70b09b98410ae83d40b3251495b8bcbda207
+Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6249680
+Reviewed-by: Yahan Lu (LuYahan) <yahan@iscas.ac.cn>
+Reviewed-by: Ji Qiu <qiuji@iscas.ac.cn>
+Commit-Queue: Ji Qiu <qiuji@iscas.ac.cn>
+Cr-Commit-Position: refs/heads/main@{#98693}
+---
+ src/builtins/riscv/builtins-riscv.cc | 27 +-
+ src/codegen/riscv/macro-assembler-riscv.cc | 321 +++++++++++-------
+ src/codegen/riscv/macro-assembler-riscv.h | 48 ++-
+ src/codegen/riscv/register-riscv.h | 3 +-
+ .../backend/riscv/code-generator-riscv.cc | 41 ++-
+ src/maglev/riscv/maglev-assembler-riscv.cc | 3 +
+ 6 files changed, 286 insertions(+), 157 deletions(-)
+
+Index: chromium-134.0.6998.35/v8/src/builtins/riscv/builtins-riscv.cc
+===================================================================
+--- chromium-134.0.6998.35.orig/v8/src/builtins/riscv/builtins-riscv.cc
++++ chromium-134.0.6998.35/v8/src/builtins/riscv/builtins-riscv.cc
+@@ -996,6 +996,7 @@ void Builtins::Generate_BaselineOutOfLin
+ }
+
+ void Builtins::Generate_BaselineOutOfLinePrologue(MacroAssembler* masm) {
++ ASM_CODE_COMMENT(masm);
+ UseScratchRegisterScope temps(masm);
+ temps.Include({kScratchReg, kScratchReg2, s1});
+ auto descriptor =
+@@ -1016,11 +1017,14 @@ void Builtins::Generate_BaselineOutOfLin
+ __ AssertFeedbackVector(feedback_vector, type);
+ }
+
++#ifndef V8_ENABLE_LEAPTIERING
+ // Check for an tiering state.
+ Label flags_need_processing;
+ Register flags = temps.Acquire();
+ __ LoadFeedbackVectorFlagsAndJumpIfNeedsProcessing(
+ flags, feedback_vector, CodeKind::BASELINE, &flags_need_processing);
++#endif
++
+ {
+ UseScratchRegisterScope temps(masm);
+ ResetFeedbackVectorOsrUrgency(masm, feedback_vector, temps.Acquire());
+@@ -1096,6 +1100,7 @@ void Builtins::Generate_BaselineOutOfLin
+ // TODO(v8:11429): Document this frame setup better.
+ __ Ret();
+
++#ifndef V8_ENABLE_LEAPTIERING
+ __ bind(&flags_need_processing);
+ {
+ ASM_CODE_COMMENT_STRING(masm, "Optimized marker check");
+@@ -1104,6 +1109,7 @@ void Builtins::Generate_BaselineOutOfLin
+ __ OptimizeCodeOrTailCallOptimizedCodeSlot(flags, feedback_vector);
+ __ Trap();
+ }
++#endif
+
+ __ bind(&call_stack_guard);
+ {
+@@ -1157,15 +1163,16 @@ void Builtins::Generate_InterpreterEntry
+ __ LoadFeedbackVector(feedback_vector, closure, a4, &push_stack_frame);
+
+ #ifndef V8_JITLESS
++#ifndef V8_ENABLE_LEAPTIERING
+ // If feedback vector is valid, check for optimized code and update invocation
+ // count.
+-
+ // Check the tiering state.
+ Label flags_need_processing;
+ Register flags = a4;
+ __ LoadFeedbackVectorFlagsAndJumpIfNeedsProcessing(
+ flags, feedback_vector, CodeKind::INTERPRETED_FUNCTION,
+ &flags_need_processing);
++#endif // V8_ENABLE_LEAPTIERING
+ ResetFeedbackVectorOsrUrgency(masm, feedback_vector, a4);
+
+ // Increment invocation count for the function.
+@@ -1323,10 +1330,13 @@ void Builtins::Generate_InterpreterEntry
+ __ Branch(&after_stack_check_interrupt);
+
+ #ifndef V8_JITLESS
++#ifndef V8_ENABLE_LEAPTIERING
+ __ bind(&flags_need_processing);
+ __ OptimizeCodeOrTailCallOptimizedCodeSlot(flags, feedback_vector);
++#endif //! V8_ENABLE_LEAPTIERING
+ __ bind(&is_baseline);
+ {
++#ifndef V8_ENABLE_LEAPTIERING
+ // Load the feedback vector from the closure.
+ __ LoadTaggedField(
+ feedback_vector,
+@@ -1347,7 +1357,6 @@ void Builtins::Generate_InterpreterEntry
+ __ LoadFeedbackVectorFlagsAndJumpIfNeedsProcessing(
+ flags, feedback_vector, CodeKind::BASELINE, &flags_need_processing);
+
+-#ifndef V8_ENABLE_LEAPTIERING
+ // TODO(olivf, 42204201): This fastcase is difficult to support with the
+ // sandbox as it requires getting write access to the dispatch table. See
+ // `JSFunction::UpdateCode`. We might want to remove it for all
+@@ -1357,9 +1366,9 @@ void Builtins::Generate_InterpreterEntry
+ static_assert(kJavaScriptCallCodeStartRegister == a2, "ABI mismatch");
+ __ ReplaceClosureCodeWithOptimizedCode(a2, closure);
+ __ JumpCodeObject(a2, kJSEntrypointTag);
+-#endif // V8_ENABLE_LEAPTIERING
+-
+ __ bind(&install_baseline_code);
++#endif // !V8_ENABLE_LEAPTIERING
++
+ __ GenerateTailCallToReturnedCode(Runtime::kInstallBaselineCode);
+ }
+ #endif // !V8_JITLESS
+@@ -2630,9 +2639,13 @@ void Builtins::Generate_CallFunction(Mac
+ // -- cp : the function context.
+ // -----------------------------------
+
++#ifdef V8_ENABLE_LEAPTIERING
++ __ InvokeFunctionCode(a1, no_reg, a0, InvokeType::kJump);
++#else
+ __ Lhu(a2,
+ FieldMemOperand(a2, SharedFunctionInfo::kFormalParameterCountOffset));
+ __ InvokeFunctionCode(a1, no_reg, a2, a0, InvokeType::kJump);
++#endif
+ }
+
+ namespace {
+@@ -5084,9 +5097,13 @@ void Builtins::Generate_RestartFrameTram
+ // Pop return address and frame.
+ __ LeaveFrame(StackFrame::INTERPRETED);
+
++#ifdef V8_ENABLE_LEAPTIERING
++ __ InvokeFunction(a1, a0, InvokeType::kJump,
++ ArgumentAdaptionMode::kDontAdapt);
++#else
+ __ li(a2, Operand(kDontAdaptArgumentsSentinel));
+-
+ __ InvokeFunction(a1, a2, a0, InvokeType::kJump);
++#endif
+ }
+
+ #undef __
+Index: chromium-134.0.6998.35/v8/src/codegen/riscv/macro-assembler-riscv.cc
+===================================================================
+--- chromium-134.0.6998.35.orig/v8/src/codegen/riscv/macro-assembler-riscv.cc
++++ chromium-134.0.6998.35/v8/src/codegen/riscv/macro-assembler-riscv.cc
+@@ -209,24 +209,7 @@ void MacroAssembler::GenerateTailCallToR
+ Jump(a2);
+ }
+
+-Condition MacroAssembler::LoadFeedbackVectorFlagsAndCheckIfNeedsProcessing(
+- Register flags, Register feedback_vector, Register result,
+- CodeKind current_code_kind) {
+- ASM_CODE_COMMENT(this);
+- DCHECK(!AreAliased(flags, feedback_vector));
+- DCHECK(CodeKindCanTierUp(current_code_kind));
+-
+- Lhu(flags, FieldMemOperand(feedback_vector, FeedbackVector::kFlagsOffset));
+- uint32_t kFlagsMask = FeedbackVector::kFlagsTieringStateIsAnyRequested |
+- FeedbackVector::kFlagsMaybeHasTurbofanCode |
+- FeedbackVector::kFlagsLogNextExecution;
+- if (current_code_kind != CodeKind::MAGLEV) {
+- kFlagsMask |= FeedbackVector::kFlagsMaybeHasMaglevCode;
+- }
+- And(result, flags, Operand(kFlagsMask));
+- return ne;
+-}
+-
++#ifndef V8_ENABLE_LEAPTIERING
+ // Read off the flags in the feedback vector and check if there
+ // is optimized code or a tiering state that needs to be processed.
+ void MacroAssembler::LoadFeedbackVectorFlagsAndJumpIfNeedsProcessing(
+@@ -248,22 +231,6 @@ void MacroAssembler::OptimizeCodeOrTailC
+ Register flags, Register feedback_vector) {
+ ASM_CODE_COMMENT(this);
+ DCHECK(!AreAliased(flags, feedback_vector));
+-#ifdef V8_ENABLE_LEAPTIERING
+- // In the leaptiering case, we don't load optimized code from the feedback
+- // vector so only need to call CompileOptimized or FunctionLogNextExecution
+- // here. See also LoadFeedbackVectorFlagsAndJumpIfNeedsProcessing above.
+- Label needs_logging;
+- {
+- UseScratchRegisterScope temps(this);
+- Register scratch = temps.Acquire();
+- And(scratch, flags,
+- Operand(FeedbackVector::kFlagsTieringStateIsAnyRequested));
+- Branch(&needs_logging, eq, scratch, Operand(zero_reg));
+- }
+- GenerateTailCallToReturnedCode(Runtime::kCompileOptimized);
+- bind(&needs_logging);
+- GenerateTailCallToReturnedCode(Runtime::kFunctionLogNextExecution);
+-#else
+ UseScratchRegisterScope temps(this);
+ temps.Include(t0, t1);
+ Label maybe_has_optimized_code, maybe_needs_logging;
+@@ -296,8 +263,8 @@ void MacroAssembler::OptimizeCodeOrTailC
+ FeedbackVector::kMaybeOptimizedCodeOffset));
+ TailCallOptimizedCodeSlot(this, optimized_code_entry, temps.Acquire(),
+ temps.Acquire());
+-#endif // V8_ENABLE_LEAPTIERING
+ }
++#endif // V8_ENABLE_LEAPTIERING
+
+ void MacroAssembler::LoadIsolateField(const Register& rd, IsolateFieldId id) {
+ li(rd, ExternalReference::Create(id));
+@@ -5630,7 +5597,7 @@ void MacroAssembler::StackOverflowCheck(
+
+ void MacroAssembler::InvokePrologue(Register expected_parameter_count,
+ Register actual_parameter_count,
+- Label* done, InvokeType type) {
++ InvokeType type) {
+ Label regular_invoke;
+
+ // a0: actual arguments count
+@@ -5649,8 +5616,7 @@ void MacroAssembler::InvokePrologue(Regi
+ Label stack_overflow;
+ {
+ UseScratchRegisterScope temps(this);
+- StackOverflowCheck(expected_parameter_count, temps.Acquire(),
+- temps.Acquire(), &stack_overflow);
++ StackOverflowCheck(expected_parameter_count, t0, t1, &stack_overflow);
+ }
+ // Underapplication. Move the arguments already in the stack, including the
+ // receiver and the return address.
+@@ -5694,90 +5660,150 @@ void MacroAssembler::InvokePrologue(Regi
+ bind(®ular_invoke);
+ }
+
+-void MacroAssembler::CheckDebugHook(Register fun, Register new_target,
+- Register expected_parameter_count,
+- Register actual_parameter_count) {
+- Label skip_hook;
+- {
+- UseScratchRegisterScope temps(this);
+- Register scratch = temps.Acquire();
+- li(scratch,
+- ExternalReference::debug_hook_on_function_call_address(isolate()));
+- Lb(scratch, MemOperand(scratch));
+- Branch(&skip_hook, eq, scratch, Operand(zero_reg));
+- }
+- {
+- // Load receiver to pass it later to DebugOnFunctionCall hook.
+- UseScratchRegisterScope temps(this);
+- Register receiver = temps.Acquire();
+- LoadReceiver(receiver);
++void MacroAssembler::CallDebugOnFunctionCall(
++ Register fun, Register new_target,
++ Register expected_parameter_count_or_dispatch_handle,
++ Register actual_parameter_count) {
++ ASM_CODE_COMMENT(this);
++ DCHECK(!AreAliased(t0, fun, new_target,
++ expected_parameter_count_or_dispatch_handle,
++ actual_parameter_count));
++
++ // Load receiver to pass it later to DebugOnFunctionCall hook.
++ LoadReceiver(t0);
++ FrameScope frame(
++ this, has_frame() ? StackFrame::NO_FRAME_TYPE : StackFrame::INTERNAL);
++
++ SmiTag(expected_parameter_count_or_dispatch_handle);
++ SmiTag(actual_parameter_count);
++ Push(expected_parameter_count_or_dispatch_handle, actual_parameter_count);
++
++ if (new_target.is_valid()) {
++ Push(new_target);
++ }
++ Push(fun, fun, t0);
++ CallRuntime(Runtime::kDebugOnFunctionCall);
++ Pop(fun);
++ if (new_target.is_valid()) {
++ Pop(new_target);
++ }
++
++ Pop(expected_parameter_count_or_dispatch_handle, actual_parameter_count);
++ SmiUntag(actual_parameter_count);
++ SmiUntag(expected_parameter_count_or_dispatch_handle);
++}
+
+- FrameScope frame(
+- this, has_frame() ? StackFrame::NO_FRAME_TYPE : StackFrame::INTERNAL);
+- SmiTag(expected_parameter_count);
+- Push(expected_parameter_count);
++#ifdef V8_ENABLE_LEAPTIERING
++void MacroAssembler::InvokeFunction(
++ Register function, Register actual_parameter_count, InvokeType type,
++ ArgumentAdaptionMode argument_adaption_mode) {
++ ASM_CODE_COMMENT(this);
++ // You can't call a function without a valid frame.
++ DCHECK(type == InvokeType::kJump || has_frame());
+
+- SmiTag(actual_parameter_count);
+- Push(actual_parameter_count);
++ // Contract with called JS functions requires that function is passed in a1.
++ // (See FullCodeGenerator::Generate().)
++ DCHECK_EQ(function, a1);
+
+- if (new_target.is_valid()) {
+- Push(new_target);
+- }
+- Push(fun);
+- Push(fun);
+- Push(receiver);
+- CallRuntime(Runtime::kDebugOnFunctionCall);
+- Pop(fun);
+- if (new_target.is_valid()) {
+- Pop(new_target);
+- }
++ // Set up the context.
++ LoadTaggedField(cp, FieldMemOperand(function, JSFunction::kContextOffset));
+
+- Pop(actual_parameter_count);
+- SmiUntag(actual_parameter_count);
++ InvokeFunctionCode(function, no_reg, actual_parameter_count, type,
++ argument_adaption_mode);
++}
+
+- Pop(expected_parameter_count);
+- SmiUntag(expected_parameter_count);
+- }
+- bind(&skip_hook);
++void MacroAssembler::InvokeFunctionWithNewTarget(
++ Register function, Register new_target, Register actual_parameter_count,
++ InvokeType type) {
++ ASM_CODE_COMMENT(this);
++ // You can't call a function without a valid frame.
++ DCHECK(type == InvokeType::kJump || has_frame());
++
++ // Contract with called JS functions requires that function is passed in a1.
++ // (See FullCodeGenerator::Generate().)
++ DCHECK_EQ(function, a1);
++
++ LoadTaggedField(cp, FieldMemOperand(function, JSFunction::kContextOffset));
++
++ InvokeFunctionCode(function, new_target, actual_parameter_count, type);
+ }
+
+-void MacroAssembler::InvokeFunctionCode(Register function, Register new_target,
+- Register expected_parameter_count,
+- Register actual_parameter_count,
+- InvokeType type) {
++void MacroAssembler::InvokeFunctionCode(
++ Register function, Register new_target, Register actual_parameter_count,
++ InvokeType type, ArgumentAdaptionMode argument_adaption_mode) {
++ ASM_CODE_COMMENT(this);
+ // You can't call a function without a valid frame.
+ DCHECK_IMPLIES(type == InvokeType::kCall, has_frame());
+ DCHECK_EQ(function, a1);
+ DCHECK_IMPLIES(new_target.is_valid(), new_target == a3);
+
++ Register dispatch_handle = kJavaScriptCallDispatchHandleRegister;
++ Lw(dispatch_handle,
++ FieldMemOperand(function, JSFunction::kDispatchHandleOffset));
++
+ // On function call, call into the debugger if necessary.
+- CheckDebugHook(function, new_target, expected_parameter_count,
+- actual_parameter_count);
++ Label debug_hook, continue_after_hook;
++ {
++ li(t0, ExternalReference::debug_hook_on_function_call_address(isolate()));
++ Lb(t0, MemOperand(t0, 0));
++ BranchShort(&debug_hook, ne, t0, Operand(zero_reg));
++ }
++ bind(&continue_after_hook);
+
+ // Clear the new.target register if not given.
+ if (!new_target.is_valid()) {
+ LoadRoot(a3, RootIndex::kUndefinedValue);
+ }
+
+- Label done;
+- InvokePrologue(expected_parameter_count, actual_parameter_count, &done, type);
++ Register scratch = s1;
++ if (argument_adaption_mode == ArgumentAdaptionMode::kAdapt) {
++ Register expected_parameter_count = a2;
++ LoadParameterCountFromJSDispatchTable(expected_parameter_count,
++ dispatch_handle, scratch);
++ InvokePrologue(expected_parameter_count, actual_parameter_count, type);
++ }
++
+ // We call indirectly through the code field in the function to
+ // allow recompilation to take effect without changing any of the
+ // call sites.
+- constexpr int unused_argument_count = 0;
++ LoadEntrypointFromJSDispatchTable(kJavaScriptCallCodeStartRegister,
++ dispatch_handle, scratch);
+ switch (type) {
+ case InvokeType::kCall:
+- CallJSFunction(function, unused_argument_count);
++ Call(kJavaScriptCallCodeStartRegister);
+ break;
+ case InvokeType::kJump:
+- JumpJSFunction(function);
++ Jump(kJavaScriptCallCodeStartRegister);
+ break;
+ }
++ Label done;
++ Branch(&done);
++
++ // Deferred debug hook.
++ bind(&debug_hook);
++ CallDebugOnFunctionCall(function, new_target, dispatch_handle,
++ actual_parameter_count);
++ Branch(&continue_after_hook);
+
+- // Continue here if InvokePrologue does handle the invocation due to
+- // mismatched parameter counts.
+ bind(&done);
+ }
++#else // !V8_ENABLE_LEAPTIERING
++void MacroAssembler::InvokeFunction(Register function,
++ Register expected_parameter_count,
++ Register actual_parameter_count,
++ InvokeType type) {
++ // You can't call a function without a valid frame.
++ DCHECK_IMPLIES(type == InvokeType::kCall, has_frame());
++
++ // Contract with called JS functions requires that function is passed in a1.
++ DCHECK_EQ(function, a1);
++
++ // Get the function and setup the context.
++ LoadTaggedField(cp, FieldMemOperand(a1, JSFunction::kContextOffset));
++
++ InvokeFunctionCode(a1, no_reg, expected_parameter_count,
++ actual_parameter_count, type);
++}
+
+ void MacroAssembler::InvokeFunctionWithNewTarget(
+ Register function, Register new_target, Register actual_parameter_count,
+@@ -5804,23 +5830,44 @@ void MacroAssembler::InvokeFunctionWithN
+ actual_parameter_count, type);
+ }
+
+-void MacroAssembler::InvokeFunction(Register function,
+- Register expected_parameter_count,
+- Register actual_parameter_count,
+- InvokeType type) {
++void MacroAssembler::InvokeFunctionCode(Register function, Register new_target,
++ Register expected_parameter_count,
++ Register actual_parameter_count,
++ InvokeType type) {
+ // You can't call a function without a valid frame.
+ DCHECK_IMPLIES(type == InvokeType::kCall, has_frame());
+-
+- // Contract with called JS functions requires that function is passed in a1.
+ DCHECK_EQ(function, a1);
++ DCHECK_IMPLIES(new_target.is_valid(), new_target == a3);
+
+- // Get the function and setup the context.
+- LoadTaggedField(cp, FieldMemOperand(a1, JSFunction::kContextOffset));
++ // On function call, call into the debugger if necessary.
++ CheckDebugHook(function, new_target, expected_parameter_count,
++ actual_parameter_count);
+
+- InvokeFunctionCode(a1, no_reg, expected_parameter_count,
+- actual_parameter_count, type);
+-}
++ // Clear the new.target register if not given.
++ if (!new_target.is_valid()) {
++ LoadRoot(a3, RootIndex::kUndefinedValue);
++ }
+
++ Label done;
++ InvokePrologue(expected_parameter_count, actual_parameter_count, &done, type);
++ // We call indirectly through the code field in the function to
++ // allow recompilation to take effect without changing any of the
++ // call sites.
++ constexpr int unused_argument_count = 0;
++ switch (type) {
++ case InvokeType::kCall:
++ CallJSFunction(function, unused_argument_count);
++ break;
++ case InvokeType::kJump:
++ JumpJSFunction(function);
++ break;
++ }
++
++ // Continue here if InvokePrologue does handle the invocation due to
++ // mismatched parameter counts.
++ bind(&done);
++}
++#endif // V8_ENABLE_LEAPTIERING
+ // ---------------------------------------------------------------------------
+ // Support functions.
+
+@@ -7240,14 +7287,30 @@ void MacroAssembler::ComputeCodeStartAdd
+ // 2. test kMarkedForDeoptimizationBit in those flags; and
+ // 3. if it is not zero then it jumps to the builtin.
+ void MacroAssembler::BailoutIfDeoptimized() {
+- int offset = InstructionStream::kCodeOffset - InstructionStream::kHeaderSize;
+- LoadProtectedPointerField(
+- kScratchReg, MemOperand(kJavaScriptCallCodeStartRegister, offset));
+- Lw(kScratchReg, FieldMemOperand(kScratchReg, Code::kFlagsOffset));
+- And(kScratchReg, kScratchReg,
+- Operand(1 << Code::kMarkedForDeoptimizationBit));
+- TailCallBuiltin(Builtin::kCompileLazyDeoptimizedCode, ne, kScratchReg,
++ ASM_CODE_COMMENT(this);
++ UseScratchRegisterScope temps(this);
++ Register scratch = temps.Acquire();
++ if (v8_flags.debug_code || !V8_ENABLE_LEAPTIERING_BOOL) {
++ int offset =
++ InstructionStream::kCodeOffset - InstructionStream::kHeaderSize;
++ LoadProtectedPointerField(
++ scratch, MemOperand(kJavaScriptCallCodeStartRegister, offset));
++ Lw(scratch, FieldMemOperand(scratch, Code::kFlagsOffset));
++ }
++
++#ifdef V8_ENABLE_LEAPTIERING
++ if (v8_flags.debug_code) {
++ Label not_deoptimized;
++ And(scratch, scratch, Operand(1 << Code::kMarkedForDeoptimizationBit));
++ Branch(¬_deoptimized, eq, scratch, Operand(zero_reg));
++ Abort(AbortReason::kInvalidDeoptimizedCode);
++ bind(¬_deoptimized);
++ }
++#else
++ And(scratch, scratch, Operand(1 << Code::kMarkedForDeoptimizationBit));
++ TailCallBuiltin(Builtin::kCompileLazyDeoptimizedCode, ne, scratch,
+ Operand(zero_reg));
++#endif
+ }
+
+ void MacroAssembler::CallForDeoptimization(Builtin target, int, Label* exit,
+@@ -7303,22 +7366,20 @@ void MacroAssembler::JumpCodeObject(Regi
+ }
+
+ void MacroAssembler::CallJSFunction(Register function_object,
+- uint16_t argument_count) {
+- DCHECK_WITH_MSG(!V8_ENABLE_LEAPTIERING_BOOL,
+- "argument_count is only used with Leaptiering");
++ [[maybe_unused]] uint16_t argument_count) {
+ ASM_CODE_COMMENT(this);
+ Register code = kJavaScriptCallCodeStartRegister;
+ #ifdef V8_ENABLE_LEAPTIERING
+- UseScratchRegisterScope temps(this);
+- Register dispatch_handle = t0;
++ Register dispatch_handle = kJavaScriptCallDispatchHandleRegister;
+ Register parameter_count = t1;
++ UseScratchRegisterScope temps(this);
+ Register scratch = temps.Acquire();
+ Lw(dispatch_handle,
+ FieldMemOperand(function_object, JSFunction::kDispatchHandleOffset));
+ LoadEntrypointAndParameterCountFromJSDispatchTable(code, parameter_count,
+ dispatch_handle, scratch);
+ Label match;
+- Branch(&match, le, parameter_count, Immediate(argument_count));
++ Branch(&match, le, parameter_count, Operand(argument_count));
+ // If the parameter count doesn't match, we force a safe crash by setting the
+ // code entrypoint to zero, causing a nullptr dereference during the call.
+ mv(code, zero_reg);
+@@ -7366,13 +7427,14 @@ void MacroAssembler::JumpJSFunction(Regi
+ ASM_CODE_COMMENT(this);
+ Register code = kJavaScriptCallCodeStartRegister;
+ #ifdef V8_ENABLE_LEAPTIERING
+- LoadCodeEntrypointFromJSDispatchTable(
+- code,
+- FieldMemOperand(function_object, JSFunction::kDispatchHandleOffset));
++ Register dispatch_handle = kJavaScriptCallDispatchHandleRegister;
++ UseScratchRegisterScope temps(this);
++ Register scratch = temps.Acquire();
++ Lw(dispatch_handle,
++ FieldMemOperand(function_object, JSFunction::kDispatchHandleOffset));
++ LoadEntrypointFromJSDispatchTable(code, dispatch_handle, scratch);
+ DCHECK_EQ(jump_mode, JumpMode::kJump);
+- DCHECK_NE(code, t6);
+- mv(t6, code);
+- Jump(t6);
++ Jump(code);
+ #elif V8_ENABLE_SANDBOX
+ // When the sandbox is enabled, we can directly fetch the entrypoint pointer
+ // from the code pointer table instead of going through the Code object. In
+@@ -7465,11 +7527,13 @@ void MacroAssembler::LoadEntrypointFromJ
+ Register scratch) {
+ DCHECK(!AreAliased(destination, scratch));
+ ASM_CODE_COMMENT(this);
++ Register index = destination;
+ li(scratch, ExternalReference::js_dispatch_table_address());
+ srli(index, dispatch_handle, kJSDispatchHandleShift);
+ slli(index, index, kJSDispatchTableEntrySizeLog2);
+ AddWord(scratch, scratch, index);
+- Ld(destination, MemOperand(scratch, JSDispatchEntry::kEntrypointOffset));
++ LoadWord(destination,
++ MemOperand(scratch, JSDispatchEntry::kEntrypointOffset));
+ }
+
+ void MacroAssembler::LoadEntrypointFromJSDispatchTable(
+@@ -7486,7 +7550,7 @@ void MacroAssembler::LoadEntrypointFromJ
+ static_assert(!JSDispatchTable::kSupportsCompaction);
+ int offset = JSDispatchTable::OffsetOfEntry(dispatch_handle) +
+ JSDispatchEntry::kEntrypointOffset;
+- Ld(destination, MemOperand(scratch, offset));
++ LoadWord(destination, MemOperand(scratch, offset));
+ }
+
+ void MacroAssembler::LoadParameterCountFromJSDispatchTable(
+@@ -7494,12 +7558,14 @@ void MacroAssembler::LoadParameterCountF
+ DCHECK(!AreAliased(destination, scratch));
+ ASM_CODE_COMMENT(this);
+ Register index = destination;
+- li(scratch, ExternalReference::js_dispatch_table_address());
+ srli(index, dispatch_handle, kJSDispatchHandleShift);
+ slli(index, index, kJSDispatchTableEntrySizeLog2);
++ li(scratch, ExternalReference::js_dispatch_table_address());
+ AddWord(scratch, scratch, index);
++#ifdef V8_TARGET_ARCH_64_BIT
+ static_assert(JSDispatchEntry::kParameterCountMask == 0xffff);
+- Lh(destination, MemOperand(scratch, JSDispatchEntry::kCodeObjectOffset));
++#endif
++ Lhu(destination, MemOperand(scratch, JSDispatchEntry::kCodeObjectOffset));
+ }
+
+ void MacroAssembler::LoadEntrypointAndParameterCountFromJSDispatchTable(
+@@ -7512,10 +7578,11 @@ void MacroAssembler::LoadEntrypointAndPa
+ srli(index, dispatch_handle, kJSDispatchHandleShift);
+ slli(index, index, kJSDispatchTableEntrySizeLog2);
+ AddWord(scratch, scratch, index);
+-
+- Ld(entrypoint, MemOperand(scratch, JSDispatchEntry::kEntrypointOffset));
++ LoadWord(entrypoint, MemOperand(scratch, JSDispatchEntry::kEntrypointOffset));
++#ifdef V8_TARGET_ARCH_64_BIT
+ static_assert(JSDispatchEntry::kParameterCountMask == 0xffff);
+- Lh(parameter_count, MemOperand(scratch, JSDispatchEntry::kCodeObjectOffset));
++#endif
++ Lhu(parameter_count, MemOperand(scratch, JSDispatchEntry::kCodeObjectOffset));
+ }
+ #endif
+
+Index: chromium-134.0.6998.35/v8/src/codegen/riscv/macro-assembler-riscv.h
+===================================================================
+--- chromium-134.0.6998.35.orig/v8/src/codegen/riscv/macro-assembler-riscv.h
++++ chromium-134.0.6998.35/v8/src/codegen/riscv/macro-assembler-riscv.h
+@@ -1600,23 +1600,47 @@ class V8_EXPORT_PRIVATE MacroAssembler :
+ // -------------------------------------------------------------------------
+ // JavaScript invokes.
+
+- // Invoke the JavaScript function code by either calling or jumping.
+- void InvokeFunctionCode(Register function, Register new_target,
+- Register expected_parameter_count,
+- Register actual_parameter_count, InvokeType type);
+-
+- // On function call, call into the debugger if necessary.
+- void CheckDebugHook(Register fun, Register new_target,
+- Register expected_parameter_count,
+- Register actual_parameter_count);
++ // On function call, call into the debugger.
++ void CallDebugOnFunctionCall(
++ Register fun, Register new_target,
++ Register expected_parameter_count_or_dispatch_handle,
++ Register actual_parameter_count);
++
++ // The way we invoke JSFunctions differs depending on whether leaptiering is
++ // enabled. As such, these functions exist in two variants. In the future,
++ // leaptiering will be used on all platforms. At that point, the
++ // non-leaptiering variants will disappear.
+
++#ifdef V8_ENABLE_LEAPTIERING
+ // Invoke the JavaScript function in the given register. Changes the
+ // current context to the context in the function before invoking.
++ void InvokeFunction(Register function, Register actual_parameter_count,
++ InvokeType type,
++ ArgumentAdaptionMode argument_adaption_mode =
++ ArgumentAdaptionMode::kAdapt);
++ // Invoke the JavaScript function in the given register.
++ // Changes the current context to the context in the function before invoking.
+ void InvokeFunctionWithNewTarget(Register function, Register new_target,
+ Register actual_parameter_count,
+ InvokeType type);
++ // Invoke the JavaScript function code by either calling or jumping.
++ void InvokeFunctionCode(Register function, Register new_target,
++ Register actual_parameter_count, InvokeType type,
++ ArgumentAdaptionMode argument_adaption_mode =
++ ArgumentAdaptionMode::kAdapt);
++#else
+ void InvokeFunction(Register function, Register expected_parameter_count,
+ Register actual_parameter_count, InvokeType type);
++ // Invoke the JavaScript function in the given register. Changes the
++ // current context to the context in the function before invoking.
++ void InvokeFunctionWithNewTarget(Register function, Register new_target,
++ Register actual_parameter_count,
++ InvokeType type);
++ // Invoke the JavaScript function code by either calling or jumping.
++ void InvokeFunctionCode(Register function, Register new_target,
++ Register expected_parameter_count,
++ Register actual_parameter_count, InvokeType type);
++#endif
+
+ // ---- InstructionStream generation helpers ----
+
+@@ -1657,14 +1681,13 @@ class V8_EXPORT_PRIVATE MacroAssembler :
+ Register closure);
+ void GenerateTailCallToReturnedCode(Runtime::FunctionId function_id);
+
+- Condition LoadFeedbackVectorFlagsAndCheckIfNeedsProcessing(
+- Register flags, Register feedback_vector, Register result,
+- CodeKind current_code_kind);
++#ifndef V8_ENABLE_LEAPTIERING
+ void LoadFeedbackVectorFlagsAndJumpIfNeedsProcessing(
+ Register flags, Register feedback_vector, CodeKind current_code_kind,
+ Label* flags_need_processing);
+ void OptimizeCodeOrTailCallOptimizedCodeSlot(Register flags,
+ Register feedback_vector);
++#endif
+
+ // -------------------------------------------------------------------------
+ // Support functions.
+@@ -1883,8 +1906,7 @@ class V8_EXPORT_PRIVATE MacroAssembler :
+
+ // Helper functions for generating invokes.
+ void InvokePrologue(Register expected_parameter_count,
+- Register actual_parameter_count, Label* done,
+- InvokeType type);
++ Register actual_parameter_count, InvokeType type);
+
+ // Compute memory operands for safepoint stack slots.
+ static int SafepointRegisterStackIndex(int reg_code);
+Index: chromium-134.0.6998.35/v8/src/codegen/riscv/register-riscv.h
+===================================================================
+--- chromium-134.0.6998.35.orig/v8/src/codegen/riscv/register-riscv.h
++++ chromium-134.0.6998.35/v8/src/codegen/riscv/register-riscv.h
+@@ -301,8 +301,7 @@ constexpr Register kJavaScriptCallCodeSt
+ constexpr Register kJavaScriptCallTargetRegister = kJSFunctionRegister;
+ constexpr Register kJavaScriptCallNewTargetRegister = a3;
+ constexpr Register kJavaScriptCallExtraArg1Register = a2;
+-// Leaptiering is not currently available on riscv64.
+-constexpr Register kJavaScriptCallDispatchHandleRegister = no_reg;
++constexpr Register kJavaScriptCallDispatchHandleRegister = a4;
+
+ constexpr Register kRuntimeCallFunctionRegister = a1;
+ constexpr Register kRuntimeCallArgCountRegister = a0;
+Index: chromium-134.0.6998.35/v8/src/compiler/backend/riscv/code-generator-riscv.cc
+===================================================================
+--- chromium-134.0.6998.35.orig/v8/src/compiler/backend/riscv/code-generator-riscv.cc
++++ chromium-134.0.6998.35/v8/src/compiler/backend/riscv/code-generator-riscv.cc
+@@ -706,6 +706,36 @@ void CodeGenerator::AssembleCodeStartReg
+ kJavaScriptCallCodeStartRegister, Operand(kScratchReg));
+ }
+
++#ifdef V8_ENABLE_LEAPTIERING
++// Check that {kJavaScriptCallDispatchHandleRegister} is correct.
++void CodeGenerator::AssembleDispatchHandleRegisterCheck() {
++ DCHECK(linkage()->GetIncomingDescriptor()->IsJSFunctionCall());
++
++ // We currently don't check this for JS builtins as those are sometimes
++ // called directly (e.g. from other builtins) and not through the dispatch
++ // table. This is fine as builtin functions don't use the dispatch handle,
++ // but we could enable this check in the future if we make sure to pass the
++ // kInvalidDispatchHandle whenever we do a direct call to a JS builtin.
++ if (Builtins::IsBuiltinId(info()->builtin())) {
++ return;
++ }
++
++ // For now, we only ensure that the register references a valid dispatch
++ // entry with the correct parameter count. In the future, we may also be able
++ // to check that the entry points back to this code.
++ UseScratchRegisterScope temps(masm());
++ Register actual_parameter_count = temps.Acquire();
++ {
++ UseScratchRegisterScope temps(masm());
++ Register scratch = temps.Acquire();
++ __ LoadParameterCountFromJSDispatchTable(
++ actual_parameter_count, kJavaScriptCallDispatchHandleRegister, scratch);
++ }
++ __ Assert(eq, AbortReason::kWrongFunctionDispatchHandle,
++ actual_parameter_count, Operand(parameter_count_));
++}
++#endif // V8_ENABLE_LEAPTIERING
++
+ // Check if the code object is marked for deoptimization. If it is, then it
+ // jumps to the CompileLazyDeoptimizedCode builtin. In order to do this we need
+ // to:
+@@ -713,16 +743,7 @@ void CodeGenerator::AssembleCodeStartReg
+ // the flags in the referenced {Code} object;
+ // 2. test kMarkedForDeoptimizationBit in those flags; and
+ // 3. if it is not zero then it jumps to the builtin.
+-void CodeGenerator::BailoutIfDeoptimized() {
+- int offset = InstructionStream::kCodeOffset - InstructionStream::kHeaderSize;
+- __ LoadProtectedPointerField(
+- kScratchReg, MemOperand(kJavaScriptCallCodeStartRegister, offset));
+- __ Lw(kScratchReg, FieldMemOperand(kScratchReg, Code::kFlagsOffset));
+- __ And(kScratchReg, kScratchReg,
+- Operand(1 << Code::kMarkedForDeoptimizationBit));
+- __ TailCallBuiltin(Builtin::kCompileLazyDeoptimizedCode, ne, kScratchReg,
+- Operand(zero_reg));
+-}
++void CodeGenerator::BailoutIfDeoptimized() { __ BailoutIfDeoptimized(); }
+
+ // Assembles an instruction after register allocation, producing machine code.
+ CodeGenerator::CodeGenResult CodeGenerator::AssembleArchInstruction(
+Index: chromium-134.0.6998.35/v8/src/maglev/riscv/maglev-assembler-riscv.cc
+===================================================================
+--- chromium-134.0.6998.35.orig/v8/src/maglev/riscv/maglev-assembler-riscv.cc
++++ chromium-134.0.6998.35/v8/src/maglev/riscv/maglev-assembler-riscv.cc
+@@ -127,6 +127,7 @@ void MaglevAssembler::OSRPrologue(Graph*
+ }
+
+ void MaglevAssembler::Prologue(Graph* graph) {
++ ASM_CODE_COMMENT(this);
+ MaglevAssembler::TemporaryRegisterScope temps(this);
+ // We add two extra registers to the scope. Ideally we could add all the
+ // allocatable general registers, except Context, JSFunction, NewTarget and
+@@ -147,6 +148,7 @@ void MaglevAssembler::Prologue(Graph* gr
+ }
+
+ // Tiering support.
++#ifndef V8_ENABLE_LEAPTIERING
+ if (v8_flags.turbofan) {
+ using D = MaglevOptimizeCodeOrTailCallOptimizedCodeSlotDescriptor;
+ Register flags = D::GetRegisterParameter(D::kFlags);
+@@ -169,6 +171,7 @@ void MaglevAssembler::Prologue(Graph* gr
+ TailCallBuiltin(Builtin::kMaglevOptimizeCodeOrTailCallOptimizedCodeSlot,
+ needs_processing, flag_reg, Operand(zero_reg));
+ }
++#endif
+
+ EnterFrame(StackFrame::MAGLEV);
+ // Save arguments in frame.
+
diff --git a/www-client/chromium/files/swiftshader-MCDissassembler.patch b/www-client/chromium/files/swiftshader-MCDissassembler.patch
deleted file mode 100644
index 59a06a1..0000000
--- a/www-client/chromium/files/swiftshader-MCDissassembler.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -Naur a/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn b/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn
---- a/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn 2024-03-11 15:56:30.292460948 +0000
-+++ b/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn 2024-03-11 15:57:33.253853408 +0000
-@@ -773,6 +773,7 @@
- "llvm/lib/MC/MCContext.cpp",
- "llvm/lib/MC/MCDXContainerStreamer.cpp",
- "llvm/lib/MC/MCDXContainerWriter.cpp",
-+ "llvm/lib/MC/MCDisassembler/MCDisassembler.cpp",
- "llvm/lib/MC/MCDisassembler/MCRelocationInfo.cpp",
- "llvm/lib/MC/MCDwarf.cpp",
- "llvm/lib/MC/MCELFObjectTargetWriter.cpp",
diff --git a/www-client/chromium/files/swiftshader-use-llvm16.patch b/www-client/chromium/files/swiftshader-use-llvm16.patch
deleted file mode 100644
index 107990b..0000000
--- a/www-client/chromium/files/swiftshader-use-llvm16.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/third_party/swiftshader/src/Reactor/BUILD.gn 2023-08-12 03:48:39.116173586 +0200
-+++ b/third_party/swiftshader/src/Reactor/BUILD.gn 2023-08-12 03:49:30.233446545 +0200
-@@ -307,7 +307,7 @@
-
- if (supports_llvm) {
- swiftshader_source_set("swiftshader_llvm_reactor") {
-- llvm_dir = "../../third_party/llvm-10.0"
-+ llvm_dir = "../../third_party/llvm-16.0"
-
- deps = [
- ":swiftshader_reactor_base",
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] proj/riscv:master commit in: www-client/chromium/files/, www-client/chromium/
@ 2025-04-15 14:44 Jakov Smolić
0 siblings, 0 replies; 10+ messages in thread
From: Jakov Smolić @ 2025-04-15 14:44 UTC (permalink / raw
To: gentoo-commits
commit: d3ac77c1f3aaa93900a4ea1d06bcfa72c56a40d4
Author: Andrew Cameron <apcameron <AT> gmail <DOT> com>
AuthorDate: Mon Apr 14 22:47:55 2025 +0000
Commit: Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
CommitDate: Tue Apr 15 14:44:48 2025 +0000
URL: https://gitweb.gentoo.org/proj/riscv.git/commit/?id=d3ac77c1
Update Chromium to 135.0.7049.84
Signed-off-by: Andrew Cameron <apcameron <AT> gmail.com>
Closes: https://github.com/gentoo/riscv/pull/29
Signed-off-by: Jakov Smolić <jsmolic <AT> gentoo.org>
www-client/chromium/Manifest | 11 +-
...98.117.ebuild => chromium-135.0.7049.52.ebuild} | 37 +-
...98.117.ebuild => chromium-135.0.7049.84.ebuild} | 71 ++-
.../files/chromium-135-webrtc-pipewire.patch | 29 +
.../files/chromium-136-drop-nodejs-ver-check.patch | 39 ++
.../files/fix-build-with-pipewire-1.3.82.patch | 23 +
www-client/chromium/files/riscv-ffmpeg.patch | 674 +++------------------
www-client/chromium/files/riscv-misc.patch | 20 +-
www-client/chromium/files/riscv-sandbox.patch | 154 ++---
www-client/chromium/files/riscv-swiftshader.patch | 25 +-
10 files changed, 363 insertions(+), 720 deletions(-)
diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
index 41f472c..dd5a578 100644
--- a/www-client/chromium/Manifest
+++ b/www-client/chromium/Manifest
@@ -1,11 +1,10 @@
-DIST chromium-134.0.6998.117-linux-testdata.tar.xz 653772892 BLAKE2B 145c4352deab97fcfe9c560646389cf596faaaae7d13c17f06a349c076048da2dfbbc88aba85a4335702a7f25136570a7e780c9e08fb21587242d0284acafcf3 SHA512 6445ab8a2e7efae2862a050cef12a0169d0e9f1d1b0853dccaffb438be20d6d442b11f83752e63baba4dae210097f51285493ccb5aba14350df05abc2a5c7fe4
-DIST chromium-134.0.6998.117-linux.tar.xz 1466183312 BLAKE2B 717948a59f5c7f11a76055f3a9b5a54c9836c5d6ff1a25804701dfe8bfd725187507f0d9485bfddbc574acc122170341c1e88110eba30e67b289a726da47d1bc SHA512 edfc60d1af58117ba5f0276051cf545800f1d4338189757c3ce76007a2ac425fedcef0c8fd14059e2a3c51b047186dc7ed6fb57291f2ab61b7d28907245bbbbd
-DIST chromium-134.0.6998.35-linux-testdata.tar.xz 653357556 BLAKE2B 0e34c31210e1bfc6aa2cc6d79d9cf1e9fcdb9d1693be867438cfc639a8461203d96cdf159624d81020611eb9dc3a51958af4d7ab8d30c46f2b98a9eb2a1a303b SHA512 ab36342b045ff796f4b200d25e2a259b2a65e93d6bc32dc30f001e0c5709047bc937023abcfbe748f9a567d0df18bc188c7bbfd24d142d9f6e63c26b350647f6
-DIST chromium-134.0.6998.35-linux.tar.xz 1463053644 BLAKE2B 28af05a5b650495174b2240a42b5f0073a30da7094170b80a8ea1d000b306d408e0b58772e8928b6dd110f815430a6725fddf7e1e7ee8073c6b343bee189e556 SHA512 f9da9256ef4518e53c139c6c074b6b4fe10f028e37ebee488a95ed84d6ed47acf802a9316eb215d9f2b3ebb8f1bc70ef837334256272e9f13fc3674ec36f1336
+DIST chromium-135.0.7049.52-linux-testdata.tar.xz 646356936 BLAKE2B 0caacf3b9723c967abf1a254fd16673ebf37c959994e9136437ba4c3f2ca3961f9bd23c31113a0dca1293d017e3a33ec905ffdd3b38d72bf6ecb6c15ad7ccf0a SHA512 5eb4aba73a2bddf325217f7e4ae89aab46511777e2e4d327bdff9fb1f995e6319f912abfdaf3fefa870cd8f938fd9c33b81d627619bae835ebc8f4f9300180fa
+DIST chromium-135.0.7049.52-linux.tar.xz 1439720440 BLAKE2B d67c80a17e648b5a65a5e30a7cd3c534dbc780bd0b829a824316ae43e5b71d819383193474c84d57395045f6e4e4c77c7142b3865e7cce8ba696bbbbe5316b29 SHA512 43bd59b3c29c987503b395e975c42883fc9bae680a0ed9bbba385d74c87e686ed7c538282cdba8ac6b64e867a68c6aadfefc1eea120ae8ed76a1e3a21640c916
+DIST chromium-135.0.7049.84-linux-testdata.tar.xz 646330872 BLAKE2B 9b0f837891e08ab628dcdd607c736d68d8f5b9966f2fc52fe6860ac8753dfca52b76ca673a0b3fc7bb4b9fd3be2e035fa5c5b9bc4d8aaa511e48efb30cc73a62 SHA512 0909954ef204cb032bf447526c7ca0f8d6f32580f54ca192c1ebae82891f44381c8a825e1c975d9f386143eb365a624b8b85d6e18f8938f58a453adbd2899ea5
+DIST chromium-135.0.7049.84-linux.tar.xz 1439815008 BLAKE2B 74142b8fcd56cab1d5fd8b2e176985985b4abf3c5ab19d841dae1b79bf247c8e4807cd670dc2a930864b698ae212d2c188c425e5f6dbdfe181901b580c2241a8 SHA512 8f6bf8d41b12bdaad67608083eac5a5ca69d879dd0206c221a3a6bb23fe50561936f176f68f34ff6f96985b4c98caa4d3248dabf4c8d378ea5ddc7b9314695f0
DIST chromium-clang-llvmorg-20-init-17108-g29ed6000-3.tar.xz 54170388 BLAKE2B 1383726ef2977ddb6ca9cef7eb7f5730e9635c570c1e20c3103922242e012579b87cf7ada668a6dedec375fa821115e5c79c32b12ab486a9e427f2e00344cfdc SHA512 a2aee165ee5581f442af222b23182370349a3b0b5412d05600c2d2258f31449e986bb7e88601b26049b4a926b15938238bfe8abd01ff6eaf2df84a64812007a1
-DIST chromium-openpower-7d1ac28278.tar.bz2 390422 BLAKE2B b2e135ca43a0605ef5aa1bc46a2794a1bb8fb0e74dec6172d022453dc680ecec4d2cf6b23035634bfa0891b19e3dfdb980da73205c0c6d2e92179d154014feeb SHA512 c684bab2fe1857164d007a5e3e7b3892cab2c94214ff4395149d327bdb85f1d5196a91b8b4bd0da04c5ba32a86dfad42674c6cca743f4e02a6b7213d7514c1b3
DIST chromium-openpower-a85b64f07b.tar.bz2 387899 BLAKE2B b01fda2d64ce73068d1536a10cc0896f07a4b714cdb25698b1df8b3252baa0c21c4209b307cf1cb554854f6d0bfe3cd35e06aaa8d02ac5d409a119335084c324 SHA512 05eee81677e8766808441c939bee68e2e6c58ec91f471d88a40181d2eda78614a0a6d27d92ff8f9dda564d12f3451bace4ff2727594748c5c238a3533038019b
-DIST chromium-patches-134-1.tar.bz2 10440 BLAKE2B 5755ed6a20b141d33015a3959b273ca0df079f891513e4d83f356a882d51702dbba697c950b3fd9c68e37500240d18abfa99d0246b1b847a8d8109dbe7d4dd05 SHA512 294276f13c1f3e46a552ea856237fa028568bef1e72d1600ba63a3d17365385f6a6073367a7d4fde99202272d906894a2208390682576392fe40a3489d58851b
+DIST chromium-patches-135.tar.bz2 10424 BLAKE2B 89d265be9e099000dd75b2073e5f175002632c1e41625cb93d80045235c631e39765a9952e1252652f8ff7dd878ed5f5b99a6b3f4a2796957d5f28bcc8daa531 SHA512 6aa2ae6b39eecff535356623bded267fa257f3e5390a9d59d65aab7f34e5b812e50e5fa9f20cb2dcbea51856f86dd1f5cd19e0e144691ef96aee28525c9abd3b
DIST chromium-profiler-0.2.tar 259952640 BLAKE2B 5e82389fce00b267280d633b26551231c558b80f0c92cd7d60271095a3503365ab673e7a46dc5f74f8a82db1f21262cb24dcc0531d954bab5fb3b175dab3394d SHA512 9fa89a5ab728419683e7495ae676567480987d68a2d589f2aa97bfcbcf123f3c8f97f8bca5f65e5e3f6e41475535add473ded83b9c7a33bb4746a9d05b298a6c
DIST chromium-rust-toolchain-ad211ced81-1-llvmorg-20-init-17108-g29ed6000.tar.xz 124591376 BLAKE2B c062e7283994ef15055a37f66a1c01dfcbcf03d16b7de48e7d017cec479f306999112dcd0f016157cfd0334349b55ae29512be3063dc6c3de90311520e90a5c1 SHA512 09be07ff0adfcc2928b28f5763a7e18bb7ef1f0cbf4a2475e3e6ae19a0a310a4a8f323375b947a48247853412119781bc9fa1422e24b96423c071f68337d6766
DIST chromium-testfonts-f26f29c9d3.tar.gz 32750602 BLAKE2B 498f8b2e0811c98dc3d4aaa75559e69c782afb4bd12328cfdb7244ddba5cae7ee47becd27b2549d7b36bed417601f70f4c192934b0f08496cef1547d0502d93c SHA512 96b090446862997c8134e2971f0e38793ecc1208d547e554c9b651ccfb4127c4de86754903fea57a7292a2823c45117bae0ec13ed87aed20c248fb779579fbde
diff --git a/www-client/chromium/chromium-134.0.6998.117.ebuild b/www-client/chromium/chromium-135.0.7049.52.ebuild
similarity index 97%
copy from www-client/chromium/chromium-134.0.6998.117.ebuild
copy to www-client/chromium/chromium-135.0.7049.52.ebuild
index 66926bc..793d2f9 100644
--- a/www-client/chromium/chromium-134.0.6998.117.ebuild
+++ b/www-client/chromium/chromium-135.0.7049.52.ebuild
@@ -22,7 +22,7 @@ EAPI=8
# new "Distro tarballs" and include binaries (etc) that are not useful for
# downstream consumers (like distributions).
-GN_MIN_VER=0.2207
+GN_MIN_VER=0.2217
# chromium-tools/get-chromium-toolchain-strings.py
TEST_FONT=f26f29c9d3bfae588207bbc9762de8d142e58935c62a86f67332819b15203b35
BUNDLED_CLANG_VER=llvmorg-20-init-17108-g29ed6000-3
@@ -47,8 +47,8 @@ inherit python-any-r1 readme.gentoo-r1 rust systemd toolchain-funcs virtualx xdg
DESCRIPTION="Open-source version of Google Chrome web browser"
HOMEPAGE="https://www.chromium.org/"
-PPC64_HASH="7d1ac28278b5679d0b950ebd380bdd889b319592"
-PATCH_V="${PV%%\.*}-1"
+PPC64_HASH="a85b64f07b489b8c6fdb13ecf79c16c56c560fc6"
+PATCH_V="${PV%%\.*}"
SRC_URI="https://chromium-tarballs.distfiles.gentoo.org/${P}-linux.tar.xz
!bundled-toolchain? (
https://gitlab.com/Matt.Jolly/chromium-patches/-/archive/${PATCH_V}/chromium-patches-${PATCH_V}.tar.bz2
@@ -73,7 +73,7 @@ SLOT="0/stable"
# 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"
+ KEYWORDS="amd64 ~arm64 ~riscv"
fi
IUSE_SYSTEM_LIBS="+system-harfbuzz +system-icu +system-png +system-zstd"
@@ -409,10 +409,9 @@ src_prepare() {
"${FILESDIR}/chromium-109-system-zlib.patch"
"${FILESDIR}/chromium-111-InkDropHost-crash.patch"
"${FILESDIR}/chromium-131-unbundle-icu-target.patch"
- "${FILESDIR}/chromium-134-map_droppable-glibc.patch"
- "${FILESDIR}/chromium-134-oauth2-client-switches.patch"
"${FILESDIR}/chromium-134-bindgen-custom-toolchain.patch"
- "${FILESDIR}/chromium-135-fix-non-wayland-build.patch"
+ "${FILESDIR}/chromium-135-oauth2-client-switches.patch"
+ "${FILESDIR}/chromium-135-map_droppable-glibc.patch"
"${FILESDIR}/riscv-swiftshader.patch"
"${FILESDIR}/Debian-fix-rust-linking.patch"
"${FILESDIR}/riscv-dav1d.patch"
@@ -421,11 +420,10 @@ src_prepare() {
"${FILESDIR}/compiler-rt-riscv.patch"
"${FILESDIR}/cpuinfo.patch"
"${FILESDIR}/riscv-misc.patch"
- "${FILESDIR}/libstdc++-fixup.patch"
"${FILESDIR}/chromium-134-type-mismatch-error.patch"
"${FILESDIR}/0001-chrome-runtime_api_delegate-add-riscv64-define.patch"
"${FILESDIR}/0001-extensions-common-api-runtime.json-riscv64-support.patch"
- "${FILESDIR}/riscv-v8.patch"
+ "${FILESDIR}/fix-build-with-pipewire-1.3.82.patch"
)
if use bundled-toolchain; then
@@ -527,6 +525,25 @@ src_prepare() {
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
+
+ pushd third_party/devtools-frontend/src
+ sed -i -e 's/@rollup/rollup/' -e "s/'wasm-node',//" scripts/devtools_paths.py
+ local _rollup_ver="$(jq -r .devDependencies.\"@rollup/wasm-node\" package.json)"
+ jq ".devDependencies.rollup=\"$_rollup_ver\" | .devDependencies.\"@rollup/rollup-linux-riscv64-gnu\"=\"$_rollup_ver\"" package.json > package.json.new
+ mv package.json{.new,}
+ # Chromium hosts a custom registry at https://npm.skia.org/chrome-devtools/
+ # and rejects some packages:
+ # Package fs-extra with version 11.3.0 was created 108h0m0s time ago. This is less than 1 week and so failed the audit.
+ sed -i /registry/d .npmrc
+ # Replace direct invocation of wasm rollup
+ sed -i 's\@rollup/wasm-node\rollup\' \
+ inspector_overlay/BUILD.gn \
+ front_end/models/live-metrics/web-vitals-injected/BUILD.gn \
+ front_end/Images/BUILD.gn \
+ front_end/panels/recorder/injected/BUILD.gn \
+ scripts/build/ninja/bundle.gni
+ popd
+ python third_party/devtools-frontend/src/scripts/deps/manage_node_deps.py
fi
# adjust python interpreter version
@@ -641,7 +658,6 @@ src_prepare() {
third_party/googletest
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
@@ -727,6 +743,7 @@ src_prepare() {
third_party/private_membership
third_party/private-join-and-compute
third_party/protobuf
+ third_party/protobuf/third_party/utf8_range
third_party/pthreadpool
third_party/puffin
third_party/pyjson5
diff --git a/www-client/chromium/chromium-134.0.6998.117.ebuild b/www-client/chromium/chromium-135.0.7049.84.ebuild
similarity index 95%
rename from www-client/chromium/chromium-134.0.6998.117.ebuild
rename to www-client/chromium/chromium-135.0.7049.84.ebuild
index 66926bc..8e2ad89 100644
--- a/www-client/chromium/chromium-134.0.6998.117.ebuild
+++ b/www-client/chromium/chromium-135.0.7049.84.ebuild
@@ -22,7 +22,7 @@ EAPI=8
# new "Distro tarballs" and include binaries (etc) that are not useful for
# downstream consumers (like distributions).
-GN_MIN_VER=0.2207
+GN_MIN_VER=0.2217
# chromium-tools/get-chromium-toolchain-strings.py
TEST_FONT=f26f29c9d3bfae588207bbc9762de8d142e58935c62a86f67332819b15203b35
BUNDLED_CLANG_VER=llvmorg-20-init-17108-g29ed6000-3
@@ -47,9 +47,9 @@ inherit python-any-r1 readme.gentoo-r1 rust systemd toolchain-funcs virtualx xdg
DESCRIPTION="Open-source version of Google Chrome web browser"
HOMEPAGE="https://www.chromium.org/"
-PPC64_HASH="7d1ac28278b5679d0b950ebd380bdd889b319592"
-PATCH_V="${PV%%\.*}-1"
-SRC_URI="https://chromium-tarballs.distfiles.gentoo.org/${P}-linux.tar.xz
+PPC64_HASH="a85b64f07b489b8c6fdb13ecf79c16c56c560fc6"
+PATCH_V="${PV%%\.*}"
+SRC_URI="https://github.com/chromium-linux-tarballs/chromium-tarballs/releases/download/${PV}/chromium-${PV}-linux.tar.xz
!bundled-toolchain? (
https://gitlab.com/Matt.Jolly/chromium-patches/-/archive/${PATCH_V}/chromium-patches-${PATCH_V}.tar.bz2
)
@@ -60,7 +60,7 @@ SRC_URI="https://chromium-tarballs.distfiles.gentoo.org/${P}-linux.tar.xz
-> chromium-rust-toolchain-${RUST_SHORT_HASH}-${BUNDLED_CLANG_VER%-*}.tar.xz
)
test? (
- https://chromium-tarballs.distfiles.gentoo.org/${P}-linux-testdata.tar.xz
+ https://github.com/chromium-linux-tarballs/chromium-tarballs/releases/download/${PV}/chromium-${PV}-linux-testdata.tar.xz
https://chromium-fonts.storage.googleapis.com/${TEST_FONT} -> chromium-testfonts-${TEST_FONT:0:10}.tar.gz
)
ppc64? (
@@ -72,8 +72,9 @@ LICENSE="BSD"
SLOT="0/stable"
# Dev exists mostly to give devs some breathing room for beta/stable releases;
# it shouldn't be keyworded but adventurous users can select it.
+# Do _not_ drop stable keywords for amd64 on patch releases. aarch64 still needs to go through the stablereq process.
if [[ ${SLOT} != "0/dev" ]]; then
- KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv"
+ KEYWORDS="amd64 ~arm64 ~riscv"
fi
IUSE_SYSTEM_LIBS="+system-harfbuzz +system-icu +system-png +system-zstd"
@@ -260,22 +261,25 @@ pre_build_checks() {
# Check build requirements: bugs #471810, #541816, #914220
# We're going to start doing maths here on the size of an unpacked source tarball,
# this should make updates easier as chromium continues to balloon in size.
- local BASE_DISK=24
- local EXTRA_DISK=1
- local CHECKREQS_MEMORY="4G"
- tc-is-cross-compiler && EXTRA_DISK=2
+ # xz -l /var/cache/distfiles/chromium-${PV}*.tar.xz
+ local base_disk=9 # Round up
+ use test && base_disk=$((base_disk + 5))
+ local extra_disk=1 # Always include a little extra space
+ local memory=4
+ tc-is-cross-compiler && extra_disk=$((extra_disk * 2))
if tc-is-lto || use pgo; then
- CHECKREQS_MEMORY="9G"
- tc-is-cross-compiler && EXTRA_DISK=4
- use pgo && EXTRA_DISK=8
+ memory=$((memory * 2 + 1))
+ tc-is-cross-compiler && extra_disk=$((extra_disk * 2)) # Double the requirements
+ use pgo && extra_disk=$((extra_disk + 4))
fi
if is-flagq '-g?(gdb)?([1-9])'; then
if use custom-cflags; then
- EXTRA_DISK=13
+ extra_disk=$((extra_disk + 5))
fi
- CHECKREQS_MEMORY="16G"
+ memory=$((memory * 2))
fi
- CHECKREQS_DISK_BUILD="$((BASE_DISK + EXTRA_DISK))G"
+ local CHECKREQS_MEMORY="${memory}G"
+ local CHECKREQS_DISK_BUILD="$((base_disk + extra_disk))G"
check-reqs_${EBUILD_PHASE_FUNC}
}
@@ -409,10 +413,10 @@ src_prepare() {
"${FILESDIR}/chromium-109-system-zlib.patch"
"${FILESDIR}/chromium-111-InkDropHost-crash.patch"
"${FILESDIR}/chromium-131-unbundle-icu-target.patch"
- "${FILESDIR}/chromium-134-map_droppable-glibc.patch"
- "${FILESDIR}/chromium-134-oauth2-client-switches.patch"
"${FILESDIR}/chromium-134-bindgen-custom-toolchain.patch"
- "${FILESDIR}/chromium-135-fix-non-wayland-build.patch"
+ "${FILESDIR}/chromium-135-oauth2-client-switches.patch"
+ "${FILESDIR}/chromium-135-map_droppable-glibc.patch"
+ "${FILESDIR}/chromium-135-webrtc-pipewire.patch"
"${FILESDIR}/riscv-swiftshader.patch"
"${FILESDIR}/Debian-fix-rust-linking.patch"
"${FILESDIR}/riscv-dav1d.patch"
@@ -421,11 +425,9 @@ src_prepare() {
"${FILESDIR}/compiler-rt-riscv.patch"
"${FILESDIR}/cpuinfo.patch"
"${FILESDIR}/riscv-misc.patch"
- "${FILESDIR}/libstdc++-fixup.patch"
"${FILESDIR}/chromium-134-type-mismatch-error.patch"
"${FILESDIR}/0001-chrome-runtime_api_delegate-add-riscv64-define.patch"
"${FILESDIR}/0001-extensions-common-api-runtime.json-riscv64-support.patch"
- "${FILESDIR}/riscv-v8.patch"
)
if use bundled-toolchain; then
@@ -515,18 +517,37 @@ src_prepare() {
mkdir -p third_party/node/linux/node-linux-x64/bin || die
fi
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
+ _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
+
+ pushd third_party/devtools-frontend/src
+ sed -i -e 's/@rollup/rollup/' -e "s/'wasm-node',//" scripts/devtools_paths.py
+ local _rollup_ver="$(jq -r .devDependencies.\"@rollup/wasm-node\" package.json)"
+ jq ".devDependencies.rollup=\"$_rollup_ver\" | .devDependencies.\"@rollup/rollup-linux-riscv64-gnu\"=\"$_rollup_ver\"" package.json > package.json.new
+ mv package.json{.new,}
+ # Chromium hosts a custom registry at https://npm.skia.org/chrome-devtools/
+ # and rejects some packages:
+ # Package fs-extra with version 11.3.0 was created 108h0m0s time ago. This is less than 1 week and so failed the audit.
+ sed -i /registry/d .npmrc
+ # Replace direct invocation of wasm rollup
+ sed -i 's\@rollup/wasm-node\rollup\' \
+ inspector_overlay/BUILD.gn \
+ front_end/models/live-metrics/web-vitals-injected/BUILD.gn \
+ front_end/Images/BUILD.gn \
+ front_end/panels/recorder/injected/BUILD.gn \
+ scripts/build/ninja/bundle.gni
+ popd
+ python third_party/devtools-frontend/src/scripts/deps/manage_node_deps.py
fi
# adjust python interpreter version
@@ -641,7 +662,6 @@ src_prepare() {
third_party/googletest
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
@@ -727,6 +747,7 @@ src_prepare() {
third_party/private_membership
third_party/private-join-and-compute
third_party/protobuf
+ third_party/protobuf/third_party/utf8_range
third_party/pthreadpool
third_party/puffin
third_party/pyjson5
diff --git a/www-client/chromium/files/chromium-135-webrtc-pipewire.patch b/www-client/chromium/files/chromium-135-webrtc-pipewire.patch
new file mode 100644
index 0000000..c100643
--- /dev/null
+++ b/www-client/chromium/files/chromium-135-webrtc-pipewire.patch
@@ -0,0 +1,29 @@
+https://webrtc.googlesource.com/src/+/0a9787897f3d36055130b0532967d31c31e8408f
+
+Pipewire 1.4 changed some functions from taking void*
+to taking the actual type they expect, which makes
+some code that built with 1.2 no longer build with 1.4.
+
+For older versions, this is effectively a no-op.
+
+--- a/third_party/webrtc/modules/video_capture/linux/pipewire_session.cc
++++ b/third_party/webrtc/modules/video_capture/linux/pipewire_session.cc
+
+@@ -87,7 +87,7 @@
+ .param = OnNodeParam,
+ };
+
+- pw_node_add_listener(proxy_, &node_listener_, &node_events, this);
++ pw_node_add_listener(reinterpret_cast<pw_node*>(proxy_), &node_listener_, &node_events, this);
+ }
+
+ // static
+@@ -119,7 +119,7 @@
+ uint32_t id = info->params[i].id;
+ if (id == SPA_PARAM_EnumFormat &&
+ info->params[i].flags & SPA_PARAM_INFO_READ) {
+- pw_node_enum_params(that->proxy_, 0, id, 0, UINT32_MAX, nullptr);
++ pw_node_enum_params(reinterpret_cast<pw_node*>(that->proxy_), 0, id, 0, UINT32_MAX, nullptr);
+ break;
+ }
+ }
diff --git a/www-client/chromium/files/chromium-136-drop-nodejs-ver-check.patch b/www-client/chromium/files/chromium-136-drop-nodejs-ver-check.patch
new file mode 100644
index 0000000..9cde5a9
--- /dev/null
+++ b/www-client/chromium/files/chromium-136-drop-nodejs-ver-check.patch
@@ -0,0 +1,39 @@
+From 3e06125358a050cc6535befd4fbd5b4f160a56b9 Mon Sep 17 00:00:00 2001
+From: Matt Jolly <kangie@gentoo.org>
+Date: Tue, 25 Mar 2025 13:33:48 +1000
+Subject: [PATCH] Remove nodejs version check
+
+Added in https://github.com/chromium/chromium/commit/0ff8528999941d7182be6fc77aeb12a110a3cd86,
+this change is only really useful for gclient checkouts and breaks the
+ability for downstreams to provide their own, compatible, nodejs
+version via the system package manager (or for use on arches other than
+those that Google provides binaries for):
+
+[ERR_ASSERTION]: Failed NodeJS version check: Expected version 'v22.11.0', but found 'v22.13.1'. Did you run 'gclient sync'
+
+This is google development footgun protection, working around
+poor development practices and gclient's inability to ensure
+that the source tree is in a consistent state. We don't need it
+here.
+
+Signed-off-by: Matt Jolly <kangie@gentoo.org>
+--- a/third_party/node/node.gni
++++ b/third_party/node/node.gni
+@@ -36,15 +36,5 @@ template("node") {
+ }
+ }
+
+- # Automatically add a dependency to ":check_version" to ensure NodeJS is
+- # always running the expected version, except when the ':check_version'
+- # target itself is running in which case it shouldn't depend on itself.
+- if (get_label_info(":" + target_name, "label_no_toolchain") !=
+- "//third_party/node:check_version") {
+- if (!defined(deps)) {
+- deps = []
+- }
+- deps += [ "//third_party/node:check_version" ]
+- }
+ }
+ }
+--
+2.48.1
diff --git a/www-client/chromium/files/fix-build-with-pipewire-1.3.82.patch b/www-client/chromium/files/fix-build-with-pipewire-1.3.82.patch
new file mode 100644
index 0000000..5a3adfe
--- /dev/null
+++ b/www-client/chromium/files/fix-build-with-pipewire-1.3.82.patch
@@ -0,0 +1,23 @@
+Index: chromium-133.0.6943.98/third_party/webrtc/modules/video_capture/linux/pipewire_session.cc
+===================================================================
+--- chromium-133.0.6943.98.orig/third_party/webrtc/modules/video_capture/linux/pipewire_session.cc
++++ chromium-133.0.6943.98/third_party/webrtc/modules/video_capture/linux/pipewire_session.cc
+@@ -87,7 +87,7 @@ PipeWireNode::PipeWireNode(PipeWireSessi
+ .param = OnNodeParam,
+ };
+
+- pw_node_add_listener(proxy_, &node_listener_, &node_events, this);
++ pw_node_add_listener(reinterpret_cast<pw_node*>(proxy_), &node_listener_, &node_events, this);
+ }
+
+ // static
+@@ -119,7 +119,7 @@ void PipeWireNode::OnNodeInfo(void* data
+ uint32_t id = info->params[i].id;
+ if (id == SPA_PARAM_EnumFormat &&
+ info->params[i].flags & SPA_PARAM_INFO_READ) {
+- pw_node_enum_params(that->proxy_, 0, id, 0, UINT32_MAX, nullptr);
++ pw_node_enum_params(reinterpret_cast<pw_node *>(that->proxy_), 0, id, 0, UINT32_MAX, nullptr);
+ break;
+ }
+ }
+
diff --git a/www-client/chromium/files/riscv-ffmpeg.patch b/www-client/chromium/files/riscv-ffmpeg.patch
index c7a1059..9d74d3e 100644
--- a/www-client/chromium/files/riscv-ffmpeg.patch
+++ b/www-client/chromium/files/riscv-ffmpeg.patch
@@ -1,6 +1,6 @@
diff '--color=auto' -Naur a/third_party/ffmpeg/CREDITS.chromium b/third_party/ffmpeg/CREDITS.chromium
---- a/third_party/ffmpeg/CREDITS.chromium 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/CREDITS.chromium 2025-02-07 10:57:59.000000000 +0000
+--- a/third_party/ffmpeg/CREDITS.chromium 2025-03-31 16:23:48.000000000 +0100
++++ b/third_party/ffmpeg/CREDITS.chromium 2025-04-07 23:00:06.000000000 +0100
@@ -131,6 +131,181 @@
********************************************************************************
@@ -215,252 +215,19 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/CREDITS.chromium b/third_party/ff
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/ios/arm64/config.h b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config.h
---- a/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config.h 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config.h 2025-02-07 10:58:55.000000000 +0000
-@@ -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/ezemtsov/projects/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=cla
ng --enable-cross-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=arm64-apple-macosx' --extra-cflags=-F/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/20/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/
home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64' --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/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang --enable-cross-compile --cc=clang --l
d=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=arm64-apple-macosx' --extra-cflags=-F/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/20/include --extra-ldflags=-syslibroot --extra-ldflags=/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldf
lags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64' --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/a/external/github.com/llvm/llvm-project 923566a67de39a00eb6fc5cabbad307a72aa338e)"
-+#define CC_IDENT "clang version 20.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 8cb44859cc31929521c09fc6a8add66d53db44de)"
- #define OS_NAME darwin
- #define EXTERN_PREFIX "_"
- #define EXTERN_ASM _
-@@ -32,6 +32,7 @@
- #define ARCH_SPARC64 0
- #define ARCH_TILEGX 0
- #define ARCH_TILEPRO 0
-+#define ARCH_WASM 0
- #define ARCH_X86 0
- #define ARCH_X86_32 0
- #define ARCH_X86_64 0
-@@ -57,6 +58,7 @@
- #define HAVE_RVV 0
- #define HAVE_RV_ZICBOP 1
- #define HAVE_RV_ZVBB 0
-+#define HAVE_SIMD128 0
- #define HAVE_AESNI 0
- #define HAVE_AMD3DNOW 0
- #define HAVE_AMD3DNOWEXT 0
-@@ -112,6 +114,7 @@
- #define HAVE_RVV_EXTERNAL 0
- #define HAVE_RV_ZICBOP_EXTERNAL 0
- #define HAVE_RV_ZVBB_EXTERNAL 0
-+#define HAVE_SIMD128_EXTERNAL 0
- #define HAVE_AESNI_EXTERNAL 0
- #define HAVE_AMD3DNOW_EXTERNAL 0
- #define HAVE_AMD3DNOWEXT_EXTERNAL 0
-@@ -167,6 +170,7 @@
- #define HAVE_RVV_INLINE 0
- #define HAVE_RV_ZICBOP_INLINE 0
- #define HAVE_RV_ZVBB_INLINE 0
-+#define HAVE_SIMD128_INLINE 0
- #define HAVE_AESNI_INLINE 0
- #define HAVE_AMD3DNOW_INLINE 0
- #define HAVE_AMD3DNOWEXT_INLINE 0
-@@ -205,7 +209,6 @@
- #define HAVE_FAST_CLZ 1
- #define HAVE_FAST_CMOV 0
- #define HAVE_FAST_FLOAT16 1
--#define HAVE_LOCAL_ALIGNED 0
- #define HAVE_SIMD_ALIGN_16 1
- #define HAVE_SIMD_ALIGN_32 0
- #define HAVE_SIMD_ALIGN_64 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config_components.h b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config_components.h
---- a/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config_components.h 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/config_components.h 2025-02-07 10:58:55.000000000 +0000
-@@ -243,6 +243,7 @@
- #define CONFIG_RV20_DECODER 0
- #define CONFIG_RV30_DECODER 0
- #define CONFIG_RV40_DECODER 0
-+#define CONFIG_RV60_DECODER 0
- #define CONFIG_S302M_DECODER 0
- #define CONFIG_SANM_DECODER 0
- #define CONFIG_SCPR_DECODER 0
-@@ -650,6 +651,7 @@
- #define CONFIG_DXV_ENCODER 0
- #define CONFIG_EXR_ENCODER 0
- #define CONFIG_FFV1_ENCODER 0
-+#define CONFIG_FFV1_VULKAN_ENCODER 0
- #define CONFIG_FFVHUFF_ENCODER 0
- #define CONFIG_FITS_ENCODER 0
- #define CONFIG_FLASHSV_ENCODER 0
-@@ -956,6 +958,7 @@
- #define CONFIG_VP9_VAAPI_HWACCEL 0
- #define CONFIG_VP9_VDPAU_HWACCEL 0
- #define CONFIG_VP9_VIDEOTOOLBOX_HWACCEL 0
-+#define CONFIG_VVC_VAAPI_HWACCEL 0
- #define CONFIG_WMV3_D3D11VA_HWACCEL 0
- #define CONFIG_WMV3_D3D11VA2_HWACCEL 0
- #define CONFIG_WMV3_D3D12VA_HWACCEL 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/libavutil/ffversion.h b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/libavutil/ffversion.h
---- a/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/libavutil/ffversion.h 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/chromium/config/Chrome/ios/arm64/libavutil/ffversion.h 2025-02-07 10:58:55.000000000 +0000
-@@ -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-118887-g99f17d50d3"
-+#define FFMPEG_VERSION "N-119293-g19beff4292"
- #endif /* AVUTIL_FFVERSION_H */
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.asm b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.asm
---- a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.asm 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.asm 2025-02-07 10:58:55.000000000 +0000
-@@ -17,6 +17,7 @@
- %define ARCH_SPARC64 0
- %define ARCH_TILEGX 0
- %define ARCH_TILEPRO 0
-+%define ARCH_WASM 0
- %define ARCH_X86 1
- %define ARCH_X86_32 0
- %define ARCH_X86_64 1
-@@ -42,6 +43,7 @@
- %define HAVE_RVV 0
- %define HAVE_RV_ZICBOP 1
- %define HAVE_RV_ZVBB 0
-+%define HAVE_SIMD128 0
- %define HAVE_AESNI 1
- %define HAVE_AMD3DNOW 1
- %define HAVE_AMD3DNOWEXT 1
-@@ -97,6 +99,7 @@
- %define HAVE_RVV_EXTERNAL 0
- %define HAVE_RV_ZICBOP_EXTERNAL 0
- %define HAVE_RV_ZVBB_EXTERNAL 0
-+%define HAVE_SIMD128_EXTERNAL 0
- %define HAVE_AESNI_EXTERNAL 1
- %define HAVE_AMD3DNOW_EXTERNAL 1
- %define HAVE_AMD3DNOWEXT_EXTERNAL 1
-@@ -152,6 +155,7 @@
- %define HAVE_RVV_INLINE 0
- %define HAVE_RV_ZICBOP_INLINE 0
- %define HAVE_RV_ZVBB_INLINE 0
-+%define HAVE_SIMD128_INLINE 0
- %define HAVE_AESNI_INLINE 1
- %define HAVE_AMD3DNOW_INLINE 1
- %define HAVE_AMD3DNOWEXT_INLINE 1
-@@ -190,7 +194,6 @@
- %define HAVE_FAST_CLZ 1
- %define HAVE_FAST_CMOV 1
- %define HAVE_FAST_FLOAT16 0
--%define HAVE_LOCAL_ALIGNED 1
- %define HAVE_SIMD_ALIGN_16 1
- %define HAVE_SIMD_ALIGN_32 1
- %define HAVE_SIMD_ALIGN_64 1
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.h b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.h
---- a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.h 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config.h 2025-02-07 10:58:55.000000000 +0000
-@@ -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/ezemtsov/projects/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=cla
ng --enable-cross-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=x86_64-apple-macosx' --extra-cflags=-F/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/20/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google
/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=x86_64 --extra-cflags=-m64 --extra-ldflags='-arch x86_64' --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/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang --enable-cross-compile --cc=clang --l
d=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=x86_64-apple-macosx' --extra-cflags=-F/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/20/include --extra-ldflags=-syslibroot --extra-ldflags=/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ld
flags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=x86_64 --extra-cflags=-m64 --extra-ldflags='-arch x86_64' --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/a/external/github.com/llvm/llvm-project 923566a67de39a00eb6fc5cabbad307a72aa338e)"
-+#define CC_IDENT "clang version 20.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 8cb44859cc31929521c09fc6a8add66d53db44de)"
- #define OS_NAME darwin
- #define EXTERN_PREFIX "_"
- #define EXTERN_ASM _
-@@ -31,6 +31,7 @@
- #define ARCH_SPARC64 0
- #define ARCH_TILEGX 0
- #define ARCH_TILEPRO 0
-+#define ARCH_WASM 0
- #define ARCH_X86 1
- #define ARCH_X86_32 0
- #define ARCH_X86_64 1
-@@ -56,6 +57,7 @@
- #define HAVE_RVV 0
- #define HAVE_RV_ZICBOP 1
- #define HAVE_RV_ZVBB 0
-+#define HAVE_SIMD128 0
- #define HAVE_AESNI 1
- #define HAVE_AMD3DNOW 1
- #define HAVE_AMD3DNOWEXT 1
-@@ -111,6 +113,7 @@
- #define HAVE_RVV_EXTERNAL 0
- #define HAVE_RV_ZICBOP_EXTERNAL 0
- #define HAVE_RV_ZVBB_EXTERNAL 0
-+#define HAVE_SIMD128_EXTERNAL 0
- #define HAVE_AESNI_EXTERNAL 1
- #define HAVE_AMD3DNOW_EXTERNAL 1
- #define HAVE_AMD3DNOWEXT_EXTERNAL 1
-@@ -166,6 +169,7 @@
- #define HAVE_RVV_INLINE 0
- #define HAVE_RV_ZICBOP_INLINE 0
- #define HAVE_RV_ZVBB_INLINE 0
-+#define HAVE_SIMD128_INLINE 0
- #define HAVE_AESNI_INLINE 1
- #define HAVE_AMD3DNOW_INLINE 1
- #define HAVE_AMD3DNOWEXT_INLINE 1
-@@ -204,7 +208,6 @@
- #define HAVE_FAST_CLZ 1
- #define HAVE_FAST_CMOV 1
- #define HAVE_FAST_FLOAT16 0
--#define HAVE_LOCAL_ALIGNED 1
- #define HAVE_SIMD_ALIGN_16 1
- #define HAVE_SIMD_ALIGN_32 1
- #define HAVE_SIMD_ALIGN_64 1
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config_components.h b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config_components.h
---- a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config_components.h 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/config_components.h 2025-02-07 10:58:55.000000000 +0000
-@@ -243,6 +243,7 @@
- #define CONFIG_RV20_DECODER 0
- #define CONFIG_RV30_DECODER 0
- #define CONFIG_RV40_DECODER 0
-+#define CONFIG_RV60_DECODER 0
- #define CONFIG_S302M_DECODER 0
- #define CONFIG_SANM_DECODER 0
- #define CONFIG_SCPR_DECODER 0
-@@ -650,6 +651,7 @@
- #define CONFIG_DXV_ENCODER 0
- #define CONFIG_EXR_ENCODER 0
- #define CONFIG_FFV1_ENCODER 0
-+#define CONFIG_FFV1_VULKAN_ENCODER 0
- #define CONFIG_FFVHUFF_ENCODER 0
- #define CONFIG_FITS_ENCODER 0
- #define CONFIG_FLASHSV_ENCODER 0
-@@ -956,6 +958,7 @@
- #define CONFIG_VP9_VAAPI_HWACCEL 0
- #define CONFIG_VP9_VDPAU_HWACCEL 0
- #define CONFIG_VP9_VIDEOTOOLBOX_HWACCEL 0
-+#define CONFIG_VVC_VAAPI_HWACCEL 0
- #define CONFIG_WMV3_D3D11VA_HWACCEL 0
- #define CONFIG_WMV3_D3D11VA2_HWACCEL 0
- #define CONFIG_WMV3_D3D12VA_HWACCEL 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/libavutil/ffversion.h b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/libavutil/ffversion.h
---- a/third_party/ffmpeg/chromium/config/Chrome/ios/x64/libavutil/ffversion.h 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/chromium/config/Chrome/ios/x64/libavutil/ffversion.h 2025-02-07 10:58:55.000000000 +0000
-@@ -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-118887-g99f17d50d3"
-+#define FFMPEG_VERSION "N-119293-g19beff4292"
- #endif /* AVUTIL_FFVERSION_H */
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 2025-02-07 10:58:54.000000000 +0000
-@@ -0,0 +1,796 @@
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h 2025-04-07 23:00:27.000000000 +0100
+@@ -0,0 +1,797 @@
+/* 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/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 CONFIG_THIS_YEAR 2025
+#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/a/external/github.com/llvm/llvm-project 091448e3c17bc8e7812dd7b571c852576d648977)"
++#define CC_IDENT "clang version 21.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 7b473dfe84c17319930d4019ab3f6ca0cfc03416)"
+#define OS_NAME linux
+#define EXTERN_PREFIX ""
+#define EXTERN_ASM
@@ -1039,6 +806,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_OPENSSL 0
+#define CONFIG_POCKETSPHINX 0
+#define CONFIG_VAPOURSYNTH 0
++#define CONFIG_VULKAN_STATIC 0
+#define CONFIG_ALSA 0
+#define CONFIG_APPKIT 0
+#define CONFIG_AVFOUNDATION 0
@@ -1250,8 +1018,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#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 2025-02-07 10:58:54.000000000 +0000
-@@ -0,0 +1,2237 @@
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_components.h 2025-04-07 23:00:27.000000000 +0100
+@@ -0,0 +1,2240 @@
+/* Automatically generated by configure - do not modify! */
+#ifndef FFMPEG_CONFIG_COMPONENTS_H
+#define FFMPEG_CONFIG_COMPONENTS_H
@@ -1778,6 +1546,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_ADPCM_IMA_SMJPEG_DECODER 0
+#define CONFIG_ADPCM_IMA_WAV_DECODER 0
+#define CONFIG_ADPCM_IMA_WS_DECODER 0
++#define CONFIG_ADPCM_IMA_XBOX_DECODER 0
+#define CONFIG_ADPCM_MS_DECODER 0
+#define CONFIG_ADPCM_MTAF_DECODER 0
+#define CONFIG_ADPCM_PSX_DECODER 0
@@ -1839,6 +1608,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_LIBGSM_DECODER 0
+#define CONFIG_LIBGSM_MS_DECODER 0
+#define CONFIG_LIBILBC_DECODER 0
++#define CONFIG_LIBJXL_ANIM_DECODER 0
+#define CONFIG_LIBJXL_DECODER 0
+#define CONFIG_LIBLC3_DECODER 0
+#define CONFIG_LIBOPENCORE_AMRNB_DECODER 0
@@ -2074,6 +1844,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_LIBGSM_ENCODER 0
+#define CONFIG_LIBGSM_MS_ENCODER 0
+#define CONFIG_LIBILBC_ENCODER 0
++#define CONFIG_LIBJXL_ANIM_ENCODER 0
+#define CONFIG_LIBJXL_ENCODER 0
+#define CONFIG_LIBLC3_ENCODER 0
+#define CONFIG_LIBMP3LAME_ENCODER 0
@@ -3491,13 +3262,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 2025-02-07 10:58:54.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/bsf_list.c 2025-04-07 23:00:27.000000000 +0100
@@ -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 2025-02-07 10:58:54.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/codec_list.c 2025-04-07 23:00:27.000000000 +0100
@@ -0,0 +1,17 @@
+static const FFCodec * const codec_list[] = {
+ &ff_h264_decoder,
@@ -3518,7 +3289,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 2025-02-07 10:58:54.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/parser_list.c 2025-04-07 23:00:27.000000000 +0100
@@ -0,0 +1,9 @@
+static const AVCodecParser * const parser_list[] = {
+ &ff_aac_parser,
@@ -3531,7 +3302,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 2025-02-07 10:58:54.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/demuxer_list.c 2025-04-07 23:00:27.000000000 +0100
@@ -0,0 +1,9 @@
+static const FFInputFormat * const demuxer_list[] = {
+ &ff_aac_demuxer,
@@ -3544,19 +3315,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 2025-02-07 10:58:54.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/muxer_list.c 2025-04-07 23:00:27.000000000 +0100
@@ -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 2025-02-07 10:58:54.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/protocol_list.c 2025-04-07 23:00:27.000000000 +0100
@@ -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 2025-02-07 10:58:54.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/avconfig.h 2025-04-07 23:00:27.000000000 +0100
@@ -0,0 +1,6 @@
+/* Generated by ffmpeg configure */
+#ifndef AVUTIL_AVCONFIG_H
@@ -3566,259 +3337,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 2025-02-07 10:58:54.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/ffversion.h 2025-04-07 23:00:27.000000000 +0100
@@ -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-12-13-d10a0f8"
++#define FFMPEG_VERSION "git-2025-02-14-fbce2a7"
+#endif /* AVUTIL_FFVERSION_H */
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config.h b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config.h
---- a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config.h 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config.h 2025-02-07 10:58:55.000000000 +0000
-@@ -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/ezemtsov/projects/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=cla
ng --enable-cross-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=arm64-apple-macosx' --extra-cflags=-F/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/20/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/
home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64'" -- 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/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang --enable-cross-compile --cc=clang --l
d=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=arm64-apple-macosx' --extra-cflags=-F/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/20/include --extra-ldflags=-syslibroot --extra-ldflags=/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldf
lags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64'" -- 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/a/external/github.com/llvm/llvm-project 923566a67de39a00eb6fc5cabbad307a72aa338e)"
-+#define CC_IDENT "clang version 20.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 8cb44859cc31929521c09fc6a8add66d53db44de)"
- #define OS_NAME darwin
- #define EXTERN_PREFIX "_"
- #define EXTERN_ASM _
-@@ -32,6 +32,7 @@
- #define ARCH_SPARC64 0
- #define ARCH_TILEGX 0
- #define ARCH_TILEPRO 0
-+#define ARCH_WASM 0
- #define ARCH_X86 0
- #define ARCH_X86_32 0
- #define ARCH_X86_64 0
-@@ -57,6 +58,7 @@
- #define HAVE_RVV 0
- #define HAVE_RV_ZICBOP 1
- #define HAVE_RV_ZVBB 0
-+#define HAVE_SIMD128 0
- #define HAVE_AESNI 0
- #define HAVE_AMD3DNOW 0
- #define HAVE_AMD3DNOWEXT 0
-@@ -112,6 +114,7 @@
- #define HAVE_RVV_EXTERNAL 0
- #define HAVE_RV_ZICBOP_EXTERNAL 0
- #define HAVE_RV_ZVBB_EXTERNAL 0
-+#define HAVE_SIMD128_EXTERNAL 0
- #define HAVE_AESNI_EXTERNAL 0
- #define HAVE_AMD3DNOW_EXTERNAL 0
- #define HAVE_AMD3DNOWEXT_EXTERNAL 0
-@@ -167,6 +170,7 @@
- #define HAVE_RVV_INLINE 0
- #define HAVE_RV_ZICBOP_INLINE 0
- #define HAVE_RV_ZVBB_INLINE 0
-+#define HAVE_SIMD128_INLINE 0
- #define HAVE_AESNI_INLINE 0
- #define HAVE_AMD3DNOW_INLINE 0
- #define HAVE_AMD3DNOWEXT_INLINE 0
-@@ -205,7 +209,6 @@
- #define HAVE_FAST_CLZ 1
- #define HAVE_FAST_CMOV 0
- #define HAVE_FAST_FLOAT16 1
--#define HAVE_LOCAL_ALIGNED 0
- #define HAVE_SIMD_ALIGN_16 1
- #define HAVE_SIMD_ALIGN_32 0
- #define HAVE_SIMD_ALIGN_64 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config_components.h b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config_components.h
---- a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config_components.h 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/config_components.h 2025-02-07 10:58:55.000000000 +0000
-@@ -243,6 +243,7 @@
- #define CONFIG_RV20_DECODER 0
- #define CONFIG_RV30_DECODER 0
- #define CONFIG_RV40_DECODER 0
-+#define CONFIG_RV60_DECODER 0
- #define CONFIG_S302M_DECODER 0
- #define CONFIG_SANM_DECODER 0
- #define CONFIG_SCPR_DECODER 0
-@@ -650,6 +651,7 @@
- #define CONFIG_DXV_ENCODER 0
- #define CONFIG_EXR_ENCODER 0
- #define CONFIG_FFV1_ENCODER 0
-+#define CONFIG_FFV1_VULKAN_ENCODER 0
- #define CONFIG_FFVHUFF_ENCODER 0
- #define CONFIG_FITS_ENCODER 0
- #define CONFIG_FLASHSV_ENCODER 0
-@@ -956,6 +958,7 @@
- #define CONFIG_VP9_VAAPI_HWACCEL 0
- #define CONFIG_VP9_VDPAU_HWACCEL 0
- #define CONFIG_VP9_VIDEOTOOLBOX_HWACCEL 0
-+#define CONFIG_VVC_VAAPI_HWACCEL 0
- #define CONFIG_WMV3_D3D11VA_HWACCEL 0
- #define CONFIG_WMV3_D3D11VA2_HWACCEL 0
- #define CONFIG_WMV3_D3D12VA_HWACCEL 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/libavutil/ffversion.h b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/libavutil/ffversion.h
---- a/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/libavutil/ffversion.h 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/chromium/config/Chromium/ios/arm64/libavutil/ffversion.h 2025-02-07 10:58:55.000000000 +0000
-@@ -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-118887-g99f17d50d3"
-+#define FFMPEG_VERSION "N-119293-g19beff4292"
- #endif /* AVUTIL_FFVERSION_H */
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.asm b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.asm
---- a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.asm 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.asm 2025-02-07 10:58:55.000000000 +0000
-@@ -17,6 +17,7 @@
- %define ARCH_SPARC64 0
- %define ARCH_TILEGX 0
- %define ARCH_TILEPRO 0
-+%define ARCH_WASM 0
- %define ARCH_X86 1
- %define ARCH_X86_32 0
- %define ARCH_X86_64 1
-@@ -42,6 +43,7 @@
- %define HAVE_RVV 0
- %define HAVE_RV_ZICBOP 1
- %define HAVE_RV_ZVBB 0
-+%define HAVE_SIMD128 0
- %define HAVE_AESNI 1
- %define HAVE_AMD3DNOW 1
- %define HAVE_AMD3DNOWEXT 1
-@@ -97,6 +99,7 @@
- %define HAVE_RVV_EXTERNAL 0
- %define HAVE_RV_ZICBOP_EXTERNAL 0
- %define HAVE_RV_ZVBB_EXTERNAL 0
-+%define HAVE_SIMD128_EXTERNAL 0
- %define HAVE_AESNI_EXTERNAL 1
- %define HAVE_AMD3DNOW_EXTERNAL 1
- %define HAVE_AMD3DNOWEXT_EXTERNAL 1
-@@ -152,6 +155,7 @@
- %define HAVE_RVV_INLINE 0
- %define HAVE_RV_ZICBOP_INLINE 0
- %define HAVE_RV_ZVBB_INLINE 0
-+%define HAVE_SIMD128_INLINE 0
- %define HAVE_AESNI_INLINE 1
- %define HAVE_AMD3DNOW_INLINE 1
- %define HAVE_AMD3DNOWEXT_INLINE 1
-@@ -190,7 +194,6 @@
- %define HAVE_FAST_CLZ 1
- %define HAVE_FAST_CMOV 1
- %define HAVE_FAST_FLOAT16 0
--%define HAVE_LOCAL_ALIGNED 1
- %define HAVE_SIMD_ALIGN_16 1
- %define HAVE_SIMD_ALIGN_32 1
- %define HAVE_SIMD_ALIGN_64 1
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.h b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.h
---- a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.h 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config.h 2025-02-07 10:58:55.000000000 +0000
-@@ -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/ezemtsov/projects/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=cla
ng --enable-cross-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=x86_64-apple-macosx' --extra-cflags=-F/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/ezemtsov/projects/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/20/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google
/home/ezemtsov/projects/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=x86_64 --extra-cflags=-m64 --extra-ldflags='-arch x86_64'" -- 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/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang --enable-cross-compile --cc=clang --l
d=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=x86_64-apple-macosx' --extra-cflags=-F/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/chromium/src/third_party/llvm-build/Release+Asserts/lib/clang/20/include --extra-ldflags=-syslibroot --extra-ldflags=/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/chromium/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ld
flags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=x86_64 --extra-cflags=-m64 --extra-ldflags='-arch x86_64'" -- 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/a/external/github.com/llvm/llvm-project 923566a67de39a00eb6fc5cabbad307a72aa338e)"
-+#define CC_IDENT "clang version 20.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 8cb44859cc31929521c09fc6a8add66d53db44de)"
- #define OS_NAME darwin
- #define EXTERN_PREFIX "_"
- #define EXTERN_ASM _
-@@ -31,6 +31,7 @@
- #define ARCH_SPARC64 0
- #define ARCH_TILEGX 0
- #define ARCH_TILEPRO 0
-+#define ARCH_WASM 0
- #define ARCH_X86 1
- #define ARCH_X86_32 0
- #define ARCH_X86_64 1
-@@ -56,6 +57,7 @@
- #define HAVE_RVV 0
- #define HAVE_RV_ZICBOP 1
- #define HAVE_RV_ZVBB 0
-+#define HAVE_SIMD128 0
- #define HAVE_AESNI 1
- #define HAVE_AMD3DNOW 1
- #define HAVE_AMD3DNOWEXT 1
-@@ -111,6 +113,7 @@
- #define HAVE_RVV_EXTERNAL 0
- #define HAVE_RV_ZICBOP_EXTERNAL 0
- #define HAVE_RV_ZVBB_EXTERNAL 0
-+#define HAVE_SIMD128_EXTERNAL 0
- #define HAVE_AESNI_EXTERNAL 1
- #define HAVE_AMD3DNOW_EXTERNAL 1
- #define HAVE_AMD3DNOWEXT_EXTERNAL 1
-@@ -166,6 +169,7 @@
- #define HAVE_RVV_INLINE 0
- #define HAVE_RV_ZICBOP_INLINE 0
- #define HAVE_RV_ZVBB_INLINE 0
-+#define HAVE_SIMD128_INLINE 0
- #define HAVE_AESNI_INLINE 1
- #define HAVE_AMD3DNOW_INLINE 1
- #define HAVE_AMD3DNOWEXT_INLINE 1
-@@ -204,7 +208,6 @@
- #define HAVE_FAST_CLZ 1
- #define HAVE_FAST_CMOV 1
- #define HAVE_FAST_FLOAT16 0
--#define HAVE_LOCAL_ALIGNED 1
- #define HAVE_SIMD_ALIGN_16 1
- #define HAVE_SIMD_ALIGN_32 1
- #define HAVE_SIMD_ALIGN_64 1
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config_components.h b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config_components.h
---- a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config_components.h 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/config_components.h 2025-02-07 10:58:55.000000000 +0000
-@@ -243,6 +243,7 @@
- #define CONFIG_RV20_DECODER 0
- #define CONFIG_RV30_DECODER 0
- #define CONFIG_RV40_DECODER 0
-+#define CONFIG_RV60_DECODER 0
- #define CONFIG_S302M_DECODER 0
- #define CONFIG_SANM_DECODER 0
- #define CONFIG_SCPR_DECODER 0
-@@ -650,6 +651,7 @@
- #define CONFIG_DXV_ENCODER 0
- #define CONFIG_EXR_ENCODER 0
- #define CONFIG_FFV1_ENCODER 0
-+#define CONFIG_FFV1_VULKAN_ENCODER 0
- #define CONFIG_FFVHUFF_ENCODER 0
- #define CONFIG_FITS_ENCODER 0
- #define CONFIG_FLASHSV_ENCODER 0
-@@ -956,6 +958,7 @@
- #define CONFIG_VP9_VAAPI_HWACCEL 0
- #define CONFIG_VP9_VDPAU_HWACCEL 0
- #define CONFIG_VP9_VIDEOTOOLBOX_HWACCEL 0
-+#define CONFIG_VVC_VAAPI_HWACCEL 0
- #define CONFIG_WMV3_D3D11VA_HWACCEL 0
- #define CONFIG_WMV3_D3D11VA2_HWACCEL 0
- #define CONFIG_WMV3_D3D12VA_HWACCEL 0
-diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/libavutil/ffversion.h b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/libavutil/ffversion.h
---- a/third_party/ffmpeg/chromium/config/Chromium/ios/x64/libavutil/ffversion.h 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/chromium/config/Chromium/ios/x64/libavutil/ffversion.h 2025-02-07 10:58:55.000000000 +0000
-@@ -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-118887-g99f17d50d3"
-+#define FFMPEG_VERSION "N-119293-g19beff4292"
- #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 2025-02-07 10:58:54.000000000 +0000
-@@ -0,0 +1,796 @@
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h 2025-04-07 23:00:27.000000000 +0100
+@@ -0,0 +1,797 @@
+/* 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/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 CONFIG_THIS_YEAR 2025
+#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/a/external/github.com/llvm/llvm-project 091448e3c17bc8e7812dd7b571c852576d648977)"
++#define CC_IDENT "clang version 21.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 7b473dfe84c17319930d4019ab3f6ca0cfc03416)"
+#define OS_NAME linux
+#define EXTERN_PREFIX ""
+#define EXTERN_ASM
@@ -4397,6 +3935,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_OPENSSL 0
+#define CONFIG_POCKETSPHINX 0
+#define CONFIG_VAPOURSYNTH 0
++#define CONFIG_VULKAN_STATIC 0
+#define CONFIG_ALSA 0
+#define CONFIG_APPKIT 0
+#define CONFIG_AVFOUNDATION 0
@@ -4608,8 +4147,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#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 2025-02-07 10:58:54.000000000 +0000
-@@ -0,0 +1,2237 @@
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_components.h 2025-04-07 23:00:27.000000000 +0100
+@@ -0,0 +1,2240 @@
+/* Automatically generated by configure - do not modify! */
+#ifndef FFMPEG_CONFIG_COMPONENTS_H
+#define FFMPEG_CONFIG_COMPONENTS_H
@@ -5136,6 +4675,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_ADPCM_IMA_SMJPEG_DECODER 0
+#define CONFIG_ADPCM_IMA_WAV_DECODER 0
+#define CONFIG_ADPCM_IMA_WS_DECODER 0
++#define CONFIG_ADPCM_IMA_XBOX_DECODER 0
+#define CONFIG_ADPCM_MS_DECODER 0
+#define CONFIG_ADPCM_MTAF_DECODER 0
+#define CONFIG_ADPCM_PSX_DECODER 0
@@ -5197,6 +4737,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_LIBGSM_DECODER 0
+#define CONFIG_LIBGSM_MS_DECODER 0
+#define CONFIG_LIBILBC_DECODER 0
++#define CONFIG_LIBJXL_ANIM_DECODER 0
+#define CONFIG_LIBJXL_DECODER 0
+#define CONFIG_LIBLC3_DECODER 0
+#define CONFIG_LIBOPENCORE_AMRNB_DECODER 0
@@ -5432,6 +4973,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_LIBGSM_ENCODER 0
+#define CONFIG_LIBGSM_MS_ENCODER 0
+#define CONFIG_LIBILBC_ENCODER 0
++#define CONFIG_LIBJXL_ANIM_ENCODER 0
+#define CONFIG_LIBJXL_ENCODER 0
+#define CONFIG_LIBLC3_ENCODER 0
+#define CONFIG_LIBMP3LAME_ENCODER 0
@@ -6849,13 +6391,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 2025-02-07 10:58:54.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/bsf_list.c 2025-04-07 23:00:27.000000000 +0100
@@ -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 2025-02-07 10:58:54.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/codec_list.c 2025-04-07 23:00:27.000000000 +0100
@@ -0,0 +1,15 @@
+static const FFCodec * const codec_list[] = {
+ &ff_flac_decoder,
@@ -6874,7 +6416,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 2025-02-07 10:58:54.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/parser_list.c 2025-04-07 23:00:27.000000000 +0100
@@ -0,0 +1,7 @@
+static const AVCodecParser * const parser_list[] = {
+ &ff_flac_parser,
@@ -6885,7 +6427,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 2025-02-07 10:58:54.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/demuxer_list.c 2025-04-07 23:00:27.000000000 +0100
@@ -0,0 +1,8 @@
+static const FFInputFormat * const demuxer_list[] = {
+ &ff_flac_demuxer,
@@ -6897,19 +6439,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 2025-02-07 10:58:54.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/muxer_list.c 2025-04-07 23:00:27.000000000 +0100
@@ -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 2025-02-07 10:58:54.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/protocol_list.c 2025-04-07 23:00:27.000000000 +0100
@@ -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 2025-02-07 10:58:54.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/avconfig.h 2025-04-07 23:00:27.000000000 +0100
@@ -0,0 +1,6 @@
+/* Generated by ffmpeg configure */
+#ifndef AVUTIL_AVCONFIG_H
@@ -6919,16 +6461,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 2025-02-07 10:58:54.000000000 +0000
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/ffversion.h 2025-04-07 23:00:27.000000000 +0100
@@ -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-12-13-d10a0f8"
++#define FFMPEG_VERSION "git-2025-02-14-fbce2a7"
+#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 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/chromium/scripts/copy_config.sh 2025-02-07 10:53:40.000000000 +0000
+--- a/third_party/ffmpeg/chromium/scripts/copy_config.sh 2025-03-31 16:23:48.000000000 +0100
++++ b/third_party/ffmpeg/chromium/scripts/copy_config.sh 2025-04-07 22:58:16.000000000 +0100
@@ -10,7 +10,7 @@
# Copy config files for various architectures:
# - ia32/x64 have config.asm, config.h
@@ -6939,14 +6481,8 @@ 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 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/ffmpeg_generated.gni 2025-02-07 10:58:00.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.
-
+--- a/third_party/ffmpeg/ffmpeg_generated.gni 2025-03-31 16:23:48.000000000 +0100
++++ b/third_party/ffmpeg/ffmpeg_generated.gni 2025-04-07 23:00:06.000000000 +0100
@@ -14,19 +14,13 @@
use_linux_config = is_linux || is_chromeos || is_fuchsia
@@ -6984,16 +6520,16 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavcodec/mpegaudiodsp_data.c",
"libavcodec/mpegaudiodsp_fixed.c",
"libavcodec/mpegaudiodsp_float.c",
-@@ -82,6 +78,8 @@
+@@ -81,6 +77,8 @@
+ "libavcodec/pthread_slice.c",
"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 @@
+@@ -90,6 +88,7 @@
"libavcodec/vorbis_data.c",
"libavcodec/vorbis_parser.c",
"libavcodec/vorbisdec.c",
@@ -7001,15 +6537,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavcodec/vp9_parser.c",
"libavcodec/xiph.c",
"libavformat/allformats.c",
-@@ -107,6 +106,7 @@
- "libavformat/dovi_isom.c",
- "libavformat/dump.c",
- "libavformat/dv.c",
-+ "libavformat/dvdclut.c",
- "libavformat/flac_picture.c",
- "libavformat/format.c",
- "libavformat/id3v1.c",
-@@ -145,12 +145,7 @@
+@@ -145,12 +144,7 @@
"libavutil/aes.c",
"libavutil/aes_ctr.c",
"libavutil/ambient_viewing_environment.c",
@@ -7022,15 +6550,15 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavutil/autorename_libavutil_utils.c",
"libavutil/autorename_libavutil_version.c",
"libavutil/avstring.c",
-@@ -159,6 +154,7 @@
- "libavutil/buffer.c",
+@@ -160,6 +154,7 @@
"libavutil/camellia.c",
"libavutil/channel_layout.c",
+ "libavutil/container_fifo.c",
+ "libavutil/cpu.c",
"libavutil/crc.c",
"libavutil/csp.c",
"libavutil/detection_bbox.c",
-@@ -172,12 +168,15 @@
+@@ -173,12 +168,15 @@
"libavutil/fifo.c",
"libavutil/file_open.c",
"libavutil/film_grain_params.c",
@@ -7046,9 +6574,9 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavutil/integer.c",
"libavutil/intmath.c",
"libavutil/lfg.c",
-@@ -195,6 +194,11 @@
- "libavutil/random_seed.c",
+@@ -197,6 +195,11 @@
"libavutil/rational.c",
+ "libavutil/refstruct.c",
"libavutil/reverse.c",
+ "libavutil/riscv/autorename_libavutil_riscv_cpu.c",
+ "libavutil/riscv/cpu_common.c",
@@ -7058,7 +6586,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavutil/samplefmt.c",
"libavutil/sha.c",
"libavutil/slicethread.c",
-@@ -207,22 +211,41 @@
+@@ -209,22 +212,41 @@
"libavutil/timestamp.c",
"libavutil/twofish.c",
"libavutil/tx.c",
@@ -7106,7 +6634,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavcodec/h2645_parse.c",
"libavcodec/h2645_sei.c",
"libavcodec/h2645_vui.c",
-@@ -247,236 +270,30 @@
+@@ -249,236 +271,30 @@
"libavcodec/h264pred.c",
"libavcodec/h264qpel.c",
"libavcodec/h274.c",
@@ -7362,85 +6890,85 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- ffmpeg_c_sources += [ "compat/strtod.c" ]
-}
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 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_parser.c 2025-02-07 10:57:55.000000000 +0000
+--- a/third_party/ffmpeg/libavcodec/autorename_libavcodec_parser.c 2025-03-31 16:23:48.000000000 +0100
++++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_parser.c 2025-04-07 23:00:02.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
-+// Automatically generated on Fri Feb 7 10:57:54 2025. See crbug.com/495833.
+-// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
++// Automatically generated on Mon Apr 7 23:00:01 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 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_videodsp.c 2025-02-07 10:57:55.000000000 +0000
+--- a/third_party/ffmpeg/libavcodec/autorename_libavcodec_videodsp.c 2025-03-31 16:23:48.000000000 +0100
++++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_videodsp.c 2025-04-07 23:00:02.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
-+// Automatically generated on Fri Feb 7 10:57:54 2025. See crbug.com/495833.
+-// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
++// Automatically generated on Mon Apr 7 23:00:01 2025. See crbug.com/495833.
#include "videodsp.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 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_aacdec.c 2025-02-07 10:57:55.000000000 +0000
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_aacdec.c 2025-03-31 16:23:48.000000000 +0100
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_aacdec.c 2025-04-07 23:00:02.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
-+// Automatically generated on Fri Feb 7 10:57:54 2025. See crbug.com/495833.
+-// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
++// Automatically generated on Mon Apr 7 23:00:01 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 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_flacdec.c 2025-02-07 10:57:55.000000000 +0000
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_flacdec.c 2025-03-31 16:23:48.000000000 +0100
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_flacdec.c 2025-04-07 23:00:02.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
-+// Automatically generated on Fri Feb 7 10:57:54 2025. See crbug.com/495833.
+-// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
++// Automatically generated on Mon Apr 7 23:00:01 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 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_options.c 2025-02-07 10:57:55.000000000 +0000
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_options.c 2025-03-31 16:23:48.000000000 +0100
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_options.c 2025-04-07 23:00:02.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
-+// Automatically generated on Fri Feb 7 10:57:54 2025. See crbug.com/495833.
+-// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
++// Automatically generated on Mon Apr 7 23:00:01 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 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_pcm.c 2025-02-07 10:57:55.000000000 +0000
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_pcm.c 2025-03-31 16:23:48.000000000 +0100
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_pcm.c 2025-04-07 23:00:02.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
-+// Automatically generated on Fri Feb 7 10:57:54 2025. See crbug.com/495833.
+-// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
++// Automatically generated on Mon Apr 7 23:00:01 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 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_utils.c 2025-02-07 10:57:55.000000000 +0000
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_utils.c 2025-03-31 16:23:48.000000000 +0100
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_utils.c 2025-04-07 23:00:02.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
-+// Automatically generated on Fri Feb 7 10:57:54 2025. See crbug.com/495833.
+-// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
++// Automatically generated on Mon Apr 7 23:00:01 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 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_version.c 2025-02-07 10:57:55.000000000 +0000
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_version.c 2025-03-31 16:23:48.000000000 +0100
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_version.c 2025-04-07 23:00:02.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
-+// Automatically generated on Fri Feb 7 10:57:54 2025. See crbug.com/495833.
+-// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
++// Automatically generated on Mon Apr 7 23:00:01 2025. See crbug.com/495833.
#include "version.c"
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 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/libavutil/autorename_libavutil_executor.c 2025-02-07 10:57:55.000000000 +0000
+--- a/third_party/ffmpeg/libavutil/autorename_libavutil_executor.c 2025-03-31 16:23:48.000000000 +0100
++++ b/third_party/ffmpeg/libavutil/autorename_libavutil_executor.c 2025-04-07 23:00:02.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
-+// Automatically generated on Fri Feb 7 10:57:54 2025. See crbug.com/495833.
+-// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
++// Automatically generated on Mon Apr 7 23:00:01 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 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/libavutil/autorename_libavutil_utils.c 2025-02-07 10:57:55.000000000 +0000
+--- a/third_party/ffmpeg/libavutil/autorename_libavutil_utils.c 2025-03-31 16:23:48.000000000 +0100
++++ b/third_party/ffmpeg/libavutil/autorename_libavutil_utils.c 2025-04-07 23:00:02.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
-+// Automatically generated on Fri Feb 7 10:57:54 2025. See crbug.com/495833.
+-// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
++// Automatically generated on Mon Apr 7 23:00:01 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 2025-02-03 19:02:21.000000000 +0000
-+++ b/third_party/ffmpeg/libavutil/autorename_libavutil_version.c 2025-02-07 10:57:55.000000000 +0000
+--- a/third_party/ffmpeg/libavutil/autorename_libavutil_version.c 2025-03-31 16:23:48.000000000 +0100
++++ b/third_party/ffmpeg/libavutil/autorename_libavutil_version.c 2025-04-07 23:00:02.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Dec 9 16:35:31 2024. See crbug.com/495833.
-+// Automatically generated on Fri Feb 7 10:57:54 2025. See crbug.com/495833.
+-// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
++// Automatically generated on Mon Apr 7 23:00:01 2025. See crbug.com/495833.
#include "version.c"
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-02-07 10:57:55.000000000 +0000
++++ b/third_party/ffmpeg/libavutil/riscv/autorename_libavutil_riscv_cpu.c 2025-04-07 23:00:02.000000000 +0100
@@ -0,0 +1,2 @@
-+// Automatically generated on Fri Feb 7 10:57:54 2025. See crbug.com/495833.
++// Automatically generated on Mon Apr 7 23:00:01 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 15bce88..e069703 100644
--- a/www-client/chromium/files/riscv-misc.patch
+++ b/www-client/chromium/files/riscv-misc.patch
@@ -1,7 +1,7 @@
-Index: chromium-133.0.6943.53/components/metrics/debug/metrics_internals_utils.cc
+Index: chromium-135.0.7049.52/components/metrics/debug/metrics_internals_utils.cc
===================================================================
---- chromium-133.0.6943.53.orig/components/metrics/debug/metrics_internals_utils.cc
-+++ chromium-133.0.6943.53/components/metrics/debug/metrics_internals_utils.cc
+--- chromium-135.0.7049.52.orig/components/metrics/debug/metrics_internals_utils.cc
++++ chromium-135.0.7049.52/components/metrics/debug/metrics_internals_utils.cc
@@ -69,6 +69,8 @@ std::string CpuArchitectureToString(
return "arm32";
case variations::Study::TRANSLATED_X86_64:
@@ -11,10 +11,10 @@ Index: chromium-133.0.6943.53/components/metrics/debug/metrics_internals_utils.c
}
NOTREACHED();
}
-Index: chromium-133.0.6943.53/components/variations/proto/study.proto
+Index: chromium-135.0.7049.52/components/variations/proto/study.proto
===================================================================
---- chromium-133.0.6943.53.orig/components/variations/proto/study.proto
-+++ chromium-133.0.6943.53/components/variations/proto/study.proto
+--- chromium-135.0.7049.52.orig/components/variations/proto/study.proto
++++ chromium-135.0.7049.52/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-133.0.6943.53/components/variations/proto/study.proto
}
// Enum to pass as optional bool.
-Index: chromium-133.0.6943.53/components/variations/service/variations_field_trial_creator_base.cc
+Index: chromium-135.0.7049.52/components/variations/service/variations_field_trial_creator_base.cc
===================================================================
---- chromium-133.0.6943.53.orig/components/variations/service/variations_field_trial_creator_base.cc
-+++ chromium-133.0.6943.53/components/variations/service/variations_field_trial_creator_base.cc
-@@ -120,6 +120,9 @@ Study::CpuArchitecture GetCurrentCpuArch
+--- chromium-135.0.7049.52.orig/components/variations/service/variations_field_trial_creator_base.cc
++++ chromium-135.0.7049.52/components/variations/service/variations_field_trial_creator_base.cc
+@@ -128,6 +128,9 @@ Study::CpuArchitecture GetCurrentCpuArch
}
return Study::X86_64;
}
diff --git a/www-client/chromium/files/riscv-sandbox.patch b/www-client/chromium/files/riscv-sandbox.patch
index 325e066..a8d4569 100644
--- a/www-client/chromium/files/riscv-sandbox.patch
+++ b/www-client/chromium/files/riscv-sandbox.patch
@@ -1,7 +1,7 @@
-Index: chromium-132.0.6834.83/sandbox/features.gni
+Index: chromium-135.0.7049.52/sandbox/features.gni
===================================================================
---- chromium-132.0.6834.83.orig/sandbox/features.gni
-+++ chromium-132.0.6834.83/sandbox/features.gni
+--- chromium-135.0.7049.52.orig/sandbox/features.gni
++++ chromium-135.0.7049.52/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-132.0.6834.83/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-132.0.6834.83/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
++++ chromium-135.0.7049.52/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-132.0.6834.83/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
#else
#error "Unsupported architecture"
#endif
-Index: chromium-132.0.6834.83/sandbox/linux/bpf_dsl/seccomp_macros.h
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/linux/bpf_dsl/seccomp_macros.h
++++ chromium-135.0.7049.52/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-132.0.6834.83/sandbox/linux/bpf_dsl/seccomp_macros.h
#else
#error Unsupported target platform
-Index: chromium-132.0.6834.83/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
++++ chromium-135.0.7049.52/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
@@ -60,6 +60,9 @@ bool IsBaselinePolicyAllowed(int sysno)
#if defined(__mips__)
SyscallSets::IsMipsPrivate(sysno) ||
@@ -132,19 +132,19 @@ Index: chromium-132.0.6834.83/sandbox/linux/seccomp-bpf-helpers/baseline_policy.
if (sysno == __NR_pipe) {
return Allow();
}
-Index: chromium-132.0.6834.83/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
+Index: chromium-135.0.7049.52/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 @@
+--- chromium-135.0.7049.52.orig/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
++++ chromium-135.0.7049.52/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
+@@ -39,6 +39,7 @@
+ #endif
- #if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) && \
- !defined(__arm__) && !defined(__aarch64__) && \
+ #if BUILDFLAG(IS_LINUX) && !defined(__arm__) && !defined(__aarch64__) && \
+ !defined(__riscv) && \
!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.
-@@ -461,8 +462,10 @@ ResultExpr RestrictPtrace() {
+@@ -463,8 +464,10 @@ ResultExpr RestrictPtrace() {
#endif
return Switch(request)
.Cases({
@@ -156,10 +156,10 @@ Index: chromium-132.0.6834.83/sandbox/linux/seccomp-bpf-helpers/syscall_paramete
PTRACE_GETREGSET,
#endif
#if defined(__arm__)
-Index: chromium-132.0.6834.83/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
++++ chromium-135.0.7049.52/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-132.0.6834.83/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
bool SyscallSets::IsGoogle3Threading(int sysno) {
switch (sysno) {
case __NR_getitimer:
-Index: chromium-132.0.6834.83/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
++++ chromium-135.0.7049.52/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
@@ -52,7 +52,7 @@ class SANDBOX_EXPORT SyscallSets {
#endif
@@ -464,10 +464,10 @@ Index: chromium-132.0.6834.83/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
static bool IsGoogle3Threading(int sysno);
};
-Index: chromium-132.0.6834.83/sandbox/linux/seccomp-bpf/syscall.cc
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/linux/seccomp-bpf/syscall.cc
++++ chromium-135.0.7049.52/sandbox/linux/seccomp-bpf/syscall.cc
@@ -23,7 +23,7 @@ namespace sandbox {
namespace {
@@ -537,10 +537,10 @@ Index: chromium-132.0.6834.83/sandbox/linux/seccomp-bpf/syscall.cc
#else
#error "Unimplemented architecture"
#endif
-Index: chromium-132.0.6834.83/sandbox/linux/services/credentials.cc
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/linux/services/credentials.cc
++++ chromium-135.0.7049.52/sandbox/linux/services/credentials.cc
@@ -87,7 +87,7 @@ bool ChrootToSafeEmptyDir() {
alignas(16) char stack_buf[PTHREAD_STACK_MIN_CONST];
@@ -550,11 +550,11 @@ Index: chromium-132.0.6834.83/sandbox/linux/services/credentials.cc
// The stack grows downward.
void* stack = stack_buf + sizeof(stack_buf);
#else
-Index: chromium-132.0.6834.83/sandbox/linux/services/syscall_wrappers.cc
+Index: chromium-135.0.7049.52/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,
+--- chromium-135.0.7049.52.orig/sandbox/linux/services/syscall_wrappers.cc
++++ chromium-135.0.7049.52/sandbox/linux/services/syscall_wrappers.cc
+@@ -66,7 +66,7 @@ long sys_clone(unsigned long flags,
#if defined(ARCH_CPU_X86_64)
return syscall(__NR_clone, flags, child_stack, ptid, ctid, tls);
#elif defined(ARCH_CPU_X86) || defined(ARCH_CPU_ARM_FAMILY) || \
@@ -563,10 +563,10 @@ Index: chromium-132.0.6834.83/sandbox/linux/services/syscall_wrappers.cc
// CONFIG_CLONE_BACKWARDS defined.
return syscall(__NR_clone, flags, child_stack, ptid, tls, ctid);
#endif
-Index: chromium-132.0.6834.83/sandbox/linux/syscall_broker/broker_process.cc
+Index: chromium-135.0.7049.52/sandbox/linux/syscall_broker/broker_process.cc
===================================================================
---- 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
+--- chromium-135.0.7049.52.orig/sandbox/linux/syscall_broker/broker_process.cc
++++ chromium-135.0.7049.52/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.
@@ -639,10 +639,10 @@ Index: chromium-132.0.6834.83/sandbox/linux/syscall_broker/broker_process.cc
case __NR_unlink:
return !fast_check || policy_->allowed_command_set.test(COMMAND_UNLINK);
#endif
-Index: chromium-132.0.6834.83/sandbox/linux/system_headers/linux_seccomp.h
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/linux/system_headers/linux_seccomp.h
++++ chromium-135.0.7049.52/sandbox/linux/system_headers/linux_seccomp.h
@@ -39,6 +39,10 @@
#define EM_AARCH64 183
#endif
@@ -665,10 +665,10 @@ Index: chromium-132.0.6834.83/sandbox/linux/system_headers/linux_seccomp.h
// For prctl.h
#ifndef PR_SET_SECCOMP
#define PR_SET_SECCOMP 22
-Index: chromium-132.0.6834.83/sandbox/linux/system_headers/linux_signal.h
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/linux/system_headers/linux_signal.h
++++ chromium-135.0.7049.52/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-132.0.6834.83/sandbox/linux/system_headers/linux_signal.h
#define LINUX_SIGHUP 1
#define LINUX_SIGINT 2
-Index: chromium-132.0.6834.83/sandbox/linux/system_headers/linux_stat.h
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/linux/system_headers/linux_stat.h
++++ chromium-135.0.7049.52/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-132.0.6834.83/sandbox/linux/system_headers/linux_stat.h
struct kernel_stat {
unsigned long st_dev;
unsigned long st_ino;
-Index: chromium-132.0.6834.83/sandbox/linux/system_headers/linux_syscalls.h
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/linux/system_headers/linux_syscalls.h
++++ chromium-135.0.7049.52/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-132.0.6834.83/sandbox/linux/system_headers/linux_syscalls.h
+
#endif // SANDBOX_LINUX_SYSTEM_HEADERS_LINUX_SYSCALLS_H_
-Index: chromium-132.0.6834.83/sandbox/linux/system_headers/riscv64_linux_syscalls.h
+Index: chromium-135.0.7049.52/sandbox/linux/system_headers/riscv64_linux_syscalls.h
===================================================================
--- /dev/null
-+++ chromium-132.0.6834.83/sandbox/linux/system_headers/riscv64_linux_syscalls.h
++++ chromium-135.0.7049.52/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-132.0.6834.83/sandbox/linux/system_headers/riscv64_linux_syscall
+#endif
+
+#endif // SANDBOX_LINUX_SYSTEM_HEADERS_RISCV64_LINUX_SYSCALLS_H_
-Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_cdm_policy_linux.cc
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/policy/linux/bpf_cdm_policy_linux.cc
++++ chromium-135.0.7049.52/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-132.0.6834.83/sandbox/policy/linux/bpf_cdm_policy_linux.cc
case __NR_getrlimit:
#endif
#if defined(__i386__) || defined(__arm__)
-Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
++++ chromium-135.0.7049.52/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,11 +1962,11 @@ Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux
case __NR_readlink:
case __NR_stat:
#endif
-Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_gpu_policy_linux.cc
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/policy/linux/bpf_gpu_policy_linux.cc
++++ chromium-135.0.7049.52/sandbox/policy/linux/bpf_gpu_policy_linux.cc
+@@ -72,7 +72,7 @@ ResultExpr GpuProcessPolicy::EvaluateSys
(defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
case __NR_ftruncate64:
#endif
@@ -1975,10 +1975,10 @@ Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_gpu_policy_linux.cc
case __NR_getdents:
#endif
case __NR_getdents64:
-Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_network_policy_linux.cc
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/policy/linux/bpf_network_policy_linux.cc
++++ chromium-135.0.7049.52/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-132.0.6834.83/sandbox/policy/linux/bpf_network_policy_linux.cc
case __NR_getdents:
#endif
case __NR_getdents64:
-Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
++++ chromium-135.0.7049.52/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
@@ -33,7 +33,7 @@ ResultExpr PrintCompositorProcessPolicy:
case __NR_fdatasync:
case __NR_fsync:
@@ -2001,10 +2001,10 @@ Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_print_compositor_policy_l
case __NR_getrlimit:
#endif
#if defined(__i386__) || defined(__arm__)
-Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_renderer_policy_linux.cc
+Index: chromium-135.0.7049.52/sandbox/policy/linux/bpf_renderer_policy_linux.cc
===================================================================
---- 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
+--- chromium-135.0.7049.52.orig/sandbox/policy/linux/bpf_renderer_policy_linux.cc
++++ chromium-135.0.7049.52/sandbox/policy/linux/bpf_renderer_policy_linux.cc
@@ -85,7 +85,7 @@ ResultExpr RendererProcessPolicy::Evalua
case __NR_ftruncate64:
#endif
@@ -2014,10 +2014,10 @@ Index: chromium-132.0.6834.83/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-132.0.6834.83/sandbox/policy/linux/bpf_service_policy_linux.cc
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/policy/linux/bpf_service_policy_linux.cc
++++ chromium-135.0.7049.52/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-132.0.6834.83/sandbox/policy/linux/bpf_service_policy_linux.cc
case __NR_getrlimit:
#endif
#if defined(__i386__) || defined(__arm__)
-Index: chromium-132.0.6834.83/sandbox/policy/linux/bpf_utility_policy_linux.cc
+Index: chromium-135.0.7049.52/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
+--- chromium-135.0.7049.52.orig/sandbox/policy/linux/bpf_utility_policy_linux.cc
++++ chromium-135.0.7049.52/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-swiftshader.patch b/www-client/chromium/files/riscv-swiftshader.patch
index e2d3b6e..add43ca 100644
--- a/www-client/chromium/files/riscv-swiftshader.patch
+++ b/www-client/chromium/files/riscv-swiftshader.patch
@@ -1,7 +1,7 @@
-Index: chromium-134.0.6998.35/third_party/swiftshader/src/Reactor/BUILD.gn
+Index: chromium-135.0.7049.52/third_party/swiftshader/src/Reactor/BUILD.gn
===================================================================
---- chromium-134.0.6998.35.orig/third_party/swiftshader/src/Reactor/BUILD.gn
-+++ chromium-134.0.6998.35/third_party/swiftshader/src/Reactor/BUILD.gn
+--- chromium-135.0.7049.52.orig/third_party/swiftshader/src/Reactor/BUILD.gn
++++ chromium-135.0.7049.52/third_party/swiftshader/src/Reactor/BUILD.gn
@@ -307,7 +307,7 @@ if (supports_subzero) {
if (supports_llvm) {
@@ -11,10 +11,10 @@ Index: chromium-134.0.6998.35/third_party/swiftshader/src/Reactor/BUILD.gn
deps = [
":swiftshader_reactor_base",
-Index: chromium-134.0.6998.35/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn
+Index: chromium-135.0.7049.52/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn
===================================================================
---- chromium-134.0.6998.35.orig/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn
-+++ chromium-134.0.6998.35/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn
+--- chromium-135.0.7049.52.orig/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn
++++ chromium-135.0.7049.52/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn
@@ -778,6 +778,7 @@ swiftshader_llvm_source_set("swiftshader
"llvm/lib/MC/MCContext.cpp",
"llvm/lib/MC/MCDXContainerStreamer.cpp",
@@ -23,17 +23,4 @@ Index: chromium-134.0.6998.35/third_party/swiftshader/third_party/llvm-16.0/BUIL
"llvm/lib/MC/MCDisassembler/MCRelocationInfo.cpp",
"llvm/lib/MC/MCDwarf.cpp",
"llvm/lib/MC/MCELFObjectTargetWriter.cpp",
-Index: chromium-134.0.6998.35/third_party/swiftshader/third_party/llvm-16.0/llvm/include/llvm/Support/AlignOf.h
-===================================================================
---- chromium-134.0.6998.35.orig/third_party/swiftshader/third_party/llvm-16.0/llvm/include/llvm/Support/AlignOf.h
-+++ chromium-134.0.6998.35/third_party/swiftshader/third_party/llvm-16.0/llvm/include/llvm/Support/AlignOf.h
-@@ -20,7 +20,7 @@ namespace llvm {
- /// A suitably aligned and sized character array member which can hold elements
- /// of any type.
- template <typename T, typename... Ts> struct AlignedCharArrayUnion {
-- alignas(Ts...) char buffer[std::max({sizeof(Ts)...})];
-+ alignas(std::max({std::size_t(1), alignof(T), alignof(Ts)...})) char buffer[std::max({std::size_t(1), sizeof(T), sizeof(Ts)...})];
- };
-
- } // end namespace llvm
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] proj/riscv:master commit in: www-client/chromium/files/, www-client/chromium/
@ 2025-07-15 20:37 Jakov Smolić
0 siblings, 0 replies; 10+ messages in thread
From: Jakov Smolić @ 2025-07-15 20:37 UTC (permalink / raw
To: gentoo-commits
commit: 45cc86874ceb3df2e9015d932af1aa17adc010f0
Author: Andrew Cameron <apcameron <AT> gmail <DOT> com>
AuthorDate: Wed Jul 2 21:44:02 2025 +0000
Commit: Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
CommitDate: Tue Jul 15 20:36:57 2025 +0000
URL: https://gitweb.gentoo.org/proj/riscv.git/commit/?id=45cc8687
Update Chromium to 138.0.7204.100
Tested on my VisionFive 2
Signed-off-by: Andrew Cameron <apcameron <AT> gmail.com>
Closes: https://github.com/gentoo/riscv/pull/33
Signed-off-by: Jakov Smolić <jsmolic <AT> gentoo.org>
www-client/chromium/Manifest | 14 +-
...3.113.ebuild => chromium-138.0.7204.100.ebuild} | 572 +-
...-in-highway-due-to-broken-runtime-dispatc.patch | 29 +
.../0002-xnnpack-enable-riscv64-support.patch | 11574 +++++++++++++++++++
.../files/chromium-138-nodejs-version-check.patch | 49 +
www-client/chromium/files/compiler-rt-riscv.patch | 17 +-
www-client/chromium/files/riscv-ffmpeg.patch | 340 +-
www-client/chromium/files/riscv-sandbox.patch | 159 +-
www-client/chromium/files/riscv-swiftshader.patch | 21 +-
www-client/chromium/files/riscv-tflite.patch | 14 +
www-client/chromium/files/riscv-v8.patch | 81 +-
11 files changed, 12253 insertions(+), 617 deletions(-)
diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
index 29ac137..61a9217 100644
--- a/www-client/chromium/Manifest
+++ b/www-client/chromium/Manifest
@@ -1,8 +1,8 @@
-DIST chromium-136.0.7103.113-linux-testdata.tar.xz 651614116 BLAKE2B ba76c70f3b803e5881e5825612d998256c28c07545815c766809ab9185e41bb263f933fb51bef3f0658c4248c072505542b4ba3b7a77007845c3f4816301ef7a SHA512 5eedfa17054056d5f7110bb7becd4ca77dc73ab2bcc0b722dbb591acbe15d6e569f26c988c59661763a1b239e9a18955975fbae4d172536f42e081674fdbb8d6
-DIST chromium-136.0.7103.113-linux.tar.xz 1558575932 BLAKE2B 17a455d4146d942256c177502ea8a7743e899d45875b04d9a65a2cff3224cad79590a6d750c3476d4a4abe0378813e378c463c947b144157cc65b1c4422ec720 SHA512 aff1f8f96f304d15ad984f06a5806733b8cc8689973b620b8ef43bb24cb10b2201f40b48158b7a2508cfbaffad3753c811519237c0e68c7a7303be575611896f
-DIST chromium-clang-llvmorg-21-init-5118-g52cd27e6-5.tar.xz 54517328 BLAKE2B 8fdc17f49f17348d648fc55aa3c603ac857bf76d3e7e0ca73d616a1458c80b8e15421e47271958d50db83f5a5d43673c10235938ecd2d3bba6072c414b20b1f0 SHA512 3397eb7157c805df82ca8f33b61b906ab2b9dd111390b78a0d4b3e79bdbdfd6896adf1106e10741b67845d081654fdde3b763abb12aa7b5e94e6ccbdde072b94
-DIST chromium-openpower-01dda91015.tar.bz2 382275 BLAKE2B b95781f5f1845b93b02f97c617618255aed140b80a87cbd259d591e32ddc2185b9793d6735dce5c71d2bbf4af51534e8680d802f204c840fb8265e7867798f8d SHA512 981677898c218c573a2942ca0d5d2bc3b7ed687fe31be6e5078c18efb2bdffe4ad8976e8c3fb2b101f69ee3abe588c659130cdd7ccf740c4efa7914f5b44b72d
-DIST chromium-patches-136-2.tar.bz2 10500 BLAKE2B d943a397059d4d55871bc4f2191e40b55d92aeab8c954c24604a558149d0df3cc8590c147a685d2e21253728918d47fdf46c24363085be364bf35ab4f3938349 SHA512 f9ff50891ef23c2d129170389c56fa3cd629e8a473dc220008dcc7cdbe86284b3f522f507d1276f0adc1c457e95b33c614a54abdea13cb23cbc7a8c0f777a291
+DIST chromium-138.0.7204.100-linux-testdata.tar.xz 922983008 BLAKE2B 3494434c3112086600d18eea0dfadfc041ec82b92a1d34444b2b3e353b958cc09c7c9f5bcf299543e127b13e9c04bca48e9b3816c34bf06ce2fcecdea6941b19 SHA512 e4c7da5ca7c1da60947989d33cc37de892f18f7d0ded8f29abe98fb352fb4ef0802404874522a8d4594184816aacad8ddf27be0473e1f80968940dac51a60579
+DIST chromium-138.0.7204.100-linux.tar.xz 1555634580 BLAKE2B 16650922358d913567b8f96244bc388c4af8551110627bc40647ec15cc530d6df0060199976efecd1f21e0db97b90162fb09cf7b0a5870ad52d5c7588f47455f SHA512 4cf91ca6b00679d39bda6e0004e1ed43c57d0a04bb078b7dac31d1b167e5b07d7bdb32447d514db2e782a883420c5add5cbafdbef4e0e62f7dfabb2d24bc5508
+DIST chromium-clang-llvmorg-21-init-11777-gfd3fecfc-1.tar.xz 55654416 BLAKE2B 7dee88ab546cd265c7c8067484aab3250da8c1073adc1f453e9c6fba7113e7135fe988797d974b834326c1c7de63a55a1a9041c42f1fad435dba44b553e7c0e5 SHA512 8bb683c6036c103939ad47411bdaeb724787101dfa7f60f9a7837255814d3ba4faae7f9f115fcef0901446833727994ab95d5ead275b7424dc8cbcb7fbe86f87
+DIST chromium-openpower-e1538a2234.tar.bz2 421924 BLAKE2B c2e80953b0e73cb383b4c83a23304982a1a0ce2b2a06e247d1205080473d69587ba6326db355dc4c29e0a05f6608b270c84af2eb2c7a9282ecdfc498b3fdb1d5 SHA512 5429e48fb09dfc24703bea5ce7444a26ccc396f3fdbf0f9cda5ac9948de9584e9056cfb79b3633b69ff718595c1c3ee2754e9c852ae78cbb534934e5b8ea2151
+DIST chromium-patches-138-1.tar.bz2 11109 BLAKE2B a4b57c2f5cadae37f6284e458ec8941c09ae98658c099e638817919da9686ec412b619a21bd208ce79b471d27bbfcf589a94695f636f381a2de60f14fe8fe367 SHA512 b930ac8cb86aa5143cecf04c076a07a366328806b20ba4c6c09844b4411b74a0ad04dfbf182966e9401e3d1ee4a6f4b3e12e7f9b015c5f33311ebe0ffd76d5da
DIST chromium-profiler-0.2.tar 259952640 BLAKE2B 5e82389fce00b267280d633b26551231c558b80f0c92cd7d60271095a3503365ab673e7a46dc5f74f8a82db1f21262cb24dcc0531d954bab5fb3b175dab3394d SHA512 9fa89a5ab728419683e7495ae676567480987d68a2d589f2aa97bfcbcf123f3c8f97f8bca5f65e5e3f6e41475535add473ded83b9c7a33bb4746a9d05b298a6c
-DIST chromium-rust-toolchain-f7b4354283-1-llvmorg-21-init-5118-g52cd27e6.tar.xz 118223072 BLAKE2B 2173e53df32fa697932ed55b6cef016ee8e1e7202ee47d947caef82f727b75dee1b466c7dcae0210225b23cfa94acf46af2ae4db10358189f3f32f7f0d84b685 SHA512 36d686342d5e0d984cc147e0a8ce06f665759b5480b086551158e69642cf903dbbbce85484eb8e5314cd1f0aa0e869f47d74cbf33fb125d4bd09586d22b0e3a5
-DIST chromium-testfonts-f26f29c9d3.tar.gz 32750602 BLAKE2B 498f8b2e0811c98dc3d4aaa75559e69c782afb4bd12328cfdb7244ddba5cae7ee47becd27b2549d7b36bed417601f70f4c192934b0f08496cef1547d0502d93c SHA512 96b090446862997c8134e2971f0e38793ecc1208d547e554c9b651ccfb4127c4de86754903fea57a7292a2823c45117bae0ec13ed87aed20c248fb779579fbde
+DIST chromium-rust-toolchain-4a0969e06d-1-llvmorg-21-init-11777-gfd3fecfc.tar.xz 118529212 BLAKE2B 595fb0f3b1526f75c69b19936b93547168a7d4b53fe9afe34c0f3a08b58434dcfbd214c86963a0d54e726c475296d5b54a5a436d63f3f5ac84409fdf86a17cfc SHA512 837bde1b8a0750dca3b298d3a83e54a92574060e93af3d9fdc72ec5873b4e2e22abeb286dd81573eb787af2c0ccc7878eb2ba5e9fdfb8b0f22dd4b77fc1dcac1
+DIST chromium-testfonts-a28b222b79.tar.gz 33233004 BLAKE2B 2329d6a6069a19058c6fd58b61ae2d66cff3b4971984a5d2449be708ead2ef169bd4401ba3b5e9d3aedeeb910b6bb8e7c81b6e338808df327b3102420d6ab2d0 SHA512 ca4f98300f2037a40e02f6c2ffa04427fdf08cdce8de34cc944a5ccb69d4279090d2b8476d5e77bd610db6542696eb3ed4d135c3462fc0375cbf9277bf2fa670
diff --git a/www-client/chromium/chromium-136.0.7103.113.ebuild b/www-client/chromium/chromium-138.0.7204.100.ebuild
similarity index 82%
rename from www-client/chromium/chromium-136.0.7103.113.ebuild
rename to www-client/chromium/chromium-138.0.7204.100.ebuild
index b752c9f..77d9793 100644
--- a/www-client/chromium/chromium-136.0.7103.113.ebuild
+++ b/www-client/chromium/chromium-138.0.7204.100.ebuild
@@ -15,18 +15,17 @@ EAPI=8
# and need to get a release out quickly (less likely with `dev` in-tree).
# Since m133 we are using CI-generated tarballs from
-# https://github.com/chromium-linux-tarballs/chromium-tarballs/ (uploaded to S3
-# and made available via https://chromium-tarballs.distfiles.gentoo.org/).
+# https://github.com/chromium-linux-tarballs/chromium-tarballs/
-# We do this because upstream tarballs weigh in at about 3.5x the size of our
-# new "Distro tarballs" and include binaries (etc) that are not useful for
-# downstream consumers (like distributions).
+# These are bit-for-bit identical to the official releases, but are built
+# using an external CI system that we have some control over, in case
+# issues pop up again with official tarball generation.
-GN_MIN_VER=0.2217
+GN_MIN_VER=0.2235
# chromium-tools/get-chromium-toolchain-strings.py
-TEST_FONT=f26f29c9d3bfae588207bbc9762de8d142e58935c62a86f67332819b15203b35
-BUNDLED_CLANG_VER=llvmorg-21-init-5118-g52cd27e6-5
-BUNDLED_RUST_VER=f7b43542838f0a4a6cfdb17fbeadf45002042a77-1
+TEST_FONT=a28b222b79851716f8358d2800157d9ffe117b3545031ae51f69b7e1e1b9a969
+BUNDLED_CLANG_VER=llvmorg-21-init-11777-gfd3fecfc-1
+BUNDLED_RUST_VER=4a0969e06dbeaaa43914d2d00b2e843d49aa3886-1
RUST_SHORT_HASH=${BUNDLED_RUST_VER:0:10}-${BUNDLED_RUST_VER##*-}
NODE_VER=22.11.0
@@ -48,8 +47,8 @@ inherit python-any-r1 readme.gentoo-r1 rust systemd toolchain-funcs virtualx xdg
DESCRIPTION="Open-source version of Google Chrome web browser"
HOMEPAGE="https://www.chromium.org/"
-PPC64_HASH="01dda910156deccddab855e2b6adaea2c751ae45"
-PATCH_V="${PV%%\.*}-2"
+PPC64_HASH="e1538a223437603b214fdcb1a6adfb91e98f769a"
+PATCH_V="${PV%%\.*}-1"
SRC_URI="https://github.com/chromium-linux-tarballs/chromium-tarballs/releases/download/${PV}/chromium-${PV}-linux.tar.xz
!bundled-toolchain? (
https://gitlab.com/Matt.Jolly/chromium-patches/-/archive/${PATCH_V}/chromium-patches-${PATCH_V}.tar.bz2
@@ -72,17 +71,19 @@ SRC_URI="https://github.com/chromium-linux-tarballs/chromium-tarballs/releases/d
# https://gitweb.gentoo.org/proj/chromium-tools.git/tree/get-chromium-licences.py
LICENSE="BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 Base64 Boost-1.0 CC-BY-3.0 CC-BY-4.0 Clear-BSD"
LICENSE+=" FFT2D FTL IJG ISC LGPL-2 LGPL-2.1 libpng libpng2 MIT MPL-1.1 MPL-2.0 Ms-PL openssl PSF-2"
-LICENSE+=" SGI-B-2.0 SSLeay SunSoft Unicode-3.0 Unicode-DFS-2015 Unlicense unRAR UoI-NCSA X11-Lucent"
+LICENSE+=" SGI-B-2.0 SSLeay SunSoft Unicode-3.0 Unicode-DFS-2015 Unlicense UoI-NCSA X11-Lucent"
+LICENSE+=" rar? ( unRAR )"
+
SLOT="0/stable"
# 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"
+ KEYWORDS="amd64 ~arm64 ~ppc64 ~riscv"
fi
IUSE_SYSTEM_LIBS="+system-harfbuzz +system-icu +system-png +system-zstd"
IUSE="+X ${IUSE_SYSTEM_LIBS} bindist bundled-toolchain cups debug ffmpeg-chromium gtk4 +hangouts headless kerberos +official pax-kernel pgo"
-IUSE+=" +proprietary-codecs pulseaudio qt6 +screencast selinux test +vaapi +wayland +widevine cpu_flags_ppc_vsx3"
+IUSE+=" +proprietary-codecs pulseaudio qt6 +rar +screencast selinux test +vaapi +wayland +widevine cpu_flags_ppc_vsx3"
RESTRICT="
!bindist? ( bindist )
!test? ( test )
@@ -419,21 +420,23 @@ src_prepare() {
"${FILESDIR}/chromium-134-bindgen-custom-toolchain.patch"
"${FILESDIR}/chromium-135-oauth2-client-switches.patch"
"${FILESDIR}/chromium-135-map_droppable-glibc.patch"
- "${FILESDIR}/chromium-136-drop-nodejs-ver-check.patch"
- "${FILESDIR}/chromium-135-gperf.patch"
+ "${FILESDIR}/chromium-137-openh264-include-path.patch"
+ "${FILESDIR}/chromium-138-nodejs-version-check.patch"
"${FILESDIR}/riscv-swiftshader.patch"
"${FILESDIR}/Debian-fix-rust-linking.patch"
"${FILESDIR}/riscv-dav1d.patch"
"${FILESDIR}/riscv-sandbox.patch"
"${FILESDIR}/riscv-ffmpeg.patch"
- "${FILESDIR}/compiler-rt-riscv.patch"
"${FILESDIR}/cpuinfo.patch"
+ "${FILESDIR}/compiler-rt-riscv.patch"
"${FILESDIR}/riscv-misc.patch"
"${FILESDIR}/riscv-v8.patch"
"${FILESDIR}/riscv-highway.patch"
+ "${FILESDIR}/riscv-tflite.patch"
"${FILESDIR}/chromium-134-type-mismatch-error.patch"
"${FILESDIR}/0001-chrome-runtime_api_delegate-add-riscv64-define.patch"
"${FILESDIR}/0001-extensions-common-api-runtime.json-riscv64-support.patch"
+ "${FILESDIR}/0001-disable-rvv-in-highway-due-to-broken-runtime-dispatc.patch"
)
if use bundled-toolchain; then
@@ -533,7 +536,6 @@ src_prepare() {
mkdir -p third_party/node/linux/node-linux-x64/bin || die
fi
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
@@ -619,6 +621,7 @@ src_prepare() {
third_party/ced
third_party/cld_3
third_party/closure_compiler
+ third_party/compiler-rt # Since M137 atomic is required; we could probably unbundle this as a target of opportunity.
third_party/content_analysis_sdk
third_party/cpuinfo
third_party/crabbyavif
@@ -658,8 +661,8 @@ src_prepare() {
third_party/devtools-frontend/src/front_end/third_party/wasmparser
third_party/devtools-frontend/src/front_end/third_party/web-vitals
third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
third_party/dom_distiller_js
+ third_party/dragonbox
third_party/eigen3
third_party/emoji-segmenter
third_party/farmhash
@@ -802,7 +805,6 @@ src_prepare() {
third_party/tensorflow_models
third_party/tensorflow-text
third_party/tflite
- 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/framework
@@ -810,7 +812,6 @@ src_prepare() {
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
third_party/vulkan
third_party/wasm_tts_engine
@@ -823,7 +824,6 @@ src_prepare() {
third_party/webrtc/modules/third_party/fft
third_party/webrtc/modules/third_party/g711
third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
third_party/webrtc/rtc_base/third_party/sigslot
third_party/widevine
third_party/woff2
@@ -848,6 +848,10 @@ src_prepare() {
third_party/xdg-utils
)
+ if use rar; then
+ keeplibs+=( third_party/unrar )
+ fi
+
if use test; then
# tar tvf /var/cache/distfiles/${P}-testdata.tar.xz | grep '^d' | grep 'third_party' | awk '{print $NF}'
keeplibs+=(
@@ -944,82 +948,12 @@ chromium_configure() {
# Calling this here supports resumption via FEATURES=keepwork
python_setup
- local myconf_gn=""
-
- if use !bundled-toolchain; then
- # We already forced the "correct" clang via pkg_setup
-
- 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
-
- 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"
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- myconf_gn+=" custom_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
-
- # 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}\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=false"
+ # Bug 491582.
+ export TMPDIR="${WORKDIR}/temp"
+ mkdir -p -m 755 "${TMPDIR}" || die
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
+ # https://bugs.gentoo.org/654216
+ addpredict /dev/dri/ #nowarn
# Use system-provided libraries.
# TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
@@ -1051,7 +985,8 @@ chromium_configure() {
gn_system_libraries+=( zstd )
fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
+ build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" ||
+ die "Failed to replace GN files for system libraries"
# 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
@@ -1060,223 +995,277 @@ chromium_configure() {
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)"
-
- # Optional dependencies.
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
-
- if use headless; then
- myconf_gn+=" use_cups=false"
- myconf_gn+=" use_kerberos=false"
- myconf_gn+=" use_pulseaudio=false"
- myconf_gn+=" use_vaapi=false"
- myconf_gn+=" rtc_use_pipewire=false"
- else
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
- myconf_gn+=" gtk_version=$(usex gtk4 4 3)"
- fi
-
- # Allows distributions to link pulseaudio directly (DT_NEEDED) instead of
- # using dlopen. This helps with automated detection of ABI mismatches and
- # prevents silent errors.
- if use pulseaudio; then
- myconf_gn+=" link_pulseaudio=true"
- fi
-
- # Non-developer builds of Chromium (for example, non-Chrome browsers, or
- # Chromium builds provided by Linux distros) should disable the testing config
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # The sysroot is the oldest debian image that chromium supports, we don't need it
- myconf_gn+=" use_sysroot=false"
-
- # Use in-tree libc++ (buildtools/third_party/libc++ and buildtools/third_party/libc++abi)
- # instead of the system C++ library for C++ standard library support.
- # default: true, but let's be explicit (forced since 120 ; USE removed 127).
- myconf_gn+=" use_custom_libcxx=true"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- if use bindist ; then
- # proprietary_codecs just forces Chromium to say that it can use h264/aac,
- # the work is still done by ffmpeg. If this is set to no Chromium
- # won't be able to load the codec even if the library can handle it
- myconf_gn+=" proprietary_codecs=true"
- myconf_gn+=" ffmpeg_branding=\"Chrome\""
- # build ffmpeg as an external component (libffmpeg.so) that we can remove / substitute
- myconf_gn+=" is_component_ffmpeg=true"
- else
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
- fi
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
+ if use !custom-cflags; then
replace-flags "-Os" "-O2"
strip-flags
-
# Debug info section overflows without component build
# Prevent linker from running out of address space, bug #471810 .
filter-flags "-g*"
-
- # Prevent libvpx/xnnpack build failures. Bug 530248, 544702, 546984, 853646.
- if [[ ${myarch} == amd64 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4 -mno-xop -mno-sse4a
- fi
fi
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- elif [[ $myarch = riscv ]] ; then
- myconf_gn+=" target_cpu=\"riscv64\""
- ffmpeg_target_arch=riscv64
- else
- die "Failed to determine target arch, got '$myarch'."
+ # We don't use the same clang version as upstream, and with -Werror
+ # we need to make sure that we don't get superfluous warnings.
+ append-flags -Wno-unknown-warning-option
+ if tc-is-cross-compiler; then # can you cross-compile with the bundled toolchain?
+ export BUILD_CXXFLAGS+=" -Wno-unknown-warning-option"
+ export BUILD_CFLAGS+=" -Wno-unknown-warning-option"
fi
- myconf_gn+=" treat_warnings_as_errors=false"
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
+ # Start building our GN options
+ local myconf_gn=() # Tip: strings must be quoted, bools or numbers are fine
- # Disable external code space for V8 for ppc64. It is disabled for ppc64
- # by default, but cross-compiling on amd64 enables it again.
- if tc-is-cross-compiler; then
- if ! use amd64 && ! use arm64; then
- myconf_gn+=" v8_enable_external_code_space=false"
+ if use !bundled-toolchain; then
+ # We already forced the "correct" clang via pkg_setup
+
+ 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
- fi
- # Only enabled for clang, but gcc has endian macros too
- myconf_gn+=" v8_use_libm_trig_functions=true"
+ # Make sure the build system will use the right tools, bug #340795.
+ tc-export AR CC CXX NM
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
+ strip-unsupported-flags
+ append-ldflags -Wl,--undefined-version # https://bugs.gentoo.org/918897#c32
+
+ myconf_gn+=(
+ "is_clang=true"
+ "clang_use_chrome_plugins=false"
+ "use_lld=true"
+ 'custom_toolchain="//build/toolchain/linux/unbundle:default"'
+ # From M127 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.
+ # We don't need to set 'clang_base_path' for anything in our build
+ # and it defaults to the google toolchain location. Instead provide a location
+ # to where system clang lives so that bindgen can find system headers (e.g. stddef.h)
+ "bindgen_libclang_path=\"$(get_llvm_prefix)/$(get_libdir)\""
+ "clang_base_path=\"${EPREFIX}/usr/lib/clang/${LLVM_SLOT}/\""
+ "rust_bindgen_root=\"${EPREFIX}/usr/\""
+ "rust_sysroot_absolute=\"$(get_rust_prefix)\""
+ "rustc_version=\"${RUST_SLOT}\""
+ )
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
+ if ! tc-is-cross-compiler; then
+ myconf_gn+=( 'host_toolchain="//build/toolchain/linux/unbundle:default"' )
+ else
+ tc-export BUILD_{AR,CC,CXX,NM}
+ myconf_gn+=(
+ 'host_toolchain="//build/toolchain/linux/unbundle:host"'
+ 'v8_snapshot_toolchain="//build/toolchain/linux/unbundle:host"'
+ "host_pkg_config=$(tc-getBUILD_PKG_CONFIG)"
+ "pkg_config=$(tc-getPKG_CONFIG)"
+ )
- # We don't use the same clang version as upstream, and with -Werror
- # we need to make sure that we don't get superfluous warnings.
- append-flags -Wno-unknown-warning-option
- if tc-is-cross-compiler; then
- export BUILD_CXXFLAGS+=" -Wno-unknown-warning-option"
- export BUILD_CFLAGS+=" -Wno-unknown-warning-option"
- fi
+ # 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
- # Explicitly disable ICU data file support for system-icu/headless builds.
- if use system-icu || use headless; then
- myconf_gn+=" icu_use_data_file=false"
- fi
+ # Don't inherit PKG_CONFIG_PATH from environment
+ local -x PKG_CONFIG_PATH=
+ fi
- # Don't need nocompile checks and GN crashes with our config
- myconf_gn+=" enable_nocompile_tests=false"
+ fi # !bundled-toolchain
+
+ local myarch
+ myarch="$(tc-arch)"
+ case ${myarch} in
+ amd64)
+ # Bug 530248, 544702, 546984, 853646.
+ use !custom-cflags && filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 \
+ -mno-avx -mno-avx2 -mno-fma -mno-fma4 -mno-xop -mno-sse4a
+ myconf_gn+=( 'target_cpu="x64"' )
+ ;;
+ arm64)
+ myconf_gn+=( 'target_cpu="arm64"' )
+ ;;
+ ppc64)
+ myconf_gn+=( 'target_cpu="ppc64"' )
+ ;;
+ riscv)
+ myconf_gn+=( 'target_cpu="riscv64"' )
+ ;;
+ *)
+ die "Failed to determine target arch, got '${myarch}'."
+ ;;
+ esac
+
+ # Common options
+
+ myconf_gn+=(
+ # Disable code formating of generated files
+ "blink_enable_generated_code_formatting=false"
+ # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
+ # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
+ "dcheck_always_on=$(usex debug true false)"
+ "dcheck_is_configurable=$(usex debug true false)"
+ # Chromium builds provided by Linux distros should disable the testing config
+ "disable_fieldtrial_testing_config=true"
+ # 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
+ "enable_freetype=true"
+ "enable_hangout_services_extension=$(usex hangouts true false)"
+ # Disable nacl; deprecated, we can't build without pnacl (http://crbug.com/269560).
+ "enable_nacl=false"
+ # Don't need nocompile checks and GN crashes with our config (verify with modern GN)
+ "enable_nocompile_tests=false"
+ # pseudolocales are only used for testing
+ "enable_pseudolocales=false"
+ "enable_widevine=$(usex widevine true false)"
+ # Disable fatal linker warnings, bug 506268.
+ "fatal_linker_warnings=false"
+ # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys
+ # Note: these are for Gentoo use ONLY. For your own distribution,
+ # please get your own set of keys. Feel free to contact chromium@gentoo.org for more info.
+ # note: OAuth2 is patched in; check patchset for details.
+ 'google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"'
+ # Component build isn't generally intended for use by end users. It's mostly useful
+ # for development and debugging.
+ "is_component_build=false"
+ # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
+ "is_debug=false"
+ "is_official_build=$(usex official true false)"
+ # Enable ozone wayland and/or headless support
+ "ozone_auto_platforms=false"
+ "ozone_platform_headless=true"
+ # Enables building without non-free unRAR licence
+ "safe_browsing_use_unrar=$(usex rar true false)"
+ "thin_lto_enable_optimizations=${use_lto}"
+ "treat_warnings_as_errors=false"
+ # Use in-tree libc++ (buildtools/third_party/libc++ and buildtools/third_party/libc++abi)
+ # instead of the system C++ library for C++ standard library support.
+ # default: true, but let's be explicit (forced since 120 ; USE removed 127).
+ "use_custom_libcxx=true"
+ # Enable ozone wayland and/or headless support
+ "use_ozone=true"
+ # The sysroot is the oldest debian image that chromium supports, we don't need it
+ "use_sysroot=false"
+ # See dependency logic in third_party/BUILD.gn
+ "use_system_harfbuzz=$(usex system-harfbuzz true false)"
+ "use_thin_lto=${use_lto}"
+ # Only enabled for clang, but gcc has endian macros too
+ "v8_use_libm_trig_functions=true"
+ )
- # 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"
+ if use bindist ; then
+ myconf_gn+=(
+ # If this is set to false Chromium won't be able to load any proprietary codecs
+ # even if provided with an ffmpeg capable of h264/aac decoding
+ "proprietary_codecs=true"
+ 'ffmpeg_branding="Chrome"'
+ # build ffmpeg as an external component (libffmpeg.so) that we can remove / substitute
+ "is_component_ffmpeg=true"
+ )
+ else
+ myconf_gn+=(
+ "proprietary_codecs=$(usex proprietary-codecs true false)"
+ "ffmpeg_branding=\"$(usex proprietary-codecs Chrome Chromium)\""
+ )
+ fi
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_xkbcommon=false use_gtk=false use_qt=false"
- myconf_gn+=" use_glib=false use_gio=false"
- myconf_gn+=" use_pangocairo=false use_alsa=false"
- myconf_gn+=" use_libpci=false use_udev=false"
- myconf_gn+=" enable_print_preview=false"
- myconf_gn+=" enable_remoting=false"
+ myconf_gn+=(
+ "enable_print_preview=false"
+ "enable_remoting=false"
+ 'ozone_platform="headless"'
+ "rtc_use_pipewire=false"
+ "use_alsa=false"
+ "use_cups=false"
+ "use_gio=false"
+ "use_glib=false"
+ "use_gtk=false"
+ "use_kerberos=false"
+ "use_libpci=false"
+ "use_pangocairo=false"
+ "use_pulseaudio=false"
+ "use_qt5=false"
+ "use_qt6=false"
+ "use_udev=false"
+ "use_vaapi=false"
+ "use_xkbcommon=false"
+ )
else
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" use_qt5=false"
+ myconf_gn+=(
+ "gtk_version=$(usex gtk4 4 3)"
+ # link pulseaudio directly (DT_NEEDED) instead of using dlopen.
+ # helps with automated detection of ABI mismatches and prevents silent errors.
+ "link_pulseaudio=$(usex pulseaudio true false)"
+ "ozone_platform_wayland=$(usex wayland true false)"
+ "ozone_platform_x11=$(usex X true false)"
+ "ozone_platform=\"$(usex wayland wayland x11)\""
+ "rtc_use_pipewire=$(usex screencast true false)"
+ "use_cups=$(usex cups true false)"
+ "use_kerberos=$(usex kerberos true false)"
+ "use_pulseaudio=$(usex pulseaudio true false)"
+ "use_qt5=false"
+ "use_system_libffi=$(usex wayland true false)"
+ "use_system_minigbm=true"
+ "use_vaapi=$(usex vaapi true false)"
+ "use_xkbcommon=true"
+ )
if use qt6; then
- myconf_gn+=" use_qt6=true"
- local cbuild_libdir=$(get_libdir)
+ local cbuild_libdir
+ cbuild_libdir="$(get_libdir)"
if tc-is-cross-compiler; then
- # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
- local cbuild_libdir=$($(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libxslt)
- cbuild_libdir=${cbuild_libdir:2}
- cbuild_libdir=${cbuild_libdir/% }
+ # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
+ cbuild_libdir="$($(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libxslt)"
+ cbuild_libdir="${cbuild_libdir:2}"
+ cbuild_libdir="${cbuild_libdir/% }"
fi
- myconf_gn+=" moc_qt6_path=\"${EPREFIX}/usr/${cbuild_libdir}/qt6/libexec\""
+ myconf_gn+=(
+ "use_qt6=true"
+ "moc_qt6_path=\"${EPREFIX}/usr/${cbuild_libdir}/qt6/libexec\""
+ )
else
- myconf_gn+=" use_qt6=false"
+ myconf_gn+=( "use_qt6=false" )
fi
- myconf_gn+=" ozone_platform_x11=$(usex X true false)"
- myconf_gn+=" ozone_platform_wayland=$(usex wayland true false)"
- myconf_gn+=" ozone_platform=$(usex wayland \"wayland\" \"x11\")"
- use wayland && myconf_gn+=" use_system_libffi=true"
fi
- myconf_gn+=" use_thin_lto=${use_lto}"
- myconf_gn+=" thin_lto_enable_optimizations=${use_lto}"
+ # Explicitly disable ICU data file support for system-icu/headless builds.
+ if use system-icu || use headless; then
+ myconf_gn+=( "icu_use_data_file=false" )
+ fi
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
if use official; then
# 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
- 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"
+ myconf_gn+=( "symbol_level=0" )
fi
if use pgo; then
- myconf_gn+=" chrome_pgo_phase=${1}"
+ myconf_gn+=( "chrome_pgo_phase=${1}" )
if [[ "$1" == "2" ]]; then
- myconf_gn+=" pgo_data_path=\"${2}\""
+ myconf_gn+=( "pgo_data_path=${2}" )
fi
else
- # Disable PGO
- myconf_gn+=" chrome_pgo_phase=0"
+ myconf_gn+=( "chrome_pgo_phase=0" )
fi
+ # Odds and ends
+
# skipping typecheck is only supported on amd64, bug #876157
if ! use amd64; then
- myconf_gn+=" devtools_skip_typecheck=false"
+ myconf_gn+=( "devtools_skip_typecheck=false" )
+ fi
+
+ # Disable external code space for V8 for ppc64. It is disabled for ppc64
+ # by default, but cross-compiling on amd64 enables it again.
+ if tc-is-cross-compiler && use ppc64; then
+ myconf_gn+=( "v8_enable_external_code_space=false" )
fi
einfo "Configuring Chromium ..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
+ set -- gn gen --args="${myconf_gn[*]}${EXTRA_GN:+ ${EXTRA_GN}}" out/Release
echo "$@"
"$@" || die
}
@@ -1457,7 +1446,18 @@ src_test() {
ToolsSanityTest.BadVirtualCallNull
ToolsSanityTest.BadVirtualCallWrongType
CancelableEventTest.BothCancelFailureAndSucceedOccurUnderContention #new m133: TODO investigate
+ DriveInfoTest.GetFileDriveInfo # new m137: TODO investigate
)
+
+ if use arm64; then
+ skip_tests+=(
+ # Apple Silicon on 138.0.7204.92
+ SystemMetrics2Test.GetSystemMemoryInfo
+ SysInfoTest.GetHardwareInfo
+ PartitionAllocPageAllocatorTest.AllocAndFreePagesWithPageReadExecuteConfirmCFI
+ )
+ fi
+
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 \
@@ -1579,9 +1579,39 @@ pkg_postinst() {
if ! use headless; then
if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
+ elog "Hardware-accelerated video decoding configuration:"
+ elog
+ elog "Chromium supports multiple backends for hardware acceleration. To enable one,"
+ elog " Add to CHROMIUM_FLAGS in /etc/chromium/default:"
+ elog
+ elog "1. VA-API with OpenGL (recommended for most users):"
+ elog " --enable-features=AcceleratedVideoDecodeLinuxGL"
+ elog " VaapiVideoDecoder may need to be added as well, but try without first."
+ elog
+ if use wayland; then
+ elog "2. Enhanced Wayland/EGL performance:"
+ elog " --enable-features=AcceleratedVideoDecodeLinuxGL,AcceleratedVideoDecodeLinuxZeroCopyGL"
+ elog
+ fi
+ if use X; then
+ elog "$(usex wayland "3" "2"). VA-API with Vulkan:"
+ elog " --enable-features=VaapiVideoDecoder,VaapiIgnoreDriverChecks,Vulkan,DefaultANGLEVulkan,VulkanFromANGLE"
+ elog
+ if use wayland; then
+ elog " NOTE: Vulkan acceleration requires X11 and will not work under Wayland sessions."
+ elog " Use OpenGL-based acceleration instead when running under Wayland."
+ elog
+ fi
+ fi
+ elog "Additional options:"
+ elog " To enable hardware-accelerated encoding (if supported)"
+ elog " add 'AcceleratedVideoEncoder' to your feature list"
+ elog " VaapiIgnoreDriverChecks bypasses driver compatibility checks"
+ elog " (may be needed for newer/unsupported hardware)"
+ elog
+ else
+ elog "This Chromium build was compiled without VA-API support, which provides"
+ elog "hardware-accelerated video decoding."
fi
if use screencast; then
elog "Screencast is disabled by default at runtime. Either enable it"
diff --git a/www-client/chromium/files/0001-disable-rvv-in-highway-due-to-broken-runtime-dispatc.patch b/www-client/chromium/files/0001-disable-rvv-in-highway-due-to-broken-runtime-dispatc.patch
new file mode 100644
index 0000000..dbae172
--- /dev/null
+++ b/www-client/chromium/files/0001-disable-rvv-in-highway-due-to-broken-runtime-dispatc.patch
@@ -0,0 +1,29 @@
+From 1321e213034132e5489ad0b8375e6ae4b6a00c5e Mon Sep 17 00:00:00 2001
+From: kxxt <rsworktech@outlook.com>
+Date: Mon, 3 Mar 2025 16:29:06 +0100
+Subject: [PATCH] disable rvv in highway due to broken runtime dispatch
+
+Patch-Dir: src/electron/patches/chromium
+Patch-Filename: 0001-disable-rvv-in-highway-due-to-broken-runtime-dispatc.patch
+---
+ third_party/highway/BUILD.gn | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/third_party/highway/BUILD.gn b/third_party/highway/BUILD.gn
+index f3459d449ce5c..9462ccd4fd345 100644
+--- a/third_party/highway/BUILD.gn
++++ b/third_party/highway/BUILD.gn
+@@ -21,6 +21,10 @@ config("libhwy_external_config") {
+ # for absl::uint128 is 16.
+ defines += [ "HWY_BROKEN_TARGETS=HWY_ALL_SVE" ]
+ }
++ if (target_cpu == "riscv64") {
++ # Runtime dispatch is broken
++ defines += [ "HWY_BROKEN_TARGETS=HWY_RVV" ]
++ }
+ }
+
+ source_set("libhwy") {
+--
+2.48.1
+
diff --git a/www-client/chromium/files/0002-xnnpack-enable-riscv64-support.patch b/www-client/chromium/files/0002-xnnpack-enable-riscv64-support.patch
new file mode 100644
index 0000000..e38bd7b
--- /dev/null
+++ b/www-client/chromium/files/0002-xnnpack-enable-riscv64-support.patch
@@ -0,0 +1,11574 @@
+From 42adc66ea79c4eef0efbc4cd7e4fcc504437e8a8 Mon Sep 17 00:00:00 2001
+From: Levi Zim <rsworktech@outlook.com>
+Date: Wed, 28 May 2025 20:47:55 +0800
+Subject: [PATCH 2/2] xnnpack: enable riscv64 support
+
+XNNPACK officially supports riscv64 RVV.
+This CL updates generate_build_gn.py and bazelroot/BUILD for riscv64
+support and then runs generate_build_gn.py to update BUILD.gn
+---
+ third_party/xnnpack/BUILD.gn | 10142 +++++++++++++++++++--
+ third_party/xnnpack/bazelroot/BUILD | 8 +
+ third_party/xnnpack/generate_build_gn.py | 5 +-
+ 3 files changed, 9568 insertions(+), 587 deletions(-)
+
+diff --git a/third_party/xnnpack/BUILD.gn b/third_party/xnnpack/BUILD.gn
+index 351b7d251bc73..d59a5a48578c0 100644
+--- a/third_party/xnnpack/BUILD.gn
++++ b/third_party/xnnpack/BUILD.gn
+@@ -1438,6 +1438,332 @@ if (current_cpu == "x64" || current_cpu == "x86") {
+ ":xx-pad_arm64_standalone",
+ ":xx-transposev_arm64_standalone",
+ ]
++} else if (current_cpu == "riscv64") {
++ xnnpack_deps = [
++ ":configs_riscv64",
++ ":enums_riscv64",
++ ":f16-f32-vcvt_riscv64",
++ ":f16-qs8-vcvt_riscv64",
++ ":f16-qu8-vcvt_riscv64",
++ ":f16-rdminmax_riscv64",
++ ":f16-rminmax_riscv64",
++ ":f16-vapproxgelu_riscv64",
++ ":f16-vcos_riscv64",
++ ":f16-vexp_riscv64",
++ ":f16-vgelu_riscv64",
++ ":f16-vsin_riscv64",
++ ":f32-argmaxpool_arch=rv64gcv-abi=lp64d",
++ ":f32-argmaxpool_riscv64",
++ ":f32-avgpool_riscv64",
++ ":f32-conv-hwc2chw_arch=rv64gcv-abi=lp64d",
++ ":f32-conv-hwc2chw_riscv64",
++ ":f32-dwconv2d-chw_arch=rv64gcv-abi=lp64d",
++ ":f32-dwconv2d-chw_riscv64",
++ ":f32-dwconv_arch=rv64gcv-abi=lp64d",
++ ":f32-dwconv_riscv64",
++ ":f32-f16-vcvt_riscv64",
++ ":f32-gemm_arch=rv64gcv-abi=lp64d",
++ ":f32-gemm_riscv64",
++ ":f32-ibilinear-chw_riscv64",
++ ":f32-ibilinear_riscv64",
++ ":f32-igemm_arch=rv64gcv-abi=lp64d",
++ ":f32-igemm_riscv64",
++ ":f32-maxpool_arch=rv64gcv-abi=lp64d",
++ ":f32-maxpool_riscv64",
++ ":f32-qc4w-gemm_riscv64",
++ ":f32-qc8w-gemm_riscv64",
++ ":f32-qs8-vcvt_arch=rv64gcv-abi=lp64d",
++ ":f32-qs8-vcvt_riscv64",
++ ":f32-qu8-vcvt_arch=rv64gcv-abi=lp64d",
++ ":f32-qu8-vcvt_riscv64",
++ ":f32-raddstoreexpminusmax_arch=rv64gcv-abi=lp64d",
++ ":f32-raddstoreexpminusmax_riscv64",
++ ":f32-rdminmax_riscv64",
++ ":f32-rdsum_arch=rv64gcv-abi=lp64d",
++ ":f32-rdsum_riscv64",
++ ":f32-rminmax_arch=rv64gcv-abi=lp64d",
++ ":f32-rminmax_riscv64",
++ ":f32-rsum_riscv64",
++ ":f32-spmm_arch=rv64gcv-abi=lp64d",
++ ":f32-spmm_riscv64",
++ ":f32-vapproxgelu_riscv64",
++ ":f32-vbinary_arch=rv64gcv-abi=lp64d",
++ ":f32-vbinary_riscv64",
++ ":f32-vclamp_riscv64",
++ ":f32-vcmul_arch=rv64gcv-abi=lp64d",
++ ":f32-vcmul_riscv64",
++ ":f32-vcopysign_riscv64",
++ ":f32-vcos_riscv64",
++ ":f32-velu_riscv64",
++ ":f32-vexp_riscv64",
++ ":f32-vgelu_riscv64",
++ ":f32-vhswish_riscv64",
++ ":f32-vlog_riscv64",
++ ":f32-vlrelu_arch=rv64gcv-abi=lp64d",
++ ":f32-vlrelu_riscv64",
++ ":f32-vmulcaddc_riscv64",
++ ":f32-vrelu_arch=rv64gcv-abi=lp64d",
++ ":f32-vrelu_riscv64",
++ ":f32-vrnd_arch=rv64gcv-abi=lp64d",
++ ":f32-vrnd_riscv64",
++ ":f32-vrsqrt_arch=rv64gcv-abi=lp64d",
++ ":f32-vrsqrt_riscv64",
++ ":f32-vsigmoid_riscv64",
++ ":f32-vsin_riscv64",
++ ":f32-vsqrt_riscv64",
++ ":f32-vtanh_riscv64",
++ ":f32-vunary_riscv64",
++ ":operators_riscv64",
++ ":qd8-f32-qb4w-gemm_riscv64",
++ ":qd8-f32-qc4w-gemm_riscv64",
++ ":qd8-f32-qc8w-gemm_riscv64",
++ ":qd8-f32-qc8w-igemm_riscv64",
++ ":qs8-dwconv_arch=rv64gcv-abi=lp64d",
++ ":qs8-dwconv_riscv64",
++ ":qs8-f32-vcvt_arch=rv64gcv-abi=lp64d",
++ ":qs8-f32-vcvt_riscv64",
++ ":qs8-packw_riscv64",
++ ":qs8-qc4w-gemm_riscv64",
++ ":qs8-qc8w-dwconv_arch=rv64gcv-abi=lp64d",
++ ":qs8-qc8w-dwconv_riscv64",
++ ":qs8-qc8w-gemm_arch=rv64gcv-abi=lp64d",
++ ":qs8-qc8w-gemm_riscv64",
++ ":qs8-qc8w-igemm_arch=rv64gcv-abi=lp64d",
++ ":qs8-qc8w-igemm_riscv64",
++ ":qs8-qu8-packw_riscv64",
++ ":qs8-rdsum_arch=rv64gcv-abi=lp64d",
++ ":qs8-rdsum_riscv64",
++ ":qs8-rsum_arch=rv64gcv-abi=lp64d",
++ ":qs8-rsum_riscv64",
++ ":qs8-vadd_arch=rv64gcv-abi=lp64d",
++ ":qs8-vadd_riscv64",
++ ":qs8-vaddc_arch=rv64gcv-abi=lp64d",
++ ":qs8-vaddc_riscv64",
++ ":qs8-vcvt_riscv64",
++ ":qs8-vlrelu_arch=rv64gcv-abi=lp64d",
++ ":qs8-vlrelu_riscv64",
++ ":qs8-vmul_arch=rv64gcv-abi=lp64d",
++ ":qs8-vmul_riscv64",
++ ":qs8-vmulc_arch=rv64gcv-abi=lp64d",
++ ":qs8-vmulc_riscv64",
++ ":qu8-dwconv_arch=rv64gcv-abi=lp64d",
++ ":qu8-dwconv_riscv64",
++ ":qu8-f32-vcvt_arch=rv64gcv-abi=lp64d",
++ ":qu8-f32-vcvt_riscv64",
++ ":qu8-gemm_riscv64",
++ ":qu8-igemm_riscv64",
++ ":qu8-rdsum_arch=rv64gcv-abi=lp64d",
++ ":qu8-rdsum_riscv64",
++ ":qu8-rsum_arch=rv64gcv-abi=lp64d",
++ ":qu8-rsum_riscv64",
++ ":qu8-vadd_arch=rv64gcv-abi=lp64d",
++ ":qu8-vadd_riscv64",
++ ":qu8-vaddc_arch=rv64gcv-abi=lp64d",
++ ":qu8-vaddc_riscv64",
++ ":qu8-vcvt_riscv64",
++ ":qu8-vlrelu_arch=rv64gcv-abi=lp64d",
++ ":qu8-vlrelu_riscv64",
++ ":qu8-vmul_arch=rv64gcv-abi=lp64d",
++ ":qu8-vmul_riscv64",
++ ":qu8-vmulc_arch=rv64gcv-abi=lp64d",
++ ":qu8-vmulc_riscv64",
++ ":reference_riscv64",
++ ":s8-ibilinear_riscv64",
++ ":s8-maxpool_riscv64",
++ ":s8-rdminmax_riscv64",
++ ":s8-rminmax_riscv64",
++ ":s8-vclamp_arch=rv64gcv-abi=lp64d",
++ ":s8-vclamp_riscv64",
++ ":subgraph_riscv64",
++ ":tables_riscv64",
++ ":u8-ibilinear_riscv64",
++ ":u8-lut32norm_riscv64",
++ ":u8-maxpool_riscv64",
++ ":u8-rdminmax_riscv64",
++ ":u8-rminmax_riscv64",
++ ":u8-vclamp_arch=rv64gcv-abi=lp64d",
++ ":u8-vclamp_riscv64",
++ ":x16-transposec_riscv64",
++ ":x16-x32-packw_riscv64",
++ ":x24-transposec_riscv64",
++ ":x32-packw_arch=rv64gcv-abi=lp64d",
++ ":x32-packw_riscv64",
++ ":x32-transposec_arch=rv64gcv-abi=lp64d",
++ ":x32-transposec_riscv64",
++ ":x32-unpool_riscv64",
++ ":x64-transposec_riscv64",
++ ":x8-lut_riscv64",
++ ":x8-packq_riscv64",
++ ":x8-packw_riscv64",
++ ":x8-transposec_riscv64",
++ ":xx-copy_riscv64",
++ ":xx-fill_riscv64",
++ ":xx-pad_riscv64",
++ ":xx-transposev_riscv64",
++ ]
++
++ xnnpack_standalone_deps = [
++ ":configs_riscv64_standalone",
++ ":enums_riscv64_standalone",
++ ":f16-f32-vcvt_riscv64_standalone",
++ ":f16-qs8-vcvt_riscv64_standalone",
++ ":f16-qu8-vcvt_riscv64_standalone",
++ ":f16-rdminmax_riscv64_standalone",
++ ":f16-rminmax_riscv64_standalone",
++ ":f16-vapproxgelu_riscv64_standalone",
++ ":f16-vcos_riscv64_standalone",
++ ":f16-vexp_riscv64_standalone",
++ ":f16-vgelu_riscv64_standalone",
++ ":f16-vsin_riscv64_standalone",
++ ":f32-argmaxpool_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-argmaxpool_riscv64_standalone",
++ ":f32-avgpool_riscv64_standalone",
++ ":f32-conv-hwc2chw_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-conv-hwc2chw_riscv64_standalone",
++ ":f32-dwconv2d-chw_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-dwconv2d-chw_riscv64_standalone",
++ ":f32-dwconv_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-dwconv_riscv64_standalone",
++ ":f32-f16-vcvt_riscv64_standalone",
++ ":f32-gemm_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-gemm_riscv64_standalone",
++ ":f32-ibilinear-chw_riscv64_standalone",
++ ":f32-ibilinear_riscv64_standalone",
++ ":f32-igemm_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-igemm_riscv64_standalone",
++ ":f32-maxpool_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-maxpool_riscv64_standalone",
++ ":f32-qc4w-gemm_riscv64_standalone",
++ ":f32-qc8w-gemm_riscv64_standalone",
++ ":f32-qs8-vcvt_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-qs8-vcvt_riscv64_standalone",
++ ":f32-qu8-vcvt_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-qu8-vcvt_riscv64_standalone",
++ ":f32-raddstoreexpminusmax_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-raddstoreexpminusmax_riscv64_standalone",
++ ":f32-rdminmax_riscv64_standalone",
++ ":f32-rdsum_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-rdsum_riscv64_standalone",
++ ":f32-rminmax_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-rminmax_riscv64_standalone",
++ ":f32-rsum_riscv64_standalone",
++ ":f32-spmm_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-spmm_riscv64_standalone",
++ ":f32-vapproxgelu_riscv64_standalone",
++ ":f32-vbinary_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-vbinary_riscv64_standalone",
++ ":f32-vclamp_riscv64_standalone",
++ ":f32-vcmul_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-vcmul_riscv64_standalone",
++ ":f32-vcopysign_riscv64_standalone",
++ ":f32-vcos_riscv64_standalone",
++ ":f32-velu_riscv64_standalone",
++ ":f32-vexp_riscv64_standalone",
++ ":f32-vgelu_riscv64_standalone",
++ ":f32-vhswish_riscv64_standalone",
++ ":f32-vlog_riscv64_standalone",
++ ":f32-vlrelu_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-vlrelu_riscv64_standalone",
++ ":f32-vmulcaddc_riscv64_standalone",
++ ":f32-vrelu_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-vrelu_riscv64_standalone",
++ ":f32-vrnd_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-vrnd_riscv64_standalone",
++ ":f32-vrsqrt_arch=rv64gcv-abi=lp64d_standalone",
++ ":f32-vrsqrt_riscv64_standalone",
++ ":f32-vsigmoid_riscv64_standalone",
++ ":f32-vsin_riscv64_standalone",
++ ":f32-vsqrt_riscv64_standalone",
++ ":f32-vtanh_riscv64_standalone",
++ ":f32-vunary_riscv64_standalone",
++ ":operators_riscv64_standalone",
++ ":qd8-f32-qb4w-gemm_riscv64_standalone",
++ ":qd8-f32-qc4w-gemm_riscv64_standalone",
++ ":qd8-f32-qc8w-gemm_riscv64_standalone",
++ ":qd8-f32-qc8w-igemm_riscv64_standalone",
++ ":qs8-dwconv_arch=rv64gcv-abi=lp64d_standalone",
++ ":qs8-dwconv_riscv64_standalone",
++ ":qs8-f32-vcvt_arch=rv64gcv-abi=lp64d_standalone",
++ ":qs8-f32-vcvt_riscv64_standalone",
++ ":qs8-packw_riscv64_standalone",
++ ":qs8-qc4w-gemm_riscv64_standalone",
++ ":qs8-qc8w-dwconv_arch=rv64gcv-abi=lp64d_standalone",
++ ":qs8-qc8w-dwconv_riscv64_standalone",
++ ":qs8-qc8w-gemm_arch=rv64gcv-abi=lp64d_standalone",
++ ":qs8-qc8w-gemm_riscv64_standalone",
++ ":qs8-qc8w-igemm_arch=rv64gcv-abi=lp64d_standalone",
++ ":qs8-qc8w-igemm_riscv64_standalone",
++ ":qs8-qu8-packw_riscv64_standalone",
++ ":qs8-rdsum_arch=rv64gcv-abi=lp64d_standalone",
++ ":qs8-rdsum_riscv64_standalone",
++ ":qs8-rsum_arch=rv64gcv-abi=lp64d_standalone",
++ ":qs8-rsum_riscv64_standalone",
++ ":qs8-vadd_arch=rv64gcv-abi=lp64d_standalone",
++ ":qs8-vadd_riscv64_standalone",
++ ":qs8-vaddc_arch=rv64gcv-abi=lp64d_standalone",
++ ":qs8-vaddc_riscv64_standalone",
++ ":qs8-vcvt_riscv64_standalone",
++ ":qs8-vlrelu_arch=rv64gcv-abi=lp64d_standalone",
++ ":qs8-vlrelu_riscv64_standalone",
++ ":qs8-vmul_arch=rv64gcv-abi=lp64d_standalone",
++ ":qs8-vmul_riscv64_standalone",
++ ":qs8-vmulc_arch=rv64gcv-abi=lp64d_standalone",
++ ":qs8-vmulc_riscv64_standalone",
++ ":qu8-dwconv_arch=rv64gcv-abi=lp64d_standalone",
++ ":qu8-dwconv_riscv64_standalone",
++ ":qu8-f32-vcvt_arch=rv64gcv-abi=lp64d_standalone",
++ ":qu8-f32-vcvt_riscv64_standalone",
++ ":qu8-gemm_riscv64_standalone",
++ ":qu8-igemm_riscv64_standalone",
++ ":qu8-rdsum_arch=rv64gcv-abi=lp64d_standalone",
++ ":qu8-rdsum_riscv64_standalone",
++ ":qu8-rsum_arch=rv64gcv-abi=lp64d_standalone",
++ ":qu8-rsum_riscv64_standalone",
++ ":qu8-vadd_arch=rv64gcv-abi=lp64d_standalone",
++ ":qu8-vadd_riscv64_standalone",
++ ":qu8-vaddc_arch=rv64gcv-abi=lp64d_standalone",
++ ":qu8-vaddc_riscv64_standalone",
++ ":qu8-vcvt_riscv64_standalone",
++ ":qu8-vlrelu_arch=rv64gcv-abi=lp64d_standalone",
++ ":qu8-vlrelu_riscv64_standalone",
++ ":qu8-vmul_arch=rv64gcv-abi=lp64d_standalone",
++ ":qu8-vmul_riscv64_standalone",
++ ":qu8-vmulc_arch=rv64gcv-abi=lp64d_standalone",
++ ":qu8-vmulc_riscv64_standalone",
++ ":reference_riscv64_standalone",
++ ":s8-ibilinear_riscv64_standalone",
++ ":s8-maxpool_riscv64_standalone",
++ ":s8-rdminmax_riscv64_standalone",
++ ":s8-rminmax_riscv64_standalone",
++ ":s8-vclamp_arch=rv64gcv-abi=lp64d_standalone",
++ ":s8-vclamp_riscv64_standalone",
++ ":subgraph_riscv64_standalone",
++ ":tables_riscv64_standalone",
++ ":u8-ibilinear_riscv64_standalone",
++ ":u8-lut32norm_riscv64_standalone",
++ ":u8-maxpool_riscv64_standalone",
++ ":u8-rdminmax_riscv64_standalone",
++ ":u8-rminmax_riscv64_standalone",
++ ":u8-vclamp_arch=rv64gcv-abi=lp64d_standalone",
++ ":u8-vclamp_riscv64_standalone",
++ ":x16-transposec_riscv64_standalone",
++ ":x16-x32-packw_riscv64_standalone",
++ ":x24-transposec_riscv64_standalone",
++ ":x32-packw_arch=rv64gcv-abi=lp64d_standalone",
++ ":x32-packw_riscv64_standalone",
++ ":x32-transposec_arch=rv64gcv-abi=lp64d_standalone",
++ ":x32-transposec_riscv64_standalone",
++ ":x32-unpool_riscv64_standalone",
++ ":x64-transposec_riscv64_standalone",
++ ":x8-lut_riscv64_standalone",
++ ":x8-packq_riscv64_standalone",
++ ":x8-packw_riscv64_standalone",
++ ":x8-transposec_riscv64_standalone",
++ ":xx-copy_riscv64_standalone",
++ ":xx-fill_riscv64_standalone",
++ ":xx-pad_riscv64_standalone",
++ ":xx-transposev_riscv64_standalone",
++ ]
+ } else {
+ xnnpack_deps = []
+ xnnpack_standalone_deps = []
+@@ -37024,12 +37350,8456 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-packw_arm64") {
++ source_set("qs8-packw_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-packw/gen/qs8-packw-x16c8-gemm-goi-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-packw_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-packw/gen/qs8-packw-x16c8-gemm-goi-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-qc4w-gemm_arch=armv8.2-a+fp16+dotprod") {
++ cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
++
++ asmflags = cflags
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc4w-gemm/gen/qs8-qc4w-gemm-1x16-minmax-fp32-asm-aarch64-neondot-ld128.S",
++ "src/src/qs8-qc4w-gemm/gen/qs8-qc4w-gemm-5x16-minmax-fp32-asm-aarch64-neondot-ld128.S",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-qc4w-gemm_arch=armv8.2-a+fp16+dotprod_standalone") {
++ cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
++
++ asmflags = cflags
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc4w-gemm/gen/qs8-qc4w-gemm-1x16-minmax-fp32-asm-aarch64-neondot-ld128.S",
++ "src/src/qs8-qc4w-gemm/gen/qs8-qc4w-gemm-5x16-minmax-fp32-asm-aarch64-neondot-ld128.S",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-qc4w-gemm_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc4w-gemm/gen/qs8-qc4w-gemm-1x2-minmax-fp32-scalar-lrintf.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-qc4w-gemm_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc4w-gemm/gen/qs8-qc4w-gemm-1x2-minmax-fp32-scalar-lrintf.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-qc8w-dwconv_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p16c-minmax-fp32-neonv8-mla8-ld64.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p1c-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p8c-minmax-fp32-neon-mla8-ld64.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p8c-minmax-fp32-neonv8-mla8-ld64.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p16c-minmax-fp32-neon-mla8-ld128.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p16c-minmax-fp32-neonv8-mla8-ld128.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p16c-minmax-fp32-neonv8-mla8-ld64.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p2c-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p16c-minmax-fp32-neon-mla8-ld64.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p16c-minmax-fp32-neonv8-mla8-ld64.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p2c-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p2c-minmax-fp32-scalar-lrintf.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-qc8w-dwconv_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p16c-minmax-fp32-neonv8-mla8-ld64.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p1c-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p8c-minmax-fp32-neon-mla8-ld64.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p8c-minmax-fp32-neonv8-mla8-ld64.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p16c-minmax-fp32-neon-mla8-ld128.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p16c-minmax-fp32-neonv8-mla8-ld128.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p16c-minmax-fp32-neonv8-mla8-ld64.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p2c-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p16c-minmax-fp32-neon-mla8-ld64.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p16c-minmax-fp32-neonv8-mla8-ld64.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p2c-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p2c-minmax-fp32-scalar-lrintf.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-qc8w-gemm_arch=armv8.2-a+dotprod") {
++ cflags = [ "-march=armv8.2-a+dotprod" ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16c4-minmax-fp32-neondot.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c4-minmax-fp32-neondot.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-neondot.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x8c4-minmax-fp32-neondot.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-qc8w-gemm_arch=armv8.2-a+dotprod_standalone") {
++ cflags = [ "-march=armv8.2-a+dotprod" ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16c4-minmax-fp32-neondot.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c4-minmax-fp32-neondot.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-neondot.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x8c4-minmax-fp32-neondot.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-qc8w-gemm_arch=armv8.2-a+fp16+dotprod") {
++ cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
++
++ asmflags = cflags
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-cortex-a53.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-ld64.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-asm-aarch64-neondot-cortex-a55.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld128.S",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-qc8w-gemm_arch=armv8.2-a+fp16+dotprod_standalone") {
++ cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
++
++ asmflags = cflags
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-cortex-a53.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-ld64.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-asm-aarch64-neondot-cortex-a55.S",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld128.S",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-qc8w-gemm_arch=armv8.2-a+i8mm+fp16") {
++ cflags = [ "-march=armv8.2-a+i8mm+fp16" ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16c8-minmax-fp32-neoni8mm.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c8-minmax-fp32-neoni8mm.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-qc8w-gemm_arch=armv8.2-a+i8mm+fp16_standalone") {
++ cflags = [ "-march=armv8.2-a+i8mm+fp16" ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16c8-minmax-fp32-neoni8mm.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c8-minmax-fp32-neoni8mm.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-qc8w-gemm_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16-minmax-fp32-neonv8-mlal-lane.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c2s4-minmax-fp32-neon-mlal.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c2s4-minmax-fp32-neonv8-mlal.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c2s4-minmax-fp32-neon-mlal.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c2s4-minmax-fp32-neonv8-mlal.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-3x4-minmax-fp32-scalar-lrintf.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-qc8w-gemm_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16-minmax-fp32-neonv8-mlal-lane.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c2s4-minmax-fp32-neon-mlal.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c2s4-minmax-fp32-neonv8-mlal.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c2s4-minmax-fp32-neon-mlal.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c2s4-minmax-fp32-neonv8-mlal.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-3x4-minmax-fp32-scalar-lrintf.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-qc8w-igemm_arch=armv8.2-a+dotprod") {
++ cflags = [ "-march=armv8.2-a+dotprod" ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x16c4-minmax-fp32-neondot.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c4-minmax-fp32-neondot.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-neondot.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x8c4-minmax-fp32-neondot.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-qc8w-igemm_arch=armv8.2-a+dotprod_standalone") {
++ cflags = [ "-march=armv8.2-a+dotprod" ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x16c4-minmax-fp32-neondot.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c4-minmax-fp32-neondot.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-neondot.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x8c4-minmax-fp32-neondot.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-qc8w-igemm_arch=armv8.2-a+fp16+dotprod") {
++ cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
++
++ asmflags = cflags
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-cortex-a53.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-ld64.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-asm-aarch64-neondot-cortex-a55.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld128.S",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-qc8w-igemm_arch=armv8.2-a+fp16+dotprod_standalone") {
++ cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
++
++ asmflags = cflags
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-cortex-a53.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-ld64.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-asm-aarch64-neondot-cortex-a55.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld128.S",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-qc8w-igemm_arch=armv8.2-a+i8mm+fp16") {
++ cflags = [ "-march=armv8.2-a+i8mm+fp16" ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x16c8-minmax-fp32-neoni8mm.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c8-minmax-fp32-neoni8mm.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-qc8w-igemm_arch=armv8.2-a+i8mm+fp16_standalone") {
++ cflags = [ "-march=armv8.2-a+i8mm+fp16" ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x16c8-minmax-fp32-neoni8mm.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c8-minmax-fp32-neoni8mm.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-qc8w-igemm_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x16-minmax-fp32-neonv8-mlal-lane.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c2s4-minmax-fp32-neon-mlal.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c2s4-minmax-fp32-neonv8-mlal.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c2s4-minmax-fp32-neon-mlal.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c2s4-minmax-fp32-neonv8-mlal.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-3x4-minmax-fp32-scalar-lrintf.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-qc8w-igemm_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x16-minmax-fp32-neonv8-mlal-lane.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c2s4-minmax-fp32-neon-mlal.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c2s4-minmax-fp32-neonv8-mlal.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c2s4-minmax-fp32-neon-mlal.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c2s4-minmax-fp32-neonv8-mlal.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-3x4-minmax-fp32-scalar-lrintf.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-qu8-packw_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qu8-packw/gen/qs8-qu8-packw-x16c8-gemm-goi-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-qu8-packw_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qu8-packw/gen/qs8-qu8-packw-x16c8-gemm-goi-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-rdsum_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-rdsum/gen/qs8-rdsum-7p7x-minmax-fp32-neon-c32.c",
++ "src/src/qs8-rdsum/gen/qs8-rdsum-minmax-fp32-scalar-u1-acc1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-rdsum_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-rdsum/gen/qs8-rdsum-7p7x-minmax-fp32-neon-c32.c",
++ "src/src/qs8-rdsum/gen/qs8-rdsum-minmax-fp32-scalar-u1-acc1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-rsum_arch=armv8.2-a+dotprod") {
++ cflags = [ "-march=armv8.2-a+dotprod" ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-rsum/gen/qs8-rsum-neondot-u32-acc2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-rsum_arch=armv8.2-a+dotprod_standalone") {
++ cflags = [ "-march=armv8.2-a+dotprod" ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-rsum/gen/qs8-rsum-neondot-u32-acc2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-rsum_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-rsum/gen/qs8-rsum-neon-u32-acc2.c",
++ "src/src/qs8-rsum/gen/qs8-rsum-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-rsum_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-rsum/gen/qs8-rsum-neon-u32-acc2.c",
++ "src/src/qs8-rsum/gen/qs8-rsum-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-vadd_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-vadd/gen/qs8-vadd-minmax-neon-ld64-u16.c",
++ "src/src/qs8-vadd/gen/qs8-vadd-minmax-neon-ld64-u32.c",
++ "src/src/qs8-vadd/gen/qs8-vadd-minmax-scalar-u1.c",
++ "src/src/qs8-vadd/gen/qs8-vadd-minmax-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-vadd_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-vadd/gen/qs8-vadd-minmax-neon-ld64-u16.c",
++ "src/src/qs8-vadd/gen/qs8-vadd-minmax-neon-ld64-u32.c",
++ "src/src/qs8-vadd/gen/qs8-vadd-minmax-scalar-u1.c",
++ "src/src/qs8-vadd/gen/qs8-vadd-minmax-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-vaddc_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-neon-ld64-u16.c",
++ "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-neon-ld64-u32.c",
++ "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-scalar-u1.c",
++ "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-vaddc_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-neon-ld64-u16.c",
++ "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-neon-ld64-u32.c",
++ "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-scalar-u1.c",
++ "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-vcvt_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-vcvt/gen/qs8-vcvt-neon-u32.c",
++ "src/src/qs8-vcvt/gen/qs8-vcvt-scalar-u1.c",
++ "src/src/qs8-vcvt/gen/qs8-vcvt-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-vcvt_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-vcvt/gen/qs8-vcvt-neon-u32.c",
++ "src/src/qs8-vcvt/gen/qs8-vcvt-scalar-u1.c",
++ "src/src/qs8-vcvt/gen/qs8-vcvt-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-vlrelu_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-vlrelu/gen/qs8-vlrelu-neon-u32.c",
++ "src/src/qs8-vlrelu/gen/qs8-vlrelu-scalar-andxor-u4.c",
++ "src/src/qs8-vlrelu/gen/qs8-vlrelu-scalar-select-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-vlrelu_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-vlrelu/gen/qs8-vlrelu-neon-u32.c",
++ "src/src/qs8-vlrelu/gen/qs8-vlrelu-scalar-andxor-u4.c",
++ "src/src/qs8-vlrelu/gen/qs8-vlrelu-scalar-select-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-vmul_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-vmul/gen/qs8-vmul-minmax-fp32-scalar-u4.c",
++ "src/src/qs8-vmul/gen/qs8-vmul-minmax-rndnu-neon-ld64-u16.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-vmul_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-vmul/gen/qs8-vmul-minmax-fp32-scalar-u4.c",
++ "src/src/qs8-vmul/gen/qs8-vmul-minmax-rndnu-neon-ld64-u16.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-vmulc_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-vmulc/gen/qs8-vmulc-minmax-fp32-scalar-u4.c",
++ "src/src/qs8-vmulc/gen/qs8-vmulc-minmax-rndnu-neon-ld64-u16.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-vmulc_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-vmulc/gen/qs8-vmulc-minmax-fp32-scalar-u4.c",
++ "src/src/qs8-vmulc/gen/qs8-vmulc-minmax-rndnu-neon-ld64-u16.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-dwconv_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-25p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-25p1c-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-25p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-25p8c-minmax-rndnu-neon-mul8.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-9p16c-minmax-rndnu-neon-mul8.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-9p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-9p2c-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-9p2c-minmax-fp32-scalar-lrintf.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-dwconv_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-25p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-25p1c-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-25p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-25p8c-minmax-rndnu-neon-mul8.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-9p16c-minmax-rndnu-neon-mul8.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-9p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-9p2c-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-9p2c-minmax-fp32-scalar-lrintf.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-f32-vcvt_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-neon-u32.c",
++ "src/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-scalar-u1.c",
++ "src/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-f32-vcvt_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-neon-u32.c",
++ "src/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-scalar-u1.c",
++ "src/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-gemm_arch=armv8.2-a+fp16+dotprod") {
++ cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
++
++ asmflags = cflags
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
++ "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75-prfm.S",
++ "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75.S",
++ "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu16-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-gemm_arch=armv8.2-a+fp16+dotprod_standalone") {
++ cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
++
++ asmflags = cflags
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
++ "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75-prfm.S",
++ "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75.S",
++ "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu16-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-gemm_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-gemm/gen/qu8-gemm-1x16-minmax-rndnu-neon-mlal-lane.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-1x16-minmax-rndnu16-neon-mlal-lane.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-1x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-1x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-1x8-minmax-rndnu-neon-mlal-lane.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-2x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-3x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-3x8-minmax-rndnu-neon-mlal-lane.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-neon-mlal-lane.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-gemm_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-gemm/gen/qu8-gemm-1x16-minmax-rndnu-neon-mlal-lane.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-1x16-minmax-rndnu16-neon-mlal-lane.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-1x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-1x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-1x8-minmax-rndnu-neon-mlal-lane.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-2x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-3x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-3x8-minmax-rndnu-neon-mlal-lane.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-neon-mlal-lane.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-igemm_arch=armv8.2-a+fp16+dotprod") {
++ cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
++
++ asmflags = cflags
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
++ "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75-prfm.S",
++ "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75.S",
++ "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu16-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-igemm_arch=armv8.2-a+fp16+dotprod_standalone") {
++ cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
++
++ asmflags = cflags
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
++ "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75-prfm.S",
++ "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75.S",
++ "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu16-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-igemm_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-igemm/gen/qu8-igemm-1x16-minmax-rndnu-neon-mlal-lane.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-1x16-minmax-rndnu16-neon-mlal-lane.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-1x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-1x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-1x8-minmax-rndnu-neon-mlal-lane.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-2x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-3x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-3x8-minmax-rndnu-neon-mlal-lane.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-neon-mlal-lane.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-igemm_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-igemm/gen/qu8-igemm-1x16-minmax-rndnu-neon-mlal-lane.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-1x16-minmax-rndnu16-neon-mlal-lane.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-1x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-1x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-1x8-minmax-rndnu-neon-mlal-lane.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-2x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-3x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-3x8-minmax-rndnu-neon-mlal-lane.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-neon-mlal-lane.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-rdsum_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-rdsum/gen/qu8-rdsum-7p7x-neon-u16.c",
++ "src/src/qu8-rdsum/gen/qu8-rdsum-7p7x-neon-u32.c",
++ "src/src/qu8-rdsum/gen/qu8-rdsum-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-rdsum_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-rdsum/gen/qu8-rdsum-7p7x-neon-u16.c",
++ "src/src/qu8-rdsum/gen/qu8-rdsum-7p7x-neon-u32.c",
++ "src/src/qu8-rdsum/gen/qu8-rdsum-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-rsum_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-rsum/gen/qu8-rsum-neon-u32-acc2.c",
++ "src/src/qu8-rsum/gen/qu8-rsum-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-rsum_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-rsum/gen/qu8-rsum-neon-u32-acc2.c",
++ "src/src/qu8-rsum/gen/qu8-rsum-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-vadd_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vadd/gen/qu8-vadd-minmax-neon-ld64-u16.c",
++ "src/src/qu8-vadd/gen/qu8-vadd-minmax-neon-ld64-u32.c",
++ "src/src/qu8-vadd/gen/qu8-vadd-minmax-scalar-u1.c",
++ "src/src/qu8-vadd/gen/qu8-vadd-minmax-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-vadd_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vadd/gen/qu8-vadd-minmax-neon-ld64-u16.c",
++ "src/src/qu8-vadd/gen/qu8-vadd-minmax-neon-ld64-u32.c",
++ "src/src/qu8-vadd/gen/qu8-vadd-minmax-scalar-u1.c",
++ "src/src/qu8-vadd/gen/qu8-vadd-minmax-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-vaddc_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-neon-ld64-u16.c",
++ "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-neon-ld64-u32.c",
++ "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-scalar-u1.c",
++ "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-vaddc_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-neon-ld64-u16.c",
++ "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-neon-ld64-u32.c",
++ "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-scalar-u1.c",
++ "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-vcvt_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vcvt/gen/qu8-vcvt-neon-u32.c",
++ "src/src/qu8-vcvt/gen/qu8-vcvt-scalar-u1.c",
++ "src/src/qu8-vcvt/gen/qu8-vcvt-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-vcvt_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vcvt/gen/qu8-vcvt-neon-u32.c",
++ "src/src/qu8-vcvt/gen/qu8-vcvt-scalar-u1.c",
++ "src/src/qu8-vcvt/gen/qu8-vcvt-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-vlrelu_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vlrelu/gen/qu8-vlrelu-neon-u32.c",
++ "src/src/qu8-vlrelu/gen/qu8-vlrelu-scalar-andxor-u4.c",
++ "src/src/qu8-vlrelu/gen/qu8-vlrelu-scalar-select-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-vlrelu_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vlrelu/gen/qu8-vlrelu-neon-u32.c",
++ "src/src/qu8-vlrelu/gen/qu8-vlrelu-scalar-andxor-u4.c",
++ "src/src/qu8-vlrelu/gen/qu8-vlrelu-scalar-select-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-vmul_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vmul/gen/qu8-vmul-minmax-fp32-scalar-u4.c",
++ "src/src/qu8-vmul/gen/qu8-vmul-minmax-rndnu-neon-ld64-u16.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-vmul_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vmul/gen/qu8-vmul-minmax-fp32-scalar-u4.c",
++ "src/src/qu8-vmul/gen/qu8-vmul-minmax-rndnu-neon-ld64-u16.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-vmulc_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vmulc/gen/qu8-vmulc-minmax-fp32-scalar-u4.c",
++ "src/src/qu8-vmulc/gen/qu8-vmulc-minmax-rndnu-neon-ld64-u16.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-vmulc_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vmulc/gen/qu8-vmulc-minmax-fp32-scalar-u4.c",
++ "src/src/qu8-vmulc/gen/qu8-vmulc-minmax-rndnu-neon-ld64-u16.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("reference_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/reference/binary-elementwise.cc",
++ "src/src/reference/packing.cc",
++ "src/src/reference/unary-elementwise.cc",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("reference_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/reference/binary-elementwise.cc",
++ "src/src/reference/packing.cc",
++ "src/src/reference/unary-elementwise.cc",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("s8-ibilinear_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/s8-ibilinear/gen/s8-ibilinear-neon-c16.c",
++ "src/src/s8-ibilinear/gen/s8-ibilinear-neon-c8.c",
++ "src/src/s8-ibilinear/gen/s8-ibilinear-scalar-c1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("s8-ibilinear_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/s8-ibilinear/gen/s8-ibilinear-neon-c16.c",
++ "src/src/s8-ibilinear/gen/s8-ibilinear-neon-c8.c",
++ "src/src/s8-ibilinear/gen/s8-ibilinear-scalar-c1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("s8-maxpool_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/s8-maxpool/gen/s8-maxpool-9p-minmax-neon-u16.c",
++ "src/src/s8-maxpool/gen/s8-maxpool-9p-minmax-scalar-u1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("s8-maxpool_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/s8-maxpool/gen/s8-maxpool-9p-minmax-neon-u16.c",
++ "src/src/s8-maxpool/gen/s8-maxpool-9p-minmax-scalar-u1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("s8-rdminmax_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/s8-rdminmax/gen/s8-rdmax-2p2x-neon-c32.c",
++ "src/src/s8-rdminmax/gen/s8-rdmax-2p2x-scalar-c2.c",
++ "src/src/s8-rdminmax/gen/s8-rdmin-2p2x-neon-c32.c",
++ "src/src/s8-rdminmax/gen/s8-rdmin-2p2x-scalar-c2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("s8-rdminmax_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/s8-rdminmax/gen/s8-rdmax-2p2x-neon-c32.c",
++ "src/src/s8-rdminmax/gen/s8-rdmax-2p2x-scalar-c2.c",
++ "src/src/s8-rdminmax/gen/s8-rdmin-2p2x-neon-c32.c",
++ "src/src/s8-rdminmax/gen/s8-rdmin-2p2x-scalar-c2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("s8-rminmax_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/s8-rminmax/gen/s8-rmax-neon-u32-acc2.c",
++ "src/src/s8-rminmax/gen/s8-rmax-scalar-u2-acc2.c",
++ "src/src/s8-rminmax/gen/s8-rmin-neon-u32-acc2.c",
++ "src/src/s8-rminmax/gen/s8-rmin-scalar-u2-acc2.c",
++ "src/src/s8-rminmax/gen/s8-rminmax-neon-u32-acc2.c",
++ "src/src/s8-rminmax/gen/s8-rminmax-scalar-u2-acc2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("s8-rminmax_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/s8-rminmax/gen/s8-rmax-neon-u32-acc2.c",
++ "src/src/s8-rminmax/gen/s8-rmax-scalar-u2-acc2.c",
++ "src/src/s8-rminmax/gen/s8-rmin-neon-u32-acc2.c",
++ "src/src/s8-rminmax/gen/s8-rmin-scalar-u2-acc2.c",
++ "src/src/s8-rminmax/gen/s8-rminmax-neon-u32-acc2.c",
++ "src/src/s8-rminmax/gen/s8-rminmax-scalar-u2-acc2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("s8-vclamp_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/s8-vclamp/s8-vclamp-neon-u64.c",
++ "src/src/s8-vclamp/s8-vclamp-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("s8-vclamp_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/s8-vclamp/s8-vclamp-neon-u64.c",
++ "src/src/s8-vclamp/s8-vclamp-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("subgraph_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/subgraph/argmax-pooling-2d.c",
++ "src/src/subgraph/average-pooling-2d.c",
++ "src/src/subgraph/batch-matrix-multiply.c",
++ "src/src/subgraph/binary.c",
++ "src/src/subgraph/concatenate.c",
++ "src/src/subgraph/convolution-2d.c",
++ "src/src/subgraph/copy.c",
++ "src/src/subgraph/deconvolution-2d.c",
++ "src/src/subgraph/deprecated.c",
++ "src/src/subgraph/depth-to-space-2d.c",
++ "src/src/subgraph/depthwise-convolution-2d.c",
++ "src/src/subgraph/even-split.c",
++ "src/src/subgraph/fully-connected-sparse.c",
++ "src/src/subgraph/fully-connected.c",
++ "src/src/subgraph/max-pooling-2d.c",
++ "src/src/subgraph/pack-lh.c",
++ "src/src/subgraph/reshape-helpers.c",
++ "src/src/subgraph/rope.c",
++ "src/src/subgraph/softmax.c",
++ "src/src/subgraph/space-to-depth-2d.c",
++ "src/src/subgraph/static-constant-pad.c",
++ "src/src/subgraph/static-reduce.c",
++ "src/src/subgraph/static-resize-bilinear-2d.c",
++ "src/src/subgraph/static-slice.c",
++ "src/src/subgraph/static-transpose.c",
++ "src/src/subgraph/unary.c",
++ "src/src/subgraph/unpooling-2d.c",
++ "src/src/subgraph/validation.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("subgraph_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/subgraph/argmax-pooling-2d.c",
++ "src/src/subgraph/average-pooling-2d.c",
++ "src/src/subgraph/batch-matrix-multiply.c",
++ "src/src/subgraph/binary.c",
++ "src/src/subgraph/concatenate.c",
++ "src/src/subgraph/convolution-2d.c",
++ "src/src/subgraph/copy.c",
++ "src/src/subgraph/deconvolution-2d.c",
++ "src/src/subgraph/deprecated.c",
++ "src/src/subgraph/depth-to-space-2d.c",
++ "src/src/subgraph/depthwise-convolution-2d.c",
++ "src/src/subgraph/even-split.c",
++ "src/src/subgraph/fully-connected-sparse.c",
++ "src/src/subgraph/fully-connected.c",
++ "src/src/subgraph/max-pooling-2d.c",
++ "src/src/subgraph/pack-lh.c",
++ "src/src/subgraph/reshape-helpers.c",
++ "src/src/subgraph/rope.c",
++ "src/src/subgraph/softmax.c",
++ "src/src/subgraph/space-to-depth-2d.c",
++ "src/src/subgraph/static-constant-pad.c",
++ "src/src/subgraph/static-reduce.c",
++ "src/src/subgraph/static-resize-bilinear-2d.c",
++ "src/src/subgraph/static-slice.c",
++ "src/src/subgraph/static-transpose.c",
++ "src/src/subgraph/unary.c",
++ "src/src/subgraph/unpooling-2d.c",
++ "src/src/subgraph/validation.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("tables_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/tables/exp2-k-over-2048.c",
++ "src/src/tables/exp2-k-over-64.c",
++ "src/src/tables/exp2minus-k-over-16.c",
++ "src/src/tables/exp2minus-k-over-2048.c",
++ "src/src/tables/exp2minus-k-over-32.c",
++ "src/src/tables/exp2minus-k-over-4.c",
++ "src/src/tables/exp2minus-k-over-64.c",
++ "src/src/tables/exp2minus-k-over-8.c",
++ "src/src/tables/vlog.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("tables_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/tables/exp2-k-over-2048.c",
++ "src/src/tables/exp2-k-over-64.c",
++ "src/src/tables/exp2minus-k-over-16.c",
++ "src/src/tables/exp2minus-k-over-2048.c",
++ "src/src/tables/exp2minus-k-over-32.c",
++ "src/src/tables/exp2minus-k-over-4.c",
++ "src/src/tables/exp2minus-k-over-64.c",
++ "src/src/tables/exp2minus-k-over-8.c",
++ "src/src/tables/vlog.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("u8-ibilinear_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/u8-ibilinear/gen/u8-ibilinear-neon-c16.c",
++ "src/src/u8-ibilinear/gen/u8-ibilinear-neon-c8.c",
++ "src/src/u8-ibilinear/gen/u8-ibilinear-scalar-c1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("u8-ibilinear_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/u8-ibilinear/gen/u8-ibilinear-neon-c16.c",
++ "src/src/u8-ibilinear/gen/u8-ibilinear-neon-c8.c",
++ "src/src/u8-ibilinear/gen/u8-ibilinear-scalar-c1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("u8-lut32norm_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/u8-lut32norm/u8-lut32norm-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("u8-lut32norm_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/u8-lut32norm/u8-lut32norm-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("u8-maxpool_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/u8-maxpool/gen/u8-maxpool-9p-minmax-neon-u16.c",
++ "src/src/u8-maxpool/gen/u8-maxpool-9p-minmax-scalar-u1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("u8-maxpool_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/u8-maxpool/gen/u8-maxpool-9p-minmax-neon-u16.c",
++ "src/src/u8-maxpool/gen/u8-maxpool-9p-minmax-scalar-u1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("u8-rdminmax_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/u8-rdminmax/gen/u8-rdmax-2p2x-neon-c32.c",
++ "src/src/u8-rdminmax/gen/u8-rdmax-2p2x-scalar-c2.c",
++ "src/src/u8-rdminmax/gen/u8-rdmin-2p2x-neon-c32.c",
++ "src/src/u8-rdminmax/gen/u8-rdmin-2p2x-scalar-c2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("u8-rdminmax_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/u8-rdminmax/gen/u8-rdmax-2p2x-neon-c32.c",
++ "src/src/u8-rdminmax/gen/u8-rdmax-2p2x-scalar-c2.c",
++ "src/src/u8-rdminmax/gen/u8-rdmin-2p2x-neon-c32.c",
++ "src/src/u8-rdminmax/gen/u8-rdmin-2p2x-scalar-c2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("u8-rminmax_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/u8-rminmax/gen/u8-rmax-neon-u32-acc2.c",
++ "src/src/u8-rminmax/gen/u8-rmax-scalar-u2-acc2.c",
++ "src/src/u8-rminmax/gen/u8-rmin-neon-u32-acc2.c",
++ "src/src/u8-rminmax/gen/u8-rmin-scalar-u2-acc2.c",
++ "src/src/u8-rminmax/gen/u8-rminmax-neon-u32-acc2.c",
++ "src/src/u8-rminmax/gen/u8-rminmax-scalar-u2-acc2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("u8-rminmax_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/u8-rminmax/gen/u8-rmax-neon-u32-acc2.c",
++ "src/src/u8-rminmax/gen/u8-rmax-scalar-u2-acc2.c",
++ "src/src/u8-rminmax/gen/u8-rmin-neon-u32-acc2.c",
++ "src/src/u8-rminmax/gen/u8-rmin-scalar-u2-acc2.c",
++ "src/src/u8-rminmax/gen/u8-rminmax-neon-u32-acc2.c",
++ "src/src/u8-rminmax/gen/u8-rminmax-scalar-u2-acc2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("u8-vclamp_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/u8-vclamp/u8-vclamp-neon-u64.c",
++ "src/src/u8-vclamp/u8-vclamp-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("u8-vclamp_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/u8-vclamp/u8-vclamp-neon-u64.c",
++ "src/src/u8-vclamp/u8-vclamp-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("x16-packw_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x16-packw/gen/x16-packw-x16-gemm-goi-neon-ld4lane-u8-prfm.c",
++ "src/src/x16-packw/gen/x16-packw-x8-gemm-goi-neon-ld4lane-u8-prfm.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("x16-packw_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x16-packw/gen/x16-packw-x16-gemm-goi-neon-ld4lane-u8-prfm.c",
++ "src/src/x16-packw/gen/x16-packw-x8-gemm-goi-neon-ld4lane-u8-prfm.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("x16-transposec_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x16-transposec/gen/x16-transposec-2x4-scalar-int.c",
++ "src/src/x16-transposec/gen/x16-transposec-8x8-reuse-dec-zip-neon.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("x16-transposec_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x16-transposec/gen/x16-transposec-2x4-scalar-int.c",
++ "src/src/x16-transposec/gen/x16-transposec-8x8-reuse-dec-zip-neon.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("x16-x32-packw_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x16-x32-packw/gen/x16-x32-packw-x32c2-gemm-gio-scalar.c",
++ "src/src/x16-x32-packw/gen/x16-x32-packw-x32c2-gemm-goi-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("x16-x32-packw_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x16-x32-packw/gen/x16-x32-packw-x32c2-gemm-gio-scalar.c",
++ "src/src/x16-x32-packw/gen/x16-x32-packw-x32c2-gemm-goi-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("x24-transposec_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x24-transposec/gen/x24-transposec-1x2-scalar.c",
++ "src/src/x24-transposec/x24-transposec-2x2-neon-tbl64.c",
++ "src/src/x24-transposec/x24-transposec-4x4-aarch64-neon-tbl128.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("x24-transposec_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x24-transposec/gen/x24-transposec-1x2-scalar.c",
++ "src/src/x24-transposec/x24-transposec-2x2-neon-tbl64.c",
++ "src/src/x24-transposec/x24-transposec-4x4-aarch64-neon-tbl128.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("x32-packw_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x32-packw/gen/x32-packw-x2-gemm-gio-scalar.c",
++ "src/src/x32-packw/gen/x32-packw-x2-gemm-goi-neon-ld2lane-u2-prfm.c",
++ "src/src/x32-packw/gen/x32-packw-x2-gemm-goi-scalar-float-u4.c",
++ "src/src/x32-packw/gen/x32-packw-x32-gemm-goi-scalar-int-u2.c",
++ "src/src/x32-packw/gen/x32-packw-x4-gemm-gio-scalar.c",
++ "src/src/x32-packw/gen/x32-packw-x4-gemm-goi-scalar-float-u4.c",
++ "src/src/x32-packw/gen/x32-packw-x64-gemm-goi-scalar-int-u2.c",
++ "src/src/x32-packw/gen/x32-packw-x8-gemm-goi-neon-ld4lane-u4-prfm.c",
++ "src/src/x32-packw/gen/x32-packw-x8s4-gemm-goi-neon-ld4lane-u4-prfm.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("x32-packw_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x32-packw/gen/x32-packw-x2-gemm-gio-scalar.c",
++ "src/src/x32-packw/gen/x32-packw-x2-gemm-goi-neon-ld2lane-u2-prfm.c",
++ "src/src/x32-packw/gen/x32-packw-x2-gemm-goi-scalar-float-u4.c",
++ "src/src/x32-packw/gen/x32-packw-x32-gemm-goi-scalar-int-u2.c",
++ "src/src/x32-packw/gen/x32-packw-x4-gemm-gio-scalar.c",
++ "src/src/x32-packw/gen/x32-packw-x4-gemm-goi-scalar-float-u4.c",
++ "src/src/x32-packw/gen/x32-packw-x64-gemm-goi-scalar-int-u2.c",
++ "src/src/x32-packw/gen/x32-packw-x8-gemm-goi-neon-ld4lane-u4-prfm.c",
++ "src/src/x32-packw/gen/x32-packw-x8s4-gemm-goi-neon-ld4lane-u4-prfm.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("x32-transposec_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x32-transposec/gen/x32-transposec-2x4-scalar-int.c",
++ "src/src/x32-transposec/gen/x32-transposec-4x4-reuse-dec-zip-neon.c",
++ "src/src/x32-transposec/x32-transposec-4x4-aarch64-neon-tbl128.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("x32-transposec_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x32-transposec/gen/x32-transposec-2x4-scalar-int.c",
++ "src/src/x32-transposec/gen/x32-transposec-4x4-reuse-dec-zip-neon.c",
++ "src/src/x32-transposec/x32-transposec-4x4-aarch64-neon-tbl128.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("x32-unpool_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x32-unpool/x32-unpool-neon.c",
++ "src/src/x32-unpool/x32-unpool-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("x32-unpool_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x32-unpool/x32-unpool-neon.c",
++ "src/src/x32-unpool/x32-unpool-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("x64-transposec_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x64-transposec/gen/x64-transposec-2x2-multi-dec-zip-neon.c",
++ "src/src/x64-transposec/gen/x64-transposec-2x2-reuse-dec-zip-neon.c",
++ "src/src/x64-transposec/gen/x64-transposec-4x2-scalar-int.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("x64-transposec_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x64-transposec/gen/x64-transposec-2x2-multi-dec-zip-neon.c",
++ "src/src/x64-transposec/gen/x64-transposec-2x2-reuse-dec-zip-neon.c",
++ "src/src/x64-transposec/gen/x64-transposec-4x2-scalar-int.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("x8-lut_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x8-lut/gen/x8-lut-aarch64-neon-tbx128x4-u64.c",
++ "src/src/x8-lut/gen/x8-lut-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("x8-lut_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x8-lut/gen/x8-lut-aarch64-neon-tbx128x4-u64.c",
++ "src/src/x8-lut/gen/x8-lut-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("x8-packq_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x8-packq/x8-packq-aarch64-neon-f32qp8-u2.c",
++ "src/src/x8-packq/x8-packq-scalar-f32qp8-u1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("x8-packq_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x8-packq/x8-packq-aarch64-neon-f32qp8-u2.c",
++ "src/src/x8-packq/x8-packq-scalar-f32qp8-u1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("x8-packw_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x8-packw/gen/x8-packw-x16-gemm-goi-scalar-u2.c",
++ "src/src/x8-packw/gen/x8-packw-x32-gemm-goi-scalar-u2.c",
++ "src/src/x8-packw/gen/x8-packw-x4-gemm-goi-scalar-u2.c",
++ "src/src/x8-packw/gen/x8-packw-x8-gemm-goi-scalar-u2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("x8-packw_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x8-packw/gen/x8-packw-x16-gemm-goi-scalar-u2.c",
++ "src/src/x8-packw/gen/x8-packw-x32-gemm-goi-scalar-u2.c",
++ "src/src/x8-packw/gen/x8-packw-x4-gemm-goi-scalar-u2.c",
++ "src/src/x8-packw/gen/x8-packw-x8-gemm-goi-scalar-u2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("x8-transposec_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x8-transposec/gen/x8-transposec-16x16-reuse-dec-zip-neon.c",
++ "src/src/x8-transposec/gen/x8-transposec-2x4-scalar-int.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("x8-transposec_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x8-transposec/gen/x8-transposec-16x16-reuse-dec-zip-neon.c",
++ "src/src/x8-transposec/gen/x8-transposec-2x4-scalar-int.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("xx-copy_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/xx-copy/xx-copy-scalar-memcpy.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("xx-copy_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/xx-copy/xx-copy-scalar-memcpy.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("xx-fill_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/xx-fill/xx-fill-neon-u64.c",
++ "src/src/xx-fill/xx-fill-scalar-u16.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("xx-fill_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/xx-fill/xx-fill-neon-u64.c",
++ "src/src/xx-fill/xx-fill-scalar-u16.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("xx-pad_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/xx-pad/xx-pad-p16-neon-u16.c",
++ "src/src/xx-pad/xx-pad-p4-scalar-u16.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("xx-pad_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/xx-pad/xx-pad-p16-neon-u16.c",
++ "src/src/xx-pad/xx-pad-p4-scalar-u16.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("xx-transposev_arm64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/xx-transposev/xx-transposev-1x1-scalar-memcpy.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("xx-transposev_arm64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/xx-transposev/xx-transposev-1x1-scalar-memcpy.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++}
++
++if (current_cpu == "riscv64") {
++ source_set("configs_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/configs/argmaxpool-config.c",
++ "src/src/configs/avgpool-config.c",
++ "src/src/configs/binary-elementwise-config.c",
++ "src/src/configs/cmul-config.c",
++ "src/src/configs/conv-hwc2chw-config.c",
++ "src/src/configs/dwconv-config.c",
++ "src/src/configs/dwconv2d-chw-config.c",
++ "src/src/configs/gemm-config.c",
++ "src/src/configs/hardware-config.c",
++ "src/src/configs/ibilinear-chw-config.c",
++ "src/src/configs/ibilinear-config.c",
++ "src/src/configs/lut32norm-config.c",
++ "src/src/configs/maxpool-config.c",
++ "src/src/configs/pack-lh-config.c",
++ "src/src/configs/raddstoreexpminusmax-config.c",
++ "src/src/configs/reduce-config.c",
++ "src/src/configs/spmm-config.c",
++ "src/src/configs/transpose-config.c",
++ "src/src/configs/unary-elementwise-config.c",
++ "src/src/configs/unpool-config.c",
++ "src/src/configs/vmulcaddc-config.c",
++ "src/src/configs/x8-lut-config.c",
++ "src/src/configs/xx-fill-config.c",
++ "src/src/configs/xx-pad-config.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("configs_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/configs/argmaxpool-config.c",
++ "src/src/configs/avgpool-config.c",
++ "src/src/configs/binary-elementwise-config.c",
++ "src/src/configs/cmul-config.c",
++ "src/src/configs/conv-hwc2chw-config.c",
++ "src/src/configs/dwconv-config.c",
++ "src/src/configs/dwconv2d-chw-config.c",
++ "src/src/configs/gemm-config.c",
++ "src/src/configs/hardware-config.c",
++ "src/src/configs/ibilinear-chw-config.c",
++ "src/src/configs/ibilinear-config.c",
++ "src/src/configs/lut32norm-config.c",
++ "src/src/configs/maxpool-config.c",
++ "src/src/configs/pack-lh-config.c",
++ "src/src/configs/raddstoreexpminusmax-config.c",
++ "src/src/configs/reduce-config.c",
++ "src/src/configs/spmm-config.c",
++ "src/src/configs/transpose-config.c",
++ "src/src/configs/unary-elementwise-config.c",
++ "src/src/configs/unpool-config.c",
++ "src/src/configs/vmulcaddc-config.c",
++ "src/src/configs/x8-lut-config.c",
++ "src/src/configs/xx-fill-config.c",
++ "src/src/configs/xx-pad-config.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("enums_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/enums/allocation-type.c",
++ "src/src/enums/datatype-strings.c",
++ "src/src/enums/microkernel-type.c",
++ "src/src/enums/node-type.c",
++ "src/src/enums/operator-type.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("enums_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/enums/allocation-type.c",
++ "src/src/enums/datatype-strings.c",
++ "src/src/enums/microkernel-type.c",
++ "src/src/enums/node-type.c",
++ "src/src/enums/operator-type.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f16-f32-vcvt_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-f32-vcvt/gen/f16-f32-vcvt-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f16-f32-vcvt_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-f32-vcvt/gen/f16-f32-vcvt-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f16-qs8-vcvt_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-qs8-vcvt/gen/f16-qs8-vcvt-scalar-imagic-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f16-qs8-vcvt_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-qs8-vcvt/gen/f16-qs8-vcvt-scalar-imagic-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f16-qu8-vcvt_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-qu8-vcvt/gen/f16-qu8-vcvt-scalar-imagic-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f16-qu8-vcvt_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-qu8-vcvt/gen/f16-qu8-vcvt-scalar-imagic-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f16-rdminmax_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-rdminmax/gen/f16-rdmax-2p2x-scalar-c2.c",
++ "src/src/f16-rdminmax/gen/f16-rdmin-2p2x-scalar-c2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f16-rdminmax_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-rdminmax/gen/f16-rdmax-2p2x-scalar-c2.c",
++ "src/src/f16-rdminmax/gen/f16-rdmin-2p2x-scalar-c2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f16-rminmax_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-rminmax/gen/f16-rmax-scalar-u2-acc2.c",
++ "src/src/f16-rminmax/gen/f16-rmin-scalar-u2-acc2.c",
++ "src/src/f16-rminmax/gen/f16-rminmax-scalar-u2-acc2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f16-rminmax_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-rminmax/gen/f16-rmax-scalar-u2-acc2.c",
++ "src/src/f16-rminmax/gen/f16-rmin-scalar-u2-acc2.c",
++ "src/src/f16-rminmax/gen/f16-rminmax-scalar-u2-acc2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f16-vapproxgelu_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-vapproxgelu/gen/f16-vapproxgelu-scalar-rational-6-4-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f16-vapproxgelu_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-vapproxgelu/gen/f16-vapproxgelu-scalar-rational-6-4-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f16-vcos_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-vcos/gen/f16-vcos-scalar-rational-3-2-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f16-vcos_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-vcos/gen/f16-vcos-scalar-rational-3-2-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f16-vexp_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-vexp/gen/f16-vexp-scalar-poly-3.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f16-vexp_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-vexp/gen/f16-vexp-scalar-poly-3.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f16-vgelu_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-vgelu/gen/f16-vgelu-scalar-rational-6-4-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f16-vgelu_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-vgelu/gen/f16-vgelu-scalar-rational-6-4-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f16-vsin_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-vsin/gen/f16-vsin-scalar-rational-3-2-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f16-vsin_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f16-vsin/gen/f16-vsin-scalar-rational-3-2-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-argmaxpool_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-argmaxpool/f32-argmaxpool-9p8x-rvv-u1v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-argmaxpool_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-argmaxpool/f32-argmaxpool-9p8x-rvv-u1v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-argmaxpool_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-argmaxpool/f32-argmaxpool-9p8x-scalar-c1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-argmaxpool_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-argmaxpool/f32-argmaxpool-9p8x-scalar-c1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-avgpool_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-avgpool/gen/f32-avgpool-9p-minmax-scalar-u1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-avgpool_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-avgpool/gen/f32-avgpool-9p-minmax-scalar-u1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-conv-hwc2chw_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-conv-hwc2chw/f32-conv-hwc2chw-3x3s2p1c3x2v-rvv-2x2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-conv-hwc2chw_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-conv-hwc2chw/f32-conv-hwc2chw-3x3s2p1c3x2v-rvv-2x2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-conv-hwc2chw_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-conv-hwc2chw/f32-conv-hwc2chw-3x3s2p1c3x4-scalar-1x1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-conv-hwc2chw_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-conv-hwc2chw/f32-conv-hwc2chw-3x3s2p1c3x4-scalar-1x1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-dwconv2d-chw_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3p1-minmax-rvv-7x1v.c",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3s2p1-minmax-rvv-2x2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-dwconv2d-chw_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3p1-minmax-rvv-7x1v.c",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3s2p1-minmax-rvv-2x2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-dwconv2d-chw_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3p1-minmax-scalar-2x1-acc2.c",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3p1-minmax-scalar-4x1.c",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3s2p1-minmax-scalar-1x1-acc2.c",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3s2p1-minmax-scalar-2x1-acc2.c",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-5x5p2-minmax-scalar-1x1-acc5.c",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-5x5p2-minmax-scalar-2x1-acc2.c",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-5x5s2p2-minmax-scalar-1x1-acc5.c",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-5x5s2p2-minmax-scalar-2x1-acc2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-dwconv2d-chw_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3p1-minmax-scalar-2x1-acc2.c",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3p1-minmax-scalar-4x1.c",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3s2p1-minmax-scalar-1x1-acc2.c",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3s2p1-minmax-scalar-2x1-acc2.c",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-5x5p2-minmax-scalar-1x1-acc5.c",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-5x5p2-minmax-scalar-2x1-acc2.c",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-5x5s2p2-minmax-scalar-1x1-acc5.c",
++ "src/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-5x5s2p2-minmax-scalar-2x1-acc2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-dwconv_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-dwconv/gen/f32-dwconv-25p8vc-minmax-rvv.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-25p8vc-rvv.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-3p8vc-minmax-rvv.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-3p8vc-rvv.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-4p8vc-minmax-rvv.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-4p8vc-rvv.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-9p8vc-minmax-rvv.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-9p8vc-rvv.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-dwconv_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-dwconv/gen/f32-dwconv-25p8vc-minmax-rvv.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-25p8vc-rvv.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-3p8vc-minmax-rvv.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-3p8vc-rvv.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-4p8vc-minmax-rvv.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-4p8vc-rvv.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-9p8vc-minmax-rvv.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-9p8vc-rvv.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-dwconv_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-dwconv/gen/f32-dwconv-25p1c-minmax-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-25p1c-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-25p2c-minmax-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-25p2c-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-3p1c-minmax-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-3p1c-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-4p1c-minmax-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-4p1c-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-9p1c-minmax-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-9p1c-scalar-acc2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-dwconv_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-dwconv/gen/f32-dwconv-25p1c-minmax-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-25p1c-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-25p2c-minmax-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-25p2c-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-3p1c-minmax-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-3p1c-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-4p1c-minmax-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-4p1c-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-9p1c-minmax-scalar-acc2.c",
++ "src/src/f32-dwconv/gen/f32-dwconv-9p1c-scalar-acc2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-f16-vcvt_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-f16-vcvt/gen/f32-f16-vcvt-scalar-fabsf-u2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-f16-vcvt_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-f16-vcvt/gen/f32-f16-vcvt-scalar-fabsf-u2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-gemm_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-gemm/gen/f32-gemm-1x4v-minmax-rvv.c",
++ "src/src/f32-gemm/gen/f32-gemm-7x4v-minmax-rvv.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-gemm_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-gemm/gen/f32-gemm-1x4v-minmax-rvv.c",
++ "src/src/f32-gemm/gen/f32-gemm-7x4v-minmax-rvv.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-gemm_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-gemm/gen/f32-gemm-1x4-minmax-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-1x4-relu-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-1x4-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-2x4-minmax-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-2x4-relu-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-2x4-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-4x2-minmax-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-4x2-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-4x4-minmax-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-4x4-relu-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-4x4-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-gemm_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-gemm/gen/f32-gemm-1x4-minmax-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-1x4-relu-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-1x4-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-2x4-minmax-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-2x4-relu-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-2x4-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-4x2-minmax-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-4x2-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-4x4-minmax-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-4x4-relu-scalar.c",
++ "src/src/f32-gemm/gen/f32-gemm-4x4-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-ibilinear-chw_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-ibilinear-chw/gen/f32-ibilinear-chw-scalar-p4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-ibilinear-chw_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-ibilinear-chw/gen/f32-ibilinear-chw-scalar-p4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-ibilinear_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-ibilinear/gen/f32-ibilinear-scalar-c2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-ibilinear_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-ibilinear/gen/f32-ibilinear-scalar-c2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-igemm_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-igemm/gen/f32-igemm-1x4v-minmax-rvv.c",
++ "src/src/f32-igemm/gen/f32-igemm-7x4v-minmax-rvv.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-igemm_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-igemm/gen/f32-igemm-1x4v-minmax-rvv.c",
++ "src/src/f32-igemm/gen/f32-igemm-7x4v-minmax-rvv.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-igemm_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-igemm/gen/f32-igemm-1x4-minmax-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-1x4-relu-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-1x4-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-2x4-minmax-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-2x4-relu-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-2x4-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-4x2-minmax-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-4x2-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-4x4-minmax-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-4x4-relu-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-4x4-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-igemm_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-igemm/gen/f32-igemm-1x4-minmax-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-1x4-relu-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-1x4-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-2x4-minmax-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-2x4-relu-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-2x4-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-4x2-minmax-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-4x2-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-4x4-minmax-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-4x4-relu-scalar.c",
++ "src/src/f32-igemm/gen/f32-igemm-4x4-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-maxpool_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-maxpool/gen/f32-maxpool-9p-minmax-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-maxpool_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-maxpool/gen/f32-maxpool-9p-minmax-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-maxpool_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-maxpool/gen/f32-maxpool-9p-minmax-scalar-u1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-maxpool_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-maxpool/gen/f32-maxpool-9p-minmax-scalar-u1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-qc4w-gemm_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x4-minmax-scalar.c",
++ "src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-4x4-minmax-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-qc4w-gemm_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x4-minmax-scalar.c",
++ "src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-4x4-minmax-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-qc8w-gemm_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x4-minmax-scalar.c",
++ "src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-4x4-minmax-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-qc8w-gemm_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x4-minmax-scalar.c",
++ "src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-4x4-minmax-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-qs8-vcvt_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-qs8-vcvt_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-qs8-vcvt_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-scalar-imagic-u1.c",
++ "src/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-scalar-imagic-u4.c",
++ "src/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-scalar-lrintf-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-qs8-vcvt_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-scalar-imagic-u1.c",
++ "src/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-scalar-imagic-u4.c",
++ "src/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-scalar-lrintf-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-qu8-vcvt_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-qu8-vcvt_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-qu8-vcvt_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-scalar-imagic-u1.c",
++ "src/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-scalar-imagic-u4.c",
++ "src/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-scalar-lrintf-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-qu8-vcvt_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-scalar-imagic-u1.c",
++ "src/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-scalar-imagic-u4.c",
++ "src/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-scalar-lrintf-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-raddstoreexpminusmax_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-raddstoreexpminusmax/gen/f32-raddstoreexpminusmax-rvv-rr2-p6-u4v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-raddstoreexpminusmax_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-raddstoreexpminusmax/gen/f32-raddstoreexpminusmax-rvv-rr2-p6-u4v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-raddstoreexpminusmax_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-raddstoreexpminusmax/gen/f32-raddstoreexpminusmax-scalar-rr2-p5-u4-acc2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-raddstoreexpminusmax_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-raddstoreexpminusmax/gen/f32-raddstoreexpminusmax-scalar-rr2-p5-u4-acc2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-rdminmax_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-rdminmax/gen/f32-rdmax-2p2x-scalar-c2.c",
++ "src/src/f32-rdminmax/gen/f32-rdmin-2p2x-scalar-c2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-rdminmax_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-rdminmax/gen/f32-rdmax-2p2x-scalar-c2.c",
++ "src/src/f32-rdminmax/gen/f32-rdmin-2p2x-scalar-c2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-rdsum_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-rdsum/gen/f32-rdsum-7p7x-minmax-rvv-u4v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-rdsum_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-rdsum/gen/f32-rdsum-7p7x-minmax-rvv-u4v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-rdsum_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-rdsum/gen/f32-rdsum-7p7x-minmax-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-rdsum_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-rdsum/gen/f32-rdsum-7p7x-minmax-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-rminmax_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-rminmax/gen/f32-rmax-rvv-u8v.c",
++ "src/src/f32-rminmax/gen/f32-rmin-rvv-u8v.c",
++ "src/src/f32-rminmax/gen/f32-rminmax-rvv-u8v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-rminmax_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-rminmax/gen/f32-rmax-rvv-u8v.c",
++ "src/src/f32-rminmax/gen/f32-rmin-rvv-u8v.c",
++ "src/src/f32-rminmax/gen/f32-rminmax-rvv-u8v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-rminmax_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-rminmax/gen/f32-rmax-scalar-u4-acc4.c",
++ "src/src/f32-rminmax/gen/f32-rmin-scalar-u4-acc4.c",
++ "src/src/f32-rminmax/gen/f32-rminmax-scalar-u4-acc4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-rminmax_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-rminmax/gen/f32-rmax-scalar-u4-acc4.c",
++ "src/src/f32-rminmax/gen/f32-rmin-scalar-u4-acc4.c",
++ "src/src/f32-rminmax/gen/f32-rminmax-scalar-u4-acc4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-rsum_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-rsum/gen/f32-rsum-scalar-u4-acc4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-rsum_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-rsum/gen/f32-rsum-scalar-u4-acc4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-spmm_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-spmm/gen/f32-spmm-4vx4-minmax-rvv.c",
++ "src/src/f32-spmm/gen/f32-spmm-8vx1-minmax-rvv.c",
++ "src/src/f32-spmm/gen/f32-spmm-8vx2-minmax-rvv.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-spmm_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-spmm/gen/f32-spmm-4vx4-minmax-rvv.c",
++ "src/src/f32-spmm/gen/f32-spmm-8vx1-minmax-rvv.c",
++ "src/src/f32-spmm/gen/f32-spmm-8vx2-minmax-rvv.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-spmm_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-spmm/gen/f32-spmm-8x1-minmax-scalar.c",
++ "src/src/f32-spmm/gen/f32-spmm-8x2-minmax-scalar.c",
++ "src/src/f32-spmm/gen/f32-spmm-8x4-minmax-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-spmm_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-spmm/gen/f32-spmm-8x1-minmax-scalar.c",
++ "src/src/f32-spmm/gen/f32-spmm-8x2-minmax-scalar.c",
++ "src/src/f32-spmm/gen/f32-spmm-8x4-minmax-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vapproxgelu_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vapproxgelu/gen/f32-vapproxgelu-scalar-rational-12-10-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vapproxgelu_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vapproxgelu/gen/f32-vapproxgelu-scalar-rational-12-10-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vbinary_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vbinary/gen/f32-vadd-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vaddc-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vdiv-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vdivc-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vmax-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vmaxc-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vmin-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vminc-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vmul-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vmulc-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vrdivc-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vrsubc-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vsqrdiff-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vsqrdiffc-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vsub-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vsubc-rvv-u8v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vbinary_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vbinary/gen/f32-vadd-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vaddc-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vdiv-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vdivc-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vmax-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vmaxc-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vmin-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vminc-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vmul-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vmulc-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vrdivc-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vrsubc-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vsqrdiff-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vsqrdiffc-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vsub-rvv-u8v.c",
++ "src/src/f32-vbinary/gen/f32-vsubc-rvv-u8v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vbinary_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vbinary/gen/f32-vadd-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vaddc-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vdiv-scalar-u2.c",
++ "src/src/f32-vbinary/gen/f32-vdivc-scalar-u2.c",
++ "src/src/f32-vbinary/gen/f32-vmax-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vmaxc-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vmin-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vminc-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vmul-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vmulc-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vprelu-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vpreluc-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vrdivc-scalar-u2.c",
++ "src/src/f32-vbinary/gen/f32-vrpreluc-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vrsubc-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vsqrdiff-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vsqrdiffc-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vsub-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vsubc-scalar-u8.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vbinary_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vbinary/gen/f32-vadd-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vaddc-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vdiv-scalar-u2.c",
++ "src/src/f32-vbinary/gen/f32-vdivc-scalar-u2.c",
++ "src/src/f32-vbinary/gen/f32-vmax-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vmaxc-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vmin-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vminc-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vmul-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vmulc-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vprelu-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vpreluc-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vrdivc-scalar-u2.c",
++ "src/src/f32-vbinary/gen/f32-vrpreluc-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vrsubc-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vsqrdiff-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vsqrdiffc-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vsub-scalar-u8.c",
++ "src/src/f32-vbinary/gen/f32-vsubc-scalar-u8.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vclamp_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vclamp/gen/f32-vclamp-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vclamp_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vclamp/gen/f32-vclamp-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vcmul_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vcmul/gen/f32-vcmul-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vcmul_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vcmul/gen/f32-vcmul-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vcmul_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vcmul/gen/f32-vcmul-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vcmul_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vcmul/gen/f32-vcmul-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vcopysign_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vcopysign/gen/f32-vcopysign-scalar.c",
++ "src/src/f32-vcopysign/gen/f32-vcopysignc-scalar.c",
++ "src/src/f32-vcopysign/gen/f32-vrcopysignc-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vcopysign_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vcopysign/gen/f32-vcopysign-scalar.c",
++ "src/src/f32-vcopysign/gen/f32-vcopysignc-scalar.c",
++ "src/src/f32-vcopysign/gen/f32-vrcopysignc-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vcos_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vcos/gen/f32-vcos-scalar-rational-5-4-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vcos_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vcos/gen/f32-vcos-scalar-rational-5-4-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-velu_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-velu/gen/f32-velu-scalar-rr2-lut16-p3-u2.c",
++ "src/src/f32-velu/gen/f32-velu-scalar-rr2-lut16-p3-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-velu_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-velu/gen/f32-velu-scalar-rr2-lut16-p3-u2.c",
++ "src/src/f32-velu/gen/f32-velu-scalar-rr2-lut16-p3-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vexp_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vexp/gen/f32-vexp-scalar-rational-3-2-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vexp_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vexp/gen/f32-vexp-scalar-rational-3-2-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vgelu_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vgelu/gen/f32-vgelu-scalar-rational-12-10-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vgelu_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vgelu/gen/f32-vgelu-scalar-rational-12-10-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vhswish_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vhswish/gen/f32-vhswish-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vhswish_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vhswish/gen/f32-vhswish-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vlog_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vlog/gen/f32-vlog-scalar-rational-3-3-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vlog_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vlog/gen/f32-vlog-scalar-rational-3-3-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vlrelu_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vlrelu/gen/f32-vlrelu-rvv-u4v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vlrelu_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vlrelu/gen/f32-vlrelu-rvv-u4v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vlrelu_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vlrelu/gen/f32-vlrelu-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vlrelu_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vlrelu/gen/f32-vlrelu-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vmulcaddc_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vmulcaddc/gen/f32-vmulcaddc-c1-minmax-scalar-2x.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vmulcaddc_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vmulcaddc/gen/f32-vmulcaddc-c1-minmax-scalar-2x.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vrelu_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vrelu/gen/f32-vrelu-rvv-u4v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vrelu_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vrelu/gen/f32-vrelu-rvv-u4v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vrelu_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vrelu/gen/f32-vrelu-scalar-u8.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vrelu_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vrelu/gen/f32-vrelu-scalar-u8.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vrnd_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vrnd/gen/f32-vrndd-rvv-u4v.c",
++ "src/src/f32-vrnd/gen/f32-vrndne-rvv-u4v.c",
++ "src/src/f32-vrnd/gen/f32-vrndu-rvv-u4v.c",
++ "src/src/f32-vrnd/gen/f32-vrndz-rvv-u4v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vrnd_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vrnd/gen/f32-vrndd-rvv-u4v.c",
++ "src/src/f32-vrnd/gen/f32-vrndne-rvv-u4v.c",
++ "src/src/f32-vrnd/gen/f32-vrndu-rvv-u4v.c",
++ "src/src/f32-vrnd/gen/f32-vrndz-rvv-u4v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vrnd_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vrnd/gen/f32-vrndd-scalar-libm-u1.c",
++ "src/src/f32-vrnd/gen/f32-vrndd-scalar-libm-u4.c",
++ "src/src/f32-vrnd/gen/f32-vrndne-scalar-libm-u1.c",
++ "src/src/f32-vrnd/gen/f32-vrndne-scalar-libm-u4.c",
++ "src/src/f32-vrnd/gen/f32-vrndu-scalar-libm-u1.c",
++ "src/src/f32-vrnd/gen/f32-vrndu-scalar-libm-u4.c",
++ "src/src/f32-vrnd/gen/f32-vrndz-scalar-libm-u1.c",
++ "src/src/f32-vrnd/gen/f32-vrndz-scalar-libm-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vrnd_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vrnd/gen/f32-vrndd-scalar-libm-u1.c",
++ "src/src/f32-vrnd/gen/f32-vrndd-scalar-libm-u4.c",
++ "src/src/f32-vrnd/gen/f32-vrndne-scalar-libm-u1.c",
++ "src/src/f32-vrnd/gen/f32-vrndne-scalar-libm-u4.c",
++ "src/src/f32-vrnd/gen/f32-vrndu-scalar-libm-u1.c",
++ "src/src/f32-vrnd/gen/f32-vrndu-scalar-libm-u4.c",
++ "src/src/f32-vrnd/gen/f32-vrndz-scalar-libm-u1.c",
++ "src/src/f32-vrnd/gen/f32-vrndz-scalar-libm-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vrsqrt_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vrsqrt/gen/f32-vrsqrt-rvv-rsqrt-u4v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vrsqrt_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vrsqrt/gen/f32-vrsqrt-rvv-rsqrt-u4v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vrsqrt_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vrsqrt/gen/f32-vrsqrt-scalar-rsqrt-u1.c",
++ "src/src/f32-vrsqrt/gen/f32-vrsqrt-scalar-rsqrt-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vrsqrt_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vrsqrt/gen/f32-vrsqrt-scalar-rsqrt-u1.c",
++ "src/src/f32-vrsqrt/gen/f32-vrsqrt-scalar-rsqrt-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vsigmoid_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vsigmoid/gen/f32-vsigmoid-scalar-rr2-lut64-p2-div-u2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vsigmoid_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vsigmoid/gen/f32-vsigmoid-scalar-rr2-lut64-p2-div-u2.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vsin_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vsin/gen/f32-vsin-scalar-rational-5-4-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vsin_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vsin/gen/f32-vsin-scalar-rational-5-4-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vsqrt_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vsqrt/gen/f32-vsqrt-scalar-sqrt-u1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vsqrt_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vsqrt/gen/f32-vsqrt-scalar-sqrt-u1.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vtanh_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vtanh/gen/f32-vtanh-scalar-rational-9-8-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vtanh_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vtanh/gen/f32-vtanh-scalar-rational-9-8-div.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("f32-vunary_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vunary/gen/f32-vabs-scalar.c",
++ "src/src/f32-vunary/gen/f32-vneg-scalar.c",
++ "src/src/f32-vunary/gen/f32-vsqr-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("f32-vunary_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/f32-vunary/gen/f32-vabs-scalar.c",
++ "src/src/f32-vunary/gen/f32-vneg-scalar.c",
++ "src/src/f32-vunary/gen/f32-vsqr-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("operators_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/operators/argmax-pooling-nhwc.c",
++ "src/src/operators/average-pooling-nhwc.c",
++ "src/src/operators/batch-matrix-multiply-nc.c",
++ "src/src/operators/binary-elementwise-nd.c",
++ "src/src/operators/constant-pad-nd.c",
++ "src/src/operators/convolution-nchw.c",
++ "src/src/operators/convolution-nhwc.c",
++ "src/src/operators/deconvolution-nhwc.c",
++ "src/src/operators/dynamic-fully-connected-nc.c",
++ "src/src/operators/fully-connected-nc.c",
++ "src/src/operators/max-pooling-nhwc.c",
++ "src/src/operators/pack-lh.c",
++ "src/src/operators/reduce-nd.c",
++ "src/src/operators/resize-bilinear-nchw.c",
++ "src/src/operators/resize-bilinear-nhwc.c",
++ "src/src/operators/rope-nthc.c",
++ "src/src/operators/slice-nd.c",
++ "src/src/operators/softmax-nc.c",
++ "src/src/operators/transpose-nd.c",
++ "src/src/operators/unary-elementwise-nc.c",
++ "src/src/operators/unpooling-nhwc.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("operators_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/operators/argmax-pooling-nhwc.c",
++ "src/src/operators/average-pooling-nhwc.c",
++ "src/src/operators/batch-matrix-multiply-nc.c",
++ "src/src/operators/binary-elementwise-nd.c",
++ "src/src/operators/constant-pad-nd.c",
++ "src/src/operators/convolution-nchw.c",
++ "src/src/operators/convolution-nhwc.c",
++ "src/src/operators/deconvolution-nhwc.c",
++ "src/src/operators/dynamic-fully-connected-nc.c",
++ "src/src/operators/fully-connected-nc.c",
++ "src/src/operators/max-pooling-nhwc.c",
++ "src/src/operators/pack-lh.c",
++ "src/src/operators/reduce-nd.c",
++ "src/src/operators/resize-bilinear-nchw.c",
++ "src/src/operators/resize-bilinear-nhwc.c",
++ "src/src/operators/rope-nthc.c",
++ "src/src/operators/slice-nd.c",
++ "src/src/operators/softmax-nc.c",
++ "src/src/operators/transpose-nd.c",
++ "src/src/operators/unary-elementwise-nc.c",
++ "src/src/operators/unpooling-nhwc.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qd8-f32-qb4w-gemm_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-1x4-minmax-scalar.c",
++ "src/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-4x4-minmax-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qd8-f32-qb4w-gemm_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-1x4-minmax-scalar.c",
++ "src/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-4x4-minmax-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qd8-f32-qc4w-gemm_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-1x4-minmax-scalar.c",
++ "src/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-4x4-minmax-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qd8-f32-qc4w-gemm_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-1x4-minmax-scalar.c",
++ "src/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-4x4-minmax-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qd8-f32-qc8w-gemm_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-1x2-minmax-scalar.c",
++ "src/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-1x4-minmax-scalar.c",
++ "src/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-2x2-minmax-scalar.c",
++ "src/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-4x4-minmax-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qd8-f32-qc8w-gemm_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-1x2-minmax-scalar.c",
++ "src/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-1x4-minmax-scalar.c",
++ "src/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-2x2-minmax-scalar.c",
++ "src/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-4x4-minmax-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qd8-f32-qc8w-igemm_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-1x2-minmax-scalar.c",
++ "src/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-1x4-minmax-scalar.c",
++ "src/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-2x2-minmax-scalar.c",
++ "src/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-4x4-minmax-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qd8-f32-qc8w-igemm_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-1x2-minmax-scalar.c",
++ "src/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-1x4-minmax-scalar.c",
++ "src/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-2x2-minmax-scalar.c",
++ "src/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-4x4-minmax-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-dwconv_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-dwconv/gen/qs8-dwconv-25p8vc-minmax-fp32-rvv.c",
++ "src/src/qs8-dwconv/gen/qs8-dwconv-9p8vc-minmax-fp32-rvv.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-dwconv_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-dwconv/gen/qs8-dwconv-25p8vc-minmax-fp32-rvv.c",
++ "src/src/qs8-dwconv/gen/qs8-dwconv-9p8vc-minmax-fp32-rvv.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-dwconv_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-dwconv/gen/qs8-dwconv-25p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qs8-dwconv/gen/qs8-dwconv-25p1c-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-dwconv/gen/qs8-dwconv-25p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-dwconv/gen/qs8-dwconv-9p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qs8-dwconv/gen/qs8-dwconv-9p2c-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-dwconv/gen/qs8-dwconv-9p2c-minmax-fp32-scalar-lrintf.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-dwconv_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-dwconv/gen/qs8-dwconv-25p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qs8-dwconv/gen/qs8-dwconv-25p1c-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-dwconv/gen/qs8-dwconv-25p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-dwconv/gen/qs8-dwconv-9p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qs8-dwconv/gen/qs8-dwconv-9p2c-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-dwconv/gen/qs8-dwconv-9p2c-minmax-fp32-scalar-lrintf.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-f32-vcvt_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-f32-vcvt/gen/qs8-f32-vcvt-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-f32-vcvt_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-f32-vcvt/gen/qs8-f32-vcvt-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-f32-vcvt_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-f32-vcvt/gen/qs8-f32-vcvt-scalar-u1.c",
++ "src/src/qs8-f32-vcvt/gen/qs8-f32-vcvt-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-f32-vcvt_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-f32-vcvt/gen/qs8-f32-vcvt-scalar-u1.c",
++ "src/src/qs8-f32-vcvt/gen/qs8-f32-vcvt-scalar-u4.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-packw_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-packw/gen/qs8-packw-x16c8-gemm-goi-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-packw_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-packw/gen/qs8-packw-x16c8-gemm-goi-scalar.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-qc4w-gemm_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc4w-gemm/gen/qs8-qc4w-gemm-1x2-minmax-fp32-scalar-lrintf.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-qc4w-gemm_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc4w-gemm/gen/qs8-qc4w-gemm-1x2-minmax-fp32-scalar-lrintf.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-qc8w-dwconv_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p8vc-minmax-fp32-rvv.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p8vc-minmax-fp32-rvv.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p8vc-minmax-fp32-rvv.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-qc8w-dwconv_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p8vc-minmax-fp32-rvv.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p8vc-minmax-fp32-rvv.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p8vc-minmax-fp32-rvv.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-qc8w-dwconv_riscv64") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p1c-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p2c-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p2c-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p2c-minmax-fp32-scalar-lrintf.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-qc8w-dwconv_riscv64_standalone") {
++ cflags = []
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p1c-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p2c-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p2c-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p2c-minmax-fp32-scalar-lrintf.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-qc8w-gemm_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x4v-minmax-fp32-rvv.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x4v-minmax-fp32-rvv.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qs8-qc8w-gemm_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x4v-minmax-fp32-rvv.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x4v-minmax-fp32-rvv.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qs8-qc8w-gemm_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-packw/gen/qs8-packw-x16c8-gemm-goi-scalar.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-3x4-minmax-fp32-scalar-lrintf.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37047,12 +45817,15 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-packw_arm64_standalone") {
++ source_set("qs8-qc8w-gemm_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-packw/gen/qs8-packw-x16c8-gemm-goi-scalar.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-3x4-minmax-fp32-scalar-lrintf.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37073,15 +45846,16 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-qc4w-gemm_arch=armv8.2-a+fp16+dotprod") {
+- cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
+-
+- asmflags = cflags
++ source_set("qs8-qc8w-igemm_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc4w-gemm/gen/qs8-qc4w-gemm-1x16-minmax-fp32-asm-aarch64-neondot-ld128.S",
+- "src/src/qs8-qc4w-gemm/gen/qs8-qc4w-gemm-5x16-minmax-fp32-asm-aarch64-neondot-ld128.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x4v-minmax-fp32-rvv.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x4v-minmax-fp32-rvv.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37099,15 +45873,16 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-qc4w-gemm_arch=armv8.2-a+fp16+dotprod_standalone") {
+- cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
+-
+- asmflags = cflags
++ source_set("qs8-qc8w-igemm_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc4w-gemm/gen/qs8-qc4w-gemm-1x16-minmax-fp32-asm-aarch64-neondot-ld128.S",
+- "src/src/qs8-qc4w-gemm/gen/qs8-qc4w-gemm-5x16-minmax-fp32-asm-aarch64-neondot-ld128.S",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x4v-minmax-fp32-rvv.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x4v-minmax-fp32-rvv.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37128,12 +45903,15 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-qc4w-gemm_arm64") {
++ source_set("qs8-qc8w-igemm_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc4w-gemm/gen/qs8-qc4w-gemm-1x2-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-3x4-minmax-fp32-scalar-lrintf.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37151,12 +45929,15 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-qc4w-gemm_arm64_standalone") {
++ source_set("qs8-qc8w-igemm_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc4w-gemm/gen/qs8-qc4w-gemm-1x2-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-3x4-minmax-fp32-scalar-lrintf.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37177,28 +45958,12 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-qc8w-dwconv_arm64") {
++ source_set("qs8-qu8-packw_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p16c-minmax-fp32-neonv8-mla8-ld64.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p1c-minmax-fp32-scalar-fmagic.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p1c-minmax-fp32-scalar-imagic.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p2c-minmax-fp32-scalar-lrintf.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p8c-minmax-fp32-neon-mla8-ld64.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p8c-minmax-fp32-neonv8-mla8-ld64.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p16c-minmax-fp32-neon-mla8-ld128.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p16c-minmax-fp32-neonv8-mla8-ld128.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p16c-minmax-fp32-neonv8-mla8-ld64.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p1c-minmax-fp32-scalar-fmagic.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p2c-minmax-fp32-scalar-imagic.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p2c-minmax-fp32-scalar-lrintf.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p16c-minmax-fp32-neon-mla8-ld64.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p16c-minmax-fp32-neonv8-mla8-ld64.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p1c-minmax-fp32-scalar-fmagic.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p2c-minmax-fp32-scalar-imagic.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qu8-packw/gen/qs8-qu8-packw-x16c8-gemm-goi-scalar.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37216,28 +45981,12 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-qc8w-dwconv_arm64_standalone") {
++ source_set("qs8-qu8-packw_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p16c-minmax-fp32-neonv8-mla8-ld64.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p1c-minmax-fp32-scalar-fmagic.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p1c-minmax-fp32-scalar-imagic.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p2c-minmax-fp32-scalar-lrintf.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p8c-minmax-fp32-neon-mla8-ld64.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p8c-minmax-fp32-neonv8-mla8-ld64.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p16c-minmax-fp32-neon-mla8-ld128.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p16c-minmax-fp32-neonv8-mla8-ld128.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p16c-minmax-fp32-neonv8-mla8-ld64.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p1c-minmax-fp32-scalar-fmagic.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p2c-minmax-fp32-scalar-imagic.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p2c-minmax-fp32-scalar-lrintf.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p16c-minmax-fp32-neon-mla8-ld64.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p16c-minmax-fp32-neonv8-mla8-ld64.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p1c-minmax-fp32-scalar-fmagic.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p2c-minmax-fp32-scalar-imagic.c",
+- "src/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-qu8-packw/gen/qs8-qu8-packw-x16c8-gemm-goi-scalar.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37258,15 +46007,15 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-qc8w-gemm_arch=armv8.2-a+dotprod") {
+- cflags = [ "-march=armv8.2-a+dotprod" ]
++ source_set("qs8-rdsum_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16c4-minmax-fp32-neondot.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c4-minmax-fp32-neondot.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-neondot.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x8c4-minmax-fp32-neondot.c",
++ "src/src/qs8-rdsum/gen/qs8-rdsum-7p7x-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37284,15 +46033,15 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-qc8w-gemm_arch=armv8.2-a+dotprod_standalone") {
+- cflags = [ "-march=armv8.2-a+dotprod" ]
++ source_set("qs8-rdsum_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16c4-minmax-fp32-neondot.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c4-minmax-fp32-neondot.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-neondot.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x8c4-minmax-fp32-neondot.c",
++ "src/src/qs8-rdsum/gen/qs8-rdsum-7p7x-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37313,23 +46062,12 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-qc8w-gemm_arch=armv8.2-a+fp16+dotprod") {
+- cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
+-
+- asmflags = cflags
++ source_set("qs8-rdsum_riscv64") {
++ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-cortex-a53.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-ld64.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-asm-aarch64-neondot-cortex-a55.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld128.S",
++ "src/src/qs8-rdsum/gen/qs8-rdsum-minmax-fp32-scalar-u1-acc1.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37347,23 +46085,12 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-qc8w-gemm_arch=armv8.2-a+fp16+dotprod_standalone") {
+- cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
+-
+- asmflags = cflags
++ source_set("qs8-rdsum_riscv64_standalone") {
++ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-cortex-a53.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-ld64.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-asm-aarch64-neondot-cortex-a55.S",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld128.S",
++ "src/src/qs8-rdsum/gen/qs8-rdsum-minmax-fp32-scalar-u1-acc1.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37384,13 +46111,15 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-qc8w-gemm_arch=armv8.2-a+i8mm+fp16") {
+- cflags = [ "-march=armv8.2-a+i8mm+fp16" ]
++ source_set("qs8-rsum_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16c8-minmax-fp32-neoni8mm.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c8-minmax-fp32-neoni8mm.c",
++ "src/src/qs8-rsum/gen/qs8-rsum-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37408,13 +46137,15 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-qc8w-gemm_arch=armv8.2-a+i8mm+fp16_standalone") {
+- cflags = [ "-march=armv8.2-a+i8mm+fp16" ]
++ source_set("qs8-rsum_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16c8-minmax-fp32-neoni8mm.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c8-minmax-fp32-neoni8mm.c",
++ "src/src/qs8-rsum/gen/qs8-rsum-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37435,20 +46166,12 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-qc8w-gemm_arm64") {
++ source_set("qs8-rsum_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16-minmax-fp32-neonv8-mlal-lane.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x2-minmax-fp32-scalar-imagic.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x4-minmax-fp32-scalar-lrintf.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c2s4-minmax-fp32-neon-mlal.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c2s4-minmax-fp32-neonv8-mlal.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x2-minmax-fp32-scalar-imagic.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c2s4-minmax-fp32-neon-mlal.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c2s4-minmax-fp32-neonv8-mlal.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-3x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-rsum/gen/qs8-rsum-scalar-u4.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37466,20 +46189,12 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-qc8w-gemm_arm64_standalone") {
++ source_set("qs8-rsum_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16-minmax-fp32-neonv8-mlal-lane.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x2-minmax-fp32-scalar-imagic.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x4-minmax-fp32-scalar-lrintf.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c2s4-minmax-fp32-neon-mlal.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c2s4-minmax-fp32-neonv8-mlal.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x2-minmax-fp32-scalar-imagic.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c2s4-minmax-fp32-neon-mlal.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c2s4-minmax-fp32-neonv8-mlal.c",
+- "src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-3x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-rsum/gen/qs8-rsum-scalar-u4.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37500,78 +46215,15 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-qc8w-igemm_arch=armv8.2-a+dotprod") {
+- cflags = [ "-march=armv8.2-a+dotprod" ]
+-
+- sources = [
+- "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x16c4-minmax-fp32-neondot.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c4-minmax-fp32-neondot.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-neondot.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x8c4-minmax-fp32-neondot.c",
+- ]
+-
+- configs -= [ "//build/config/compiler:chromium_code" ]
+- configs += [ "//build/config/compiler:no_chromium_code" ]
+- configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
+-
+- deps = [
+- "//third_party/cpuinfo",
+- "//third_party/fp16",
+- "//third_party/fxdiv",
+- "//third_party/pthreadpool",
++ source_set("qs8-vadd_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
+ ]
+
+- public_configs = [ ":xnnpack_config" ]
+- }
+-
+- # This is a target that cannot depend on //base.
+- source_set("qs8-qc8w-igemm_arch=armv8.2-a+dotprod_standalone") {
+- cflags = [ "-march=armv8.2-a+dotprod" ]
+-
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x16c4-minmax-fp32-neondot.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c4-minmax-fp32-neondot.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-neondot.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x8c4-minmax-fp32-neondot.c",
+- ]
+-
+- configs -= [ "//build/config/compiler:chromium_code" ]
+- configs += [ "//build/config/compiler:no_chromium_code" ]
+- configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
+-
+- deps = [
+- "//third_party/cpuinfo",
+- "//third_party/fp16",
+- "//third_party/fxdiv",
+- "//third_party/pthreadpool:pthreadpool_standalone",
+- ]
+-
+- public_configs = [ ":xnnpack_config" ]
+-
+- if (!(is_android && use_order_profiling)) {
+- assert_no_deps = [ "//base" ]
+- }
+- }
+-
+- source_set("qs8-qc8w-igemm_arch=armv8.2-a+fp16+dotprod") {
+- cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
+-
+- asmflags = cflags
+-
+- sources = [
+- "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-cortex-a53.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-ld64.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-asm-aarch64-neondot-cortex-a55.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld128.S",
++ "src/src/qs8-vadd/gen/qs8-vadd-minmax-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37589,23 +46241,15 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-qc8w-igemm_arch=armv8.2-a+fp16+dotprod_standalone") {
+- cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
+-
+- asmflags = cflags
++ source_set("qs8-vadd_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-cortex-a53.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-ld64.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-asm-aarch64-neondot-cortex-a55.S",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld128.S",
++ "src/src/qs8-vadd/gen/qs8-vadd-minmax-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37626,13 +46270,13 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-qc8w-igemm_arch=armv8.2-a+i8mm+fp16") {
+- cflags = [ "-march=armv8.2-a+i8mm+fp16" ]
++ source_set("qs8-vadd_riscv64") {
++ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x16c8-minmax-fp32-neoni8mm.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c8-minmax-fp32-neoni8mm.c",
++ "src/src/qs8-vadd/gen/qs8-vadd-minmax-scalar-u1.c",
++ "src/src/qs8-vadd/gen/qs8-vadd-minmax-scalar-u4.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37650,13 +46294,13 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-qc8w-igemm_arch=armv8.2-a+i8mm+fp16_standalone") {
+- cflags = [ "-march=armv8.2-a+i8mm+fp16" ]
++ source_set("qs8-vadd_riscv64_standalone") {
++ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x16c8-minmax-fp32-neoni8mm.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c8-minmax-fp32-neoni8mm.c",
++ "src/src/qs8-vadd/gen/qs8-vadd-minmax-scalar-u1.c",
++ "src/src/qs8-vadd/gen/qs8-vadd-minmax-scalar-u4.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37677,20 +46321,15 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-qc8w-igemm_arm64") {
+- cflags = []
++ source_set("qs8-vaddc_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x16-minmax-fp32-neonv8-mlal-lane.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x2-minmax-fp32-scalar-imagic.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x4-minmax-fp32-scalar-lrintf.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c2s4-minmax-fp32-neon-mlal.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c2s4-minmax-fp32-neonv8-mlal.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x2-minmax-fp32-scalar-imagic.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c2s4-minmax-fp32-neon-mlal.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c2s4-minmax-fp32-neonv8-mlal.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-3x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37708,20 +46347,15 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-qc8w-igemm_arm64_standalone") {
+- cflags = []
++ source_set("qs8-vaddc_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x16-minmax-fp32-neonv8-mlal-lane.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x2-minmax-fp32-scalar-imagic.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x4-minmax-fp32-scalar-lrintf.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c2s4-minmax-fp32-neon-mlal.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c2s4-minmax-fp32-neonv8-mlal.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x2-minmax-fp32-scalar-imagic.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c2s4-minmax-fp32-neon-mlal.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c2s4-minmax-fp32-neonv8-mlal.c",
+- "src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-3x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37742,12 +46376,13 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-qu8-packw_arm64") {
++ source_set("qs8-vaddc_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qu8-packw/gen/qs8-qu8-packw-x16c8-gemm-goi-scalar.c",
++ "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-scalar-u1.c",
++ "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-scalar-u4.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37765,12 +46400,13 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-qu8-packw_arm64_standalone") {
++ source_set("qs8-vaddc_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-qu8-packw/gen/qs8-qu8-packw-x16c8-gemm-goi-scalar.c",
++ "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-scalar-u1.c",
++ "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-scalar-u4.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37791,13 +46427,13 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-rdsum_arm64") {
++ source_set("qs8-vcvt_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-rdsum/gen/qs8-rdsum-7p7x-minmax-fp32-neon-c32.c",
+- "src/src/qs8-rdsum/gen/qs8-rdsum-minmax-fp32-scalar-u1-acc1.c",
++ "src/src/qs8-vcvt/gen/qs8-vcvt-scalar-u1.c",
++ "src/src/qs8-vcvt/gen/qs8-vcvt-scalar-u4.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37815,13 +46451,13 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-rdsum_arm64_standalone") {
++ source_set("qs8-vcvt_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-rdsum/gen/qs8-rdsum-7p7x-minmax-fp32-neon-c32.c",
+- "src/src/qs8-rdsum/gen/qs8-rdsum-minmax-fp32-scalar-u1-acc1.c",
++ "src/src/qs8-vcvt/gen/qs8-vcvt-scalar-u1.c",
++ "src/src/qs8-vcvt/gen/qs8-vcvt-scalar-u4.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37842,12 +46478,15 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-rsum_arch=armv8.2-a+dotprod") {
+- cflags = [ "-march=armv8.2-a+dotprod" ]
++ source_set("qs8-vlrelu_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-rsum/gen/qs8-rsum-neondot-u32-acc2.c",
++ "src/src/qs8-vlrelu/gen/qs8-vlrelu-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37865,12 +46504,15 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-rsum_arch=armv8.2-a+dotprod_standalone") {
+- cflags = [ "-march=armv8.2-a+dotprod" ]
++ source_set("qs8-vlrelu_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-rsum/gen/qs8-rsum-neondot-u32-acc2.c",
++ "src/src/qs8-vlrelu/gen/qs8-vlrelu-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37891,13 +46533,13 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-rsum_arm64") {
++ source_set("qs8-vlrelu_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-rsum/gen/qs8-rsum-neon-u32-acc2.c",
+- "src/src/qs8-rsum/gen/qs8-rsum-scalar-u4.c",
++ "src/src/qs8-vlrelu/gen/qs8-vlrelu-scalar-andxor-u4.c",
++ "src/src/qs8-vlrelu/gen/qs8-vlrelu-scalar-select-u4.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37915,13 +46557,13 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-rsum_arm64_standalone") {
++ source_set("qs8-vlrelu_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-rsum/gen/qs8-rsum-neon-u32-acc2.c",
+- "src/src/qs8-rsum/gen/qs8-rsum-scalar-u4.c",
++ "src/src/qs8-vlrelu/gen/qs8-vlrelu-scalar-andxor-u4.c",
++ "src/src/qs8-vlrelu/gen/qs8-vlrelu-scalar-select-u4.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37942,15 +46584,15 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-vadd_arm64") {
+- cflags = []
++ source_set("qs8-vmul_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-vadd/gen/qs8-vadd-minmax-neon-ld64-u16.c",
+- "src/src/qs8-vadd/gen/qs8-vadd-minmax-neon-ld64-u32.c",
+- "src/src/qs8-vadd/gen/qs8-vadd-minmax-scalar-u1.c",
+- "src/src/qs8-vadd/gen/qs8-vadd-minmax-scalar-u4.c",
++ "src/src/qs8-vmul/gen/qs8-vmul-minmax-f32-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37968,15 +46610,15 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-vadd_arm64_standalone") {
+- cflags = []
++ source_set("qs8-vmul_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-vadd/gen/qs8-vadd-minmax-neon-ld64-u16.c",
+- "src/src/qs8-vadd/gen/qs8-vadd-minmax-neon-ld64-u32.c",
+- "src/src/qs8-vadd/gen/qs8-vadd-minmax-scalar-u1.c",
+- "src/src/qs8-vadd/gen/qs8-vadd-minmax-scalar-u4.c",
++ "src/src/qs8-vmul/gen/qs8-vmul-minmax-f32-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -37997,15 +46639,12 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-vaddc_arm64") {
++ source_set("qs8-vmul_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-neon-ld64-u16.c",
+- "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-neon-ld64-u32.c",
+- "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-scalar-u1.c",
+- "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-scalar-u4.c",
++ "src/src/qs8-vmul/gen/qs8-vmul-minmax-fp32-scalar-u4.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38023,15 +46662,12 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-vaddc_arm64_standalone") {
++ source_set("qs8-vmul_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-neon-ld64-u16.c",
+- "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-neon-ld64-u32.c",
+- "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-scalar-u1.c",
+- "src/src/qs8-vaddc/gen/qs8-vaddc-minmax-scalar-u4.c",
++ "src/src/qs8-vmul/gen/qs8-vmul-minmax-fp32-scalar-u4.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38052,14 +46688,15 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-vcvt_arm64") {
+- cflags = []
++ source_set("qs8-vmulc_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-vcvt/gen/qs8-vcvt-neon-u32.c",
+- "src/src/qs8-vcvt/gen/qs8-vcvt-scalar-u1.c",
+- "src/src/qs8-vcvt/gen/qs8-vcvt-scalar-u4.c",
++ "src/src/qs8-vmulc/gen/qs8-vmulc-minmax-f32-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38077,14 +46714,15 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-vcvt_arm64_standalone") {
+- cflags = []
++ source_set("qs8-vmulc_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-vcvt/gen/qs8-vcvt-neon-u32.c",
+- "src/src/qs8-vcvt/gen/qs8-vcvt-scalar-u1.c",
+- "src/src/qs8-vcvt/gen/qs8-vcvt-scalar-u4.c",
++ "src/src/qs8-vmulc/gen/qs8-vmulc-minmax-f32-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38105,14 +46743,12 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-vlrelu_arm64") {
++ source_set("qs8-vmulc_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-vlrelu/gen/qs8-vlrelu-neon-u32.c",
+- "src/src/qs8-vlrelu/gen/qs8-vlrelu-scalar-andxor-u4.c",
+- "src/src/qs8-vlrelu/gen/qs8-vlrelu-scalar-select-u4.c",
++ "src/src/qs8-vmulc/gen/qs8-vmulc-minmax-fp32-scalar-u4.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38130,14 +46766,12 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-vlrelu_arm64_standalone") {
++ source_set("qs8-vmulc_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-vlrelu/gen/qs8-vlrelu-neon-u32.c",
+- "src/src/qs8-vlrelu/gen/qs8-vlrelu-scalar-andxor-u4.c",
+- "src/src/qs8-vlrelu/gen/qs8-vlrelu-scalar-select-u4.c",
++ "src/src/qs8-vmulc/gen/qs8-vmulc-minmax-fp32-scalar-u4.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38158,13 +46792,16 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-vmul_arm64") {
+- cflags = []
++ source_set("qu8-dwconv_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-vmul/gen/qs8-vmul-minmax-fp32-scalar-u4.c",
+- "src/src/qs8-vmul/gen/qs8-vmul-minmax-rndnu-neon-ld64-u16.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-25p8vc-minmax-fp32-rvv.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-9p8vc-minmax-fp32-rvv.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38182,13 +46819,16 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-vmul_arm64_standalone") {
+- cflags = []
++ source_set("qu8-dwconv_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-vmul/gen/qs8-vmul-minmax-fp32-scalar-u4.c",
+- "src/src/qs8-vmul/gen/qs8-vmul-minmax-rndnu-neon-ld64-u16.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-25p8vc-minmax-fp32-rvv.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-9p8vc-minmax-fp32-rvv.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38209,13 +46849,17 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qs8-vmulc_arm64") {
++ source_set("qu8-dwconv_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-vmulc/gen/qs8-vmulc-minmax-fp32-scalar-u4.c",
+- "src/src/qs8-vmulc/gen/qs8-vmulc-minmax-rndnu-neon-ld64-u16.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-25p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-25p1c-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-25p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-9p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-9p2c-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-9p2c-minmax-fp32-scalar-lrintf.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38233,13 +46877,17 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qs8-vmulc_arm64_standalone") {
++ source_set("qu8-dwconv_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qs8-vmulc/gen/qs8-vmulc-minmax-fp32-scalar-u4.c",
+- "src/src/qs8-vmulc/gen/qs8-vmulc-minmax-rndnu-neon-ld64-u16.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-25p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-25p1c-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-25p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-9p1c-minmax-fp32-scalar-fmagic.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-9p2c-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-dwconv/gen/qu8-dwconv-9p2c-minmax-fp32-scalar-lrintf.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38260,19 +46908,15 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qu8-dwconv_arm64") {
+- cflags = []
++ source_set("qu8-f32-vcvt_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-dwconv/gen/qu8-dwconv-25p1c-minmax-fp32-scalar-fmagic.c",
+- "src/src/qu8-dwconv/gen/qu8-dwconv-25p1c-minmax-fp32-scalar-imagic.c",
+- "src/src/qu8-dwconv/gen/qu8-dwconv-25p2c-minmax-fp32-scalar-lrintf.c",
+- "src/src/qu8-dwconv/gen/qu8-dwconv-25p8c-minmax-rndnu-neon-mul8.c",
+- "src/src/qu8-dwconv/gen/qu8-dwconv-9p16c-minmax-rndnu-neon-mul8.c",
+- "src/src/qu8-dwconv/gen/qu8-dwconv-9p1c-minmax-fp32-scalar-fmagic.c",
+- "src/src/qu8-dwconv/gen/qu8-dwconv-9p2c-minmax-fp32-scalar-imagic.c",
+- "src/src/qu8-dwconv/gen/qu8-dwconv-9p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38290,19 +46934,15 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qu8-dwconv_arm64_standalone") {
+- cflags = []
++ source_set("qu8-f32-vcvt_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-dwconv/gen/qu8-dwconv-25p1c-minmax-fp32-scalar-fmagic.c",
+- "src/src/qu8-dwconv/gen/qu8-dwconv-25p1c-minmax-fp32-scalar-imagic.c",
+- "src/src/qu8-dwconv/gen/qu8-dwconv-25p2c-minmax-fp32-scalar-lrintf.c",
+- "src/src/qu8-dwconv/gen/qu8-dwconv-25p8c-minmax-rndnu-neon-mul8.c",
+- "src/src/qu8-dwconv/gen/qu8-dwconv-9p16c-minmax-rndnu-neon-mul8.c",
+- "src/src/qu8-dwconv/gen/qu8-dwconv-9p1c-minmax-fp32-scalar-fmagic.c",
+- "src/src/qu8-dwconv/gen/qu8-dwconv-9p2c-minmax-fp32-scalar-imagic.c",
+- "src/src/qu8-dwconv/gen/qu8-dwconv-9p2c-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38323,12 +46963,11 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qu8-f32-vcvt_arm64") {
++ source_set("qu8-f32-vcvt_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-neon-u32.c",
+ "src/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-scalar-u1.c",
+ "src/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-scalar-u4.c",
+ ]
+@@ -38348,12 +46987,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qu8-f32-vcvt_arm64_standalone") {
++ source_set("qu8-f32-vcvt_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-neon-u32.c",
+ "src/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-scalar-u1.c",
+ "src/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-scalar-u4.c",
+ ]
+@@ -38376,17 +47014,15 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qu8-gemm_arch=armv8.2-a+fp16+dotprod") {
+- cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
+-
+- asmflags = cflags
++ source_set("qu8-gemm_riscv64") {
++ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
+- "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75-prfm.S",
+- "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75.S",
+- "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu16-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
++ "src/src/qu8-gemm/gen/qu8-gemm-1x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-1x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-2x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-3x4-minmax-fp32-scalar-lrintf.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38404,17 +47040,15 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qu8-gemm_arch=armv8.2-a+fp16+dotprod_standalone") {
+- cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
+-
+- asmflags = cflags
++ source_set("qu8-gemm_riscv64_standalone") {
++ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
+- "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75-prfm.S",
+- "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75.S",
+- "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu16-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
++ "src/src/qu8-gemm/gen/qu8-gemm-1x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-1x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-2x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-gemm/gen/qu8-gemm-3x4-minmax-fp32-scalar-lrintf.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38435,20 +47069,15 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qu8-gemm_arm64") {
++ source_set("qu8-igemm_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-gemm/gen/qu8-gemm-1x16-minmax-rndnu-neon-mlal-lane.c",
+- "src/src/qu8-gemm/gen/qu8-gemm-1x16-minmax-rndnu16-neon-mlal-lane.c",
+- "src/src/qu8-gemm/gen/qu8-gemm-1x2-minmax-fp32-scalar-imagic.c",
+- "src/src/qu8-gemm/gen/qu8-gemm-1x4-minmax-fp32-scalar-lrintf.c",
+- "src/src/qu8-gemm/gen/qu8-gemm-1x8-minmax-rndnu-neon-mlal-lane.c",
+- "src/src/qu8-gemm/gen/qu8-gemm-2x2-minmax-fp32-scalar-imagic.c",
+- "src/src/qu8-gemm/gen/qu8-gemm-3x4-minmax-fp32-scalar-lrintf.c",
+- "src/src/qu8-gemm/gen/qu8-gemm-3x8-minmax-rndnu-neon-mlal-lane.c",
+- "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-neon-mlal-lane.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-1x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-1x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-2x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-3x4-minmax-fp32-scalar-lrintf.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38466,20 +47095,15 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qu8-gemm_arm64_standalone") {
++ source_set("qu8-igemm_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-gemm/gen/qu8-gemm-1x16-minmax-rndnu-neon-mlal-lane.c",
+- "src/src/qu8-gemm/gen/qu8-gemm-1x16-minmax-rndnu16-neon-mlal-lane.c",
+- "src/src/qu8-gemm/gen/qu8-gemm-1x2-minmax-fp32-scalar-imagic.c",
+- "src/src/qu8-gemm/gen/qu8-gemm-1x4-minmax-fp32-scalar-lrintf.c",
+- "src/src/qu8-gemm/gen/qu8-gemm-1x8-minmax-rndnu-neon-mlal-lane.c",
+- "src/src/qu8-gemm/gen/qu8-gemm-2x2-minmax-fp32-scalar-imagic.c",
+- "src/src/qu8-gemm/gen/qu8-gemm-3x4-minmax-fp32-scalar-lrintf.c",
+- "src/src/qu8-gemm/gen/qu8-gemm-3x8-minmax-rndnu-neon-mlal-lane.c",
+- "src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-neon-mlal-lane.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-1x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-1x4-minmax-fp32-scalar-lrintf.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-2x2-minmax-fp32-scalar-imagic.c",
++ "src/src/qu8-igemm/gen/qu8-igemm-3x4-minmax-fp32-scalar-lrintf.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38500,17 +47124,15 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qu8-igemm_arch=armv8.2-a+fp16+dotprod") {
+- cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
+-
+- asmflags = cflags
++ source_set("qu8-rdsum_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
+- "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75-prfm.S",
+- "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75.S",
+- "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu16-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
++ "src/src/qu8-rdsum/gen/qu8-rdsum-7p7x-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38528,17 +47150,15 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qu8-igemm_arch=armv8.2-a+fp16+dotprod_standalone") {
+- cflags = [ "-march=armv8.2-a+fp16+dotprod" ]
+-
+- asmflags = cflags
++ source_set("qu8-rdsum_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
+- "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75-prfm.S",
+- "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75.S",
+- "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu16-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
++ "src/src/qu8-rdsum/gen/qu8-rdsum-7p7x-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38559,20 +47179,12 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qu8-igemm_arm64") {
++ source_set("qu8-rdsum_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-igemm/gen/qu8-igemm-1x16-minmax-rndnu-neon-mlal-lane.c",
+- "src/src/qu8-igemm/gen/qu8-igemm-1x16-minmax-rndnu16-neon-mlal-lane.c",
+- "src/src/qu8-igemm/gen/qu8-igemm-1x2-minmax-fp32-scalar-imagic.c",
+- "src/src/qu8-igemm/gen/qu8-igemm-1x4-minmax-fp32-scalar-lrintf.c",
+- "src/src/qu8-igemm/gen/qu8-igemm-1x8-minmax-rndnu-neon-mlal-lane.c",
+- "src/src/qu8-igemm/gen/qu8-igemm-2x2-minmax-fp32-scalar-imagic.c",
+- "src/src/qu8-igemm/gen/qu8-igemm-3x4-minmax-fp32-scalar-lrintf.c",
+- "src/src/qu8-igemm/gen/qu8-igemm-3x8-minmax-rndnu-neon-mlal-lane.c",
+- "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-neon-mlal-lane.c",
++ "src/src/qu8-rdsum/gen/qu8-rdsum-scalar.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38590,20 +47202,12 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qu8-igemm_arm64_standalone") {
++ source_set("qu8-rdsum_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-igemm/gen/qu8-igemm-1x16-minmax-rndnu-neon-mlal-lane.c",
+- "src/src/qu8-igemm/gen/qu8-igemm-1x16-minmax-rndnu16-neon-mlal-lane.c",
+- "src/src/qu8-igemm/gen/qu8-igemm-1x2-minmax-fp32-scalar-imagic.c",
+- "src/src/qu8-igemm/gen/qu8-igemm-1x4-minmax-fp32-scalar-lrintf.c",
+- "src/src/qu8-igemm/gen/qu8-igemm-1x8-minmax-rndnu-neon-mlal-lane.c",
+- "src/src/qu8-igemm/gen/qu8-igemm-2x2-minmax-fp32-scalar-imagic.c",
+- "src/src/qu8-igemm/gen/qu8-igemm-3x4-minmax-fp32-scalar-lrintf.c",
+- "src/src/qu8-igemm/gen/qu8-igemm-3x8-minmax-rndnu-neon-mlal-lane.c",
+- "src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-neon-mlal-lane.c",
++ "src/src/qu8-rdsum/gen/qu8-rdsum-scalar.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38624,14 +47228,15 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qu8-rdsum_arm64") {
+- cflags = []
++ source_set("qu8-rsum_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-rdsum/gen/qu8-rdsum-7p7x-neon-u16.c",
+- "src/src/qu8-rdsum/gen/qu8-rdsum-7p7x-neon-u32.c",
+- "src/src/qu8-rdsum/gen/qu8-rdsum-scalar.c",
++ "src/src/qu8-rsum/gen/qu8-rsum-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38649,14 +47254,15 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qu8-rdsum_arm64_standalone") {
+- cflags = []
++ source_set("qu8-rsum_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-rdsum/gen/qu8-rdsum-7p7x-neon-u16.c",
+- "src/src/qu8-rdsum/gen/qu8-rdsum-7p7x-neon-u32.c",
+- "src/src/qu8-rdsum/gen/qu8-rdsum-scalar.c",
++ "src/src/qu8-rsum/gen/qu8-rsum-rvv-u2v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38677,12 +47283,11 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qu8-rsum_arm64") {
++ source_set("qu8-rsum_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-rsum/gen/qu8-rsum-neon-u32-acc2.c",
+ "src/src/qu8-rsum/gen/qu8-rsum-scalar-u4.c",
+ ]
+
+@@ -38701,12 +47306,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qu8-rsum_arm64_standalone") {
++ source_set("qu8-rsum_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-rsum/gen/qu8-rsum-neon-u32-acc2.c",
+ "src/src/qu8-rsum/gen/qu8-rsum-scalar-u4.c",
+ ]
+
+@@ -38728,13 +47332,66 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qu8-vadd_arm64") {
++ source_set("qu8-vadd_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vadd/gen/qu8-vadd-minmax-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-vadd_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vadd/gen/qu8-vadd-minmax-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-vadd_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-vadd/gen/qu8-vadd-minmax-neon-ld64-u16.c",
+- "src/src/qu8-vadd/gen/qu8-vadd-minmax-neon-ld64-u32.c",
+ "src/src/qu8-vadd/gen/qu8-vadd-minmax-scalar-u1.c",
+ "src/src/qu8-vadd/gen/qu8-vadd-minmax-scalar-u4.c",
+ ]
+@@ -38754,13 +47411,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qu8-vadd_arm64_standalone") {
++ source_set("qu8-vadd_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-vadd/gen/qu8-vadd-minmax-neon-ld64-u16.c",
+- "src/src/qu8-vadd/gen/qu8-vadd-minmax-neon-ld64-u32.c",
+ "src/src/qu8-vadd/gen/qu8-vadd-minmax-scalar-u1.c",
+ "src/src/qu8-vadd/gen/qu8-vadd-minmax-scalar-u4.c",
+ ]
+@@ -38783,13 +47438,66 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qu8-vaddc_arm64") {
++ source_set("qu8-vaddc_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-vaddc_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-vaddc_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-neon-ld64-u16.c",
+- "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-neon-ld64-u32.c",
+ "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-scalar-u1.c",
+ "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-scalar-u4.c",
+ ]
+@@ -38809,13 +47517,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qu8-vaddc_arm64_standalone") {
++ source_set("qu8-vaddc_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-neon-ld64-u16.c",
+- "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-neon-ld64-u32.c",
+ "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-scalar-u1.c",
+ "src/src/qu8-vaddc/gen/qu8-vaddc-minmax-scalar-u4.c",
+ ]
+@@ -38838,12 +47544,11 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qu8-vcvt_arm64") {
++ source_set("qu8-vcvt_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-vcvt/gen/qu8-vcvt-neon-u32.c",
+ "src/src/qu8-vcvt/gen/qu8-vcvt-scalar-u1.c",
+ "src/src/qu8-vcvt/gen/qu8-vcvt-scalar-u4.c",
+ ]
+@@ -38863,12 +47568,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qu8-vcvt_arm64_standalone") {
++ source_set("qu8-vcvt_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-vcvt/gen/qu8-vcvt-neon-u32.c",
+ "src/src/qu8-vcvt/gen/qu8-vcvt-scalar-u1.c",
+ "src/src/qu8-vcvt/gen/qu8-vcvt-scalar-u4.c",
+ ]
+@@ -38891,12 +47595,66 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qu8-vlrelu_arm64") {
++ source_set("qu8-vlrelu_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vlrelu/gen/qu8-vlrelu-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-vlrelu_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vlrelu/gen/qu8-vlrelu-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-vlrelu_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-vlrelu/gen/qu8-vlrelu-neon-u32.c",
+ "src/src/qu8-vlrelu/gen/qu8-vlrelu-scalar-andxor-u4.c",
+ "src/src/qu8-vlrelu/gen/qu8-vlrelu-scalar-select-u4.c",
+ ]
+@@ -38916,12 +47674,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qu8-vlrelu_arm64_standalone") {
++ source_set("qu8-vlrelu_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/qu8-vlrelu/gen/qu8-vlrelu-neon-u32.c",
+ "src/src/qu8-vlrelu/gen/qu8-vlrelu-scalar-andxor-u4.c",
+ "src/src/qu8-vlrelu/gen/qu8-vlrelu-scalar-select-u4.c",
+ ]
+@@ -38944,13 +47701,67 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qu8-vmul_arm64") {
++ source_set("qu8-vmul_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vmul/gen/qu8-vmul-minmax-f32-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-vmul_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vmul/gen/qu8-vmul-minmax-f32-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-vmul_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+ "src/src/qu8-vmul/gen/qu8-vmul-minmax-fp32-scalar-u4.c",
+- "src/src/qu8-vmul/gen/qu8-vmul-minmax-rndnu-neon-ld64-u16.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38968,13 +47779,12 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qu8-vmul_arm64_standalone") {
++ source_set("qu8-vmul_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+ "src/src/qu8-vmul/gen/qu8-vmul-minmax-fp32-scalar-u4.c",
+- "src/src/qu8-vmul/gen/qu8-vmul-minmax-rndnu-neon-ld64-u16.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -38995,13 +47805,67 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("qu8-vmulc_arm64") {
++ source_set("qu8-vmulc_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vmulc/gen/qu8-vmulc-minmax-f32-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("qu8-vmulc_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/qu8-vmulc/gen/qu8-vmulc-minmax-f32-rvv-u2v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("qu8-vmulc_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+ "src/src/qu8-vmulc/gen/qu8-vmulc-minmax-fp32-scalar-u4.c",
+- "src/src/qu8-vmulc/gen/qu8-vmulc-minmax-rndnu-neon-ld64-u16.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -39019,13 +47883,12 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("qu8-vmulc_arm64_standalone") {
++ source_set("qu8-vmulc_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+ "src/src/qu8-vmulc/gen/qu8-vmulc-minmax-fp32-scalar-u4.c",
+- "src/src/qu8-vmulc/gen/qu8-vmulc-minmax-rndnu-neon-ld64-u16.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -39046,7 +47909,7 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("reference_arm64") {
++ source_set("reference_riscv64") {
+ cflags = []
+
+ sources = [
+@@ -39071,7 +47934,7 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("reference_arm64_standalone") {
++ source_set("reference_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+@@ -39099,13 +47962,11 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("s8-ibilinear_arm64") {
++ source_set("s8-ibilinear_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/s8-ibilinear/gen/s8-ibilinear-neon-c16.c",
+- "src/src/s8-ibilinear/gen/s8-ibilinear-neon-c8.c",
+ "src/src/s8-ibilinear/gen/s8-ibilinear-scalar-c1.c",
+ ]
+
+@@ -39124,13 +47985,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("s8-ibilinear_arm64_standalone") {
++ source_set("s8-ibilinear_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/s8-ibilinear/gen/s8-ibilinear-neon-c16.c",
+- "src/src/s8-ibilinear/gen/s8-ibilinear-neon-c8.c",
+ "src/src/s8-ibilinear/gen/s8-ibilinear-scalar-c1.c",
+ ]
+
+@@ -39152,12 +48011,11 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("s8-maxpool_arm64") {
++ source_set("s8-maxpool_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/s8-maxpool/gen/s8-maxpool-9p-minmax-neon-u16.c",
+ "src/src/s8-maxpool/gen/s8-maxpool-9p-minmax-scalar-u1.c",
+ ]
+
+@@ -39176,12 +48034,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("s8-maxpool_arm64_standalone") {
++ source_set("s8-maxpool_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/s8-maxpool/gen/s8-maxpool-9p-minmax-neon-u16.c",
+ "src/src/s8-maxpool/gen/s8-maxpool-9p-minmax-scalar-u1.c",
+ ]
+
+@@ -39203,14 +48060,12 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("s8-rdminmax_arm64") {
++ source_set("s8-rdminmax_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/s8-rdminmax/gen/s8-rdmax-2p2x-neon-c32.c",
+ "src/src/s8-rdminmax/gen/s8-rdmax-2p2x-scalar-c2.c",
+- "src/src/s8-rdminmax/gen/s8-rdmin-2p2x-neon-c32.c",
+ "src/src/s8-rdminmax/gen/s8-rdmin-2p2x-scalar-c2.c",
+ ]
+
+@@ -39229,14 +48084,12 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("s8-rdminmax_arm64_standalone") {
++ source_set("s8-rdminmax_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/s8-rdminmax/gen/s8-rdmax-2p2x-neon-c32.c",
+ "src/src/s8-rdminmax/gen/s8-rdmax-2p2x-scalar-c2.c",
+- "src/src/s8-rdminmax/gen/s8-rdmin-2p2x-neon-c32.c",
+ "src/src/s8-rdminmax/gen/s8-rdmin-2p2x-scalar-c2.c",
+ ]
+
+@@ -39258,16 +48111,13 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("s8-rminmax_arm64") {
++ source_set("s8-rminmax_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/s8-rminmax/gen/s8-rmax-neon-u32-acc2.c",
+ "src/src/s8-rminmax/gen/s8-rmax-scalar-u2-acc2.c",
+- "src/src/s8-rminmax/gen/s8-rmin-neon-u32-acc2.c",
+ "src/src/s8-rminmax/gen/s8-rmin-scalar-u2-acc2.c",
+- "src/src/s8-rminmax/gen/s8-rminmax-neon-u32-acc2.c",
+ "src/src/s8-rminmax/gen/s8-rminmax-scalar-u2-acc2.c",
+ ]
+
+@@ -39286,16 +48136,13 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("s8-rminmax_arm64_standalone") {
++ source_set("s8-rminmax_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/s8-rminmax/gen/s8-rmax-neon-u32-acc2.c",
+ "src/src/s8-rminmax/gen/s8-rmax-scalar-u2-acc2.c",
+- "src/src/s8-rminmax/gen/s8-rmin-neon-u32-acc2.c",
+ "src/src/s8-rminmax/gen/s8-rmin-scalar-u2-acc2.c",
+- "src/src/s8-rminmax/gen/s8-rminmax-neon-u32-acc2.c",
+ "src/src/s8-rminmax/gen/s8-rminmax-scalar-u2-acc2.c",
+ ]
+
+@@ -39317,12 +48164,66 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("s8-vclamp_arm64") {
++ source_set("s8-vclamp_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/s8-vclamp/gen/s8-vclamp-rvv-u4v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("s8-vclamp_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/s8-vclamp/gen/s8-vclamp-rvv-u4v.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("s8-vclamp_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/s8-vclamp/s8-vclamp-neon-u64.c",
+ "src/src/s8-vclamp/s8-vclamp-scalar-u4.c",
+ ]
+
+@@ -39341,12 +48242,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("s8-vclamp_arm64_standalone") {
++ source_set("s8-vclamp_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/s8-vclamp/s8-vclamp-neon-u64.c",
+ "src/src/s8-vclamp/s8-vclamp-scalar-u4.c",
+ ]
+
+@@ -39368,7 +48268,7 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("subgraph_arm64") {
++ source_set("subgraph_riscv64") {
+ cflags = []
+
+ sources = [
+@@ -39418,7 +48318,7 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("subgraph_arm64_standalone") {
++ source_set("subgraph_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+@@ -39471,7 +48371,7 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("tables_arm64") {
++ source_set("tables_riscv64") {
+ cflags = []
+
+ sources = [
+@@ -39502,7 +48402,7 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("tables_arm64_standalone") {
++ source_set("tables_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+@@ -39536,13 +48436,11 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("u8-ibilinear_arm64") {
++ source_set("u8-ibilinear_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/u8-ibilinear/gen/u8-ibilinear-neon-c16.c",
+- "src/src/u8-ibilinear/gen/u8-ibilinear-neon-c8.c",
+ "src/src/u8-ibilinear/gen/u8-ibilinear-scalar-c1.c",
+ ]
+
+@@ -39561,13 +48459,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("u8-ibilinear_arm64_standalone") {
++ source_set("u8-ibilinear_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/u8-ibilinear/gen/u8-ibilinear-neon-c16.c",
+- "src/src/u8-ibilinear/gen/u8-ibilinear-neon-c8.c",
+ "src/src/u8-ibilinear/gen/u8-ibilinear-scalar-c1.c",
+ ]
+
+@@ -39589,7 +48485,7 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("u8-lut32norm_arm64") {
++ source_set("u8-lut32norm_riscv64") {
+ cflags = []
+
+ sources = [
+@@ -39612,7 +48508,7 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("u8-lut32norm_arm64_standalone") {
++ source_set("u8-lut32norm_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+@@ -39638,12 +48534,11 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("u8-maxpool_arm64") {
++ source_set("u8-maxpool_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/u8-maxpool/gen/u8-maxpool-9p-minmax-neon-u16.c",
+ "src/src/u8-maxpool/gen/u8-maxpool-9p-minmax-scalar-u1.c",
+ ]
+
+@@ -39662,12 +48557,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("u8-maxpool_arm64_standalone") {
++ source_set("u8-maxpool_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/u8-maxpool/gen/u8-maxpool-9p-minmax-neon-u16.c",
+ "src/src/u8-maxpool/gen/u8-maxpool-9p-minmax-scalar-u1.c",
+ ]
+
+@@ -39689,14 +48583,12 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("u8-rdminmax_arm64") {
++ source_set("u8-rdminmax_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/u8-rdminmax/gen/u8-rdmax-2p2x-neon-c32.c",
+ "src/src/u8-rdminmax/gen/u8-rdmax-2p2x-scalar-c2.c",
+- "src/src/u8-rdminmax/gen/u8-rdmin-2p2x-neon-c32.c",
+ "src/src/u8-rdminmax/gen/u8-rdmin-2p2x-scalar-c2.c",
+ ]
+
+@@ -39715,14 +48607,12 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("u8-rdminmax_arm64_standalone") {
++ source_set("u8-rdminmax_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/u8-rdminmax/gen/u8-rdmax-2p2x-neon-c32.c",
+ "src/src/u8-rdminmax/gen/u8-rdmax-2p2x-scalar-c2.c",
+- "src/src/u8-rdminmax/gen/u8-rdmin-2p2x-neon-c32.c",
+ "src/src/u8-rdminmax/gen/u8-rdmin-2p2x-scalar-c2.c",
+ ]
+
+@@ -39744,16 +48634,13 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("u8-rminmax_arm64") {
++ source_set("u8-rminmax_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/u8-rminmax/gen/u8-rmax-neon-u32-acc2.c",
+ "src/src/u8-rminmax/gen/u8-rmax-scalar-u2-acc2.c",
+- "src/src/u8-rminmax/gen/u8-rmin-neon-u32-acc2.c",
+ "src/src/u8-rminmax/gen/u8-rmin-scalar-u2-acc2.c",
+- "src/src/u8-rminmax/gen/u8-rminmax-neon-u32-acc2.c",
+ "src/src/u8-rminmax/gen/u8-rminmax-scalar-u2-acc2.c",
+ ]
+
+@@ -39772,16 +48659,13 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("u8-rminmax_arm64_standalone") {
++ source_set("u8-rminmax_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/u8-rminmax/gen/u8-rmax-neon-u32-acc2.c",
+ "src/src/u8-rminmax/gen/u8-rmax-scalar-u2-acc2.c",
+- "src/src/u8-rminmax/gen/u8-rmin-neon-u32-acc2.c",
+ "src/src/u8-rminmax/gen/u8-rmin-scalar-u2-acc2.c",
+- "src/src/u8-rminmax/gen/u8-rminmax-neon-u32-acc2.c",
+ "src/src/u8-rminmax/gen/u8-rminmax-scalar-u2-acc2.c",
+ ]
+
+@@ -39803,13 +48687,15 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("u8-vclamp_arm64") {
+- cflags = []
++ source_set("u8-vclamp_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/u8-vclamp/u8-vclamp-neon-u64.c",
+- "src/src/u8-vclamp/u8-vclamp-scalar-u4.c",
++ "src/src/u8-vclamp/gen/u8-vclamp-rvv-u4v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -39827,13 +48713,15 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("u8-vclamp_arm64_standalone") {
+- cflags = []
++ source_set("u8-vclamp_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/u8-vclamp/u8-vclamp-neon-u64.c",
+- "src/src/u8-vclamp/u8-vclamp-scalar-u4.c",
++ "src/src/u8-vclamp/gen/u8-vclamp-rvv-u4v.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -39854,13 +48742,12 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("x16-packw_arm64") {
++ source_set("u8-vclamp_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/x16-packw/gen/x16-packw-x16-gemm-goi-neon-ld4lane-u8-prfm.c",
+- "src/src/x16-packw/gen/x16-packw-x8-gemm-goi-neon-ld4lane-u8-prfm.c",
++ "src/src/u8-vclamp/u8-vclamp-scalar-u4.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -39878,13 +48765,12 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("x16-packw_arm64_standalone") {
++ source_set("u8-vclamp_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/x16-packw/gen/x16-packw-x16-gemm-goi-neon-ld4lane-u8-prfm.c",
+- "src/src/x16-packw/gen/x16-packw-x8-gemm-goi-neon-ld4lane-u8-prfm.c",
++ "src/src/u8-vclamp/u8-vclamp-scalar-u4.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -39905,13 +48791,12 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("x16-transposec_arm64") {
++ source_set("x16-transposec_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+ "src/src/x16-transposec/gen/x16-transposec-2x4-scalar-int.c",
+- "src/src/x16-transposec/gen/x16-transposec-8x8-reuse-dec-zip-neon.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -39929,13 +48814,12 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("x16-transposec_arm64_standalone") {
++ source_set("x16-transposec_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+ "src/src/x16-transposec/gen/x16-transposec-2x4-scalar-int.c",
+- "src/src/x16-transposec/gen/x16-transposec-8x8-reuse-dec-zip-neon.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -39956,7 +48840,7 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("x16-x32-packw_arm64") {
++ source_set("x16-x32-packw_riscv64") {
+ cflags = []
+
+ sources = [
+@@ -39980,7 +48864,7 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("x16-x32-packw_arm64_standalone") {
++ source_set("x16-x32-packw_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+@@ -40007,14 +48891,12 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("x24-transposec_arm64") {
++ source_set("x24-transposec_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+ "src/src/x24-transposec/gen/x24-transposec-1x2-scalar.c",
+- "src/src/x24-transposec/x24-transposec-2x2-neon-tbl64.c",
+- "src/src/x24-transposec/x24-transposec-4x4-aarch64-neon-tbl128.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -40032,14 +48914,12 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("x24-transposec_arm64_standalone") {
++ source_set("x24-transposec_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+ "src/src/x24-transposec/gen/x24-transposec-1x2-scalar.c",
+- "src/src/x24-transposec/x24-transposec-2x2-neon-tbl64.c",
+- "src/src/x24-transposec/x24-transposec-4x4-aarch64-neon-tbl128.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -40060,20 +48940,72 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("x32-packw_arm64") {
++ source_set("x32-packw_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x32-packw/gen/x32-packw-x4v-gemm-goi-rvv-u8.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("x32-packw_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x32-packw/gen/x32-packw-x4v-gemm-goi-rvv-u8.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("x32-packw_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+ "src/src/x32-packw/gen/x32-packw-x2-gemm-gio-scalar.c",
+- "src/src/x32-packw/gen/x32-packw-x2-gemm-goi-neon-ld2lane-u2-prfm.c",
+ "src/src/x32-packw/gen/x32-packw-x2-gemm-goi-scalar-float-u4.c",
+ "src/src/x32-packw/gen/x32-packw-x32-gemm-goi-scalar-int-u2.c",
+ "src/src/x32-packw/gen/x32-packw-x4-gemm-gio-scalar.c",
+ "src/src/x32-packw/gen/x32-packw-x4-gemm-goi-scalar-float-u4.c",
+ "src/src/x32-packw/gen/x32-packw-x64-gemm-goi-scalar-int-u2.c",
+- "src/src/x32-packw/gen/x32-packw-x8-gemm-goi-neon-ld4lane-u4-prfm.c",
+- "src/src/x32-packw/gen/x32-packw-x8s4-gemm-goi-neon-ld4lane-u4-prfm.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -40091,20 +49023,17 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("x32-packw_arm64_standalone") {
++ source_set("x32-packw_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+ "src/src/x32-packw/gen/x32-packw-x2-gemm-gio-scalar.c",
+- "src/src/x32-packw/gen/x32-packw-x2-gemm-goi-neon-ld2lane-u2-prfm.c",
+ "src/src/x32-packw/gen/x32-packw-x2-gemm-goi-scalar-float-u4.c",
+ "src/src/x32-packw/gen/x32-packw-x32-gemm-goi-scalar-int-u2.c",
+ "src/src/x32-packw/gen/x32-packw-x4-gemm-gio-scalar.c",
+ "src/src/x32-packw/gen/x32-packw-x4-gemm-goi-scalar-float-u4.c",
+ "src/src/x32-packw/gen/x32-packw-x64-gemm-goi-scalar-int-u2.c",
+- "src/src/x32-packw/gen/x32-packw-x8-gemm-goi-neon-ld4lane-u4-prfm.c",
+- "src/src/x32-packw/gen/x32-packw-x8s4-gemm-goi-neon-ld4lane-u4-prfm.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -40125,14 +49054,73 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("x32-transposec_arm64") {
++ source_set("x32-transposec_arch=rv64gcv-abi=lp64d") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x32-transposec/gen/x32-transposec-16x8-rvv.c",
++ "src/src/x32-transposec/gen/x32-transposec-32x8-rvv.c",
++ "src/src/x32-transposec/gen/x32-transposec-4x4-rvv.c",
++ "src/src/x32-transposec/gen/x32-transposec-8x8-rvv.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++ }
++
++ # This is a target that cannot depend on //base.
++ source_set("x32-transposec_arch=rv64gcv-abi=lp64d_standalone") {
++ cflags = [
++ "-mabi=lp64d",
++ "-march=rv64gcv",
++ ]
++
++ sources = [
++ "src/include/xnnpack.h",
++ "src/src/x32-transposec/gen/x32-transposec-16x8-rvv.c",
++ "src/src/x32-transposec/gen/x32-transposec-32x8-rvv.c",
++ "src/src/x32-transposec/gen/x32-transposec-4x4-rvv.c",
++ "src/src/x32-transposec/gen/x32-transposec-8x8-rvv.c",
++ ]
++
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
++
++ deps = [
++ "//third_party/cpuinfo",
++ "//third_party/fp16",
++ "//third_party/fxdiv",
++ "//third_party/pthreadpool:pthreadpool_standalone",
++ ]
++
++ public_configs = [ ":xnnpack_config" ]
++
++ if (!(is_android && use_order_profiling)) {
++ assert_no_deps = [ "//base" ]
++ }
++ }
++
++ source_set("x32-transposec_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+ "src/src/x32-transposec/gen/x32-transposec-2x4-scalar-int.c",
+- "src/src/x32-transposec/gen/x32-transposec-4x4-reuse-dec-zip-neon.c",
+- "src/src/x32-transposec/x32-transposec-4x4-aarch64-neon-tbl128.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -40150,14 +49138,12 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("x32-transposec_arm64_standalone") {
++ source_set("x32-transposec_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+ "src/src/x32-transposec/gen/x32-transposec-2x4-scalar-int.c",
+- "src/src/x32-transposec/gen/x32-transposec-4x4-reuse-dec-zip-neon.c",
+- "src/src/x32-transposec/x32-transposec-4x4-aarch64-neon-tbl128.c",
+ ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+@@ -40178,12 +49164,11 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("x32-unpool_arm64") {
++ source_set("x32-unpool_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/x32-unpool/x32-unpool-neon.c",
+ "src/src/x32-unpool/x32-unpool-scalar.c",
+ ]
+
+@@ -40202,12 +49187,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("x32-unpool_arm64_standalone") {
++ source_set("x32-unpool_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/x32-unpool/x32-unpool-neon.c",
+ "src/src/x32-unpool/x32-unpool-scalar.c",
+ ]
+
+@@ -40229,13 +49213,11 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("x64-transposec_arm64") {
++ source_set("x64-transposec_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/x64-transposec/gen/x64-transposec-2x2-multi-dec-zip-neon.c",
+- "src/src/x64-transposec/gen/x64-transposec-2x2-reuse-dec-zip-neon.c",
+ "src/src/x64-transposec/gen/x64-transposec-4x2-scalar-int.c",
+ ]
+
+@@ -40254,13 +49236,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("x64-transposec_arm64_standalone") {
++ source_set("x64-transposec_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/x64-transposec/gen/x64-transposec-2x2-multi-dec-zip-neon.c",
+- "src/src/x64-transposec/gen/x64-transposec-2x2-reuse-dec-zip-neon.c",
+ "src/src/x64-transposec/gen/x64-transposec-4x2-scalar-int.c",
+ ]
+
+@@ -40282,12 +49262,11 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("x8-lut_arm64") {
++ source_set("x8-lut_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/x8-lut/gen/x8-lut-aarch64-neon-tbx128x4-u64.c",
+ "src/src/x8-lut/gen/x8-lut-scalar-u4.c",
+ ]
+
+@@ -40306,12 +49285,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("x8-lut_arm64_standalone") {
++ source_set("x8-lut_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/x8-lut/gen/x8-lut-aarch64-neon-tbx128x4-u64.c",
+ "src/src/x8-lut/gen/x8-lut-scalar-u4.c",
+ ]
+
+@@ -40333,12 +49311,11 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("x8-packq_arm64") {
++ source_set("x8-packq_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/x8-packq/x8-packq-aarch64-neon-f32qp8-u2.c",
+ "src/src/x8-packq/x8-packq-scalar-f32qp8-u1.c",
+ ]
+
+@@ -40357,12 +49334,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("x8-packq_arm64_standalone") {
++ source_set("x8-packq_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/x8-packq/x8-packq-aarch64-neon-f32qp8-u2.c",
+ "src/src/x8-packq/x8-packq-scalar-f32qp8-u1.c",
+ ]
+
+@@ -40384,7 +49360,7 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("x8-packw_arm64") {
++ source_set("x8-packw_riscv64") {
+ cflags = []
+
+ sources = [
+@@ -40410,7 +49386,7 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("x8-packw_arm64_standalone") {
++ source_set("x8-packw_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+@@ -40439,12 +49415,11 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("x8-transposec_arm64") {
++ source_set("x8-transposec_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/x8-transposec/gen/x8-transposec-16x16-reuse-dec-zip-neon.c",
+ "src/src/x8-transposec/gen/x8-transposec-2x4-scalar-int.c",
+ ]
+
+@@ -40463,12 +49438,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("x8-transposec_arm64_standalone") {
++ source_set("x8-transposec_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/x8-transposec/gen/x8-transposec-16x16-reuse-dec-zip-neon.c",
+ "src/src/x8-transposec/gen/x8-transposec-2x4-scalar-int.c",
+ ]
+
+@@ -40490,7 +49464,7 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("xx-copy_arm64") {
++ source_set("xx-copy_riscv64") {
+ cflags = []
+
+ sources = [
+@@ -40513,7 +49487,7 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("xx-copy_arm64_standalone") {
++ source_set("xx-copy_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+@@ -40539,12 +49513,11 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("xx-fill_arm64") {
++ source_set("xx-fill_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/xx-fill/xx-fill-neon-u64.c",
+ "src/src/xx-fill/xx-fill-scalar-u16.c",
+ ]
+
+@@ -40563,12 +49536,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("xx-fill_arm64_standalone") {
++ source_set("xx-fill_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/xx-fill/xx-fill-neon-u64.c",
+ "src/src/xx-fill/xx-fill-scalar-u16.c",
+ ]
+
+@@ -40590,12 +49562,11 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("xx-pad_arm64") {
++ source_set("xx-pad_riscv64") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/xx-pad/xx-pad-p16-neon-u16.c",
+ "src/src/xx-pad/xx-pad-p4-scalar-u16.c",
+ ]
+
+@@ -40614,12 +49585,11 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("xx-pad_arm64_standalone") {
++ source_set("xx-pad_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+ "src/include/xnnpack.h",
+- "src/src/xx-pad/xx-pad-p16-neon-u16.c",
+ "src/src/xx-pad/xx-pad-p4-scalar-u16.c",
+ ]
+
+@@ -40641,7 +49611,7 @@ if (current_cpu == "arm64") {
+ }
+ }
+
+- source_set("xx-transposev_arm64") {
++ source_set("xx-transposev_riscv64") {
+ cflags = []
+
+ sources = [
+@@ -40664,7 +49634,7 @@ if (current_cpu == "arm64") {
+ }
+
+ # This is a target that cannot depend on //base.
+- source_set("xx-transposev_arm64_standalone") {
++ source_set("xx-transposev_riscv64_standalone") {
+ cflags = []
+
+ sources = [
+diff --git a/third_party/xnnpack/bazelroot/BUILD b/third_party/xnnpack/bazelroot/BUILD
+index a0c9ba693421e..0e5e68c4e903c 100644
+--- a/third_party/xnnpack/bazelroot/BUILD
++++ b/third_party/xnnpack/bazelroot/BUILD
+@@ -21,6 +21,14 @@ platform(
+ ],
+ )
+
++platform(
++ name = "linux_riscv64",
++ constraint_values = [
++ "@platforms//os:linux",
++ "@platforms//cpu:riscv64",
++ ],
++)
++
+ # A dummy clang toolchain for building them for any arch.
+
+ filegroup(name = "empty")
+diff --git a/third_party/xnnpack/generate_build_gn.py b/third_party/xnnpack/generate_build_gn.py
+index be9462d8e22ce..bfec22c031c79 100644
+--- a/third_party/xnnpack/generate_build_gn.py
++++ b/third_party/xnnpack/generate_build_gn.py
+@@ -236,7 +236,10 @@ _PLATFORMS = [
+ _Platform(gn_cpu='x64', bazel_cpu='k8', bazel_platform='//:linux_x64'),
+ _Platform(gn_cpu='arm64',
+ bazel_cpu='aarch64',
+- bazel_platform='//:linux_aarch64')
++ bazel_platform='//:linux_aarch64'),
++ _Platform(gn_cpu='riscv64',
++ bazel_cpu='riscv64',
++ bazel_platform='//:linux_riscv64')
+ ]
+
+
+--
+2.39.2
+
diff --git a/www-client/chromium/files/chromium-138-nodejs-version-check.patch b/www-client/chromium/files/chromium-138-nodejs-version-check.patch
new file mode 100644
index 0000000..cc4b3b4
--- /dev/null
+++ b/www-client/chromium/files/chromium-138-nodejs-version-check.patch
@@ -0,0 +1,49 @@
+https://issues.chromium.org/issues/418397211
+From: Matt Jolly <kangie@gentoo.org>
+Date: Tue, 25 Mar 2025 13:33:48 +1000
+Subject: [PATCH] Remove nodejs version check
+
+Added in https://github.com/chromium/chromium/commit/0ff8528999941d7182be6fc77aeb12a110a3cd86,
+this change is only really useful for gclient checkouts and breaks the
+ability for downstreams to provide their own, compatible, nodejs
+version via the system package manager (or for use on arches other than
+those that Google provides binaries for):
+
+[ERR_ASSERTION]: Failed NodeJS version check: Expected version 'v22.11.0', but found 'v22.13.1'. Did you run 'gclient sync'
+
+This is google development footgun protection, working around
+poor development practices and gclient's inability to ensure
+that the source tree is in a consistent state. We don't need it
+here.
+
+Signed-off-by: Matt Jolly <kangie@gentoo.org>
+--- a/third_party/node/node.gni
++++ b/third_party/node/node.gni
+@@ -36,15 +36,5 @@ template("node") {
+ }
+ }
+
+- # Automatically add a dependency to ":check_version" to ensure NodeJS is
+- # always running the expected version, except when the ':check_version'
+- # target itself is running in which case it shouldn't depend on itself.
+- if (get_label_info(":" + target_name, "label_no_toolchain") !=
+- "//third_party/node:check_version") {
+- if (!defined(deps)) {
+- deps = []
+- }
+- deps += [ "//third_party/node:check_version" ]
+- }
+ }
+ }
+--- a/third_party/protobuf/proto_library.gni
++++ b/third_party/protobuf/proto_library.gni
+@@ -562,7 +562,6 @@ template("proto_library") {
+ _protoc_gen_ts_path,
+ "//tools/protoc_wrapper/protoc-gen-ts_proto.py",
+ ] + _protoc_gen_ts_runtime_deps
+- deps += [ "//third_party/node:check_version" ]
+ }
+
+ if (_generate_with_plugin) {
+--
+2.49.0
diff --git a/www-client/chromium/files/compiler-rt-riscv.patch b/www-client/chromium/files/compiler-rt-riscv.patch
index 3bd59e3..5fc6d2f 100644
--- a/www-client/chromium/files/compiler-rt-riscv.patch
+++ b/www-client/chromium/files/compiler-rt-riscv.patch
@@ -1,8 +1,9 @@
---- a/build/config/clang/BUILD.gn 2024-09-17 09:40:39.225707556 +0200
-+++ b/build/config/clang/BUILD.gn 2024-09-17 09:42:35.703531635 +0200
-@@ -186,6 +186,9 @@
+diff '--color=auto' -Naur a/build/config/clang/BUILD.gn b/build/config/clang/BUILD.gn
+--- a/build/config/clang/BUILD.gn 2025-06-10 22:14:53.405029657 +0100
++++ b/build/config/clang/BUILD.gn 2025-06-10 22:18:26.129864875 +0100
+@@ -188,6 +188,9 @@
+ _suffix = "-i386"
} else if (current_cpu == "arm64") {
- _dir = "aarch64-unknown-linux-gnu"
_suffix = "-aarch64"
+ } else if (current_cpu == "riscv64") {
+ _dir = "riscv64-unknown-linux-gnu"
@@ -10,14 +11,12 @@
} else {
assert(false) # Unhandled cpu type
}
-@@ -201,6 +201,8 @@
+@@ -216,6 +219,8 @@
_dir = "armv7-unknown-linux-gnueabihf"
} else if (current_cpu == "arm64") {
_dir = "aarch64-unknown-linux-gnu"
+ } else if (current_cpu == "riscv64") {
+ _dir = "riscv64-unknown-linux-gnu"
+ } else if (current_cpu == "loong64") {
+ _dir = "loongarch64-unknown-linux-gnu"
} else {
- assert(false) # Unhandled cpu type
- }
-
-
diff --git a/www-client/chromium/files/riscv-ffmpeg.patch b/www-client/chromium/files/riscv-ffmpeg.patch
index 19a0a23..1bc964e 100644
--- a/www-client/chromium/files/riscv-ffmpeg.patch
+++ b/www-client/chromium/files/riscv-ffmpeg.patch
@@ -1,6 +1,6 @@
diff '--color=auto' -Naur a/third_party/ffmpeg/CREDITS.chromium b/third_party/ffmpeg/CREDITS.chromium
---- a/third_party/ffmpeg/CREDITS.chromium 2025-04-28 00:35:54.000000000 +0100
-+++ b/third_party/ffmpeg/CREDITS.chromium 2025-04-26 12:54:44.000000000 +0100
+--- a/third_party/ffmpeg/CREDITS.chromium 2025-06-03 22:20:09.000000000 +0100
++++ b/third_party/ffmpeg/CREDITS.chromium 2025-06-10 19:21:37.000000000 +0100
@@ -131,6 +131,181 @@
********************************************************************************
@@ -217,17 +217,17 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/CREDITS.chromium b/third_party/ff
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 2025-04-26 12:55:06.000000000 +0100
-@@ -0,0 +1,797 @@
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config.h 2025-06-10 19:21:58.000000000 +0100
+@@ -0,0 +1,794 @@
+/* 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/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_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/data/chrome/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --arch=riscv64 --extra-cflags='-march=rv64gc' --enable-cross-compile --tar
get-os=linux --sysroot=/data/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 2025
+#define FFMPEG_DATADIR "/usr/local/share/ffmpeg"
+#define AVCONV_DATADIR "/usr/local/share/ffmpeg"
-+#define CC_IDENT "clang version 21.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 52cd27e60b2421feeee5afa9269c53fb0cb366a7)"
++#define CC_IDENT "clang version 21.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project fd3fecfc0936703f2715fe6fea890e81b0b3c2ac)"
+#define OS_NAME linux
+#define EXTERN_PREFIX ""
+#define EXTERN_ASM
@@ -273,6 +273,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_LDBRX 0
+#define HAVE_POWER8 0
+#define HAVE_PPC4XX 0
++#define HAVE_VEC_XL 0
+#define HAVE_VSX 0
+#define HAVE_RV 1
+#define HAVE_RVV 1
@@ -329,6 +330,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_LDBRX_EXTERNAL 0
+#define HAVE_POWER8_EXTERNAL 0
+#define HAVE_PPC4XX_EXTERNAL 0
++#define HAVE_VEC_XL_EXTERNAL 0
+#define HAVE_VSX_EXTERNAL 0
+#define HAVE_RV_EXTERNAL 0
+#define HAVE_RVV_EXTERNAL 0
@@ -385,6 +387,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_LDBRX_INLINE 0
+#define HAVE_POWER8_INLINE 0
+#define HAVE_PPC4XX_INLINE 0
++#define HAVE_VEC_XL_INLINE 0
+#define HAVE_VSX_INLINE 0
+#define HAVE_RV_INLINE 0
+#define HAVE_RVV_INLINE 0
@@ -448,11 +451,6 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_CDIO_PARANOIA_PARANOIA_H 0
+#define HAVE_CUDA_H 0
+#define HAVE_DISPATCH_DISPATCH_H 0
-+#define HAVE_DEV_BKTR_IOCTL_BT848_H 0
-+#define HAVE_DEV_BKTR_IOCTL_METEOR_H 0
-+#define HAVE_DEV_IC_BT8XX_H 0
-+#define HAVE_DEV_VIDEO_BKTR_IOCTL_BT848_H 0
-+#define HAVE_DEV_VIDEO_METEOR_IOCTL_METEOR_H 0
+#define HAVE_DIRECT_H 0
+#define HAVE_DIRENT_H 1
+#define HAVE_DXGIDEBUG_H 0
@@ -462,11 +460,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_IO_H 0
+#define HAVE_LINUX_DMA_BUF_H 0
+#define HAVE_LINUX_PERF_EVENT_H 1
-+#define HAVE_MACHINE_IOCTL_BT848_H 0
-+#define HAVE_MACHINE_IOCTL_METEOR_H 0
+#define HAVE_MALLOC_H 1
+#define HAVE_OPENCV2_CORE_CORE_C_H 0
-+#define HAVE_OPENGL_GL3_H 0
+#define HAVE_POLL_H 1
+#define HAVE_PTHREAD_NP_H 0
+#define HAVE_SYS_HWPROBE_H 0
@@ -635,6 +630,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define HAVE_KCVIMAGEBUFFERCOLORPRIMARIES_ITU_R_2020 0
+#define HAVE_KCVIMAGEBUFFERTRANSFERFUNCTION_ITU_R_2020 0
+#define HAVE_KCVIMAGEBUFFERTRANSFERFUNCTION_SMPTE_ST_428_1 0
++#define HAVE_KVTQPMODULATIONLEVEL_DEFAULT 0
+#define HAVE_SOCKLEN_T 0
+#define HAVE_STRUCT_ADDRINFO 0
+#define HAVE_STRUCT_GROUP_SOURCE_REQ 0
@@ -917,6 +913,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_BSWAPDSP 0
+#define CONFIG_CABAC 1
+#define CONFIG_CBS 0
++#define CONFIG_CBS_APV 0
+#define CONFIG_CBS_AV1 0
+#define CONFIG_CBS_H264 0
+#define CONFIG_CBS_H265 0
@@ -1018,12 +1015,13 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#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 2025-04-26 12:55:06.000000000 +0100
-@@ -0,0 +1,2240 @@
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/config_components.h 2025-06-10 19:21:58.000000000 +0100
+@@ -0,0 +1,2249 @@
+/* Automatically generated by configure - do not modify! */
+#ifndef FFMPEG_CONFIG_COMPONENTS_H
+#define FFMPEG_CONFIG_COMPONENTS_H
+#define CONFIG_AAC_ADTSTOASC_BSF 0
++#define CONFIG_APV_METADATA_BSF 0
+#define CONFIG_AV1_FRAME_MERGE_BSF 0
+#define CONFIG_AV1_FRAME_SPLIT_BSF 0
+#define CONFIG_AV1_METADATA_BSF 0
@@ -1076,6 +1074,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_ANM_DECODER 0
+#define CONFIG_ANSI_DECODER 0
+#define CONFIG_APNG_DECODER 0
++#define CONFIG_APV_DECODER 0
+#define CONFIG_ARBC_DECODER 0
+#define CONFIG_ARGO_DECODER 0
+#define CONFIG_ASV1_DECODER 0
@@ -1633,8 +1632,11 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_AV1_CUVID_DECODER 0
+#define CONFIG_AV1_MEDIACODEC_DECODER 0
+#define CONFIG_AV1_QSV_DECODER 0
++#define CONFIG_AV1_AMF_DECODER 0
+#define CONFIG_LIBOPENH264_DECODER 0
++#define CONFIG_H264_AMF_DECODER 0
+#define CONFIG_H264_CUVID_DECODER 0
++#define CONFIG_HEVC_AMF_DECODER 0
+#define CONFIG_HEVC_CUVID_DECODER 0
+#define CONFIG_HEVC_MEDIACODEC_DECODER 0
+#define CONFIG_MJPEG_CUVID_DECODER 0
@@ -1928,6 +1930,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_AV1_VDPAU_HWACCEL 0
+#define CONFIG_AV1_VIDEOTOOLBOX_HWACCEL 0
+#define CONFIG_AV1_VULKAN_HWACCEL 0
++#define CONFIG_FFV1_VULKAN_HWACCEL 0
+#define CONFIG_H263_VAAPI_HWACCEL 0
+#define CONFIG_H263_VIDEOTOOLBOX_HWACCEL 0
+#define CONFIG_H264_D3D11VA_HWACCEL 0
@@ -2016,6 +2019,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_EVC_PARSER 0
+#define CONFIG_FLAC_PARSER 1
+#define CONFIG_FTR_PARSER 0
++#define CONFIG_FFV1_PARSER 0
+#define CONFIG_G723_1_PARSER 0
+#define CONFIG_G729_PARSER 0
+#define CONFIG_GIF_PARSER 0
@@ -2055,7 +2059,6 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_ALSA_INDEV 0
+#define CONFIG_ANDROID_CAMERA_INDEV 0
+#define CONFIG_AVFOUNDATION_INDEV 0
-+#define CONFIG_BKTR_INDEV 0
+#define CONFIG_DECKLINK_INDEV 0
+#define CONFIG_DSHOW_INDEV 0
+#define CONFIG_FBDEV_INDEV 0
@@ -2078,10 +2081,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_CACA_OUTDEV 0
+#define CONFIG_DECKLINK_OUTDEV 0
+#define CONFIG_FBDEV_OUTDEV 0
-+#define CONFIG_OPENGL_OUTDEV 0
+#define CONFIG_OSS_OUTDEV 0
+#define CONFIG_PULSE_OUTDEV 0
-+#define CONFIG_SDL2_OUTDEV 0
+#define CONFIG_SNDIO_OUTDEV 0
+#define CONFIG_V4L2_OUTDEV 0
+#define CONFIG_XV_OUTDEV 0
@@ -2393,6 +2394,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_IL_FILTER 0
+#define CONFIG_INFLATE_FILTER 0
+#define CONFIG_INTERLACE_FILTER 0
++#define CONFIG_INTERLACE_VULKAN_FILTER 0
+#define CONFIG_INTERLEAVE_FILTER 0
+#define CONFIG_KERNDEINT_FILTER 0
+#define CONFIG_KIRSCH_FILTER 0
@@ -2492,6 +2494,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_ROTATE_FILTER 0
+#define CONFIG_SAB_FILTER 0
+#define CONFIG_SCALE_FILTER 0
++#define CONFIG_VPP_AMF_FILTER 0
++#define CONFIG_SR_AMF_FILTER 0
+#define CONFIG_SCALE_CUDA_FILTER 0
+#define CONFIG_SCALE_NPP_FILTER 0
+#define CONFIG_SCALE_QSV_FILTER 0
@@ -2690,6 +2694,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_APNG_DEMUXER 0
+#define CONFIG_APTX_DEMUXER 0
+#define CONFIG_APTX_HD_DEMUXER 0
++#define CONFIG_APV_DEMUXER 0
+#define CONFIG_AQTITLE_DEMUXER 0
+#define CONFIG_ARGO_ASF_DEMUXER 0
+#define CONFIG_ARGO_BRP_DEMUXER 0
@@ -3038,6 +3043,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chrome/linux/risc
+#define CONFIG_APNG_MUXER 0
+#define CONFIG_APTX_MUXER 0
+#define CONFIG_APTX_HD_MUXER 0
++#define CONFIG_APV_MUXER 0
+#define CONFIG_ARGO_ASF_MUXER 0
+#define CONFIG_ARGO_CVG_MUXER 0
+#define CONFIG_ASF_MUXER 0
@@ -3262,13 +3268,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 2025-04-26 12:55:06.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/bsf_list.c 2025-06-10 19:21:58.000000000 +0100
@@ -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 2025-04-26 12:55:06.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/codec_list.c 2025-06-10 19:21:58.000000000 +0100
@@ -0,0 +1,17 @@
+static const FFCodec * const codec_list[] = {
+ &ff_h264_decoder,
@@ -3289,7 +3295,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 2025-04-26 12:55:06.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavcodec/parser_list.c 2025-06-10 19:21:58.000000000 +0100
@@ -0,0 +1,9 @@
+static const AVCodecParser * const parser_list[] = {
+ &ff_aac_parser,
@@ -3302,7 +3308,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 2025-04-26 12:55:06.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/demuxer_list.c 2025-06-10 19:21:58.000000000 +0100
@@ -0,0 +1,9 @@
+static const FFInputFormat * const demuxer_list[] = {
+ &ff_aac_demuxer,
@@ -3315,19 +3321,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 2025-04-26 12:55:07.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/muxer_list.c 2025-06-10 19:21:58.000000000 +0100
@@ -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 2025-04-26 12:55:07.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavformat/protocol_list.c 2025-06-10 19:21:58.000000000 +0100
@@ -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 2025-04-26 12:55:06.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/avconfig.h 2025-06-10 19:21:58.000000000 +0100
@@ -0,0 +1,6 @@
+/* Generated by ffmpeg configure */
+#ifndef AVUTIL_AVCONFIG_H
@@ -3337,26 +3343,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 2025-04-26 12:55:06.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chrome/linux/riscv64/libavutil/ffversion.h 2025-06-10 19:21:58.000000000 +0100
@@ -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-2025-02-14-fbce2a76c0"
++#define FFMPEG_VERSION "git-2025-05-01-dcdd0fa"
+#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 2025-04-26 12:55:06.000000000 +0100
-@@ -0,0 +1,797 @@
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config.h 2025-06-10 19:21:58.000000000 +0100
+@@ -0,0 +1,794 @@
+/* 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/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_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/data/chrome/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --arch=riscv64 --extra-cflags='-march=rv64gc' --enable-cross-compile --tar
get-os=linux --sysroot=/data/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 2025
+#define FFMPEG_DATADIR "/usr/local/share/ffmpeg"
+#define AVCONV_DATADIR "/usr/local/share/ffmpeg"
-+#define CC_IDENT "clang version 21.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 52cd27e60b2421feeee5afa9269c53fb0cb366a7)"
++#define CC_IDENT "clang version 21.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project fd3fecfc0936703f2715fe6fea890e81b0b3c2ac)"
+#define OS_NAME linux
+#define EXTERN_PREFIX ""
+#define EXTERN_ASM
@@ -3402,6 +3408,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_LDBRX 0
+#define HAVE_POWER8 0
+#define HAVE_PPC4XX 0
++#define HAVE_VEC_XL 0
+#define HAVE_VSX 0
+#define HAVE_RV 1
+#define HAVE_RVV 1
@@ -3458,6 +3465,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_LDBRX_EXTERNAL 0
+#define HAVE_POWER8_EXTERNAL 0
+#define HAVE_PPC4XX_EXTERNAL 0
++#define HAVE_VEC_XL_EXTERNAL 0
+#define HAVE_VSX_EXTERNAL 0
+#define HAVE_RV_EXTERNAL 0
+#define HAVE_RVV_EXTERNAL 0
@@ -3514,6 +3522,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_LDBRX_INLINE 0
+#define HAVE_POWER8_INLINE 0
+#define HAVE_PPC4XX_INLINE 0
++#define HAVE_VEC_XL_INLINE 0
+#define HAVE_VSX_INLINE 0
+#define HAVE_RV_INLINE 0
+#define HAVE_RVV_INLINE 0
@@ -3577,11 +3586,6 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_CDIO_PARANOIA_PARANOIA_H 0
+#define HAVE_CUDA_H 0
+#define HAVE_DISPATCH_DISPATCH_H 0
-+#define HAVE_DEV_BKTR_IOCTL_BT848_H 0
-+#define HAVE_DEV_BKTR_IOCTL_METEOR_H 0
-+#define HAVE_DEV_IC_BT8XX_H 0
-+#define HAVE_DEV_VIDEO_BKTR_IOCTL_BT848_H 0
-+#define HAVE_DEV_VIDEO_METEOR_IOCTL_METEOR_H 0
+#define HAVE_DIRECT_H 0
+#define HAVE_DIRENT_H 1
+#define HAVE_DXGIDEBUG_H 0
@@ -3591,11 +3595,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_IO_H 0
+#define HAVE_LINUX_DMA_BUF_H 0
+#define HAVE_LINUX_PERF_EVENT_H 1
-+#define HAVE_MACHINE_IOCTL_BT848_H 0
-+#define HAVE_MACHINE_IOCTL_METEOR_H 0
+#define HAVE_MALLOC_H 1
+#define HAVE_OPENCV2_CORE_CORE_C_H 0
-+#define HAVE_OPENGL_GL3_H 0
+#define HAVE_POLL_H 1
+#define HAVE_PTHREAD_NP_H 0
+#define HAVE_SYS_HWPROBE_H 0
@@ -3764,6 +3765,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define HAVE_KCVIMAGEBUFFERCOLORPRIMARIES_ITU_R_2020 0
+#define HAVE_KCVIMAGEBUFFERTRANSFERFUNCTION_ITU_R_2020 0
+#define HAVE_KCVIMAGEBUFFERTRANSFERFUNCTION_SMPTE_ST_428_1 0
++#define HAVE_KVTQPMODULATIONLEVEL_DEFAULT 0
+#define HAVE_SOCKLEN_T 0
+#define HAVE_STRUCT_ADDRINFO 0
+#define HAVE_STRUCT_GROUP_SOURCE_REQ 0
@@ -4046,6 +4048,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_BSWAPDSP 0
+#define CONFIG_CABAC 0
+#define CONFIG_CBS 0
++#define CONFIG_CBS_APV 0
+#define CONFIG_CBS_AV1 0
+#define CONFIG_CBS_H264 0
+#define CONFIG_CBS_H265 0
@@ -4147,12 +4150,13 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#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 2025-04-26 12:55:06.000000000 +0100
-@@ -0,0 +1,2240 @@
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/config_components.h 2025-06-10 19:21:58.000000000 +0100
+@@ -0,0 +1,2249 @@
+/* Automatically generated by configure - do not modify! */
+#ifndef FFMPEG_CONFIG_COMPONENTS_H
+#define FFMPEG_CONFIG_COMPONENTS_H
+#define CONFIG_AAC_ADTSTOASC_BSF 0
++#define CONFIG_APV_METADATA_BSF 0
+#define CONFIG_AV1_FRAME_MERGE_BSF 0
+#define CONFIG_AV1_FRAME_SPLIT_BSF 0
+#define CONFIG_AV1_METADATA_BSF 0
@@ -4205,6 +4209,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_ANM_DECODER 0
+#define CONFIG_ANSI_DECODER 0
+#define CONFIG_APNG_DECODER 0
++#define CONFIG_APV_DECODER 0
+#define CONFIG_ARBC_DECODER 0
+#define CONFIG_ARGO_DECODER 0
+#define CONFIG_ASV1_DECODER 0
@@ -4762,8 +4767,11 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_AV1_CUVID_DECODER 0
+#define CONFIG_AV1_MEDIACODEC_DECODER 0
+#define CONFIG_AV1_QSV_DECODER 0
++#define CONFIG_AV1_AMF_DECODER 0
+#define CONFIG_LIBOPENH264_DECODER 0
++#define CONFIG_H264_AMF_DECODER 0
+#define CONFIG_H264_CUVID_DECODER 0
++#define CONFIG_HEVC_AMF_DECODER 0
+#define CONFIG_HEVC_CUVID_DECODER 0
+#define CONFIG_HEVC_MEDIACODEC_DECODER 0
+#define CONFIG_MJPEG_CUVID_DECODER 0
@@ -5057,6 +5065,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_AV1_VDPAU_HWACCEL 0
+#define CONFIG_AV1_VIDEOTOOLBOX_HWACCEL 0
+#define CONFIG_AV1_VULKAN_HWACCEL 0
++#define CONFIG_FFV1_VULKAN_HWACCEL 0
+#define CONFIG_H263_VAAPI_HWACCEL 0
+#define CONFIG_H263_VIDEOTOOLBOX_HWACCEL 0
+#define CONFIG_H264_D3D11VA_HWACCEL 0
@@ -5145,6 +5154,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_EVC_PARSER 0
+#define CONFIG_FLAC_PARSER 1
+#define CONFIG_FTR_PARSER 0
++#define CONFIG_FFV1_PARSER 0
+#define CONFIG_G723_1_PARSER 0
+#define CONFIG_G729_PARSER 0
+#define CONFIG_GIF_PARSER 0
@@ -5184,7 +5194,6 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_ALSA_INDEV 0
+#define CONFIG_ANDROID_CAMERA_INDEV 0
+#define CONFIG_AVFOUNDATION_INDEV 0
-+#define CONFIG_BKTR_INDEV 0
+#define CONFIG_DECKLINK_INDEV 0
+#define CONFIG_DSHOW_INDEV 0
+#define CONFIG_FBDEV_INDEV 0
@@ -5207,10 +5216,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_CACA_OUTDEV 0
+#define CONFIG_DECKLINK_OUTDEV 0
+#define CONFIG_FBDEV_OUTDEV 0
-+#define CONFIG_OPENGL_OUTDEV 0
+#define CONFIG_OSS_OUTDEV 0
+#define CONFIG_PULSE_OUTDEV 0
-+#define CONFIG_SDL2_OUTDEV 0
+#define CONFIG_SNDIO_OUTDEV 0
+#define CONFIG_V4L2_OUTDEV 0
+#define CONFIG_XV_OUTDEV 0
@@ -5522,6 +5529,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_IL_FILTER 0
+#define CONFIG_INFLATE_FILTER 0
+#define CONFIG_INTERLACE_FILTER 0
++#define CONFIG_INTERLACE_VULKAN_FILTER 0
+#define CONFIG_INTERLEAVE_FILTER 0
+#define CONFIG_KERNDEINT_FILTER 0
+#define CONFIG_KIRSCH_FILTER 0
@@ -5621,6 +5629,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_ROTATE_FILTER 0
+#define CONFIG_SAB_FILTER 0
+#define CONFIG_SCALE_FILTER 0
++#define CONFIG_VPP_AMF_FILTER 0
++#define CONFIG_SR_AMF_FILTER 0
+#define CONFIG_SCALE_CUDA_FILTER 0
+#define CONFIG_SCALE_NPP_FILTER 0
+#define CONFIG_SCALE_QSV_FILTER 0
@@ -5819,6 +5829,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_APNG_DEMUXER 0
+#define CONFIG_APTX_DEMUXER 0
+#define CONFIG_APTX_HD_DEMUXER 0
++#define CONFIG_APV_DEMUXER 0
+#define CONFIG_AQTITLE_DEMUXER 0
+#define CONFIG_ARGO_ASF_DEMUXER 0
+#define CONFIG_ARGO_BRP_DEMUXER 0
@@ -6167,6 +6178,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/chromium/config/Chromium/linux/ri
+#define CONFIG_APNG_MUXER 0
+#define CONFIG_APTX_MUXER 0
+#define CONFIG_APTX_HD_MUXER 0
++#define CONFIG_APV_MUXER 0
+#define CONFIG_ARGO_ASF_MUXER 0
+#define CONFIG_ARGO_CVG_MUXER 0
+#define CONFIG_ASF_MUXER 0
@@ -6391,13 +6403,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 2025-04-26 12:55:06.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/bsf_list.c 2025-06-10 19:21:58.000000000 +0100
@@ -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 2025-04-26 12:55:06.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/codec_list.c 2025-06-10 19:21:58.000000000 +0100
@@ -0,0 +1,15 @@
+static const FFCodec * const codec_list[] = {
+ &ff_flac_decoder,
@@ -6416,7 +6428,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 2025-04-26 12:55:06.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavcodec/parser_list.c 2025-06-10 19:21:58.000000000 +0100
@@ -0,0 +1,7 @@
+static const AVCodecParser * const parser_list[] = {
+ &ff_flac_parser,
@@ -6427,7 +6439,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 2025-04-26 12:55:06.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/demuxer_list.c 2025-06-10 19:21:58.000000000 +0100
@@ -0,0 +1,8 @@
+static const FFInputFormat * const demuxer_list[] = {
+ &ff_flac_demuxer,
@@ -6439,19 +6451,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 2025-04-26 12:55:06.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/muxer_list.c 2025-06-10 19:21:58.000000000 +0100
@@ -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 2025-04-26 12:55:06.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavformat/protocol_list.c 2025-06-10 19:21:58.000000000 +0100
@@ -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 2025-04-26 12:55:06.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/avconfig.h 2025-06-10 19:21:58.000000000 +0100
@@ -0,0 +1,6 @@
+/* Generated by ffmpeg configure */
+#ifndef AVUTIL_AVCONFIG_H
@@ -6461,16 +6473,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 2025-04-26 12:55:06.000000000 +0100
++++ b/third_party/ffmpeg/chromium/config/Chromium/linux/riscv64/libavutil/ffversion.h 2025-06-10 19:21:58.000000000 +0100
@@ -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-2025-02-14-fbce2a76c0"
++#define FFMPEG_VERSION "git-2025-05-01-dcdd0fa"
+#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 2025-04-28 00:35:54.000000000 +0100
-+++ b/third_party/ffmpeg/chromium/scripts/copy_config.sh 2025-04-26 12:52:05.000000000 +0100
+--- a/third_party/ffmpeg/chromium/scripts/copy_config.sh 2025-06-03 22:20:09.000000000 +0100
++++ b/third_party/ffmpeg/chromium/scripts/copy_config.sh 2025-06-10 19:15:50.000000000 +0100
@@ -10,7 +10,7 @@
# Copy config files for various architectures:
# - ia32/x64 have config.asm, config.h
@@ -6481,13 +6493,13 @@ 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 2025-04-28 00:35:54.000000000 +0100
-+++ b/third_party/ffmpeg/ffmpeg_generated.gni 2025-04-26 12:54:45.000000000 +0100
+--- a/third_party/ffmpeg/ffmpeg_generated.gni 2025-06-03 22:20:09.000000000 +0100
++++ b/third_party/ffmpeg/ffmpeg_generated.gni 2025-06-10 19:21:44.000000000 +0100
@@ -14,19 +14,13 @@
use_linux_config = is_linux || is_chromeos || is_fuchsia
--if (current_cpu == "arm64" || current_cpu == "x64" ||
+-if (current_cpu == "arm64" || current_cpu == "arm64e" || current_cpu == "x64" ||
- (is_android && current_cpu == "arm" && arm_use_neon) ||
- (is_android && current_cpu == "x86") || is_apple || is_win ||
- use_linux_config) {
@@ -6503,8 +6515,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- "libavcodec/autorename_libavcodec_vorbisdsp.c",
"libavcodec/avcodec.c",
"libavcodec/avdct.c",
- "libavcodec/avfft.c",
-@@ -47,6 +41,7 @@
+ "libavcodec/bitstream.c",
+@@ -45,6 +39,7 @@
"libavcodec/flac_parser.c",
"libavcodec/flacdata.c",
"libavcodec/flacdec.c",
@@ -6512,7 +6524,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavcodec/get_buffer.c",
"libavcodec/golomb.c",
"libavcodec/imgconvert.c",
-@@ -65,6 +60,7 @@
+@@ -63,6 +58,7 @@
"libavcodec/mpegaudiodec_common.c",
"libavcodec/mpegaudiodec_fixed.c",
"libavcodec/mpegaudiodecheader.c",
@@ -6520,7 +6532,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavcodec/mpegaudiodsp_data.c",
"libavcodec/mpegaudiodsp_fixed.c",
"libavcodec/mpegaudiodsp_float.c",
-@@ -81,6 +77,8 @@
+@@ -79,6 +75,8 @@
"libavcodec/pthread_slice.c",
"libavcodec/qsv_api.c",
"libavcodec/raw.c",
@@ -6529,7 +6541,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavcodec/threadprogress.c",
"libavcodec/to_upper4.c",
"libavcodec/utils.c",
-@@ -90,6 +88,7 @@
+@@ -88,6 +86,7 @@
"libavcodec/vorbis_data.c",
"libavcodec/vorbis_parser.c",
"libavcodec/vorbisdec.c",
@@ -6537,12 +6549,15 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavcodec/vp9_parser.c",
"libavcodec/xiph.c",
"libavformat/allformats.c",
-@@ -145,12 +144,7 @@
- "libavutil/aes.c",
+@@ -140,14 +139,9 @@
+ "libavformat/url.c",
+ "libavformat/vorbiscomment.c",
+ "libavformat/wavdec.c",
++ "libavutil/aes.c",
"libavutil/aes_ctr.c",
"libavutil/ambient_viewing_environment.c",
+- "libavutil/autorename_libavutil_aes.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",
@@ -6550,7 +6565,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavutil/autorename_libavutil_utils.c",
"libavutil/autorename_libavutil_version.c",
"libavutil/avstring.c",
-@@ -160,6 +154,7 @@
+@@ -157,6 +151,7 @@
"libavutil/camellia.c",
"libavutil/channel_layout.c",
"libavutil/container_fifo.c",
@@ -6558,15 +6573,16 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavutil/crc.c",
"libavutil/csp.c",
"libavutil/detection_bbox.c",
-@@ -173,12 +168,15 @@
+@@ -171,6 +166,8 @@
"libavutil/fifo.c",
"libavutil/file_open.c",
"libavutil/film_grain_params.c",
+ "libavutil/fixed_dsp.c",
+ "libavutil/float_dsp.c",
+ "libavutil/float_scalarproduct.c",
"libavutil/frame.c",
"libavutil/hdr_dynamic_metadata.c",
- "libavutil/hdr_dynamic_vivid_metadata.c",
+@@ -178,6 +175,7 @@
"libavutil/hwcontext.c",
"libavutil/hwcontext_stub.c",
"libavutil/iamf.c",
@@ -6574,7 +6590,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavutil/integer.c",
"libavutil/intmath.c",
"libavutil/lfg.c",
-@@ -197,6 +195,11 @@
+@@ -196,6 +194,11 @@
"libavutil/rational.c",
"libavutil/refstruct.c",
"libavutil/reverse.c",
@@ -6585,8 +6601,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
+ "libavutil/riscv/lls_init.c",
"libavutil/samplefmt.c",
"libavutil/sha.c",
- "libavutil/slicethread.c",
-@@ -209,22 +212,41 @@
+ "libavutil/side_data.c",
+@@ -210,23 +213,41 @@
"libavutil/timestamp.c",
"libavutil/twofish.c",
"libavutil/tx.c",
@@ -6604,7 +6620,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
+ ]
}
--if ((current_cpu == "arm64" && ffmpeg_branding == "Chrome") ||
+-if (((current_cpu == "arm64" || current_cpu == "arm64e") &&
+- ffmpeg_branding == "Chrome") ||
- (current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
- (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
- (is_apple && ffmpeg_branding == "Chrome") ||
@@ -6634,7 +6651,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
"libavcodec/h2645_parse.c",
"libavcodec/h2645_sei.c",
"libavcodec/h2645_vui.c",
-@@ -249,236 +271,30 @@
+@@ -251,240 +272,30 @@
"libavcodec/h264pred.c",
"libavcodec/h264qpel.c",
"libavcodec/h274.c",
@@ -6642,7 +6659,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- ]
-}
-
--if ((current_cpu == "arm64" && ffmpeg_branding == "Chrome") ||
+-if (((current_cpu == "arm64" || current_cpu == "arm64e") &&
+- ffmpeg_branding == "Chrome") ||
- (current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
- (is_android && current_cpu == "arm" && arm_use_neon &&
- ffmpeg_branding == "Chrome") ||
@@ -6707,7 +6725,8 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- ]
-}
-
--if (current_cpu == "arm64" && ffmpeg_branding == "Chrome") {
+-if ((current_cpu == "arm64" || current_cpu == "arm64e") &&
+- ffmpeg_branding == "Chrome") {
- ffmpeg_c_sources += [
- "libavcodec/aarch64/aacpsdsp_init_aarch64.c",
- "libavcodec/aarch64/autorename_libavcodec_aarch64_videodsp_init.c",
@@ -6717,7 +6736,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- "libavcodec/aarch64/h264qpel_init_aarch64.c",
- "libavcodec/aarch64/sbrdsp_init_aarch64.c",
- ]
-- ffmpeg_gas_sources += [
+ ffmpeg_gas_sources += [
- "libavcodec/aarch64/autorename_libavcodec_aarch64_aacpsdsp_neon.S",
- "libavcodec/aarch64/autorename_libavcodec_aarch64_h264cmc_neon.S",
- "libavcodec/aarch64/autorename_libavcodec_aarch64_h264dsp_neon.S",
@@ -6727,8 +6746,18 @@ 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/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" || (is_win && current_cpu == "x86") ||
- (use_linux_config && current_cpu == "x86")) {
@@ -6739,6 +6768,7 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- "libavcodec/x86/flacdsp.asm",
- "libavcodec/x86/imdct36.asm",
- "libavcodec/x86/vorbisdsp.asm",
+- "libavutil/x86/aes.asm",
- "libavutil/x86/cpuid.asm",
- "libavutil/x86/fixed_dsp.asm",
- "libavutil/x86/float_dsp.asm",
@@ -6748,39 +6778,40 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- ]
-}
-
--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/aes_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",
- ]
-}
-
+-if (current_cpu == "arm64" || current_cpu == "arm64e") {
+- ffmpeg_c_sources += [
+- "libavcodec/aarch64/mpegaudiodsp_init.c",
+- "libavcodec/aarch64/vorbisdsp_init.c",
+- "libavutil/aarch64/autorename_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/cpu_sve.S",
+- "libavutil/aarch64/tx_float_neon.S",
+- ]
+-}
+-
-if ((is_android && current_cpu == "arm" && arm_use_neon) ||
- (use_linux_config && current_cpu == "arm" && arm_use_neon) ||
- (use_linux_config && current_cpu == "arm")) {
@@ -6810,21 +6841,11 @@ 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") ||
@@ -6883,92 +6904,85 @@ diff '--color=auto' -Naur a/third_party/ffmpeg/ffmpeg_generated.gni b/third_part
- ]
-}
-
--if ((is_android && current_cpu == "arm" && arm_use_neon) ||
-- (is_android && current_cpu == "arm64") ||
+-if ((is_android && (current_cpu == "arm64" || current_cpu == "arm64e")) ||
+- (is_android && current_cpu == "arm" && arm_use_neon) ||
- (is_android && current_cpu == "x64") ||
- (is_android && current_cpu == "x86")) {
- ffmpeg_c_sources += [ "compat/strtod.c" ]
-}
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 2025-04-28 00:35:54.000000000 +0100
-+++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_parser.c 2025-04-26 12:54:40.000000000 +0100
+--- a/third_party/ffmpeg/libavcodec/autorename_libavcodec_parser.c 2025-06-03 22:20:09.000000000 +0100
++++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_parser.c 2025-06-10 19:21:34.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
-+// Automatically generated on Sat Apr 26 12:54:40 2025. See crbug.com/495833.
+-// Automatically generated on Thu May 1 06:11:29 2025. See crbug.com/495833.
++// Automatically generated on Tue Jun 10 19:21:32 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 2025-04-28 00:35:54.000000000 +0100
-+++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_videodsp.c 2025-04-26 12:54:40.000000000 +0100
+--- a/third_party/ffmpeg/libavcodec/autorename_libavcodec_videodsp.c 2025-06-03 22:20:09.000000000 +0100
++++ b/third_party/ffmpeg/libavcodec/autorename_libavcodec_videodsp.c 2025-06-10 19:21:34.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
-+// Automatically generated on Sat Apr 26 12:54:40 2025. See crbug.com/495833.
+-// Automatically generated on Thu May 1 06:11:29 2025. See crbug.com/495833.
++// Automatically generated on Tue Jun 10 19:21:32 2025. See crbug.com/495833.
#include "videodsp.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 2025-04-28 00:35:54.000000000 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_aacdec.c 2025-04-26 12:54:40.000000000 +0100
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_aacdec.c 2025-06-03 22:20:09.000000000 +0100
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_aacdec.c 2025-06-10 19:21:34.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
-+// Automatically generated on Sat Apr 26 12:54:40 2025. See crbug.com/495833.
+-// Automatically generated on Thu May 1 06:11:29 2025. See crbug.com/495833.
++// Automatically generated on Tue Jun 10 19:21:32 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 2025-04-28 00:35:54.000000000 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_flacdec.c 2025-04-26 12:54:40.000000000 +0100
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_flacdec.c 2025-06-03 22:20:09.000000000 +0100
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_flacdec.c 2025-06-10 19:21:34.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
-+// Automatically generated on Sat Apr 26 12:54:40 2025. See crbug.com/495833.
+-// Automatically generated on Thu May 1 06:11:29 2025. See crbug.com/495833.
++// Automatically generated on Tue Jun 10 19:21:32 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 2025-04-28 00:35:54.000000000 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_options.c 2025-04-26 12:54:40.000000000 +0100
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_options.c 2025-06-03 22:20:09.000000000 +0100
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_options.c 2025-06-10 19:21:34.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
-+// Automatically generated on Sat Apr 26 12:54:40 2025. See crbug.com/495833.
+-// Automatically generated on Thu May 1 06:11:29 2025. See crbug.com/495833.
++// Automatically generated on Tue Jun 10 19:21:32 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 2025-04-28 00:35:54.000000000 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_pcm.c 2025-04-26 12:54:40.000000000 +0100
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_pcm.c 2025-06-03 22:20:09.000000000 +0100
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_pcm.c 2025-06-10 19:21:34.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
-+// Automatically generated on Sat Apr 26 12:54:40 2025. See crbug.com/495833.
+-// Automatically generated on Thu May 1 06:11:29 2025. See crbug.com/495833.
++// Automatically generated on Tue Jun 10 19:21:32 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 2025-04-28 00:35:54.000000000 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_utils.c 2025-04-26 12:54:40.000000000 +0100
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_utils.c 2025-06-03 22:20:09.000000000 +0100
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_utils.c 2025-06-10 19:21:34.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
-+// Automatically generated on Sat Apr 26 12:54:40 2025. See crbug.com/495833.
+-// Automatically generated on Thu May 1 06:11:29 2025. See crbug.com/495833.
++// Automatically generated on Tue Jun 10 19:21:32 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 2025-04-28 00:35:54.000000000 +0100
-+++ b/third_party/ffmpeg/libavformat/autorename_libavformat_version.c 2025-04-26 12:54:40.000000000 +0100
+--- a/third_party/ffmpeg/libavformat/autorename_libavformat_version.c 2025-06-03 22:20:09.000000000 +0100
++++ b/third_party/ffmpeg/libavformat/autorename_libavformat_version.c 2025-06-10 19:21:34.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
-+// Automatically generated on Sat Apr 26 12:54:40 2025. See crbug.com/495833.
+-// Automatically generated on Thu May 1 06:11:29 2025. See crbug.com/495833.
++// Automatically generated on Tue Jun 10 19:21:32 2025. See crbug.com/495833.
#include "version.c"
-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 2025-04-28 00:35:54.000000000 +0100
-+++ b/third_party/ffmpeg/libavutil/autorename_libavutil_executor.c 2025-04-26 12:54:40.000000000 +0100
-@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
-+// Automatically generated on Sat Apr 26 12:54:40 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 2025-04-28 00:35:54.000000000 +0100
-+++ b/third_party/ffmpeg/libavutil/autorename_libavutil_utils.c 2025-04-26 12:54:40.000000000 +0100
+--- a/third_party/ffmpeg/libavutil/autorename_libavutil_utils.c 2025-06-03 22:20:09.000000000 +0100
++++ b/third_party/ffmpeg/libavutil/autorename_libavutil_utils.c 2025-06-10 19:21:34.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
-+// Automatically generated on Sat Apr 26 12:54:40 2025. See crbug.com/495833.
+-// Automatically generated on Thu May 1 06:11:29 2025. See crbug.com/495833.
++// Automatically generated on Tue Jun 10 19:21:32 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 2025-04-28 00:35:54.000000000 +0100
-+++ b/third_party/ffmpeg/libavutil/autorename_libavutil_version.c 2025-04-26 12:54:40.000000000 +0100
+--- a/third_party/ffmpeg/libavutil/autorename_libavutil_version.c 2025-06-03 22:20:09.000000000 +0100
++++ b/third_party/ffmpeg/libavutil/autorename_libavutil_version.c 2025-06-10 19:21:34.000000000 +0100
@@ -1,2 +1,2 @@
--// Automatically generated on Mon Jan 13 23:55:35 2025. See crbug.com/495833.
-+// Automatically generated on Sat Apr 26 12:54:40 2025. See crbug.com/495833.
+-// Automatically generated on Thu May 1 06:11:29 2025. See crbug.com/495833.
++// Automatically generated on Tue Jun 10 19:21:32 2025. See crbug.com/495833.
#include "version.c"
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-04-26 12:54:40.000000000 +0100
++++ b/third_party/ffmpeg/libavutil/riscv/autorename_libavutil_riscv_cpu.c 2025-06-10 19:21:34.000000000 +0100
@@ -0,0 +1,2 @@
-+// Automatically generated on Sat Apr 26 12:54:40 2025. See crbug.com/495833.
++// Automatically generated on Tue Jun 10 19:21:32 2025. See crbug.com/495833.
+#include "cpu.c"
diff --git a/www-client/chromium/files/riscv-sandbox.patch b/www-client/chromium/files/riscv-sandbox.patch
index a8d4569..8d3331c 100644
--- a/www-client/chromium/files/riscv-sandbox.patch
+++ b/www-client/chromium/files/riscv-sandbox.patch
@@ -1,21 +1,18 @@
-Index: chromium-135.0.7049.52/sandbox/features.gni
+Index: chromium-137.0.7151.55/sandbox/features.gni
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/features.gni
-+++ chromium-135.0.7049.52/sandbox/features.gni
-@@ -9,7 +9,8 @@
+--- chromium-137.0.7151.55.orig/sandbox/features.gni
++++ chromium-137.0.7151.55/sandbox/features.gni
+@@ -9,4 +9,5 @@
use_seccomp_bpf = (is_linux || is_chromeos || is_android) &&
(current_cpu == "x86" || current_cpu == "x64" ||
current_cpu == "arm" || current_cpu == "arm64" ||
- current_cpu == "mipsel" || current_cpu == "mips64el")
+ current_cpu == "mipsel" || current_cpu == "mips64el" ||
+ current_cpu == "riscv64")
-
- # 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-135.0.7049.52/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
+Index: chromium-137.0.7151.55/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
-+++ chromium-135.0.7049.52/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
+--- chromium-137.0.7151.55.orig/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
++++ chromium-137.0.7151.55/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 +26,10 @@ Index: chromium-135.0.7049.52/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
#else
#error "Unsupported architecture"
#endif
-Index: chromium-135.0.7049.52/sandbox/linux/bpf_dsl/seccomp_macros.h
+Index: chromium-137.0.7151.55/sandbox/linux/bpf_dsl/seccomp_macros.h
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/linux/bpf_dsl/seccomp_macros.h
-+++ chromium-135.0.7049.52/sandbox/linux/bpf_dsl/seccomp_macros.h
+--- chromium-137.0.7151.55.orig/sandbox/linux/bpf_dsl/seccomp_macros.h
++++ chromium-137.0.7151.55/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 +79,10 @@ Index: chromium-135.0.7049.52/sandbox/linux/bpf_dsl/seccomp_macros.h
#else
#error Unsupported target platform
-Index: chromium-135.0.7049.52/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
+Index: chromium-137.0.7151.55/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
-+++ chromium-135.0.7049.52/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
+--- chromium-137.0.7151.55.orig/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
++++ chromium-137.0.7151.55/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
@@ -60,6 +60,9 @@ bool IsBaselinePolicyAllowed(int sysno)
#if defined(__mips__)
SyscallSets::IsMipsPrivate(sysno) ||
@@ -132,11 +129,11 @@ Index: chromium-135.0.7049.52/sandbox/linux/seccomp-bpf-helpers/baseline_policy.
if (sysno == __NR_pipe) {
return Allow();
}
-Index: chromium-135.0.7049.52/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
+Index: chromium-137.0.7151.55/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
-+++ chromium-135.0.7049.52/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
-@@ -39,6 +39,7 @@
+--- chromium-137.0.7151.55.orig/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
++++ chromium-137.0.7151.55/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
+@@ -42,6 +42,7 @@
#endif
#if BUILDFLAG(IS_LINUX) && !defined(__arm__) && !defined(__aarch64__) && \
@@ -144,7 +141,7 @@ Index: chromium-135.0.7049.52/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() {
+@@ -478,8 +479,10 @@ ResultExpr RestrictPtrace() {
#endif
return Switch(request)
.Cases({
@@ -156,10 +153,10 @@ Index: chromium-135.0.7049.52/sandbox/linux/seccomp-bpf-helpers/syscall_paramete
PTRACE_GETREGSET,
#endif
#if defined(__arm__)
-Index: chromium-135.0.7049.52/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
+Index: chromium-137.0.7151.55/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
-+++ chromium-135.0.7049.52/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
+--- chromium-137.0.7151.55.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
++++ chromium-137.0.7151.55/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 +413,10 @@ Index: chromium-135.0.7049.52/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
bool SyscallSets::IsGoogle3Threading(int sysno) {
switch (sysno) {
case __NR_getitimer:
-Index: chromium-135.0.7049.52/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
+Index: chromium-137.0.7151.55/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
-+++ chromium-135.0.7049.52/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
+--- chromium-137.0.7151.55.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
++++ chromium-137.0.7151.55/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
@@ -52,7 +52,7 @@ class SANDBOX_EXPORT SyscallSets {
#endif
@@ -464,10 +461,10 @@ Index: chromium-135.0.7049.52/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
static bool IsGoogle3Threading(int sysno);
};
-Index: chromium-135.0.7049.52/sandbox/linux/seccomp-bpf/syscall.cc
+Index: chromium-137.0.7151.55/sandbox/linux/seccomp-bpf/syscall.cc
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/linux/seccomp-bpf/syscall.cc
-+++ chromium-135.0.7049.52/sandbox/linux/seccomp-bpf/syscall.cc
+--- chromium-137.0.7151.55.orig/sandbox/linux/seccomp-bpf/syscall.cc
++++ chromium-137.0.7151.55/sandbox/linux/seccomp-bpf/syscall.cc
@@ -23,7 +23,7 @@ namespace sandbox {
namespace {
@@ -537,11 +534,11 @@ Index: chromium-135.0.7049.52/sandbox/linux/seccomp-bpf/syscall.cc
#else
#error "Unimplemented architecture"
#endif
-Index: chromium-135.0.7049.52/sandbox/linux/services/credentials.cc
+Index: chromium-137.0.7151.55/sandbox/linux/services/credentials.cc
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/linux/services/credentials.cc
-+++ chromium-135.0.7049.52/sandbox/linux/services/credentials.cc
-@@ -87,7 +87,7 @@ bool ChrootToSafeEmptyDir() {
+--- chromium-137.0.7151.55.orig/sandbox/linux/services/credentials.cc
++++ chromium-137.0.7151.55/sandbox/linux/services/credentials.cc
+@@ -90,7 +90,7 @@ bool ChrootToSafeEmptyDir() {
alignas(16) char stack_buf[PTHREAD_STACK_MIN_CONST];
#if defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARM_FAMILY) || \
@@ -550,10 +547,10 @@ Index: chromium-135.0.7049.52/sandbox/linux/services/credentials.cc
// The stack grows downward.
void* stack = stack_buf + sizeof(stack_buf);
#else
-Index: chromium-135.0.7049.52/sandbox/linux/services/syscall_wrappers.cc
+Index: chromium-137.0.7151.55/sandbox/linux/services/syscall_wrappers.cc
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/linux/services/syscall_wrappers.cc
-+++ chromium-135.0.7049.52/sandbox/linux/services/syscall_wrappers.cc
+--- chromium-137.0.7151.55.orig/sandbox/linux/services/syscall_wrappers.cc
++++ chromium-137.0.7151.55/sandbox/linux/services/syscall_wrappers.cc
@@ -66,7 +66,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 +560,11 @@ Index: chromium-135.0.7049.52/sandbox/linux/services/syscall_wrappers.cc
// CONFIG_CLONE_BACKWARDS defined.
return syscall(__NR_clone, flags, child_stack, ptid, tls, ctid);
#endif
-Index: chromium-135.0.7049.52/sandbox/linux/syscall_broker/broker_process.cc
+Index: chromium-137.0.7151.55/sandbox/linux/syscall_broker/broker_process.cc
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/linux/syscall_broker/broker_process.cc
-+++ chromium-135.0.7049.52/sandbox/linux/syscall_broker/broker_process.cc
-@@ -121,44 +121,46 @@ bool BrokerProcess::IsSyscallBrokerable(
+--- chromium-137.0.7151.55.orig/sandbox/linux/syscall_broker/broker_process.cc
++++ chromium-137.0.7151.55/sandbox/linux/syscall_broker/broker_process.cc
+@@ -120,44 +120,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 +618,7 @@ Index: chromium-135.0.7049.52/sandbox/linux/syscall_broker/broker_process.cc
case __NR_stat:
case __NR_lstat:
#endif
-@@ -168,7 +170,7 @@ bool BrokerProcess::IsSyscallBrokerable(
+@@ -167,7 +169,7 @@ bool BrokerProcess::IsSyscallBrokerable(
#if defined(__NR_fstatat64)
case __NR_fstatat64:
#endif
@@ -630,7 +627,7 @@ Index: chromium-135.0.7049.52/sandbox/linux/syscall_broker/broker_process.cc
case __NR_newfstatat:
#endif
return !fast_check || policy_->allowed_command_set.test(COMMAND_STAT);
-@@ -183,7 +185,7 @@ bool BrokerProcess::IsSyscallBrokerable(
+@@ -182,7 +184,7 @@ bool BrokerProcess::IsSyscallBrokerable(
return !fast_check || policy_->allowed_command_set.test(COMMAND_STAT);
#endif
@@ -639,10 +636,10 @@ Index: chromium-135.0.7049.52/sandbox/linux/syscall_broker/broker_process.cc
case __NR_unlink:
return !fast_check || policy_->allowed_command_set.test(COMMAND_UNLINK);
#endif
-Index: chromium-135.0.7049.52/sandbox/linux/system_headers/linux_seccomp.h
+Index: chromium-137.0.7151.55/sandbox/linux/system_headers/linux_seccomp.h
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/linux/system_headers/linux_seccomp.h
-+++ chromium-135.0.7049.52/sandbox/linux/system_headers/linux_seccomp.h
+--- chromium-137.0.7151.55.orig/sandbox/linux/system_headers/linux_seccomp.h
++++ chromium-137.0.7151.55/sandbox/linux/system_headers/linux_seccomp.h
@@ -39,6 +39,10 @@
#define EM_AARCH64 183
#endif
@@ -665,10 +662,10 @@ Index: chromium-135.0.7049.52/sandbox/linux/system_headers/linux_seccomp.h
// For prctl.h
#ifndef PR_SET_SECCOMP
#define PR_SET_SECCOMP 22
-Index: chromium-135.0.7049.52/sandbox/linux/system_headers/linux_signal.h
+Index: chromium-137.0.7151.55/sandbox/linux/system_headers/linux_signal.h
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/linux/system_headers/linux_signal.h
-+++ chromium-135.0.7049.52/sandbox/linux/system_headers/linux_signal.h
+--- chromium-137.0.7151.55.orig/sandbox/linux/system_headers/linux_signal.h
++++ chromium-137.0.7151.55/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 +675,10 @@ Index: chromium-135.0.7049.52/sandbox/linux/system_headers/linux_signal.h
#define LINUX_SIGHUP 1
#define LINUX_SIGINT 2
-Index: chromium-135.0.7049.52/sandbox/linux/system_headers/linux_stat.h
+Index: chromium-137.0.7151.55/sandbox/linux/system_headers/linux_stat.h
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/linux/system_headers/linux_stat.h
-+++ chromium-135.0.7049.52/sandbox/linux/system_headers/linux_stat.h
+--- chromium-137.0.7151.55.orig/sandbox/linux/system_headers/linux_stat.h
++++ chromium-137.0.7151.55/sandbox/linux/system_headers/linux_stat.h
@@ -150,7 +150,7 @@ struct kernel_stat {
int st_blocks;
int st_pad4[14];
@@ -691,10 +688,10 @@ Index: chromium-135.0.7049.52/sandbox/linux/system_headers/linux_stat.h
struct kernel_stat {
unsigned long st_dev;
unsigned long st_ino;
-Index: chromium-135.0.7049.52/sandbox/linux/system_headers/linux_syscalls.h
+Index: chromium-137.0.7151.55/sandbox/linux/system_headers/linux_syscalls.h
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/linux/system_headers/linux_syscalls.h
-+++ chromium-135.0.7049.52/sandbox/linux/system_headers/linux_syscalls.h
+--- chromium-137.0.7151.55.orig/sandbox/linux/system_headers/linux_syscalls.h
++++ chromium-137.0.7151.55/sandbox/linux/system_headers/linux_syscalls.h
@@ -35,5 +35,9 @@
#include "sandbox/linux/system_headers/arm64_linux_syscalls.h"
#endif
@@ -705,10 +702,10 @@ Index: chromium-135.0.7049.52/sandbox/linux/system_headers/linux_syscalls.h
+
#endif // SANDBOX_LINUX_SYSTEM_HEADERS_LINUX_SYSCALLS_H_
-Index: chromium-135.0.7049.52/sandbox/linux/system_headers/riscv64_linux_syscalls.h
+Index: chromium-137.0.7151.55/sandbox/linux/system_headers/riscv64_linux_syscalls.h
===================================================================
--- /dev/null
-+++ chromium-135.0.7049.52/sandbox/linux/system_headers/riscv64_linux_syscalls.h
++++ chromium-137.0.7151.55/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 +1933,10 @@ Index: chromium-135.0.7049.52/sandbox/linux/system_headers/riscv64_linux_syscall
+#endif
+
+#endif // SANDBOX_LINUX_SYSTEM_HEADERS_RISCV64_LINUX_SYSCALLS_H_
-Index: chromium-135.0.7049.52/sandbox/policy/linux/bpf_cdm_policy_linux.cc
+Index: chromium-137.0.7151.55/sandbox/policy/linux/bpf_cdm_policy_linux.cc
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/policy/linux/bpf_cdm_policy_linux.cc
-+++ chromium-135.0.7049.52/sandbox/policy/linux/bpf_cdm_policy_linux.cc
+--- chromium-137.0.7151.55.orig/sandbox/policy/linux/bpf_cdm_policy_linux.cc
++++ chromium-137.0.7151.55/sandbox/policy/linux/bpf_cdm_policy_linux.cc
@@ -33,7 +33,7 @@ ResultExpr CdmProcessPolicy::EvaluateSys
case __NR_ftruncate:
case __NR_fallocate:
@@ -1949,10 +1946,10 @@ Index: chromium-135.0.7049.52/sandbox/policy/linux/bpf_cdm_policy_linux.cc
case __NR_getrlimit:
#endif
#if defined(__i386__) || defined(__arm__)
-Index: chromium-135.0.7049.52/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
+Index: chromium-137.0.7151.55/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
-+++ chromium-135.0.7049.52/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
+--- chromium-137.0.7151.55.orig/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
++++ chromium-137.0.7151.55/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 +1959,10 @@ Index: chromium-135.0.7049.52/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux
case __NR_readlink:
case __NR_stat:
#endif
-Index: chromium-135.0.7049.52/sandbox/policy/linux/bpf_gpu_policy_linux.cc
+Index: chromium-137.0.7151.55/sandbox/policy/linux/bpf_gpu_policy_linux.cc
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/policy/linux/bpf_gpu_policy_linux.cc
-+++ chromium-135.0.7049.52/sandbox/policy/linux/bpf_gpu_policy_linux.cc
+--- chromium-137.0.7151.55.orig/sandbox/policy/linux/bpf_gpu_policy_linux.cc
++++ chromium-137.0.7151.55/sandbox/policy/linux/bpf_gpu_policy_linux.cc
@@ -72,7 +72,7 @@ ResultExpr GpuProcessPolicy::EvaluateSys
(defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
case __NR_ftruncate64:
@@ -1975,10 +1972,10 @@ Index: chromium-135.0.7049.52/sandbox/policy/linux/bpf_gpu_policy_linux.cc
case __NR_getdents:
#endif
case __NR_getdents64:
-Index: chromium-135.0.7049.52/sandbox/policy/linux/bpf_network_policy_linux.cc
+Index: chromium-137.0.7151.55/sandbox/policy/linux/bpf_network_policy_linux.cc
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/policy/linux/bpf_network_policy_linux.cc
-+++ chromium-135.0.7049.52/sandbox/policy/linux/bpf_network_policy_linux.cc
+--- chromium-137.0.7151.55.orig/sandbox/policy/linux/bpf_network_policy_linux.cc
++++ chromium-137.0.7151.55/sandbox/policy/linux/bpf_network_policy_linux.cc
@@ -260,7 +260,7 @@ ResultExpr NetworkProcessPolicy::Evaluat
case __NR_fdatasync:
case __NR_fsync:
@@ -1988,10 +1985,10 @@ Index: chromium-135.0.7049.52/sandbox/policy/linux/bpf_network_policy_linux.cc
case __NR_getdents:
#endif
case __NR_getdents64:
-Index: chromium-135.0.7049.52/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
+Index: chromium-137.0.7151.55/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
-+++ chromium-135.0.7049.52/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
+--- chromium-137.0.7151.55.orig/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
++++ chromium-137.0.7151.55/sandbox/policy/linux/bpf_print_compositor_policy_linux.cc
@@ -33,7 +33,7 @@ ResultExpr PrintCompositorProcessPolicy:
case __NR_fdatasync:
case __NR_fsync:
@@ -2001,10 +1998,10 @@ Index: chromium-135.0.7049.52/sandbox/policy/linux/bpf_print_compositor_policy_l
case __NR_getrlimit:
#endif
#if defined(__i386__) || defined(__arm__)
-Index: chromium-135.0.7049.52/sandbox/policy/linux/bpf_renderer_policy_linux.cc
+Index: chromium-137.0.7151.55/sandbox/policy/linux/bpf_renderer_policy_linux.cc
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/policy/linux/bpf_renderer_policy_linux.cc
-+++ chromium-135.0.7049.52/sandbox/policy/linux/bpf_renderer_policy_linux.cc
+--- chromium-137.0.7151.55.orig/sandbox/policy/linux/bpf_renderer_policy_linux.cc
++++ chromium-137.0.7151.55/sandbox/policy/linux/bpf_renderer_policy_linux.cc
@@ -85,7 +85,7 @@ ResultExpr RendererProcessPolicy::Evalua
case __NR_ftruncate64:
#endif
@@ -2014,10 +2011,10 @@ Index: chromium-135.0.7049.52/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-135.0.7049.52/sandbox/policy/linux/bpf_service_policy_linux.cc
+Index: chromium-137.0.7151.55/sandbox/policy/linux/bpf_service_policy_linux.cc
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/policy/linux/bpf_service_policy_linux.cc
-+++ chromium-135.0.7049.52/sandbox/policy/linux/bpf_service_policy_linux.cc
+--- chromium-137.0.7151.55.orig/sandbox/policy/linux/bpf_service_policy_linux.cc
++++ chromium-137.0.7151.55/sandbox/policy/linux/bpf_service_policy_linux.cc
@@ -26,7 +26,7 @@ ResultExpr ServiceProcessPolicy::Evaluat
return RestrictIoctl();
// Allow the system calls below.
@@ -2027,10 +2024,10 @@ Index: chromium-135.0.7049.52/sandbox/policy/linux/bpf_service_policy_linux.cc
case __NR_getrlimit:
#endif
#if defined(__i386__) || defined(__arm__)
-Index: chromium-135.0.7049.52/sandbox/policy/linux/bpf_utility_policy_linux.cc
+Index: chromium-137.0.7151.55/sandbox/policy/linux/bpf_utility_policy_linux.cc
===================================================================
---- chromium-135.0.7049.52.orig/sandbox/policy/linux/bpf_utility_policy_linux.cc
-+++ chromium-135.0.7049.52/sandbox/policy/linux/bpf_utility_policy_linux.cc
+--- chromium-137.0.7151.55.orig/sandbox/policy/linux/bpf_utility_policy_linux.cc
++++ chromium-137.0.7151.55/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-swiftshader.patch b/www-client/chromium/files/riscv-swiftshader.patch
index add43ca..3857fa9 100644
--- a/www-client/chromium/files/riscv-swiftshader.patch
+++ b/www-client/chromium/files/riscv-swiftshader.patch
@@ -1,20 +1,23 @@
-Index: chromium-135.0.7049.52/third_party/swiftshader/src/Reactor/BUILD.gn
+ndex: chromium-136.0.7103.113/third_party/swiftshader/src/Reactor/BUILD.gn
===================================================================
---- chromium-135.0.7049.52.orig/third_party/swiftshader/src/Reactor/BUILD.gn
-+++ chromium-135.0.7049.52/third_party/swiftshader/src/Reactor/BUILD.gn
-@@ -307,7 +307,7 @@ if (supports_subzero) {
+--- chromium-136.0.7103.113.orig/third_party/swiftshader/src/Reactor/BUILD.gn
++++ chromium-136.0.7103.113/third_party/swiftshader/src/Reactor/BUILD.gn
+@@ -307,7 +307,11 @@ if (supports_subzero) {
if (supports_llvm) {
swiftshader_source_set("swiftshader_llvm_reactor") {
-- llvm_dir = "../../third_party/llvm-10.0"
-+ llvm_dir = "../../third_party/llvm-16.0"
++ if (current_cpu == "riscv64") {
++ llvm_dir = "../../third_party/llvm-16.0"
++ } else {
+ llvm_dir = "../../third_party/llvm-10.0"
++ }
deps = [
":swiftshader_reactor_base",
-Index: chromium-135.0.7049.52/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn
+Index: chromium-136.0.7103.113/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn
===================================================================
---- chromium-135.0.7049.52.orig/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn
-+++ chromium-135.0.7049.52/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn
+--- chromium-136.0.7103.113.orig/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn
++++ chromium-136.0.7103.113/third_party/swiftshader/third_party/llvm-16.0/BUILD.gn
@@ -778,6 +778,7 @@ swiftshader_llvm_source_set("swiftshader
"llvm/lib/MC/MCContext.cpp",
"llvm/lib/MC/MCDXContainerStreamer.cpp",
diff --git a/www-client/chromium/files/riscv-tflite.patch b/www-client/chromium/files/riscv-tflite.patch
new file mode 100644
index 0000000..e9bb8a4
--- /dev/null
+++ b/www-client/chromium/files/riscv-tflite.patch
@@ -0,0 +1,14 @@
+Index: chromium-137.0.7151.55/third_party/tflite/features.gni
+===================================================================
+--- chromium-137.0.7151.55.orig/third_party/tflite/features.gni
++++ chromium-137.0.7151.55/third_party/tflite/features.gni
+@@ -8,7 +8,7 @@ import("//services/on_device_model/on_de
+
+ declare_args() {
+ # This enables building TFLite with XNNPACK.
+- build_tflite_with_xnnpack = current_cpu != "arm" && !is_fuchsia
++ build_tflite_with_xnnpack = current_cpu != "arm" && !is_fuchsia && current_cpu != "riscv64"
+
+ # Turns on TFLITE_WITH_RUY, using ruy as the gemm backend instead of gemmlowp.
+ build_tflite_with_ruy = true
+
diff --git a/www-client/chromium/files/riscv-v8.patch b/www-client/chromium/files/riscv-v8.patch
index 89f06ee..9e47b25 100644
--- a/www-client/chromium/files/riscv-v8.patch
+++ b/www-client/chromium/files/riscv-v8.patch
@@ -1,8 +1,8 @@
-ndex: chromium-136.0.7103.92/v8/gni/v8.gni
+Index: chromium-137.0.7151.55/v8/gni/v8.gni
===================================================================
---- chromium-136.0.7103.92.orig/v8/gni/v8.gni
-+++ chromium-136.0.7103.92/v8/gni/v8.gni
-@@ -233,7 +233,7 @@ assert(!(v8_enable_webassembly && v8_ena
+--- chromium-137.0.7151.55.orig/v8/gni/v8.gni
++++ chromium-137.0.7151.55/v8/gni/v8.gni
+@@ -234,7 +234,7 @@ assert(!(v8_enable_webassembly && v8_ena
if (v8_enable_pointer_compression == "") {
v8_enable_pointer_compression =
v8_current_cpu == "arm64" || v8_current_cpu == "x64" ||
@@ -11,77 +11,4 @@ ndex: chromium-136.0.7103.92/v8/gni/v8.gni
}
# The Wasm interpreter is currently supported only on arm64 and x64, on
-Index: chromium-136.0.7103.92/v8/src/codegen/riscv/assembler-riscv-inl.h
-===================================================================
---- chromium-136.0.7103.92.orig/v8/src/codegen/riscv/assembler-riscv-inl.h
-+++ chromium-136.0.7103.92/v8/src/codegen/riscv/assembler-riscv-inl.h
-@@ -115,8 +115,9 @@ void Assembler::set_target_compressed_ad
- Address pc, Address constant_pool, Tagged_t target,
- WritableJitAllocation* jit_allocation, ICacheFlushMode icache_flush_mode) {
- if (COMPRESS_POINTERS_BOOL) {
-- Assembler::set_uint32_constant_at(pc, constant_pool, target, jit_allocation,
-- icache_flush_mode);
-+ Assembler::set_uint32_constant_at(pc, constant_pool,
-+ static_cast<uint32_t>(target),
-+ jit_allocation, icache_flush_mode);
- } else {
- UNREACHABLE();
- }
-Index: chromium-136.0.7103.92/v8/src/execution/riscv/simulator-riscv.h
-===================================================================
---- chromium-136.0.7103.92.orig/v8/src/execution/riscv/simulator-riscv.h
-+++ chromium-136.0.7103.92/v8/src/execution/riscv/simulator-riscv.h
-@@ -538,6 +538,7 @@ class Simulator : public SimulatorBase {
- // Return central stack view, without additional safety margins.
- // Users, for example wasm::StackMemory, can add their own.
- base::Vector<uint8_t> GetCentralStackView() const;
-+ static constexpr int JSStackLimitMargin() { return kAdditionalStackMargin; }
-
- void IterateRegistersAndStack(::heap::base::StackVisitor* visitor);
-
-Index: chromium-136.0.7103.92/v8/src/maglev/riscv/maglev-ir-riscv.cc
-===================================================================
---- chromium-136.0.7103.92.orig/v8/src/maglev/riscv/maglev-ir-riscv.cc
-+++ chromium-136.0.7103.92/v8/src/maglev/riscv/maglev-ir-riscv.cc
-@@ -224,6 +224,40 @@ void CheckedIntPtrToInt32::GenerateCode(
- Operand(std::numeric_limits<int32_t>::min()));
- }
-
-+void CheckFloat64SameValue::SetValueLocationConstraints() {
-+ UseRegister(target_input());
-+ // We need two because LoadFPRImmediate needs to acquire one as well in the
-+ // case where value() is not 0.0 or -0.0.
-+ set_temporaries_needed((value().get_scalar() == 0) ? 1 : 2);
-+ set_double_temporaries_needed(
-+ value().is_nan() || (value().get_scalar() == 0) ? 0 : 1);
-+}
-+
-+void CheckFloat64SameValue::GenerateCode(MaglevAssembler* masm,
-+ const ProcessingState& state) {
-+ Label* fail = __ GetDeoptLabel(this, deoptimize_reason());
-+ MaglevAssembler::TemporaryRegisterScope temps(masm);
-+ DoubleRegister target = ToDoubleRegister(target_input());
-+ if (value().is_nan()) {
-+ __ JumpIfNotNan(target, fail);
-+ } else {
-+ DoubleRegister double_scratch = temps.AcquireScratchDouble();
-+ Register scratch = temps.AcquireScratch();
-+ __ Move(double_scratch, value().get_scalar());
-+ __ CompareF64(scratch, EQ, double_scratch, target);
-+ __ BranchFalseF(scratch, fail);
-+ if (value().get_scalar() == 0) { // +0.0 or -0.0.
-+ __ MacroAssembler::Move(scratch, target);
-+ __ And(scratch, scratch, Operand(1ULL << 63));
-+ if (value().get_bits() == 0) {
-+ __ BranchTrueF(scratch, fail);
-+ } else {
-+ __ BranchFalseF(scratch, fail);
-+ }
-+ }
-+ }
-+}
-+
- void Int32AddWithOverflow::SetValueLocationConstraints() {
- UseRegister(left_input());
- UseRegister(right_input());
^ permalink raw reply related [flat|nested] 10+ messages in thread
end of thread, other threads:[~2025-07-15 20:37 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-13 8:53 [gentoo-commits] proj/riscv:master commit in: www-client/chromium/files/, www-client/chromium/ Jakov Smolić
-- strict thread matches above, loose matches on Subject: below --
2025-07-15 20:37 Jakov Smolić
2025-04-15 14:44 Jakov Smolić
2025-04-06 20:32 Jakov Smolić
2025-01-28 11:21 Yixun Lan
2025-01-15 23:27 Jakov Smolić
2024-06-25 23:55 Yixun Lan
2024-04-12 4:09 Yixun Lan
2024-04-12 4:09 Yixun Lan
2021-12-14 9:25 Yixun Lan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox