dtob-sys 0.1.0

Raw FFI bindings to the dtob C library (encoder + decoder).
Documentation
use std::env;
use std::path::PathBuf;

fn main() {
    println!("cargo:rerun-if-changed=src/");
    println!("cargo:rerun-if-changed=lib/");
    println!("cargo:rerun-if-changed=wrapper.h");

    cc::Build::new()
        .include("lib")
        .include("src")
        .file("src/trit.c")
        .file("src/ast.c")
        .file("src/encoder.c")
        .file("src/lexer.c")
        .file("src/parser.c")
        .compile("dtob");

    let bindings = bindgen::Builder::default()
        .header("wrapper.h")
        .clang_arg("-Ilib")
        .parse_callbacks(Box::new(bindgen::CargoCallbacks::new()))
        .generate()
        .expect("Unable to generate dtob bindings");

    let out_path = PathBuf::from(env::var("OUT_DIR").unwrap());
    bindings
        .write_to_file(out_path.join("bindings.rs"))
        .expect("Couldn't write dtob bindings");
}