|
|
|
@ -12,6 +12,217 @@ licenses(["notice"]) |
|
|
|
|
|
|
|
|
|
exports_files(["LICENSE"]) |
|
|
|
|
|
|
|
|
|
################################################################################ |
|
|
|
|
# Protobuf Runtime Library |
|
|
|
|
################################################################################ |
|
|
|
|
|
|
|
|
|
cc_library( |
|
|
|
|
name = "protobuf_lite", |
|
|
|
|
srcs = [ |
|
|
|
|
# AUTOGEN(protobuf_lite_srcs) |
|
|
|
|
"src/google/protobuf/any_lite.cc", |
|
|
|
|
"src/google/protobuf/arena.cc", |
|
|
|
|
"src/google/protobuf/arenastring.cc", |
|
|
|
|
"src/google/protobuf/arenaz_sampler.cc", |
|
|
|
|
"src/google/protobuf/extension_set.cc", |
|
|
|
|
"src/google/protobuf/generated_enum_util.cc", |
|
|
|
|
"src/google/protobuf/generated_message_tctable_lite.cc", |
|
|
|
|
"src/google/protobuf/generated_message_util.cc", |
|
|
|
|
"src/google/protobuf/implicit_weak_message.cc", |
|
|
|
|
"src/google/protobuf/inlined_string_field.cc", |
|
|
|
|
"src/google/protobuf/io/coded_stream.cc", |
|
|
|
|
"src/google/protobuf/io/io_win32.cc", |
|
|
|
|
"src/google/protobuf/io/strtod.cc", |
|
|
|
|
"src/google/protobuf/io/zero_copy_stream.cc", |
|
|
|
|
"src/google/protobuf/io/zero_copy_stream_impl.cc", |
|
|
|
|
"src/google/protobuf/io/zero_copy_stream_impl_lite.cc", |
|
|
|
|
"src/google/protobuf/map.cc", |
|
|
|
|
"src/google/protobuf/message_lite.cc", |
|
|
|
|
"src/google/protobuf/parse_context.cc", |
|
|
|
|
"src/google/protobuf/repeated_field.cc", |
|
|
|
|
"src/google/protobuf/repeated_ptr_field.cc", |
|
|
|
|
"src/google/protobuf/stubs/bytestream.cc", |
|
|
|
|
"src/google/protobuf/stubs/common.cc", |
|
|
|
|
"src/google/protobuf/stubs/int128.cc", |
|
|
|
|
"src/google/protobuf/stubs/status.cc", |
|
|
|
|
"src/google/protobuf/stubs/statusor.cc", |
|
|
|
|
"src/google/protobuf/stubs/stringpiece.cc", |
|
|
|
|
"src/google/protobuf/stubs/stringprintf.cc", |
|
|
|
|
"src/google/protobuf/stubs/structurally_valid.cc", |
|
|
|
|
"src/google/protobuf/stubs/strutil.cc", |
|
|
|
|
"src/google/protobuf/stubs/time.cc", |
|
|
|
|
"src/google/protobuf/wire_format_lite.cc", |
|
|
|
|
], |
|
|
|
|
hdrs = glob([ |
|
|
|
|
"src/google/protobuf/**/*.h", |
|
|
|
|
"src/google/protobuf/**/*.inc", |
|
|
|
|
]), |
|
|
|
|
copts = COPTS, |
|
|
|
|
includes = ["src/"], |
|
|
|
|
linkopts = LINK_OPTS, |
|
|
|
|
visibility = ["//visibility:public"], |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
cc_library( |
|
|
|
|
name = "protobuf", |
|
|
|
|
srcs = [ |
|
|
|
|
# AUTOGEN(protobuf_srcs) |
|
|
|
|
"src/google/protobuf/any.cc", |
|
|
|
|
"src/google/protobuf/any.pb.cc", |
|
|
|
|
"src/google/protobuf/api.pb.cc", |
|
|
|
|
"src/google/protobuf/compiler/importer.cc", |
|
|
|
|
"src/google/protobuf/compiler/parser.cc", |
|
|
|
|
"src/google/protobuf/descriptor.cc", |
|
|
|
|
"src/google/protobuf/descriptor.pb.cc", |
|
|
|
|
"src/google/protobuf/descriptor_database.cc", |
|
|
|
|
"src/google/protobuf/duration.pb.cc", |
|
|
|
|
"src/google/protobuf/dynamic_message.cc", |
|
|
|
|
"src/google/protobuf/empty.pb.cc", |
|
|
|
|
"src/google/protobuf/extension_set_heavy.cc", |
|
|
|
|
"src/google/protobuf/field_mask.pb.cc", |
|
|
|
|
"src/google/protobuf/generated_message_bases.cc", |
|
|
|
|
"src/google/protobuf/generated_message_reflection.cc", |
|
|
|
|
"src/google/protobuf/generated_message_tctable_full.cc", |
|
|
|
|
"src/google/protobuf/io/gzip_stream.cc", |
|
|
|
|
"src/google/protobuf/io/printer.cc", |
|
|
|
|
"src/google/protobuf/io/tokenizer.cc", |
|
|
|
|
"src/google/protobuf/map_field.cc", |
|
|
|
|
"src/google/protobuf/message.cc", |
|
|
|
|
"src/google/protobuf/reflection_ops.cc", |
|
|
|
|
"src/google/protobuf/service.cc", |
|
|
|
|
"src/google/protobuf/source_context.pb.cc", |
|
|
|
|
"src/google/protobuf/struct.pb.cc", |
|
|
|
|
"src/google/protobuf/stubs/substitute.cc", |
|
|
|
|
"src/google/protobuf/text_format.cc", |
|
|
|
|
"src/google/protobuf/timestamp.pb.cc", |
|
|
|
|
"src/google/protobuf/type.pb.cc", |
|
|
|
|
"src/google/protobuf/unknown_field_set.cc", |
|
|
|
|
"src/google/protobuf/util/delimited_message_util.cc", |
|
|
|
|
"src/google/protobuf/util/field_comparator.cc", |
|
|
|
|
"src/google/protobuf/util/field_mask_util.cc", |
|
|
|
|
"src/google/protobuf/util/internal/datapiece.cc", |
|
|
|
|
"src/google/protobuf/util/internal/default_value_objectwriter.cc", |
|
|
|
|
"src/google/protobuf/util/internal/error_listener.cc", |
|
|
|
|
"src/google/protobuf/util/internal/field_mask_utility.cc", |
|
|
|
|
"src/google/protobuf/util/internal/json_escaping.cc", |
|
|
|
|
"src/google/protobuf/util/internal/json_objectwriter.cc", |
|
|
|
|
"src/google/protobuf/util/internal/json_stream_parser.cc", |
|
|
|
|
"src/google/protobuf/util/internal/object_writer.cc", |
|
|
|
|
"src/google/protobuf/util/internal/proto_writer.cc", |
|
|
|
|
"src/google/protobuf/util/internal/protostream_objectsource.cc", |
|
|
|
|
"src/google/protobuf/util/internal/protostream_objectwriter.cc", |
|
|
|
|
"src/google/protobuf/util/internal/type_info.cc", |
|
|
|
|
"src/google/protobuf/util/internal/utility.cc", |
|
|
|
|
"src/google/protobuf/util/json_util.cc", |
|
|
|
|
"src/google/protobuf/util/message_differencer.cc", |
|
|
|
|
"src/google/protobuf/util/time_util.cc", |
|
|
|
|
"src/google/protobuf/util/type_resolver_util.cc", |
|
|
|
|
"src/google/protobuf/wire_format.cc", |
|
|
|
|
"src/google/protobuf/wrappers.pb.cc", |
|
|
|
|
], |
|
|
|
|
hdrs = glob([ |
|
|
|
|
"src/**/*.h", |
|
|
|
|
"src/**/*.inc", |
|
|
|
|
]), |
|
|
|
|
copts = COPTS, |
|
|
|
|
includes = ["src/"], |
|
|
|
|
linkopts = LINK_OPTS, |
|
|
|
|
visibility = ["//visibility:public"], |
|
|
|
|
deps = [":protobuf_lite"] + select({ |
|
|
|
|
"//build_defs:config_msvc": [], |
|
|
|
|
"//conditions:default": ["@zlib//:zlib"], |
|
|
|
|
}), |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
# This provides just the header files for use in projects that need to build |
|
|
|
|
# shared libraries for dynamic loading. This target is available until Bazel |
|
|
|
|
# adds native support for such use cases. |
|
|
|
|
# TODO(keveman): Remove this target once the support gets added to Bazel. |
|
|
|
|
cc_library( |
|
|
|
|
name = "protobuf_headers", |
|
|
|
|
hdrs = glob([ |
|
|
|
|
"src/**/*.h", |
|
|
|
|
"src/**/*.inc", |
|
|
|
|
]), |
|
|
|
|
includes = ["src/"], |
|
|
|
|
visibility = ["//visibility:public"], |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
filegroup( |
|
|
|
|
name = "well_known_type_protos", |
|
|
|
|
srcs = [ |
|
|
|
|
"src/google/protobuf/any.proto", |
|
|
|
|
"src/google/protobuf/api.proto", |
|
|
|
|
"src/google/protobuf/duration.proto", |
|
|
|
|
"src/google/protobuf/empty.proto", |
|
|
|
|
"src/google/protobuf/field_mask.proto", |
|
|
|
|
"src/google/protobuf/source_context.proto", |
|
|
|
|
"src/google/protobuf/struct.proto", |
|
|
|
|
"src/google/protobuf/timestamp.proto", |
|
|
|
|
"src/google/protobuf/type.proto", |
|
|
|
|
"src/google/protobuf/wrappers.proto", |
|
|
|
|
], |
|
|
|
|
visibility = ["//visibility:public"], |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
filegroup( |
|
|
|
|
name = "built_in_runtime_protos", |
|
|
|
|
srcs = [ |
|
|
|
|
"src/google/protobuf/compiler/plugin.proto", |
|
|
|
|
"src/google/protobuf/descriptor.proto", |
|
|
|
|
], |
|
|
|
|
visibility = ["//:__subpackages__"], |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
exports_files( |
|
|
|
|
srcs = [ |
|
|
|
|
"src/google/protobuf/any.proto", |
|
|
|
|
"src/google/protobuf/api.proto", |
|
|
|
|
"src/google/protobuf/compiler/plugin.proto", |
|
|
|
|
"src/google/protobuf/descriptor.proto", |
|
|
|
|
"src/google/protobuf/duration.proto", |
|
|
|
|
"src/google/protobuf/empty.proto", |
|
|
|
|
"src/google/protobuf/field_mask.proto", |
|
|
|
|
"src/google/protobuf/source_context.proto", |
|
|
|
|
"src/google/protobuf/struct.proto", |
|
|
|
|
"src/google/protobuf/timestamp.proto", |
|
|
|
|
"src/google/protobuf/type.proto", |
|
|
|
|
"src/google/protobuf/wrappers.proto", |
|
|
|
|
], |
|
|
|
|
visibility = ["//pkg:__pkg__"], |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
alias( |
|
|
|
|
name = "lite_well_known_protos", |
|
|
|
|
actual = ":well_known_type_protos", |
|
|
|
|
visibility = ["//visibility:public"], |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
adapt_proto_library( |
|
|
|
|
name = "cc_wkt_protos_genproto", |
|
|
|
|
visibility = ["//visibility:public"], |
|
|
|
|
deps = [ |
|
|
|
|
"//:any_proto", |
|
|
|
|
"//:api_proto", |
|
|
|
|
"//:compiler_plugin_proto", |
|
|
|
|
"//:descriptor_proto", |
|
|
|
|
"//:duration_proto", |
|
|
|
|
"//:empty_proto", |
|
|
|
|
"//:field_mask_proto", |
|
|
|
|
"//:source_context_proto", |
|
|
|
|
"//:struct_proto", |
|
|
|
|
"//:timestamp_proto", |
|
|
|
|
"//:type_proto", |
|
|
|
|
"//:wrappers_proto", |
|
|
|
|
], |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
cc_library( |
|
|
|
|
name = "cc_wkt_protos", |
|
|
|
|
deprecation = "Only for backward compatibility. Do not use.", |
|
|
|
|
visibility = ["//visibility:public"], |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
################################################################################ |
|
|
|
|
# Well Known Types Proto Library Rules |
|
|
|
|
# |
|
|
|
|