blob: 6995848a07ed12d84323c0973bf18aa49f2bf2c9 [file] [log] [blame]
Dan Willemsen1ff41e02016-07-31 17:53:37 -07001// Copyright (C) 2009 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14//
15//
16
17IGNORED_WARNINGS = [
18 "-Wno-sign-compare",
19 "-Wno-unused-parameter",
20 "-Wno-sign-promo",
21 "-Wno-error=return-type",
22]
23
24cc_defaults {
Chih-Hung Hsieh855e1422017-09-29 10:35:29 -070025 name: "protobuf-cflags-defaults",
26 clang_cflags: [
27 "-Wno-error=unused-const-variable",
28 "-Wno-error=user-defined-warnings",
29 ],
30 cflags: [
31 "-Wall",
32 "-Wno-error=format",
33 "-Wno-error=format-extra-args",
34 "-Wno-error=ignored-qualifiers",
35 "-Wno-error=sign-promo",
36 "-Wno-unused-function",
37 ],
38 target: {
Chih-Hung Hsieh23800052017-11-20 16:27:24 -080039 windows: {
40 cflags: ["-Wno-error"],
Chih-Hung Hsieh855e1422017-09-29 10:35:29 -070041 },
42 // cannot suppress gcc warning on redefined macros
43 not_windows: {
44 cflags: ["-Werror"],
45 },
Chih-Hung Hsieh35ee99e2017-11-28 16:00:56 -080046 android: {
47 cflags: ["-Werror"],
48 },
Chih-Hung Hsieh855e1422017-09-29 10:35:29 -070049 },
50}
51
52cc_defaults {
Dan Willemsen1ff41e02016-07-31 17:53:37 -070053 name: "libprotobuf-cpp-lite-defaults",
Chih-Hung Hsieh855e1422017-09-29 10:35:29 -070054 defaults: ["protobuf-cflags-defaults"],
Dan Willemsen1ff41e02016-07-31 17:53:37 -070055 srcs: [
56 "src/google/protobuf/stubs/atomicops_internals_x86_gcc.cc",
57 "src/google/protobuf/stubs/atomicops_internals_x86_msvc.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +010058 "src/google/protobuf/stubs/bytestream.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -070059 "src/google/protobuf/stubs/common.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +010060 "src/google/protobuf/stubs/int128.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -070061 "src/google/protobuf/stubs/once.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +010062 "src/google/protobuf/stubs/status.cc",
63 "src/google/protobuf/stubs/statusor.cc",
64 "src/google/protobuf/stubs/stringpiece.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -070065 "src/google/protobuf/stubs/stringprintf.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +010066 "src/google/protobuf/stubs/structurally_valid.cc",
67 "src/google/protobuf/stubs/strutil.cc",
68 "src/google/protobuf/stubs/time.cc",
69 "src/google/protobuf/arena.cc",
70 "src/google/protobuf/arenastring.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -070071 "src/google/protobuf/extension_set.cc",
72 "src/google/protobuf/generated_message_util.cc",
73 "src/google/protobuf/message_lite.cc",
74 "src/google/protobuf/repeated_field.cc",
75 "src/google/protobuf/wire_format_lite.cc",
76 "src/google/protobuf/io/coded_stream.cc",
77 "src/google/protobuf/io/zero_copy_stream.cc",
78 "src/google/protobuf/io/zero_copy_stream_impl_lite.cc",
79 ],
80
81 local_include_dirs: [
82 "android",
83 "src",
84 ],
85 export_include_dirs: ["src"],
86
87 cflags: IGNORED_WARNINGS,
88}
89
90// C++ lite library for the NDK.
91// =======================================================
92cc_library_static {
93 name: "libprotobuf-cpp-lite-ndk",
94 defaults: ["libprotobuf-cpp-lite-defaults"],
95
96 cflags: ["-DGOOGLE_PROTOBUF_NO_RTTI"],
97
98 sdk_version: "9",
99
Dan Albert8e024c62018-01-03 22:01:25 -0800100 stl: "c++_static",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700101}
102
103// C++ lite library for the platform and host.
104// =======================================================
105cc_library {
106 name: "libprotobuf-cpp-lite",
107 host_supported: true,
Jiyong Park0043f662017-04-18 21:27:32 +0900108 vendor_available: true,
Justin Yun40ad2942017-07-24 15:19:44 +0900109 vndk: {
110 enabled: true,
111 },
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700112 defaults: ["libprotobuf-cpp-lite-defaults"],
113
114 cflags: ["-DGOOGLE_PROTOBUF_NO_RTTI"],
115
116 target: {
117 windows: {
118 enabled: true,
119 },
120 },
121}
122
Mark Urbanus50da2432017-01-27 13:01:11 -0800123// C++ lite library for the platform and host.
124// =======================================================
125cc_library_static {
126 name: "libprotobuf-cpp-lite_static",
127 host_supported: true,
128 defaults: ["libprotobuf-cpp-lite-defaults"],
129 cflags: ["-DGOOGLE_PROTOBUF_NO_RTTI"],
130}
131
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700132// C++ lite library + rtti (libc++ flavored for the platform and host)
133// =======================================================
134cc_library_shared {
135 name: "libprotobuf-cpp-lite-rtti",
136 host_supported: true,
Jiyong Park0043f662017-04-18 21:27:32 +0900137 vendor_available: true,
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700138 defaults: ["libprotobuf-cpp-lite-defaults"],
139
140 rtti: true,
141}
142
143// C++ full library
144// =======================================================
Dan Willemsen00ceebe2018-02-07 14:24:31 -0800145cc_defaults {
146 name: "libprotobuf-cpp-full-defaults",
147 defaults: ["libprotobuf-cpp-lite-defaults"],
148
149 srcs: [
150 "src/google/protobuf/any.pb.cc",
151 "src/google/protobuf/api.pb.cc",
152 "src/google/protobuf/stubs/mathlimits.cc",
153 "src/google/protobuf/any.cc",
154 "src/google/protobuf/descriptor.cc",
155 "src/google/protobuf/descriptor_database.cc",
156 "src/google/protobuf/descriptor.pb.cc",
157 "src/google/protobuf/duration.pb.cc",
158 "src/google/protobuf/dynamic_message.cc",
159 "src/google/protobuf/empty.pb.cc",
160 "src/google/protobuf/extension_set_heavy.cc",
161 "src/google/protobuf/field_mask.pb.cc",
162 "src/google/protobuf/generated_message_reflection.cc",
163 "src/google/protobuf/map_field.cc",
164 "src/google/protobuf/message.cc",
165 "src/google/protobuf/reflection_ops.cc",
166 "src/google/protobuf/service.cc",
167 "src/google/protobuf/source_context.pb.cc",
168 "src/google/protobuf/struct.pb.cc",
169 "src/google/protobuf/stubs/substitute.cc",
170 "src/google/protobuf/text_format.cc",
171 "src/google/protobuf/timestamp.pb.cc",
172 "src/google/protobuf/type.pb.cc",
173 "src/google/protobuf/unknown_field_set.cc",
174 "src/google/protobuf/wire_format.cc",
175 "src/google/protobuf/wrappers.pb.cc",
176 "src/google/protobuf/io/gzip_stream.cc",
177 "src/google/protobuf/io/printer.cc",
178 "src/google/protobuf/io/strtod.cc",
179 "src/google/protobuf/io/tokenizer.cc",
180 "src/google/protobuf/io/zero_copy_stream_impl.cc",
181 "src/google/protobuf/compiler/importer.cc",
182 "src/google/protobuf/compiler/parser.cc",
183 "src/google/protobuf/util/field_comparator.cc",
184 "src/google/protobuf/util/field_mask_util.cc",
185 "src/google/protobuf/util/internal/datapiece.cc",
186 "src/google/protobuf/util/internal/default_value_objectwriter.cc",
187 "src/google/protobuf/util/internal/error_listener.cc",
188 "src/google/protobuf/util/internal/field_mask_utility.cc",
189 "src/google/protobuf/util/internal/json_escaping.cc",
190 "src/google/protobuf/util/internal/json_objectwriter.cc",
191 "src/google/protobuf/util/internal/json_stream_parser.cc",
192 "src/google/protobuf/util/internal/object_writer.cc",
193 "src/google/protobuf/util/internal/protostream_objectsource.cc",
194 "src/google/protobuf/util/internal/protostream_objectwriter.cc",
195 "src/google/protobuf/util/internal/proto_writer.cc",
196 "src/google/protobuf/util/internal/type_info.cc",
197 "src/google/protobuf/util/internal/type_info_test_helper.cc",
198 "src/google/protobuf/util/internal/utility.cc",
199 "src/google/protobuf/util/json_util.cc",
200 "src/google/protobuf/util/message_differencer.cc",
201 "src/google/protobuf/util/time_util.cc",
202 "src/google/protobuf/util/type_resolver_util.cc",
203 ],
204
205 cflags: ["-DHAVE_ZLIB=1"],
206 shared_libs: ["libz"],
207}
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700208
209// C++ full library for the NDK.
210// =======================================================
211cc_library_static {
212 name: "libprotobuf-cpp-full-ndk",
Dan Willemsen00ceebe2018-02-07 14:24:31 -0800213 defaults: ["libprotobuf-cpp-full-defaults"],
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700214
215 cflags: ["-DGOOGLE_PROTOBUF_NO_RTTI"],
216
217 sdk_version: "9",
218
Dan Albert8e024c62018-01-03 22:01:25 -0800219 stl: "c++_static",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700220}
221
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700222// C++ full library for the platform and host
223// =======================================================
224cc_library_shared {
225 name: "libprotobuf-cpp-full",
Dan Willemsen00ceebe2018-02-07 14:24:31 -0800226 defaults: ["libprotobuf-cpp-full-defaults"],
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700227 host_supported: true,
Jiyong Park0043f662017-04-18 21:27:32 +0900228 vendor_available: true,
Justin Yun40ad2942017-07-24 15:19:44 +0900229 vndk: {
230 enabled: true,
231 },
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700232
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700233 cflags: ["-DGOOGLE_PROTOBUF_NO_RTTI"],
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700234 target: {
235 android: {
Dan Willemsene93d0732017-09-27 16:14:55 -0700236 shared_libs: ["liblog"],
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700237 },
238 },
239}
240
241// C++ full library + rtti for the platform and host
242// =======================================================
243cc_library_shared {
244 name: "libprotobuf-cpp-full-rtti",
Dan Willemsen00ceebe2018-02-07 14:24:31 -0800245 defaults: ["libprotobuf-cpp-full-defaults"],
Jiyong Park0043f662017-04-18 21:27:32 +0900246 vendor_available: true,
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700247
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700248 rtti: true,
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700249 target: {
250 android: {
Dan Willemsene93d0732017-09-27 16:14:55 -0700251 shared_libs: ["liblog"],
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700252 },
253 },
254}
255
Joe Onorato960c2b52016-10-04 12:29:08 -0700256// Compiler library for the host
257// =======================================================
258cc_library_host_shared {
259 name: "libprotoc",
Dan Willemsen00ceebe2018-02-07 14:24:31 -0800260 defaults: ["libprotobuf-cpp-full-defaults"],
Joe Onorato960c2b52016-10-04 12:29:08 -0700261
Dan Willemsen00ceebe2018-02-07 14:24:31 -0800262 srcs: [
Andrew Sculla00a57e2017-08-14 10:35:44 +0100263 "src/google/protobuf/compiler/code_generator.cc",
264 "src/google/protobuf/compiler/plugin.cc",
Joe Onorato960c2b52016-10-04 12:29:08 -0700265 "src/google/protobuf/compiler/plugin.pb.cc",
266 ],
267
268 local_include_dirs: [
269 "config",
270 ],
Dan Willemsen00ceebe2018-02-07 14:24:31 -0800271 export_include_dirs: [
272 "src",
273 "config",
274 ],
Joe Onorato960c2b52016-10-04 12:29:08 -0700275
276 rtti: true,
Joe Onorato960c2b52016-10-04 12:29:08 -0700277}
278
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700279// Android Protocol buffer compiler, aprotoc (host executable)
280// used by the build systems as $(PROTOC) defined in
281// build/core/config.mk
282// =======================================================
283cc_binary_host {
284 name: "aprotoc",
Chih-Hung Hsieh855e1422017-09-29 10:35:29 -0700285 defaults: ["protobuf-cflags-defaults"],
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700286
287 target: {
288 windows: {
289 enabled: true,
290 },
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700291 },
292
293 // Statically link libc++ because we copy aprotoc to unbundled projects where
294 // libc++.so may not be available.
295 stl: "libc++_static",
296
297 srcs: [
Tamas Berghammerbda916c2016-09-26 17:28:26 +0100298 "src/google/protobuf/any.cc",
299 "src/google/protobuf/arena.cc",
300 "src/google/protobuf/arenastring.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700301 "src/google/protobuf/descriptor.cc",
302 "src/google/protobuf/descriptor.pb.cc",
303 "src/google/protobuf/descriptor_database.cc",
304 "src/google/protobuf/dynamic_message.cc",
305 "src/google/protobuf/extension_set.cc",
306 "src/google/protobuf/extension_set_heavy.cc",
307 "src/google/protobuf/generated_message_reflection.cc",
308 "src/google/protobuf/generated_message_util.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +0100309 "src/google/protobuf/map_field.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700310 "src/google/protobuf/message.cc",
311 "src/google/protobuf/message_lite.cc",
312 "src/google/protobuf/reflection_ops.cc",
313 "src/google/protobuf/repeated_field.cc",
314 "src/google/protobuf/service.cc",
315 "src/google/protobuf/text_format.cc",
316 "src/google/protobuf/unknown_field_set.cc",
317 "src/google/protobuf/wire_format.cc",
318 "src/google/protobuf/wire_format_lite.cc",
319 "src/google/protobuf/compiler/code_generator.cc",
320 "src/google/protobuf/compiler/command_line_interface.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700321 "src/google/protobuf/compiler/cpp/cpp_enum.cc",
322 "src/google/protobuf/compiler/cpp/cpp_enum_field.cc",
323 "src/google/protobuf/compiler/cpp/cpp_extension.cc",
324 "src/google/protobuf/compiler/cpp/cpp_field.cc",
325 "src/google/protobuf/compiler/cpp/cpp_file.cc",
326 "src/google/protobuf/compiler/cpp/cpp_generator.cc",
327 "src/google/protobuf/compiler/cpp/cpp_helpers.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +0100328 "src/google/protobuf/compiler/cpp/cpp_map_field.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700329 "src/google/protobuf/compiler/cpp/cpp_message.cc",
330 "src/google/protobuf/compiler/cpp/cpp_message_field.cc",
331 "src/google/protobuf/compiler/cpp/cpp_primitive_field.cc",
332 "src/google/protobuf/compiler/cpp/cpp_service.cc",
333 "src/google/protobuf/compiler/cpp/cpp_string_field.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +0100334 "src/google/protobuf/compiler/csharp/csharp_doc_comment.cc",
335 "src/google/protobuf/compiler/csharp/csharp_enum.cc",
336 "src/google/protobuf/compiler/csharp/csharp_enum_field.cc",
337 "src/google/protobuf/compiler/csharp/csharp_field_base.cc",
338 "src/google/protobuf/compiler/csharp/csharp_generator.cc",
339 "src/google/protobuf/compiler/csharp/csharp_helpers.cc",
340 "src/google/protobuf/compiler/csharp/csharp_map_field.cc",
341 "src/google/protobuf/compiler/csharp/csharp_message.cc",
342 "src/google/protobuf/compiler/csharp/csharp_message_field.cc",
343 "src/google/protobuf/compiler/csharp/csharp_primitive_field.cc",
344 "src/google/protobuf/compiler/csharp/csharp_reflection_class.cc",
345 "src/google/protobuf/compiler/csharp/csharp_repeated_enum_field.cc",
346 "src/google/protobuf/compiler/csharp/csharp_repeated_message_field.cc",
347 "src/google/protobuf/compiler/csharp/csharp_repeated_primitive_field.cc",
348 "src/google/protobuf/compiler/csharp/csharp_source_generator_base.cc",
349 "src/google/protobuf/compiler/csharp/csharp_wrapper_field.cc",
350 "src/google/protobuf/compiler/importer.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700351 "src/google/protobuf/compiler/java/java_context.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +0100352 "src/google/protobuf/compiler/java/java_doc_comment.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700353 "src/google/protobuf/compiler/java/java_enum.cc",
354 "src/google/protobuf/compiler/java/java_enum_field.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +0100355 "src/google/protobuf/compiler/java/java_enum_field_lite.cc",
356 "src/google/protobuf/compiler/java/java_enum_lite.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700357 "src/google/protobuf/compiler/java/java_extension.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +0100358 "src/google/protobuf/compiler/java/java_extension_lite.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700359 "src/google/protobuf/compiler/java/java_field.cc",
360 "src/google/protobuf/compiler/java/java_file.cc",
361 "src/google/protobuf/compiler/java/java_generator.cc",
362 "src/google/protobuf/compiler/java/java_generator_factory.cc",
363 "src/google/protobuf/compiler/java/java_helpers.cc",
364 "src/google/protobuf/compiler/java/java_lazy_message_field.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +0100365 "src/google/protobuf/compiler/java/java_lazy_message_field_lite.cc",
366 "src/google/protobuf/compiler/java/java_map_field.cc",
367 "src/google/protobuf/compiler/java/java_map_field_lite.cc",
368 "src/google/protobuf/compiler/java/java_message_builder.cc",
369 "src/google/protobuf/compiler/java/java_message_builder_lite.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700370 "src/google/protobuf/compiler/java/java_message.cc",
371 "src/google/protobuf/compiler/java/java_message_field.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +0100372 "src/google/protobuf/compiler/java/java_message_field_lite.cc",
373 "src/google/protobuf/compiler/java/java_message_lite.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700374 "src/google/protobuf/compiler/java/java_name_resolver.cc",
375 "src/google/protobuf/compiler/java/java_primitive_field.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +0100376 "src/google/protobuf/compiler/java/java_primitive_field_lite.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700377 "src/google/protobuf/compiler/java/java_service.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +0100378 "src/google/protobuf/compiler/java/java_shared_code_generator.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700379 "src/google/protobuf/compiler/java/java_string_field.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +0100380 "src/google/protobuf/compiler/java/java_string_field_lite.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700381 "src/google/protobuf/compiler/javamicro/javamicro_enum.cc",
382 "src/google/protobuf/compiler/javamicro/javamicro_enum_field.cc",
383 "src/google/protobuf/compiler/javamicro/javamicro_field.cc",
384 "src/google/protobuf/compiler/javamicro/javamicro_file.cc",
385 "src/google/protobuf/compiler/javamicro/javamicro_generator.cc",
386 "src/google/protobuf/compiler/javamicro/javamicro_helpers.cc",
387 "src/google/protobuf/compiler/javamicro/javamicro_message.cc",
388 "src/google/protobuf/compiler/javamicro/javamicro_message_field.cc",
389 "src/google/protobuf/compiler/javamicro/javamicro_primitive_field.cc",
390 "src/google/protobuf/compiler/javanano/javanano_enum.cc",
391 "src/google/protobuf/compiler/javanano/javanano_enum_field.cc",
392 "src/google/protobuf/compiler/javanano/javanano_extension.cc",
393 "src/google/protobuf/compiler/javanano/javanano_field.cc",
394 "src/google/protobuf/compiler/javanano/javanano_file.cc",
395 "src/google/protobuf/compiler/javanano/javanano_generator.cc",
396 "src/google/protobuf/compiler/javanano/javanano_helpers.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +0100397 "src/google/protobuf/compiler/javanano/javanano_map_field.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700398 "src/google/protobuf/compiler/javanano/javanano_message.cc",
399 "src/google/protobuf/compiler/javanano/javanano_message_field.cc",
400 "src/google/protobuf/compiler/javanano/javanano_primitive_field.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +0100401 "src/google/protobuf/compiler/js/js_generator.cc",
402 "src/google/protobuf/compiler/main.cc",
403 "src/google/protobuf/compiler/objectivec/objectivec_enum.cc",
404 "src/google/protobuf/compiler/objectivec/objectivec_enum_field.cc",
405 "src/google/protobuf/compiler/objectivec/objectivec_extension.cc",
406 "src/google/protobuf/compiler/objectivec/objectivec_field.cc",
407 "src/google/protobuf/compiler/objectivec/objectivec_file.cc",
408 "src/google/protobuf/compiler/objectivec/objectivec_generator.cc",
409 "src/google/protobuf/compiler/objectivec/objectivec_helpers.cc",
410 "src/google/protobuf/compiler/objectivec/objectivec_map_field.cc",
411 "src/google/protobuf/compiler/objectivec/objectivec_message.cc",
412 "src/google/protobuf/compiler/objectivec/objectivec_message_field.cc",
413 "src/google/protobuf/compiler/objectivec/objectivec_oneof.cc",
414 "src/google/protobuf/compiler/objectivec/objectivec_primitive_field.cc",
415 "src/google/protobuf/compiler/parser.cc",
416 "src/google/protobuf/compiler/plugin.cc",
417 "src/google/protobuf/compiler/plugin.pb.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700418 "src/google/protobuf/compiler/python/python_generator.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +0100419 "src/google/protobuf/compiler/ruby/ruby_generator.cc",
420 "src/google/protobuf/compiler/subprocess.cc",
421 "src/google/protobuf/compiler/zip_writer.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700422 "src/google/protobuf/io/coded_stream.cc",
423 "src/google/protobuf/io/gzip_stream.cc",
424 "src/google/protobuf/io/printer.cc",
425 "src/google/protobuf/io/strtod.cc",
426 "src/google/protobuf/io/tokenizer.cc",
427 "src/google/protobuf/io/zero_copy_stream.cc",
428 "src/google/protobuf/io/zero_copy_stream_impl.cc",
429 "src/google/protobuf/io/zero_copy_stream_impl_lite.cc",
430 "src/google/protobuf/stubs/atomicops_internals_x86_gcc.cc",
431 "src/google/protobuf/stubs/atomicops_internals_x86_msvc.cc",
432 "src/google/protobuf/stubs/common.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +0100433 "src/google/protobuf/stubs/int128.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700434 "src/google/protobuf/stubs/once.cc",
Tamas Berghammerbda916c2016-09-26 17:28:26 +0100435 "src/google/protobuf/stubs/status.cc",
436 "src/google/protobuf/stubs/stringpiece.cc",
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700437 "src/google/protobuf/stubs/structurally_valid.cc",
438 "src/google/protobuf/stubs/strutil.cc",
439 "src/google/protobuf/stubs/substitute.cc",
440 "src/google/protobuf/stubs/stringprintf.cc",
441 ],
442
443 local_include_dirs: [
444 "android",
445 "src",
446 ],
447
448 static_libs: ["libz"],
449
Dan Willemsen00ceebe2018-02-07 14:24:31 -0800450 cflags: IGNORED_WARNINGS + [
451 "-DHAVE_ZLIB=1",
452 ],
Dan Willemsen1ff41e02016-07-31 17:53:37 -0700453
454}
Colin Cross8ef59df2017-10-01 17:51:22 -0700455
456// Java nano library
457// =======================================================
458java_library_static {
459 name: "libprotobuf-java-nano",
460 host_supported: true,
461
462 sdk_version: "9",
463
464 srcs: [
465 "javanano/src/main/java/com/google/protobuf/nano/**/*.java",
466 ],
467
468 target: {
469 android: {
470 srcs: ["javanano/src/device/main/java/com/google/protobuf/nano/**/*.java"],
471 },
472 },
473
474 java_version: "1.7",
475}
476
477// Java nano library (compatibility for old host-side users)
478// =======================================================
479java_library_host {
480 name: "host-libprotobuf-java-nano",
481 static_libs: ["libprotobuf-java-nano"],
482
483 java_version: "1.7",
484}
485
486// Java micro library
487// =======================================================
488java_library_static {
489 name: "libprotobuf-java-micro",
490 host_supported: true,
491
492 sdk_version: "8",
493
494 srcs: ["javamicro/src/main/java/com/google/protobuf/micro/**/*.java"],
495}
496
497// Java micro library (compatibility for old host-side users)
498// =======================================================
499java_library_host {
500 name: "host-libprotobuf-java-micro",
501 static_libs: ["libprotobuf-java-micro"],
502}
503
504// Java lite library
505// =======================================================
506java_library_static {
507 name: "libprotobuf-java-lite",
508 host_supported: true,
Jiyong Parkdc089242018-03-04 09:40:04 +0900509 sdk_version: "core_current",
Colin Cross8ef59df2017-10-01 17:51:22 -0700510
511 srcs: [
512 "java/core/src/main/java/com/google/protobuf/AbstractMessageLite.java",
513 "java/core/src/main/java/com/google/protobuf/AbstractParser.java",
514 "java/core/src/main/java/com/google/protobuf/AbstractProtobufList.java",
515 "java/core/src/main/java/com/google/protobuf/ByteOutput.java",
516 "java/core/src/main/java/com/google/protobuf/ByteString.java",
517 "java/core/src/main/java/com/google/protobuf/BooleanArrayList.java",
518 "java/core/src/main/java/com/google/protobuf/CodedInputStream.java",
519 "java/core/src/main/java/com/google/protobuf/CodedOutputStream.java",
520 "java/core/src/main/java/com/google/protobuf/DoubleArrayList.java",
521 "java/core/src/main/java/com/google/protobuf/ExperimentalApi.java",
522 "java/core/src/main/java/com/google/protobuf/ExtensionLite.java",
523 "java/core/src/main/java/com/google/protobuf/ExtensionRegistryLite.java",
524 "java/core/src/main/java/com/google/protobuf/FieldSet.java",
525 "java/core/src/main/java/com/google/protobuf/FloatArrayList.java",
526 "java/core/src/main/java/com/google/protobuf/GeneratedMessageLite.java",
527 "java/core/src/main/java/com/google/protobuf/IntArrayList.java",
528 "java/core/src/main/java/com/google/protobuf/Internal.java",
529 "java/core/src/main/java/com/google/protobuf/InvalidProtocolBufferException.java",
530 "java/core/src/main/java/com/google/protobuf/LazyField.java",
531 "java/core/src/main/java/com/google/protobuf/LazyFieldLite.java",
532 "java/core/src/main/java/com/google/protobuf/LazyStringArrayList.java",
533 "java/core/src/main/java/com/google/protobuf/LazyStringList.java",
534 "java/core/src/main/java/com/google/protobuf/LongArrayList.java",
535 "java/core/src/main/java/com/google/protobuf/MapFieldLite.java",
536 "java/core/src/main/java/com/google/protobuf/MessageLite.java",
537 "java/core/src/main/java/com/google/protobuf/MessageLiteToString.java",
538 "java/core/src/main/java/com/google/protobuf/MessageLiteOrBuilder.java",
539 "java/core/src/main/java/com/google/protobuf/MutabilityOracle.java",
540 "java/core/src/main/java/com/google/protobuf/Parser.java",
541 "java/core/src/main/java/com/google/protobuf/ProtobufArrayList.java",
542 "java/core/src/main/java/com/google/protobuf/ProtocolStringList.java",
543 "java/core/src/main/java/com/google/protobuf/RopeByteString.java",
544 "java/core/src/main/java/com/google/protobuf/SmallSortedMap.java",
545 "java/core/src/main/java/com/google/protobuf/TextFormatEscaper.java",
546 "java/core/src/main/java/com/google/protobuf/UninitializedMessageException.java",
547 "java/core/src/main/java/com/google/protobuf/UnknownFieldSetLite.java",
548 "java/core/src/main/java/com/google/protobuf/UnmodifiableLazyStringList.java",
549 "java/core/src/main/java/com/google/protobuf/Utf8.java",
550 "java/core/src/main/java/com/google/protobuf/WireFormat.java",
551 ],
552
Jiyong Parkdc089242018-03-04 09:40:04 +0900553 libs: ["libcore_private.stubs"],
554
Colin Cross8ef59df2017-10-01 17:51:22 -0700555 java_version: "1.7",
556}
557
558// Java lite library (compatibility for old host-side users)
559// =======================================================
560java_library_host {
561 name: "host-libprotobuf-java-lite",
562 static_libs: ["libprotobuf-java-lite"],
563}
564
565// Java full library (for host-side users)
566// =======================================================
567java_library_host {
568 name: "libprotobuf-java-full",
569
570 srcs: [
571 // This contains more source files than needed for the full version, but the
572 // additional files should not create any conflict.
573 "java/core/src/main/java/**/*.java",
574 "src/google/protobuf/descriptor.proto",
575 ],
576
577 java_version: "1.7",
578}
579
580// Java full library (compatibility for old host-side users)
581// =======================================================
582java_library_host {
583 name: "host-libprotobuf-java-full",
584 static_libs: ["libprotobuf-java-full"],
585}
Jiyong Parkdc089242018-03-04 09:40:04 +0900586
587// Stubs library for using hidden APIs in core-oj and core-libart
588// =======================================================
589java_library {
590 name: "libcore_private.stubs",
591 host_supported: true,
592 srcs: ["java/core/src/stubs/**/*.java"],
593 sdk_version: "core_current",
594}