realm / realm-core

Core database component for the Realm Mobile Database SDKs
https://realm.io
Apache License 2.0
1.01k stars 155 forks source link

Allow conditional compilation of openssl/ssl library #5916

Open sync-by-unito[bot] opened 1 year ago

sync-by-unito[bot] commented 1 year ago

Add a compile-time cmake flag (e.g., NO_DEFAULT_WEBSOCKET) that conditionally compiles out the default websocket implementation and the use of the openssl/ssl library in realm core sync. There is also an openssl/crypto dependency that is used for encryption and should not be affected by this flag.

This will need some updates to remove some of the networking components out of the Sync Client and into the DefaultSocketProvider we should be able to skip compilation for the following files:

We should create a new evergreen test that compiles and links a realm executable (it doesn't have to run at this point) to verify all of the references and symbols have been replaces and/or removed.

sync-by-unito[bot] commented 1 year ago

➤ michael-wb commented:

The blocking tasks have been completed - this is ready for work. Of note, if the custom SSL certificate and verify function are still needed, a workaround will be needed to retain the OpenSSL/SSL header files (or SSL certificate definitions) that are used by these functions.