[PATCH] D95534: clang-cl: Invent a /winsysroot concept
Alexandre Ganea via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Feb 8 15:21:40 PST 2021
aganea added a comment.
In D95534#2534510 <https://reviews.llvm.org/D95534#2534510>, @smeenai wrote:
> Now if only Windows could case-correct their SDKs so we didn't need VFS overlays and symlinks for the linker...
I opened a ticket <https://developercommunity2.visualstudio.com/t/File-names-do-not-match-casing-in-includ/1284439> but it was closed shortly after. Microsoft could easily fix the `#includes` but the `#pragma comment(lib, ..)` would require an additionnal layer of OLDNAMES.lib aka `/ALTERNATENAME` directives when dealing with external libraries, since they already have the (old) `#pragma comment(lib, ..)` directives already stamped in. Even after making these changes manually for a PoC, we still needed `clang-cl ... -Xclang -fixit -Wnonportable-include-path -Wnonportable-system-include-path` to fix some paths in third-party libraries - and discovered along the way that `-fixit` didn't work with PCH files in this specific case. All just a massive pain.
We ended up mounting a 'casefold' filesystem and now it cross-compiles like a charm! :-) (and incidentally it is a bit faster to build than on Windows, on the same hardware)
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D95534/new/
https://reviews.llvm.org/D95534
More information about the cfe-commits
mailing list