-
Notifications
You must be signed in to change notification settings - Fork 90
/
Makefile.toml
38 lines (33 loc) · 1.71 KB
/
Makefile.toml
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
# This file inherits defaults from
# https://github.com/sagiegurari/cargo-make/blob/0.36.0/src/lib/descriptor/makefiles/stable.toml
# This is a configuration file for the cargo plugin `cargo-make`. We use this plugin because of it's handling around
# cargo workspaces. Specifically, each task is run on workspace members indepedently, avoiding potential issues that
# arise from feature unification (https://doc.rust-lang.org/cargo/reference/features.html#feature-unification).
# Feature unification allows two unrelated crates with the same depedency to enable features on eachother.
# This is problematic when a crate is built independently (when publishing / being consumed from crates.io),
# and it implicitly depended on features enabled by other crates in the same workspace.
# While feature resolver v2 attempted to resolve this problem, it still comes up in certain scenarios.
# Disable built-in flows
[config]
# Skip loading of all core tasks which saves up a bit on toml parsing and task creation
skip_core_tasks = true
# Skips loading Git related environment variables
skip_git_env_info = true
# Skips loading rust related environment variables
skip_rust_env_info = true
# Skips loading the current crate related environment variables
skip_crate_env_info = true
[env]
CARGO_MAKE_EXTEND_WORKSPACE_MAKEFILE = true
[tasks.check]
description = "Compile code without linking. Faster than build to detect problems."
category = "Build"
command = "cargo"
args = ["check", "${@}"]
# skip compilation checks on tests since it will be tested anyways
env = { "CARGO_MAKE_WORKSPACE_SKIP_MEMBERS" = ["fuel-core-tests"] }
[tasks.test]
description = "Run tests on each workspace member"
category = "Test"
command = "cargo"
args = ["test", "${@}"]