// This file is generated by cargo2android.py --run --device --dependencies --patch=patches/Android.bp.patch.

package {
    default_applicable_licenses: ["external_rust_crates_once_cell_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_once_cell_license",
    visibility: [":__subpackages__"],
    license_kinds: [
        "SPDX-license-identifier-Apache-2.0",
        "SPDX-license-identifier-MIT",
    ],
    license_text: [
        "LICENSE-APACHE",
        "LICENSE-MIT",
    ],
}

rust_library {
    name: "libonce_cell",
    host_supported: true,
    crate_name: "once_cell",
    srcs: ["src/lib.rs"],
    edition: "2018",
    features: [
        "alloc",
        "default",
        "std",
    ],
    apex_available: [
        "//apex_available:platform",
        "com.android.resolv",
        "com.android.virt",
    ],
    min_sdk_version: "29",
}
