diff options
| author | Gustav Sörnäs <gustav@sornas.net> | 2021-03-22 00:21:03 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-03-22 00:21:03 +0100 |
| commit | a5c26eaad44c45da852027d707bf1d8e838ed901 (patch) | |
| tree | 274ae2e59e70d399c68c40eb939b3f82426b899e /mumd | |
| parent | 97bfcac402c06fd051f5a8c3c05384d5a2972d50 (diff) | |
| parent | a8e24b8f92e23bb8c64d8056ac1a5d882cb94de2 (diff) | |
| download | mum-a5c26eaad44c45da852027d707bf1d8e838ed901.tar.gz | |
Merge pull request #63 from mum-rs/git-hash-version
Diffstat (limited to 'mumd')
| -rw-r--r-- | mumd/build.rs | 19 | ||||
| -rw-r--r-- | mumd/src/main.rs | 5 |
2 files changed, 24 insertions, 0 deletions
diff --git a/mumd/build.rs b/mumd/build.rs new file mode 100644 index 0000000..0a4f506 --- /dev/null +++ b/mumd/build.rs @@ -0,0 +1,19 @@ +use std::process::Command; + +fn main() { + let version = match commit_hash().as_deref() { + None | Some("") => format!("v{}", env!("CARGO_PKG_VERSION")), + Some(version) => version.to_string(), + }; + + println!("cargo:rustc-env=VERSION={}", version); +} + +fn commit_hash() -> Option<String> { + let output = Command::new("git") + .arg("describe") + .arg("--tags") + .current_dir(env!("CARGO_MANIFEST_DIR")) + .output(); + output.ok().map(|o| String::from_utf8_lossy(&o.stdout).to_string()) +} diff --git a/mumd/src/main.rs b/mumd/src/main.rs index 0526930..7c3745c 100644 --- a/mumd/src/main.rs +++ b/mumd/src/main.rs @@ -15,6 +15,11 @@ use tokio::task::spawn_blocking; #[tokio::main] async fn main() { + if std::env::args().find(|s| s.as_str() == "--version").is_some() { + println!("mumd {}", env!("VERSION")); + return; + } + setup_logger(std::io::stderr(), true); notify::init(); |
