veryl/crates/std/build.rs
2024-09-02 18:24:03 +09:00

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");
}