Skip to content

Commit e60a5db

Browse files
committed
chromium: Update to 140.0.7339.136
Added INSANE_SKIP = "buildpaths" to the debug package. Backported a patch for rust 1.90. Release Notes: https://chromereleases.googleblog.com/2025/09/stable-channel-update-for-desktop_9.html https://chromereleases.googleblog.com/2025/09/beta-channel-update-for-chromeos_12.html Build and patch changes: ------------------------ Updated patches: * 0001-Drop-GN-compiler-settings-conflicting-with-OE.patch * 0004-Delete-compiler-options-not-available-in-release-ver.patch * 0009-Adjust-the-Rust-build-to-our-needs.patch Removed patches: * 0008-Use-the-correct-path-to-libclang_rt.builtins.a.patch License changes: ---------------- Added licenses: * third_party/android_deps/autorolled/committed/libs/com_airbnb_android_lottie/LICENSE * third_party/android_deps/autorolled/committed/libs/com_google_android_annotations/LICENSE * third_party/android_deps/autorolled/committed/libs/com_google_android_gms_play_services_cloud_messaging/LICENSE * third_party/android_deps/autorolled/committed/libs/com_google_code_gson_gson/LICENSE * third_party/android_deps/autorolled/committed/libs/com_google_firebase_firebase_annotations/LICENSE * third_party/android_deps/autorolled/committed/libs/com_google_firebase_firebase_common/LICENSE * third_party/android_deps/autorolled/committed/libs/com_google_firebase_firebase_components/LICENSE * third_party/android_deps/autorolled/committed/libs/com_google_firebase_firebase_datatransport/LICENSE * third_party/android_deps/autorolled/committed/libs/com_google_firebase_firebase_iid_interop/LICENSE * third_party/android_deps/autorolled/committed/libs/com_google_firebase_firebase_installations/LICENSE * third_party/android_deps/autorolled/committed/libs/com_google_firebase_firebase_installations_interop/LICENSE * third_party/android_deps/autorolled/committed/libs/com_google_firebase_firebase_measurement_connector/LICENSE * third_party/android_deps/autorolled/committed/libs/com_google_firebase_firebase_messaging/LICENSE * third_party/android_deps/autorolled/committed/libs/io_grpc_grpc_api/LICENSE * third_party/android_deps/autorolled/committed/libs/io_grpc_grpc_binder/LICENSE * third_party/android_deps/autorolled/committed/libs/io_grpc_grpc_context/LICENSE * third_party/android_deps/autorolled/committed/libs/io_grpc_grpc_core/LICENSE * third_party/android_deps/autorolled/committed/libs/io_grpc_grpc_protobuf_lite/LICENSE * third_party/android_deps/autorolled/committed/libs/io_grpc_grpc_stub/LICENSE * third_party/android_deps/autorolled/committed/libs/io_perfmark_perfmark_api/LICENSE * third_party/android_deps/autorolled/committed/libs/io_reactivex_rxjava2_rxandroid/LICENSE * third_party/android_deps/autorolled/committed/libs/io_reactivex_rxjava2_rxjava/LICENSE * third_party/android_deps/autorolled/committed/libs/org_checkerframework_checker_util/LICENSE * third_party/android_deps/autorolled/committed/libs/org_codehaus_mojo_animal_sniffer_annotations/LICENSE * third_party/android_deps/autorolled/committed/libs/org_reactivestreams_reactive_streams/LICENSE * third_party/androidx/committed/libs/androidx_datastore_datastore_preferences_android/LICENSE * third_party/androidx/committed/libs/androidx_datastore_datastore_preferences_core_android/LICENSE * third_party/androidx/committed/libs/androidx_datastore_datastore_preferences_external_protobuf/LICENSE * third_party/androidx/committed/libs/androidx_datastore_datastore_preferences_proto/LICENSE * third_party/androidx/committed/libs/androidx_navigationevent_navigationevent_compose_android/LICENSE * third_party/angle/third_party/re2/LICENSE * third_party/catapult/third_party/jszip/LICENSE.markdown * third_party/catapult/tracing/third_party/jszip/LICENSE.markdown * third_party/devtools-frontend/src/front_end/third_party/source-map-scopes-codec/LICENSE * third_party/readability/LICENSE Removed licenses: * chrome/third_party/mozilla_security_manager/LICENSE * native_client_sdk/src/libraries/third_party/newlib-extras/README * third_party/android_deps/libs/com_google_android_gms_play_services_cloud_messaging/LICENSE * third_party/android_deps/libs/com_google_dagger_dagger/LICENSE * third_party/android_deps/libs/com_google_firebase_firebase_annotations/LICENSE * third_party/android_deps/libs/com_google_firebase_firebase_common/LICENSE * third_party/android_deps/libs/com_google_firebase_firebase_common_ktx/LICENSE * third_party/android_deps/libs/com_google_firebase_firebase_components/LICENSE * third_party/android_deps/libs/com_google_firebase_firebase_datatransport/LICENSE * third_party/android_deps/libs/com_google_firebase_firebase_iid/LICENSE * third_party/android_deps/libs/com_google_firebase_firebase_iid_interop/LICENSE * third_party/android_deps/libs/com_google_firebase_firebase_installations/LICENSE * third_party/android_deps/libs/com_google_firebase_firebase_installations_interop/LICENSE * third_party/android_deps/libs/com_google_firebase_firebase_measurement_connector/LICENSE * third_party/android_deps/libs/com_google_firebase_firebase_messaging/LICENSE * third_party/android_deps/libs/jakarta_inject_jakarta_inject_api/LICENSE * third_party/android_deps/libs/org_checkerframework_checker_util/LICENSE * third_party/android_deps/libs/org_codehaus_mojo_animal_sniffer_annotations/LICENSE * third_party/chromevox/third_party/closure-library/LICENSE * third_party/jszip/LICENSE * third_party/mesa_headers/LICENSE * third_party/wasm_tts_engine/EIGEN_LICENSE Updated licenses: * chrome/browser/resources/chromeos/accessibility/chromevox/mv2/third_party/tamachiyomi/LICENSE → chrome/browser/resources/chromeos/accessibility/chromevox/mv2/background/third_party/tamachiyomi/LICENSE * third_party/android_deps/autorolled/committed/libs/com_google_android_gms_play_services_auth/LICENSE * third_party/android_deps/autorolled/committed/libs/com_google_android_gms_play_services_auth_base/LICENSE * third_party/android_deps/autorolled/committed/libs/com_google_android_gms_play_services_instantapps/LICENSE * third_party/android_deps/autorolled/committed/libs/org_checkerframework_checker_qual/LICENSE * third_party/bidimapper/licenses/LICENSE.zod * third_party/ffmpeg/CREDITS.chromium Test-built: ----------- * chromium-ozone-wayland * MACHINE=intel-corei7-64, qemuarm64 * chromium-x11 * MACHINE=intel-corei7-64, qemuarm64 Test dependencies: ------------------ * URI: git://git.openembedded.org/openembedded-core - branch: master - revision: 2c134301b55892ecf3c0ae9fa4912bc827579ece (poky equivalent: 8a69e57f53f4523c1b86d8d259826b57c8df0a3a) * URI: git://git.openembedded.org/meta-openembedded - layers: meta-oe - branch: master - revision: 7e9941ab0f69576542cbfeb6576750c878bdd6ca * URI: git://github.com/kraj/meta-clang - branch: master - revision: 95a6015b1e12fd760ecd22b6915a7e65bdef3d73 * URI: git://git.yoctoproject.org/meta-intel - branch: master - revision: c347d0be75958ca095d4ad320c6f2faf88b364a6 Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
1 parent c4a82da commit e60a5db

