// This file is generated by cargo2android.py --run --device --features channel,default,io,memchr,sink --dependencies --tests.

rust_defaults {
    name: "futures-util_defaults",
    crate_name: "futures_util",
    srcs: ["src/lib.rs"],
    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",
    ],
    rustlibs: [
        "libfutures_channel",
        "libfutures_core",
        "libfutures_io",
        "libfutures_sink",
        "libfutures_task",
        "libmemchr",
        "libpin_project",
        "libpin_utils",
        "libproc_macro_nested",
        "libslab",
    ],
    proc_macros: [
        "libfutures_macro",
        "libproc_macro_hack",
    ],
}

rust_test_host {
    name: "futures-util_host_test_src_lib",
    defaults: ["futures-util_defaults"],
}

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

rust_library {
    name: "libfutures_util",
    host_supported: true,
    crate_name: "futures_util",
    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",
    ],
    rustlibs: [
        "libfutures_channel",
        "libfutures_core",
        "libfutures_io",
        "libfutures_sink",
        "libfutures_task",
        "libmemchr",
        "libpin_project",
        "libpin_utils",
        "libproc_macro_nested",
        "libslab",
    ],
    proc_macros: [
        "libfutures_macro",
        "libproc_macro_hack",
    ],
}

// dependent_library ["feature_list"]
//   futures-channel-0.3.7 "alloc,std"
//   futures-core-0.3.7 "alloc,std"
//   futures-io-0.3.7 "std"
//   futures-macro-0.3.7
//   futures-sink-0.3.7
//   futures-task-0.3.7 "alloc,once_cell,std"
//   memchr-2.3.3 "default,std"
//   once_cell-1.4.1 "std"
//   pin-project-1.0.1
//   pin-project-internal-1.0.1
//   pin-utils-0.1.0
//   proc-macro-hack-0.5.18
//   proc-macro-nested-0.1.6
//   proc-macro2-1.0.24 "default,proc-macro"
//   quote-1.0.7 "default,proc-macro"
//   slab-0.4.2
//   syn-1.0.48 "clone-impls,default,derive,full,parsing,printing,proc-macro,quote,visit-mut"
//   unicode-xid-0.2.1 "default"
