xref: /aosp_15_r20/external/grpc-grpc-java/core/BUILD.bazel (revision e07d83d3ffcef9ecfc9f7f475418ec639ff0e5fe)
1java_library(
2    name = "core",
3    visibility = ["//visibility:public"],
4    exports = ["//api"],
5)
6
7java_library(
8    name = "inprocess",
9    srcs = glob([
10        "src/main/java/io/grpc/inprocess/*.java",
11    ]),
12    visibility = ["//visibility:public"],
13    deps = [
14        ":internal",
15        "//api",
16        "//context",
17        "@com_google_code_findbugs_jsr305//jar",
18        "@com_google_errorprone_error_prone_annotations//jar",
19        "@com_google_guava_guava//jar",
20        "@com_google_j2objc_j2objc_annotations//jar",
21    ],
22)
23
24java_library(
25    name = "internal",
26    srcs = glob([
27        "src/main/java/io/grpc/internal/*.java",
28    ]),
29    javacopts = ["-Xep:DoNotCall:OFF"],  # Remove once requiring Bazel 3.4.0+; allows non-final
30    resources = glob([
31        "src/bazel-internal/resources/**",
32    ]),
33    visibility = ["//:__subpackages__"],
34    deps = [
35        "//api",
36        "//context",
37        "@com_google_android_annotations//jar",
38        "@com_google_code_findbugs_jsr305//jar",
39        "@com_google_code_gson_gson//jar",
40        "@com_google_errorprone_error_prone_annotations//jar",
41        "@com_google_guava_guava//jar",
42        "@com_google_j2objc_j2objc_annotations//jar",
43        "@io_perfmark_perfmark_api//jar",
44        "@org_codehaus_mojo_animal_sniffer_annotations//jar",
45    ],
46)
47
48java_library(
49    name = "util",
50    srcs = glob([
51        "src/main/java/io/grpc/util/*.java",
52    ]),
53    resources = glob([
54        "src/bazel-util/resources/**",
55    ]),
56    visibility = ["//visibility:public"],
57    deps = [
58        ":internal",
59        "//api",
60        "@com_google_code_findbugs_jsr305//jar",
61        "@com_google_guava_guava//jar",
62        "@com_google_j2objc_j2objc_annotations//jar",
63        "@org_codehaus_mojo_animal_sniffer_annotations//jar",
64    ],
65)
66
67# Mirrors the dependencies included in the artifact on Maven Central for usage
68# with maven_install's override_targets. Should only be used as a dep for
69# pre-compiled binaries on Maven Central.
70java_library(
71    name = "core_maven",
72    visibility = ["//visibility:public"],
73    exports = [
74        ":inprocess",
75        ":internal",
76        ":util",
77        "//api",
78    ],
79)
80