BUILD.bazel 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. load("@rules_java//java:defs.bzl", "java_proto_library")
  2. load("@rules_jvm_external//:defs.bzl", "java_export")
  3. load("@rules_pkg//:mappings.bzl", "pkg_filegroup", "pkg_files", "strip_prefix")
  4. load("@rules_proto//proto:defs.bzl", "proto_library")
  5. load("//:protobuf_version.bzl", "PROTOBUF_JAVA_VERSION")
  6. load("//java/internal:testing.bzl", "junit_tests")
  7. java_library(
  8. name = "util",
  9. srcs = glob([
  10. "src/main/java/com/google/protobuf/util/*.java",
  11. ]),
  12. visibility = ["//visibility:public"],
  13. deps = [
  14. "//java/core",
  15. "@maven//:com_google_code_findbugs_jsr305",
  16. "@maven//:com_google_code_gson_gson",
  17. "@maven//:com_google_errorprone_error_prone_annotations",
  18. "@maven//:com_google_guava_guava",
  19. "@maven//:com_google_j2objc_j2objc_annotations",
  20. ],
  21. )
  22. # Bazel users, don't depend on this target, use :util.
  23. java_export(
  24. name = "util_mvn",
  25. deploy_env = ["//java/core"],
  26. maven_coordinates = "com.google.protobuf:protobuf-java-util:%s" % PROTOBUF_JAVA_VERSION,
  27. pom_template = "pom_template.xml",
  28. tags = ["manual"],
  29. visibility = ["//java:__pkg__"],
  30. runtime_deps = [":util"],
  31. )
  32. filegroup(
  33. name = "release",
  34. srcs = [
  35. ":util_mvn-docs",
  36. ":util_mvn-maven-source",
  37. ":util_mvn-pom",
  38. ":util_mvn-project",
  39. ],
  40. visibility = ["//java:__pkg__"],
  41. )
  42. proto_library(
  43. name = "test_protos",
  44. srcs = glob(["src/test/proto/**/*.proto"]),
  45. deps = [
  46. "//:any_proto",
  47. "//:duration_proto",
  48. "//:field_mask_proto",
  49. "//:struct_proto",
  50. "//:timestamp_proto",
  51. "//:wrappers_proto",
  52. ],
  53. )
  54. java_proto_library(
  55. name = "test_protos_java_proto",
  56. deps = [":test_protos"],
  57. )
  58. junit_tests(
  59. name = "tests",
  60. package_name = "com.google.protobuf.util",
  61. srcs = glob(["src/test/java/**/*.java"]),
  62. deps = [
  63. ":test_protos_java_proto",
  64. ":util",
  65. "//java/core",
  66. "//java/core:generic_test_protos_java_proto",
  67. "@maven//:com_google_code_gson_gson",
  68. "@maven//:com_google_guava_guava",
  69. "@maven//:com_google_truth_truth",
  70. "@maven//:junit_junit",
  71. ],
  72. )
  73. pkg_files(
  74. name = "dist_files",
  75. srcs = glob([
  76. "src/main/**/*.java",
  77. "src/test/**/*.java",
  78. "src/test/**/*.proto",
  79. ]) + [
  80. "BUILD.bazel",
  81. "pom.xml",
  82. "pom_template.xml",
  83. ],
  84. strip_prefix = strip_prefix.from_root(""),
  85. visibility = ["//java:__pkg__"],
  86. )