34 lines
921 B
Rust
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();
|
|
}
|
|
}
|