summaryrefslogtreecommitdiff
path: root/lang/rust
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--lang/rust-nightly/Makefile8
-rw-r--r--lang/rust-nightly/distinfo18
-rw-r--r--lang/rust-nightly/files/patch-src_bootstrap_src_core_build__steps_install.rs10
-rw-r--r--lang/rust-nightly/files/patch-src_bootstrap_src_core_config_config.rs22
-rw-r--r--lang/rust-nightly/files/patch-src_bootstrap_src_core_sanity.rs23
-rw-r--r--lang/rust-nightly/files/patch-vendor_cc.rs16
-rw-r--r--lang/rust/Makefile2
7 files changed, 61 insertions, 38 deletions
diff --git a/lang/rust-nightly/Makefile b/lang/rust-nightly/Makefile
index 3d0c2fa874f6..c00f57552769 100644
--- a/lang/rust-nightly/Makefile
+++ b/lang/rust-nightly/Makefile
@@ -14,12 +14,8 @@ MASTERDIR= ${.CURDIR}/../rust
PATCHDIR= ${.CURDIR}/files
DISTINFO_FILE= ${.CURDIR}/distinfo
-NIGHTLY_DATE= 2025-08-05
-BOOTSTRAPS_DATE= 2025-06-24
+NIGHTLY_DATE= 2025-09-07
+BOOTSTRAPS_DATE= 2025-08-05
RUST_BOOTSTRAP_VERSION= beta
-post-configure:
- # remove after bootstraps are updated to version higher than 2025-07-27
- @${REINPLACE_CMD} -e '/ccache=/d' ${WRKSRC}/config.toml
-
.include "${MASTERDIR}/Makefile"
diff --git a/lang/rust-nightly/distinfo b/lang/rust-nightly/distinfo
index 8dbff4c87479..e764885b3c55 100644
--- a/lang/rust-nightly/distinfo
+++ b/lang/rust-nightly/distinfo
@@ -1,9 +1,9 @@
-TIMESTAMP = 1754482083
-SHA256 (rust/2025-08-05/rustc-nightly-src.tar.xz) = 428963a5586248c0f088dff1dda048060b447c2bf187ca2326b62af47c80f9fc
-SIZE (rust/2025-08-05/rustc-nightly-src.tar.xz) = 272353928
-SHA256 (rust/2025-06-24/rustc-beta-x86_64-unknown-freebsd.tar.xz) = 71e9e3a1d1f5e8dc98403c2a6695c969908ba0cde594c4e20249fe81b67d62d1
-SIZE (rust/2025-06-24/rustc-beta-x86_64-unknown-freebsd.tar.xz) = 88377504
-SHA256 (rust/2025-06-24/rust-std-beta-x86_64-unknown-freebsd.tar.xz) = 7cc4adb3c102eac53916b28c0dad40bd095e19ea3fd0430e84a2e0b094445809
-SIZE (rust/2025-06-24/rust-std-beta-x86_64-unknown-freebsd.tar.xz) = 28253396
-SHA256 (rust/2025-06-24/cargo-beta-x86_64-unknown-freebsd.tar.xz) = be762a368c6dfbe47a0f8c4b09cea1755a6d311f713b57b57a87276c88e5c34d
-SIZE (rust/2025-06-24/cargo-beta-x86_64-unknown-freebsd.tar.xz) = 10790116
+TIMESTAMP = 1757341820
+SHA256 (rust/2025-09-07/rustc-nightly-src.tar.xz) = b2e82674b09400cce62f8b8b6c16c09dc0cd035f1577dc270bcc713872763943
+SIZE (rust/2025-09-07/rustc-nightly-src.tar.xz) = 284060052
+SHA256 (rust/2025-08-05/rustc-beta-x86_64-unknown-freebsd.tar.xz) = cdfe207645068b4659b0f979cae177723c5f211084f45ae9180b2d93ee83fce6
+SIZE (rust/2025-08-05/rustc-beta-x86_64-unknown-freebsd.tar.xz) = 87833828
+SHA256 (rust/2025-08-05/rust-std-beta-x86_64-unknown-freebsd.tar.xz) = bd48292b8582167a5e89ebe521c9754495403968c184b925df8b2ec1da344fc3
+SIZE (rust/2025-08-05/rust-std-beta-x86_64-unknown-freebsd.tar.xz) = 30795804
+SHA256 (rust/2025-08-05/cargo-beta-x86_64-unknown-freebsd.tar.xz) = 11e1a51740a728f5825364a8679b28454a68e7efc96320730f9b58a8fc2e6fae
+SIZE (rust/2025-08-05/cargo-beta-x86_64-unknown-freebsd.tar.xz) = 11419484
diff --git a/lang/rust-nightly/files/patch-src_bootstrap_src_core_build__steps_install.rs b/lang/rust-nightly/files/patch-src_bootstrap_src_core_build__steps_install.rs
index 6d7f6d612496..8953ab44bbf2 100644
--- a/lang/rust-nightly/files/patch-src_bootstrap_src_core_build__steps_install.rs
+++ b/lang/rust-nightly/files/patch-src_bootstrap_src_core_build__steps_install.rs
@@ -4,14 +4,16 @@ It otherwise wastes significant time (there are a lot of individual
files) and stages host docs, wasm docs, which unstages the host
docs first.
---- src/bootstrap/src/core/build_steps/install.rs.orig 2022-05-01 20:28:31 UTC
+XXX: Shouldn't we instead just avoid adding docs-*-wasm* to _COMPONENTS in lang/rust/Makefile?
+
+--- src/bootstrap/src/core/build_steps/install.rs.orig 2025-08-24 19:46:17 UTC
+++ src/bootstrap/src/core/build_steps/install.rs
-@@ -138,7 +138,7 @@ macro_rules! install {
+@@ -206,7 +206,7 @@ install!((self, builder, _config),
}
install!((self, builder, _config),
-- Docs, path = "src/doc", _config.docs, only_hosts: false, {
-+ Docs, path = "src/doc", _config.docs, only_hosts: true, {
+- Docs, path = "src/doc", _config.docs, IS_HOST: false, {
++ Docs, path = "src/doc", _config.docs, IS_HOST: true, {
let tarball = builder.ensure(dist::Docs { host: self.target }).expect("missing docs");
install_sh(builder, "docs", self.compiler.stage, Some(self.target), &tarball);
};
diff --git a/lang/rust-nightly/files/patch-src_bootstrap_src_core_config_config.rs b/lang/rust-nightly/files/patch-src_bootstrap_src_core_config_config.rs
index a556833eed1e..4b024680070c 100644
--- a/lang/rust-nightly/files/patch-src_bootstrap_src_core_config_config.rs
+++ b/lang/rust-nightly/files/patch-src_bootstrap_src_core_config_config.rs
@@ -1,14 +1,14 @@
---- src/bootstrap/src/core/config/config.rs.orig 2025-06-08 20:17:28 UTC
+--- src/bootstrap/src/core/config/config.rs.orig 2025-08-24 19:46:17 UTC
+++ src/bootstrap/src/core/config/config.rs
-@@ -1459,9 +1459,9 @@ impl Config {
- || source_version.minor == stage0_version.minor + 1)))
- {
- let prev_version = format!("{}.{}.x", source_version.major, source_version.minor - 1);
-- fail(&format!(
-+ eprintln!(
- "Unexpected {component_name} version: {stage0_version}, we should use {prev_version}/{source_version} to build source with {source_version}"
-- ));
-+ );
- }
+@@ -1991,9 +1991,9 @@ pub fn check_stage0_version(
+ || source_version.minor == stage0_version.minor + 1)))
+ {
+ let prev_version = format!("{}.{}.x", source_version.major, source_version.minor - 1);
+- fail(&format!(
++ eprintln!(
+ "Unexpected {component_name} version: {stage0_version}, we should use {prev_version}/{source_version} to build source with {source_version}"
+- ));
++ );
}
+ }
diff --git a/lang/rust-nightly/files/patch-src_bootstrap_src_core_sanity.rs b/lang/rust-nightly/files/patch-src_bootstrap_src_core_sanity.rs
new file mode 100644
index 000000000000..9504f4a16f94
--- /dev/null
+++ b/lang/rust-nightly/files/patch-src_bootstrap_src_core_sanity.rs
@@ -0,0 +1,23 @@
+XXX: cc_tool is Gnu here because of patch-vendor_cc.rs. We need to seek need better solution.
+
+--- src/bootstrap/src/core/sanity.rs.orig 2025-09-06 18:37:35 UTC
++++ src/bootstrap/src/core/sanity.rs
+@@ -338,12 +338,12 @@ than building it.
+ let cc_tool = build.cc_tool(*target);
+ if !cc_tool.is_like_clang() && !cc_tool.path().ends_with("emcc") {
+ // emcc works as well
+- panic!(
+- "Clang is required to build C code for Wasm targets, got `{}` instead\n\
+- this is because compiler-builtins is configured to build C source. Either \
+- ensure Clang is used, or adjust this configuration.",
+- cc_tool.path().display()
+- );
++ //panic!(
++ // "Clang is required to build C code for Wasm targets, got `{}` instead\n\
++ // this is because compiler-builtins is configured to build C source. Either \
++ // ensure Clang is used, or adjust this configuration.",
++ // cc_tool.path().display()
++ //);
+ }
+ }
+
diff --git a/lang/rust-nightly/files/patch-vendor_cc.rs b/lang/rust-nightly/files/patch-vendor_cc.rs
index 11682cd5f1f6..377f1a9346db 100644
--- a/lang/rust-nightly/files/patch-vendor_cc.rs
+++ b/lang/rust-nightly/files/patch-vendor_cc.rs
@@ -86,8 +86,8 @@ https://reviews.llvm.org/D77776
(false, false, true, _, false) | (_, _, _, _, true) => Ok(ToolFamily::Gnu),
(false, false, false, false, false) => {
cargo_output.print_warning(&"Compiler family detection failed since it does not define `__clang__`, `__GNUC__`, `__EMSCRIPTEN__` or `__VXWORKS__`, also does not accept cl style flag `-?`, fallback to treating it as GNU");
---- vendor/cc-1.2.23/src/tool.rs.orig 2025-04-01 18:22:03 UTC
-+++ vendor/cc-1.2.23/src/tool.rs
+--- vendor/cc-1.2.26/src/tool.rs.orig 2025-04-01 18:22:03 UTC
++++ vendor/cc-1.2.26/src/tool.rs
@@ -141,9 +141,7 @@ impl Tool {
match (clang, accepts_cl_style_flags, gcc, emscripten, vxworks) {
@@ -99,8 +99,8 @@ https://reviews.llvm.org/D77776
(false, false, true, _, false) | (_, _, _, _, true) => Ok(ToolFamily::Gnu),
(false, false, false, false, false) => {
cargo_output.print_warning(&"Compiler family detection failed since it does not define `__clang__`, `__GNUC__`, `__EMSCRIPTEN__` or `__VXWORKS__`, also does not accept cl style flag `-?`, fallback to treating it as GNU");
---- vendor/cc-1.2.26/src/tool.rs.orig 2025-04-01 18:22:03 UTC
-+++ vendor/cc-1.2.26/src/tool.rs
+--- vendor/cc-1.2.28/src/tool.rs.orig 2025-04-01 18:22:03 UTC
++++ vendor/cc-1.2.28/src/tool.rs
@@ -141,9 +141,7 @@ impl Tool {
match (clang, accepts_cl_style_flags, gcc, emscripten, vxworks) {
@@ -112,8 +112,8 @@ https://reviews.llvm.org/D77776
(false, false, true, _, false) | (_, _, _, _, true) => Ok(ToolFamily::Gnu),
(false, false, false, false, false) => {
cargo_output.print_warning(&"Compiler family detection failed since it does not define `__clang__`, `__GNUC__`, `__EMSCRIPTEN__` or `__VXWORKS__`, also does not accept cl style flag `-?`, fallback to treating it as GNU");
---- vendor/cc-1.2.27/src/tool.rs.orig 2025-04-01 18:22:03 UTC
-+++ vendor/cc-1.2.27/src/tool.rs
+--- vendor/cc-1.2.33/src/tool.rs.orig 2025-04-01 18:22:03 UTC
++++ vendor/cc-1.2.33/src/tool.rs
@@ -141,9 +141,7 @@ impl Tool {
match (clang, accepts_cl_style_flags, gcc, emscripten, vxworks) {
@@ -125,8 +125,8 @@ https://reviews.llvm.org/D77776
(false, false, true, _, false) | (_, _, _, _, true) => Ok(ToolFamily::Gnu),
(false, false, false, false, false) => {
cargo_output.print_warning(&"Compiler family detection failed since it does not define `__clang__`, `__GNUC__`, `__EMSCRIPTEN__` or `__VXWORKS__`, also does not accept cl style flag `-?`, fallback to treating it as GNU");
---- vendor/cc-1.2.31/src/tool.rs.orig 2025-04-01 18:22:03 UTC
-+++ vendor/cc-1.2.31/src/tool.rs
+--- vendor/cc-1.2.35/src/tool.rs.orig 2025-04-01 18:22:03 UTC
++++ vendor/cc-1.2.35/src/tool.rs
@@ -141,9 +141,7 @@ impl Tool {
match (clang, accepts_cl_style_flags, gcc, emscripten, vxworks) {
diff --git a/lang/rust/Makefile b/lang/rust/Makefile
index f4f9f1222023..fc9fbf3582f5 100644
--- a/lang/rust/Makefile
+++ b/lang/rust/Makefile
@@ -196,11 +196,13 @@ do-configure:
.if ${PORT_OPTIONS:MLTO}
@${ECHO_CMD} 'thin-lto=true' >> ${WRKSRC}/config.toml
.endif
+.if !defined(PKGNAMESUFFIX)
.if defined(WITH_CCACHE_BUILD) && !defined(NO_CCACHE)
@${ECHO_CMD} 'ccache="${CCACHE_BIN}"' >> ${WRKSRC}/config.toml
.else
@${ECHO_CMD} 'ccache=false' >> ${WRKSRC}/config.toml
.endif
+.endif
@${ECHO_CMD} 'ninja=true' >> ${WRKSRC}/config.toml
.if ${ARCH} == powerpc
# Rust doesn't call the system compiler with the full version of the target.