pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

rust183: re-do fix to issue #133629 by applying upstream fix.



Module Name:	pkgsrc-wip
Committed By:	Havard Eidnes <he%NetBSD.org@localhost>
Pushed By:	he
Date:		Fri Jan 31 11:07:15 2025 +0000
Changeset:	831b81fca847e6fa930e57683ed33b3a47e1ca87

Modified Files:
	rust183/distinfo
	rust183/patches/patch-src_bootstrap_src_core_builder.rs

Log Message:
rust183: re-do fix to issue #133629 by applying upstream fix.

Fix is https://github.com/rust-lang/rust/pull/136309
confirmed to work as intended.

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=831b81fca847e6fa930e57683ed33b3a47e1ca87

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 rust183/distinfo                                   |  2 +-
 .../patch-src_bootstrap_src_core_builder.rs        | 54 +++++++++-------------
 2 files changed, 24 insertions(+), 32 deletions(-)

diffs:
diff --git a/rust183/distinfo b/rust183/distinfo
index 424c803b7f..b991081044 100644
--- a/rust183/distinfo
+++ b/rust183/distinfo
@@ -124,7 +124,7 @@ SHA1 (patch-library_stdarch_crates_std__detect_tests_cpu-detection.rs) = 97c3ad8
 SHA1 (patch-src_bootstrap_bootstrap.py) = 150a5a7e057de9edbf96f3c387207fda8ba750f9
 SHA1 (patch-src_bootstrap_src_core_build__steps_compile.rs) = e928203ed4734c93cc33c5a3f7879cf18dcecc83
 SHA1 (patch-src_bootstrap_src_core_build__steps_install.rs) = cc6558df42c9c9ac28fdb2ff180bdaa7f22ce816
-SHA1 (patch-src_bootstrap_src_core_builder.rs) = 952c31f21698daedf74eb9d0efece1c0ca1105bb
+SHA1 (patch-src_bootstrap_src_core_builder.rs) = 6d996c1b82755a5cf81761dc65c88572641aec10
 SHA1 (patch-src_bootstrap_src_lib.rs) = d29bc3c0b335d5e788eecbb02fc08966beef0fb1
 SHA1 (patch-src_llvm-project_llvm_CMakeLists.txt) = 7abfabb6ec70df229a69355f8c76825610165c37
 SHA1 (patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake) = e1b2eb2f0b3cf1cf87b443656ae306b3242f6b12
diff --git a/rust183/patches/patch-src_bootstrap_src_core_builder.rs b/rust183/patches/patch-src_bootstrap_src_core_builder.rs
index fcc7555523..9ed35e5c17 100644
--- a/rust183/patches/patch-src_bootstrap_src_core_builder.rs
+++ b/rust183/patches/patch-src_bootstrap_src_core_builder.rs
@@ -3,42 +3,34 @@ $NetBSD: patch-src_bootstrap_src_core_builder.rs,v 1.5 2024/07/27 02:35:24 tnn E
 Find external libunwind on Linux.
 Use @PREFIX@ in rpath.
 
-Also, following up on
-https://github.com/rust-lang/rust/issues/133629, reverse
-https://github.com/rust-lang/rust/pull/130899/commits/68034f837a39387e49fc7d7c5b088f5372a1127e
-to see if this fixes the cross-compile failure.
+Also, follow up on
+https://github.com/rust-lang/rust/issues/133629 by applying
+https://github.com/rust-lang/rust/pull/136309
+which should fix the cross-compile failure.
 
 --- src/bootstrap/src/core/builder.rs.orig	2024-11-26 10:12:09.000000000 +0000
 +++ src/bootstrap/src/core/builder.rs
-@@ -1698,24 +1698,10 @@ impl<'a> Builder<'a> {
-         match mode {
-             Mode::Std | Mode::ToolBootstrap | Mode::ToolStd => {}
-             Mode::Rustc | Mode::Codegen | Mode::ToolRustc => {
--                // Build proc macros both for the host and the target unless proc-macros are not
--                // supported by the target.
-+		// Build proc macros both for the host and the target
+@@ -1701,7 +1701,10 @@ impl<'a> Builder<'a> {
+                 // Build proc macros both for the host and the target unless proc-macros are not
+                 // supported by the target.
                  if target != compiler.host && cmd_kind != Kind::Check {
 -                    let error = command(self.rustc(compiler))
--                        .arg("--target")
--                        .arg(target.rustc_target_arg())
--                        .arg("--print=file-names")
--                        .arg("--crate-type=proc-macro")
--                        .arg("-")
--                        .run_capture(self)
--                        .stderr();
--                    let not_supported = error
--                        .lines()
--                        .any(|line| line.contains("unsupported crate type `proc-macro`"));
--                    if !not_supported {
--                        cargo.arg("-Zdual-proc-macros");
--                        rustflags.arg("-Zdual-proc-macros");
--                    }
-+		    cargo.arg("-Zdual-proc-macros");
-+		    rustflags.arg("-Zdual-proc-macros");
-                 }
-             }
-         }
-@@ -2262,6 +2248,11 @@ impl<'a> Builder<'a> {
++                    let mut rustc_cmd = command(self.rustc(compiler));
++                    self.add_rustc_lib_path(compiler, &mut rustc_cmd);
++
++                    let error = rustc_cmd
+                         .arg("--target")
+                         .arg(target.rustc_target_arg())
+                         .arg("--print=file-names")
+@@ -1709,6 +1712,7 @@ impl<'a> Builder<'a> {
+                         .arg("-")
+                         .run_capture(self)
+                         .stderr();
++
+                     let not_supported = error
+                         .lines()
+                         .any(|line| line.contains("unsupported crate type `proc-macro`"));
+@@ -2262,6 +2266,11 @@ impl<'a> Builder<'a> {
              rustdocflags.arg("--cfg=parallel_compiler");
          }
  


Home | Main Index | Thread Index | Old Index