-
Notifications
You must be signed in to change notification settings - Fork 145
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
core: Deny building with OpenSSL 3.0 #872
Conversation
As I said in the comment, it's pretty risky at the moment to build Themis against OpenSSL 3.0, so let's explicitly disallow it. This applies to previously released versions too, but I can't be bothered to issue a hotfix for that. Binary releases for Linux are not affected (they still use OpenSSL 1.1), Homebrew release for macOS will be patched up to use OpenSSL 1.1 separately, and whoever is brave enough to build Themis from source manually -- you will be warned in docs.
Throw in an extra step to ensure that OpenSSL 3.0 is indeed failing the build. At the moment only macOS Homebrew seems to have OpenSSL 3.0 available, so test with that. Linux distros are currently working on transitions too, but testing just one OS should be fine at the moment.
The intention here is that if we release Themis 0.14 as is, without OpenSSL 3.0 support, then people should be aware of this #error directive that will fail their builds.
Provide a not-really-documented way to build Themis with OpenSSL 3 by setting environment variable WITH_EXPERIMENTAL_OPENSSL_3_SUPPORT.
97624f1
to
30df5f8
Compare
With the base branch merged, I found it easier to rebase the whole thing to resolve merge conflicts. Ugh, GitHub you don't help in the slightest here! >_< I've also added one more commit that allows to build Themis with OpenSSL 3.0 if you say the magic word. I realized that I will need a way to build it without failing while working on the transition. So developers can ask for
and avoid triggering that |
best feature |
For the time being Themis and Soter do not support OpenSSL 3.0. The code seems to build fine but it fails the tests, so we're not sure that it is safe to use Soter with OpenSSL 3.0. It's pretty risky at the moment to build Themis against OpenSSL 3.0, so let's explicitly disallow it.
This applies to previously released versions too, but I can't be bothered to issue a hotfix for that. Binary releases for Linux are not affected (they still use OpenSSL 1.1), Homebrew release for macOS will be patched up to use OpenSSL 1.1 separately, and whoever is brave enough to build Themis from source manually – you will be warned in docs.
Throw in an extra step on CI to ensure that OpenSSL 3.0 is indeed failing the build. At the moment only macOS Homebrew seems to have OpenSSL 3.0 available, so test with that. Linux distros are currently working on transitions too, but testing just one OS should be fine at the moment.
To make conflict resolution easier, this PR includes #871.
Checklist