Skip to content
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

Update openssl to 3.0.5 #1811

Merged
merged 20 commits into from
Sep 9, 2022
Merged

Update openssl to 3.0.5 #1811

merged 20 commits into from
Sep 9, 2022

Conversation

JonasVautherin
Copy link
Collaborator

@JonasVautherin JonasVautherin commented Jun 21, 2022

  • Fedora fails because it is missing perl dependencies
  • Manylinux seems to fail for the same reason as Fedora (do we actually still need manylinux?)
  • Ubuntu 20.04 fails with undefined reference to std::__throw_bad_array_new_length() (edit: that was due to the dependencies cache being shared with Ubuntu 22.04)
  • SITL fails because it does not find our OpenSSL when building curl: Found OpenSSL: /usr/lib/x86_64-linux-gnu/libcrypto.so
  • The musl builds fail because of this:
threads_pthread.c:(.text+0x228): undefined reference to `__atomic_is_lock_free'
/usr/xcc/armv7l-linux-musleabihf-cross/bin/../lib/gcc/armv7l-linux-musleabihf/11.2.1/../../../../armv7l-linux-musleabihf/bin/ld: threads_pthread.c:(.text+0x278): undefined reference to `__atomic_load_8'
collect2: error: ld returned 1 exit status
  • iOS fails because of this (I asked about it here):
[ 75%] Performing build step for 'openssl'
ld: -bundle and -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES) cannot be used together

@JonasVautherin JonasVautherin force-pushed the openssl3 branch 2 times, most recently from ff2702b to 4d490ff Compare June 21, 2022 14:03
@julianoes
Copy link
Collaborator

Out of curiosity. Why? Or what's the difference from version 1.1 to 3?

@JonasVautherin
Copy link
Collaborator Author

I figured it may be worth trying, to get an idea. I can see potential issues that we may encounter:

  • Ubuntu 22.04 comes with OpenSSL 3. Not sure if we can make a deb package without supporting OpenSSL 3 ourselves.
  • At some point one of our dependencies depends on OpenSSL 3.
  • What if somebody uses OpenSSL 3 and MAVSDK in their project, and MAVSDK builds against OpenSSL 1?

An open question is therefore whether we should support both OpenSSL 1 and OpenSSL 3, or if we could just move to OpenSSL 3, I guess? 🤔

@julianoes
Copy link
Collaborator

Do we have openssl 3 on Ubuntu 20.04?

@JonasVautherin
Copy link
Collaborator Author

No it's libssl1.1. But it seems like MAVSDK builds with both in many cases, so maybe we're lucky and it's fine to just update to 3 in our third parties and let the system take 1 when packaging?

@JonasVautherin JonasVautherin force-pushed the openssl3 branch 7 times, most recently from 8684e44 to a5e276b Compare July 8, 2022 00:44
Copy link
Collaborator

@julianoes julianoes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Having fun? 😂

@julianoes julianoes changed the title Update openssl to 3.0.3 Update openssl to 3.0.5 Sep 3, 2022
@julianoes julianoes force-pushed the openssl3 branch 4 times, most recently from e06e25a to 8385b7d Compare September 6, 2022 09:05
That's an attempt to prevent the error on iOS:
ld: -bundle and -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES)
cannot be used together
@julianoes
Copy link
Collaborator

@JonasVautherin can we somehow go to XCode 14 where bitcode is apparently no longer a thing?

@JonasVautherin
Copy link
Collaborator Author

Let me have a look 👍

@julianoes
Copy link
Collaborator

Merging with openssl for iOS still at 1.1.1.

@julianoes julianoes merged commit 63e5b09 into main Sep 9, 2022
@julianoes julianoes deleted the openssl3 branch September 9, 2022 20:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants