21 lines
479 B
Rust
21 lines
479 B
Rust
|
use std::{
|
||
|
os::unix::process::ExitStatusExt,
|
||
|
process::{Command, ExitStatus, Output},
|
||
|
};
|
||
|
fn main() {
|
||
|
let output = String::from_utf8(
|
||
|
Command::new("git")
|
||
|
.args(["rev-parse", "HEAD"])
|
||
|
.output()
|
||
|
.unwrap_or(Output {
|
||
|
stdout: vec![],
|
||
|
stderr: vec![],
|
||
|
status: ExitStatus::from_raw(0),
|
||
|
})
|
||
|
.stdout,
|
||
|
)
|
||
|
.unwrap_or_default();
|
||
|
let git_hash = if output == String::default() { "dev".into() } else { output };
|
||
|
println!("cargo:rustc-env=GIT_HASH={git_hash}");
|
||
|
}
|