- let src = PathBuf::from(env::var("SRC").unwrap());
- println!("cargo:rustc-flags=-L {}/deps", src.parent().unwrap().display());
+ let out_dir = PathBuf::from(env::var("OUT_DIR").unwrap());
+ let root = PathBuf::from(env::var("BUILDER_ROOT").unwrap());
+ let file = format!("{}builder{}",
+ env::consts::DLL_PREFIX,
+ env::consts::DLL_SUFFIX);
+ let src = root.join(&file);
+ let dst = out_dir.join(&file);
+ fs::copy(src, dst).unwrap();
+ if cfg!(windows) {
+ fs::copy(root.join("builder.dll.lib"),
+ out_dir.join("builder.dll.lib")).unwrap();
+ }
+ println!("cargo:rustc-flags=-L {}", out_dir.display());