aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Walbran <qwandor@google.com>2023-11-21 20:18:48 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2023-11-21 20:18:48 +0000
commitf03b4eacc21b2f9830ef32ea62b8306031714654 (patch)
tree532d8a393241092045d196a75e68250d16b162ba
parent79c16209254d139f8f04d9dd4f9cda3f4271eb3d (diff)
parentb299dc7cc8050f3136abe59349b241706640cce5 (diff)
downloadopenssl-f03b4eacc21b2f9830ef32ea62b8306031714654.tar.gz
Fix config and re-run cargo2android.py. am: b299dc7cc8
Original change: https://android-review.googlesource.com/c/platform/external/rust/crates/openssl/+/2841555 Change-Id: Ie19a56033dd78c7788281068fa2a5b18764525c0 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--.cargo/config.toml2
-rw-r--r--Android.bp37
-rw-r--r--README.android9
-rw-r--r--cargo2android.json15
-rw-r--r--patches/0001-cfgs.diff2
-rw-r--r--patches/Android.bp.diff25
6 files changed, 65 insertions, 25 deletions
diff --git a/.cargo/config.toml b/.cargo/config.toml
index e2b197d..278afcd 100644
--- a/.cargo/config.toml
+++ b/.cargo/config.toml
@@ -1,2 +1,2 @@
[patch.crates-io]
-bssl-ffi = { package = "bssl-sys", version = "0.1.0", path = "../../../boringssl/build/rust", optional=true }
+bssl-ffi = { package = "bssl-sys", version = "0.1.0", path = "../../../boringssl/src/rust/bssl-sys", optional=true }
diff --git a/Android.bp b/Android.bp
index 7d2407d..3f312fb 100644
--- a/Android.bp
+++ b/Android.bp
@@ -1,4 +1,4 @@
-// This file is generated by cargo2android.py --config ./cargo2android.json.
+// This file is generated by cargo2android.py --config cargo2android.json.
// Do not modify this file as changes will be overridden on upgrade.
// WARNING! This crate has a change in dependency structure that is not yet
@@ -45,12 +45,12 @@ license {
],
}
-rust_defaults {
- name: "libopenssl_defaults",
+rust_library {
+ name: "libopenssl",
host_supported: true,
crate_name: "openssl",
cargo_env_compat: true,
- cargo_pkg_version: "0.10.43",
+ cargo_pkg_version: "0.10.45",
srcs: ["src/lib.rs"],
edition: "2018",
features: ["unstable_boringssl"],
@@ -58,6 +58,7 @@ rust_defaults {
rustlibs: [
"libbitflags-1.3.2",
"libcfg_if",
+ "libbssl_ffi",
"libforeign_types",
"liblibc",
"libonce_cell",
@@ -67,18 +68,28 @@ rust_defaults {
"//apex_available:platform",
"com.android.virt",
],
- vendor_available: true,
product_available: true,
-}
-
-rust_library {
- name: "libopenssl",
- defaults: ["libopenssl_defaults"],
- rustlibs: ["libbssl_ffi"],
+ vendor_available: true,
}
rust_library_host_rlib {
name: "libopenssl_static",
- defaults: ["libopenssl_defaults"],
- rlibs: ["libbssl_ffi_static"],
+ crate_name: "openssl",
+ cargo_env_compat: true,
+ cargo_pkg_version: "0.10.45",
+ srcs: ["src/lib.rs"],
+ edition: "2018",
+ features: ["unstable_boringssl"],
+ cfgs: ["boringssl", "soong"],
+ rustlibs: [
+ "libbitflags-1.3.2",
+ "libcfg_if",
+ "libforeign_types",
+ "liblibc",
+ "libonce_cell",
+ ],
+ rlibs: [
+ "libbssl_ffi_static",
+ ],
+ proc_macros: ["libopenssl_macros"],
}
diff --git a/README.android b/README.android
index 1957c30..02da029 100644
--- a/README.android
+++ b/README.android
@@ -4,16 +4,15 @@
built. Copy `googletest` to `boringssl`, which is needed to build the rust bindings
```
- $ cp -r external/googletest/googletest external/boringssl/src/third_party/
+ $ cp -r external/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
+ $ cd external/boringssl/src
+ $ cmake -DRUST_BINDINGS=x86_64-unknown-linux-gnu -B build
+ $ make -C build
```
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,
diff --git a/cargo2android.json b/cargo2android.json
index 4caae30..7c9a127 100644
--- a/cargo2android.json
+++ b/cargo2android.json
@@ -3,9 +3,20 @@
"//apex_available:platform",
"com.android.virt"
],
- "device": true,
+ "dep-suffixes": {
+ "bitflags": "-1.3.2"
+ },
"features": "unstable_boringssl",
"run": true,
"vendor-available": true,
- "patch": "patches/Android.bp.diff"
+ "patch": "patches/Android.bp.diff",
+ "variants": [
+ {
+ "device": true
+ },
+ {
+ "suffix": "_static",
+ "force-rlib": true
+ }
+ ]
}
diff --git a/patches/0001-cfgs.diff b/patches/0001-cfgs.diff
index f118c41..ae6ba11 100644
--- a/patches/0001-cfgs.diff
+++ b/patches/0001-cfgs.diff
@@ -5,7 +5,7 @@ index 0000000..e2b197d
+++ b/.cargo/config.toml
@@ -0,0 +1,2 @@
+[patch.crates-io]
-+bssl-ffi = { package = "bssl-sys", version = "0.1.0", path = "../../../boringssl/build/rust", optional=true }
++bssl-ffi = { package = "bssl-sys", version = "0.1.0", path = "../../../boringssl/src/rust/bssl-sys", optional=true }
diff --git a/src/cipher.rs b/src/cipher.rs
index ab5f49d..84a8265 100644
--- a/src/cipher.rs
diff --git a/patches/Android.bp.diff b/patches/Android.bp.diff
index ef0ab4f..56d2015 100644
--- a/patches/Android.bp.diff
+++ b/patches/Android.bp.diff
@@ -1,5 +1,5 @@
diff --git a/Android.bp b/Android.bp
-index 6628b2a..0ece701 100644
+index b10f5b0..5214daa 100644
--- a/Android.bp
+++ b/Android.bp
@@ -54,11 +54,11 @@ rust_library {
@@ -9,11 +9,30 @@ index 6628b2a..0ece701 100644
- cfgs: ["boringssl"],
+ cfgs: ["boringssl", "soong"],
rustlibs: [
-- "libbitflags",
-+ "libbitflags-1.3.2",
+ "libbitflags-1.3.2",
"libcfg_if",
- "libopenssl_sys",
+ "libbssl_ffi",
"libforeign_types",
"liblibc",
"libonce_cell",
+@@ -81,15 +81,17 @@ rust_library {
+ srcs: ["src/lib.rs"],
+ edition: "2018",
+ features: ["unstable_boringssl"],
+- cfgs: ["boringssl"],
++ cfgs: ["boringssl", "soong"],
+ rustlibs: [
+ "libbitflags-1.3.2",
+ "libcfg_if",
+- "libopenssl_sys",
+ "libforeign_types",
+ "liblibc",
+ "libonce_cell",
+ ],
++ rlibs: [
++ "libbssl_ffi_static",
++ ],
+ proc_macros: ["libopenssl_macros"],
+ apex_available: [
+ "//apex_available:platform",