# Benchmarks for Rust Protobuf.
load(
    "@rules_rust//rust:defs.bzl",
    "rust_library",
)
load("//bazel:cc_proto_library.bzl", "cc_proto_library")
load(
    "//protos/bazel:upb_cc_proto_library.bzl",
    "upb_cc_proto_library",
)
load(
    "//rust:defs.bzl",
    "rust_cc_proto_library",
    "rust_upb_proto_library",
)

proto_library(
    name = "bench_data_proto",
    srcs = ["bench_data.proto"],
)

cc_proto_library(
    name = "bench_data_cc_proto",
    deps = [":bench_data_proto"],
)

rust_cc_proto_library(
    name = "bench_data_cpp_rust_proto",
    deps = [":bench_data_proto"],
)

rust_upb_proto_library(
    name = "bench_data_upb_rust_proto",
    deps = [":bench_data_proto"],
)

upb_cc_proto_library(
    name = "bench_data_upb_cc_proto",
    deps = [":bench_data_proto"],
)

cc_test(
    name = "rust_protobuf_benchmarks_cpp",
    testonly = True,
    srcs = ["rust_protobuf_benchmarks.cc"],
    deps = [
        ":bench_data_cc_proto",
        ":bench_data_upb_cc_proto",
        ":benchmarks",
        ":proto_benchmarks_cpp",  # build_cleaner: keep
        "//protos",
        "//protos:repeated_field",
        "//src/google/protobuf:protobuf_lite",
        "//testing/base/public:gunit",
        "//third_party/benchmark",
        "@com_google_absl//absl/log:absl_check",
        "@com_google_googletest//:gtest",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "rust_protobuf_benchmarks_upb",
    testonly = True,
    srcs = ["rust_protobuf_benchmarks.cc"],
    defines = ["BENCHMARK_UPB"],
    deps = [
        ":bench_data_cc_proto",
        ":bench_data_upb_cc_proto",
        ":benchmarks",
        ":proto_benchmarks_upb",  # build_cleaner: keep
        "//protos",
        "//protos:repeated_field",
        "//src/google/protobuf:protobuf_lite",
        "//testing/base/public:gunit",
        "//third_party/benchmark",
        "@com_google_absl//absl/log:absl_check",
        "@com_google_googletest//:gtest",
        "@com_google_googletest//:gtest_main",
    ],
)

rust_library(
    name = "proto_benchmarks_cpp",
    srcs = ["proto_benchmarks.rs"],
    proc_macro_deps = [
        "@crate_index//:paste",
    ],
    rustc_flags = [
        "--cfg=bench_cpp",
    ],
    deps = [":bench_data_cpp_rust_proto"],
)

rust_library(
    name = "proto_benchmarks_upb",
    srcs = ["proto_benchmarks.rs"],
    proc_macro_deps = [
        "@crate_index//:paste",
    ],
    rustc_flags = [
        "--cfg=bench_upb",
    ],
    deps = [":bench_data_upb_rust_proto"],
)

rust_library(
    name = "benchmarks",
    srcs = ["benchmarks.rs"],
    deps = [
        ":benchmark_thunks",  #build_cleaner: keep
    ],
)

cc_library(
    name = "benchmark_thunks",
    srcs = ["benchmark_thunks.cc"],
    deps = [":bench_data_cc_proto"],
)
