blob: 861f5036a13e781a5c4cc4cddc4283b7117456df [file] [log] [blame]
// 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_grpcio-sys_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_grpcio-sys_license",
visibility: [":__subpackages__"],
license_kinds: [
"SPDX-license-identifier-Apache-2.0",
"SPDX-license-identifier-BSD",
"SPDX-license-identifier-ISC",
"SPDX-license-identifier-MIT",
"legacy_unencumbered",
],
license_text: [
"LICENSE",
],
}
rust_library {
name: "libgrpcio_sys",
host_supported: true,
crate_name: "grpcio_sys",
cargo_env_compat: true,
srcs: [
"src/lib.rs",
":libgrpc_bindgen",
],
edition: "2018",
features: [
"bindgen",
"boringssl-src",
"default",
"secure",
"use-bindgen",
],
rustlibs: [
"liblibc",
"liblibz_sys",
],
shared_libs: [
"libgrpc++",
"libgrpc_wrap"
],
apex_available: [
"//apex_available:platform",
"com.android.btservices",
],
min_sdk_version: "29",
}
cc_defaults {
name: "libgrpcio_sys_defaults",
cflags: [
"-DGRPC_SYS_SECURE",
],
cpp_std: "c++11",
shared_libs: ["libgrpc++"],
apex_available: [
"//apex_available:platform",
"com.android.btservices",
],
min_sdk_version: "29",
}
cc_library {
name: "libgrpc_wrap",
defaults: ["libgrpcio_sys_defaults"],
host_supported: true,
srcs: ["grpc_wrap.cc"],
}
rust_bindgen {
name: "libgrpc_bindgen",
defaults: ["libgrpcio_sys_defaults"],
host_supported: true,
wrapper_src: "android/bindgen_wrapper.hpp",
source_stem: "grpc-bindings",
crate_name: "grpc_bindgen",
bindgen_flags: [
"--size_t-is-usize",
"--constified-enum-module grpc_status_code",
"--default-enum-style rust",
"--allowlist-function=\\bgrpc_.*",
"--allowlist-function=\\bgpr_.*",
"--allowlist-function=\\bgrpcwrap_.*",
"--allowlist-var=\\bGRPC_.*",
"--allowlist-type=\\bgrpc_.*",
"--allowlist-type=\\bgpr_.*",
"--allowlist-type=\\bgrpcwrap_.*",
"--allowlist-type=\\bcensus_context.*",
"--allowlist-type=\\bverify_peer_options.*",
"--blocklist-type=(__)?pthread.*",
"--blocklist-function=\\bgpr_mu_.*",
"--blocklist-function=\\bgpr_cv_.*",
"--blocklist-function=\\bgpr_once_.*",
"--blocklist-type=gpr_mu",
"--blocklist-type=gpr_cv",
"--blocklist-type=gpr_once",
],
min_sdk_version: "29",
}
rust_test {
name: "libgrpc_bindgen_test",
srcs: [":libgrpc_bindgen"],
crate_name: "grpc_bindgen_test",
test_suites: ["general-tests"],
auto_gen_config: true,
clippy_lints: "none",
lints: "none",
}