9 files changed

+150
-133
lines changed

meta-chromium/recipes-browser/chromium/chromium-gn.inc

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,12 @@ SRC_URI += "\
2222
file://0005-avoid-link-latomic-failure-on-CentOS-8-host.patch \
2323
file://0006-Don-t-pass-unknown-LLVM-options.patch \
2424
file://0007-Fix-constexpr-variable-must-be-initialized-by-a-cons.patch \
25-
file://0008-Use-the-correct-path-to-libclang_rt.builtins.a.patch \
2625
file://0009-Adjust-the-Rust-build-to-our-needs.patch \
2726
file://0010-Don-t-require-profiler_builtins.rlib.patch \
2827
file://0011-fix-check_version-Only-compare-node.js-major-version.patch \
2928
file://0012-chromium-fix-v4l2-compiler-error-on-arm.patch \
3029
file://0013-Reduce-minimum-browser-window-width-to-480px.patch \
30+
file://23d818d3c7fba4658248f17fd7b8993199242aa9.patch \
3131
"
3232

3333
# ARM/AArch64-specific patches.
@@ -474,15 +474,24 @@ do_add_clang_latest () {
474474
addtask add_clang_latest after do_configure before do_compile
475475

476476
do_copy_clang_library () {
477-
# Chromium needs to link against libclang_rt.builtins.a for both host and
478-
# target code, and expects to find both libraries in the same directory
479-
# (thanks to 0008-Use-the-correct-path-to-libclang_rt.builtins.a.patch).
480-
cd "${STAGING_DIR_HOST}${nonarch_libdir}/clang"
481-
# lib_file = "./$CLANG_VERSION/lib/linux/libclang_rt.builtins-$ARCH.a"
482-
lib_file="$(find . -name 'libclang_rt.builtins*')"
483-
# stripped_lib_file = "lib/linux/libclang_rt.builtins-$ARCH.a"
484-
stripped_lib_file="${lib_file#*/*/}"
485-
cp "$lib_file" "${STAGING_LIBDIR_NATIVE}/clang/latest/${stripped_lib_file}"
477+
cp -r "${STAGING_LIBDIR_NATIVE}/clang/latest" "${STAGING_DIR_HOST}${nonarch_libdir}/clang/"
478+
cd "${STAGING_DIR_HOST}${nonarch_libdir}/clang" || return
479+
480+
lib_file=$(find . \( -name "libclang_rt.builtins-*" -o -name "liborc_rt-*" \))
481+
export ARCH="${TARGET_ARCH}"
482+
483+
mkdir -p "latest/lib/${ARCH}-unknown-linux-gnu"
484+
cp $lib_file "latest/lib/${ARCH}-unknown-linux-gnu/"
485+
cd "latest/lib/${ARCH}-unknown-linux-gnu/" || return
486+
487+
for file in *-"${ARCH}".a; do
488+
new_name=$(echo "$file" | sed "s/-${ARCH}//")
489+
mv "$file" "$new_name"
490+
done
491+
492+
native_arch_path="${STAGING_LIBDIR_NATIVE}/clang/latest/lib/${ARCH}-unknown-linux-gnu/"
493+
mkdir -p "$native_arch_path"
494+
cp -r * "$native_arch_path"
486495
}
487496
addtask copy_clang_library after do_add_clang_latest before do_compile
488497

@@ -619,4 +628,4 @@ ALLOW_EMPTY:${PN}-dev = "0"
619628

620629
# ERROR: QA Issue: lib32-chromium-ozone-wayland: ELF binary /usr/bin/chromium has relocations in .text [textrel]
621630
INSANE_SKIP:${PN}:append:x86 = "textrel"
622-
631+
INSANE_SKIP:${PN}-dbg:append = "buildpaths"

meta-chromium/recipes-browser/chromium/chromium.inc

Lines changed: 43 additions & 30 deletions
Large diffs are not rendered by default.

meta-chromium/recipes-browser/chromium/files/0001-Drop-GN-compiler-settings-conflicting-with-OE.patch

Lines changed: 19 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -22,34 +22,31 @@ diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
2222
index 59942a3..cf5e62e 100644
2323
--- a/build/config/compiler/BUILD.gn
2424
+++ b/build/config/compiler/BUILD.gn
25-
@@ -1255,26 +1255,6 @@ config("compiler_cpu_abi") {
26-
"-msse3",
27-
]
28-
}
25+
@@ -1301,23 +1301,6 @@ config("compiler_cpu_abi") {
26+
"-mfpmath=sse",
27+
"-msse3",
28+
]
2929
- } else if (current_cpu == "arm") {
30-
- if (is_clang && !is_android && !is_nacl && !is_chromeos_device) {
30+
- if (is_clang && !is_android && !is_chromeos_device) {
3131
- cflags += [ "--target=arm-linux-gnueabihf" ]
3232
- ldflags += [ "--target=arm-linux-gnueabihf" ]
3333
- }
34-
- if (!is_nacl) {
35-
- cflags += [
36-
- "-march=$arm_arch",
37-
- "-mfloat-abi=$arm_float_abi",
38-
- ]
39-
- }
34+
- cflags += [
35+
- "-march=$arm_arch",
36+
- "-mfloat-abi=$arm_float_abi",
37+
- ]
4038
- if (arm_tune != "") {
4139
- cflags += [ "-mtune=$arm_tune" ]
4240
- }
4341
- } else if (current_cpu == "arm64") {
44-
- if (is_clang && !is_android && !is_nacl && !is_fuchsia &&
45-
- !is_chromeos_device) {
42+
- if (is_clang && !is_android && !is_fuchsia && !is_chromeos_device) {
4643
- cflags += [ "--target=aarch64-linux-gnu" ]
4744
- ldflags += [ "--target=aarch64-linux-gnu" ]
4845
- }
49-
} else if (current_cpu == "mipsel" && !is_nacl) {
46+
} else if (current_cpu == "mipsel") {
5047
ldflags += [ "-Wl,--hash-style=sysv" ]
5148
if (custom_toolchain == "") {
52-
@@ -1282,9 +1262,6 @@ config("compiler_cpu_abi") {
49+
@@ -1325,9 +1308,6 @@ config("compiler_cpu_abi") {
5350
if (is_android) {
5451
cflags += [ "--target=mipsel-linux-android" ]
5552
ldflags += [ "--target=mipsel-linux-android" ]
@@ -59,7 +56,7 @@ index 59942a3..cf5e62e 100644
5956
}
6057
} else {
6158
cflags += [ "-EL" ]
62-
@@ -1364,8 +1341,6 @@ config("compiler_cpu_abi") {
59+
@@ -1407,8 +1387,6 @@ config("compiler_cpu_abi") {
6360
ldflags += [ "-Wl,--hash-style=sysv" ]
6461
if (custom_toolchain == "") {
6562
if (is_clang) {
@@ -68,7 +65,7 @@ index 59942a3..cf5e62e 100644
6865
} else {
6966
cflags += [ "-EB" ]
7067
ldflags += [ "-EB" ]
71-
@@ -1414,8 +1389,6 @@ config("compiler_cpu_abi") {
68+
@@ -1457,8 +1435,6 @@ config("compiler_cpu_abi") {
7269
cflags += [ "--target=mips64el-linux-android" ]
7370
ldflags += [ "--target=mips64el-linux-android" ]
7471
} else {
@@ -77,7 +74,7 @@ index 59942a3..cf5e62e 100644
7774
}
7875
} else {
7976
cflags += [
80-
@@ -1473,8 +1446,6 @@ config("compiler_cpu_abi") {
77+
@@ -1516,8 +1492,6 @@ config("compiler_cpu_abi") {
8178
ldflags += [ "-Wl,--hash-style=sysv" ]
8279
if (custom_toolchain == "") {
8380
if (is_clang) {
@@ -86,14 +83,14 @@ index 59942a3..cf5e62e 100644
8683
} else {
8784
cflags += [
8885
"-EB",
89-
@@ -1656,23 +1627,6 @@ config("compiler_deterministic") {
86+
@@ -1686,23 +1660,6 @@ config("compiler_deterministic") {
9087
}
9188
}
92-
89+
9390
- # Tells the compiler not to use absolute paths when passing the default
9491
- # paths to the tools it invokes. We don't want this because we don't
9592
- # really need it and it can mess up the RBE cache entries.
96-
- if (is_clang && (!is_nacl || is_nacl_saigo)) {
93+
- if (is_clang) {
9794
- cflags += [ "-no-canonical-prefixes" ]
9895
-
9996
- # Same for links: Let the compiler driver invoke the linker
@@ -107,6 +104,6 @@ index 59942a3..cf5e62e 100644
107104
- }
108105
- }
109106
-
110-
if (use_libcxx_modules) {
107+
if (use_clang_modules) {
111108
cflags += [
112109
# This removes absolute paths from .pcm files.

meta-chromium/recipes-browser/chromium/files/0004-Delete-compiler-options-not-available-in-release-ver.patch

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -23,29 +23,32 @@ diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
2323
index cf5e62e..58e0fd0 100644
2424
--- a/build/config/compiler/BUILD.gn
2525
+++ b/build/config/compiler/BUILD.gn
26-
@@ -629,13 +629,6 @@ config("compiler") {
26+
@@ -687,16 +687,6 @@ config("compiler") {
2727
cflags += [ "-ffp-contract=off" ]
2828
}
29-
29+
3030
- # Enable ELF CREL (see crbug.com/357878242) for all platforms that use ELF
3131
- # (excluding toolchains that use an older version of LLVM).
3232
- # TODO(crbug.com/376278218): This causes segfault on Linux ARM builds.
33+
- # It also causes segfault on Linux s390x:
34+
- # https://github.com/llvm/llvm-project/issues/149511
3335
- if (is_linux && use_lld && !llvm_android_mainline && current_cpu != "arm" &&
36+
- current_cpu != "s390x" &&
3437
- default_toolchain != "//build/toolchain/cros:target") {
3538
- cflags += [ "-Wa,--crel,--allow-experimental-crel" ]
3639
- }
3740
}
38-
41+
3942
# C11/C++11 compiler flags setup.
40-
@@ -2083,6 +2076,11 @@ config("default_warnings") {
41-
}
42-
43-
cflags += [
44-
+ # Disable unknown warnings, since system clang may not have
45-
+ # backported newer warning yet unlike internal clang that
46-
+ # chromium uses.
47-
+ "-Wno-unknown-warning-option",
43+
@@ -2079,6 +2069,11 @@ config("default_warnings") {
44+
45+
if (is_clang) {
46+
cflags += [
47+
+ # Disable unknown warnings, since system clang may not have
48+
+ # backported newer warning yet unlike internal clang that
49+
+ # chromium uses.
50+
+ "-Wno-unknown-warning-option",
4851
+
49-
# TODO(crbug.com/330524456): -Wcast-function-type is under -Wextra now.
50-
"-Wno-cast-function-type",
51-
52+
"-Wloop-analysis",
53+
54+
# TODO(thakis): This used to be implied by -Wno-unused-function,

meta-chromium/recipes-browser/chromium/files/0008-Use-the-correct-path-to-libclang_rt.builtins.a.patch

Lines changed: 0 additions & 49 deletions
This file was deleted.

meta-chromium/recipes-browser/chromium/files/0009-Adjust-the-Rust-build-to-our-needs.patch

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ Co-authored-by: Caner Altinbasak <cal@brightsign.biz>
2020
Signed-off-by: Max Ihlenfeldt <max@igalia.com>
2121
---
2222
build/config/rust.gni | 28 ++++++++++++++++++----------
23-
build/rust/filter_clang_args.py | 5 +++++
24-
build/rust/rustc_wrapper.py | 1 +
23+
...ni_impl/filter_clang_args.py | 5 +++++
24+
...ni_impl/rustc_wrapper.py | 1 +
2525
build/rust/std/BUILD.gn | 28 +++++++++++++++++++++-------
2626
build/rust/std/find_std_rlibs.py | 16 +++++++++++-----
2727
5 files changed, 56 insertions(+), 22 deletions(-)
@@ -99,8 +99,8 @@ index bd18d13..e260576 100644
9999
} else if (is_android) {
100100
diff --git a/build/rust/filter_clang_args.py b/build/rust/filter_clang_args.py
101101
index 5a1843c..7fb4b49 100644
102-
--- a/build/rust/filter_clang_args.py
103-
+++ b/build/rust/filter_clang_args.py
102+
--- a/build/rust/gni_impl/filter_clang_args.py
103+
+++ b/build/rust/gni_impl/filter_clang_args.py
104104
@@ -24,6 +24,11 @@ def filter_clang_args(clangargs):
105105
pass
106106
elif args[i].startswith('-plugin-arg'):
@@ -113,10 +113,10 @@ index 5a1843c..7fb4b49 100644
113113
else:
114114
yield args[i]
115115
i += 1
116-
diff --git a/build/rust/rustc_wrapper.py b/build/rust/rustc_wrapper.py
116+
diff --git a/build/rust/gni_impl/rustc_wrapper.py b/build/rust/gni_impl/rustc_wrapper.py
117117
index 8f2096d..de43d44 100755
118-
--- a/build/rust/rustc_wrapper.py
119-
+++ b/build/rust/rustc_wrapper.py
118+
--- a/build/rust/gni_impl/rustc_wrapper.py
119+
+++ b/build/rust/gni_impl/rustc_wrapper.py
120120
@@ -160,6 +160,7 @@ def main():
121121
rustc_args = remaining_args[:ldflags_separator]
122122
ldflags = remaining_args[ldflags_separator + 1:rustenv_separator]
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
From 23d818d3c7fba4658248f17fd7b8993199242aa9 Mon Sep 17 00:00:00 2001
2+
From: Hans Wennborg <hans@chromium.org>
3+
Date: Fri, 22 Aug 2025 10:34:47 -0700
4+
Subject: [PATCH] [rust] Define __rust_alloc_error_handler_should_panic_v2
5+
6+
https://github.com/rust-lang/rust/pull/143387 made
7+
__rust_alloc_error_handler_should_panic a function.
8+
9+
The new definition is needed when rolling Rust past that PR. We can
10+
remove the old symbol afterwards.
11+
12+
Bug: 440481922
13+
Change-Id: I3340edd6d96d76de14942af67939978140430424
14+
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6875644
15+
Commit-Queue: Arthur Eubanks <aeubanks@google.com>
16+
Reviewed-by: Arthur Eubanks <aeubanks@google.com>
17+
Auto-Submit: Hans Wennborg <hans@chromium.org>
18+
Commit-Queue: Hans Wennborg <hans@chromium.org>
19+
Cr-Commit-Position: refs/heads/main@{#1505162}
20+
21+
Upstream-Status: Backport [https://chromiumdash.appspot.com/commit/23d818d3c7fba4658248f17fd7b8993199242aa9]
22+
---
23+
build/rust/allocator/lib.rs | 7 +++++++
24+
1 file changed, 7 insertions(+)
25+
26+
diff --git a/build/rust/allocator/lib.rs b/build/rust/allocator/lib.rs
27+
index 29b3af1274fb36..a7fa7a470f0001 100644
28+
--- a/build/rust/allocator/lib.rs
29+
+++ b/build/rust/allocator/lib.rs
30+
@@ -90,7 +90,14 @@ mod both_allocators {
31+
#[linkage = "weak"]
32+
fn __rust_no_alloc_shim_is_unstable_v2() {}
33+
34+
+ #[rustc_std_internal_symbol]
35+
+ #[linkage = "weak"]
36+
+ fn __rust_alloc_error_handler_should_panic_v2() -> u8 {
37+
+ 0
38+
+ }
39+
+
40+
// Mangle the symbol name as rustc expects.
41+
+ // TODO(crbug.com/440481922): Remove this after rolling past https://github.com/rust-lang/rust/pull/143387
42+
#[rustc_std_internal_symbol]
43+
#[allow(non_upper_case_globals)]
44+
#[linkage = "weak"]

0 commit comments

Comments
 (0)