Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 1 | // 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 | |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 17 | cc_defaults { |
Chih-Hung Hsieh | 855e142 | 2017-09-29 10:35:29 -0700 | [diff] [blame] | 18 | name: "protobuf-cflags-defaults", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 19 | clang_cflags: [ |
Aurimas Liutikas | aaa4ecd | 2019-02-01 13:58:00 -0800 | [diff] [blame] | 20 | "-Wno-unused-const-variable", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 21 | "-Wno-error=user-defined-warnings", |
| 22 | ], |
Chih-Hung Hsieh | 855e142 | 2017-09-29 10:35:29 -0700 | [diff] [blame] | 23 | cflags: [ |
| 24 | "-Wall", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 25 | "-Werror", |
Chih-Hung Hsieh | 855e142 | 2017-09-29 10:35:29 -0700 | [diff] [blame] | 26 | "-Wno-unused-function", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 27 | "-Wno-sign-compare", |
| 28 | "-Wno-unused-parameter", |
| 29 | "-Wno-sign-promo", |
Chih-Hung Hsieh | 855e142 | 2017-09-29 10:35:29 -0700 | [diff] [blame] | 30 | ], |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 31 | |
Chih-Hung Hsieh | 855e142 | 2017-09-29 10:35:29 -0700 | [diff] [blame] | 32 | target: { |
Chih-Hung Hsieh | 2380005 | 2017-11-20 16:27:24 -0800 | [diff] [blame] | 33 | windows: { |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 34 | cflags: ["-Wno-macro-redefined"], |
Chih-Hung Hsieh | 35ee99e | 2017-11-28 16:00:56 -0800 | [diff] [blame] | 35 | }, |
Chih-Hung Hsieh | 855e142 | 2017-09-29 10:35:29 -0700 | [diff] [blame] | 36 | }, |
| 37 | } |
| 38 | |
| 39 | cc_defaults { |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 40 | name: "libprotobuf-cpp-lite-defaults", |
Chih-Hung Hsieh | 855e142 | 2017-09-29 10:35:29 -0700 | [diff] [blame] | 41 | defaults: ["protobuf-cflags-defaults"], |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 42 | srcs: [ |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 43 | "src/google/protobuf/any_lite.cc", |
| 44 | "src/google/protobuf/arena.cc", |
| 45 | "src/google/protobuf/extension_set.cc", |
| 46 | "src/google/protobuf/generated_enum_util.cc", |
| 47 | "src/google/protobuf/generated_message_table_driven_lite.cc", |
| 48 | "src/google/protobuf/generated_message_util.cc", |
| 49 | "src/google/protobuf/implicit_weak_message.cc", |
| 50 | "src/google/protobuf/io/coded_stream.cc", |
| 51 | "src/google/protobuf/io/io_win32.cc", |
| 52 | "src/google/protobuf/io/strtod.cc", |
| 53 | "src/google/protobuf/io/zero_copy_stream.cc", |
| 54 | "src/google/protobuf/io/zero_copy_stream_impl.cc", |
| 55 | "src/google/protobuf/io/zero_copy_stream_impl_lite.cc", |
| 56 | "src/google/protobuf/message_lite.cc", |
| 57 | "src/google/protobuf/parse_context.cc", |
| 58 | "src/google/protobuf/repeated_field.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 59 | "src/google/protobuf/stubs/bytestream.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 60 | "src/google/protobuf/stubs/common.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 61 | "src/google/protobuf/stubs/int128.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 62 | "src/google/protobuf/stubs/status.cc", |
| 63 | "src/google/protobuf/stubs/statusor.cc", |
| 64 | "src/google/protobuf/stubs/stringpiece.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 65 | "src/google/protobuf/stubs/stringprintf.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 66 | "src/google/protobuf/stubs/structurally_valid.cc", |
| 67 | "src/google/protobuf/stubs/strutil.cc", |
| 68 | "src/google/protobuf/stubs/time.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 69 | "src/google/protobuf/wire_format_lite.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 70 | ], |
| 71 | |
| 72 | local_include_dirs: [ |
| 73 | "android", |
| 74 | "src", |
| 75 | ], |
| 76 | export_include_dirs: ["src"], |
| 77 | |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 78 | target: { |
| 79 | android: { |
| 80 | shared_libs: ["liblog"], |
| 81 | }, |
Colin Cross | f609a27 | 2019-08-16 14:22:26 -0700 | [diff] [blame] | 82 | vendor: { |
| 83 | // This suffix must be updated when a new version is imported. |
| 84 | suffix: "-3.9.1", |
| 85 | }, |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 86 | }, |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 87 | } |
| 88 | |
| 89 | // C++ lite library for the NDK. |
| 90 | // ======================================================= |
| 91 | cc_library_static { |
| 92 | name: "libprotobuf-cpp-lite-ndk", |
| 93 | defaults: ["libprotobuf-cpp-lite-defaults"], |
| 94 | |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 95 | sdk_version: "9", |
| 96 | |
Dan Albert | 8e024c6 | 2018-01-03 22:01:25 -0800 | [diff] [blame] | 97 | stl: "c++_static", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 98 | } |
| 99 | |
| 100 | // C++ lite library for the platform and host. |
| 101 | // ======================================================= |
| 102 | cc_library { |
| 103 | name: "libprotobuf-cpp-lite", |
| 104 | host_supported: true, |
Tom Cherry | 37a0f65 | 2018-07-24 13:29:23 -0700 | [diff] [blame] | 105 | recovery_available: true, |
Jiyong Park | 0043f66 | 2017-04-18 21:27:32 +0900 | [diff] [blame] | 106 | vendor_available: true, |
Jooyung Han | 75b8e33 | 2019-01-18 15:44:17 +0900 | [diff] [blame] | 107 | double_loadable: true, |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 108 | defaults: ["libprotobuf-cpp-lite-defaults"], |
| 109 | |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 110 | target: { |
| 111 | windows: { |
| 112 | enabled: true, |
| 113 | }, |
| 114 | }, |
Joshua Duong | ede2652 | 2020-02-10 16:08:01 -0800 | [diff] [blame] | 115 | apex_available: [ |
| 116 | "//apex_available:platform", |
Jiyong Park | d1acb17 | 2020-03-07 17:08:16 +0900 | [diff] [blame] | 117 | "//apex_available:anyapex", |
Joshua Duong | ede2652 | 2020-02-10 16:08:01 -0800 | [diff] [blame] | 118 | ], |
Jooyung Han | 4954d06 | 2020-04-16 18:48:30 +0900 | [diff] [blame] | 119 | min_sdk_version: "29", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 120 | } |
| 121 | |
Mark Urbanus | 50da243 | 2017-01-27 13:01:11 -0800 | [diff] [blame] | 122 | // C++ lite library for the platform and host. |
| 123 | // ======================================================= |
| 124 | cc_library_static { |
| 125 | name: "libprotobuf-cpp-lite_static", |
| 126 | host_supported: true, |
| 127 | defaults: ["libprotobuf-cpp-lite-defaults"], |
Mark Urbanus | 50da243 | 2017-01-27 13:01:11 -0800 | [diff] [blame] | 128 | } |
| 129 | |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 130 | // C++ full library |
| 131 | // ======================================================= |
Dan Willemsen | 00ceebe | 2018-02-07 14:24:31 -0800 | [diff] [blame] | 132 | cc_defaults { |
| 133 | name: "libprotobuf-cpp-full-defaults", |
| 134 | defaults: ["libprotobuf-cpp-lite-defaults"], |
| 135 | |
| 136 | srcs: [ |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 137 | "src/google/protobuf/any.cc", |
Dan Willemsen | 00ceebe | 2018-02-07 14:24:31 -0800 | [diff] [blame] | 138 | "src/google/protobuf/any.pb.cc", |
| 139 | "src/google/protobuf/api.pb.cc", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 140 | "src/google/protobuf/compiler/importer.cc", |
| 141 | "src/google/protobuf/compiler/parser.cc", |
Dan Willemsen | 00ceebe | 2018-02-07 14:24:31 -0800 | [diff] [blame] | 142 | "src/google/protobuf/descriptor.cc", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 143 | "src/google/protobuf/descriptor.pb.cc", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 144 | "src/google/protobuf/descriptor_database.cc", |
Dan Willemsen | 00ceebe | 2018-02-07 14:24:31 -0800 | [diff] [blame] | 145 | "src/google/protobuf/duration.pb.cc", |
| 146 | "src/google/protobuf/dynamic_message.cc", |
| 147 | "src/google/protobuf/empty.pb.cc", |
| 148 | "src/google/protobuf/extension_set_heavy.cc", |
| 149 | "src/google/protobuf/field_mask.pb.cc", |
| 150 | "src/google/protobuf/generated_message_reflection.cc", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 151 | "src/google/protobuf/generated_message_table_driven.cc", |
| 152 | "src/google/protobuf/io/gzip_stream.cc", |
| 153 | "src/google/protobuf/io/printer.cc", |
| 154 | "src/google/protobuf/io/tokenizer.cc", |
Dan Willemsen | 00ceebe | 2018-02-07 14:24:31 -0800 | [diff] [blame] | 155 | "src/google/protobuf/map_field.cc", |
| 156 | "src/google/protobuf/message.cc", |
| 157 | "src/google/protobuf/reflection_ops.cc", |
| 158 | "src/google/protobuf/service.cc", |
| 159 | "src/google/protobuf/source_context.pb.cc", |
| 160 | "src/google/protobuf/struct.pb.cc", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 161 | "src/google/protobuf/stubs/mathlimits.cc", |
Dan Willemsen | 00ceebe | 2018-02-07 14:24:31 -0800 | [diff] [blame] | 162 | "src/google/protobuf/stubs/substitute.cc", |
| 163 | "src/google/protobuf/text_format.cc", |
| 164 | "src/google/protobuf/timestamp.pb.cc", |
| 165 | "src/google/protobuf/type.pb.cc", |
| 166 | "src/google/protobuf/unknown_field_set.cc", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 167 | "src/google/protobuf/util/delimited_message_util.cc", |
Dan Willemsen | 00ceebe | 2018-02-07 14:24:31 -0800 | [diff] [blame] | 168 | "src/google/protobuf/util/field_comparator.cc", |
| 169 | "src/google/protobuf/util/field_mask_util.cc", |
| 170 | "src/google/protobuf/util/internal/datapiece.cc", |
| 171 | "src/google/protobuf/util/internal/default_value_objectwriter.cc", |
| 172 | "src/google/protobuf/util/internal/error_listener.cc", |
| 173 | "src/google/protobuf/util/internal/field_mask_utility.cc", |
| 174 | "src/google/protobuf/util/internal/json_escaping.cc", |
| 175 | "src/google/protobuf/util/internal/json_objectwriter.cc", |
| 176 | "src/google/protobuf/util/internal/json_stream_parser.cc", |
| 177 | "src/google/protobuf/util/internal/object_writer.cc", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 178 | "src/google/protobuf/util/internal/proto_writer.cc", |
Dan Willemsen | 00ceebe | 2018-02-07 14:24:31 -0800 | [diff] [blame] | 179 | "src/google/protobuf/util/internal/protostream_objectsource.cc", |
| 180 | "src/google/protobuf/util/internal/protostream_objectwriter.cc", |
Dan Willemsen | 00ceebe | 2018-02-07 14:24:31 -0800 | [diff] [blame] | 181 | "src/google/protobuf/util/internal/type_info.cc", |
| 182 | "src/google/protobuf/util/internal/type_info_test_helper.cc", |
| 183 | "src/google/protobuf/util/internal/utility.cc", |
| 184 | "src/google/protobuf/util/json_util.cc", |
| 185 | "src/google/protobuf/util/message_differencer.cc", |
| 186 | "src/google/protobuf/util/time_util.cc", |
| 187 | "src/google/protobuf/util/type_resolver_util.cc", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 188 | "src/google/protobuf/wire_format.cc", |
| 189 | "src/google/protobuf/wrappers.pb.cc", |
Dan Willemsen | 00ceebe | 2018-02-07 14:24:31 -0800 | [diff] [blame] | 190 | ], |
| 191 | |
| 192 | cflags: ["-DHAVE_ZLIB=1"], |
| 193 | shared_libs: ["libz"], |
| 194 | } |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 195 | |
| 196 | // C++ full library for the NDK. |
| 197 | // ======================================================= |
| 198 | cc_library_static { |
| 199 | name: "libprotobuf-cpp-full-ndk", |
Dan Willemsen | 00ceebe | 2018-02-07 14:24:31 -0800 | [diff] [blame] | 200 | defaults: ["libprotobuf-cpp-full-defaults"], |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 201 | |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 202 | sdk_version: "9", |
| 203 | |
Dan Albert | 8e024c6 | 2018-01-03 22:01:25 -0800 | [diff] [blame] | 204 | stl: "c++_static", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 205 | } |
| 206 | |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 207 | // C++ full library for the platform and host |
| 208 | // ======================================================= |
Ryan Mitchell | 2b50ab9 | 2019-05-21 09:42:24 -0700 | [diff] [blame] | 209 | cc_library { |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 210 | name: "libprotobuf-cpp-full", |
Dan Willemsen | 00ceebe | 2018-02-07 14:24:31 -0800 | [diff] [blame] | 211 | defaults: ["libprotobuf-cpp-full-defaults"], |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 212 | host_supported: true, |
Jiyong Park | 0043f66 | 2017-04-18 21:27:32 +0900 | [diff] [blame] | 213 | vendor_available: true, |
Victor Khimenko | 1ff51e3 | 2020-07-03 00:35:23 +0200 | [diff] [blame] | 214 | // TODO(b/153609531): remove when no longer needed. |
| 215 | native_bridge_supported: true, |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 216 | target: { |
| 217 | android: { |
Ryan Mitchell | 2b50ab9 | 2019-05-21 09:42:24 -0700 | [diff] [blame] | 218 | static: { |
| 219 | enabled: false, |
| 220 | }, |
| 221 | }, |
| 222 | windows: { |
| 223 | enabled: true, |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 224 | }, |
| 225 | }, |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 226 | } |
| 227 | |
Vivek Arugula | 88ffc54 | 2019-11-26 11:05:46 +0530 | [diff] [blame] | 228 | // C++ full library for vendor |
| 229 | // ======================================================= |
| 230 | cc_library { |
| 231 | name: "libprotobuf-cpp-full-vendor", |
| 232 | defaults: ["libprotobuf-cpp-full-defaults"], |
| 233 | vendor: true, |
| 234 | target: { |
| 235 | android: { |
| 236 | static: { |
| 237 | enabled: false, |
| 238 | }, |
| 239 | }, |
| 240 | windows: { |
| 241 | enabled: true, |
| 242 | }, |
| 243 | }, |
| 244 | } |
| 245 | |
Joe Onorato | 960c2b5 | 2016-10-04 12:29:08 -0700 | [diff] [blame] | 246 | // Compiler library for the host |
| 247 | // ======================================================= |
Colin Cross | f00ae75 | 2019-08-12 14:53:03 -0700 | [diff] [blame] | 248 | cc_library { |
Joe Onorato | 960c2b5 | 2016-10-04 12:29:08 -0700 | [diff] [blame] | 249 | name: "libprotoc", |
Colin Cross | f00ae75 | 2019-08-12 14:53:03 -0700 | [diff] [blame] | 250 | host_supported: true, |
| 251 | device_supported: false, |
Dan Willemsen | 00ceebe | 2018-02-07 14:24:31 -0800 | [diff] [blame] | 252 | defaults: ["libprotobuf-cpp-full-defaults"], |
Joe Onorato | 960c2b5 | 2016-10-04 12:29:08 -0700 | [diff] [blame] | 253 | |
Dan Willemsen | 00ceebe | 2018-02-07 14:24:31 -0800 | [diff] [blame] | 254 | srcs: [ |
Andrew Scull | a00a57e | 2017-08-14 10:35:44 +0100 | [diff] [blame] | 255 | "src/google/protobuf/compiler/code_generator.cc", |
| 256 | "src/google/protobuf/compiler/plugin.cc", |
Joe Onorato | 960c2b5 | 2016-10-04 12:29:08 -0700 | [diff] [blame] | 257 | "src/google/protobuf/compiler/plugin.pb.cc", |
| 258 | ], |
| 259 | |
| 260 | local_include_dirs: [ |
| 261 | "config", |
| 262 | ], |
Dan Willemsen | 00ceebe | 2018-02-07 14:24:31 -0800 | [diff] [blame] | 263 | export_include_dirs: [ |
| 264 | "src", |
| 265 | "config", |
| 266 | ], |
Joe Onorato | 960c2b5 | 2016-10-04 12:29:08 -0700 | [diff] [blame] | 267 | |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 268 | target: { |
| 269 | windows: { |
| 270 | enabled: true, |
| 271 | // defined by the global cflags, but redefined by protobuf |
| 272 | cflags: ["-UWIN32_LEAN_AND_MEAN"], |
| 273 | }, |
| 274 | }, |
| 275 | |
Joe Onorato | 960c2b5 | 2016-10-04 12:29:08 -0700 | [diff] [blame] | 276 | rtti: true, |
Joe Onorato | 960c2b5 | 2016-10-04 12:29:08 -0700 | [diff] [blame] | 277 | } |
| 278 | |
Sasha Smundak | 2e0867a | 2019-11-13 21:48:09 -0800 | [diff] [blame] | 279 | cc_library_host_static { |
| 280 | name: "libprotoc-kythe", |
| 281 | defaults: ["protobuf-cflags-defaults"], |
| 282 | srcs: [ |
| 283 | "src/google/protobuf/compiler/code_generator.cc", |
| 284 | "src/google/protobuf/compiler/cpp/cpp_helpers.cc", |
| 285 | "src/google/protobuf/compiler/cpp/cpp_enum.cc", |
| 286 | "src/google/protobuf/compiler/cpp/cpp_enum_field.cc", |
| 287 | "src/google/protobuf/compiler/cpp/cpp_extension.cc", |
| 288 | "src/google/protobuf/compiler/cpp/cpp_field.cc", |
| 289 | "src/google/protobuf/compiler/cpp/cpp_file.cc", |
| 290 | "src/google/protobuf/compiler/cpp/cpp_generator.cc", |
| 291 | "src/google/protobuf/compiler/cpp/cpp_map_field.cc", |
| 292 | "src/google/protobuf/compiler/cpp/cpp_message.cc", |
| 293 | "src/google/protobuf/compiler/cpp/cpp_message_field.cc", |
| 294 | "src/google/protobuf/compiler/cpp/cpp_padding_optimizer.cc", |
| 295 | "src/google/protobuf/compiler/cpp/cpp_primitive_field.cc", |
| 296 | "src/google/protobuf/compiler/cpp/cpp_service.cc", |
| 297 | "src/google/protobuf/compiler/cpp/cpp_string_field.cc", |
| 298 | "src/google/protobuf/compiler/plugin.cc", |
| 299 | "src/google/protobuf/compiler/plugin.pb.cc", |
| 300 | ], |
| 301 | local_include_dirs: [ |
| 302 | "src", |
| 303 | ], |
| 304 | visibility: ["//external/kythe"], |
| 305 | } |
| 306 | |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 307 | // Android Protocol buffer compiler, aprotoc (host executable) |
| 308 | // used by the build systems as $(PROTOC) defined in |
| 309 | // build/core/config.mk |
| 310 | // ======================================================= |
| 311 | cc_binary_host { |
| 312 | name: "aprotoc", |
Chih-Hung Hsieh | 855e142 | 2017-09-29 10:35:29 -0700 | [diff] [blame] | 313 | defaults: ["protobuf-cflags-defaults"], |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 314 | |
| 315 | target: { |
| 316 | windows: { |
| 317 | enabled: true, |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 318 | // defined by the global cflags, but redefined by protobuf |
| 319 | cflags: ["-UWIN32_LEAN_AND_MEAN"], |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 320 | }, |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 321 | }, |
| 322 | |
| 323 | // Statically link libc++ because we copy aprotoc to unbundled projects where |
| 324 | // libc++.so may not be available. |
| 325 | stl: "libc++_static", |
| 326 | |
| 327 | srcs: [ |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 328 | "src/google/protobuf/compiler/main.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 329 | "src/google/protobuf/compiler/code_generator.cc", |
| 330 | "src/google/protobuf/compiler/command_line_interface.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 331 | "src/google/protobuf/compiler/cpp/cpp_enum.cc", |
| 332 | "src/google/protobuf/compiler/cpp/cpp_enum_field.cc", |
| 333 | "src/google/protobuf/compiler/cpp/cpp_extension.cc", |
| 334 | "src/google/protobuf/compiler/cpp/cpp_field.cc", |
| 335 | "src/google/protobuf/compiler/cpp/cpp_file.cc", |
| 336 | "src/google/protobuf/compiler/cpp/cpp_generator.cc", |
| 337 | "src/google/protobuf/compiler/cpp/cpp_helpers.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 338 | "src/google/protobuf/compiler/cpp/cpp_map_field.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 339 | "src/google/protobuf/compiler/cpp/cpp_message.cc", |
| 340 | "src/google/protobuf/compiler/cpp/cpp_message_field.cc", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 341 | "src/google/protobuf/compiler/cpp/cpp_padding_optimizer.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 342 | "src/google/protobuf/compiler/cpp/cpp_primitive_field.cc", |
| 343 | "src/google/protobuf/compiler/cpp/cpp_service.cc", |
| 344 | "src/google/protobuf/compiler/cpp/cpp_string_field.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 345 | "src/google/protobuf/compiler/csharp/csharp_doc_comment.cc", |
| 346 | "src/google/protobuf/compiler/csharp/csharp_enum.cc", |
| 347 | "src/google/protobuf/compiler/csharp/csharp_enum_field.cc", |
| 348 | "src/google/protobuf/compiler/csharp/csharp_field_base.cc", |
| 349 | "src/google/protobuf/compiler/csharp/csharp_generator.cc", |
| 350 | "src/google/protobuf/compiler/csharp/csharp_helpers.cc", |
| 351 | "src/google/protobuf/compiler/csharp/csharp_map_field.cc", |
| 352 | "src/google/protobuf/compiler/csharp/csharp_message.cc", |
| 353 | "src/google/protobuf/compiler/csharp/csharp_message_field.cc", |
| 354 | "src/google/protobuf/compiler/csharp/csharp_primitive_field.cc", |
| 355 | "src/google/protobuf/compiler/csharp/csharp_reflection_class.cc", |
| 356 | "src/google/protobuf/compiler/csharp/csharp_repeated_enum_field.cc", |
| 357 | "src/google/protobuf/compiler/csharp/csharp_repeated_message_field.cc", |
| 358 | "src/google/protobuf/compiler/csharp/csharp_repeated_primitive_field.cc", |
| 359 | "src/google/protobuf/compiler/csharp/csharp_source_generator_base.cc", |
| 360 | "src/google/protobuf/compiler/csharp/csharp_wrapper_field.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 361 | "src/google/protobuf/compiler/java/java_context.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 362 | "src/google/protobuf/compiler/java/java_doc_comment.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 363 | "src/google/protobuf/compiler/java/java_enum.cc", |
| 364 | "src/google/protobuf/compiler/java/java_enum_field.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 365 | "src/google/protobuf/compiler/java/java_enum_field_lite.cc", |
| 366 | "src/google/protobuf/compiler/java/java_enum_lite.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 367 | "src/google/protobuf/compiler/java/java_extension.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 368 | "src/google/protobuf/compiler/java/java_extension_lite.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 369 | "src/google/protobuf/compiler/java/java_field.cc", |
| 370 | "src/google/protobuf/compiler/java/java_file.cc", |
| 371 | "src/google/protobuf/compiler/java/java_generator.cc", |
| 372 | "src/google/protobuf/compiler/java/java_generator_factory.cc", |
| 373 | "src/google/protobuf/compiler/java/java_helpers.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 374 | "src/google/protobuf/compiler/java/java_map_field.cc", |
| 375 | "src/google/protobuf/compiler/java/java_map_field_lite.cc", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 376 | "src/google/protobuf/compiler/java/java_message.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 377 | "src/google/protobuf/compiler/java/java_message_builder.cc", |
| 378 | "src/google/protobuf/compiler/java/java_message_builder_lite.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 379 | "src/google/protobuf/compiler/java/java_message_field.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 380 | "src/google/protobuf/compiler/java/java_message_field_lite.cc", |
| 381 | "src/google/protobuf/compiler/java/java_message_lite.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 382 | "src/google/protobuf/compiler/java/java_name_resolver.cc", |
| 383 | "src/google/protobuf/compiler/java/java_primitive_field.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 384 | "src/google/protobuf/compiler/java/java_primitive_field_lite.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 385 | "src/google/protobuf/compiler/java/java_service.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 386 | "src/google/protobuf/compiler/java/java_shared_code_generator.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 387 | "src/google/protobuf/compiler/java/java_string_field.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 388 | "src/google/protobuf/compiler/java/java_string_field_lite.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 389 | "src/google/protobuf/compiler/js/js_generator.cc", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 390 | "src/google/protobuf/compiler/js/well_known_types_embed.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 391 | "src/google/protobuf/compiler/objectivec/objectivec_enum.cc", |
| 392 | "src/google/protobuf/compiler/objectivec/objectivec_enum_field.cc", |
| 393 | "src/google/protobuf/compiler/objectivec/objectivec_extension.cc", |
| 394 | "src/google/protobuf/compiler/objectivec/objectivec_field.cc", |
| 395 | "src/google/protobuf/compiler/objectivec/objectivec_file.cc", |
| 396 | "src/google/protobuf/compiler/objectivec/objectivec_generator.cc", |
| 397 | "src/google/protobuf/compiler/objectivec/objectivec_helpers.cc", |
| 398 | "src/google/protobuf/compiler/objectivec/objectivec_map_field.cc", |
| 399 | "src/google/protobuf/compiler/objectivec/objectivec_message.cc", |
| 400 | "src/google/protobuf/compiler/objectivec/objectivec_message_field.cc", |
| 401 | "src/google/protobuf/compiler/objectivec/objectivec_oneof.cc", |
| 402 | "src/google/protobuf/compiler/objectivec/objectivec_primitive_field.cc", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 403 | "src/google/protobuf/compiler/php/php_generator.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 404 | "src/google/protobuf/compiler/plugin.cc", |
| 405 | "src/google/protobuf/compiler/plugin.pb.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 406 | "src/google/protobuf/compiler/python/python_generator.cc", |
Tamas Berghammer | bda916c | 2016-09-26 17:28:26 +0100 | [diff] [blame] | 407 | "src/google/protobuf/compiler/ruby/ruby_generator.cc", |
| 408 | "src/google/protobuf/compiler/subprocess.cc", |
| 409 | "src/google/protobuf/compiler/zip_writer.cc", |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 410 | ], |
| 411 | |
| 412 | local_include_dirs: [ |
| 413 | "android", |
| 414 | "src", |
| 415 | ], |
| 416 | |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 417 | static_libs: [ |
| 418 | "libprotoc", |
| 419 | "libz", |
| 420 | ], |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 421 | |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 422 | cflags: [ |
Dan Willemsen | 00ceebe | 2018-02-07 14:24:31 -0800 | [diff] [blame] | 423 | "-DHAVE_ZLIB=1", |
| 424 | ], |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 425 | |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 426 | rtti: true, |
Dan Willemsen | 1ff41e0 | 2016-07-31 17:53:37 -0700 | [diff] [blame] | 427 | } |
Colin Cross | 8ef59df | 2017-10-01 17:51:22 -0700 | [diff] [blame] | 428 | |
Colin Cross | f609a27 | 2019-08-16 14:22:26 -0700 | [diff] [blame] | 429 | cc_test { |
| 430 | name: "libprotobuf_vendor_suffix_test", |
| 431 | vendor: true, |
| 432 | srcs: ["vendor_suffix_test.cpp"], |
| 433 | shared_libs: [ |
| 434 | "libprotobuf-cpp-lite", |
| 435 | "libprotobuf-cpp-full", |
| 436 | ], |
| 437 | static_libs: ["libbase"], |
| 438 | stl: "libc++", |
| 439 | test_suites: ["general-tests"], |
| 440 | test_config: "vendor_suffix_test.config", |
| 441 | } |
| 442 | |
Andreas Gampe | 081a3a9 | 2018-06-14 11:30:06 -0700 | [diff] [blame] | 443 | java_defaults { |
| 444 | name: "libprotobuf_errorprone_defaults", |
| 445 | errorprone: { |
Sasha Smundak | 2e0867a | 2019-11-13 21:48:09 -0800 | [diff] [blame] | 446 | javacflags: ["-Xep:MissingOverride:OFF"], // b/73499927 |
Andreas Gampe | 081a3a9 | 2018-06-14 11:30:06 -0700 | [diff] [blame] | 447 | }, |
| 448 | } |
| 449 | |
Colin Cross | 8ef59df | 2017-10-01 17:51:22 -0700 | [diff] [blame] | 450 | // Java nano library |
| 451 | // ======================================================= |
| 452 | java_library_static { |
| 453 | name: "libprotobuf-java-nano", |
Andreas Gampe | 081a3a9 | 2018-06-14 11:30:06 -0700 | [diff] [blame] | 454 | defaults: ["libprotobuf_errorprone_defaults"], |
Colin Cross | 8ef59df | 2017-10-01 17:51:22 -0700 | [diff] [blame] | 455 | host_supported: true, |
| 456 | |
| 457 | sdk_version: "9", |
| 458 | |
| 459 | srcs: [ |
| 460 | "javanano/src/main/java/com/google/protobuf/nano/**/*.java", |
| 461 | ], |
| 462 | |
| 463 | target: { |
| 464 | android: { |
| 465 | srcs: ["javanano/src/device/main/java/com/google/protobuf/nano/**/*.java"], |
| 466 | }, |
| 467 | }, |
| 468 | |
| 469 | java_version: "1.7", |
Jiyong Park | d1acb17 | 2020-03-07 17:08:16 +0900 | [diff] [blame] | 470 | |
| 471 | apex_available: [ |
| 472 | "//apex_available:platform", |
| 473 | // TODO(b/151068271) switch this to //apex_available:anyapex |
| 474 | "com.android.wifi", |
| 475 | ], |
Colin Cross | 8ef59df | 2017-10-01 17:51:22 -0700 | [diff] [blame] | 476 | } |
| 477 | |
| 478 | // Java nano library (compatibility for old host-side users) |
| 479 | // ======================================================= |
| 480 | java_library_host { |
| 481 | name: "host-libprotobuf-java-nano", |
| 482 | static_libs: ["libprotobuf-java-nano"], |
| 483 | |
| 484 | java_version: "1.7", |
| 485 | } |
| 486 | |
| 487 | // Java micro library |
| 488 | // ======================================================= |
| 489 | java_library_static { |
| 490 | name: "libprotobuf-java-micro", |
Andreas Gampe | 081a3a9 | 2018-06-14 11:30:06 -0700 | [diff] [blame] | 491 | defaults: ["libprotobuf_errorprone_defaults"], |
Colin Cross | 8ef59df | 2017-10-01 17:51:22 -0700 | [diff] [blame] | 492 | host_supported: true, |
| 493 | |
| 494 | sdk_version: "8", |
| 495 | |
| 496 | srcs: ["javamicro/src/main/java/com/google/protobuf/micro/**/*.java"], |
Jiyong Park | d1acb17 | 2020-03-07 17:08:16 +0900 | [diff] [blame] | 497 | |
| 498 | apex_available: [ |
| 499 | "//apex_available:platform", |
| 500 | // TODO(b/151068271) switch this to //apex_available:anyapex |
| 501 | "com.android.bluetooth.updatable", |
| 502 | ], |
Colin Cross | 8ef59df | 2017-10-01 17:51:22 -0700 | [diff] [blame] | 503 | } |
| 504 | |
| 505 | // Java micro library (compatibility for old host-side users) |
| 506 | // ======================================================= |
| 507 | java_library_host { |
| 508 | name: "host-libprotobuf-java-micro", |
| 509 | static_libs: ["libprotobuf-java-micro"], |
| 510 | } |
| 511 | |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 512 | // Java lite library |
| 513 | // ======================================================= |
| 514 | java_library_static { |
| 515 | name: "libprotobuf-java-lite", |
| 516 | host_supported: true, |
| 517 | sdk_version: "core_current", |
| 518 | |
| 519 | srcs: [ |
| 520 | "java/core/src/main/java/com/google/protobuf/AbstractMessageLite.java", |
| 521 | "java/core/src/main/java/com/google/protobuf/AbstractParser.java", |
| 522 | "java/core/src/main/java/com/google/protobuf/AbstractProtobufList.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 523 | "java/core/src/main/java/com/google/protobuf/AllocatedBuffer.java", |
| 524 | "java/core/src/main/java/com/google/protobuf/Android.java", |
| 525 | "java/core/src/main/java/com/google/protobuf/ArrayDecoders.java", |
| 526 | "java/core/src/main/java/com/google/protobuf/BinaryReader.java", |
| 527 | "java/core/src/main/java/com/google/protobuf/BinaryWriter.java", |
| 528 | "java/core/src/main/java/com/google/protobuf/BooleanArrayList.java", |
| 529 | "java/core/src/main/java/com/google/protobuf/BufferAllocator.java", |
| 530 | "java/core/src/main/java/com/google/protobuf/ByteBufferWriter.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 531 | "java/core/src/main/java/com/google/protobuf/ByteOutput.java", |
| 532 | "java/core/src/main/java/com/google/protobuf/ByteString.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 533 | "java/core/src/main/java/com/google/protobuf/CodedInputStream.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 534 | "java/core/src/main/java/com/google/protobuf/CodedInputStreamReader.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 535 | "java/core/src/main/java/com/google/protobuf/CodedOutputStream.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 536 | "java/core/src/main/java/com/google/protobuf/CodedOutputStreamWriter.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 537 | "java/core/src/main/java/com/google/protobuf/DoubleArrayList.java", |
| 538 | "java/core/src/main/java/com/google/protobuf/ExperimentalApi.java", |
| 539 | "java/core/src/main/java/com/google/protobuf/ExtensionLite.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 540 | "java/core/src/main/java/com/google/protobuf/ExtensionRegistryFactory.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 541 | "java/core/src/main/java/com/google/protobuf/ExtensionRegistryLite.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 542 | "java/core/src/main/java/com/google/protobuf/ExtensionSchema.java", |
| 543 | "java/core/src/main/java/com/google/protobuf/ExtensionSchemaLite.java", |
| 544 | "java/core/src/main/java/com/google/protobuf/ExtensionSchemas.java", |
| 545 | "java/core/src/main/java/com/google/protobuf/FieldInfo.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 546 | "java/core/src/main/java/com/google/protobuf/FieldSet.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 547 | "java/core/src/main/java/com/google/protobuf/FieldType.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 548 | "java/core/src/main/java/com/google/protobuf/FloatArrayList.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 549 | "java/core/src/main/java/com/google/protobuf/GeneratedMessageInfoFactory.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 550 | "java/core/src/main/java/com/google/protobuf/GeneratedMessageLite.java", |
| 551 | "java/core/src/main/java/com/google/protobuf/IntArrayList.java", |
| 552 | "java/core/src/main/java/com/google/protobuf/Internal.java", |
| 553 | "java/core/src/main/java/com/google/protobuf/InvalidProtocolBufferException.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 554 | "java/core/src/main/java/com/google/protobuf/IterableByteBufferInputStream.java", |
| 555 | "java/core/src/main/java/com/google/protobuf/JavaType.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 556 | "java/core/src/main/java/com/google/protobuf/LazyField.java", |
| 557 | "java/core/src/main/java/com/google/protobuf/LazyFieldLite.java", |
| 558 | "java/core/src/main/java/com/google/protobuf/LazyStringArrayList.java", |
| 559 | "java/core/src/main/java/com/google/protobuf/LazyStringList.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 560 | "java/core/src/main/java/com/google/protobuf/ListFieldSchema.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 561 | "java/core/src/main/java/com/google/protobuf/LongArrayList.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 562 | "java/core/src/main/java/com/google/protobuf/ManifestSchemaFactory.java", |
| 563 | "java/core/src/main/java/com/google/protobuf/MapEntryLite.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 564 | "java/core/src/main/java/com/google/protobuf/MapFieldLite.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 565 | "java/core/src/main/java/com/google/protobuf/MapFieldSchema.java", |
| 566 | "java/core/src/main/java/com/google/protobuf/MapFieldSchemaLite.java", |
| 567 | "java/core/src/main/java/com/google/protobuf/MapFieldSchemas.java", |
| 568 | "java/core/src/main/java/com/google/protobuf/MessageInfo.java", |
| 569 | "java/core/src/main/java/com/google/protobuf/MessageInfoFactory.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 570 | "java/core/src/main/java/com/google/protobuf/MessageLite.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 571 | "java/core/src/main/java/com/google/protobuf/MessageLiteOrBuilder.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 572 | "java/core/src/main/java/com/google/protobuf/MessageLiteToString.java", |
| 573 | "java/core/src/main/java/com/google/protobuf/MessageSchema.java", |
| 574 | "java/core/src/main/java/com/google/protobuf/MessageSetSchema.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 575 | "java/core/src/main/java/com/google/protobuf/MutabilityOracle.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 576 | "java/core/src/main/java/com/google/protobuf/NewInstanceSchema.java", |
| 577 | "java/core/src/main/java/com/google/protobuf/NewInstanceSchemaLite.java", |
| 578 | "java/core/src/main/java/com/google/protobuf/NewInstanceSchemas.java", |
| 579 | "java/core/src/main/java/com/google/protobuf/NioByteString.java", |
| 580 | "java/core/src/main/java/com/google/protobuf/OneofInfo.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 581 | "java/core/src/main/java/com/google/protobuf/Parser.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 582 | "java/core/src/main/java/com/google/protobuf/PrimitiveNonBoxingCollection.java", |
| 583 | "java/core/src/main/java/com/google/protobuf/ProtoSyntax.java", |
| 584 | "java/core/src/main/java/com/google/protobuf/Protobuf.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 585 | "java/core/src/main/java/com/google/protobuf/ProtobufArrayList.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 586 | "java/core/src/main/java/com/google/protobuf/ProtobufLists.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 587 | "java/core/src/main/java/com/google/protobuf/ProtocolStringList.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 588 | "java/core/src/main/java/com/google/protobuf/RawMessageInfo.java", |
| 589 | "java/core/src/main/java/com/google/protobuf/Reader.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 590 | "java/core/src/main/java/com/google/protobuf/RopeByteString.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 591 | "java/core/src/main/java/com/google/protobuf/Schema.java", |
| 592 | "java/core/src/main/java/com/google/protobuf/SchemaFactory.java", |
| 593 | "java/core/src/main/java/com/google/protobuf/SchemaUtil.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 594 | "java/core/src/main/java/com/google/protobuf/SmallSortedMap.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 595 | "java/core/src/main/java/com/google/protobuf/StructuralMessageInfo.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 596 | "java/core/src/main/java/com/google/protobuf/TextFormatEscaper.java", |
| 597 | "java/core/src/main/java/com/google/protobuf/UninitializedMessageException.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 598 | "java/core/src/main/java/com/google/protobuf/UnknownFieldSchema.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 599 | "java/core/src/main/java/com/google/protobuf/UnknownFieldSetLite.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 600 | "java/core/src/main/java/com/google/protobuf/UnknownFieldSetLiteSchema.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 601 | "java/core/src/main/java/com/google/protobuf/UnmodifiableLazyStringList.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 602 | "java/core/src/main/java/com/google/protobuf/UnsafeUtil.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 603 | "java/core/src/main/java/com/google/protobuf/Utf8.java", |
| 604 | "java/core/src/main/java/com/google/protobuf/WireFormat.java", |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 605 | "java/core/src/main/java/com/google/protobuf/Writer.java", |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 606 | ], |
| 607 | |
| 608 | target: { |
| 609 | android: { |
| 610 | libs: ["libcore_private.stubs"], |
| 611 | }, |
| 612 | }, |
| 613 | |
| 614 | java_version: "1.7", |
Jiyong Park | d1acb17 | 2020-03-07 17:08:16 +0900 | [diff] [blame] | 615 | |
| 616 | apex_available: [ |
| 617 | "//apex_available:platform", |
| 618 | // TODO(b/151068271) switch below to //apex_available:anyapex |
| 619 | "com.android.permission", |
| 620 | "com.android.bluetooth.updatable", |
waynema | 577f4f4 | 2020-06-17 10:33:49 +0800 | [diff] [blame] | 621 | "com.android.tethering", |
Jiyong Park | 0ae4632 | 2020-03-26 09:49:13 +0900 | [diff] [blame] | 622 | "com.android.wifi", |
Jiyong Park | d1acb17 | 2020-03-07 17:08:16 +0900 | [diff] [blame] | 623 | ], |
Colin Cross | 11fb7ae | 2018-11-04 17:34:26 -0800 | [diff] [blame] | 624 | } |
| 625 | |
| 626 | // Java lite library (compatibility for old host-side users) |
| 627 | // ======================================================= |
| 628 | java_library_host { |
| 629 | name: "host-libprotobuf-java-lite", |
| 630 | static_libs: ["libprotobuf-java-lite"], |
| 631 | } |
| 632 | |
Colin Cross | 8ef59df | 2017-10-01 17:51:22 -0700 | [diff] [blame] | 633 | // Java full library (for host-side users) |
| 634 | // ======================================================= |
| 635 | java_library_host { |
| 636 | name: "libprotobuf-java-full", |
Andreas Gampe | 081a3a9 | 2018-06-14 11:30:06 -0700 | [diff] [blame] | 637 | defaults: ["libprotobuf_errorprone_defaults"], |
Colin Cross | 8ef59df | 2017-10-01 17:51:22 -0700 | [diff] [blame] | 638 | |
| 639 | srcs: [ |
Colin Cross | 8ef59df | 2017-10-01 17:51:22 -0700 | [diff] [blame] | 640 | "java/core/src/main/java/**/*.java", |
Julien Desprez | d2c9141 | 2018-05-18 12:40:51 -0700 | [diff] [blame] | 641 | ":libprotobuf-internal-protos", |
Colin Cross | 8ef59df | 2017-10-01 17:51:22 -0700 | [diff] [blame] | 642 | ], |
| 643 | |
Julien Desprez | d2c9141 | 2018-05-18 12:40:51 -0700 | [diff] [blame] | 644 | proto: { |
Colin Cross | 66ae387 | 2019-10-25 18:23:24 -0700 | [diff] [blame] | 645 | type: "full", |
Julien Desprez | d2c9141 | 2018-05-18 12:40:51 -0700 | [diff] [blame] | 646 | local_include_dirs: [ |
| 647 | "src", |
| 648 | ], |
| 649 | canonical_path_from_root: false, |
| 650 | }, |
| 651 | |
Colin Cross | 8ef59df | 2017-10-01 17:51:22 -0700 | [diff] [blame] | 652 | java_version: "1.7", |
| 653 | } |
| 654 | |
Sasha Smundak | 78a691c | 2019-06-26 16:19:21 -0700 | [diff] [blame] | 655 | java_library_host { |
Colin Cross | ef240b2 | 2018-10-10 15:01:01 -0700 | [diff] [blame] | 656 | name: "libprotobuf-java-util-full", |
| 657 | defaults: ["libprotobuf_errorprone_defaults"], |
| 658 | srcs: [ |
| 659 | "java/util/src/main/java/com/google/protobuf/util/*.java", |
| 660 | ], |
| 661 | static_libs: [ |
| 662 | "error_prone_annotations", |
| 663 | "gson-prebuilt-jar", |
| 664 | "guava-21.0", |
| 665 | "libprotobuf-java-full", |
| 666 | ], |
Sasha Smundak | 78a691c | 2019-06-26 16:19:21 -0700 | [diff] [blame] | 667 | } |
| 668 | |
Colin Cross | 8ef59df | 2017-10-01 17:51:22 -0700 | [diff] [blame] | 669 | // Java full library (compatibility for old host-side users) |
| 670 | // ======================================================= |
| 671 | java_library_host { |
| 672 | name: "host-libprotobuf-java-full", |
| 673 | static_libs: ["libprotobuf-java-full"], |
| 674 | } |
Jiyong Park | dc08924 | 2018-03-04 09:40:04 +0900 | [diff] [blame] | 675 | |
| 676 | // Stubs library for using hidden APIs in core-oj and core-libart |
| 677 | // ======================================================= |
| 678 | java_library { |
| 679 | name: "libcore_private.stubs", |
Jiyong Park | dc08924 | 2018-03-04 09:40:04 +0900 | [diff] [blame] | 680 | srcs: ["java/core/src/stubs/**/*.java"], |
| 681 | sdk_version: "core_current", |
Jiyong Park | 6297aad | 2018-03-05 20:58:48 +0900 | [diff] [blame] | 682 | installable: false, |
Jiyong Park | dc08924 | 2018-03-04 09:40:04 +0900 | [diff] [blame] | 683 | } |
Nan Zhang | 4f354de | 2017-12-22 16:14:32 -0800 | [diff] [blame] | 684 | |
| 685 | // Python library |
| 686 | // ======================================================= |
| 687 | python_library { |
| 688 | name: "libprotobuf-python", |
| 689 | srcs: [ |
| 690 | ":libprotobuf-internal-python-srcs", |
| 691 | ":libprotobuf-internal-protos", |
| 692 | ], |
| 693 | version: { |
| 694 | py2: { |
| 695 | enabled: true, |
| 696 | }, |
| 697 | py3: { |
| 698 | enabled: true, |
| 699 | }, |
| 700 | }, |
Nan Zhang | e94d647 | 2018-05-11 11:17:14 -0700 | [diff] [blame] | 701 | libs: [ |
| 702 | "py-six", |
| 703 | ], |
Nan Zhang | 4f354de | 2017-12-22 16:14:32 -0800 | [diff] [blame] | 704 | proto: { |
| 705 | local_include_dirs: [ |
| 706 | "src", |
| 707 | ], |
| 708 | canonical_path_from_root: false, |
| 709 | }, |
| 710 | host_supported: true, |
| 711 | } |
| 712 | |
| 713 | filegroup { |
| 714 | name: "libprotobuf-internal-python-srcs", |
| 715 | srcs: ["python/google/**/*.py"], |
| 716 | path: "python", |
| 717 | } |
| 718 | |
| 719 | filegroup { |
| 720 | name: "libprotobuf-internal-protos", |
| 721 | srcs: [ |
| 722 | "src/google/protobuf/descriptor.proto", |
| 723 | "src/google/protobuf/any.proto", |
| 724 | "src/google/protobuf/source_context.proto", |
| 725 | "src/google/protobuf/type.proto", |
| 726 | "src/google/protobuf/compiler/plugin.proto", |
| 727 | "src/google/protobuf/api.proto", |
| 728 | "src/google/protobuf/duration.proto", |
| 729 | "src/google/protobuf/empty.proto", |
| 730 | "src/google/protobuf/field_mask.proto", |
| 731 | "src/google/protobuf/struct.proto", |
| 732 | "src/google/protobuf/timestamp.proto", |
| 733 | "src/google/protobuf/wrappers.proto", |
| 734 | ], |
| 735 | path: "src", |
| 736 | } |
Sasha Smundak | d33d888 | 2019-01-14 15:10:06 -0800 | [diff] [blame] | 737 | |
| 738 | // To test java proto params build rules. |
| 739 | // ======================================================= |
| 740 | java_test { |
| 741 | name: "aprotoc-test-nano-params", |
| 742 | sdk_version: "current", |
| 743 | proto: { |
| 744 | type: "nano", |
| 745 | local_include_dirs: ["src"], |
| 746 | output_params: [ |
| 747 | "java_package=javanano/src/test/java/com/google/protobuf/nano/unittest_import_nano.proto\\|com.google.protobuf.nano", |
| 748 | "java_outer_classname=javanano/src/test/java/com/google/protobuf/nano/unittest_import_nano.proto\\|UnittestImportNano", |
| 749 | ], |
| 750 | }, |
| 751 | srcs: [ |
| 752 | "javanano/src/test/java/com/google/protobuf/nano/unittest_import_nano.proto", |
| 753 | "javanano/src/test/java/com/google/protobuf/nano/unittest_simple_nano.proto", |
| 754 | "javanano/src/test/java/com/google/protobuf/nano/unittest_stringutf8_nano.proto", |
| 755 | "javanano/src/test/java/com/google/protobuf/nano/unittest_recursive_nano.proto", |
| 756 | ], |
| 757 | java_version: "1.7", |
| 758 | } |
| 759 | |
| 760 | // To test Android-specific nanoproto features. |
| 761 | // ======================================================= |
| 762 | java_test { |
| 763 | // Parcelable messages |
| 764 | name: "android-nano-test-parcelable", |
| 765 | sdk_version: "current", |
| 766 | // Only needed at compile-time. |
| 767 | libs: ["android-support-annotations"], |
| 768 | proto: { |
| 769 | type: "nano", |
| 770 | local_include_dirs: ["src"], |
| 771 | output_params: [ |
| 772 | "parcelable_messages=true", |
| 773 | "generate_intdefs=true", |
| 774 | ], |
| 775 | }, |
| 776 | srcs: ["javanano/src/test/java/com/google/protobuf/nano/unittest_simple_nano.proto"], |
| 777 | } |
| 778 | |
| 779 | java_test { |
| 780 | // Parcelable and extendable messages |
| 781 | name: "android-nano-test-parcelable-extendable", |
| 782 | sdk_version: "current", |
| 783 | // Only needed at compile-time. |
| 784 | libs: ["android-support-annotations"], |
| 785 | proto: { |
| 786 | type: "nano", |
| 787 | local_include_dirs: ["src"], |
| 788 | output_params: [ |
| 789 | "parcelable_messages=true", |
| 790 | "generate_intdefs=true", |
| 791 | "store_unknown_fields=true", |
| 792 | ], |
| 793 | }, |
| 794 | srcs: ["javanano/src/test/java/com/google/protobuf/nano/unittest_extension_nano.proto"], |
| 795 | java_version: "1.7", |
| 796 | } |
| 797 | |
| 798 | android_test { |
| 799 | // Test APK |
| 800 | name: "NanoAndroidTest", |
| 801 | sdk_version: "8", |
| 802 | srcs: ["javanano/src/device/test/java/com/google/protobuf/nano/**/*.java"], |
| 803 | manifest: "javanano/src/device/test/AndroidManifest.xml", |
| 804 | static_libs: [ |
| 805 | "libprotobuf-java-nano", |
| 806 | "android-nano-test-parcelable", |
| 807 | "android-nano-test-parcelable-extendable", |
| 808 | ], |
| 809 | dex_preopt: { |
| 810 | enabled: false, |
| 811 | }, |
| 812 | } |
Colin Cross | f00ae75 | 2019-08-12 14:53:03 -0700 | [diff] [blame] | 813 | |
| 814 | // Java micro generator plugin |
| 815 | // ======================================================= |
| 816 | cc_binary_host { |
| 817 | name: "protoc-gen-javamicro", |
| 818 | defaults: ["protobuf-cflags-defaults"], |
| 819 | srcs: [ |
| 820 | "src/google/protobuf/compiler/javamicro/javamicro_enum.cc", |
| 821 | "src/google/protobuf/compiler/javamicro/javamicro_enum_field.cc", |
| 822 | "src/google/protobuf/compiler/javamicro/javamicro_field.cc", |
| 823 | "src/google/protobuf/compiler/javamicro/javamicro_file.cc", |
| 824 | "src/google/protobuf/compiler/javamicro/javamicro_generator.cc", |
| 825 | "src/google/protobuf/compiler/javamicro/javamicro_helpers.cc", |
| 826 | "src/google/protobuf/compiler/javamicro/javamicro_main.cc", |
| 827 | "src/google/protobuf/compiler/javamicro/javamicro_message.cc", |
| 828 | "src/google/protobuf/compiler/javamicro/javamicro_message_field.cc", |
| 829 | "src/google/protobuf/compiler/javamicro/javamicro_primitive_field.cc", |
| 830 | ], |
| 831 | local_include_dirs: ["src"], |
| 832 | static_libs: [ |
| 833 | "libprotoc", |
| 834 | "libz", |
| 835 | ], |
| 836 | stl: "libc++_static", |
Colin Cross | f00ae75 | 2019-08-12 14:53:03 -0700 | [diff] [blame] | 837 | } |
Colin Cross | ff2036e | 2019-08-12 16:10:41 -0700 | [diff] [blame] | 838 | |
| 839 | // Java nano generator plugin |
| 840 | // ======================================================= |
| 841 | cc_binary_host { |
| 842 | name: "protoc-gen-javanano", |
| 843 | defaults: ["protobuf-cflags-defaults"], |
| 844 | srcs: [ |
| 845 | "src/google/protobuf/compiler/javanano/javanano_enum.cc", |
| 846 | "src/google/protobuf/compiler/javanano/javanano_enum_field.cc", |
| 847 | "src/google/protobuf/compiler/javanano/javanano_extension.cc", |
| 848 | "src/google/protobuf/compiler/javanano/javanano_field.cc", |
| 849 | "src/google/protobuf/compiler/javanano/javanano_file.cc", |
| 850 | "src/google/protobuf/compiler/javanano/javanano_generator.cc", |
| 851 | "src/google/protobuf/compiler/javanano/javanano_helpers.cc", |
| 852 | "src/google/protobuf/compiler/javanano/javanano_main.cc", |
| 853 | "src/google/protobuf/compiler/javanano/javanano_map_field.cc", |
| 854 | "src/google/protobuf/compiler/javanano/javanano_message.cc", |
| 855 | "src/google/protobuf/compiler/javanano/javanano_message_field.cc", |
| 856 | "src/google/protobuf/compiler/javanano/javanano_primitive_field.cc", |
| 857 | ], |
| 858 | local_include_dirs: ["src"], |
| 859 | static_libs: [ |
| 860 | "libprotoc", |
| 861 | "libz", |
| 862 | ], |
| 863 | stl: "libc++_static", |
| 864 | } |