pub fn link_dylib_with_extra_srcs(
    funcs: Vec<MuName>,
    srcs: Vec<String>,
    out: &str,
    vm: &VM
) -> PathBuf {
    let files = {
        let mut ret = vec![];

        for func in funcs {
            ret.push(get_path_for_mu_func(func, vm));
        }

        for src in srcs {
            ret.push(PathBuf::from(src));
        }

        ret.push(get_path_for_mu_context(vm));

        ret
    };

    let mut out_path = PathBuf::from(&vm.vm_options.flag_aot_emit_dir);
    out_path.push(out);

    link_dylib_internal(
        files,
        &vm.vm_options.flag_bootimage_external_lib,
        &vm.vm_options.flag_bootimage_external_libpath,
        out_path
    )
}
/// links generated code for the given functions with a few external sources
/// to produce a dynamic library of the given name
links generated code for the given functions with a few external sources
to produce a dynamic library of the given name
links generated code for the given functions with a few external sources to produce a dynamic library of the given name
pub fn link_dylib_with_extra_srcs(
    funcs: Vec<MuName>,
    srcs: Vec<String>,
    out: &str,
    vm: &VM
) -> PathBuf {
    let files = {
        let mut ret = vec![];
        for func in funcs {
            ret.push(get_path_for_mu_func(func, vm));
        }
        for src in srcs {
            ret.push(PathBuf::from(src));
        }
        ret.push(get_path_for_mu_context(vm));
        ret
    };
    let mut out_path = PathBuf::from(&vm.vm_options.flag_aot_emit_dir);
    out_path.push(out);
    link_dylib_internal(
        files,
        &vm.vm_options.flag_bootimage_external_lib,
        &vm.vm_options.flag_bootimage_external_libpath,
        out_path
    )
}
pub fn link_dylib_with_extra_srcs ( funcs : Vec < MuName > , srcs : Vec < String > , out : & str , vm : & VM ) -> PathBuf { let files = { let mut ret = vec ! [ ] ; for func in funcs { ret . push ( get_path_for_mu_func ( func , vm ) ) ; } for src in srcs { ret . push ( PathBuf :: from ( src ) ) ; } ret . push ( get_path_for_mu_context ( vm ) ) ; ret } ; let mut out_path = PathBuf :: from ( & vm . vm_options . flag_aot_emit_dir ) ; out_path . push ( out ) ; link_dylib_internal ( files , & vm . vm_options . flag_bootimage_external_lib , & vm . vm_options . flag_bootimage_external_libpath , out_path ) }
links generated code for the given functions with a few external sources
to produce a dynamic library of the given name
links generated code for the given functions with a few external sources to produce a dynamic library of the given name
funcs
Vec<MuName>
srcs
Vec<String>
out
&str
vm
&VM
funcs
Vec<MuName>
srcs
Vec<String>
out
&str
vm
&VM