cmake: Require MbedTLS 3 and exclude 4 or later - #13799
Conversation
PatTheMav
left a comment
There was a problem hiding this comment.
Seems fine in general, though I do wonder where we need to support MbedTLS v2.x still?
|
I wanted the scope of this PR to be low (forbid 4) and MbedTLS 2 code was not removed so far so I just aligned the version range with what our codebase seems to allow. If desired I can bump the lower requirement to 3 but I think stripping MbedTLS 2 (and also maybe 3.0.0) support is for another PR. |
Sounds good to me. |
|
Building on Windows seems to fail for no obvious reason (the project finds MbedTLS 3.6.4 and uses it just fine it seems, but then stumbles over a missing symbol), while macOS reports the following warning during configuration: So the higher endpoint should be used by any MbedTLS dependency that uses the CMake package files (as those won't use our custom finder), and it's an issue with So once that PR is merged, MbedTLS on macOS should be found using that rather than the custom finder (since MbedTLS 3.6+'s CMake package files work correctly) and that warning is fixed by itself. So if no CMake package is found and the find module used instead, the change in this PR will be ineffective per that warning. I don't see a need to update the find module to support this functionality and instead remove it entirely in a PR that also removes support for MbedTLS v2. |
Edit: Windows runner is also picking the custom finder… CMake priorities… |
115be05 to
e7d12f0
Compare
|
Your commit allowed me to build the package on arch. Thank you, worked well! |
That's what the line And if you look at the CMake output of the nightly build, there is no So somehow your changes break this behaviour and the find module is used again. |
Until the codebase is updated to support it, CMake will explicitly search for version 3 that is supported by the codebase.
baec9af to
d073adb
Compare
Description
Until the codebase is updated to support it, CMake will explicitly search for version 3 that is supported by the codebase.
Motivation and Context
Our codebase does not support it and fails to build with it, this change is for until proper support is implement.
Related #13601
How Has This Been Tested?
CMake still find MbedTLS 3
Types of changes
Checklist: