Skip to content

Commit

Permalink
Merge pull request #514 from ncalexan/dash-dash
Browse files Browse the repository at this point in the history
  • Loading branch information
m-ou-se committed May 11, 2022
2 parents fba7fed + 4468df2 commit fcb8df5
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 0 deletions.
7 changes: 7 additions & 0 deletions src/lib.rs
Expand Up @@ -1311,6 +1311,13 @@ impl Build {
if self.cuda && self.files.len() > 1 {
cmd.arg("--device-c");
}
if compiler.family == (ToolFamily::Msvc { clang_cl: true }) {
// #513: For `clang-cl`, separate flags/options from the input file.
// When cross-compiling macOS -> Windows, this avoids interpreting
// common `/Users/...` paths as the `/U` flag and triggering
// `-Wslash-u-filename` warning.
cmd.arg("--");
}
cmd.arg(&obj.src);
if cfg!(target_os = "macos") {
self.fix_env_for_apple_os(&mut cmd)?;
Expand Down
16 changes: 16 additions & 0 deletions tests/test.rs
Expand Up @@ -343,6 +343,14 @@ fn gnu_static() {
test.cmd(0).must_have("-static").must_not_have("-shared");
}

#[test]
fn gnu_no_dash_dash() {
let test = Test::gnu();
test.gcc().file("foo.c").compile("foo");

test.cmd(0).must_not_have("--");
}

#[test]
fn msvc_smoke() {
reset_env();
Expand Down Expand Up @@ -411,3 +419,11 @@ fn msvc_no_static_crt() {

test.cmd(0).must_have("-MD");
}

#[test]
fn msvc_no_dash_dash() {
let test = Test::msvc();
test.gcc().file("foo.c").compile("foo");

test.cmd(0).must_not_have("--");
}

0 comments on commit fcb8df5

Please sign in to comment.