/// Generating build depfiles from parsed bindings. | |
use std::{collections::BTreeSet, path::PathBuf}; | |
#[derive(Debug)] | |
pub(crate) struct DepfileSpec { | |
pub output_module: String, | |
pub depfile_path: PathBuf, | |
} | |
impl DepfileSpec { | |
pub fn write(&self, deps: &BTreeSet<String>) -> std::io::Result<()> { | |
let mut buf = format!("{}:", self.output_module); | |
for file in deps { | |
buf = format!("{} {}", buf, file); | |
} | |
std::fs::write(&self.depfile_path, &buf) | |
} | |
} |