load("@rules_proto//proto:defs.bzl", "proto_lang_toolchain", "proto_toolchain", "proto_library")
cc_library(
  name = "any_cc_proto",
  deps = ["//:protobuf"],
  visibility = ["//visibility:public"],
)
proto_library(
  name = "any_proto",
  srcs = [],
  visibility = ["//visibility:public"],
)
cc_library(
  name = "api_cc_proto",
  deps = ["//:protobuf"],
  visibility = ["//visibility:public"],
)
proto_library(
  name = "api_proto",
  srcs = [],
  visibility = ["//visibility:public"],
)
cc_library(
  name = "cpp_features_cc_proto",
  deps = ["//:protobuf"],
  visibility = ["//visibility:public"],
)
proto_library(
  name = "cpp_features_proto",
  srcs = [],
  visibility = ["//visibility:public"],
)
cc_library(
  name = "descriptor_cc_proto",
  deps = ["//:protobuf"],
  visibility = ["//visibility:public"],
)
proto_library(
  name = "descriptor_proto",
  srcs = [],
  visibility = ["//visibility:public"],
)
cc_library(
  name = "differencer",
  deps = ["//:protobuf"],
  visibility = ["//visibility:public"],
)
cc_library(
  name = "duration_cc_proto",
  deps = ["//:protobuf"],
  visibility = ["//visibility:public"],
)
proto_library(
  name = "duration_proto",
  srcs = [],
  visibility = ["//visibility:public"],
)
cc_library(
  name = "empty_cc_proto",
  deps = ["//:protobuf"],
  visibility = ["//visibility:public"],
)
proto_library(
  name = "empty_proto",
  srcs = [],
  visibility = ["//visibility:public"],
)
cc_library(
  name = "field_mask_cc_proto",
  deps = ["//:protobuf"],
  visibility = ["//visibility:public"],
)
proto_library(
  name = "field_mask_proto",
  srcs = [],
  visibility = ["//visibility:public"],
)
cc_library(
  name = "json_util",
  deps = ["//:protobuf"],
  visibility = ["//visibility:public"],
)
cc_library(
  name = "protobuf",
  linkopts = ["-lprotobuf"],
  visibility = ["//visibility:public"],
)
cc_library(
  name = "protobuf_lite",
  linkopts = ["-lprotobuf-lite"],
  visibility = ["//visibility:public"],
)
sh_binary(
  name = "protoc",
  srcs = ["protoc.sh"],
  visibility = ["//visibility:public"],
)
cc_library(
  name = "source_context_cc_proto",
  deps = ["//:protobuf"],
  visibility = ["//visibility:public"],
)
proto_library(
  name = "source_context_proto",
  srcs = [],
  visibility = ["//visibility:public"],
)
cc_library(
  name = "struct_cc_proto",
  deps = ["//:protobuf"],
  visibility = ["//visibility:public"],
)
proto_library(
  name = "struct_proto",
  srcs = [],
  visibility = ["//visibility:public"],
)
cc_library(
  name = "timestamp_cc_proto",
  deps = ["//:protobuf"],
  visibility = ["//visibility:public"],
)
proto_library(
  name = "timestamp_proto",
  srcs = [],
  visibility = ["//visibility:public"],
)
cc_library(
  name = "type_cc_proto",
  deps = ["//:protobuf"],
  visibility = ["//visibility:public"],
)
proto_library(
  name = "type_proto",
  srcs = [],
  visibility = ["//visibility:public"],
)
cc_library(
  name = "wrappers_cc_proto",
  deps = ["//:protobuf"],
  visibility = ["//visibility:public"],
)
proto_library(
  name = "wrappers_proto",
  srcs = [],
  visibility = ["//visibility:public"],
)
proto_lang_toolchain(
  name = "cc_toolchain",
  command_line = "--cpp_out=$(OUT)",
  runtime = ":protobuf",
  visibility = ["//visibility:public"],
)
proto_toolchain(
  name = "proto_toolchain",
  proto_compiler = ":protoc",
)
