| // This file is generated by cargo2android.py --config cargo2android.json. |
| // Do not modify this file as changes will be overridden on upgrade. |
| |
| package { |
| default_applicable_licenses: ["external_rust_crates_quiche_license"], |
| } |
| |
| // Added automatically by a large-scale-change that took the approach of |
| // 'apply every license found to every target'. While this makes sure we respect |
| // every license restriction, it may not be entirely correct. |
| // |
| // e.g. GPL in an MIT project might only apply to the contrib/ directory. |
| // |
| // Please consider splitting the single license below into multiple licenses, |
| // taking care not to lose any license_kind information, and overriding the |
| // default license using the 'licenses: [...]' property on targets as needed. |
| // |
| // For unused files, consider creating a 'fileGroup' with "//visibility:private" |
| // to attach the license to, and including a comment whether the files may be |
| // used in the current project. |
| // See: http://go/android-license-faq |
| license { |
| name: "external_rust_crates_quiche_license", |
| visibility: [":__subpackages__"], |
| license_kinds: [ |
| "SPDX-license-identifier-BSD", |
| "SPDX-license-identifier-ISC", |
| "SPDX-license-identifier-OpenSSL", |
| "legacy_unencumbered", |
| ], |
| license_text: [ |
| "COPYING", |
| ], |
| } |
| |
| cc_library_headers { |
| name: "libquiche_ffi_headers", |
| export_include_dirs: ["include"], |
| apex_available: [ |
| "//apex_available:platform", |
| "com.android.resolv", |
| ], |
| min_sdk_version: "29", |
| } |
| |
| rust_defaults { |
| name: "libquiche_defaults", |
| stem: "libquiche", |
| host_supported: true, |
| crate_name: "quiche", |
| srcs: ["src/lib.rs"], |
| edition: "2018", |
| features: [ |
| "boringssl", |
| "default", |
| ], |
| // Link all crates statically to create a self-contained .so library. |
| rlibs: [ |
| "liblazy_static", |
| "liblibc", |
| "liblibm", |
| "liblog_rust", |
| "libring", |
| ], |
| prefer_rlib: true, |
| // For DnsResolver (Mainline module introduced in Q). |
| apex_available: [ |
| "//apex_available:platform", |
| "com.android.resolv", |
| ], |
| min_sdk_version: "29", |
| } |
| |
| rust_ffi { |
| name: "libquiche_ffi", |
| defaults: ["libquiche_defaults"], |
| shared_libs: [ |
| "libcrypto", |
| "libssl", |
| ], |
| } |
| |
| rust_library { |
| name: "libquiche", |
| defaults: ["libquiche_defaults"], |
| shared_libs: [ |
| "libcrypto", |
| "libssl", |
| ], |
| } |
| |
| // This target is used by doh_unit_test to prevent compatibility issues |
| // because doh_unit_test needs to be run on the R platform. |
| rust_library_rlib { |
| name: "libquiche_static", |
| defaults: ["libquiche_defaults"], |
| static_libs: [ |
| "libcrypto_static", |
| "libssl", |
| ], |
| } |
| |
| rust_defaults { |
| name: "quiche_test_defaults", |
| crate_name: "quiche", |
| srcs: ["src/lib.rs"], |
| test_suites: ["general-tests"], |
| auto_gen_config: true, |
| edition: "2018", |
| features: [ |
| "boringssl", |
| "default", |
| ], |
| rustlibs: [ |
| "liblazy_static", |
| "liblibc", |
| "liblibm", |
| "liblog_rust", |
| "libmio", |
| "libring", |
| "liburl", |
| ], |
| data: [ |
| "examples/cert.crt", |
| "examples/cert.key", |
| "examples/cert-big.crt", |
| "examples/rootca.crt", |
| ], |
| } |
| |
| rust_test_host { |
| name: "quiche_host_test_src_lib", |
| defaults: ["quiche_test_defaults"], |
| test_options: { |
| unit_test: true, |
| }, |
| shared_libs: [ |
| "libcrypto", |
| "libssl", |
| ], |
| } |
| |
| rust_test { |
| name: "quiche_device_test_src_lib", |
| defaults: ["quiche_test_defaults"], |
| // To run this test in R platform, it's required to statically link |
| // libcrypto and libssl. |
| static_libs: [ |
| "libcrypto_static", |
| "libssl", |
| ], |
| } |
| |
| // dependent_library ["feature_list"] |
| // cc-1.0.69 |
| // cfg-if-0.1.10 |
| // cfg-if-1.0.0 |
| // cmake-0.1.45 |
| // idna-0.1.5 |
| // iovec-0.1.4 |
| // lazy_static-1.4.0 |
| // libc-0.2.98 "default,std" |
| // libm-0.2.1 "default" |
| // log-0.4.14 "std" |
| // matches-0.1.8 |
| // mio-0.6.23 "default,with-deprecated" |
| // net2-0.2.37 "default,duration" |
| // once_cell-1.8.0 "alloc,race,std" |
| // percent-encoding-1.0.1 |
| // ring-0.16.20 "alloc,default,dev_urandom_fallback,once_cell" |
| // slab-0.4.3 "default,std" |
| // spin-0.5.2 |
| // tinyvec-1.2.0 "alloc,default,tinyvec_macros" |
| // tinyvec_macros-0.1.0 |
| // unicode-bidi-0.3.5 "default" |
| // unicode-normalization-0.1.19 "default,std" |
| // untrusted-0.7.1 |
| // url-1.7.2 |