diff --git a/build.rs b/build.rs index 6832254..f1e2e81 100644 --- a/build.rs +++ b/build.rs @@ -5,7 +5,7 @@ use std::process::{Command, Stdio}; use std::{env, fs::*, io::Write, path::PathBuf}; fn compute_static_hash() -> String { - //"find static/ -type f ! -path 'static/media/*' | sort | xargs stat --printf='%n %Y\n' | sha256sum" + //"find static/ -type f ! -path 'static/media/*' | sort | xargs stat -c'%n %Y' | openssl dgst -r" let find = Command::new("find") .args(&["static/", "-type", "f", "!", "-path", "static/media/*"]) @@ -20,17 +20,19 @@ fn compute_static_hash() -> String { .expect("failed sort command"); let xargs = Command::new("xargs") - .args(&["stat", "--printf='%n %Y\n'"]) + .args(&["stat", "-c'%n %Y'"]) .stdin(sort.stdout.unwrap()) .stdout(Stdio::piped()) .spawn() .expect("failed xargs command"); - let sha = Command::new("sha256sum") + let mut sha = Command::new("openssl") + .args(&["dgst", "-r"]) .stdin(xargs.stdout.unwrap()) .output() - .expect("failed sha256sum command"); + .expect("failed openssl command"); + sha.stdout.resize(64, 0); String::from_utf8(sha.stdout).unwrap() }