Crates.io | build_metadata |
lib.rs | build_metadata |
version | 0.1.0 |
source | src |
created_at | 2017-08-28 10:34:04.93278 |
updated_at | 2017-08-28 10:34:04.93278 |
description | embed repository metadata in your code at compile time |
homepage | |
repository | https://github.com/Geal/build-metadata |
max_upload_size | |
id | 29570 |
size | 5,696 |
use this crate to embed repository and build metadata at compile time
This project uses procedural macros to provide you with this metadata, exposing three macros:
head!()
: the name of the current git branch or tag you are incommit!()
: short git commit idtime!()
: UTC build time. This value is cached, so it will stay the same for every call in one crate. Note that using this makes the build non reproducible (since the resulting binary will change depending on build time)Import it with cargo from crates.io
by adding this to you Cargo.toml` file:
[dependencies]
build_metadata = "^0.1"
#![feature(plugin)]
#![plugin(build_metadata)]
fn main() {
println!("build time: {}", time!());
println!("head: {}", head!());
println!("commit id: {}", commit!());
}