-
Notifications
You must be signed in to change notification settings - Fork 2.2k
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
Windows: Add option to build CMake's internal curl with winsspi #29943
Conversation
2aba72f
to
cb8d64e
Compare
Just recently in #29847 the |
cb8d64e
to
376ed26
Compare
376ed26
to
36839f7
Compare
This preserves that choice but is allowing Spack to set the SSL implementation (and also updates the CMake package to choose the Windows-provided SSL by default). I think it's a separate discussion whether that choice should be retracted entirely (for now these changes are needed to generally build, and removing the variant is a matter of deciding whether the user should be allowed to undo that choice) so I'm inclined to merge this as is. |
1 similar comment
This comment was marked as duplicate.
This comment was marked as duplicate.
depends_on('openssl') | ||
depends_on('openssl@:1.0', when='@:3.6.9') | ||
|
||
if is_windows: |
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.
what's the deal with all this is_windows
? you should always check the target, not the host, we have platform=... for specs. All this is_windows stuff is so unreadable, please improve it. Also the nesting with - if - with - f() does not help in improving readability...
FWIW I spoke with Brad King and Bill today, and in general it seems the consensus is that with this support for the use of winsspi.dll, we should no longer even offer the option to build with OpenSSL. I can provide more detail/context if needed, but if we want to make another PR to that effect, such detail can be reserved until that point. |
36839f7
to
0af03dd
Compare
e400883
to
2773ba3
Compare
2773ba3
to
4b3ca8b
Compare
4d61023
to
95c9ccf
Compare
Add option to allow using OpenSSL (by default this uses the SSL implementation that comes with Windows, since that is more likely to have needed certificates).
CMake's internal copy of curl used with the
+ownlibs
variant has the ability to link against the winsspi.dll, a Windows native implementation of SSL. This PR exposes another variant of the CMake package on Windows allowing users to build CMake with winsspi, rather than OpenSSL.Some small, Windows specific cleanup was also done in this PR.