Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions meta-chromium/recipes-browser/chromium/chromium-gn.inc
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ SRC_URI += "\
${@ '' if rust_is_newer_than_190(d) else 'file://chromium-142-crabbyavif-rust18x.patch'} \
file://fix-SYS_SECCOMP-redefinition.patch \
file://use-adler2.patch \
file://chromium-145-zip_ffi_glue-use-edition2024.patch \
"

# ARM/AArch64-specific patches.
Expand Down Expand Up @@ -515,6 +516,13 @@ addtask copy_target_rustlibs after do_configure before do_compile

do_configure() {
cd ${S}

# Fix potential failure for the NodeJS version check.
# Chromium is tested against a specific NodeJS version but it works
# with slightly older versions, too.
NODE_VERSION=$(node -v)
sed -i s/^NODE_VERSION=.*/NODE_VERSION=\"$NODE_VERSION\"/g third_party/node/update_node_binaries

python3 ./build/linux/unbundle/replace_gn_files.py --system-libraries ${GN_UNBUNDLE_LIBS}

# Add Rust-style target triples (converted by Yocto's rust-common.bbclass)
Expand Down
11 changes: 6 additions & 5 deletions meta-chromium/recipes-browser/chromium/chromium.inc
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ HOMEPAGE = "https://www.chromium.org/Home"
CVE_PRODUCT = "chromium:chromium google:chrome"

SRC_URI = "https://commondatastorage.googleapis.com/chromium-browser-official/chromium-${PV}.tar.xz"
SRC_URI[sha256sum] = "424d6c3118f757ab6748ab32a610e0cc026a738004646b07f842615f89252c3f"
SRC_URI[sha256sum] = "67cea4991881f3532cdd1d3a4207427d398ee32fa8dca5db5a03fab08a9b09da"
S = "${UNPACKDIR}/chromium-${PV}"

# GCC is not tested or officially supported upstream, and supporting it here
Expand Down Expand Up @@ -162,6 +162,7 @@ LIC_FILES_CHKSUM = "\
file://${S}/third_party/android_deps/autorolled/committed/libs/org_checkerframework_checker_qual/LICENSE;md5=41d84637c348061d361a75c8fd685c14 \
file://${S}/third_party/android_deps/autorolled/committed/libs/org_checkerframework_checker_util/LICENSE;md5=87abbc18e66acb445c00810347051776 \
file://${S}/third_party/android_deps/autorolled/committed/libs/org_codehaus_mojo_animal_sniffer_annotations/LICENSE;md5=a5dd953e661e22a77f7b8062ae790f6a \
file://${S}/third_party/android_deps/autorolled/committed/libs/org_jetbrains_kotlinx_atomicfu_jvm/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
file://${S}/third_party/android_deps/autorolled/committed/libs/org_jetbrains_kotlinx_kotlinx_coroutines_android/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
file://${S}/third_party/android_deps/autorolled/committed/libs/org_jetbrains_kotlinx_kotlinx_coroutines_core_jvm/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
file://${S}/third_party/android_deps/autorolled/committed/libs/org_jetbrains_kotlinx_kotlinx_coroutines_play_services/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
Expand All @@ -171,7 +172,6 @@ LIC_FILES_CHKSUM = "\
file://${S}/third_party/android_deps/autorolled/committed/libs/org_reactivestreams_reactive_streams/LICENSE;md5=e58c24d18490515b4c3001f330261afc \
file://${S}/third_party/android_deps/libs/org_jetbrains_kotlin_kotlin_android_extensions_runtime/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
file://${S}/third_party/android_deps/libs/org_jetbrains_kotlin_kotlin_parcelize_runtime/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
file://${S}/third_party/android_deps/libs/org_jetbrains_kotlinx_atomicfu_jvm/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
file://${S}/third_party/android_deps/libs/org_jetbrains_kotlinx_kotlinx_coroutines_guava/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
file://${S}/third_party/android_media/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
file://${S}/third_party/android_opengl/LICENSE;md5=d10e92761a860d4113a7a525c78daf13 \
Expand Down Expand Up @@ -453,7 +453,7 @@ LIC_FILES_CHKSUM = "\
file://${S}/third_party/fast_float/src/LICENSE-MIT;md5=32b11d50c7d9788d4270f6a83f3e68eb \
file://${S}/third_party/fdlibm/LICENSE;md5=b17367d6c97e638599071d99a3049dfe \
file://${S}/third_party/federated_compute/src/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
file://${S}/third_party/ffmpeg/CREDITS.chromium;md5=331b973a7612318cb2a0e01629ca7e52 \
file://${S}/third_party/ffmpeg/CREDITS.chromium;md5=b7cbca23ed0604649b2111e6e9d21ea6 \
file://${S}/third_party/fft2d/LICENSE;md5=a062f975da2ca26745be122d5a0b1356 \
file://${S}/third_party/flac/COPYING.Xiph;md5=3d6da238b5b57a0965d6730291119f65 \
file://${S}/third_party/flatbuffers/LICENSE;md5=a873c5645c184d51e0f9b34e1d7cf559 \
Expand Down Expand Up @@ -522,6 +522,7 @@ LIC_FILES_CHKSUM = "\
file://${S}/third_party/libyuv/LICENSE;md5=464282cfb405b005b9637f11103a7325 \
file://${S}/third_party/libzip/LICENSE;md5=6bb2408fd544544b86946e67ec2da9a0 \
file://${S}/third_party/lit/LICENSE;md5=4b390b7b932ca7872d1de2c834797cad \
file://${S}/third_party/litert/LICENSE;md5=86d3f3a95c324c9479bd8986968f4327 \
file://${S}/third_party/llvm-libc/src/LICENSE.TXT;md5=ff42885ed2ab98f1ecb8c1fc41205343 \
file://${S}/third_party/lottie/LICENSE;md5=827837648055a0bfb7782b91ab42eed1 \
file://${S}/third_party/lss/LICENSE;md5=31b650551268648966d774a3ecc710cf \
Expand All @@ -537,6 +538,7 @@ LIC_FILES_CHKSUM = "\
file://${S}/third_party/modp_b64/LICENSE;md5=eb7e2e0af1d4971360553aedadee8d86 \
file://${S}/third_party/nearby/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
file://${S}/third_party/neon_2_sse/LICENSE;md5=53abad1ded16f44100126962f4bbef6c \
file://${S}/third_party/nlohmann_json/LICENSE;md5=d9545308f01613f54de6f21134ec51f3 \
file://${S}/third_party/node/Apache-LICENSE-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
file://${S}/third_party/node/node_modules/@azure/msal-browser/LICENSE;md5=4f9c2c296f77b3096b6c11a16fa7c66e \
file://${S}/third_party/node/node_modules/lit/LICENSE;md5=4b390b7b932ca7872d1de2c834797cad \
Expand Down Expand Up @@ -571,7 +573,7 @@ LIC_FILES_CHKSUM = "\
file://${S}/third_party/rjsmin/LICENSE;md5=34f8c1142fd6208a8be89399cb521df9 \
file://${S}/third_party/rnnoise/COPYING;md5=1890bf89a18f8339491894a0b45428bf \
file://${S}/third_party/ruy/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
file://${S}/third_party/screen-ai/THIRD_PARTY_LICENSES;md5=618c57b748c4025c1a34e47b197fe7c5 \
file://${S}/third_party/screen-ai/THIRD_PARTY_LICENSES;md5=ef54a886a51f3e264488632dd8d5cf1f \
file://${S}/third_party/securemessage/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
file://${S}/third_party/selenium-atoms/LICENSE;md5=5cd827bdaf8605a596a7ac9dcf808ea1 \
file://${S}/third_party/selenium-atoms/LICENSE.sizzle;md5=7a9495742f21b7624515e120b720cc65 \
Expand Down Expand Up @@ -620,7 +622,6 @@ LIC_FILES_CHKSUM = "\
file://${S}/third_party/webrtc/modules/third_party/g711/LICENSE;md5=b36ce10e2d3d47fd5e3a465cbc9626da \
file://${S}/third_party/webrtc/modules/third_party/g722/LICENSE;md5=b6ec8735a974f440bc0cd4d93929336e \
file://${S}/third_party/webrtc/modules/third_party/portaudio/LICENSE;md5=9f48147ba9bd3e7ca9a2392d2a3099c1 \
file://${S}/third_party/webrtc/rtc_base/third_party/sigslot/LICENSE;md5=d31e106d9b0e980d8b5773f151e33ec7 \
file://${S}/third_party/woff2/LICENSE;md5=027c71da9e4664fdf192e6ec615f4d18 \
file://${S}/third_party/wtl/Ms-PL.txt;md5=1d2c3cdd7e748a6bc4213321d9157c5a \
file://${S}/third_party/wuffs/src/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
index 59942a3..cf5e62e 100644
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -1301,23 +1301,6 @@ config("compiler_cpu_abi") {
@@ -1306,25 +1306,6 @@
"-mfpmath=sse",
"-msse3",
]
Expand All @@ -35,18 +35,20 @@ index 59942a3..cf5e62e 100644
- "-march=$arm_arch",
- "-mfloat-abi=$arm_float_abi",
- ]
- if (arm_tune != "") {
- cflags += [ "-mtune=$arm_tune" ]
- }
- } else if (current_cpu == "arm64") {
- if (is_clang && !is_android && !is_fuchsia && !is_chromeos_device) {
- cflags += [ "--target=aarch64-linux-gnu" ]
- ldflags += [ "--target=aarch64-linux-gnu" ]
- }
- if (target_os == "chromeos" && cros_target_cpu_arch != "" &&
- current_cpu == target_cpu) {
- cflags += [ "-march=$cros_target_cpu_arch" ]
- ldflags += [ "-march=$cros_target_cpu_arch" ]
- }
} else if (current_cpu == "mipsel") {
ldflags += [ "-Wl,--hash-style=sysv" ]
if (custom_toolchain == "") {
@@ -1325,9 +1308,6 @@ config("compiler_cpu_abi") {
@@ -1332,9 +1313,6 @@
if (is_android) {
cflags += [ "--target=mipsel-linux-android" ]
ldflags += [ "--target=mipsel-linux-android" ]
Expand All @@ -56,7 +58,7 @@ index 59942a3..cf5e62e 100644
}
} else {
cflags += [ "-EL" ]
@@ -1407,8 +1387,6 @@ config("compiler_cpu_abi") {
@@ -1414,8 +1392,6 @@
ldflags += [ "-Wl,--hash-style=sysv" ]
if (custom_toolchain == "") {
if (is_clang) {
Expand All @@ -65,7 +67,7 @@ index 59942a3..cf5e62e 100644
} else {
cflags += [ "-EB" ]
ldflags += [ "-EB" ]
@@ -1457,8 +1435,6 @@ config("compiler_cpu_abi") {
@@ -1464,8 +1440,6 @@
cflags += [ "--target=mips64el-linux-android" ]
ldflags += [ "--target=mips64el-linux-android" ]
} else {
Expand All @@ -74,7 +76,7 @@ index 59942a3..cf5e62e 100644
}
} else {
cflags += [
@@ -1516,8 +1492,6 @@ config("compiler_cpu_abi") {
@@ -1523,8 +1497,6 @@
ldflags += [ "-Wl,--hash-style=sysv" ]
if (custom_toolchain == "") {
if (is_clang) {
Expand All @@ -83,7 +85,7 @@ index 59942a3..cf5e62e 100644
} else {
cflags += [
"-EB",
@@ -1686,23 +1660,6 @@ config("compiler_deterministic") {
@@ -1695,23 +1667,6 @@
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,13 @@ diff --git a/components/viz/host/gpu_host_impl.cc b/components/viz/host/gpu_host
index e37dd6bb11..27bf4bc8e7 100644
--- a/components/viz/host/gpu_host_impl.cc
+++ b/components/viz/host/gpu_host_impl.cc
@@ -27,10 +27,12 @@
@@ -28,11 +28,13 @@
#include "gpu/config/gpu_info.h"
#include "gpu/ipc/common/gpu_client_ids.h"
#include "gpu/ipc/host/gpu_disk_cache.h"
-#include "gpu/webgpu/dawn_commit_hash.h"
#include "mojo/public/cpp/bindings/sync_call_restrictions.h"
#include "services/webnn/host/weights_file_provider.h"
#include "skia/buildflags.h"
#include "skia/ext/skia_commit_hash.h"
+#if BUILDFLAG(SKIA_USE_DAWN)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,12 @@ diff --git a/chrome/installer/linux/common/wrapper b/chrome/installer/linux/comm
index aaa46bf..7d8c8dd 100755
--- a/chrome/installer/linux/common/wrapper
+++ b/chrome/installer/linux/common/wrapper
@@ -36,5 +36,7 @@ exec < /dev/null
@@ -36,5 +36,7 @@
exec > >(exec cat)
exec 2> >(exec cat >&2)

+CHROME_EXTRA_ARGS=""
+
# Note: exec -a below is a bashism.
-exec -a "$0" "$HERE/@@PROGNAME@@" "$@"
-exec -a "$0" "$HERE/@@PROGNAME" "$@"
+exec -a "$0" "$HERE/@@PROGNAME@@" ${CHROME_EXTRA_ARGS} "$@"
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,10 @@ diff --git a/build/config/rust.gni b/build/config/rust.gni
index bd18d13..e260576 100644
--- a/build/config/rust.gni
+++ b/build/config/rust.gni
@@ -93,6 +93,11 @@ declare_args() {
# a platform. Mostly applicable to Windows, where new versions can handle ANSI
# escape sequences but it's not reliable in general.
force_rustc_color_output = false
@@ -102,6 +102,11 @@
# * Fixing pre-existing violations of `clippy` lints (crbug.com/472355480)
# * Deciding on a policy (e.g. which trybots can/should cover `clippy`)
enable_rust_clippy = false
+
+ # Override the vendor part of the Rust target triple (with a leading dash)
+ # used for building target code (not host code). Leave empty to use the
Expand All @@ -42,7 +42,7 @@ index bd18d13..e260576 100644
}

declare_args() {
@@ -184,12 +189,19 @@ if (enable_rust) {
@@ -193,12 +198,19 @@
# other toolchains.
rust_abi_target = ""
if (is_linux || is_chromeos) {
Expand All @@ -65,18 +65,25 @@ index bd18d13..e260576 100644
} else if (current_cpu == "arm") {
if (arm_float_abi == "hard") {
float_suffix = "hf"
@@ -207,25 +219,21 @@ if (is_linux || is_chromeos) {
# The thumbv7 vs. armv7 distinction is for legacy reasons and both
# targets in fact target Thumb, see:
# https://github.com/rust-lang/rust/issues/44722
- if (arm_use_neon) {
- rust_abi_target = "thumbv7neon-unknown-linux-gnueabi" + float_suffix
- } else {
- rust_abi_target = "armv7-unknown-linux-gnueabi" + float_suffix
- }
@@ -206,31 +218,21 @@
float_suffix = ""
}
if (arm_arch == "armv7-a" || arm_arch == "armv7") {
- # We have no way to inform Rust about the -a suffix, so we end up
- # targeting armv7 in both cases.
- #
- # We also try to propagate the availability of NEON without feature
- # detection; in C++ this is done by -mfpu=neon, but in Rust we need to
- # use a different ABI target.
- #
- # The thumbv7 vs. armv7 distinction is for legacy reasons and both
- # targets in fact target Thumb, see:
- # https://github.com/rust-lang/rust/issues/44722
- rust_abi_target = "thumbv7neon-unknown-linux-gnueabi" + float_suffix
+ rust_abi_target = "armv7" + vendor + "-linux-gnueabi" + float_suffix
} else {
rust_abi_target = "arm-unknown-linux-gnueabi" + float_suffix
- rust_abi_target = "arm-unknown-linux-gnueabi" + float_suffix
+ rust_abi_target = "arm" + vendor + "-linux-gnueabi" + float_suffix
}
} else if (current_cpu == "riscv64") {
- rust_abi_target = "riscv64gc-unknown-linux-gnu"
Expand Down Expand Up @@ -117,7 +124,7 @@ diff --git a/build/rust/gni_impl/rustc_wrapper.py b/build/rust/gni_impl/rustc_wr
index 8f2096d..de43d44 100755
--- a/build/rust/gni_impl/rustc_wrapper.py
+++ b/build/rust/gni_impl/rustc_wrapper.py
@@ -204,6 +204,7 @@ def main():
@@ -250,6 +250,7 @@ def main():
rustc_args = remaining_args[:ldflags_separator]
ldflags = remaining_args[ldflags_separator + 1:rustenv_separator]
rustenv = remaining_args[rustenv_separator + 1:sources_separator]
Expand Down Expand Up @@ -201,16 +208,16 @@ index 386258f..e8fdaa9 100755


def main():
@@ -53,6 +53,8 @@ def main():
rustlib_dir = subprocess.check_output(rustc_args).rstrip().decode()
rustlib_dir = os.path.relpath(rustlib_dir)
@@ -61,6 +61,8 @@ def main():
rustlib_dir = os.path.relpath(rustlib_dir, os.path.realpath(os.curdir))


+ lib_output_dir = os.path.join(args.output, 'lib')
+
# Copy the rlibs to a predictable location. Whilst we're doing so,
# also write a .d file so that ninja knows it doesn't need to do this
# again unless the source rlibs change.
@@ -64,7 +66,7 @@ def main():
@@ -72,7 +74,7 @@ def main():
# output rlibs for that purpose. If any of the input rlibs change, ninja
# will run this script again and we'll copy them all afresh.
depfile.write(
Expand All @@ -219,7 +226,7 @@ index 386258f..e8fdaa9 100755

def copy_file(infile, outfile):
depfile.write(f" {infile}")
@@ -100,7 +102,7 @@ def main():
@@ -108,7 +110,7 @@ def main():
# the correct file path to our linker invocations, we don't need
# that, and it would prevent us having the predictable filenames
# which we need for statically computable gn dependency rules.
Expand All @@ -228,7 +235,7 @@ index 386258f..e8fdaa9 100755

# Use the number of times we've seen this name to disambiguate the output
# filenames. Since we sort the input filenames including the metadata,
@@ -118,14 +120,18 @@ def main():
@@ -126,14 +128,18 @@ def main():
output_filename = f"lib{concise_name}.rlib"

infile = os.path.join(rustlib_dir, f)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,12 @@ diff --git a/chrome/browser/ui/views/frame/layout/browser_view_layout.h b/chrome
index 493d444..99621d9 100644
--- a/chrome/browser/ui/views/frame/layout/browser_view_layout.h
+++ b/chrome/browser/ui/views/frame/layout/browser_view_layout.h
@@ -95,7 +95,7 @@
@@ -93,7 +93,7 @@
// very small window, even on large monitors (which is why a minimum height is
// not specified). This value is used for the main browser window only, not
// for popups.
- static constexpr int kMainBrowserContentsMinimumWidth = 500;
+ static constexpr int kMainBrowserContentsMinimumWidth = 480;

// The width of the vertical tab strip.
//
BrowserViewLayout(const BrowserViewLayout&) = delete;
BrowserViewLayout& operator=(const BrowserViewLayout&) = delete;
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
Fix zip_ffi_glue build errors

error: let chains are only allowed in Rust 2024 or later
--> ../../components/user_data_importer/utility/parsing_ffi/zip_archive.rs:89:16
|
89 | if let Ok(file) = self.archive.by_index(i)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: let chains are only allowed in Rust 2024 or later
--> ../../components/user_data_importer/utility/parsing_ffi/zip_archive.rs:90:20
|
90 | && let Some(outpath) = file.enclosed_name()
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: let chains are only allowed in Rust 2024 or later
--> ../../components/user_data_importer/utility/parsing_ffi/zip_archive.rs:91:20
|
91 | && let Some(r) = f(file, &outpath)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: let chains are only allowed in Rust 2024 or later
--> ../../components/user_data_importer/utility/parsing_ffi/zip_archive.rs:107:16
|
107 | if let Ok(file) = self.archive.by_index(i)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: let chains are only allowed in Rust 2024 or later
--> ../../components/user_data_importer/utility/parsing_ffi/zip_archive.rs:108:20
|
108 | && let Some(outpath) = file.enclosed_name()
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: aborting due to 5 previous errors

Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
Upstream-Status: Inappropriate [rust edition specific]

--- a/components/user_data_importer/utility/BUILD.gn 2026-03-03 00:00:09.000000000 +0100
+++ b/components/user_data_importer/utility/BUILD.gn 2026-03-17 12:35:09.304632524 +0100
@@ -64,6 +64,7 @@
rust_static_library("zip_ffi_glue") {
allow_unsafe = true
crate_root = "parsing_ffi/lib.rs"
+ edition = "2024"
sources = [
"parsing_ffi/history.rs",
"parsing_ffi/json.rs",
1 change: 1 addition & 0 deletions meta-chromium/recipes-browser/chromium/gn_git.bbappend
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
SRCREV = "9d19a7870add65151ff91bcc26252bb7521065cf"