Update README to document the change

pull/16358/head
Muxi Yan 6 years ago
parent b24b212ee5
commit 571109e400
  1. 22
      src/objective-c/README.md

@ -220,3 +220,25 @@ Objective-C Protobuf runtime library.
[gRPC install script]:https://raw.githubusercontent.com/grpc/homebrew-grpc/master/scripts/install
[example Podfile]:https://github.com/grpc/grpc/blob/master/examples/objective-c/helloworld/Podfile
[example apps]: https://github.com/grpc/grpc/tree/master/examples/objective-c
## Use gRPC with OpenSSL
gRPC uses BoringSSL as its dependency, which is a fork of OpenSSL and export a number of symbols
that are the same as OpenSSL. gRPC avoids conflicts of these symbols by renaming BoringSSL symbols.
If you need gRPC to use OpenSSL instead of BoringSSL (e.g. for the benefit of reducing the binary
size of your product), you need to make a local `gRPC-Core` podspec and tweak it accordingly:
- Copy the version of `/gRPC-Core.podspec` you wish to use from Github into the repository of your
app;
- In your `Podfile`, add the following line:
```
pod `gRPC-Core`, :podspec => "." # assuming gRPC-Core.podspec is in the same directory as your Podfile
```
- Remove [the
macro](https://github.com/grpc/grpc/blob/b24b212ee585d376c618235905757b2445ac6461/gRPC-Core.podspec#L186)
`GRPC_SHADOW_BORINGSSL_SYMBOLS` to disable symbol renaming;
- Substitude the `BoringSSL-GRPC`
[dependency](https://github.com/grpc/grpc/blob/b24b212ee585d376c618235905757b2445ac6461/gRPC-Core.podspec#L184)
to whatever pod of OpenSSL your other libraries use.
These steps should allow gRPC to use OpenSSL and drop BoringSSL dependency. If you see any issue,
file an issue to us.

Loading…
Cancel
Save