2023-06-14 20:28:01 -07:00
|
|
|
use std::error::Error;
|
2023-06-14 21:14:23 -07:00
|
|
|
use std::fs;
|
|
|
|
use std::iter::FromIterator;
|
|
|
|
use std::path::PathBuf;
|
|
|
|
|
|
|
|
use mandown::convert;
|
2023-06-14 20:28:01 -07:00
|
|
|
use vergen::EmitBuilder;
|
|
|
|
|
2023-06-14 21:14:23 -07:00
|
|
|
const IAMB_1_MD: &str = include_str!("docs/iamb.1.md");
|
|
|
|
const IAMB_5_MD: &str = include_str!("docs/iamb.5.md");
|
|
|
|
|
2023-06-14 20:28:01 -07:00
|
|
|
fn main() -> Result<(), Box<dyn Error>> {
|
|
|
|
EmitBuilder::builder().git_sha(true).emit()?;
|
2023-06-14 21:14:23 -07:00
|
|
|
|
|
|
|
// Build the manual pages.
|
|
|
|
println!("cargo:rerun-if-changed=docs/iamb.1.md");
|
|
|
|
println!("cargo:rerun-if-changed=docs/iamb.5.md");
|
|
|
|
|
|
|
|
let iamb_1 = convert(IAMB_1_MD, "IAMB", 1);
|
|
|
|
let iamb_5 = convert(IAMB_5_MD, "IAMB", 5);
|
|
|
|
|
2023-07-07 23:21:47 -07:00
|
|
|
let out_dir = std::env::var("OUT_DIR");
|
|
|
|
let out_dir = out_dir.as_deref().unwrap_or("docs");
|
|
|
|
|
|
|
|
fs::write(PathBuf::from_iter([out_dir, "iamb.1"]), iamb_1.as_bytes())?;
|
|
|
|
fs::write(PathBuf::from_iter([out_dir, "iamb.5"]), iamb_5.as_bytes())?;
|
2023-06-14 21:14:23 -07:00
|
|
|
|
2023-06-14 20:28:01 -07:00
|
|
|
Ok(())
|
|
|
|
}
|