lib-ruby-parser 3.0.7

Ruby parser
Documentation
mod codegen;

fn main() {
    codegen::codegen();

    link_with_external_structures();
}

#[cfg(feature = "link-with-external-c-structures")]
pub(crate) fn link_with_external_structures() {
    println!("cargo:rustc-link-search=external/c");
    println!("cargo:rustc-link-lib=static=structures");
    println!("cargo:rerun-if-changed=external/c/libstructures.a");
}

#[cfg(feature = "link-with-external-cpp-structures")]
pub(crate) fn link_with_external_structures() {
    println!("cargo:rustc-link-search=external/cpp");
    println!("cargo:rustc-link-lib=static=structures");
    println!("cargo:rerun-if-changed=external/cpplibstructures.a");

    println!("cargo:rustc-link-lib=dylib=c++");
    if cfg!(target_os = "linux") {
        println!("cargo:rustc-link-lib=dylib=stdc++");
    }
}

#[cfg(not(any(
    feature = "link-with-external-c-structures",
    feature = "link-with-external-cpp-structures"
)))]
pub(crate) fn link_with_external_structures() {
    println!("Skipping linking with external structures")
}