github.com/stackb/rules_proto@v0.0.0-20240221195024-5428336c51f1/example/place/BUILD.bazel (about)

     1  load("@rules_proto//proto:defs.bzl", "proto_library")
     2  load("@build_stack_rules_proto//rules/cc:proto_cc_library.bzl", "proto_cc_library")
     3  load("@build_stack_rules_proto//rules/closure:proto_closure_js_library.bzl", "proto_closure_js_library")
     4  load("@build_stack_rules_proto//rules/go:proto_go_library.bzl", "proto_go_library")
     5  load("@build_stack_rules_proto//rules/java:proto_java_library.bzl", "proto_java_library")
     6  load("@build_stack_rules_proto//rules/nodejs:proto_nodejs_library.bzl", "proto_nodejs_library")
     7  load("@build_stack_rules_proto//rules/py:proto_py_library.bzl", "proto_py_library")
     8  load("@build_stack_rules_proto//rules/scala:proto_scala_library.bzl", "proto_scala_library")
     9  load("@build_stack_rules_proto//rules/ts:proto_ts_library.bzl", "proto_ts_library")
    10  load("@build_stack_rules_proto//rules:proto_compile.bzl", "proto_compile")
    11  
    12  proto_library(
    13      name = "place_proto",
    14      srcs = ["place.proto"],
    15      visibility = ["//visibility:public"],
    16      deps = ["//example/thing:thing_proto"],
    17  )
    18  
    19  proto_closure_js_library(
    20      name = "place_closure_js_library",
    21      srcs = ["place_closure.js"],
    22      internal_descriptors = [
    23          "//example/place:place_proto",
    24          "//example/thing:thing_proto",
    25          "//google/protobuf:timestamppb_proto",
    26      ],
    27      suppress = [
    28          "JSC_IMPLICITLY_NONNULL_JSDOC",
    29          "JSC_UNUSED_LOCAL_ASSIGNMENT",
    30      ],
    31      visibility = ["//visibility:public"],
    32      exports = ["//example/thing:thing_closure_js_library"],
    33      deps = ["//example/thing:thing_closure_js_library"],
    34  )
    35  
    36  proto_compile(
    37      name = "place_closure_js_compile",
    38      options = {"@build_stack_rules_proto//plugin/builtin:closurejs": [
    39          "import_style=closure",
    40          "library=example/place/place_closure",
    41      ]},
    42      outputs = ["place_closure.js"],
    43      plugins = ["@build_stack_rules_proto//plugin/builtin:closurejs"],
    44      proto = "place_proto",
    45      visibility = ["//visibility:public"],
    46  )
    47  
    48  proto_cc_library(
    49      name = "place_cc_library",
    50      srcs = ["place.pb.cc"],
    51      hdrs = ["place.pb.h"],
    52      visibility = ["//visibility:public"],
    53      deps = [
    54          "//example/thing:thing_cc_library",
    55          "@com_google_protobuf//:protobuf",
    56      ],
    57  )
    58  
    59  proto_compile(
    60      name = "place_cpp_compile",
    61      outputs = [
    62          "place.pb.cc",
    63          "place.pb.h",
    64      ],
    65      plugins = ["@build_stack_rules_proto//plugin/builtin:cpp"],
    66      proto = "place_proto",
    67      visibility = ["//visibility:public"],
    68  )
    69  
    70  proto_compile(
    71      name = "place_go_compile",
    72      output_mappings = ["place.pb.go=github.com/stackb/rules_proto/example/place/place.pb.go"],
    73      outputs = ["place.pb.go"],
    74      plugins = ["@build_stack_rules_proto//plugin/golang/protobuf:protoc-gen-go"],
    75      proto = "place_proto",
    76      visibility = ["//visibility:public"],
    77  )
    78  
    79  proto_go_library(
    80      name = "place_go_proto",
    81      srcs = ["place.pb.go"],
    82      importpath = "github.com/stackb/rules_proto/example/place",
    83      visibility = ["//visibility:public"],
    84      deps = [
    85          "//example/thing:thing_go_proto",
    86          "@org_golang_google_protobuf//reflect/protoreflect",
    87          "@org_golang_google_protobuf//runtime/protoimpl",
    88      ],
    89  )
    90  
    91  proto_compile(
    92      name = "place_java_compile",
    93      outs = {"@build_stack_rules_proto//plugin/builtin:java": "example/place/place.srcjar"},
    94      outputs = ["place.srcjar"],
    95      plugins = ["@build_stack_rules_proto//plugin/builtin:java"],
    96      proto = "place_proto",
    97      visibility = ["//visibility:public"],
    98  )
    99  
   100  proto_java_library(
   101      name = "place_java_library",
   102      srcs = ["place.srcjar"],
   103      visibility = ["//visibility:public"],
   104      exports = [
   105          "//example/thing:thing_java_library",
   106          "@com_google_protobuf//:protobuf_java",
   107      ],
   108      deps = [
   109          "//example/thing:thing_java_library",
   110          "@com_google_protobuf//:protobuf_java",
   111      ],
   112  )
   113  
   114  proto_compile(
   115      name = "place_node_js_compile",
   116      options = {"@build_stack_rules_proto//plugin/builtin:commonjs": ["import_style=commonjs"]},
   117      outputs = ["place_pb.js"],
   118      plugins = ["@build_stack_rules_proto//plugin/builtin:commonjs"],
   119      proto = "place_proto",
   120      visibility = ["//visibility:public"],
   121  )
   122  
   123  proto_nodejs_library(
   124      name = "place_nodejs_library",
   125      srcs = ["place_pb.js"],
   126      visibility = ["//visibility:public"],
   127  )
   128  
   129  proto_compile(
   130      name = "place_python_compile",
   131      outputs = [
   132          "place_pb2.py",
   133          "place_pb2.pyi",
   134      ],
   135      plugins = [
   136          "@build_stack_rules_proto//plugin/builtin:pyi",
   137          "@build_stack_rules_proto//plugin/builtin:python",
   138      ],
   139      proto = "place_proto",
   140      visibility = ["//visibility:public"],
   141  )
   142  
   143  proto_py_library(
   144      name = "place_py_library",
   145      srcs = ["place_pb2.py"],
   146      visibility = ["//visibility:public"],
   147      deps = [
   148          "//example/thing:thing_py_library",
   149          "@com_google_protobuf//:protobuf_python",
   150      ],
   151  )
   152  
   153  proto_compile(
   154      name = "place_scala_compile",
   155      options = {"@build_stack_rules_proto//plugin/scalapb/scalapb:protoc-gen-scala-grpc": ["grpc"]},
   156      outputs = [
   157          "place_scala.srcjar",
   158          "place_scala_grpc.srcjar",
   159      ],
   160      plugins = [
   161          "@build_stack_rules_proto//plugin/scalapb/scalapb:protoc-gen-scala",
   162          "@build_stack_rules_proto//plugin/scalapb/scalapb:protoc-gen-scala-grpc",
   163      ],
   164      proto = "place_proto",
   165      visibility = ["//visibility:public"],
   166  )
   167  
   168  proto_scala_library(
   169      name = "place_proto_scala_library",
   170      srcs = ["place_scala.srcjar"],
   171      visibility = ["//visibility:public"],
   172      deps = [
   173          "//example/thing:thing_proto_scala_library",
   174          "@maven_scala//:com_google_protobuf_protobuf_java",
   175          "@maven_scala//:com_thesamet_scalapb_lenses_2_12",
   176          "@maven_scala//:com_thesamet_scalapb_scalapb_runtime_2_12",
   177      ],
   178  )
   179  
   180  proto_compile(
   181      name = "place_ts_proto_compile",
   182      options = {"@build_stack_rules_proto//plugin/stephenh/ts-proto:protoc-gen-ts-proto": [
   183          "emitImportedFiles=false",
   184          "esModuleInterop=true",
   185      ]},
   186      outputs = ["place.ts"],
   187      plugins = ["@build_stack_rules_proto//plugin/stephenh/ts-proto:protoc-gen-ts-proto"],
   188      proto = "place_proto",
   189      visibility = ["//visibility:public"],
   190  )
   191  
   192  proto_ts_library(
   193      name = "place_ts_proto",
   194      srcs = ["place.ts"],
   195      visibility = ["//visibility:public"],
   196      deps = [
   197          "//example/thing:thing_ts_proto",
   198          "@//:node_modules/@nestjs/microservices",
   199          "@//:node_modules/@types/node",
   200          "@//:node_modules/long",
   201          "@//:node_modules/protobufjs",
   202          "@//:node_modules/rxjs",
   203      ],
   204  )