blob: cb9cae9b08d418e422d831fc932c1f5060b9f792 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
#![feature(env, process)]
use std::env;
use std::process::Command;
pub fn main() {
let root = env::var("CARGO_MANIFEST_DIR").unwrap();
let make = root.clone() + "/Makefile";
let src = root.clone() + "/src";
let out = env::var("OUT_DIR").unwrap();
let target = env::var("TARGET").unwrap();
let os = if target.contains("linux") {
"LINUX"
} else if target.contains("darwin") {
"DARWIN"
} else {
"UNKNOWN"
};
let res = Command::new("make")
.arg("-f").arg(&make)
.current_dir(&out)
.env("VPATH", &src)
.env("OS", os)
.spawn().unwrap()
.wait().unwrap();
assert!(res.success());
println!("cargo:rustc-flags=-L {}/", out);
}
|