• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..20-Jan-2022-

src/H20-Jan-2022-159135

.cargo-checksum.jsonH A D03-May-202289 11

Cargo.tomlH A D20-Jan-2022944 2623

README.mdH A D20-Jan-20221.5 KiB6349

README.md

1# rustc_tools_util
2
3A small tool to help you generate version information
4for packages installed from a git repo
5
6## Usage
7
8Add a `build.rs` file to your repo and list it in `Cargo.toml`
9````
10build = "build.rs"
11````
12
13List rustc_tools_util as regular AND build dependency.
14````
15[dependencies]
16rustc_tools_util = "0.1"
17
18[build-dependencies]
19rustc_tools_util = "0.1"
20````
21
22In `build.rs`, generate the data in your `main()`
23````rust
24fn main() {
25    println!(
26        "cargo:rustc-env=GIT_HASH={}",
27        rustc_tools_util::get_commit_hash().unwrap_or_default()
28    );
29    println!(
30        "cargo:rustc-env=COMMIT_DATE={}",
31        rustc_tools_util::get_commit_date().unwrap_or_default()
32    );
33    println!(
34        "cargo:rustc-env=RUSTC_RELEASE_CHANNEL={}",
35        rustc_tools_util::get_channel().unwrap_or_default()
36    );
37}
38
39````
40
41Use the version information in your main.rs
42````rust
43use rustc_tools_util::*;
44
45fn show_version() {
46    let version_info = rustc_tools_util::get_version_info!();
47    println!("{}", version_info);
48}
49````
50This gives the following output in clippy:
51`clippy 0.0.212 (a416c5e 2018-12-14)`
52
53
54## License
55
56Copyright 2014-2019 The Rust Project Developers
57
58Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
59http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
60<LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
61option. All files in the project carrying such notice may not be
62copied, modified, or distributed except according to those terms.
63