load("@rules_cc//cc:defs.bzl", "cc_library")
load("@rules_java//java:defs.bzl", "java_library")
load("@rules_proto//proto:defs.bzl", "proto_library")

filegroup(
    name = "datasets",
    srcs = [
        "//benchmarks/datasets/google_message1/proto2:datasets",
        "//benchmarks/datasets/google_message1/proto3:datasets",
        "//benchmarks/datasets/google_message2:datasets",
        "//benchmarks/datasets/google_message3:datasets",
        "//benchmarks/datasets/google_message4:datasets",
    ],
    visibility = [
        "//benchmarks:__subpackages__",
    ],
)

proto_library(
    name = "protos",
    visibility = [
        "//benchmarks:__subpackages__",
    ],
    deps = [
        "//benchmarks/datasets/google_message1/proto2:benchmark_message1_proto2_proto",
        "//benchmarks/datasets/google_message1/proto3:benchmark_message1_proto3_proto",
        "//benchmarks/datasets/google_message2:benchmark_message2_proto",
        "//benchmarks/datasets/google_message3:benchmark_message3_proto",
        "//benchmarks/datasets/google_message4:benchmark_message4_proto",
    ],
)

cc_library(
    name = "cc_protos",
    visibility = [
        "//benchmarks:__subpackages__",
    ],
    deps = [
        "//benchmarks/datasets/google_message1/proto2:benchmark_message1_proto2_cc_proto",
        "//benchmarks/datasets/google_message1/proto3:benchmark_message1_proto3_cc_proto",
        "//benchmarks/datasets/google_message2:benchmark_message2_cc_proto",
        "//benchmarks/datasets/google_message3:benchmark_message3_cc_proto",
        "//benchmarks/datasets/google_message4:benchmark_message4_cc_proto",
    ],
)

java_library(
    name = "java_protos",
    visibility = [
        "//benchmarks:__subpackages__",
    ],
    exports = [
        "//benchmarks/datasets/google_message1/proto2:benchmark_message1_proto2_java_proto",
        "//benchmarks/datasets/google_message1/proto3:benchmark_message1_proto3_java_proto",
        "//benchmarks/datasets/google_message2:benchmark_message2_java_proto",
        "//benchmarks/datasets/google_message3:benchmark_message3_java_proto",
        "//benchmarks/datasets/google_message4:benchmark_message4_java_proto",
    ],
)