Refactor: check env variable

This commit is contained in:
Asura 2022-09-02 05:41:50 -07:00
parent 815d02b728
commit 15b8a5592d

View File

@ -41,6 +41,16 @@ fn build_rc_source() {
.unwrap(); .unwrap();
} }
fn check_environment() {
// Check env variable
let env_list = vec!["LLVM_HOME", "VCPKG_ROOT"];
for env in env_list.iter() {
if std::env::var(env).is_err() {
panic!("Missing environment variable: {:?}", env);
};
}
}
fn install_oboe() { fn install_oboe() {
let target_os = std::env::var("CARGO_CFG_TARGET_OS").unwrap(); let target_os = std::env::var("CARGO_CFG_TARGET_OS").unwrap();
if target_os != "android" { if target_os != "android" {
@ -83,16 +93,10 @@ fn gen_flutter_rust_bridge() {
.args(["pub", "get"]) .args(["pub", "get"])
.current_dir("./flutter") .current_dir("./flutter")
.output() .output()
.expect("failed to execute flutter pub get"); .expect("Failed to execute flutter pub get");
}; };
let llvm_path = match std::env::var("LLVM_HOME") { let llvm_path = match std::env::var("LLVM_HOME") {
Ok(path) => { Ok(path) => Some(vec![path]),
if !path.is_empty() {
Some(vec![path])
} else {
panic!("Missing LLVM_HOME environment variable");
}
}
Err(_) => panic!("Failure to get environments"), Err(_) => panic!("Failure to get environments"),
}; };
@ -115,6 +119,8 @@ fn gen_flutter_rust_bridge() {
} }
fn main() { fn main() {
check_environment();
hbb_common::gen_version(); hbb_common::gen_version();
install_oboe(); install_oboe();
// there is problem with cfg(target_os) in build.rs, so use our workaround // there is problem with cfg(target_os) in build.rs, so use our workaround