ninja_files_mdbook/
lib.rs1use ninja_files_data::*;
2
3const MDBOOK: &str = "mdbook-build";
4pub fn mdbook<Book, Out>(book: Book, out: Out) -> FileBuilder
5where
6 Book: AsRef<Utf8Path>,
7 Out: AsRef<Utf8Path>,
8{
9 let dir = book.as_ref().parent().unwrap();
10 let command = CommandBuilder::new("mdbook").arg("build").arg("$dir");
11 let rule = RuleBuilder::new(command);
12
13 let build = BuildBuilder::new(MDBOOK)
14 .implicit(&book)
15 .variable("dir", dir);
16 FileBuilder::new().rule(MDBOOK, rule).file(out, build)
17}