blob: c68ceba15e822e352a51c5df8bd779243392e03b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
From 4b7e0a0b56aa2446e670dfd6558380a1039a86aa Mon Sep 17 00:00:00 2001
From: Arlo Siemsen <arsiem@microsoft.com>
Date: Thu, 4 Jan 2024 11:40:56 -0600
Subject: [PATCH] Handle vendored sources when remapping paths
Signed-off-by: Randy Barlow <randy@electronsweatshop.com>
---
src/bootstrap/src/core/builder.rs | 19 ++++++++++++-------
1 file changed, 12 insertions(+), 7 deletions(-)
diff --git a/src/bootstrap/src/core/builder.rs b/src/bootstrap/src/core/builder.rs
index 4e20babc55a..3770d0687b2 100644
--- a/src/bootstrap/src/core/builder.rs
+++ b/src/bootstrap/src/core/builder.rs
@@ -1799,15 +1799,20 @@ pub fn cargo(
}
if self.config.rust_remap_debuginfo {
- // FIXME: handle vendored sources
- let registry_src = t!(home::cargo_home()).join("registry").join("src");
let mut env_var = OsString::new();
- for entry in t!(std::fs::read_dir(registry_src)) {
- if !env_var.is_empty() {
- env_var.push("\t");
- }
- env_var.push(t!(entry).path());
+ if self.config.vendor {
+ let vendor = self.build.src.join("vendor");
+ env_var.push(vendor);
env_var.push("=/rust/deps");
+ } else {
+ let registry_src = t!(home::cargo_home()).join("registry").join("src");
+ for entry in t!(std::fs::read_dir(registry_src)) {
+ if !env_var.is_empty() {
+ env_var.push("\t");
+ }
+ env_var.push(t!(entry).path());
+ env_var.push("=/rust/deps");
+ }
}
cargo.env("RUSTC_CARGO_REGISTRY_SRC_TO_REMAP", env_var);
}
--
2.43.0
|