-
Notifications
You must be signed in to change notification settings - Fork 42
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
Add extra symlinks for clang-cl compatibility with /winsdkdir and /vctoolsdir #47
Add extra symlinks for clang-cl compatibility with /winsdkdir and /vctoolsdir #47
Conversation
This makes the sdk/ tree follow Visual Studio's layout, allowing these paths to work as expected with clang-cl's /winsdkdir and /vctoolsdir options.
Because again, this is the layout that clang-cl expects.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
let mut versioned_linkname = roots.sdk.clone(); | ||
versioned_linkname.push("lib"); | ||
versioned_linkname.push(sdk_version); | ||
symlink(".", &versioned_linkname)?; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just tried this in xwin 0.2.2, looks like this will fail when more than one architectures are specified?
Error: failed to splat Win10SDK_10.0.20348_libs_aarch64.msi
Caused by:
0: unable to symlink from /home/runner/.cache/cargo-xwin/xwin/sdk/lib/10.0.20348 to .
1: File exists (os error 17)
https://github.com/messense/cargo-xwin/runs/6448797813?check_suite_focus=true
Works fine when only one architecture is specified.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Whoopsie! Thank you for fixing that 😅
Fixes #44.
I ended up also adding two more symlinks for case-sensitive filesystems,
sdk/Include -> sdk/include
andsdk/Lib -> sdk/lib
, because that's apparently also the layout that clang-cl expects.