package {
    default_applicable_licenses: ["Android-Apache-2.0"],
}

rust_binary {
    name: "libatrace_rust_benchmark",
    srcs: ["src/atrace_benchmark.rs"],
    rustlibs: [
        "libatrace_rust",
        "libatrace_rust_benchmark_common",
        "libcriterion",
    ],
}

rust_binary {
    name: "libatrace_tracing_subscriber_benchmark",
    srcs: ["src/tracing_subscriber_benchmark.rs"],
    rustlibs: [
        "libatrace_rust_benchmark_common",
        "libatrace_tracing_subscriber",
        "libcriterion",
        "libtracing",
        "libtracing_subscriber",
    ],
}

rust_library {
    name: "libatrace_rust_benchmark_common",
    crate_name: "atrace_rust_benchmark_common",
    srcs: ["src/atrace_benchmark_common.rs"],
    rustlibs: [
        "libcriterion",
    ],
    shared_libs: [
        "libcutils",
        "liblog",
    ],
    static_libs: [
        "libatrace_benchmark_trace_enabler",
    ],
}

cc_binary {
    name: "libatrace_rust_benchmark_cc",
    srcs: ["src/atrace_benchmark.cc"],
    shared_libs: [
        "libcutils",
        "liblog",
    ],
    static_libs: [
        "libgoogle-benchmark-main",
        "libatrace_benchmark_trace_enabler",
    ],
}

cc_library_static {
    name: "libatrace_benchmark_trace_enabler",
    srcs: ["src/trace_enabler.cc"],
    shared_libs: [
        "libcutils",
        "liblog",
    ],
}
