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

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

rust_test {
    name: "android_logger_test_src_lib",
    crate_name: "android_logger",
    cargo_env_compat: true,
    cargo_pkg_version: "0.13.3",
    crate_root: "src/lib.rs",
    test_suites: ["general-tests"],
    auto_gen_config: true,
    edition: "2015",
    features: [
        "default",
        "regex",
    ],
    rustlibs: [
        "libandroid_log_sys",
        "libenv_logger",
        "liblog_rust",
        "libonce_cell",
    ],
}

rust_test {
    name: "android_logger_test_tests_config_log_level",
    crate_name: "config_log_level",
    cargo_env_compat: true,
    cargo_pkg_version: "0.13.3",
    crate_root: "tests/config_log_level.rs",
    test_suites: ["general-tests"],
    auto_gen_config: true,
    edition: "2015",
    features: [
        "default",
        "regex",
    ],
    rustlibs: [
        "libandroid_log_sys",
        "libandroid_logger",
        "libenv_logger",
        "liblog_rust",
        "libonce_cell",
    ],
}

rust_test {
    name: "android_logger_test_tests_default_init",
    crate_name: "default_init",
    cargo_env_compat: true,
    cargo_pkg_version: "0.13.3",
    crate_root: "tests/default_init.rs",
    test_suites: ["general-tests"],
    auto_gen_config: true,
    edition: "2015",
    features: [
        "default",
        "regex",
    ],
    rustlibs: [
        "libandroid_log_sys",
        "libandroid_logger",
        "libenv_logger",
        "liblog_rust",
        "libonce_cell",
    ],
}

rust_test {
    name: "android_logger_test_tests_multiple_init",
    crate_name: "multiple_init",
    cargo_env_compat: true,
    cargo_pkg_version: "0.13.3",
    crate_root: "tests/multiple_init.rs",
    test_suites: ["general-tests"],
    auto_gen_config: true,
    edition: "2015",
    features: [
        "default",
        "regex",
    ],
    rustlibs: [
        "libandroid_log_sys",
        "libandroid_logger",
        "libenv_logger",
        "liblog_rust",
        "libonce_cell",
    ],
}

rust_library {
    name: "libandroid_logger",
    crate_name: "android_logger",
    cargo_env_compat: true,
    cargo_pkg_version: "0.13.3",
    crate_root: "src/lib.rs",
    edition: "2015",
    features: [
        "default",
        "regex",
    ],
    rustlibs: [
        "libandroid_log_sys",
        "libenv_logger",
        "liblog_rust",
        "libonce_cell",
    ],
    apex_available: [
        "//apex_available:platform",
        "//apex_available:anyapex",
    ],
    product_available: true,
    vendor_available: true,
    min_sdk_version: "29",
}
