mirror of https://github.com/lukechilds/cc-rs.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.0 KiB
49 lines
1.0 KiB
extern crate tempdir;
|
|
extern crate gcc;
|
|
|
|
use std::env;
|
|
|
|
mod support;
|
|
use support::Test;
|
|
|
|
#[test]
|
|
fn main() {
|
|
ccache();
|
|
distcc();
|
|
ccache_spaces();
|
|
}
|
|
|
|
fn ccache() {
|
|
let test = Test::gnu();
|
|
test.shim("ccache");
|
|
|
|
env::set_var("CC", "ccache lol-this-is-not-a-compiler foo");
|
|
test.gcc().file("foo.c").compile("libfoo.a");
|
|
|
|
test.cmd(0)
|
|
.must_have("lol-this-is-not-a-compiler foo")
|
|
.must_have("foo.c")
|
|
.must_not_have("ccache");
|
|
}
|
|
|
|
fn ccache_spaces() {
|
|
let test = Test::gnu();
|
|
test.shim("ccache");
|
|
|
|
env::set_var("CC", "ccache lol-this-is-not-a-compiler foo");
|
|
test.gcc().file("foo.c").compile("libfoo.a");
|
|
test.cmd(0).must_have("lol-this-is-not-a-compiler foo");
|
|
}
|
|
|
|
fn distcc() {
|
|
let test = Test::gnu();
|
|
test.shim("distcc");
|
|
|
|
env::set_var("CC", "distcc lol-this-is-not-a-compiler foo");
|
|
test.gcc().file("foo.c").compile("libfoo.a");
|
|
|
|
test.cmd(0)
|
|
.must_have("lol-this-is-not-a-compiler foo")
|
|
.must_have("foo.c")
|
|
.must_not_have("distcc");
|
|
}
|
|
|