| package { |
| // See: http://go/android-license-faq |
| // A large-scale-change added 'default_applicable_licenses' to import |
| // all of the 'license_kinds' from "external_rust_beto-rust_license" |
| // to get the below license kinds: |
| // legacy_unencumbered |
| // SPDX-license-identifier-Apache-2.0 |
| // SPDX-license-identifier-Unlicense |
| default_visibility: [":__subpackages__"], |
| default_applicable_licenses: ["external_rust_beto-rust_license"], |
| } |
| |
| rust_library_rlib { |
| name: "libcrypto_provider", |
| crate_name: "crypto_provider", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["crypto/crypto_provider/src/lib.rs"], |
| features: [ |
| "std", |
| "alloc", |
| "default", |
| "gcm_siv", |
| ], |
| rustlibs: [ |
| "libhex", |
| "librand", |
| "libtinyvec", |
| ], |
| } |
| |
| rust_library_rlib { |
| name: "libcrypto_provider_stubs", |
| crate_name: "crypto_provider_stubs", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["crypto/crypto_provider_stubs/src/lib.rs"], |
| rustlibs: [ |
| "libcrypto_provider", |
| ], |
| } |
| |
| rust_library_rlib { |
| name: "libcrypto_provider_default", |
| crate_name: "crypto_provider_default", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["crypto/crypto_provider_default/src/lib.rs"], |
| features: ["boringssl"], |
| rustlibs: [ |
| "libcfg_if", |
| "libcrypto_provider", |
| "libcrypto_provider_boringssl", |
| ], |
| } |
| |
| rust_library_rlib { |
| name: "libcrypto_provider_boringssl", |
| crate_name: "crypto_provider_boringssl", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["crypto/crypto_provider_boringssl/src/lib.rs"], |
| rustlibs: [ |
| "libcfg_if", |
| "libcrypto_provider", |
| "libcrypto_provider_stubs", |
| "libbssl_crypto", |
| "librand", |
| ], |
| } |
| |
| rust_ffi_shared { |
| name: "libukey2_c_ffi_shared", |
| stem: "libukey2_c_ffi", |
| crate_name: "ukey2_c_ffi", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["connections/ukey2/ukey2_c_ffi/src/lib.rs"], |
| features: [ |
| "openssl", |
| "std", |
| ], |
| rlibs: [ |
| "libcfg_if", |
| "libcrypto_provider_default", |
| "liblazy_static", |
| "liblock_adapter", |
| "liblog_rust", |
| "librand", |
| "librand_chacha", |
| "libukey2_connections", |
| "libukey2_rs", |
| ], |
| } |
| |
| rust_library_rlib { |
| name: "libukey2_connections", |
| crate_name: "ukey2_connections", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["connections/ukey2/ukey2_connections/src/lib.rs"], |
| rustlibs: [ |
| "libbytes", |
| "libcrypto_provider", |
| "libnom", |
| "librand", |
| "libukey2_proto", |
| "libukey2_rs", |
| ], |
| } |
| |
| rust_ffi_shared { |
| name: "libukey2_jni_shared", |
| stem: "libukey2_jni", |
| crate_name: "ukey2_jni", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["connections/ukey2/ukey2_jni/src/lib.rs"], |
| features: [ |
| "openssl", |
| "std", |
| ], |
| // Using rlibs instead of rustlibs here to minimize the size impact on the system image. Since |
| // most of the transitive dependencies are included only by this project for U, building this |
| // as a single dylib will be more space-efficient. As more Rust project gets added, this may |
| // change and it may be better for different projects to share the same dylib, especially for |
| // common projects like libjni and libprotobuf. |
| rlibs: [ |
| "libcfg_if", |
| "libcrypto_provider_default", |
| "libjni", |
| "liblazy_static", |
| "liblock_adapter", |
| "librand", |
| "librand_chacha", |
| "libukey2_connections", |
| "libukey2_rs", |
| ], |
| compile_multilib: "first", |
| visibility: ["//visibility:public"], |
| } |
| |
| rust_library_rlib { |
| name: "libukey2_proto", |
| crate_name: "ukey2_proto", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["connections/ukey2/ukey2_proto/src/lib.rs"], |
| features: [ |
| "default", |
| ], |
| rustlibs: [ |
| "libprotobuf", |
| ], |
| } |
| |
| rust_library_rlib { |
| name: "libukey2_rs", |
| crate_name: "ukey2_rs", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["connections/ukey2/ukey2/src/lib.rs"], |
| rustlibs: [ |
| "libcrypto_provider", |
| "libnum_bigint", |
| "liblog_rust", |
| "librand", |
| "libukey2_proto", |
| ], |
| } |
| |
| java_library_static { |
| name: "ukey2_jni", |
| srcs: [ |
| "connections/ukey2/ukey2_jni/java/src/main/**/*.java", |
| ], |
| host_supported: true, |
| static_libs: [ |
| "jsr305", |
| ], |
| visibility: ["//visibility:public"], |
| required: [ |
| "libukey2_jni_shared", |
| ], |
| } |
| |
| rust_library_rlib { |
| name: "libnp_adv", |
| crate_name: "np_adv", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["presence/np_adv/src/lib.rs"], |
| rustlibs: [ |
| "libarray_view", |
| "libldt_np_adv", |
| "libldt", |
| "libnp_hkdf", |
| "libnp_ed25519", |
| "libxts_aes", |
| "libcrypto_provider", |
| "libstrum", |
| "libnom", |
| "liblazy_static", |
| "libsink", |
| "libtinyvec", |
| ], |
| proc_macros: [ |
| "libstrum_macros", |
| ], |
| } |
| |
| rust_library_rlib { |
| name: "libarray_view", |
| crate_name: "array_view", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["presence/array_view/src/lib.rs"], |
| } |
| |
| rust_library_rlib { |
| name: "libldt", |
| crate_name: "ldt", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["presence/ldt/src/lib.rs"], |
| rustlibs: [ |
| "libcrypto_provider", |
| "libldt_tbc", |
| ], |
| } |
| |
| rust_library_rlib { |
| name: "libldt_tbc", |
| crate_name: "ldt_tbc", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["presence/ldt_tbc/src/lib.rs"], |
| rustlibs: [ |
| "libcrypto_provider", |
| ], |
| } |
| |
| rust_library_rlib { |
| name: "libldt_np_adv", |
| crate_name: "ldt_np_adv", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["presence/ldt_np_adv/src/lib.rs"], |
| rustlibs: [ |
| "libcrypto_provider", |
| "libarray_view", |
| "libldt", |
| "libnp_hkdf", |
| "libxts_aes", |
| "libldt_tbc", |
| ], |
| } |
| |
| rust_library_rlib { |
| name: "libnp_hkdf", |
| crate_name: "np_hkdf", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["presence/np_hkdf/src/lib.rs"], |
| rustlibs: [ |
| "libcrypto_provider", |
| "libldt", |
| "libxts_aes", |
| ], |
| } |
| |
| rust_library_rlib { |
| name: "libnp_ed25519", |
| crate_name: "np_ed25519", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["presence/np_ed25519/src/lib.rs"], |
| rustlibs: [ |
| "libarray_view", |
| "libcrypto_provider", |
| "libsink", |
| "libtinyvec", |
| ], |
| } |
| |
| rust_library_rlib { |
| name: "libxts_aes", |
| crate_name: "xts_aes", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["presence/xts_aes/src/lib.rs"], |
| rustlibs: [ |
| "libarray_ref", |
| "libcrypto_provider", |
| "libldt_tbc", |
| ], |
| } |
| |
| rust_library_rlib { |
| name: "libarray_ref", |
| crate_name: "array_ref", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["presence/array_ref/src/lib.rs"], |
| } |
| |
| rust_library_rlib { |
| name: "libsink", |
| crate_name: "sink", |
| defaults: ["beto_rust_defaults"], |
| srcs: ["presence/sink/src/lib.rs"], |
| rustlibs: [ |
| "libtinyvec", |
| ], |
| } |