New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
sccache doesn't support clang-cl on non-Windows #669
Comments
To make matters more interesting... clang-cl on Linux actually supports |
glandium
added a commit
to glandium/sccache
that referenced
this issue
Feb 27, 2020
34c6f9a added support for /arg flags by replacing the initial slash with a -, and falling back to normal argument parsing. Unfortunately, when running clang-cl on a non-Windows system, that means absolute paths get garbled, and that can lead to bad argument parsing with separate arguments (e.g. -I /absolute/path). We change the arguments definition for MSVC to include both styles, by hacking up a macro that generates two lists, one with - arguments, and one with / arguments. Merging the two lists at build time doesn't seem possible without going full procedural macro. Fixes mozilla#669
glandium
added a commit
that referenced
this issue
Feb 28, 2020
34c6f9a added support for /arg flags by replacing the initial slash with a -, and falling back to normal argument parsing. Unfortunately, when running clang-cl on a non-Windows system, that means absolute paths get garbled, and that can lead to bad argument parsing with separate arguments (e.g. -I /absolute/path). We change the arguments definition for MSVC to include both styles, by hacking up a macro that generates two lists, one with - arguments, and one with / arguments. Merging the two lists at build time doesn't seem possible without going full procedural macro. Fixes #669
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This code:
sccache/src/compiler/msvc.rs
Lines 273 to 282 in 9d13465
unconditionally transforms all arguments starting with a
/
to start with a-
, which is fine for both MSVC and clang-cl when they run on Windows, but breaks things when running clang-cl on e.g. Linux.The text was updated successfully, but these errors were encountered: