// This file is generated by cargo_embargo.
// Do not modify this file because the changes will be overridden on upgrade.

package {
    default_applicable_licenses: ["external_rust_crates_once_cell_license"],
    default_team: "trendy_team_android_rust",
}

license {
    name: "external_rust_crates_once_cell_license",
    visibility: [":__subpackages__"],
    license_kinds: ["SPDX-license-identifier-Apache-2.0"],
    license_text: ["LICENSE"],
}

rust_library {
    name: "libonce_cell",
    host_supported: true,
    crate_name: "once_cell",
    cargo_env_compat: true,
    cargo_pkg_version: "1.20.2",
    crate_root: "src/lib.rs",
    edition: "2021",
    features: [
        "alloc",
        "default",
        "race",
        "std",
    ],
    apex_available: [
        "//apex_available:platform",
        "//apex_available:anyapex",
    ],
    product_available: true,
    vendor_available: true,
    min_sdk_version: "29",
}

rust_test {
    name: "once_cell_test_src_lib",
    host_supported: true,
    crate_name: "once_cell",
    cargo_env_compat: true,
    cargo_pkg_version: "1.20.2",
    crate_root: "src/lib.rs",
    test_suites: ["general-tests"],
    auto_gen_config: true,
    test_options: {
        unit_test: true,
    },
    edition: "2021",
    features: [
        "alloc",
        "default",
        "race",
        "std",
    ],
    rustlibs: ["libregex"],
}

rust_test {
    name: "once_cell_test_tests_it_main",
    host_supported: true,
    crate_name: "it",
    cargo_env_compat: true,
    cargo_pkg_version: "1.20.2",
    crate_root: "tests/it/main.rs",
    test_suites: ["general-tests"],
    auto_gen_config: true,
    test_options: {
        unit_test: true,
    },
    edition: "2021",
    features: [
        "alloc",
        "default",
        "race",
        "std",
    ],
    rustlibs: [
        "libonce_cell",
        "libregex",
    ],
}

rust_library_rlib {
    name: "libonce_cell_nostd",
    crate_name: "once_cell",
    cargo_env_compat: true,
    cargo_pkg_version: "1.20.2",
    crate_root: "src/lib.rs",
    edition: "2021",
    features: [
        "alloc",
        "race",
    ],
    apex_available: [
        "//apex_available:platform",
        "//apex_available:anyapex",
    ],
    prefer_rlib: true,
    no_stdlibs: true,
    stdlibs: [
        "liballoc.rust_sysroot",
        "libcompiler_builtins.rust_sysroot",
        "libcore.rust_sysroot",
    ],
    product_available: true,
    vendor_available: true,
    min_sdk_version: "29",
}

dirgroup {
    name: "trusty_dirgroup_external_rust_crates_once_cell",
    visibility: ["//trusty/vendor/google/aosp/scripts"],
    dirs: ["."],
}
