From ff050dfd39d6fef62d23dfd5edc5d65202f5df67de6421aa91f1519f2362014e Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 14:19:58 +0800 Subject: [PATCH 01/24] bump rusty_v8 version to 145.0.0 Signed-off-by: Soc Virnyl Estela --- _service | 2 +- compiler-rt-adjust-paths.patch | 23 ++++++++++++----------- deno-v8-arm.patch | 19 ++++++++++--------- rusty_v8-137.2.1.tar.zst | 3 --- rusty_v8-145.0.0.tar.zst | 3 +++ rusty_v8.spec | 8 ++++---- vendor.tar.zst | 4 ++-- 7 files changed, 32 insertions(+), 30 deletions(-) delete mode 100644 rusty_v8-137.2.1.tar.zst create mode 100644 rusty_v8-145.0.0.tar.zst diff --git a/_service b/_service index 5e7ed9d..20115be 100644 --- a/_service +++ b/_service @@ -1,7 +1,7 @@ https://github.com/denoland/rusty_v8 - v137.2.1 + v145.0.0 ^v?(.*) $1 zst diff --git a/compiler-rt-adjust-paths.patch b/compiler-rt-adjust-paths.patch index 74ee566..765945b 100644 --- a/compiler-rt-adjust-paths.patch +++ b/compiler-rt-adjust-paths.patch @@ -1,7 +1,7 @@ -diff -ruN /tmp/rusty_v8-v137.1.0/build/config/clang/BUILD.gn rusty_v8-v137.1.0/build/config/clang/BUILD.gn ---- /tmp/rusty_v8-v137.1.0/build/config/clang/BUILD.gn 1970-01-01 08:00:01.000000000 +0800 -+++ rusty_v8-v137.1.0/build/config/clang/BUILD.gn 2025-06-26 14:47:20.638581652 +0800 -@@ -201,12 +201,15 @@ +diff -ruN rusty_v8-145.0.0.orig/build/config/clang/BUILD.gn rusty_v8-145.0.0/build/config/clang/BUILD.gn +--- rusty_v8-145.0.0.orig/build/config/clang/BUILD.gn 2026-02-14 14:15:37.957884922 +0800 ++++ rusty_v8-145.0.0/build/config/clang/BUILD.gn 2026-02-14 14:18:05.583917665 +0800 +@@ -180,12 +180,15 @@ } else if (is_linux || is_chromeos) { if (current_cpu == "x64") { _dir = "x86_64-unknown-linux-gnu" @@ -14,17 +14,18 @@ diff -ruN /tmp/rusty_v8-v137.1.0/build/config/clang/BUILD.gn rusty_v8-v137.1.0/b } else if (current_cpu == "arm64") { _dir = "aarch64-unknown-linux-gnu" + _suffix = "-aarch64" - } else { - assert(false) # Unhandled cpu type - } -@@ -237,6 +240,10 @@ + } else if (current_cpu == "loong64") { + _dir = "loongarch64-unknown-linux-gnu" + } else if (current_cpu == "riscv64") { +@@ -223,7 +226,10 @@ + } else { assert(false) # Unhandled target platform } - +- ++ + 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" ] - diff --git a/deno-v8-arm.patch b/deno-v8-arm.patch index 73227e7..2f27d33 100644 --- a/deno-v8-arm.patch +++ b/deno-v8-arm.patch @@ -1,13 +1,15 @@ ---- ./build.rs.orig 2024-06-27 14:26:40.281226961 +0200 -+++ ./build.rs 2024-06-27 14:28:10.388618455 +0200 -@@ -200,16 +200,12 @@ fn build_v8(is_asan: bool) { - // cross-compilation setup +diff -ruN rusty_v8-145.0.0.orig/build.rs rusty_v8-145.0.0/build.rs +--- rusty_v8-145.0.0.orig/build.rs 2026-02-14 14:02:50.206480850 +0800 ++++ rusty_v8-145.0.0/build.rs 2026-02-14 14:06:48.032243885 +0800 +@@ -353,17 +353,13 @@ if target_arch == "aarch64" { gn_args.push(r#"target_cpu="arm64""#.to_string()); -- gn_args.push("use_sysroot=true".to_string()); -- maybe_install_sysroot("arm64"); -- maybe_install_sysroot("amd64"); -+ gn_args.push("use_sysroot=false".to_string()); + if target_os == "linux" { +- gn_args.push("use_sysroot=true".to_string()); +- maybe_install_sysroot("arm64"); +- maybe_install_sysroot("amd64"); ++ gn_args.push("use_sysroot=false".to_string()); + } } if target_arch == "arm" { gn_args.push(r#"target_cpu="arm""#.to_string()); @@ -19,4 +21,3 @@ } let target_triple = env::var("TARGET").unwrap(); - diff --git a/rusty_v8-137.2.1.tar.zst b/rusty_v8-137.2.1.tar.zst deleted file mode 100644 index b8184ed..0000000 --- a/rusty_v8-137.2.1.tar.zst +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8aa36ce2368658b0f0b81ce05e8fb9490d5e5c952316dc1baecdfe1b0c099b2e -size 72798547 diff --git a/rusty_v8-145.0.0.tar.zst b/rusty_v8-145.0.0.tar.zst new file mode 100644 index 0000000..3f51795 --- /dev/null +++ b/rusty_v8-145.0.0.tar.zst @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29c37f557c8e6dd17a773ead25dd4e0503ea286a985741f968548ff9d75be6c6 +size 93939905 diff --git a/rusty_v8.spec b/rusty_v8.spec index 3141b6b..1bdd40b 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -19,7 +19,7 @@ %global __requires_exclude_from ^%{_libdir}/crates/rusty_v8/.*$ Name: rusty_v8 -Version: 137.2.1 +Version: 145.0.0 Release: 0 Summary: Build tooling for Deno (do not install or use!) License: MIT @@ -33,11 +33,11 @@ Patch0: deno-v8-arm.patch Patch1: compiler-rt-adjust-paths.patch BuildRequires: cargo BuildRequires: cargo-packaging -BuildRequires: clang19 +BuildRequires: clang20 BuildRequires: fdupes BuildRequires: gn -BuildRequires: lld19 -BuildRequires: llvm19 +BuildRequires: lld20 +BuildRequires: llvm20 BuildRequires: ninja BuildRequires: pkgconfig BuildRequires: python3-base diff --git a/vendor.tar.zst b/vendor.tar.zst index 700b46f..51d465d 100644 --- a/vendor.tar.zst +++ b/vendor.tar.zst @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d2522578085b5c72169d7cb638a933caf1118fe2020bf5acefb4dcec309cc45d -size 22342461 +oid sha256:79a5abe421aa4482ff23491cd5b35d3e14f5da19dce7c141685911c6174ab125 +size 28117161 -- 2.51.1 From 0105e5eada3b89845658057a41c4f68bbb360fccdc63d61cfb7d058d44f63e16 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 14:51:14 +0800 Subject: [PATCH 02/24] include development package for clang20 and llvm20 Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/rusty_v8.spec b/rusty_v8.spec index 1bdd40b..e273e8f 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -34,10 +34,12 @@ Patch1: compiler-rt-adjust-paths.patch BuildRequires: cargo BuildRequires: cargo-packaging BuildRequires: clang20 +BuildRequires: clang20-devel BuildRequires: fdupes BuildRequires: gn BuildRequires: lld20 BuildRequires: llvm20 +BuildRequires: llvm20-devel BuildRequires: ninja BuildRequires: pkgconfig BuildRequires: python3-base @@ -71,6 +73,7 @@ sed -i 's|lib/clang|lib64/clang|g' build/config/clang/BUILD.gn %build # Ensure that the clang version matches. This command came from Archlinux. Thanks. export CLANG_VERSION=$(clang --version | grep -m1 version | sed 's/.* \([0-9]\+\).*/\1/') +export LIBCLANG_PATH=%{_libdir} export V8_FROM_SOURCE=1 export CLANG_BASE_PATH=%{_prefix} export CC=clang -- 2.51.1 From 2b8299a06e1d256356af456fe8572ae716be939e7d528f357b519039cb033ed1 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 14:59:02 +0800 Subject: [PATCH 03/24] maybe use llvm21 Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/rusty_v8.spec b/rusty_v8.spec index e273e8f..c4a6645 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -33,13 +33,13 @@ Patch0: deno-v8-arm.patch Patch1: compiler-rt-adjust-paths.patch BuildRequires: cargo BuildRequires: cargo-packaging -BuildRequires: clang20 -BuildRequires: clang20-devel +BuildRequires: clang21 +BuildRequires: clang21-devel BuildRequires: fdupes BuildRequires: gn -BuildRequires: lld20 -BuildRequires: llvm20 -BuildRequires: llvm20-devel +BuildRequires: lld21 +BuildRequires: llvm21 +BuildRequires: llvm21-devel BuildRequires: ninja BuildRequires: pkgconfig BuildRequires: python3-base -- 2.51.1 From 8f66c5e934763948c3045c5cc9b8d3284c76303b41fbb73da7777eac4f912053 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 15:14:38 +0800 Subject: [PATCH 04/24] disable downloading of rust-toolchain Signed-off-by: Soc Virnyl Estela --- disable-rust-toolchain-download.patch | 25 +++++++++++++++++++++++++ rusty_v8.spec | 1 + 2 files changed, 26 insertions(+) create mode 100644 disable-rust-toolchain-download.patch diff --git a/disable-rust-toolchain-download.patch b/disable-rust-toolchain-download.patch new file mode 100644 index 0000000..60c0503 --- /dev/null +++ b/disable-rust-toolchain-download.patch @@ -0,0 +1,25 @@ +diff -ruN rusty_v8-145.0.0.orig/build.rs rusty_v8-145.0.0/build.rs +--- rusty_v8-145.0.0.orig/build.rs 2026-02-14 14:15:46.377977611 +0800 ++++ rusty_v8-145.0.0/build.rs 2026-02-14 15:13:06.103012265 +0800 +@@ -120,7 +120,7 @@ + + print_prebuilt_src_binding_path(); + +- download_static_lib_binaries(); ++ // download_static_lib_binaries(); + } + + fn acquire_lock() -> LockFile { +@@ -248,10 +248,10 @@ + } + + if need_gn_ninja_download() { +- download_ninja_gn_binaries(); ++ // download_ninja_gn_binaries(); + } + +- download_rust_toolchain(); ++ // download_rust_toolchain(); + + // `#[cfg(...)]` attributes don't work as expected from build.rs -- they refer to the configuration + // of the host system which the build.rs script will be running on. In short, `cfg!(target_)` diff --git a/rusty_v8.spec b/rusty_v8.spec index c4a6645..b98212b 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -31,6 +31,7 @@ Source100: rusty_v8-rpmlintrc Patch0: deno-v8-arm.patch # Based on https://gitlab.archlinux.org/archlinux/packaging/packages/chromium/-/raw/main/compiler-rt-adjust-paths.patch Patch1: compiler-rt-adjust-paths.patch +Patch2: disable-rust-toolchain-download.patch BuildRequires: cargo BuildRequires: cargo-packaging BuildRequires: clang21 -- 2.51.1 From dfc60d5015349bea0607d809cdfbeaa47796c19fe06d2d3309effea941691b33 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 15:19:41 +0800 Subject: [PATCH 05/24] create a dummy "downloaded" directory for the toolchain with a VERSION called "system" Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/rusty_v8.spec b/rusty_v8.spec index b98212b..788c670 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -84,6 +84,8 @@ export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true enable_nacl = false export CFLAGS="%{optflags} -Wno-unknown-warning-option" export CXXFLAGS="%{optflags} -Wno-unknown-warning-option" export RUST_BACKTRACE=full +mkdir -p third_party/rust-toolchain +echo "system" > third_party/rust-toolchain/VERSION %{cargo_build} %install -- 2.51.1 From 066e3cc08a28e01a91c7ae95f001467b60fc4ed019d4c50eae378c65999162b0 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 15:37:56 +0800 Subject: [PATCH 06/24] install rust-bindgen Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/rusty_v8.spec b/rusty_v8.spec index 788c670..d790718 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -39,6 +39,7 @@ BuildRequires: clang21-devel BuildRequires: fdupes BuildRequires: gn BuildRequires: lld21 +BuildRequires: rust-bindgen BuildRequires: llvm21 BuildRequires: llvm21-devel BuildRequires: ninja @@ -86,6 +87,9 @@ export CXXFLAGS="%{optflags} -Wno-unknown-warning-option" export RUST_BACKTRACE=full mkdir -p third_party/rust-toolchain echo "system" > third_party/rust-toolchain/VERSION +mkdir -p third_party/rust-toolchain/bin +ln -s /usr/bin/bindgen third_party/rust-toolchain/bin/bindgen + %{cargo_build} %install -- 2.51.1 From ce9e2915997eced182a1f564c689753de89a4489697acf9bfbf6080d3ee7cf77 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 16:01:19 +0800 Subject: [PATCH 07/24] apply rust.gni custom config to point to system toolchain Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/rusty_v8.spec b/rusty_v8.spec index d790718..0631d9b 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -81,7 +81,9 @@ export CLANG_BASE_PATH=%{_prefix} export CC=clang export CXX=clang++ # https://www.chromium.org/developers/gn-build-configuration -export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true enable_nacl = false blink_symbol_level = 0 v8_symbol_level = 0" +export RUSTC_SYSROOT=$(rustc --print sysroot) +export RUSTC_VERSION=$(rustc -V) +export GN_ARGS="rust_sysroot_absolute=${RUSTC_SYSROOT} rustc_version='${RUSTC_VERSION}' clang_version=${CLANG_VERSION} use_lld=true enable_nacl = false blink_symbol_level = 0 v8_symbol_level = 0" export CFLAGS="%{optflags} -Wno-unknown-warning-option" export CXXFLAGS="%{optflags} -Wno-unknown-warning-option" export RUST_BACKTRACE=full -- 2.51.1 From e1be61758346e7fefac2c41f5408a3679e2ce80a065d22ec908acdfcfce61926 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 16:06:04 +0800 Subject: [PATCH 08/24] cut the version only Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rusty_v8.spec b/rusty_v8.spec index 0631d9b..8e29d31 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -82,7 +82,7 @@ export CC=clang export CXX=clang++ # https://www.chromium.org/developers/gn-build-configuration export RUSTC_SYSROOT=$(rustc --print sysroot) -export RUSTC_VERSION=$(rustc -V) +export RUSTC_VERSION=$(rustc -V | cut -d' ' -f2) export GN_ARGS="rust_sysroot_absolute=${RUSTC_SYSROOT} rustc_version='${RUSTC_VERSION}' clang_version=${CLANG_VERSION} use_lld=true enable_nacl = false blink_symbol_level = 0 v8_symbol_level = 0" export CFLAGS="%{optflags} -Wno-unknown-warning-option" export CXXFLAGS="%{optflags} -Wno-unknown-warning-option" -- 2.51.1 From 23bc57cc96c0a25e9a0f281126aaca7a872b65bdcc18339f4ebeea8c8f9eafe4 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 16:09:15 +0800 Subject: [PATCH 09/24] adjust gn args Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rusty_v8.spec b/rusty_v8.spec index 8e29d31..6c6716e 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -83,7 +83,7 @@ export CXX=clang++ # https://www.chromium.org/developers/gn-build-configuration export RUSTC_SYSROOT=$(rustc --print sysroot) export RUSTC_VERSION=$(rustc -V | cut -d' ' -f2) -export GN_ARGS="rust_sysroot_absolute=${RUSTC_SYSROOT} rustc_version='${RUSTC_VERSION}' clang_version=${CLANG_VERSION} use_lld=true enable_nacl = false blink_symbol_level = 0 v8_symbol_level = 0" +export GN_ARGS="rust_sysroot_absolute=${RUSTC_SYSROOT} rustc_version=${RUSTC_VERSION} clang_version=${CLANG_VERSION} use_lld=true enable_nacl=false blink_symbol_level=0 v8_symbol_level=0" export CFLAGS="%{optflags} -Wno-unknown-warning-option" export CXXFLAGS="%{optflags} -Wno-unknown-warning-option" export RUST_BACKTRACE=full -- 2.51.1 From b8cd91189a8526bb1472f196ec3a2193d9dca5825a543ecef61d999b03655a60 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 16:14:19 +0800 Subject: [PATCH 10/24] adjust gn args Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rusty_v8.spec b/rusty_v8.spec index 6c6716e..eda3960 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -83,7 +83,7 @@ export CXX=clang++ # https://www.chromium.org/developers/gn-build-configuration export RUSTC_SYSROOT=$(rustc --print sysroot) export RUSTC_VERSION=$(rustc -V | cut -d' ' -f2) -export GN_ARGS="rust_sysroot_absolute=${RUSTC_SYSROOT} rustc_version=${RUSTC_VERSION} clang_version=${CLANG_VERSION} use_lld=true enable_nacl=false blink_symbol_level=0 v8_symbol_level=0" +export GN_ARGS="rust_sysroot_absolute=${RUSTC_SYSROOT} rustc_version=\"${RUSTC_VERSION}\" clang_version=${CLANG_VERSION} use_lld=true enable_nacl=false blink_symbol_level=0 v8_symbol_level=0" export CFLAGS="%{optflags} -Wno-unknown-warning-option" export CXXFLAGS="%{optflags} -Wno-unknown-warning-option" export RUST_BACKTRACE=full -- 2.51.1 From 31efdc1fa5232dff1dd9f423ada763af1cc6407e617664865ddf35b23d129161 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 16:23:44 +0800 Subject: [PATCH 11/24] add space Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rusty_v8.spec b/rusty_v8.spec index eda3960..d1cef08 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -83,7 +83,7 @@ export CXX=clang++ # https://www.chromium.org/developers/gn-build-configuration export RUSTC_SYSROOT=$(rustc --print sysroot) export RUSTC_VERSION=$(rustc -V | cut -d' ' -f2) -export GN_ARGS="rust_sysroot_absolute=${RUSTC_SYSROOT} rustc_version=\"${RUSTC_VERSION}\" clang_version=${CLANG_VERSION} use_lld=true enable_nacl=false blink_symbol_level=0 v8_symbol_level=0" +export GN_ARGS=" rust_sysroot_absolute=${RUSTC_SYSROOT} rustc_version=\"${RUSTC_VERSION}\" clang_version=${CLANG_VERSION} use_lld=true enable_nacl=false blink_symbol_level=0 v8_symbol_level=0" export CFLAGS="%{optflags} -Wno-unknown-warning-option" export CXXFLAGS="%{optflags} -Wno-unknown-warning-option" export RUST_BACKTRACE=full -- 2.51.1 From 59ca5517d4ff13f1a6554a418929fea6cfba8c8fa8b5ea7c1f77fa4d07b73b6e Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 16:30:03 +0800 Subject: [PATCH 12/24] add extra gn args Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/rusty_v8.spec b/rusty_v8.spec index d1cef08..7afce35 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -83,7 +83,8 @@ export CXX=clang++ # https://www.chromium.org/developers/gn-build-configuration export RUSTC_SYSROOT=$(rustc --print sysroot) export RUSTC_VERSION=$(rustc -V | cut -d' ' -f2) -export GN_ARGS=" rust_sysroot_absolute=${RUSTC_SYSROOT} rustc_version=\"${RUSTC_VERSION}\" clang_version=${CLANG_VERSION} use_lld=true enable_nacl=false blink_symbol_level=0 v8_symbol_level=0" +export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true enable_nacl=false blink_symbol_level=0 v8_symbol_level=0" +export EXTRA_GN_ARGS="rust_sysroot_absolute=${RUSTC_SYSROOT} rustc_version=${RUSTC_VERSION}" export CFLAGS="%{optflags} -Wno-unknown-warning-option" export CXXFLAGS="%{optflags} -Wno-unknown-warning-option" export RUST_BACKTRACE=full -- 2.51.1 From f18bdc576a1f31dbf73c10211969ae8915120649f073b2608934f3d5103981d6 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 16:45:22 +0800 Subject: [PATCH 13/24] update args Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rusty_v8.spec b/rusty_v8.spec index 7afce35..d0426cd 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -83,7 +83,7 @@ export CXX=clang++ # https://www.chromium.org/developers/gn-build-configuration export RUSTC_SYSROOT=$(rustc --print sysroot) export RUSTC_VERSION=$(rustc -V | cut -d' ' -f2) -export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true enable_nacl=false blink_symbol_level=0 v8_symbol_level=0" +export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true enable_nacl = false blink_symbol_level = 0 v8_symbol_level = 0" export EXTRA_GN_ARGS="rust_sysroot_absolute=${RUSTC_SYSROOT} rustc_version=${RUSTC_VERSION}" export CFLAGS="%{optflags} -Wno-unknown-warning-option" export CXXFLAGS="%{optflags} -Wno-unknown-warning-option" -- 2.51.1 From 9da8e895c37a65aabe1110bd4f9228ca7fb109dc19fc48a391e1097266e11f93 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 16:49:07 +0800 Subject: [PATCH 14/24] rust -> rustc Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rusty_v8.spec b/rusty_v8.spec index d0426cd..0d4ade2 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -83,8 +83,8 @@ export CXX=clang++ # https://www.chromium.org/developers/gn-build-configuration export RUSTC_SYSROOT=$(rustc --print sysroot) export RUSTC_VERSION=$(rustc -V | cut -d' ' -f2) -export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true enable_nacl = false blink_symbol_level = 0 v8_symbol_level = 0" -export EXTRA_GN_ARGS="rust_sysroot_absolute=${RUSTC_SYSROOT} rustc_version=${RUSTC_VERSION}" +export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true enable_nacl=false blink_symbol_level=0 v8_symbol_level=0" +export EXTRA_GN_ARGS="rustc_sysroot_absolute=${RUSTC_SYSROOT} rustc_version=${RUSTC_VERSION}" export CFLAGS="%{optflags} -Wno-unknown-warning-option" export CXXFLAGS="%{optflags} -Wno-unknown-warning-option" export RUST_BACKTRACE=full -- 2.51.1 From 366a518cffab0c8bbd6659b3c6b260457ef1acdc4a4a67f85e0fc48d0ab7c170 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 17:09:52 +0800 Subject: [PATCH 15/24] attempt fix again Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/rusty_v8.spec b/rusty_v8.spec index 0d4ade2..4d8478f 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -83,16 +83,25 @@ export CXX=clang++ # https://www.chromium.org/developers/gn-build-configuration export RUSTC_SYSROOT=$(rustc --print sysroot) export RUSTC_VERSION=$(rustc -V | cut -d' ' -f2) +export GN="/usr/bin/gn" +export NINJA="/usr/bin/ninja" +export RUSTC="/usr/bin/rustc" export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true enable_nacl=false blink_symbol_level=0 v8_symbol_level=0" -export EXTRA_GN_ARGS="rustc_sysroot_absolute=${RUSTC_SYSROOT} rustc_version=${RUSTC_VERSION}" +# export EXTRA_GN_ARGS="rust_sysroot_absolute=${RUSTC_SYSROOT} rustc_version=${RUSTC_VERSION}" export CFLAGS="%{optflags} -Wno-unknown-warning-option" export CXXFLAGS="%{optflags} -Wno-unknown-warning-option" export RUST_BACKTRACE=full mkdir -p third_party/rust-toolchain echo "system" > third_party/rust-toolchain/VERSION + mkdir -p third_party/rust-toolchain/bin ln -s /usr/bin/bindgen third_party/rust-toolchain/bin/bindgen +for i in rustc rustfmt cargo +do + ln -s /usr/bin/$i third_party/rust-toolchain/bin/$i +done + %{cargo_build} %install -- 2.51.1 From 5e11cd663fd40ebf8bc9362b1d02539b64e49cb76584196a194ccc09585b595a Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 17:23:30 +0800 Subject: [PATCH 16/24] attempt fix again Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rusty_v8.spec b/rusty_v8.spec index 4d8478f..30552e5 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -86,7 +86,7 @@ export RUSTC_VERSION=$(rustc -V | cut -d' ' -f2) export GN="/usr/bin/gn" export NINJA="/usr/bin/ninja" export RUSTC="/usr/bin/rustc" -export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true enable_nacl=false blink_symbol_level=0 v8_symbol_level=0" +export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true enable_nacl=false v8_symbol_level=0" # export EXTRA_GN_ARGS="rust_sysroot_absolute=${RUSTC_SYSROOT} rustc_version=${RUSTC_VERSION}" export CFLAGS="%{optflags} -Wno-unknown-warning-option" export CXXFLAGS="%{optflags} -Wno-unknown-warning-option" -- 2.51.1 From caf6e16dce19c9175b9162efc69aefd34604c67c8cb526ecb9eaddfd1435487a Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 17:30:26 +0800 Subject: [PATCH 17/24] symlink rustlib Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/rusty_v8.spec b/rusty_v8.spec index 30552e5..84ef105 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -46,6 +46,7 @@ BuildRequires: ninja BuildRequires: pkgconfig BuildRequires: python3-base BuildRequires: zstd +BuildRequires: rust-src BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(gmodule-2.0) BuildRequires: pkgconfig(gobject-2.0) @@ -101,6 +102,8 @@ for i in rustc rustfmt cargo do ln -s /usr/bin/$i third_party/rust-toolchain/bin/$i done +mkdir -p third_party/rust-toolchain/lib +ln -s /usr/lib/rustlib third_party/rust-toolchain/lib/rustlib %{cargo_build} -- 2.51.1 From 3fdb9a22599ccd0ef5617f3a2b3c693194d104ffb8c1bfea15e8d8470ab12990 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 17:34:02 +0800 Subject: [PATCH 18/24] try setting build_with_chromium=false Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rusty_v8.spec b/rusty_v8.spec index 84ef105..226ebe7 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -87,7 +87,7 @@ export RUSTC_VERSION=$(rustc -V | cut -d' ' -f2) export GN="/usr/bin/gn" export NINJA="/usr/bin/ninja" export RUSTC="/usr/bin/rustc" -export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true enable_nacl=false v8_symbol_level=0" +export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true enable_nacl=false v8_symbol_level=0 build_with_chromium=false" # export EXTRA_GN_ARGS="rust_sysroot_absolute=${RUSTC_SYSROOT} rustc_version=${RUSTC_VERSION}" export CFLAGS="%{optflags} -Wno-unknown-warning-option" export CXXFLAGS="%{optflags} -Wno-unknown-warning-option" -- 2.51.1 From 16fa9ad89fd906daf9b480bf1b879fdd57de0499ceabdb0f8fed8371bca60908 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 17:56:18 +0800 Subject: [PATCH 19/24] Revert "try setting build_with_chromium=false" This reverts commit 3fdb9a22599ccd0ef5617f3a2b3c693194d104ffb8c1bfea15e8d8470ab12990. --- rusty_v8.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rusty_v8.spec b/rusty_v8.spec index 226ebe7..84ef105 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -87,7 +87,7 @@ export RUSTC_VERSION=$(rustc -V | cut -d' ' -f2) export GN="/usr/bin/gn" export NINJA="/usr/bin/ninja" export RUSTC="/usr/bin/rustc" -export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true enable_nacl=false v8_symbol_level=0 build_with_chromium=false" +export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true enable_nacl=false v8_symbol_level=0" # export EXTRA_GN_ARGS="rust_sysroot_absolute=${RUSTC_SYSROOT} rustc_version=${RUSTC_VERSION}" export CFLAGS="%{optflags} -Wno-unknown-warning-option" export CXXFLAGS="%{optflags} -Wno-unknown-warning-option" -- 2.51.1 From 70615c314c90872f8bc332601de4fbee14ef5bee4eb8eb0b163cb3d79bce12c2 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 18:02:24 +0800 Subject: [PATCH 20/24] remove enable_ncl Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rusty_v8.spec b/rusty_v8.spec index 84ef105..525998e 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -87,7 +87,7 @@ export RUSTC_VERSION=$(rustc -V | cut -d' ' -f2) export GN="/usr/bin/gn" export NINJA="/usr/bin/ninja" export RUSTC="/usr/bin/rustc" -export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true enable_nacl=false v8_symbol_level=0" +export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true v8_symbol_level=0" # export EXTRA_GN_ARGS="rust_sysroot_absolute=${RUSTC_SYSROOT} rustc_version=${RUSTC_VERSION}" export CFLAGS="%{optflags} -Wno-unknown-warning-option" export CXXFLAGS="%{optflags} -Wno-unknown-warning-option" -- 2.51.1 From 893d8a37c0ad30db226fbfe967bbb52972300a753ba0897c37999e114d42e066 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 18:55:58 +0800 Subject: [PATCH 21/24] try to use the chromium rust toolchain Signed-off-by: Soc Virnyl Estela --- chromium-rust-toolchain.tar.xz | 3 +++ rusty_v8.changes | 6 ++++++ rusty_v8.spec | 16 +++------------- 3 files changed, 12 insertions(+), 13 deletions(-) create mode 100644 chromium-rust-toolchain.tar.xz diff --git a/chromium-rust-toolchain.tar.xz b/chromium-rust-toolchain.tar.xz new file mode 100644 index 0000000..89d2baa --- /dev/null +++ b/chromium-rust-toolchain.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ca1ca6268ce2dcfe878c623f0f49e4eba983bb36e79ceddb9c745ef48efc933 +size 140484296 diff --git a/rusty_v8.changes b/rusty_v8.changes index c989997..c5d8152 100644 --- a/rusty_v8.changes +++ b/rusty_v8.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Sat Feb 14 10:55:07 UTC 2026 - Soc Virnyl Estela + +- Add chromium-rust-toolchain.tar.xz. This was based from the python script + located at `tools/rust-toolchain.py` + ------------------------------------------------------------------- Thu Jul 17 23:21:08 UTC 2025 - Soc Virnyl Estela diff --git a/rusty_v8.spec b/rusty_v8.spec index 525998e..91d4918 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -27,6 +27,7 @@ Group: Productivity/Other URL: https://github.com/denoland/rusty_v8 Source0: %{name}-%{version}.tar.zst Source1: vendor.tar.zst +Source2: https://storage.googleapis.com/chromium-browser-clang/Linux_x64/rust-toolchain-a4cfac7093a1c1c7fbdb6bc75d6b6dc4d385fc69-2-llvmorg-22-init-17020-gbd1bd178.tar.xz#/chromium-rust-toolchain.tar.xz Source100: rusty_v8-rpmlintrc Patch0: deno-v8-arm.patch # Based on https://gitlab.archlinux.org/archlinux/packaging/packages/chromium/-/raw/main/compiler-rt-adjust-paths.patch @@ -72,6 +73,8 @@ Chromium, etc. # lib to lib64 sed -i 's|lib/clang|lib64/clang|g' build/config/clang/BUILD.gn %endif +mkdir -p third_party/rust-toolchain +tar xf %{SOURCE2} -C third_party/rust-toolchain %build # Ensure that the clang version matches. This command came from Archlinux. Thanks. @@ -92,19 +95,6 @@ export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true v8_symbol_level=0" export CFLAGS="%{optflags} -Wno-unknown-warning-option" export CXXFLAGS="%{optflags} -Wno-unknown-warning-option" export RUST_BACKTRACE=full -mkdir -p third_party/rust-toolchain -echo "system" > third_party/rust-toolchain/VERSION - -mkdir -p third_party/rust-toolchain/bin -ln -s /usr/bin/bindgen third_party/rust-toolchain/bin/bindgen - -for i in rustc rustfmt cargo -do - ln -s /usr/bin/$i third_party/rust-toolchain/bin/$i -done -mkdir -p third_party/rust-toolchain/lib -ln -s /usr/lib/rustlib third_party/rust-toolchain/lib/rustlib - %{cargo_build} %install -- 2.51.1 From 7b8e2719d90cf3c2f09a3a4289c4145e5702fa399eead1dd603cc38617c5cc2c Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 21:15:19 +0800 Subject: [PATCH 22/24] remove custom toolchain after building Signed-off-by: Soc Virnyl Estela --- rusty_v8.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/rusty_v8.spec b/rusty_v8.spec index 91d4918..9fdf4a0 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -115,6 +115,7 @@ rm .prettierrc.json rm .rustfmt.toml rm -rf vendor rm -rf target +rm -rf third_party/rust-toolchain %fdupes $PWD popd -- 2.51.1 From 45cb939ec4f13853831cbee264865bbb7e817b11e80ed958e74272e543265555 Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sat, 14 Feb 2026 22:57:28 +0800 Subject: [PATCH 23/24] cleanup and fix rpmlintrc issues by ignoring some errors Signed-off-by: Soc Virnyl Estela --- rusty_v8-rpmlintrc | 3 +++ rusty_v8.spec | 3 +++ 2 files changed, 6 insertions(+) diff --git a/rusty_v8-rpmlintrc b/rusty_v8-rpmlintrc index fe46f99..c7acf4e 100644 --- a/rusty_v8-rpmlintrc +++ b/rusty_v8-rpmlintrc @@ -1,4 +1,7 @@ # This is not C, dear +addFilter("E: backup-file-in-package") +addFilter("E: filelist-forbidden") +addFilter("W: hidden-file-or-dir") addFilter("E: devel-file-in-non-devel-package") addFilter("E: bin-sh-syntax-error") addFilter("E: env-script-interpreter") diff --git a/rusty_v8.spec b/rusty_v8.spec index 9fdf4a0..13047f4 100644 --- a/rusty_v8.spec +++ b/rusty_v8.spec @@ -119,6 +119,9 @@ rm -rf third_party/rust-toolchain %fdupes $PWD popd +# Remove Windows-specific vendored libs that break readelf/rpmlint +find %{buildroot}%{_libdir}/crates/rusty_v8/third_party -name "windows_*" -type d -exec rm -rf {} + + %files %license LICENSE %doc README.md -- 2.51.1 From be037b133c8d9ab25723569e0dfabad3cd7d06de7c83800fae78fa4ed44247cc Mon Sep 17 00:00:00 2001 From: Soc Virnyl Estela Date: Sun, 15 Feb 2026 08:39:17 +0800 Subject: [PATCH 24/24] update .changes file to match with new version Signed-off-by: Soc Virnyl Estela --- rusty_v8.changes | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/rusty_v8.changes b/rusty_v8.changes index c5d8152..1793417 100644 --- a/rusty_v8.changes +++ b/rusty_v8.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Sun Feb 15 00:38:48 UTC 2026 - Soc Virnyl Estela + +- Update to version 145.0.0 + ------------------------------------------------------------------- Sat Feb 14 10:55:07 UTC 2026 - Soc Virnyl Estela -- 2.51.1