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
|
Build.dependencies({"git", "make", "rustc", "cargo"})
Build.metric(
"nightly version",
string.gsub(Build.check_output({"rustc", "--version"}).stdout, '^%s*(.*)%s*$', '%1')
)
Step.start("crate")
Step.push("build")
Build.run({"cargo", "build"})
Step.advance("test")
Build.run({"cargo", "test"}, {name="test stdlib/fmt"})
Build.run({"cargo", "test", "--no-default-features"}, {name="test nostdlib/fmt"})
-- testing the full set of feature combinations would be.. unwieldy
Step.push("feature matrix (subset)")
Build.run({"cargo", "test", "--no-default-features", "--features", "std"}, {name="test features/fmt"})
Build.run({"cargo", "test", "--no-default-features", "--features", "alloc"}, {name="test features/alloc"})
Build.run({"cargo", "test", "--no-default-features", "--features", "fmt"}, {name="test features/fmt"})
Build.run({"cargo", "test", "--no-default-features", "--features", "use-serde"}, {name="test features/use-serde"})
Build.run({"cargo", "test", "--no-default-features", "--features", "non-exhaustive-enums"}, {name="test features/non-exhaustive-enums"})
Build.run({"cargo", "test", "--no-default-features", "--features", "std,alloc"}, {name="test features/std,alloc"})
Build.run({"cargo", "test", "--no-default-features", "--features", "alloc,fmt"}, {name="test features/alloc,fmt"})
Build.run({"cargo", "test", "--no-default-features", "--features", "use-serde,alloc,fmt"}, {name="test features/use-serde,alloc,fmt"})
Step.advance("no-std checks")
Build.run({"cargo", "rustc", "--no-default-features", "--", "-C", "link-arg=-nostartfiles"}, {cwd="tests/no_std_check"})
Build.run({"cargo", "rustc", "--no-default-features", "--release", "--", "-C", "link-arg=-nostartfiles"}, {cwd="tests/no_std_check"})
Step.advance("differential")
Build.run({"cargo", "build", "--release"}, {cwd="differential-tests", name="build capstone differential"})
|