-
Notifications
You must be signed in to change notification settings - Fork 6.8k
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
[cryptopp]: Fix compilation with clang-cl #26151
Conversation
* Add clang-cl 12.0+ to supported configurations * Use MSVC path to detect CRYPTOPP_CXX17_UNCAUGHT_EXCEPTIONS
I get:
because the build seems not to be adding the required |
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.
This is a new experimental fast check for PR issues. Please let us know if this bot is helpful!
PRs must add only one version and must not modify any published versions
When making any changes to a library, the version or port-version in vcpkg.json
or CONTROL
must be modified.
error: checked-in files for cryptopp have changed but the version was not updated
version: 8.6.0#1
old SHA: 2a1d13e53bda3bc8638f43beb50fe9252e838260
new SHA: b0205883588a92221923d9d68d48fa27feb8b8ac
Did you remember to update the version or port version?
Use --overwrite-version to bypass this check
***No files were updated***
You have modified or added at least one vcpkg.json where you should check the license
field.
If you feel able to do so, please consider adding a "license" field to the following files:
ports/cryptopp/vcpkg.json
Valid values for the license field can be found in the documentation
I tested the build with clang-cl included in the VS 2022 installer and it compiled successfully. I'll try the standalone as well, it probably can't detect the platform correctly |
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.
You have modified or added at least one vcpkg.json where you should check the license
field.
If you feel able to do so, please consider adding a "license" field to the following files:
ports/cryptopp/vcpkg.json
Valid values for the license field can be found in the documentation
* Patch CheckCompileLinkOption to use try_compile on all platforms * Use GNU path when detecing SSE options with clang-cl
So I performed some tests and the problem seems to be that while CMake enables the MSVC flag with clang-cl, CMAKE_CXX_COMPILER_ID remains equal to "Clang" which breaks the SIMD flag configuration. |
Merged this into #25897. Compiles fine now. |
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.
You have modified or added at least one vcpkg.json where you should check the license
field.
If you feel able to do so, please consider adding a "license" field to the following files:
ports/cryptopp/vcpkg.json
Valid values for the license field can be found in the documentation
Please submit this patch upstream to https://github.com/weidai11/cryptopp Thanks! |
Describe the pull request
What does your PR fix?
Fixes compilation on Windows using clang-cl, by performing the following: