...
1 package dwarftestdata
2
3 import (
4 "bytes"
5 "embed"
6 "fmt"
7 "os/exec"
8 )
9
10
11
12
13
14
15
16 var TinyGoWasm []byte
17
18
19 var ZigWasm []byte
20
21
22 var ZigCCWasm []byte
23
24
25
26 var RustWasm []byte
27
28
29 var testRustDir embed.FS
30
31 func init() {
32 const wasmPath = "testdata/rust/main.wasm"
33 var err error
34 RustWasm, err = testRustDir.ReadFile(wasmPath)
35 if err != nil {
36 const xzPath = "testdata/rust/main.wasm.xz"
37 xzWasm, err := testRustDir.ReadFile(xzPath)
38 if err != nil {
39 panic(err)
40 }
41 cmd := exec.Command("xz", "-d")
42 cmd.Stdin = bytes.NewReader(xzWasm)
43 out := bytes.NewBuffer(nil)
44 cmd.Stdout = out
45 if err = cmd.Run(); err != nil {
46 fmt.Printf("Skipping DWARF tests for rusts as xz command failed: %v", err)
47 return
48 }
49 RustWasm = out.Bytes()
50 }
51 }
52
View as plain text