oracle-nosql-db-sdk-rust 0.3.1

oracle nosql db sdk for rust
use std::{env, path::Path};

fn main() {
    let out_dir = env::var("OUT_DIR").unwrap();

    if cfg!(debug_assertions) {
        cgo_oligami::Build::new()
            .build_mode(cgo_oligami::BuildMode::CArchive)
            .change_dir("./golib")
            // .out_dir("target/debug")
            .out_dir(&Path::new(&out_dir))
            .package("main.go")
            .build("nosql_db_sdk_ffi");
    } else {
        cgo_oligami::Build::new()
            .build_mode(cgo_oligami::BuildMode::CArchive)
            .ldflags("-s -w")
            .trimpath(true)
            .change_dir("./golib")
            // .out_dir("target/release")
            .out_dir(&Path::new(&out_dir))
            .package("main.go")
            .build("nosql_db_sdk_ffi_release");
    };

    println!("cargo:rerun-if-changed=golib/main.go");

    // let path = if cfg!(debug_assertions) {
    //     "./golib/target/debug"
    // } else {
    //     "./golib/target/release"
    // };
    let mut lib = if cfg!(debug_assertions) {
        "nosql_db_sdk_ffi"
    } else {
        "nosql_db_sdk_ffi_release"
    }
    .to_string();
    if std::env::consts::OS == "windows" {
        lib = format!("lib{lib}");
    }
    println!("cargo:rustc-link-search=native={}", out_dir);
    println!("cargo:rustc-link-lib=static={}", lib);
}