in aws-lc-sys/builder/main.rs [424:464]
fn get_builder(prefix: &Option<String>, manifest_dir: &Path, out_dir: &Path) -> Box<dyn Builder> {
let cmake_builder_builder = || {
Box::new(CmakeBuilder::new(
manifest_dir.to_path_buf(),
out_dir.to_path_buf(),
prefix.clone(),
OutputLibType::default(),
))
};
let cc_builder_builder = || {
Box::new(CcBuilder::new(
manifest_dir.to_path_buf(),
out_dir.to_path_buf(),
prefix.clone(),
OutputLibType::default(),
))
};
if let Some(val) = is_cmake_builder() {
let builder: Box<dyn Builder> = if val {
cmake_builder_builder()
} else {
cc_builder_builder()
};
builder.check_dependencies().unwrap();
return builder;
} else if is_no_asm() {
let builder = cmake_builder_builder();
builder.check_dependencies().unwrap();
return builder;
} else if !is_bindgen_required() {
let cc_builder = cc_builder_builder();
if cc_builder.check_dependencies().is_ok() {
return cc_builder;
}
}
let cmake_builder = cmake_builder_builder();
cmake_builder.check_dependencies().unwrap();
cmake_builder
}