2018-01-29 07:34:22 +00:00
|
|
|
extern crate sass_rs as sass;
|
|
|
|
|
|
|
|
use std::env;
|
2021-02-10 11:49:35 +00:00
|
|
|
use std::fs;
|
2018-01-29 07:34:22 +00:00
|
|
|
use std::path::Path;
|
|
|
|
|
2021-02-10 11:49:35 +00:00
|
|
|
use sha1::{Digest, Sha1};
|
|
|
|
|
2018-01-29 07:34:22 +00:00
|
|
|
fn build_style() -> String {
|
|
|
|
let options = sass::Options {
|
|
|
|
output_style: sass::OutputStyle::Compressed,
|
|
|
|
..Default::default()
|
|
|
|
};
|
|
|
|
|
2020-09-28 22:53:20 +00:00
|
|
|
sass::compile_file("./assets/styles/main.sass", options).expect("failed to compile style sheet")
|
2018-01-29 07:34:22 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
let out_dir = env::var("OUT_DIR").unwrap();
|
|
|
|
|
2021-02-10 11:49:35 +00:00
|
|
|
let style = build_style();
|
|
|
|
|
|
|
|
let css_path = Path::new(&out_dir).join("style.css");
|
|
|
|
fs::write(css_path, style.as_bytes()).unwrap();
|
|
|
|
|
|
|
|
let hash_path = Path::new(&out_dir).join("style.css.sha1");
|
|
|
|
let digest = Sha1::digest(style.as_bytes());
|
|
|
|
fs::write(hash_path, format!("{:x}", digest)).unwrap();
|
2018-01-29 07:34:22 +00:00
|
|
|
}
|