1
Fork 0
userstyles/source/build.rs

34 lines
921 B
Rust

/// Build script for userstyles.
fn main() {
println!("cargo:rerun-if-changed=source/**");
let source_dir = std::path::PathBuf::from("source");
let build_dir = std::path::PathBuf::from("target/userstyles");
// Ensure the build directory exists.
std::fs::create_dir_all(&build_dir).unwrap();
for entry in std::fs::read_dir(&source_dir).unwrap().flatten() {
let entry_meta = entry.metadata().unwrap();
// Skip any files in the source directory.
if !entry_meta.is_dir() {
continue;
}
let style_name = entry.file_name();
let style_name = style_name.to_str().unwrap();
let source_style_dir = source_dir.join(style_name);
let css = rsass::compile_scss_path(
&source_style_dir.join(format!("{}.scss", style_name)),
rsass::output::Format::default(),
)
.unwrap();
std::fs::write(build_dir.join(format!("{}.css", style_name)), css).unwrap();
}
}