use std::env;
use std::io;
use std::process::Command;
fn main() -> io::Result<()> {
let lib_root_dir_str = env!("CARGO_MANIFEST_DIR");
let home_dir = env::var("HOME").expect("Could not get $HOME");
let out_dir = format!("{}/.flow/lib/flowstdlib", home_dir);
println!("cargo:rerun-if-changed={lib_root_dir_str}");
let mut command = Command::new("flowc");
let command_args = vec!["-d", "-g", "-l", "-O", "-o", &out_dir, lib_root_dir_str];
match command.args(&command_args).status() {
Ok(stat) => {
if !stat.success() {
eprintln!("Error building flowstdlib, command line\nflowc {}",
command_args.join(" "));
std::process::exit(1);
}
}
Err(err) => {
eprintln!("Error building flowstdlib, command line\nflowc {}\nError: {}",
command_args.join(" "), err);
std::process::exit(1);
}
}
Ok(())
}