diff options
Diffstat (limited to 'xtask')
| -rw-r--r-- | xtask/Cargo.toml | 6 | ||||
| -rw-r--r-- | xtask/src/main.rs | 24 |
2 files changed, 30 insertions, 0 deletions
diff --git a/xtask/Cargo.toml b/xtask/Cargo.toml new file mode 100644 index 0000000..337bfe3 --- /dev/null +++ b/xtask/Cargo.toml @@ -0,0 +1,6 @@ +[package] +name = "xtask" +version = "0.1.0" +edition = "2021" + +[dependencies] diff --git a/xtask/src/main.rs b/xtask/src/main.rs new file mode 100644 index 0000000..e955925 --- /dev/null +++ b/xtask/src/main.rs @@ -0,0 +1,24 @@ +use std::process::Command; + +fn main() +{ + let mut args = std::env::args(); + + let Some(task) = args.nth(1) else { + println!("Error: No task is specified"); + return; + }; + + if task == "execute" { + let Some(program) = args.next() else { + println!("Error: No program is specified"); + return; + }; + + if let Err(err) = Command::new(program).args(args).status() { + println!("Error: Failed to execute command: {err}"); + } + } else { + println!("Error: Unknown task '{task}'"); + } +} |
