// 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_futures-util_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.
//
// large-scale-change included anything that looked like it might be a license
// text as a license_text. e.g. LICENSE, NOTICE, COPYING etc.
//
// Please consider removing redundant or irrelevant files from 'license_text:'.
// See: http://go/android-license-faq
license {
    name: "external_rust_crates_futures-util_license",
    visibility: [":__subpackages__"],
    license_kinds: [
        "SPDX-license-identifier-Apache-2.0",
        "SPDX-license-identifier-MIT",
    ],
    license_text: [
        "LICENSE-APACHE",
        "LICENSE-MIT",
    ],
}

rust_defaults {
    name: "futures-util_test_defaults",
    crate_name: "futures_util",
    srcs: ["src/lib.rs"],
    cargo_env_compat: true,
    cargo_pkg_version: "0.3.17",
    test_suites: ["general-tests"],
    auto_gen_config: true,
    edition: "2018",
    features: [
        "alloc",
        "async-await",
        "async-await-macro",
        "channel",
        "default",
        "futures-channel",
        "futures-io",
        "futures-macro",
        "futures-sink",
        "io",
        "memchr",
        "proc-macro-hack",
        "proc-macro-nested",
        "sink",
        "slab",
        "std",
    ],
    cfgs: ["fn_like_proc_macro"],
    rustlibs: [
        "libfutures_channel",
        "libfutures_core",
        "libfutures_io",
        "libfutures_sink",
        "libfutures_task",
        "libmemchr",
        "libpin_project_lite",
        "libpin_utils",
        "libproc_macro_nested",
        "libslab",
        "libtokio",
    ],
    proc_macros: [
        "libfutures_macro",
        "libproc_macro_hack",
    ],
}

rust_test_host {
    name: "futures-util_host_test_src_lib",
    defaults: ["futures-util_test_defaults"],
    test_options: {
        unit_test: true,
    },
}

rust_test {
    name: "futures-util_device_test_src_lib",
    defaults: ["futures-util_test_defaults"],
}

rust_library {
    name: "libfutures_util",
    host_supported: true,
    crate_name: "futures_util",
    cargo_env_compat: true,
    cargo_pkg_version: "0.3.17",
    srcs: ["src/lib.rs"],
    edition: "2018",
    features: [
        "alloc",
        "async-await",
        "async-await-macro",
        "channel",
        "default",
        "futures-channel",
        "futures-io",
        "futures-macro",
        "futures-sink",
        "io",
        "memchr",
        "proc-macro-hack",
        "proc-macro-nested",
        "sink",
        "slab",
        "std",
    ],
    cfgs: ["fn_like_proc_macro"],
    rustlibs: [
        "libfutures_channel",
        "libfutures_core",
        "libfutures_io",
        "libfutures_sink",
        "libfutures_task",
        "libmemchr",
        "libpin_project_lite",
        "libpin_utils",
        "libproc_macro_nested",
        "libslab",
    ],
    proc_macros: [
        "libfutures_macro",
        "libproc_macro_hack",
    ],
    apex_available: [
        "//apex_available:platform",
        "com.android.resolv",
        "com.android.virt",
    ],
    min_sdk_version: "29",
}
