| use std::{env, path}; |
| |
| use rustc_windows_rc::{VersionInfoFileType, compile_windows_resource_file}; |
| |
| fn main() { |
| let target_os = env::var("CARGO_CFG_TARGET_OS"); |
| let target_env = env::var("CARGO_CFG_TARGET_ENV"); |
| if Ok("windows") == target_os.as_deref() && Ok("msvc") == target_env.as_deref() { |
| set_windows_dll_options(); |
| } else { |
| // Avoid rerunning the build script every time. |
| println!("cargo:rerun-if-changed=build.rs"); |
| } |
| } |
| |
| fn set_windows_dll_options() { |
| let stem = path::PathBuf::from("rustc_driver_resource"); |
| let file_description = "rustc_driver"; |
| let res_file = compile_windows_resource_file(&stem, file_description, VersionInfoFileType::Dll); |
| println!("cargo:rustc-link-arg={}", res_file.display()); |
| } |