lua51-sys 0.1.0

Bindings for Lua 5.1.5
Documentation
extern crate cc;
extern crate bindgen;

use std::{
    env,
    path::Path,
};

fn main() {
    let bindings_file = Path::new(&env::var("OUT_DIR").unwrap()).join("lua.rs");

    cc::Build::new()
        .file("lua/src/lapi.c")
        .file("lua/src/lauxlib.c")
        .file("lua/src/lbaselib.c")
        .file("lua/src/lcode.c")
        .file("lua/src/ldblib.c")
        .file("lua/src/ldebug.c")
        .file("lua/src/ldo.c")
        .file("lua/src/ldump.c")
        .file("lua/src/lfunc.c")
        .file("lua/src/lgc.c")
        .file("lua/src/linit.c")
        .file("lua/src/liolib.c")
        .file("lua/src/llex.c")
        .file("lua/src/lmathlib.c")
        .file("lua/src/lmem.c")
        .file("lua/src/loadlib.c")
        .file("lua/src/lobject.c")
        .file("lua/src/lopcodes.c")
        .file("lua/src/loslib.c")
        .file("lua/src/lparser.c")
        .file("lua/src/lstate.c")
        .file("lua/src/lstring.c")
        .file("lua/src/lstrlib.c")
        .file("lua/src/ltable.c")
        .file("lua/src/ltablib.c")
        .file("lua/src/ltm.c")
        .file("lua/src/lua.c")
        .file("lua/src/luac.c")
        .file("lua/src/lundump.c")
        .file("lua/src/lvm.c")
        .file("lua/src/lzio.c")
        .file("lua/src/print.c")
        .include("lua/src")
        .compile("liblua.a");

    bindgen::builder()
        .header("src/helper.h")
        .clang_arg("-Ilua/src")
        .whitelist_type("luaL?_.*")
        .whitelist_function("luaL?_.*")
        .whitelist_var("LUA_.*")
        .generate()
        .expect("Could not generate Lua bindings")
        .write_to_file(bindings_file)
        .expect("Could not write bindings file");
}