mirror of
https://github.com/veryl-lang/veryl.git
synced 2025-07-13 07:55:01 +00:00
28 lines
742 B
Rust
28 lines
742 B
Rust
use merkle_hash::{Algorithm, Encodable, MerkleTree};
|
|
use std::env;
|
|
use std::fs;
|
|
use std::path::Path;
|
|
|
|
fn main() {
|
|
let tree = MerkleTree::builder("./veryl/src")
|
|
.algorithm(Algorithm::Blake3)
|
|
.hash_names(true)
|
|
.build()
|
|
.unwrap();
|
|
println!(
|
|
"cargo:warning=std hash: {}",
|
|
tree.root.item.hash.to_hex_string()
|
|
);
|
|
|
|
let out_dir = env::var_os("OUT_DIR").unwrap();
|
|
let dest_path = Path::new(&out_dir).join("std_hash.rs");
|
|
fs::write(
|
|
&dest_path,
|
|
format!(
|
|
"const STD_HASH: &str = \"{}\";",
|
|
tree.root.item.hash.to_hex_string(),
|
|
),
|
|
)
|
|
.unwrap();
|
|
println!("cargo::rerun-if-changed=./veryl/src");
|
|
}
|