-
Notifications
You must be signed in to change notification settings - Fork 13k
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
Use MSVC-style escaping when passing a response/@ file to lld on windows #122596
Conversation
rustbot has assigned @petrochenkov. Use r? to explicitly pick a reviewer |
It looks like |
Can this special case be removed after changes from this PR? |
Yes, I suspect that will need to be removed for wasm to work correctly on windows with this change. I'll try to get a setup to test it. Looking at that, it does suggest another option would be to use that option for lld by default on windows, instead of using a different escaping approach. Do you have any opinion on which may be better? just specifying the quoting feels like it may be more consistent across different versions of lld, but I'm not sure. For ld64.lld I'm not sure if there's anything that should be done there. Is cross-compiling from windows to macOS something that can currently be made to work? I don't see much info on it online (only linux->macOS). |
The problem is that the support for
I don't know ¯_(ツ)_/¯ |
OK, I'll test that WASM still works with the change (trying to remove that special case), and update the PR from that (probably this evening). |
LLD parses @ files like the command arguments on the platform it's on, so on windows it needs to follow the MSVC style to work correctly. Otherwise builds can fail if the linker command gets too long and the build path contains spaces.
…mpatible with response-file changes
OK, finally managed to get a WASM toolchain build working, as I suspected that special case needed removing, does everything look good to go? |
Thanks! |
☀️ Test successful - checks-actions |
Finished benchmarking commit (7d01878): comparison URL. Overall result: no relevant changes - no action needed@rustbot label: -perf-regression Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)ResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 671.97s -> 672.198s (0.03%) |
Maybe it's just missing a command-line option. If so, fixing that would be trivial for LLD 19. |
LLD parses @ files like the command arguments on the platform it's on, so on windows it needs to follow the MSVC style to work correctly. Otherwise builds can fail if the linker command gets too long and the build path contains spaces.