CXXCBC-386: Allow option to statically link against BoringSSL#458
Merged
thejcfactor merged 11 commits intocouchbase:mainfrom Oct 23, 2023
Merged
CXXCBC-386: Allow option to statically link against BoringSSL#458thejcfactor merged 11 commits intocouchbase:mainfrom
thejcfactor merged 11 commits intocouchbase:mainfrom
Conversation
158810c to
c699d17
Compare
9885d7e to
17c23d6
Compare
Motivation ---------- Primarily a change to help the wrapper SDKs remove the OpenSSL dependency from their respective built binaries. This will help to provide a better user experience as users will not need to worry about how their particular OS uses OpenSSL in conjuction with a particular language (Node.js, Python, Ruby, etc.). Users of the C++ SDK will have access to using BoringSSL as well. Changes ------- Update build system to provide options to enable the C++ SDK to statically link against BoringSSL (utilizing the symbol prefixing boringssl allows) instead of linking against OpenSSL. BoringSSL options are not on by default (i.e. by default the C++ SDK will continue to use OpenSSL). Update portions of code to handle slight differences between BoringSSL and OpenSSL.
17c23d6 to
ffda723
Compare
* do not assume makefiles for unix systems * always do verbose build * allow to pass extra cmake options
Helps with MinGW toolchain, which uses Unix style of the names libXXX.a instead of XXX.lib. Also adds the patch for MinGW and third_party/fiat/curve25519_64_adx.h
avsej
approved these changes
Oct 23, 2023
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Motivation
Primarily a change to hlep the wrapper SDKs remove the OpenSSL dependency. Replacing OpenSSL with BoringSSL will help to provide a better user experience as users will not need to worry about how their particular OS uses OpenSSL in conjunction with a particular language (Node.js, Python, Ruby, etc.).
Changes
Update build system to provide option that lets C++ client know BoringSSL will be statically linked. A few changes for linux builds where there are some differences between OpenSSL and BoringSSL.