Add the LLVMParseCommandLineOptions binding
@@ -5,6 +5,7 @@ use libc::c_char;
use llvm_sys::core::{LLVMCreateMessage, LLVMDisposeMessage};
use llvm_sys::error_handling::LLVMEnablePrettyStackTrace;
use llvm_sys::support::LLVMLoadLibraryPermanently;
+use llvm_sys::support::LLVMParseCommandLineOptions;
use std::borrow::Cow;
use std::error::Error;
@@ -123,6 +124,18 @@ pub unsafe fn shutdown_llvm() {
LLVMShutdown()
}
+pub fn parse_command_line_options(argc: i32, argv: &[&str], overview: &str) {
+ let argv: Vec<*const ::libc::c_char> = argv
+ .iter()
+ .map(|arg| to_c_str(arg).as_ptr())
+ .collect();
+ let overview = to_c_str(overview);
+
+ unsafe {
+ LLVMParseCommandLineOptions(argc, argv.as_ptr(), overview.as_ptr());
+ }
+}
+
pub fn load_library_permanently(filename: &str) -> bool {
let filename = to_c_str(filename);
