• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1load("@io_bazel_rules_kotlin//kotlin:jvm.bzl", "kt_jvm_library")
2load("@rules_java//java:defs.bzl", "java_lite_proto_library")
3load("@rules_jvm_external//:kt_defs.bzl", "kt_jvm_export")
4load("//:protobuf_version.bzl", "PROTOBUF_VERSION")
5load("//:protobuf.bzl", "internal_gen_kt_protos")
6
7java_lite_proto_library(
8    name = "example_extensible_message_java_proto_lite",
9    deps = ["//java/kotlin:example_extensible_message_proto"],
10)
11
12kt_jvm_library(
13    name = "lite_extensions",
14    srcs = ["src/main/kotlin/com/google/protobuf/ExtendableMessageLiteExtensions.kt"],
15    deps = ["//java/lite"],
16)
17
18kt_jvm_library(
19    name = "well_known_protos_kotlin_lite",
20    srcs = [
21        "//:gen_well_known_protos_kotlinlite",
22    ],
23    deps = [
24        "//java/lite",
25        "//java/kotlin:only_for_use_in_proto_generated_code_its_generator_and_tests",
26        "//java/kotlin:shared_runtime",
27    ],
28)
29
30kt_jvm_export(
31    name = "kotlin-lite_mvn",
32    maven_coordinates = "com.google.protobuf:protobuf-kotlin-lite:%s" % PROTOBUF_VERSION,
33    pom_template = "//java/kotlin-lite:pom_template.xml",
34    resources = ["//:well_known_protos"],
35    runtime_deps = [
36        ":lite_extensions",
37        ":well_known_protos_kotlin_lite",
38        "//java/kotlin:bytestring_lib",
39        "//java/kotlin:only_for_use_in_proto_generated_code_its_generator_and_tests",
40        "//java/kotlin:shared_runtime",
41    ],
42    deploy_env = [
43        "@com_github_jetbrains_kotlin//:kotlin-stdlib",
44        "//java/lite",
45    ],
46)
47
48filegroup(
49    name = "release",
50    srcs = [
51        ":kotlin-lite_mvn-docs",
52        ":kotlin-lite_mvn-maven-source",
53        ":kotlin-lite_mvn-pom",
54        ":kotlin-lite_mvn-project",
55    ],
56    visibility = ["//java:__pkg__"],
57)
58
59test_suite(
60    name = "tests",
61    tests = [
62        "test_lite_extensions",
63        "proto2_test_lite",
64        "proto3_test_lite",
65    ],
66)
67
68kt_jvm_library(
69    name = "test_lite_extensions_library",
70    srcs = ["src/test/kotlin/com/google/protobuf/ExtendableMessageLiteExtensionsTest.kt"],
71    deps = [
72        ":example_extensible_message_java_proto_lite",
73        ":lite_extensions",
74        "//java/lite",
75        "//java/kotlin:only_for_use_in_proto_generated_code_its_generator_and_tests",
76        "//java/kotlin:shared_runtime",
77        "@com_github_jetbrains_kotlin//:kotlin-test",
78        "@maven//:com_google_truth_truth",
79        "@maven//:junit_junit",
80    ],
81)
82
83java_test(
84    name = "test_lite_extensions",
85    runtime_deps = [":test_lite_extensions_library"],
86    test_class = "com.google.protobuf.kotlin.ExtendableMessageLiteExtensionsTest",
87)
88
89java_lite_proto_library(
90    name = "evil_names_proto2_java_proto_lite",
91    deps = ["//java/kotlin:evil_names_proto2"],
92)
93
94internal_gen_kt_protos(
95    name = "gen_evil_names_proto2_lite",
96    deps = ["//java/kotlin:evil_names_proto2"],
97    lite = True,
98)
99
100java_lite_proto_library(
101    name = "evil_names_proto3_java_proto_lite",
102    deps = ["//java/kotlin:evil_names_proto3"],
103)
104
105internal_gen_kt_protos(
106    name = "gen_evil_names_proto3_lite",
107    deps = ["//java/kotlin:evil_names_proto3"],
108    lite = True,
109)
110
111java_lite_proto_library(
112    name = "multiple_files_proto3_java_proto_lite",
113    deps = ["//java/kotlin:multiple_files_proto3"],
114)
115
116internal_gen_kt_protos(
117    name = "gen_kotlin_proto3_java_multiple_files_lite",
118    deps = ["//java/kotlin:multiple_files_proto3"],
119)
120
121kt_jvm_library(
122    name = "kotlin_unittest_lite",
123    srcs = [
124        ":gen_evil_names_proto2_lite",
125        "//:gen_kotlin_unittest_lite",
126    ],
127    deps = [
128        ":evil_names_proto2_java_proto_lite",
129        "//java/lite:lite",
130        "//java/kotlin:only_for_use_in_proto_generated_code_its_generator_and_tests",
131        "//java/kotlin:shared_runtime",
132        "//:java_lite_test_protos",
133    ],
134)
135
136kt_jvm_library(
137    name = "kotlin_proto3_unittest_lite",
138    srcs = [
139        ":gen_evil_names_proto3_lite",
140        ":gen_kotlin_proto3_java_multiple_files_lite",
141        "//:gen_kotlin_proto3_unittest_lite",
142    ],
143    deps = [
144        ":evil_names_proto3_java_proto_lite",
145        ":multiple_files_proto3_java_proto_lite",
146        "//java/lite:lite",
147        "//java/kotlin:only_for_use_in_proto_generated_code_its_generator_and_tests",
148        "//java/kotlin:shared_runtime",
149        "//:java_lite_test_protos",
150    ],
151)
152
153kt_jvm_library(
154    name = "proto2_test_lite_library",
155    srcs = ["src/test/kotlin/com/google/protobuf/Proto2LiteTest.kt"],
156    deps = [
157        ":kotlin_unittest_lite",
158        "//java/core:test_util_lite",
159        "@maven//:com_google_truth_truth",
160        "@maven//:junit_junit",
161    ],
162)
163
164java_test(
165    name = "proto2_test_lite",
166    runtime_deps = [":proto2_test_lite_library"],
167    test_class = "com.google.protobuf.kotlin.Proto2LiteTest",
168)
169
170kt_jvm_library(
171    name = "proto3_test_lite_library",
172    srcs = ["//java/kotlin:src/test/kotlin/com/google/protobuf/Proto3Test.kt"],
173    deps = [
174        ":kotlin_proto3_unittest_lite",
175        "//java/core:test_util_lite",
176        "@maven//:com_google_truth_truth",
177        "@maven//:junit_junit",
178    ],
179)
180
181java_test(
182    name = "proto3_test_lite",
183    runtime_deps = [":proto3_test_lite_library"],
184    test_class = "com.google.protobuf.kotlin.Proto3Test",
185)
186