// 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_memoffset_license"],
    default_team: "trendy_team_android_rust",
}

license {
    name: "external_rust_crates_memoffset_license",
    visibility: [":__subpackages__"],
    license_kinds: ["SPDX-license-identifier-MIT"],
    license_text: ["LICENSE"],
}

rust_library {
    name: "libmemoffset",
    host_supported: true,
    crate_name: "memoffset",
    cargo_env_compat: true,
    cargo_pkg_version: "0.9.0",
    crate_root: "src/lib.rs",
    edition: "2018",
    features: ["default"],
    cfgs: [
        "allow_clippy",
        "aosp_force_use_std",
        "doctests",
        "maybe_uninit",
        "raw_ref_macros",
        "stable_const",
        "tuple_ty",
    ],
    apex_available: [
        "//apex_available:platform",
        "//apex_available:anyapex",
    ],
    product_available: true,
    vendor_available: true,
    min_sdk_version: "29",
}

rust_test {
    name: "memoffset_test_src_lib",
    host_supported: true,
    crate_name: "memoffset",
    cargo_env_compat: true,
    cargo_pkg_version: "0.9.0",
    crate_root: "src/lib.rs",
    test_suites: ["general-tests"],
    auto_gen_config: true,
    test_options: {
        unit_test: true,
    },
    edition: "2018",
    features: ["default"],
    cfgs: [
        "allow_clippy",
        "aosp_force_use_std",
        "doctests",
        "maybe_uninit",
        "raw_ref_macros",
        "stable_const",
        "tuple_ty",
    ],
}

rust_library_rlib {
    name: "libmemoffset_nostd",
    crate_name: "memoffset",
    cargo_env_compat: true,
    cargo_pkg_version: "0.9.0",
    crate_root: "src/lib.rs",
    edition: "2018",
    features: ["default"],
    cfgs: [
        "allow_clippy",
        "doctests",
        "maybe_uninit",
        "raw_ref_macros",
        "stable_const",
        "tuple_ty",
    ],
    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,
}
