aboutsummaryrefslogtreecommitdiff
path: root/goodfile
blob: 92ebdf04c1b5c9e86a75c465a39be52a925a1209 (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
Build.dependencies({"git", "make", "rustc", "cargo", "rustup"})

Step.start("crate")
Step.push("build")
Build.run({"cargo", "build"})
-- and now that some code is conditional on target arch, at least try to build
-- for other architectures even if we might not be able to run on them.
Build.run({"rustup", "target", "add", "wasm32-wasi"})
Build.run({"cargo", "build", "--no-default-features", "--target", "wasm32-wasi"})

Step.advance("test")
-- TODO: set `-D warnings` here and below...
Build.run({"cargo", "test"}, {name="test default features"})

-- `cargo test` ends up running doc tests. great! but yaxpeax-arch's docs reference items in std only.
-- so for other feature combinations, skip doc tests. do this by passing `--tests` explicitly,
-- which disables the automagic "run everything" settings.
Build.run({"cargo", "test", "--no-default-features", "--tests"}, {name="test no features"})
Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std"}, {name="test std only"})
Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "colors"}, {name="test feature combinations"})
Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "use-serde"}, {name="test feature combinations"})
Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "address-parse"}, {name="test feature combinations"})
Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "alloc"}, {name="test feature combinations"})
Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "color-new"}, {name="test feature combinations"})
Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std,colors"}, {name="test feature combinations"})
Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std,use-serde"}, {name="test feature combinations"})
Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std,address-parse"}, {name="test feature combinations"})
Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std,address-parse,alloc"}, {name="test feature combinations"})
Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "use-serde,colors,address-parse"}, {name="test feature combinations"})
Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "use-serde,colors,address-parse,alloc"}, {name="test feature combinations"})
Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std,colors,address-parse"}, {name="test feature combinations"})
Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std,colors,address-parse,alloc"}, {name="test feature combinations"})
Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std,use-serde,colors"}, {name="test feature combinations"})
Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std,use-serde,colors,alloc"}, {name="test feature combinations"})
Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "color-new,alloc"}, {name="test feature combinations"})