summaryrefslogtreecommitdiffstats
path: root/debian/patches/d-0003-cc-psm-rebuild-wasm32.patch
blob: d17b24beb92b1cb5d579d830a33a05fd4559b06f (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
46
47
48
From: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
Date: Sat, 2 Oct 2021 01:08:00 +0100
Subject: d-0003-cc-psm-rebuild-wasm32

---
 vendor/cc/src/lib.rs | 2 +-
 vendor/psm/build.rs  | 7 ++-----
 2 files changed, 3 insertions(+), 6 deletions(-)

diff --git a/vendor/cc/src/lib.rs b/vendor/cc/src/lib.rs
index 486d67e..723b2e9 100644
--- a/vendor/cc/src/lib.rs
+++ b/vendor/cc/src/lib.rs
@@ -2369,7 +2369,7 @@ impl Build {
                     || target == "wasm32-unknown-wasi"
                     || target == "wasm32-unknown-unknown"
                 {
-                    "clang".to_string()
+                    "rust-clang".to_string()
                 } else if target.contains("vxworks") {
                     if self.cpp {
                         "wr-c++".to_string()
diff --git a/vendor/psm/build.rs b/vendor/psm/build.rs
index 9d40212..e39549d 100644
--- a/vendor/psm/build.rs
+++ b/vendor/psm/build.rs
@@ -50,7 +50,7 @@ fn find_assembly(
         ("sparc", _, _, _) => Some(("src/arch/sparc_sysv.s", true)),
         ("riscv32", _, _, _) => Some(("src/arch/riscv.s", true)),
         ("riscv64", _, _, _) => Some(("src/arch/riscv64.s", true)),
-        ("wasm32", _, _, _) => Some(("src/arch/wasm32.o", true)),
+        ("wasm32", _, _, _) => Some(("src/arch/wasm32.s", true)),
         ("loongarch64", _, _, _) => Some(("src/arch/loongarch64.s", true)),
         _ => None,
     }
@@ -97,11 +97,8 @@ fn main() {
         cfg.define(&*format!("CFG_TARGET_ENV_{}", env), None);
     }
 
-    // For wasm targets we ship a precompiled `*.o` file so we just pass that
-    // directly to `ar` to assemble an archive. Otherwise we're actually
-    // compiling the source assembly file.
     if asm.ends_with(".o") {
-        cfg.object(asm);
+        panic!("Debian does not allow embedded object files in source code")
     } else {
         cfg.file(asm);
     }