diff options
| author | Emīls <emils@mullvad.net> | 2018-06-18 14:45:04 +0100 |
|---|---|---|
| committer | Emīls Piņķis <emils@mullvad.net> | 2018-06-21 16:02:50 +0100 |
| commit | cf14b4c77e7c43a75062e217fa56c449ada016e5 (patch) | |
| tree | bc7cde7c2cd41fa7fac828600f444b09ad59c586 | |
| parent | 8fdcb6158ab45bda32598b9d8a1f7c50e278005c (diff) | |
| download | mullvadvpn-cf14b4c77e7c43a75062e217fa56c449ada016e5.tar.xz mullvadvpn-cf14b4c77e7c43a75062e217fa56c449ada016e5.zip | |
Add WinDNS to talpid-core/build.rs
| -rw-r--r-- | talpid-core/build.rs | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/talpid-core/build.rs b/talpid-core/build.rs index 7cf5b9475a..7b433cf28f 100644 --- a/talpid-core/build.rs +++ b/talpid-core/build.rs @@ -4,8 +4,21 @@ mod win { use std::path::PathBuf; static WINFW_BUILD_DIR: &'static str = "..\\windows\\winfw\\bin"; + static WINDNS_BUILD_DIR: &'static str = "..\\windows\\windns\\bin"; pub fn default_winfw_output_dir() -> PathBuf { + manifest_dir() + .join(WINFW_BUILD_DIR) + .join(&target_platform_dir()) + } + + pub fn default_windns_output_dir() -> PathBuf { + manifest_dir() + .join(WINDNS_BUILD_DIR) + .join(&target_platform_dir()) + } + + fn target_platform_dir() -> PathBuf { let target = env::var("TARGET").expect("TARGET env var not set"); let target_dir = match target.as_str() { @@ -13,8 +26,7 @@ mod win { "x86_64-pc-windows-msvc" => format!("x64-{}", get_build_mode()), _ => panic!("uncrecognized target: {}", target), }; - - manifest_dir().join(WINFW_BUILD_DIR).join(&target_dir) + target_dir.into() } fn manifest_dir() -> PathBuf { @@ -52,6 +64,18 @@ fn main() { .expect("failed to construct path for winfw include directory") ); println!("cargo:rustc-link-lib=dylib=winfw"); + + let windns_dir = env::var_os("WINDNS_INCLUDE_DIR") + .map(PathBuf::from) + .unwrap_or_else(default_windns_output_dir); + println!( + "cargo:rustc-link-search={}", + windns_dir + .to_str() + .expect("failed to construct path for windns include directory") + ); + + println!("cargo:rustc-link-lib=dylib=windns"); } #[cfg(not(windows))] |
