From 0387fbd9ac7536773a5e7ed5dcbfcd199bc74fd2 Mon Sep 17 00:00:00 2001 From: ratamovic Date: Mon, 8 Jan 2018 17:52:52 +0100 Subject: [PATCH] Changed PKG_CONFIG env variable name --- .gitignore | 2 ++ src/lib.rs | 18 ++++++++++-------- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/.gitignore b/.gitignore index 4fffb2f..d6904d2 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,4 @@ /target /Cargo.lock +.idea +*.iml diff --git a/src/lib.rs b/src/lib.rs index 4079c4f..e4a295d 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -371,16 +371,18 @@ impl Config { get_variable(package, variable).map_err(|e| e.to_string()) } - fn targetted_env_var(&self, name: &str) -> Result { + fn targetted_env_var(&self, var_base: &str) -> Result { if let Ok(target) = env::var("TARGET") { - let targetted_name = format!("{}_{}", envify(&target), name); - match self.env_var(&targetted_name) { - Ok(value) => { Ok(value) }, - Err(env::VarError::NotPresent) => { self.env_var(name) }, - Err(e) => { Err(e) } - } + let host = env::var("HOST")?; + let kind = if host == target { "HOST" } else { "TARGET" }; + let target_u = target.replace("-", "_"); + + self.env_var(&format!("{}_{}", var_base, target)) + .or_else(|_| self.env_var(&format!("{}_{}", var_base, target_u))) + .or_else(|_| self.env_var(&format!("{}_{}", kind, var_base))) + .or_else(|_| self.env_var(var_base)) } else { - self.env_var(name) + self.env_var(var_base) } }