Loading openssl-sys/build/find_normal.rs +42 −23 Original line number Diff line number Diff line Loading @@ -21,19 +21,19 @@ pub fn get_openssl(target: &str) -> (PathBuf, PathBuf) { } } fn find_openssl_dir(target: &str) -> OsString { let host = env::var("HOST").unwrap(); if host == target && target.contains("apple-darwin") { // Check up default Homebrew installation location first fn resolve_with_wellknown_homebrew_location(dir: &str) -> Option<PathBuf> { // Check up default aarch 64 Homebrew installation location first // for quick resolution if possible. let homebrew = Path::new("/usr/local/opt/openssl@1.1"); // `pkg-config` on brew doesn't necessarily contain settings for openssl apparently. let mut version_dir = dir.to_owned(); version_dir.push_str("@1.1"); let homebrew = Path::new(&version_dir); if homebrew.exists() { return homebrew.to_path_buf().into(); return Some(homebrew.to_path_buf()); } let homebrew = Path::new("/usr/local/opt/openssl"); let homebrew = Path::new(dir); if homebrew.exists() { return homebrew.to_path_buf().into(); return Some(homebrew.to_path_buf()); } // Calling `brew --prefix <package>` command usually slow and // takes seconds, and will be used only as a last resort. Loading @@ -41,14 +41,33 @@ fn find_openssl_dir(target: &str) -> OsString { if let Some(ref output) = output { let homebrew = Path::new(&output); if homebrew.exists() { return homebrew.to_path_buf().into(); return Some(homebrew.to_path_buf()); } } let output = execute_command_and_get_output("brew", &["--prefix", "openssl"]); if let Some(ref output) = output { let homebrew = Path::new(&output); if homebrew.exists() { return homebrew.to_path_buf().into(); return Some(homebrew.to_path_buf()); } } None } fn find_openssl_dir(target: &str) -> OsString { let host = env::var("HOST").unwrap(); if host == target { if target == "aarch64-apple-darwin" { if let Some(dir) = resolve_with_wellknown_homebrew_location("/opt/homebrew/opt/openssl") { return dir.into(); } } else if target.contains("apple-darwin") { if let Some(dir) = resolve_with_wellknown_homebrew_location("/usr/local/opt/openssl") { return dir.into(); } } } Loading Loading
openssl-sys/build/find_normal.rs +42 −23 Original line number Diff line number Diff line Loading @@ -21,19 +21,19 @@ pub fn get_openssl(target: &str) -> (PathBuf, PathBuf) { } } fn find_openssl_dir(target: &str) -> OsString { let host = env::var("HOST").unwrap(); if host == target && target.contains("apple-darwin") { // Check up default Homebrew installation location first fn resolve_with_wellknown_homebrew_location(dir: &str) -> Option<PathBuf> { // Check up default aarch 64 Homebrew installation location first // for quick resolution if possible. let homebrew = Path::new("/usr/local/opt/openssl@1.1"); // `pkg-config` on brew doesn't necessarily contain settings for openssl apparently. let mut version_dir = dir.to_owned(); version_dir.push_str("@1.1"); let homebrew = Path::new(&version_dir); if homebrew.exists() { return homebrew.to_path_buf().into(); return Some(homebrew.to_path_buf()); } let homebrew = Path::new("/usr/local/opt/openssl"); let homebrew = Path::new(dir); if homebrew.exists() { return homebrew.to_path_buf().into(); return Some(homebrew.to_path_buf()); } // Calling `brew --prefix <package>` command usually slow and // takes seconds, and will be used only as a last resort. Loading @@ -41,14 +41,33 @@ fn find_openssl_dir(target: &str) -> OsString { if let Some(ref output) = output { let homebrew = Path::new(&output); if homebrew.exists() { return homebrew.to_path_buf().into(); return Some(homebrew.to_path_buf()); } } let output = execute_command_and_get_output("brew", &["--prefix", "openssl"]); if let Some(ref output) = output { let homebrew = Path::new(&output); if homebrew.exists() { return homebrew.to_path_buf().into(); return Some(homebrew.to_path_buf()); } } None } fn find_openssl_dir(target: &str) -> OsString { let host = env::var("HOST").unwrap(); if host == target { if target == "aarch64-apple-darwin" { if let Some(dir) = resolve_with_wellknown_homebrew_location("/opt/homebrew/opt/openssl") { return dir.into(); } } else if target.contains("apple-darwin") { if let Some(dir) = resolve_with_wellknown_homebrew_location("/usr/local/opt/openssl") { return dir.into(); } } } Loading