use std::fs::File;
extern crate xc2bit;
use xc2bit::*;
extern crate xc2par;
use xc2par::*;
extern crate yosys_netlist_json;
extern crate slog_term;
#[macro_use]
extern crate slog;
use slog::Drain;
fn main() {
let args = ::std::env::args().collect::<Vec<_>>();
if args.len() != 2 {
println!("Usage: {} file.json", args[0]);
::std::process::exit(1);
}
let decorator = slog_term::TermDecorator::new().build();
let drain = slog_term::FullFormat::new(decorator).build().fuse();
let drain = std::sync::Mutex::new(drain).fuse();
let log = slog::Logger::root(drain, o!());
let f = File::open(&args[1]).expect("failed to open file");
let options = XC2ParOptions::new();
let device_type = XC2DeviceSpeedPackage::from_str("xc2c32a-4-vq44").expect("invalid device name");
xc2par_complete_flow(&options, device_type, f, ::std::io::stdout(), log).unwrap();
}