42 lines
1.7 KiB
Plaintext
42 lines
1.7 KiB
Plaintext
## Steps for updating this crate
|
|
|
|
1. In order to run cargo2android, for this crate, the BoringSSL rust bindings first needs to be
|
|
built. Copy `googletest` to `boringssl`, which is needed to build the rust bindings
|
|
|
|
```
|
|
$ cp -r external/googletest/googletest external/boringssl/src/third_party/
|
|
```
|
|
2. Build the rust bindings (More information at
|
|
https://boringssl.googlesource.com/boringssl/+/HEAD/BUILDING.md)
|
|
|
|
```
|
|
$ cd external/boringssl
|
|
$ mkdir build && cd build
|
|
$ cmake .. -DRUST_BINDINGS=x86_64-unknown-linux-gnu
|
|
$ make
|
|
```
|
|
3. Run `tools/external_updater/updater.sh update rust/crates/openssl`. Cargo errors causing the
|
|
command to fail are expected (since the boringSSL crate is outside of the `openssl` directory,
|
|
redshell is not able to access it).
|
|
4. The repository should now be in a `tmp_auto_upgrade` branch, and the Android.bp will contain
|
|
some error message.
|
|
5. Run cargo2android
|
|
|
|
```
|
|
$ cargo2android.py --config ./cargo2android.json
|
|
```
|
|
6. Clean up the changes in external/boringssl repository, and double check that the resulting
|
|
Android.bp builds correctly by running `m libopenssl`.
|
|
7. Commit the changes and upload the CL.
|
|
8. `external/rust/crates/openssl-macros` should also be updated at the same time.
|
|
|
|
## Generating patch files
|
|
|
|
If you make changes to this repo that is not in upstream `rust-openssl` yet, please generate a
|
|
patch file to keep track of those changes.
|
|
|
|
1. Commit your changes
|
|
2. Create the patch file: `git diff -u HEAD~ > <XXXX-topic>.diff` where XXXX is the number to track
|
|
the order of the patches to apply.
|
|
3. Amend the patch file into your CL `git add -A && git commit --amend`
|