* update chromium to 126.0.6478.126-1
This commit is contained in:
parent
70c7931832
commit
b9144214f8
@ -5,168 +5,117 @@
|
||||
# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
|
||||
|
||||
pkgname=chromium
|
||||
pkgver=120.0.6099.224
|
||||
pkgver=126.0.6478.126
|
||||
pkgrel=1
|
||||
_launcher_ver=8
|
||||
_manual_clone=0
|
||||
_archpower_patchset=120.0.1
|
||||
_system_clang=1
|
||||
pkgdesc="A web browser built for speed, simplicity, and security"
|
||||
arch=(x86_64 powerpc64le riscv64)
|
||||
url="https://www.chromium.org/Home"
|
||||
license=('BSD')
|
||||
license=('BSD-3-Clause')
|
||||
depends=('gtk3' 'nss' 'alsa-lib' 'xdg-utils' 'libxss' 'libcups' 'libgcrypt'
|
||||
'ttf-liberation' 'systemd' 'dbus' 'libpulse' 'pciutils' 'libva'
|
||||
'libffi' 'desktop-file-utils' 'hicolor-icon-theme')
|
||||
makedepends=('python' 'gn' 'ninja' 'clang' 'lld' 'gperf' 'pipewire'
|
||||
'java-runtime-headless' 'git')
|
||||
makedepends_powerpc64le=('nodejs')
|
||||
makedepends_riscv64=('nodejs')
|
||||
makedepends_x86_64=('nodejs')
|
||||
'ttf-liberation' 'systemd' 'dbus' 'libdrm' 'libpulse' 'openh264' 'pciutils' 'libva'
|
||||
'libffi' 'desktop-file-utils' 'hicolor-icon-theme' 'brotli' 'icu'
|
||||
'webrtc-audio-processing' 'jsoncpp' 'openjpeg2' 'libxslt' 'dav1d' 'woff2'
|
||||
'highway' 'snappy' 'minizip')
|
||||
makedepends=('python' 'gn' 'ninja' 'clang' 'lld' 'gperf' 'nodejs-lts-iron' 'npm' 'pipewire'
|
||||
'rust' 'qt5-base' 'qt6-base' 'java-runtime-headless' 'git' 'quilt' 'rollup'
|
||||
'libxnvctrl' 'elfutils')
|
||||
optdepends=('pipewire: WebRTC desktop sharing under Wayland'
|
||||
'kdialog: support for native dialogs in Plasma'
|
||||
'gtk4: for --gtk-version=4 (GTK4 IME might work better on Wayland)'
|
||||
'org.freedesktop.secrets: password storage backend on GNOME / Xfce'
|
||||
'kwallet: support for storing passwords in KWallet on Plasma')
|
||||
options=('!lto') # Chromium adds its own flags for ThinLTO
|
||||
source=(https://commondatastorage.googleapis.com/chromium-browser-official/chromium-$pkgver.tar.xz
|
||||
options=('!debug' '!lto') # Chromium adds its own flags for ThinLTO
|
||||
debian_chromium_version="126.0.6478.126-1~deb12u1"
|
||||
source=(http://ftp.de.debian.org/debian/pool/main/c/chromium/chromium_${pkgver}.orig.tar.xz
|
||||
https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver/chromium-launcher-$_launcher_ver.tar.gz
|
||||
https://gitlab.com/Matt.Jolly/chromium-patches/-/archive/${pkgver%%.*}/chromium-patches-${pkgver%%.*}.tar.bz2
|
||||
libxml2-2.12.patch
|
||||
icu-74.patch
|
||||
drop-flags-unsupported-by-clang16.patch
|
||||
allow-ANGLEImplementation-kVulkan.patch
|
||||
compiler-rt-adjust-paths.patch
|
||||
use-oauth2-client-switches-as-default.patch
|
||||
https://repo.archlinuxpower.org/distfiles/chromium/patchsets/archpower-chromium-patchset-${_archpower_patchset}.tar.zst{,.asc})
|
||||
validpgpkeys=(
|
||||
8D3D6CE8D4F0625F4D7109022205B7A06C2656A3 # Alexander Baleck <alex.bldck@gmail.com>
|
||||
)
|
||||
sha256sums=('850a85c8d8a01041a07dfaaea8289fa5f8294b4e375e6b77997b61434e0a2f1a'
|
||||
libpng-pdfium-compile-98.patch
|
||||
fix-swiftshader-compile.patch
|
||||
fix-breakpad-compile.patch
|
||||
chromium-117-material-color-include.patch
|
||||
http://ftp.de.debian.org/debian/pool/main/c/chromium/chromium_${debian_chromium_version}.debian.tar.xz
|
||||
https://repo.archlinuxpower.org/distfiles/chromium/chromium-126.0.6478.126-tflite_support.tar.zst
|
||||
chromium.desktop
|
||||
chromium.appdata.xml
|
||||
riscv-fix-rust-target.patch::https://github.com/riscv-forks/electron/raw/v31.0.1-riscv/patches/chromium/0005-Fix-Rust-target-triple-for-riscv64.patch
|
||||
riscv-v8-fix-perf-regression.patch
|
||||
riscv-sandbox.patch
|
||||
riscv-ffmpeg.patch
|
||||
riscv-dav1d.patch)
|
||||
sha256sums=('aa828cedf44c81e21282393b8436d9c75bb20f6427476d614649b0813bf5ee16'
|
||||
'213e50f48b67feb4441078d50b0fd431df34323be15be97c55302d3fdac4483a'
|
||||
'ffee1082fbe3d0c9e79dacb8405d5a0e1aa94d6745089a30b093f647354894d2'
|
||||
'1808df5ba4d1e2f9efa07ac6b510bec866fa6d60e44505d82aea3f6072105a71'
|
||||
'ff9ebd86b0010e1c604d47303ab209b1d76c3e888c423166779cefbc22de297f'
|
||||
'8d1cdf3ddd8ff98f302c90c13953f39cd804b3479b13b69b8ef138ac57c83556'
|
||||
'e393174d7695d0bafed69e868c5fbfecf07aa6969f3b64596d0bae8b067e1711'
|
||||
'e1282ee435f626600fa5a00dcbbf8b8ceb87db012f6dd945a62fdf2f7cefcae3'
|
||||
'SKIP')
|
||||
|
||||
if (( _manual_clone )); then
|
||||
source[0]=fetch-chromium-release
|
||||
makedepends+=('python-httplib2' 'python-pyparsing' 'python-six')
|
||||
fi
|
||||
|
||||
# Possible replacements are listed in build/linux/unbundle/replace_gn_files.py
|
||||
# Keys are the names in the above script; values are the dependencies in Arch
|
||||
declare -gA _system_libs=(
|
||||
#[brotli]=brotli
|
||||
[dav1d]=dav1d
|
||||
[libevent]=libevent
|
||||
#[ffmpeg]=ffmpeg # YouTube playback stopped working in Chromium 120
|
||||
[flac]=flac
|
||||
[fontconfig]=fontconfig
|
||||
[freetype]=freetype2
|
||||
[harfbuzz-ng]=harfbuzz
|
||||
[icu]=icu
|
||||
#[jsoncpp]=jsoncpp # needs libstdc++
|
||||
#[libaom]=aom
|
||||
#[libavif]=libavif # needs https://github.com/AOMediaCodec/libavif/commit/5410b23f76
|
||||
[libdrm]=
|
||||
[libjpeg]=libjpeg
|
||||
[libpng]=libpng
|
||||
#[libvpx]=libvpx
|
||||
[libwebp]=libwebp
|
||||
[libxml]=libxml2
|
||||
[libxslt]=libxslt
|
||||
[opus]=opus
|
||||
#[re2]=re2 # needs libstdc++
|
||||
#[snappy]=snappy # needs libstdc++
|
||||
#[woff2]=woff2 # needs libstdc++
|
||||
[zlib]=minizip
|
||||
)
|
||||
_unwanted_bundled_libs=(
|
||||
$(printf "%s\n" ${!_system_libs[@]} | sed 's/^libjpeg$/&_turbo/')
|
||||
)
|
||||
depends+=(${_system_libs[@]})
|
||||
|
||||
# Google API keys (see https://www.chromium.org/developers/how-tos/api-keys)
|
||||
# Note: These are for Arch Linux use ONLY. For your own distribution, please
|
||||
# get your own set of keys.
|
||||
#
|
||||
# Starting with Chromium 89 (2021-03-02) the OAuth2 credentials have been left
|
||||
# out: https://archlinux.org/news/chromium-losing-sync-support-in-early-march/
|
||||
_google_api_key=AIzaSyDwr302FpOSkGRpLlUpPThNTDPbXcIn_FM
|
||||
'8f81059d79040ec598b5fb077808ec69d26d6c9cbebf9c4f4ea48b388a2596c5'
|
||||
'b3de01b7df227478687d7517f61a777450dca765756002c80c4915f271e2d961'
|
||||
'a9b417b96daec33c9059065e15b3a92ae1bf4b59f89d353659b335d9e0379db6'
|
||||
'5569c938623f45008743cd2790e3895ae1fda75efbae13653500a4302dc562ba'
|
||||
'cb3a1051898ab7dea02bfccbed6b6aa8d9feb342da47eefcf567e8f1aa016289'
|
||||
'33ec8c74d34d7b568cd9f1b35ad316846c75a34cfcba301b95684cd934f33ad3'
|
||||
'c94785e3258be7ebdb50fdc40044cf65a91fdb11772eabe7a58e260757453cae'
|
||||
'9a9aae6d8371d22fcc0497db8dfd4fe8414d2f331a37e68c8b08517e7b3d4bfc'
|
||||
'df0c99c269c26061410079e13e0015d2e86f64f34088e0beaf294f3bc24d69d9'
|
||||
'6e49854d9fa380f6f39b8bed43ef643a188f6f37c4fdbdb1a9eb938882cba8de'
|
||||
'a3293e043ead274762f8afc443d297ce65429c76d9a8c68c101d3dea77781360'
|
||||
'9248bb9d12487fd763bc45524c5fc676580660a320a50436d200ab93afc844bd'
|
||||
'e03f824676649821de5c3362264b8f7028e8d6c3cc4ad3d6e9da531c398c2dd7'
|
||||
'1713cfc3c73d7f33fd7a9daba9b642869632468bc1068b727827a6b5320a7f88'
|
||||
'64333a3c3f5230d58066c2ca1daacccab311066485cd905d1c387b1bc2ba3dbf'
|
||||
'5689e9422624c8725509b6fdc277e20c3e8862cf515656faef7507978489bc4e')
|
||||
|
||||
prepare() {
|
||||
if (( _manual_clone )); then
|
||||
./fetch-chromium-release $pkgver
|
||||
fi
|
||||
cd chromium-$pkgver
|
||||
|
||||
# Allow building against system libraries in official builds
|
||||
sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
|
||||
tools/generate_shim_headers/generate_shim_headers.py
|
||||
|
||||
# https://crbug.com/893950
|
||||
sed -i -e 's/\<xmlMalloc\>/malloc/' -e 's/\<xmlFree\>/free/' \
|
||||
third_party/blink/renderer/core/xml/*.cc \
|
||||
third_party/blink/renderer/core/xml/parser/xml_document_parser.cc \
|
||||
third_party/libxml/chromium/*.cc \
|
||||
third_party/maldoca/src/maldoca/ole/oss_utils.h
|
||||
|
||||
# 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
|
||||
patch -Np1 -i ../use-oauth2-client-switches-as-default.patch
|
||||
|
||||
# Upstream fixes
|
||||
patch -Np1 -i ../libxml2-2.12.patch
|
||||
patch -Np1 -i ../allow-ANGLEImplementation-kVulkan.patch
|
||||
|
||||
# Fix build with ICU 74
|
||||
patch -Np1 -i ../icu-74.patch
|
||||
|
||||
# Drop compiler flags that need newer clang
|
||||
patch -Np1 -i ../drop-flags-unsupported-by-clang16.patch
|
||||
# Allow libclang_rt.builtins from compiler-rt >= 16 to be used
|
||||
patch -Np1 -i ../compiler-rt-adjust-paths.patch
|
||||
|
||||
# Fixes for building with libstdc++ instead of libc++
|
||||
patch -Np1 -i ../chromium-patches-*/chromium-119-at-spi-variable-consumption.patch
|
||||
patch -Np1 -i ../chromium-patches-*/chromium-119-clang16.patch
|
||||
patch -Np1 -i ../chromium-117-material-color-include.patch
|
||||
|
||||
case "${CARCH}" in
|
||||
powerpc64le|riscv64)
|
||||
sh ${srcdir}/archpower-chromium-patchset-${_archpower_patchset}/apply-${CARCH}.sh
|
||||
powerpc64le)
|
||||
sed 's@^bookworm/libxml-parseerr.patch@@g' \
|
||||
-i ../debian/patches/series
|
||||
sed 's@^system/rollup.patch.*@@g' \
|
||||
-i ../debian/patches/series
|
||||
sed 's@^debianization.*@@g' \
|
||||
-i ../debian/patches/series
|
||||
sed 's@^debian/patches/system/rollup.patch@@g' \
|
||||
-i ../debian/patches/series
|
||||
# 1-2-3 go
|
||||
export QUILT_PATCHES=../debian/patches
|
||||
quilt push -a
|
||||
;;
|
||||
riscv64)
|
||||
for rvpatch in riscv-{dav1d,fix-rust-target}.patch; do
|
||||
patch -Np1 -i ../$rvpatch
|
||||
done
|
||||
patch -Np1 -d v8 < ../riscv-v8-fix-perf-regression.patch
|
||||
patch -Np1 -d third_party/ffmpeg < ../riscv-ffmpeg.patch
|
||||
;;
|
||||
esac
|
||||
|
||||
# upstream does not ship vpx properly, regenerate
|
||||
case "${CARCH}" in
|
||||
powerpc64le|riscv64)
|
||||
pushd third_party/libvpx
|
||||
mkdir -p source/config/linux/ppc64
|
||||
sed -i -e "s|^update_readme||g; s|clang-format|${EPREFIX}/bin/true|g" generate_gni.sh
|
||||
./generate_gni.sh
|
||||
popd
|
||||
;;
|
||||
esac
|
||||
cp -ra /usr/lib/node_modules/rollup third_party/node/node_modules/
|
||||
|
||||
../debian/scripts/unbundle
|
||||
|
||||
cp -r ${srcdir}/tflite_support third_party/
|
||||
|
||||
# Link to system tools required by the build
|
||||
mkdir -p third_party/node/linux/node-linux-x64/bin
|
||||
ln -s /usr/bin/node third_party/node/linux/node-linux-x64/bin/
|
||||
ln -s /usr/bin/java third_party/jdk/current/bin/
|
||||
|
||||
# Remove bundled libraries for which we will use the system copies; this
|
||||
# *should* do what the remove_bundled_libraries.py script does, with the
|
||||
# added benefit of not having to list all the remaining libraries
|
||||
local _lib
|
||||
for _lib in ${_unwanted_bundled_libs[@]}; do
|
||||
find "third_party/$_lib" -type f \
|
||||
\! -path "third_party/$_lib/chromium/*" \
|
||||
\! -path "third_party/$_lib/google/*" \
|
||||
\! -path "third_party/harfbuzz-ng/utils/hb_scoped.h" \
|
||||
\! -regex '.*\.\(gn\|gni\|isolate\)' \
|
||||
-delete
|
||||
done
|
||||
|
||||
./build/linux/unbundle/replace_gn_files.py \
|
||||
--system-libraries "${!_system_libs[@]}"
|
||||
}
|
||||
|
||||
build() {
|
||||
@ -180,44 +129,80 @@ build() {
|
||||
export NM=nm
|
||||
|
||||
local _flags=(
|
||||
'custom_toolchain="//build/toolchain/linux/unbundle:default"'
|
||||
'host_toolchain="//build/toolchain/linux/unbundle:default"'
|
||||
'clang_base_path="/usr"'
|
||||
'clang_use_chrome_plugins=false'
|
||||
'is_official_build=true' # implies is_cfi=true on x86_64
|
||||
'symbol_level=0' # sufficient for backtraces on x86(_64)
|
||||
'chrome_pgo_phase=0' # needs newer clang to read the bundled PGO profile
|
||||
'treat_warnings_as_errors=false'
|
||||
'disable_fieldtrial_testing_config=true'
|
||||
'blink_enable_generated_code_formatting=false'
|
||||
'ffmpeg_branding="Chrome"'
|
||||
'proprietary_codecs=true'
|
||||
'rtc_use_pipewire=true'
|
||||
'link_pulseaudio=true'
|
||||
'use_custom_libcxx=true' # https://github.com/llvm/llvm-project/issues/61705
|
||||
'host_toolchain="//build/toolchain/linux/unbundle:default"'
|
||||
'custom_toolchain="//build/toolchain/linux/unbundle:default"'
|
||||
'is_debug=false'
|
||||
'use_goma=false'
|
||||
'use_sysroot=false'
|
||||
'use_system_libffi=true'
|
||||
'enable_hangout_services_extension=true'
|
||||
'enable_widevine=true'
|
||||
'use_libjpeg_turbo=true'
|
||||
'use_custom_libcxx=false'
|
||||
'use_unofficial_version_number=false'
|
||||
'enable_vr=false'
|
||||
'enable_nacl=false'
|
||||
'enable_rust=false'
|
||||
"google_api_key=\"$_google_api_key\""
|
||||
'use_qt=false'
|
||||
)
|
||||
|
||||
case "${CARCH}" in
|
||||
powerpc64le)
|
||||
_flags+=(
|
||||
'enable_swiftshader=false'
|
||||
'dawn_use_swiftshader=false'
|
||||
'build_dawn_tests=false'
|
||||
'enable_reading_list=false'
|
||||
'enable_iterator_debugging=false'
|
||||
'enable_hangout_services_extension=false'
|
||||
'angle_has_histograms=false'
|
||||
'angle_build_tests=false'
|
||||
'build_angle_perftests=false'
|
||||
'treat_warnings_as_errors=false'
|
||||
'use_qt6=true'
|
||||
'moc_qt6_path="/usr/lib/qt6"'
|
||||
'is_cfi=false'
|
||||
'use_thin_lto=false'
|
||||
'chrome_pgo_phase=0'
|
||||
'use_gio=true'
|
||||
'is_official_build=true'
|
||||
'symbol_level=0'
|
||||
'use_pulseaudio=true'
|
||||
'link_pulseaudio=true'
|
||||
'rtc_use_pipewire=true'
|
||||
'icu_use_data_file=false'
|
||||
'enable_widevine=true'
|
||||
'v8_enable_backtrace=true'
|
||||
'use_system_zlib=true'
|
||||
'use_system_lcms2=true'
|
||||
'use_system_libjpeg=true'
|
||||
'use_system_libpng=true'
|
||||
'use_system_freetype=true'
|
||||
'use_system_harfbuzz=true'
|
||||
'use_system_libopenjpeg2=true'
|
||||
'concurrent_links=1'
|
||||
'proprietary_codecs=true'
|
||||
'ffmpeg_branding="Chrome"'
|
||||
'disable_fieldtrial_testing_config=true'
|
||||
'safe_browsing_mode=1'
|
||||
'build_with_tflite_lib=true'
|
||||
'host_cpu="ppc64"'
|
||||
'use_v4l2_codec=false'
|
||||
'use_vaapi=true'
|
||||
'use_system_libdrm=true'
|
||||
'use_system_libffi=true'
|
||||
'enable_reporting=false'
|
||||
)
|
||||
;;
|
||||
esac
|
||||
|
||||
if [[ -n ${_system_libs[icu]+set} ]]; then
|
||||
_flags+=('icu_use_data_file=false')
|
||||
fi
|
||||
local _clang_version=$(
|
||||
clang --version | grep -m1 version | sed 's/.* \([0-9]\+\).*/\1/')
|
||||
|
||||
_flags+=(
|
||||
'clang_base_path="/usr"'
|
||||
'clang_use_chrome_plugins=false'
|
||||
"clang_version=\"$_clang_version\""
|
||||
'chrome_pgo_phase=0' # needs newer clang to read the bundled PGO profile
|
||||
)
|
||||
|
||||
# Allow the use of nightly features with stable Rust compiler
|
||||
# https://github.com/ungoogled-software/ungoogled-chromium/pull/2696#issuecomment-1918173198
|
||||
export RUSTC_BOOTSTRAP=1
|
||||
|
||||
_flags+=(
|
||||
'rust_sysroot_absolute="/usr"'
|
||||
"rustc_version=\"$(rustc --version)\""
|
||||
)
|
||||
|
||||
# Facilitate deterministic builds (taken from build/config/compiler/BUILD.gn)
|
||||
CFLAGS+=' -Wno-builtin-macro-redefined'
|
||||
@ -246,8 +231,10 @@ build() {
|
||||
# https://crbug.com/957519#c122
|
||||
CXXFLAGS=${CXXFLAGS/-Wp,-D_GLIBCXX_ASSERTIONS}
|
||||
|
||||
echo GN
|
||||
gn gen out/Release --args="${_flags[*]}"
|
||||
ninja ${MAKEFLAGS} -C out/Release chrome chrome_sandbox chromedriver.unstripped
|
||||
echo NINJA
|
||||
ninja -C out/Release chrome chrome_sandbox chromedriver
|
||||
}
|
||||
|
||||
package() {
|
||||
@ -259,10 +246,10 @@ package() {
|
||||
cd ../chromium-$pkgver
|
||||
|
||||
install -D out/Release/chrome "$pkgdir/usr/lib/chromium/chromium"
|
||||
install -D out/Release/chromedriver.unstripped "$pkgdir/usr/bin/chromedriver"
|
||||
install -D out/Release/chromedriver "$pkgdir/usr/bin/chromedriver"
|
||||
install -Dm4755 out/Release/chrome_sandbox "$pkgdir/usr/lib/chromium/chrome-sandbox"
|
||||
|
||||
install -Dm644 chrome/installer/linux/common/desktop.template \
|
||||
install -Dm644 ${srcdir}/chromium.desktop \
|
||||
"$pkgdir/usr/share/applications/chromium.desktop"
|
||||
install -Dm644 chrome/app/resources/manpage.1.in \
|
||||
"$pkgdir/usr/share/man/man1/chromium.1"
|
||||
@ -273,7 +260,7 @@ package() {
|
||||
"$pkgdir/usr/share/applications/chromium.desktop" \
|
||||
"$pkgdir/usr/share/man/man1/chromium.1"
|
||||
|
||||
install -Dm644 chrome/installer/linux/common/chromium-browser/chromium-browser.appdata.xml \
|
||||
install -Dm644 ${srcdir}/chromium.appdata.xml \
|
||||
"$pkgdir/usr/share/metainfo/chromium.appdata.xml"
|
||||
sed -ni \
|
||||
-e 's/chromium-browser\.desktop/chromium.desktop/' \
|
||||
@ -286,6 +273,8 @@ package() {
|
||||
chrome_100_percent.pak
|
||||
chrome_200_percent.pak
|
||||
chrome_crashpad_handler
|
||||
libqt5_shim.so
|
||||
libqt6_shim.so
|
||||
resources.pak
|
||||
v8_context_snapshot.bin
|
||||
|
||||
@ -306,10 +295,6 @@ package() {
|
||||
;;
|
||||
esac
|
||||
|
||||
if [[ -z ${_system_libs[icu]+set} ]]; then
|
||||
toplevel_files+=(icudtl.dat)
|
||||
fi
|
||||
|
||||
cp "${toplevel_files[@]/#/out/Release/}" "$pkgdir/usr/lib/chromium/"
|
||||
install -Dm644 -t "$pkgdir/usr/lib/chromium/locales" out/Release/locales/*.pak
|
||||
|
||||
|
48
chromium/allow-ANGLEImplementation-kVulkan.patch
Normal file
48
chromium/allow-ANGLEImplementation-kVulkan.patch
Normal file
@ -0,0 +1,48 @@
|
||||
From 9ca21ac45af570ce11a1b0b96fdb163985b59178 Mon Sep 17 00:00:00 2001
|
||||
From: Ho Cheung <hocheung@chromium.org>
|
||||
Date: Wed, 29 May 2024 00:10:25 +0000
|
||||
Subject: [PATCH] [ozone+wayland] Allow ANGLEImplementation::kVulkan when ozone
|
||||
platform is Wayland
|
||||
|
||||
When passing `gl=egl-angle,angle=vulkan` flags on
|
||||
a device with an AMD graphics card and using
|
||||
`ozone wayland`, since
|
||||
`gl::ANGLEImplementation::kVulkan` is not in
|
||||
`WaylandSurfaceFactory::GetAllowedGLImplementations`,
|
||||
As a result, it cannot be initialized normally.
|
||||
|
||||
This CL adds `gl::ANGLEImplementation::kVulkan` to
|
||||
`WaylandSurfaceFactory::GetAllowedGLImplementations`
|
||||
to ensure that it can be initialized normally.
|
||||
|
||||
In addition, the changes made in this CL have been
|
||||
verified by many developers or users in the Linux
|
||||
community, and should not break other things
|
||||
without passing specific flags.
|
||||
|
||||
Get VAAPI acceleration working on amdgpus,such as
|
||||
Radeon 780M.
|
||||
|
||||
Bug: 334275637,40722838,41392107
|
||||
Change-Id: Id1c9720159ee6149b620e12e5dc7b9df89d38409
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5568860
|
||||
Commit-Queue: Ho Cheung <hocheung@chromium.org>
|
||||
Reviewed-by: Kramer Ge <fangzhoug@chromium.org>
|
||||
Reviewed-by: Nick Yamane <nickdiego@igalia.com>
|
||||
Cr-Commit-Position: refs/heads/main@{#1307136}
|
||||
---
|
||||
ui/ozone/platform/wayland/gpu/wayland_surface_factory.cc | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/ui/ozone/platform/wayland/gpu/wayland_surface_factory.cc b/ui/ozone/platform/wayland/gpu/wayland_surface_factory.cc
|
||||
index b6e99324c02b..7602a6b8e693 100644
|
||||
--- a/ui/ozone/platform/wayland/gpu/wayland_surface_factory.cc
|
||||
+++ b/ui/ozone/platform/wayland/gpu/wayland_surface_factory.cc
|
||||
@@ -214,6 +214,7 @@ WaylandSurfaceFactory::GetAllowedGLImplementations() {
|
||||
impls.emplace_back(gl::ANGLEImplementation::kOpenGL);
|
||||
impls.emplace_back(gl::ANGLEImplementation::kOpenGLES);
|
||||
impls.emplace_back(gl::ANGLEImplementation::kSwiftShader);
|
||||
+ impls.emplace_back(gl::ANGLEImplementation::kVulkan);
|
||||
impls.emplace_back(gl::kGLImplementationEGLGLES2);
|
||||
}
|
||||
return impls;
|
24
chromium/chromium-117-material-color-include.patch
Normal file
24
chromium/chromium-117-material-color-include.patch
Normal file
@ -0,0 +1,24 @@
|
||||
Add missing cmath import in material-color-utilities
|
||||
|
||||
See: https://github.com/material-foundation/material-color-utilities/blob/main/cpp/palettes/tones.cc
|
||||
|
||||
--- a/third_party/material_color_utilities/src/cpp/palettes/tones.cc
|
||||
+++ b/third_party/material_color_utilities/src/cpp/palettes/tones.cc
|
||||
@@ -19,6 +19,8 @@
|
||||
#include "cpp/cam/cam.h"
|
||||
#include "cpp/cam/hct.h"
|
||||
|
||||
+#include <cmath>
|
||||
+
|
||||
namespace material_color_utilities {
|
||||
|
||||
TonalPalette::TonalPalette(Argb argb) : key_color_(0.0, 0.0, 0.0) {
|
||||
@@ -67,7 +69,7 @@ Hct TonalPalette::createKeyColor(double hue, double chroma) {
|
||||
// case where requested chroma is 16.51, and the closest chroma is 16.49.
|
||||
// Error is minimized, but when rounded and displayed, requested chroma
|
||||
// is 17, key color's chroma is 16.
|
||||
- if (round(chroma) == round(smallest_delta_hct.get_chroma())) {
|
||||
+ if (std::round(chroma) == std::round(smallest_delta_hct.get_chroma())) {
|
||||
return smallest_delta_hct;
|
||||
}
|
||||
Hct hct_add(hue, chroma, start_tone + delta);
|
25
chromium/chromium.appdata.xml
Normal file
25
chromium/chromium.appdata.xml
Normal file
@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<component type="desktop">
|
||||
<id>chromium.desktop</id>
|
||||
<metadata_license>CC0-1.0</metadata_license>
|
||||
<project_license>BSD-3-Clause and LGPL-2.1+ and Apache-2.0 and IJG and MIT and GPL-2.0+ and ISC and OpenSSL and (MPL-1.1 or GPL-2.0 or LGPL-2.0)</project_license>
|
||||
<name>Chromium Web Browser</name>
|
||||
<summary>The web browser from Chromium project</summary>
|
||||
<description>
|
||||
<p>
|
||||
Chromium is an open-source browser project that aims to build a safer, faster,
|
||||
and more stable way to experience the web.
|
||||
</p>
|
||||
</description>
|
||||
<url type="homepage">https://www.chromium.org/Home</url>
|
||||
<screenshots>
|
||||
<screenshot type="default">
|
||||
<image>https://www.gstatic.com/chrome/appstream/chrome-2.png</image>
|
||||
<caption/>
|
||||
</screenshot>
|
||||
</screenshots>
|
||||
<translation/>
|
||||
<developer_name>The Chromium Authors</developer_name>
|
||||
<url type="bugtracker">https://www.chromium.org/for-testers/bug-reporting-guidelines</url>
|
||||
<url type="help">https://chromium.googlesource.com/chromium/src/+/main/docs/linux/debugging.md</url>
|
||||
</component>
|
221
chromium/chromium.desktop
Normal file
221
chromium/chromium.desktop
Normal file
@ -0,0 +1,221 @@
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Name=Chromium
|
||||
# Only KDE 4 seems to use GenericName, so we reuse the KDE strings.
|
||||
# From Ubuntu's language-pack-kde-XX-base packages, version 9.04-20090413.
|
||||
GenericName=Web Browser
|
||||
GenericName[ar]=متصفح الشبكة
|
||||
GenericName[bg]=Уеб браузър
|
||||
GenericName[ca]=Navegador web
|
||||
GenericName[cs]=WWW prohlížeč
|
||||
GenericName[da]=Browser
|
||||
GenericName[de]=Web-Browser
|
||||
GenericName[el]=Περιηγητής ιστού
|
||||
GenericName[en_GB]=Web Browser
|
||||
GenericName[es]=Navegador web
|
||||
GenericName[et]=Veebibrauser
|
||||
GenericName[fi]=WWW-selain
|
||||
GenericName[fr]=Navigateur Web
|
||||
GenericName[gu]=વેબ બ્રાઉઝર
|
||||
GenericName[he]=דפדפן אינטרנט
|
||||
GenericName[hi]=वेब ब्राउज़र
|
||||
GenericName[hu]=Webböngésző
|
||||
GenericName[it]=Browser Web
|
||||
GenericName[ja]=ウェブブラウザ
|
||||
GenericName[kn]=ಜಾಲ ವೀಕ್ಷಕ
|
||||
GenericName[ko]=웹 브라우저
|
||||
GenericName[lt]=Žiniatinklio naršyklė
|
||||
GenericName[lv]=Tīmekļa pārlūks
|
||||
GenericName[ml]=വെബ് ബ്രൌസര്
|
||||
GenericName[mr]=वेब ब्राऊजर
|
||||
GenericName[nb]=Nettleser
|
||||
GenericName[nl]=Webbrowser
|
||||
GenericName[pl]=Przeglądarka WWW
|
||||
GenericName[pt]=Navegador Web
|
||||
GenericName[pt_BR]=Navegador da Internet
|
||||
GenericName[ro]=Navigator de Internet
|
||||
GenericName[ru]=Веб-браузер
|
||||
GenericName[sl]=Spletni brskalnik
|
||||
GenericName[sv]=Webbläsare
|
||||
GenericName[ta]=இணைய உலாவி
|
||||
GenericName[th]=เว็บเบราว์เซอร์
|
||||
GenericName[tr]=Web Tarayıcı
|
||||
GenericName[uk]=Навігатор Тенет
|
||||
GenericName[zh_CN]=网页浏览器
|
||||
GenericName[zh_HK]=網頁瀏覽器
|
||||
GenericName[zh_TW]=網頁瀏覽器
|
||||
# Not translated in KDE, from Epiphany 2.26.1-0ubuntu1.
|
||||
GenericName[bn]=ওয়েব ব্রাউজার
|
||||
GenericName[fil]=Web Browser
|
||||
GenericName[hr]=Web preglednik
|
||||
GenericName[id]=Browser Web
|
||||
GenericName[or]=ଓ୍ବେବ ବ୍ରାଉଜର
|
||||
GenericName[sk]=WWW prehliadač
|
||||
GenericName[sr]=Интернет прегледник
|
||||
GenericName[te]=మహాతల అన్వేషి
|
||||
GenericName[vi]=Bộ duyệt Web
|
||||
# Gnome and KDE 3 uses Comment.
|
||||
Comment=Access the Internet
|
||||
Comment[ar]=الدخول إلى الإنترنت
|
||||
Comment[bg]=Достъп до интернет
|
||||
Comment[bn]=ইন্টারনেটটি অ্যাক্সেস করুন
|
||||
Comment[ca]=Accedeix a Internet
|
||||
Comment[cs]=Přístup k internetu
|
||||
Comment[da]=Få adgang til internettet
|
||||
Comment[de]=Internetzugriff
|
||||
Comment[el]=Πρόσβαση στο Διαδίκτυο
|
||||
Comment[en_GB]=Access the Internet
|
||||
Comment[es]=Accede a Internet.
|
||||
Comment[et]=Pääs Internetti
|
||||
Comment[fi]=Käytä internetiä
|
||||
Comment[fil]=I-access ang Internet
|
||||
Comment[fr]=Accéder à Internet
|
||||
Comment[gu]=ઇંટરનેટ ઍક્સેસ કરો
|
||||
Comment[he]=גישה אל האינטרנט
|
||||
Comment[hi]=इंटरनेट तक पहुंच स्थापित करें
|
||||
Comment[hr]=Pristup Internetu
|
||||
Comment[hu]=Internetelérés
|
||||
Comment[id]=Akses Internet
|
||||
Comment[it]=Accesso a Internet
|
||||
Comment[ja]=インターネットにアクセス
|
||||
Comment[kn]=ಇಂಟರ್ನೆಟ್ ಅನ್ನು ಪ್ರವೇಶಿಸಿ
|
||||
Comment[ko]=인터넷 연결
|
||||
Comment[lt]=Interneto prieiga
|
||||
Comment[lv]=Piekļūt internetam
|
||||
Comment[ml]=ഇന്റര്നെറ്റ് ആക്സസ് ചെയ്യുക
|
||||
Comment[mr]=इंटरनेटमध्ये प्रवेश करा
|
||||
Comment[nb]=Gå til Internett
|
||||
Comment[nl]=Verbinding maken met internet
|
||||
Comment[or]=ଇଣ୍ଟର୍ନେଟ୍ ପ୍ରବେଶ କରନ୍ତୁ
|
||||
Comment[pl]=Skorzystaj z internetu
|
||||
Comment[pt]=Aceder à Internet
|
||||
Comment[pt_BR]=Acessar a internet
|
||||
Comment[ro]=Accesaţi Internetul
|
||||
Comment[ru]=Доступ в Интернет
|
||||
Comment[sk]=Prístup do siete Internet
|
||||
Comment[sl]=Dostop do interneta
|
||||
Comment[sr]=Приступите Интернету
|
||||
Comment[sv]=Gå ut på Internet
|
||||
Comment[ta]=இணையத்தை அணுகுதல்
|
||||
Comment[te]=ఇంటర్నెట్ను ఆక్సెస్ చెయ్యండి
|
||||
Comment[th]=เข้าถึงอินเทอร์เน็ต
|
||||
Comment[tr]=İnternet'e erişin
|
||||
Comment[uk]=Доступ до Інтернету
|
||||
Comment[vi]=Truy cập Internet
|
||||
Comment[zh_CN]=访问互联网
|
||||
Comment[zh_HK]=連線到網際網路
|
||||
Comment[zh_TW]=連線到網際網路
|
||||
Exec=/usr/bin/chromium %U
|
||||
StartupNotify=true
|
||||
Terminal=false
|
||||
Icon=chromium
|
||||
Type=Application
|
||||
Categories=Network;WebBrowser;
|
||||
MimeType=application/pdf;application/rdf+xml;application/rss+xml;application/xhtml+xml;application/xhtml_xml;application/xml;image/gif;image/jpeg;image/png;image/webp;text/html;text/xml;x-scheme-handler/http;x-scheme-handler/https;
|
||||
Actions=new-window;new-private-window;
|
||||
|
||||
[Desktop Action new-window]
|
||||
Name=New Window
|
||||
Name[am]=አዲስ መስኮት
|
||||
Name[ar]=نافذة جديدة
|
||||
Name[bg]=Нов прозорец
|
||||
Name[bn]=নতুন উইন্ডো
|
||||
Name[ca]=Finestra nova
|
||||
Name[cs]=Nové okno
|
||||
Name[da]=Nyt vindue
|
||||
Name[de]=Neues Fenster
|
||||
Name[el]=Νέο Παράθυρο
|
||||
Name[en_GB]=New Window
|
||||
Name[es]=Nueva ventana
|
||||
Name[et]=Uus aken
|
||||
Name[fa]=پنجره جدید
|
||||
Name[fi]=Uusi ikkuna
|
||||
Name[fil]=New Window
|
||||
Name[fr]=Nouvelle fenêtre
|
||||
Name[gu]=નવી વિંડો
|
||||
Name[hi]=नई विंडो
|
||||
Name[hr]=Novi prozor
|
||||
Name[hu]=Új ablak
|
||||
Name[id]=Jendela Baru
|
||||
Name[it]=Nuova finestra
|
||||
Name[iw]=חלון חדש
|
||||
Name[ja]=新規ウインドウ
|
||||
Name[kn]=ಹೊಸ ವಿಂಡೊ
|
||||
Name[ko]=새 창
|
||||
Name[lt]=Naujas langas
|
||||
Name[lv]=Jauns logs
|
||||
Name[ml]=പുതിയ വിന്ഡോ
|
||||
Name[mr]=नवीन विंडो
|
||||
Name[nl]=Nieuw venster
|
||||
Name[no]=Nytt vindu
|
||||
Name[pl]=Nowe okno
|
||||
Name[pt]=Nova janela
|
||||
Name[pt_BR]=Nova janela
|
||||
Name[ro]=Fereastră nouă
|
||||
Name[ru]=Новое окно
|
||||
Name[sk]=Nové okno
|
||||
Name[sl]=Novo okno
|
||||
Name[sr]=Нови прозор
|
||||
Name[sv]=Nytt fönster
|
||||
Name[sw]=Dirisha Jipya
|
||||
Name[ta]=புதிய சாளரம்
|
||||
Name[te]=క్రొత్త విండో
|
||||
Name[th]=หน้าต่างใหม่
|
||||
Name[tr]=Yeni Pencere
|
||||
Name[uk]=Нове вікно
|
||||
Name[vi]=Cửa sổ Mới
|
||||
Name[zh_CN]=新建窗口
|
||||
Name[zh_TW]=開新視窗
|
||||
Exec=/usr/bin/chromium
|
||||
|
||||
[Desktop Action new-private-window]
|
||||
Name=New Incognito Window
|
||||
Name[ar]=نافذة جديدة للتصفح المتخفي
|
||||
Name[bg]=Нов прозорец „инкогнито“
|
||||
Name[bn]=নতুন ছদ্মবেশী উইন্ডো
|
||||
Name[ca]=Finestra d'incògnit nova
|
||||
Name[cs]=Nové anonymní okno
|
||||
Name[da]=Nyt inkognitovindue
|
||||
Name[de]=Neues Inkognito-Fenster
|
||||
Name[el]=Νέο παράθυρο για ανώνυμη περιήγηση
|
||||
Name[en_GB]=New Incognito window
|
||||
Name[es]=Nueva ventana de incógnito
|
||||
Name[et]=Uus inkognito aken
|
||||
Name[fa]=پنجره جدید حالت ناشناس
|
||||
Name[fi]=Uusi incognito-ikkuna
|
||||
Name[fil]=Bagong Incognito window
|
||||
Name[fr]=Nouvelle fenêtre de navigation privée
|
||||
Name[gu]=નવી છુપી વિંડો
|
||||
Name[hi]=नई गुप्त विंडो
|
||||
Name[hr]=Novi anoniman prozor
|
||||
Name[hu]=Új Inkognitóablak
|
||||
Name[id]=Jendela Penyamaran baru
|
||||
Name[it]=Nuova finestra di navigazione in incognito
|
||||
Name[iw]=חלון חדש לגלישה בסתר
|
||||
Name[ja]=新しいシークレット ウィンドウ
|
||||
Name[kn]=ಹೊಸ ಅಜ್ಞಾತ ವಿಂಡೋ
|
||||
Name[ko]=새 시크릿 창
|
||||
Name[lt]=Naujas inkognito langas
|
||||
Name[lv]=Jauns inkognito režīma logs
|
||||
Name[ml]=പുതിയ വേഷ പ്രച്ഛന്ന വിന്ഡോ
|
||||
Name[mr]=नवीन गुप्त विंडो
|
||||
Name[nl]=Nieuw incognitovenster
|
||||
Name[no]=Nytt inkognitovindu
|
||||
Name[pl]=Nowe okno incognito
|
||||
Name[pt]=Nova janela de navegação anónima
|
||||
Name[pt_BR]=Nova janela anônima
|
||||
Name[ro]=Fereastră nouă incognito
|
||||
Name[ru]=Новое окно в режиме инкогнито
|
||||
Name[sk]=Nové okno inkognito
|
||||
Name[sl]=Novo okno brez beleženja zgodovine
|
||||
Name[sr]=Нови прозор за прегледање без архивирања
|
||||
Name[sv]=Nytt inkognitofönster
|
||||
Name[ta]=புதிய மறைநிலைச் சாளரம்
|
||||
Name[te]=క్రొత్త అజ్ఞాత విండో
|
||||
Name[th]=หน้าต่างใหม่ที่ไม่ระบุตัวตน
|
||||
Name[tr]=Yeni Gizli pencere
|
||||
Name[uk]=Нове вікно в режимі анонімного перегляду
|
||||
Name[vi]=Cửa sổ ẩn danh mới
|
||||
Name[zh_CN]=新建隐身窗口
|
||||
Name[zh_TW]=新增無痕式視窗
|
||||
Exec=/usr/bin/chromium --incognito
|
32
chromium/compiler-rt-adjust-paths.patch
Normal file
32
chromium/compiler-rt-adjust-paths.patch
Normal file
@ -0,0 +1,32 @@
|
||||
diff --git a/build/config/clang/BUILD.gn b/build/config/clang/BUILD.gn
|
||||
index d4de2e0cca0..57359c32121 100644
|
||||
--- a/build/config/clang/BUILD.gn
|
||||
+++ b/build/config/clang/BUILD.gn
|
||||
@@ -130,12 +130,15 @@ template("clang_lib") {
|
||||
} else if (is_linux || is_chromeos) {
|
||||
if (current_cpu == "x64") {
|
||||
_dir = "x86_64-unknown-linux-gnu"
|
||||
+ _suffix = "-x86_64"
|
||||
} else if (current_cpu == "x86") {
|
||||
_dir = "i386-unknown-linux-gnu"
|
||||
+ _suffix = "-i386"
|
||||
} else if (current_cpu == "arm") {
|
||||
_dir = "armv7-unknown-linux-gnueabihf"
|
||||
} else if (current_cpu == "arm64") {
|
||||
_dir = "aarch64-unknown-linux-gnu"
|
||||
+ _suffix = "-aarch64"
|
||||
} else {
|
||||
assert(false) # Unhandled cpu type
|
||||
}
|
||||
@@ -166,6 +169,11 @@ template("clang_lib") {
|
||||
assert(false) # Unhandled target platform
|
||||
}
|
||||
|
||||
+ # Bit of a hack to make this find builtins from compiler-rt >= 16
|
||||
+ if (is_linux || is_chromeos) {
|
||||
+ _dir = "linux"
|
||||
+ }
|
||||
+
|
||||
_clang_lib_dir = "$clang_base_path/lib/clang/$clang_version/lib"
|
||||
_lib_file = "${_prefix}clang_rt.${_libname}${_suffix}.${_ext}"
|
||||
libs = [ "$_clang_lib_dir/$_dir/$_lib_file" ]
|
@ -1,51 +0,0 @@
|
||||
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
|
||||
index 80bc79e5fb3..13b200e4cb0 100644
|
||||
--- a/build/config/compiler/BUILD.gn
|
||||
+++ b/build/config/compiler/BUILD.gn
|
||||
@@ -616,24 +616,6 @@ config("compiler") {
|
||||
}
|
||||
}
|
||||
|
||||
- # TODO(crbug.com/1488374): This causes binary size growth and potentially
|
||||
- # other problems.
|
||||
- # TODO(crbug.com/1491036): This isn't supported by Cronet's mainline llvm version.
|
||||
- if (default_toolchain != "//build/toolchain/cros:target" &&
|
||||
- !llvm_android_mainline) {
|
||||
- cflags += [
|
||||
- "-mllvm",
|
||||
- "-split-threshold-for-reg-with-hint=0",
|
||||
- ]
|
||||
- if (use_thin_lto && is_a_target_toolchain) {
|
||||
- if (is_win) {
|
||||
- ldflags += [ "-mllvm:-split-threshold-for-reg-with-hint=0" ]
|
||||
- } else {
|
||||
- ldflags += [ "-Wl,-mllvm,-split-threshold-for-reg-with-hint=0" ]
|
||||
- }
|
||||
- }
|
||||
- }
|
||||
-
|
||||
# TODO(crbug.com/1235145): Investigate why/if this should be needed.
|
||||
if (is_win) {
|
||||
cflags += [ "/clang:-ffp-contract=off" ]
|
||||
@@ -768,7 +750,6 @@ config("compiler") {
|
||||
ldflags += [
|
||||
"/opt:lldltojobs=all",
|
||||
"-mllvm:-import-instr-limit=$import_instr_limit",
|
||||
- "-mllvm:-disable-auto-upgrade-debug-info",
|
||||
]
|
||||
} else {
|
||||
ldflags += [ "-flto=thin" ]
|
||||
@@ -800,13 +781,6 @@ config("compiler") {
|
||||
if (is_apple) {
|
||||
ldflags += [ "-Wcrl,object_path_lto" ]
|
||||
}
|
||||
- if (!is_chromeos) {
|
||||
- # TODO(https://crbug.com/972449): turn on for ChromeOS when that
|
||||
- # toolchain has this flag.
|
||||
- # We only use one version of LLVM within a build so there's no need to
|
||||
- # upgrade debug info, which can be expensive since it runs the verifier.
|
||||
- ldflags += [ "-Wl,-mllvm,-disable-auto-upgrade-debug-info" ]
|
||||
- }
|
||||
}
|
||||
|
||||
# TODO(https://crbug.com/1211155): investigate why this isn't effective on
|
29
chromium/fix-breakpad-compile.patch
Normal file
29
chromium/fix-breakpad-compile.patch
Normal file
@ -0,0 +1,29 @@
|
||||
Index: chromium-98.0.4758.80/third_party/breakpad/BUILD.gn
|
||||
===================================================================
|
||||
--- chromium-98.0.4758.80.orig/third_party/breakpad/BUILD.gn
|
||||
+++ chromium-98.0.4758.80/third_party/breakpad/BUILD.gn
|
||||
@@ -623,7 +623,6 @@ if (is_linux || is_chromeos || is_android) {
|
||||
"breakpad/src/client/minidump_file_writer.h",
|
||||
"breakpad/src/common/convert_UTF.cc",
|
||||
"breakpad/src/common/convert_UTF.h",
|
||||
- "breakpad/src/common/linux/breakpad_getcontext.S",
|
||||
"breakpad/src/common/linux/elf_core_dump.cc",
|
||||
"breakpad/src/common/linux/elf_core_dump.h",
|
||||
"breakpad/src/common/linux/elfutils.cc",
|
||||
@@ -655,6 +654,8 @@ if (is_linux || is_chromeos || is_android) {
|
||||
configs += [ "//build/config/compiler:no_chromium_code" ]
|
||||
public_configs = [ ":client_config" ]
|
||||
|
||||
+ defines = [ "HAVE_GETCONTEXT" ]
|
||||
+
|
||||
if (current_cpu == "arm" && is_chromeos_ash) {
|
||||
# Avoid running out of registers in
|
||||
# linux_syscall_support.h:sys_clone()'s inline assembly.
|
||||
@@ -712,7 +713,6 @@ if (is_linux || is_chromeos || is_android) {
|
||||
"breakpad/src/client/linux/minidump_writer/minidump_writer_unittest.cc",
|
||||
"breakpad/src/client/linux/minidump_writer/minidump_writer_unittest_utils.cc",
|
||||
"breakpad/src/client/linux/minidump_writer/proc_cpuinfo_reader_unittest.cc",
|
||||
- "breakpad/src/common/linux/breakpad_getcontext_unittest.cc",
|
||||
"breakpad/src/common/linux/elf_core_dump_unittest.cc",
|
||||
"breakpad/src/common/linux/file_id_unittest.cc",
|
||||
"breakpad/src/common/linux/linux_libc_support_unittest.cc",
|
26
chromium/fix-swiftshader-compile.patch
Normal file
26
chromium/fix-swiftshader-compile.patch
Normal file
@ -0,0 +1,26 @@
|
||||
--- chromium-101.0.4951.54/third_party/swiftshader/third_party/llvm-10.0/BUILD.gn.orig 2022-05-15 10:30:50.887333316 +0200
|
||||
+++ chromium-101.0.4951.54/third_party/swiftshader/third_party/llvm-10.0/BUILD.gn 2022-05-15 10:31:43.477318032 +0200
|
||||
@@ -131,7 +131,6 @@
|
||||
if (is_ubsan_vptr) {
|
||||
sources = [
|
||||
"llvm/lib/MC/MCWasmObjectTargetWriter.cpp",
|
||||
- "llvm/lib/MC/MCXCOFFObjectTargetWriter.cpp",
|
||||
"llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp",
|
||||
"llvm/lib/Target/TargetIntrinsicInfo.cpp",
|
||||
]
|
||||
@@ -579,6 +578,7 @@
|
||||
"llvm/lib/MC/MCAsmInfoCOFF.cpp",
|
||||
"llvm/lib/MC/MCAsmInfoDarwin.cpp",
|
||||
"llvm/lib/MC/MCAsmInfoELF.cpp",
|
||||
+ "llvm/lib/MC/MCAsmInfoXCOFF.cpp",
|
||||
"llvm/lib/MC/MCAsmMacro.cpp",
|
||||
"llvm/lib/MC/MCAsmStreamer.cpp",
|
||||
"llvm/lib/MC/MCAssembler.cpp",
|
||||
@@ -633,6 +633,7 @@
|
||||
"llvm/lib/MC/MCWin64EH.cpp",
|
||||
"llvm/lib/MC/MCWinCOFFStreamer.cpp",
|
||||
"llvm/lib/MC/MCWinEH.cpp",
|
||||
+ "llvm/lib/MC/MCXCOFFObjectTargetWriter.cpp",
|
||||
"llvm/lib/MC/MCXCOFFStreamer.cpp",
|
||||
"llvm/lib/MC/MachObjectWriter.cpp",
|
||||
"llvm/lib/MC/StringTableBuilder.cpp",
|
@ -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
|
13
chromium/libpng-pdfium-compile-98.patch
Normal file
13
chromium/libpng-pdfium-compile-98.patch
Normal file
@ -0,0 +1,13 @@
|
||||
Index: chromium-98.0.4758.80/third_party/pdfium/BUILD.gn
|
||||
===================================================================
|
||||
--- chromium-98.0.4758.80.orig/third_party/pdfium/BUILD.gn
|
||||
+++ chromium-98.0.4758.80/third_party/pdfium/BUILD.gn
|
||||
@@ -16,7 +16,7 @@
|
||||
}
|
||||
|
||||
config("pdfium_common_config") {
|
||||
- cflags = []
|
||||
+ cflags = [ "-DPNG_POWERPC_VSX_OPT=0" ]
|
||||
cflags_cc = []
|
||||
ldflags = []
|
||||
include_dirs = [ "." ]
|
@ -1,42 +0,0 @@
|
||||
From 871f8ae9b65ce2679b0bc0be36902d65edf0c1e4 Mon Sep 17 00:00:00 2001
|
||||
From: Joey Arhar <jarhar@chromium.org>
|
||||
Date: Thu, 2 Nov 2023 20:45:11 +0000
|
||||
Subject: [PATCH] Roll libxml from b8961a75 to 7a2d412f
|
||||
|
||||
Bug: 934413
|
||||
Change-Id: I6fb176d76dba9a9adf411395fa5f6b950b52920a
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4985186
|
||||
Reviewed-by: David Baron <dbaron@chromium.org>
|
||||
Commit-Queue: Joey Arhar <jarhar@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#1219084}
|
||||
---
|
||||
third_party/blink/renderer/core/xml/xslt_processor.h | 2 +-
|
||||
third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/third_party/blink/renderer/core/xml/xslt_processor.h b/third_party/blink/renderer/core/xml/xslt_processor.h
|
||||
index d53835e9675..2eaea31ed29 100644
|
||||
--- a/third_party/blink/renderer/core/xml/xslt_processor.h
|
||||
+++ b/third_party/blink/renderer/core/xml/xslt_processor.h
|
||||
@@ -77,7 +77,7 @@ class XSLTProcessor final : public ScriptWrappable {
|
||||
|
||||
void reset();
|
||||
|
||||
- static void ParseErrorFunc(void* user_data, xmlError*);
|
||||
+ static void ParseErrorFunc(void* user_data, const xmlError*);
|
||||
static void GenericErrorFunc(void* user_data, const char* msg, ...);
|
||||
|
||||
// Only for libXSLT callbacks
|
||||
diff --git a/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc b/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc
|
||||
index 133e0b3355d..f424077089d 100644
|
||||
--- a/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc
|
||||
+++ b/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc
|
||||
@@ -66,7 +66,7 @@ void XSLTProcessor::GenericErrorFunc(void*, const char*, ...) {
|
||||
// It would be nice to do something with this error message.
|
||||
}
|
||||
|
||||
-void XSLTProcessor::ParseErrorFunc(void* user_data, xmlError* error) {
|
||||
+void XSLTProcessor::ParseErrorFunc(void* user_data, const xmlError* error) {
|
||||
FrameConsole* console = static_cast<FrameConsole*>(user_data);
|
||||
if (!console)
|
||||
return;
|
53
chromium/riscv-dav1d.patch
Normal file
53
chromium/riscv-dav1d.patch
Normal file
@ -0,0 +1,53 @@
|
||||
Index: chromium-113.0.5672.92/third_party/dav1d/config/linux/riscv64/config.h
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ chromium-113.0.5672.92/third_party/dav1d/config/linux/riscv64/config.h
|
||||
@@ -0,0 +1,48 @@
|
||||
+/*
|
||||
+ * Autogenerated by the Meson build system.
|
||||
+ * Do not edit, your changes will be lost.
|
||||
+ */
|
||||
+
|
||||
+#pragma once
|
||||
+
|
||||
+#define ARCH_AARCH64 0
|
||||
+
|
||||
+#define ARCH_ARM 0
|
||||
+
|
||||
+#define ARCH_PPC64LE 0
|
||||
+
|
||||
+#define ARCH_X86 0
|
||||
+
|
||||
+#define ARCH_X86_32 0
|
||||
+
|
||||
+#define ARCH_X86_64 0
|
||||
+
|
||||
+#define CONFIG_16BPC 1
|
||||
+
|
||||
+#define CONFIG_8BPC 1
|
||||
+
|
||||
+// #define CONFIG_LOG 1 -- Logging is controlled by Chromium
|
||||
+
|
||||
+#define ENDIANNESS_BIG 0
|
||||
+
|
||||
+#define HAVE_ASM 0
|
||||
+
|
||||
+#define HAVE_AS_FUNC 0
|
||||
+
|
||||
+#define HAVE_C11_GENERIC 1
|
||||
+
|
||||
+#define HAVE_CLOCK_GETTIME 1
|
||||
+
|
||||
+#define HAVE_DLSYM 1
|
||||
+
|
||||
+#define HAVE_GETAUXVAL 1
|
||||
+
|
||||
+#define HAVE_POSIX_MEMALIGN 1
|
||||
+
|
||||
+// #define HAVE_PTHREAD_GETAFFINITY_NP 1 -- Controlled by Chomium
|
||||
+
|
||||
+// #define HAVE_PTHREAD_SETAFFINITY_NP 1 -- Controlled by Chomium
|
||||
+
|
||||
+#define HAVE_UNISTD_H 1
|
||||
+
|
||||
+#define TRIM_DSP_FUNCTIONS 1
|
11723
chromium/riscv-ffmpeg.patch
Normal file
11723
chromium/riscv-ffmpeg.patch
Normal file
File diff suppressed because it is too large
Load Diff
2175
chromium/riscv-sandbox.patch
Normal file
2175
chromium/riscv-sandbox.patch
Normal file
File diff suppressed because it is too large
Load Diff
41
chromium/riscv-v8-fix-perf-regression.patch
Normal file
41
chromium/riscv-v8-fix-perf-regression.patch
Normal file
@ -0,0 +1,41 @@
|
||||
From a3cc8522a4c82e6d76bcd134c01dc04c55c6fdd2 Mon Sep 17 00:00:00 2001
|
||||
From: Levi Zim <rsworktech@outlook.com>
|
||||
Date: Mon, 10 Jun 2024 10:06:27 +0800
|
||||
Subject: [PATCH] [riscv] avoid cpu probing in li_ptr
|
||||
|
||||
CPU probing is an expensive thing to do and we should avoid doing it upon every li_ptr call.
|
||||
|
||||
Fixes performance regresion bisected in https://github.com/riscv-forks/electron/issues/1
|
||||
|
||||
Change-Id: Ib5ff89b2a730e08de6735123ae60adeffe811ed8
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5612950
|
||||
Commit-Queue: Yahan Lu <yahan@iscas.ac.cn>
|
||||
Reviewed-by: Yahan Lu <yahan@iscas.ac.cn>
|
||||
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#94349}
|
||||
---
|
||||
|
||||
diff --git a/AUTHORS b/AUTHORS
|
||||
index e437b26..e53a657 100644
|
||||
--- a/AUTHORS
|
||||
+++ b/AUTHORS
|
||||
@@ -183,6 +183,7 @@
|
||||
Keyhan Vakil <kvakil@googlecontrib.kvakil.me>
|
||||
Kris Selden <kris.selden@gmail.com>
|
||||
Kyounga Ra <kyounga@alticast.com>
|
||||
+Levi Zim <rsworktech@outlook.com>
|
||||
Loo Rong Jie <loorongjie@gmail.com>
|
||||
Lu Yahan <yahan@iscas.ac.cn>
|
||||
Ludovic Mermod <ludovic.mermod@gmail.com>
|
||||
diff --git a/src/codegen/riscv/assembler-riscv.cc b/src/codegen/riscv/assembler-riscv.cc
|
||||
index 5c54f46..028e019 100644
|
||||
--- a/src/codegen/riscv/assembler-riscv.cc
|
||||
+++ b/src/codegen/riscv/assembler-riscv.cc
|
||||
@@ -1104,7 +1104,6 @@
|
||||
}
|
||||
|
||||
void Assembler::li_ptr(Register rd, int64_t imm) {
|
||||
- base::CPU cpu;
|
||||
// Initialize rd with an address
|
||||
// Pointers are 48 bits
|
||||
// 6 fixed instructions are generated
|
@ -1,17 +1,18 @@
|
||||
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 {
|
||||
|
||||
diff --git a/google_apis/google_api_keys-inc.cc b/google_apis/google_api_keys-inc.cc
|
||||
index 4d13e697a54d..61aac7b48662 100644
|
||||
--- 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), nullptr,
|
||||
+ STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), ::switches::kOAuth2ClientID,
|
||||
std::string(), environment.get(), command_line, gaia_config);
|
||||
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), nullptr,
|
||||
+ STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), ::switches::kOAuth2ClientSecret,
|
||||
std::string(), environment.get(), command_line, gaia_config);
|
||||
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
|
||||
|
Loading…
x
Reference in New Issue
Block a user