blob: d42d1dab18cae90f3a1c3d4eacffb5a9b9de914b [file]
# THIS FILE IS GENERATED FROM BUILD.input.gn BY gen.py
# EDIT BUILD.input.gn FIRST AND THEN RUN gen.py
#
#
# Copyright 2017 The Fuchsia Authors. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
#
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above
# copyright notice, this list of conditions and the following disclaimer
# in the documentation and/or other materials provided with the
# distribution.
# * Neither the name of Google Inc. nor the names of its
# contributors may be used to endorse or promote products derived from
# this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
import("//build/config/protobuf.gni")
import("//build/licenses/license.gni")
import("//build/test.gni")
import("//third_party/protobuf/proto_library.gni")
license("protobuf_license") {
public_package_name = "protobuf"
license_files = [ "src/LICENSE" ]
}
license("utf8_range_license") {
public_package_name = "utf8_range"
license_files = [ "src/third_party/utf8_range/LICENSE" ]
}
# LINT.IfChange
visibility = [ "//third_party/protobuf/*" ]
# Please do not add more entries to this list. Proto depends on abseil-cpp,
# which is not intended to be widely used in Fuchsia platform components.
visibility_protobuf = [
"$cobalt_root/*",
"//src/connectivity/bluetooth/testing/pandora/bt-pandora-server:*",
"//src/lib/fidl_codec:*",
"//src/performance/experimental/profiler/samples_to_pprof:*",
"//src/sensors/playback/*",
"//src/virtualization/bin/termina_guest_manager:*",
"//src/virtualization/lib/*",
"//src/virtualization/third_party/*",
"//third_party/grpc:*",
"//third_party/perfetto/*",
"//third_party/spirv-tools:*",
"//third_party/tink/*",
"//third_party/tink-cc/*",
"//tools/fidlcat/*",
"//vendor/third_party/*",
]
visibility_protoc = [
"$cobalt_root/*",
"//src/connectivity/bluetooth/testing/pandora/bt-pandora-server:*",
"//src/lib/fidl_codec:*",
"//src/developer/ffx/lib/profiler:*",
"//src/performance/*",
"//src/starnix/lib/perfetto:*",
"//src/starnix/modules/perfetto_consumer/lib/perfetto:*",
"//src/sys/pkg/lib/update-package/*",
"//src/sensors/playback/proto:*",
"//src/virtualization/third_party/vm_tools:*",
"//src/virtualization/lib/*",
"//third_party/luci-go/resultdb/*",
"//third_party/luci-go/swarming/*",
"//third_party/perfetto/*",
"//third_party/pigweed/backends/pw_protobuf_compiler:*",
"//third_party/pigweed/src/pw_log:*",
"//third_party/pigweed/src/pw_protobuf:*",
"//third_party/pigweed/src/pw_tokenizer:*",
"//third_party/tink/cc/proto:*",
"//third_party/tink-cc/*",
"//tools/bazel-docgen:*",
"//tools/build/fx-set:*",
"//tools/debug/covargs/*",
"//tools/fidlcat/lib:*",
"//tools/integration/fint:*",
"//tools/integration/testsharder:*",
"//tools/metadata/proto:*",
"//tools/testing/resultdb:*",
"//tools/virtual_device/*",
"//vendor/google/*",
"//vendor/third_party/*",
]
config("protobuf_config") {
visibility += [ "//third_party/grpc:*" ]
include_dirs = [
"src/src",
"src/third_party/utf8_range/",
"//third_party/abseil-cpp/src",
]
defines = [
"GOOGLE_PROTOBUF_NO_RTTI",
"HAVE_PTHREAD",
]
cflags = []
if (is_clang) {
cflags += [
# Needed to support PROTOBUF_INTERNAL_CHECK_CLASS_SIZE in descriptor.h
"-Wno-c++98-compat-extra-semi",
# There are implicit conversions in parse_context.h
"-Wno-shorten-64-to-32",
"-Wno-deprecated-builtins",
"-Wno-unused-result",
]
}
}
config("upb_bootstrap_config") {
defines = [ "UPB_BOOTSTRAP_STAGE=0" ]
}
config("protobuf_warnings") {
visibility += visibility_protoc
cflags = []
if (is_clang) {
# These are all needed as of https://github.com/protocolbuffers/protobuf/releases/tag/v3.21.12
cflags += [
"-Wno-deprecated-pragma",
"-Wno-enum-enum-conversion",
"-Wno-extra-semi",
"-Wno-float-conversion",
"-Wno-implicit-float-conversion",
"-Wno-implicit-int-conversion",
"-Wno-implicit-int-float-conversion",
"-Wno-invalid-noreturn",
"-Wno-missing-field-initializers",
"-Wno-sign-compare",
"-Wno-unused-function",
"-Wno-unused-private-field",
"-Wno-deprecated-declarations", # Mac deprecated sprintf
"-Wno-deprecated-builtins",
"-Wno-deprecated-this-capture",
"-Wno-unnecessary-virtual-specifier",
"-Wno-strict-prototypes",
"-Wno-newline-eof",
]
}
}
# This config should be applied to targets using generated code from the proto
# compiler. It sets up the include directories properly.
config("using_proto") {
visibility += visibility_protoc
include_dirs = [
"src/src",
"$root_gen_dir",
]
}
# LINT.ThenChange(BUILD.input.gn)
# Note: The targets below are excluded from the LINT block because some of their
# source and public file lists are generated dynamically by gen.py (using
# git ls-files). A protobuf source update will modify the expanded file lists in
# the generated BUILD.gn without requiring changes to BUILD.input.gn. Including
# these sections would cause false positives in the IfChange verification.
static_library("protobuf_lite") {
applicable_licenses = [
":protobuf_license",
":utf8_range_license",
]
visibility += visibility_protobuf
sources = [
"src/src/google/protobuf/any_lite.cc",
"src/src/google/protobuf/arena.cc",
"src/src/google/protobuf/arenastring.cc",
"src/src/google/protobuf/arenaz_sampler.cc",
"src/src/google/protobuf/extension_set.cc",
"src/src/google/protobuf/generated_enum_util.cc",
"src/src/google/protobuf/generated_message_tctable_lite.cc",
"src/src/google/protobuf/generated_message_util.cc",
"src/src/google/protobuf/implicit_weak_message.cc",
"src/src/google/protobuf/inlined_string_field.cc",
"src/src/google/protobuf/io/coded_stream.cc",
"src/src/google/protobuf/io/io_win32.cc",
"src/src/google/protobuf/io/strtod.cc",
"src/src/google/protobuf/io/zero_copy_stream.cc",
"src/src/google/protobuf/io/zero_copy_stream_impl.cc",
"src/src/google/protobuf/io/zero_copy_stream_impl_lite.cc",
"src/src/google/protobuf/map.cc",
"src/src/google/protobuf/message_lite.cc",
"src/src/google/protobuf/parse_context.cc",
"src/src/google/protobuf/port.cc",
"src/src/google/protobuf/raw_ptr.cc",
"src/src/google/protobuf/repeated_field.cc",
"src/src/google/protobuf/repeated_ptr_field.cc",
"src/src/google/protobuf/stubs/common.cc",
"src/src/google/protobuf/wire_format_lite.cc",
"src/third_party/utf8_range/utf8_range.c",
"src/third_party/utf8_range/utf8_validity.cc",
]
if (use_new_protobuf) {
sources -= [ "src/third_party/utf8_range/utf8_validity.cc" ]
sources += [
"src/src/google/protobuf/arena_align.cc",
"src/src/google/protobuf/micro_string.cc",
]
public = [
"src/src/google/protobuf/any.h",
"src/src/google/protobuf/any.pb.h",
"src/src/google/protobuf/api.pb.h",
"src/src/google/protobuf/arena.h",
"src/src/google/protobuf/arena_align.h",
"src/src/google/protobuf/arena_allocation_policy.h",
"src/src/google/protobuf/arena_cleanup.h",
"src/src/google/protobuf/arena_test_util.h",
"src/src/google/protobuf/arenastring.h",
"src/src/google/protobuf/arenaz_sampler.h",
"src/src/google/protobuf/cpp_edition_defaults.h",
"src/src/google/protobuf/cpp_features.pb.h",
"src/src/google/protobuf/descriptor.h",
"src/src/google/protobuf/descriptor.pb.h",
"src/src/google/protobuf/descriptor_database.h",
"src/src/google/protobuf/descriptor_legacy.h",
"src/src/google/protobuf/descriptor_lite.h",
"src/src/google/protobuf/descriptor_test_utils.h",
"src/src/google/protobuf/descriptor_visitor.h",
"src/src/google/protobuf/duration.pb.h",
"src/src/google/protobuf/dynamic_message.h",
"src/src/google/protobuf/empty.pb.h",
"src/src/google/protobuf/endian.h",
"src/src/google/protobuf/explicitly_constructed.h",
"src/src/google/protobuf/extension_set.h",
"src/src/google/protobuf/extension_set_inl.h",
"src/src/google/protobuf/feature_resolver.h",
"src/src/google/protobuf/field_access_listener.h",
"src/src/google/protobuf/field_mask.pb.h",
"src/src/google/protobuf/field_with_arena.h",
"src/src/google/protobuf/generated_enum_reflection.h",
"src/src/google/protobuf/generated_enum_util.h",
"src/src/google/protobuf/generated_message_bases.h",
"src/src/google/protobuf/generated_message_reflection.h",
"src/src/google/protobuf/generated_message_tctable_decl.h",
"src/src/google/protobuf/generated_message_tctable_gen.h",
"src/src/google/protobuf/generated_message_tctable_impl.h",
"src/src/google/protobuf/generated_message_util.h",
"src/src/google/protobuf/has_bits.h",
"src/src/google/protobuf/implicit_weak_message.h",
"src/src/google/protobuf/inlined_string_field.h",
"src/src/google/protobuf/internal_feature_helper.h",
"src/src/google/protobuf/internal_metadata_locator.h",
"src/src/google/protobuf/internal_visibility.h",
"src/src/google/protobuf/internal_visibility_for_testing.h",
"src/src/google/protobuf/io/coded_stream.h",
"src/src/google/protobuf/io/gzip_stream.h",
"src/src/google/protobuf/io/io_win32.h",
"src/src/google/protobuf/io/package_info.h",
"src/src/google/protobuf/io/printer.h",
"src/src/google/protobuf/io/strtod.h",
"src/src/google/protobuf/io/test_zero_copy_stream.h",
"src/src/google/protobuf/io/tokenizer.h",
"src/src/google/protobuf/io/zero_copy_sink.h",
"src/src/google/protobuf/io/zero_copy_stream.h",
"src/src/google/protobuf/io/zero_copy_stream_impl.h",
"src/src/google/protobuf/io/zero_copy_stream_impl_lite.h",
"src/src/google/protobuf/json/internal/descriptor_traits.h",
"src/src/google/protobuf/json/internal/lexer.h",
"src/src/google/protobuf/json/internal/message_path.h",
"src/src/google/protobuf/json/internal/parser.h",
"src/src/google/protobuf/json/internal/parser_traits.h",
"src/src/google/protobuf/json/internal/unparser.h",
"src/src/google/protobuf/json/internal/unparser_traits.h",
"src/src/google/protobuf/json/internal/untyped_message.h",
"src/src/google/protobuf/json/internal/writer.h",
"src/src/google/protobuf/json/internal/zero_copy_buffered_stream.h",
"src/src/google/protobuf/json/json.h",
"src/src/google/protobuf/map.h",
"src/src/google/protobuf/map_entry.h",
"src/src/google/protobuf/map_field.h",
"src/src/google/protobuf/map_field_lite.h",
"src/src/google/protobuf/map_test.inc",
"src/src/google/protobuf/map_test_util.h",
"src/src/google/protobuf/map_type_handler.h",
"src/src/google/protobuf/message.h",
"src/src/google/protobuf/message_lite.h",
"src/src/google/protobuf/message_unittest.inc",
"src/src/google/protobuf/message_unittest_legacy_apis.inc",
"src/src/google/protobuf/metadata.h",
"src/src/google/protobuf/metadata_lite.h",
"src/src/google/protobuf/micro_string.h",
"src/src/google/protobuf/os_macros_restore.inc",
"src/src/google/protobuf/os_macros_undef.inc",
"src/src/google/protobuf/package_info.h",
"src/src/google/protobuf/parse_context.h",
"src/src/google/protobuf/port.h",
"src/src/google/protobuf/port_def.inc",
"src/src/google/protobuf/port_undef.inc",
"src/src/google/protobuf/proto3_lite_unittest.inc",
"src/src/google/protobuf/raw_ptr.h",
"src/src/google/protobuf/reflection.h",
"src/src/google/protobuf/reflection_internal.h",
"src/src/google/protobuf/reflection_mode.h",
"src/src/google/protobuf/reflection_ops.h",
"src/src/google/protobuf/reflection_tester.h",
"src/src/google/protobuf/reflection_visit_field_info.h",
"src/src/google/protobuf/reflection_visit_fields.h",
"src/src/google/protobuf/repeated_field.h",
"src/src/google/protobuf/repeated_field_proxy.h",
"src/src/google/protobuf/repeated_field_proxy_iterator.h",
"src/src/google/protobuf/repeated_field_proxy_traits.h",
"src/src/google/protobuf/repeated_field_reflection_unittest.inc",
"src/src/google/protobuf/repeated_ptr_field.h",
"src/src/google/protobuf/runtime_version.h",
"src/src/google/protobuf/serial_arena.h",
"src/src/google/protobuf/service.h",
"src/src/google/protobuf/source_context.pb.h",
"src/src/google/protobuf/string_block.h",
"src/src/google/protobuf/string_member_robber.h",
"src/src/google/protobuf/struct.pb.h",
"src/src/google/protobuf/stubs/callback.h",
"src/src/google/protobuf/stubs/common.h",
"src/src/google/protobuf/stubs/platform_macros.h",
"src/src/google/protobuf/stubs/port.h",
"src/src/google/protobuf/stubs/status_macros.h",
"src/src/google/protobuf/symbol_checker.h",
"src/src/google/protobuf/test_textproto.h",
"src/src/google/protobuf/test_util.h",
"src/src/google/protobuf/test_util2.h",
"src/src/google/protobuf/test_util_lite.h",
"src/src/google/protobuf/text_format.h",
"src/src/google/protobuf/thread_safe_arena.h",
"src/src/google/protobuf/timestamp.pb.h",
"src/src/google/protobuf/type.pb.h",
"src/src/google/protobuf/unknown_field_set.h",
"src/src/google/protobuf/unredacted_debug_format_for_test.h",
"src/src/google/protobuf/varint_shuffle.h",
"src/src/google/protobuf/wire_format.h",
"src/src/google/protobuf/wire_format_lite.h",
"src/src/google/protobuf/wire_format_unittest.h",
"src/src/google/protobuf/wrappers.pb.h",
]
} else {
public = [
"src/src/google/protobuf/any.h",
"src/src/google/protobuf/any.pb.h",
"src/src/google/protobuf/api.pb.h",
"src/src/google/protobuf/arena.h",
"src/src/google/protobuf/arena_align.h",
"src/src/google/protobuf/arena_allocation_policy.h",
"src/src/google/protobuf/arena_cleanup.h",
"src/src/google/protobuf/arena_test_util.h",
"src/src/google/protobuf/arenastring.h",
"src/src/google/protobuf/arenaz_sampler.h",
"src/src/google/protobuf/cpp_edition_defaults.h",
"src/src/google/protobuf/cpp_features.pb.h",
"src/src/google/protobuf/descriptor.h",
"src/src/google/protobuf/descriptor.pb.h",
"src/src/google/protobuf/descriptor_database.h",
"src/src/google/protobuf/descriptor_legacy.h",
"src/src/google/protobuf/descriptor_lite.h",
"src/src/google/protobuf/descriptor_visitor.h",
"src/src/google/protobuf/duration.pb.h",
"src/src/google/protobuf/dynamic_message.h",
"src/src/google/protobuf/empty.pb.h",
"src/src/google/protobuf/endian.h",
"src/src/google/protobuf/explicitly_constructed.h",
"src/src/google/protobuf/extension_set.h",
"src/src/google/protobuf/extension_set_inl.h",
"src/src/google/protobuf/feature_resolver.h",
"src/src/google/protobuf/field_access_listener.h",
"src/src/google/protobuf/field_mask.pb.h",
"src/src/google/protobuf/generated_enum_reflection.h",
"src/src/google/protobuf/generated_enum_util.h",
"src/src/google/protobuf/generated_message_bases.h",
"src/src/google/protobuf/generated_message_reflection.h",
"src/src/google/protobuf/generated_message_tctable_decl.h",
"src/src/google/protobuf/generated_message_tctable_gen.h",
"src/src/google/protobuf/generated_message_tctable_impl.h",
"src/src/google/protobuf/generated_message_util.h",
"src/src/google/protobuf/has_bits.h",
"src/src/google/protobuf/implicit_weak_message.h",
"src/src/google/protobuf/inlined_string_field.h",
"src/src/google/protobuf/internal_visibility.h",
"src/src/google/protobuf/internal_visibility_for_testing.h",
"src/src/google/protobuf/io/coded_stream.h",
"src/src/google/protobuf/io/gzip_stream.h",
"src/src/google/protobuf/io/io_win32.h",
"src/src/google/protobuf/io/package_info.h",
"src/src/google/protobuf/io/printer.h",
"src/src/google/protobuf/io/strtod.h",
"src/src/google/protobuf/io/test_zero_copy_stream.h",
"src/src/google/protobuf/io/tokenizer.h",
"src/src/google/protobuf/io/zero_copy_sink.h",
"src/src/google/protobuf/io/zero_copy_stream.h",
"src/src/google/protobuf/io/zero_copy_stream_impl.h",
"src/src/google/protobuf/io/zero_copy_stream_impl_lite.h",
"src/src/google/protobuf/json/internal/descriptor_traits.h",
"src/src/google/protobuf/json/internal/lexer.h",
"src/src/google/protobuf/json/internal/message_path.h",
"src/src/google/protobuf/json/internal/parser.h",
"src/src/google/protobuf/json/internal/parser_traits.h",
"src/src/google/protobuf/json/internal/unparser.h",
"src/src/google/protobuf/json/internal/unparser_traits.h",
"src/src/google/protobuf/json/internal/untyped_message.h",
"src/src/google/protobuf/json/internal/writer.h",
"src/src/google/protobuf/json/internal/zero_copy_buffered_stream.h",
"src/src/google/protobuf/json/json.h",
"src/src/google/protobuf/lazy_repeated_field.h",
"src/src/google/protobuf/map.h",
"src/src/google/protobuf/map_entry.h",
"src/src/google/protobuf/map_field.h",
"src/src/google/protobuf/map_field_inl.h",
"src/src/google/protobuf/map_field_lite.h",
"src/src/google/protobuf/map_lite_test_util.h",
"src/src/google/protobuf/map_test.inc",
"src/src/google/protobuf/map_test_util.h",
"src/src/google/protobuf/map_test_util.inc",
"src/src/google/protobuf/map_test_util_impl.h",
"src/src/google/protobuf/map_type_handler.h",
"src/src/google/protobuf/message.h",
"src/src/google/protobuf/message_lite.h",
"src/src/google/protobuf/message_unittest.inc",
"src/src/google/protobuf/message_unittest_legacy_apis.inc",
"src/src/google/protobuf/metadata.h",
"src/src/google/protobuf/metadata_lite.h",
"src/src/google/protobuf/package_info.h",
"src/src/google/protobuf/parse_context.h",
"src/src/google/protobuf/port.h",
"src/src/google/protobuf/port_def.inc",
"src/src/google/protobuf/port_undef.inc",
"src/src/google/protobuf/proto3_lite_unittest.inc",
"src/src/google/protobuf/raw_ptr.h",
"src/src/google/protobuf/reflection.h",
"src/src/google/protobuf/reflection_internal.h",
"src/src/google/protobuf/reflection_mode.h",
"src/src/google/protobuf/reflection_ops.h",
"src/src/google/protobuf/reflection_tester.h",
"src/src/google/protobuf/reflection_visit_field_info.h",
"src/src/google/protobuf/reflection_visit_fields.h",
"src/src/google/protobuf/repeated_field.h",
"src/src/google/protobuf/repeated_field_reflection_unittest.inc",
"src/src/google/protobuf/repeated_ptr_field.h",
"src/src/google/protobuf/runtime_version.h",
"src/src/google/protobuf/serial_arena.h",
"src/src/google/protobuf/service.h",
"src/src/google/protobuf/source_context.pb.h",
"src/src/google/protobuf/string_block.h",
"src/src/google/protobuf/string_member_robber.h",
"src/src/google/protobuf/struct.pb.h",
"src/src/google/protobuf/stubs/callback.h",
"src/src/google/protobuf/stubs/common.h",
"src/src/google/protobuf/stubs/platform_macros.h",
"src/src/google/protobuf/stubs/port.h",
"src/src/google/protobuf/stubs/status_macros.h",
"src/src/google/protobuf/test_textproto.h",
"src/src/google/protobuf/test_util.h",
"src/src/google/protobuf/test_util.inc",
"src/src/google/protobuf/test_util2.h",
"src/src/google/protobuf/test_util_lite.h",
"src/src/google/protobuf/text_format.h",
"src/src/google/protobuf/thread_safe_arena.h",
"src/src/google/protobuf/timestamp.pb.h",
"src/src/google/protobuf/type.pb.h",
"src/src/google/protobuf/unknown_field_set.h",
"src/src/google/protobuf/unredacted_debug_format_for_test.h",
"src/src/google/protobuf/varint_shuffle.h",
"src/src/google/protobuf/wire_format.h",
"src/src/google/protobuf/wire_format_lite.h",
"src/src/google/protobuf/wire_format_unittest.inc",
"src/src/google/protobuf/wrappers.pb.h",
]
}
configs += [ ":protobuf_warnings" ]
public_configs = [ ":protobuf_config" ]
deps = [ "//third_party/abseil-cpp:absl" ]
}
# This is the full, heavy protobuf lib that's needed for c++ .protos that don't
# specify the LITE_RUNTIME option. The protocol compiler itself (protoc) falls
# into that category.
static_library("protobuf_full") {
visibility += visibility_protobuf
sources = [
"src/src/google/protobuf/any.cc",
"src/src/google/protobuf/any.pb.cc",
"src/src/google/protobuf/api.pb.cc",
"src/src/google/protobuf/compiler/importer.cc",
"src/src/google/protobuf/compiler/parser.cc",
"src/src/google/protobuf/cpp_features.pb.cc",
"src/src/google/protobuf/descriptor.cc",
"src/src/google/protobuf/descriptor.pb.cc",
"src/src/google/protobuf/descriptor_database.cc",
"src/src/google/protobuf/duration.pb.cc",
"src/src/google/protobuf/dynamic_message.cc",
"src/src/google/protobuf/empty.pb.cc",
"src/src/google/protobuf/extension_set_heavy.cc",
"src/src/google/protobuf/feature_resolver.cc",
"src/src/google/protobuf/field_mask.pb.cc",
"src/src/google/protobuf/generated_message_bases.cc",
"src/src/google/protobuf/generated_message_reflection.cc",
"src/src/google/protobuf/generated_message_tctable_full.cc",
"src/src/google/protobuf/generated_message_tctable_gen.cc",
# gzip_stream.cc pulls in zlib, but it's not actually used by protoc, just
# by test code, so instead of compiling zlib for the host, let's just
# exclude this.
# "src/google/protobuf/io/gzip_stream.cc",
"src/src/google/protobuf/io/printer.cc",
"src/src/google/protobuf/io/tokenizer.cc",
"src/src/google/protobuf/io/zero_copy_sink.cc",
"src/src/google/protobuf/map_field.cc",
"src/src/google/protobuf/message.cc",
"src/src/google/protobuf/reflection_mode.cc",
"src/src/google/protobuf/reflection_ops.cc",
"src/src/google/protobuf/service.cc",
"src/src/google/protobuf/source_context.pb.cc",
"src/src/google/protobuf/struct.pb.cc",
"src/src/google/protobuf/text_format.cc",
"src/src/google/protobuf/timestamp.pb.cc",
"src/src/google/protobuf/type.pb.cc",
"src/src/google/protobuf/unknown_field_set.cc",
"src/src/google/protobuf/util/delimited_message_util.cc",
"src/src/google/protobuf/util/field_comparator.cc",
"src/src/google/protobuf/util/field_mask_util.cc",
"src/src/google/protobuf/util/message_differencer.cc",
"src/src/google/protobuf/util/time_util.cc",
"src/src/google/protobuf/util/type_resolver_util.cc",
"src/src/google/protobuf/wire_format.cc",
"src/src/google/protobuf/wrappers.pb.cc",
]
if (use_new_protobuf) {
sources += [
"src/src/google/protobuf/internal_feature_helper.cc",
"src/src/google/protobuf/symbol_checker.cc",
]
public = [
"src/src/google/protobuf/any.h",
"src/src/google/protobuf/any.pb.h",
"src/src/google/protobuf/api.pb.h",
"src/src/google/protobuf/arena.h",
"src/src/google/protobuf/arena_align.h",
"src/src/google/protobuf/arena_allocation_policy.h",
"src/src/google/protobuf/arena_cleanup.h",
"src/src/google/protobuf/arena_test_util.h",
"src/src/google/protobuf/arenastring.h",
"src/src/google/protobuf/arenaz_sampler.h",
"src/src/google/protobuf/cpp_edition_defaults.h",
"src/src/google/protobuf/cpp_features.pb.h",
"src/src/google/protobuf/descriptor.h",
"src/src/google/protobuf/descriptor.pb.h",
"src/src/google/protobuf/descriptor_database.h",
"src/src/google/protobuf/descriptor_legacy.h",
"src/src/google/protobuf/descriptor_lite.h",
"src/src/google/protobuf/descriptor_test_utils.h",
"src/src/google/protobuf/descriptor_visitor.h",
"src/src/google/protobuf/duration.pb.h",
"src/src/google/protobuf/dynamic_message.h",
"src/src/google/protobuf/empty.pb.h",
"src/src/google/protobuf/endian.h",
"src/src/google/protobuf/explicitly_constructed.h",
"src/src/google/protobuf/extension_set.h",
"src/src/google/protobuf/extension_set_inl.h",
"src/src/google/protobuf/feature_resolver.h",
"src/src/google/protobuf/field_access_listener.h",
"src/src/google/protobuf/field_mask.pb.h",
"src/src/google/protobuf/field_with_arena.h",
"src/src/google/protobuf/generated_enum_reflection.h",
"src/src/google/protobuf/generated_enum_util.h",
"src/src/google/protobuf/generated_message_bases.h",
"src/src/google/protobuf/generated_message_reflection.h",
"src/src/google/protobuf/generated_message_tctable_decl.h",
"src/src/google/protobuf/generated_message_tctable_gen.h",
"src/src/google/protobuf/generated_message_tctable_impl.h",
"src/src/google/protobuf/generated_message_util.h",
"src/src/google/protobuf/has_bits.h",
"src/src/google/protobuf/implicit_weak_message.h",
"src/src/google/protobuf/inlined_string_field.h",
"src/src/google/protobuf/internal_feature_helper.h",
"src/src/google/protobuf/internal_metadata_locator.h",
"src/src/google/protobuf/internal_visibility.h",
"src/src/google/protobuf/internal_visibility_for_testing.h",
"src/src/google/protobuf/io/coded_stream.h",
"src/src/google/protobuf/io/gzip_stream.h",
"src/src/google/protobuf/io/io_win32.h",
"src/src/google/protobuf/io/package_info.h",
"src/src/google/protobuf/io/printer.h",
"src/src/google/protobuf/io/strtod.h",
"src/src/google/protobuf/io/test_zero_copy_stream.h",
"src/src/google/protobuf/io/tokenizer.h",
"src/src/google/protobuf/io/zero_copy_sink.h",
"src/src/google/protobuf/io/zero_copy_stream.h",
"src/src/google/protobuf/io/zero_copy_stream_impl.h",
"src/src/google/protobuf/io/zero_copy_stream_impl_lite.h",
"src/src/google/protobuf/json/internal/descriptor_traits.h",
"src/src/google/protobuf/json/internal/lexer.h",
"src/src/google/protobuf/json/internal/message_path.h",
"src/src/google/protobuf/json/internal/parser.h",
"src/src/google/protobuf/json/internal/parser_traits.h",
"src/src/google/protobuf/json/internal/unparser.h",
"src/src/google/protobuf/json/internal/unparser_traits.h",
"src/src/google/protobuf/json/internal/untyped_message.h",
"src/src/google/protobuf/json/internal/writer.h",
"src/src/google/protobuf/json/internal/zero_copy_buffered_stream.h",
"src/src/google/protobuf/json/json.h",
"src/src/google/protobuf/map.h",
"src/src/google/protobuf/map_entry.h",
"src/src/google/protobuf/map_field.h",
"src/src/google/protobuf/map_field_lite.h",
"src/src/google/protobuf/map_test.inc",
"src/src/google/protobuf/map_test_util.h",
"src/src/google/protobuf/map_type_handler.h",
"src/src/google/protobuf/message.h",
"src/src/google/protobuf/message_lite.h",
"src/src/google/protobuf/message_unittest.inc",
"src/src/google/protobuf/message_unittest_legacy_apis.inc",
"src/src/google/protobuf/metadata.h",
"src/src/google/protobuf/metadata_lite.h",
"src/src/google/protobuf/micro_string.h",
"src/src/google/protobuf/os_macros_restore.inc",
"src/src/google/protobuf/os_macros_undef.inc",
"src/src/google/protobuf/package_info.h",
"src/src/google/protobuf/parse_context.h",
"src/src/google/protobuf/port.h",
"src/src/google/protobuf/port_def.inc",
"src/src/google/protobuf/port_undef.inc",
"src/src/google/protobuf/proto3_lite_unittest.inc",
"src/src/google/protobuf/raw_ptr.h",
"src/src/google/protobuf/reflection.h",
"src/src/google/protobuf/reflection_internal.h",
"src/src/google/protobuf/reflection_mode.h",
"src/src/google/protobuf/reflection_ops.h",
"src/src/google/protobuf/reflection_tester.h",
"src/src/google/protobuf/reflection_visit_field_info.h",
"src/src/google/protobuf/reflection_visit_fields.h",
"src/src/google/protobuf/repeated_field.h",
"src/src/google/protobuf/repeated_field_proxy.h",
"src/src/google/protobuf/repeated_field_proxy_iterator.h",
"src/src/google/protobuf/repeated_field_proxy_traits.h",
"src/src/google/protobuf/repeated_field_reflection_unittest.inc",
"src/src/google/protobuf/repeated_ptr_field.h",
"src/src/google/protobuf/runtime_version.h",
"src/src/google/protobuf/serial_arena.h",
"src/src/google/protobuf/service.h",
"src/src/google/protobuf/source_context.pb.h",
"src/src/google/protobuf/string_block.h",
"src/src/google/protobuf/string_member_robber.h",
"src/src/google/protobuf/struct.pb.h",
"src/src/google/protobuf/stubs/callback.h",
"src/src/google/protobuf/stubs/common.h",
"src/src/google/protobuf/stubs/platform_macros.h",
"src/src/google/protobuf/stubs/port.h",
"src/src/google/protobuf/stubs/status_macros.h",
"src/src/google/protobuf/symbol_checker.h",
"src/src/google/protobuf/test_textproto.h",
"src/src/google/protobuf/test_util.h",
"src/src/google/protobuf/test_util2.h",
"src/src/google/protobuf/test_util_lite.h",
"src/src/google/protobuf/text_format.h",
"src/src/google/protobuf/thread_safe_arena.h",
"src/src/google/protobuf/timestamp.pb.h",
"src/src/google/protobuf/type.pb.h",
"src/src/google/protobuf/unknown_field_set.h",
"src/src/google/protobuf/unredacted_debug_format_for_test.h",
"src/src/google/protobuf/util/delimited_message_util.h",
"src/src/google/protobuf/util/field_comparator.h",
"src/src/google/protobuf/util/field_mask_util.h",
"src/src/google/protobuf/util/internal_timeval.h",
"src/src/google/protobuf/util/json_util.h",
"src/src/google/protobuf/util/message_differencer.h",
"src/src/google/protobuf/util/package_info.h",
"src/src/google/protobuf/util/python/field_mask_util_clif_aux.h",
"src/src/google/protobuf/util/time_util.h",
"src/src/google/protobuf/util/type_resolver.h",
"src/src/google/protobuf/util/type_resolver_util.h",
"src/src/google/protobuf/varint_shuffle.h",
"src/src/google/protobuf/wire_format.h",
"src/src/google/protobuf/wire_format_lite.h",
"src/src/google/protobuf/wire_format_unittest.h",
"src/src/google/protobuf/wrappers.pb.h",
]
} else {
public = [
"src/src/google/protobuf/any.h",
"src/src/google/protobuf/any.pb.h",
"src/src/google/protobuf/api.pb.h",
"src/src/google/protobuf/arena.h",
"src/src/google/protobuf/arena_align.h",
"src/src/google/protobuf/arena_allocation_policy.h",
"src/src/google/protobuf/arena_cleanup.h",
"src/src/google/protobuf/arena_test_util.h",
"src/src/google/protobuf/arenastring.h",
"src/src/google/protobuf/arenaz_sampler.h",
"src/src/google/protobuf/cpp_edition_defaults.h",
"src/src/google/protobuf/cpp_features.pb.h",
"src/src/google/protobuf/descriptor.h",
"src/src/google/protobuf/descriptor.pb.h",
"src/src/google/protobuf/descriptor_database.h",
"src/src/google/protobuf/descriptor_legacy.h",
"src/src/google/protobuf/descriptor_lite.h",
"src/src/google/protobuf/descriptor_visitor.h",
"src/src/google/protobuf/duration.pb.h",
"src/src/google/protobuf/dynamic_message.h",
"src/src/google/protobuf/empty.pb.h",
"src/src/google/protobuf/endian.h",
"src/src/google/protobuf/explicitly_constructed.h",
"src/src/google/protobuf/extension_set.h",
"src/src/google/protobuf/extension_set_inl.h",
"src/src/google/protobuf/feature_resolver.h",
"src/src/google/protobuf/field_access_listener.h",
"src/src/google/protobuf/field_mask.pb.h",
"src/src/google/protobuf/generated_enum_reflection.h",
"src/src/google/protobuf/generated_enum_util.h",
"src/src/google/protobuf/generated_message_bases.h",
"src/src/google/protobuf/generated_message_reflection.h",
"src/src/google/protobuf/generated_message_tctable_decl.h",
"src/src/google/protobuf/generated_message_tctable_gen.h",
"src/src/google/protobuf/generated_message_tctable_impl.h",
"src/src/google/protobuf/generated_message_util.h",
"src/src/google/protobuf/has_bits.h",
"src/src/google/protobuf/implicit_weak_message.h",
"src/src/google/protobuf/inlined_string_field.h",
"src/src/google/protobuf/internal_visibility.h",
"src/src/google/protobuf/internal_visibility_for_testing.h",
"src/src/google/protobuf/io/coded_stream.h",
"src/src/google/protobuf/io/gzip_stream.h",
"src/src/google/protobuf/io/io_win32.h",
"src/src/google/protobuf/io/package_info.h",
"src/src/google/protobuf/io/printer.h",
"src/src/google/protobuf/io/strtod.h",
"src/src/google/protobuf/io/test_zero_copy_stream.h",
"src/src/google/protobuf/io/tokenizer.h",
"src/src/google/protobuf/io/zero_copy_sink.h",
"src/src/google/protobuf/io/zero_copy_stream.h",
"src/src/google/protobuf/io/zero_copy_stream_impl.h",
"src/src/google/protobuf/io/zero_copy_stream_impl_lite.h",
"src/src/google/protobuf/json/internal/descriptor_traits.h",
"src/src/google/protobuf/json/internal/lexer.h",
"src/src/google/protobuf/json/internal/message_path.h",
"src/src/google/protobuf/json/internal/parser.h",
"src/src/google/protobuf/json/internal/parser_traits.h",
"src/src/google/protobuf/json/internal/unparser.h",
"src/src/google/protobuf/json/internal/unparser_traits.h",
"src/src/google/protobuf/json/internal/untyped_message.h",
"src/src/google/protobuf/json/internal/writer.h",
"src/src/google/protobuf/json/internal/zero_copy_buffered_stream.h",
"src/src/google/protobuf/json/json.h",
"src/src/google/protobuf/lazy_repeated_field.h",
"src/src/google/protobuf/map.h",
"src/src/google/protobuf/map_entry.h",
"src/src/google/protobuf/map_field.h",
"src/src/google/protobuf/map_field_inl.h",
"src/src/google/protobuf/map_field_lite.h",
"src/src/google/protobuf/map_lite_test_util.h",
"src/src/google/protobuf/map_test.inc",
"src/src/google/protobuf/map_test_util.h",
"src/src/google/protobuf/map_test_util.inc",
"src/src/google/protobuf/map_test_util_impl.h",
"src/src/google/protobuf/map_type_handler.h",
"src/src/google/protobuf/message.h",
"src/src/google/protobuf/message_lite.h",
"src/src/google/protobuf/message_unittest.inc",
"src/src/google/protobuf/message_unittest_legacy_apis.inc",
"src/src/google/protobuf/metadata.h",
"src/src/google/protobuf/metadata_lite.h",
"src/src/google/protobuf/package_info.h",
"src/src/google/protobuf/parse_context.h",
"src/src/google/protobuf/port.h",
"src/src/google/protobuf/port_def.inc",
"src/src/google/protobuf/port_undef.inc",
"src/src/google/protobuf/proto3_lite_unittest.inc",
"src/src/google/protobuf/raw_ptr.h",
"src/src/google/protobuf/reflection.h",
"src/src/google/protobuf/reflection_internal.h",
"src/src/google/protobuf/reflection_mode.h",
"src/src/google/protobuf/reflection_ops.h",
"src/src/google/protobuf/reflection_tester.h",
"src/src/google/protobuf/reflection_visit_field_info.h",
"src/src/google/protobuf/reflection_visit_fields.h",
"src/src/google/protobuf/repeated_field.h",
"src/src/google/protobuf/repeated_field_reflection_unittest.inc",
"src/src/google/protobuf/repeated_ptr_field.h",
"src/src/google/protobuf/runtime_version.h",
"src/src/google/protobuf/serial_arena.h",
"src/src/google/protobuf/service.h",
"src/src/google/protobuf/source_context.pb.h",
"src/src/google/protobuf/string_block.h",
"src/src/google/protobuf/string_member_robber.h",
"src/src/google/protobuf/struct.pb.h",
"src/src/google/protobuf/stubs/callback.h",
"src/src/google/protobuf/stubs/common.h",
"src/src/google/protobuf/stubs/platform_macros.h",
"src/src/google/protobuf/stubs/port.h",
"src/src/google/protobuf/stubs/status_macros.h",
"src/src/google/protobuf/test_textproto.h",
"src/src/google/protobuf/test_util.h",
"src/src/google/protobuf/test_util.inc",
"src/src/google/protobuf/test_util2.h",
"src/src/google/protobuf/test_util_lite.h",
"src/src/google/protobuf/text_format.h",
"src/src/google/protobuf/thread_safe_arena.h",
"src/src/google/protobuf/timestamp.pb.h",
"src/src/google/protobuf/type.pb.h",
"src/src/google/protobuf/unknown_field_set.h",
"src/src/google/protobuf/unredacted_debug_format_for_test.h",
"src/src/google/protobuf/util/delimited_message_util.h",
"src/src/google/protobuf/util/field_comparator.h",
"src/src/google/protobuf/util/field_mask_util.h",
"src/src/google/protobuf/util/json_util.h",
"src/src/google/protobuf/util/message_differencer.h",
"src/src/google/protobuf/util/package_info.h",
"src/src/google/protobuf/util/time_util.h",
"src/src/google/protobuf/util/type_resolver.h",
"src/src/google/protobuf/util/type_resolver_util.h",
"src/src/google/protobuf/varint_shuffle.h",
"src/src/google/protobuf/wire_format.h",
"src/src/google/protobuf/wire_format_lite.h",
"src/src/google/protobuf/wire_format_unittest.inc",
"src/src/google/protobuf/wrappers.pb.h",
]
}
configs += [ ":protobuf_warnings" ]
public_configs = [ ":protobuf_config" ]
deps = [ ":protobuf_lite" ]
}
# Only compile the compiler for the host architecture.
if (current_toolchain == host_toolchain) {
# Only the minimal upb files required to build the protoc compiler.
#
# git ls-files -- ':!*_test.cc' 'upb/port/*.h' 'upb/port/*.inc'
# 'upb/port/*.cc' 'upb/base/*.h' 'upb/base/*.cc' 'upb/mem/*.h' 'upb/mem/*.cc'
# | sed 's/^/"/' | sed 's/$/",/'
static_library("upb") {
if (use_new_protobuf) {
sources = [
"//build/secondary/third_party/protobuf/upb_generator/common.cc",
"src/upb/base/descriptor_constants.h",
"src/upb/base/error_handler.h",
"src/upb/base/internal/endian.h",
"src/upb/base/internal/log2.h",
"src/upb/base/status.c",
"src/upb/base/status.h",
"src/upb/base/string_view.h",
"src/upb/base/upcast.h",
"src/upb/hash/common.c",
"src/upb/hash/common.h",
"src/upb/hash/ext_table.h",
"src/upb/hash/int_table.h",
"src/upb/hash/str_table.h",
"src/upb/lex/atoi.c",
"src/upb/lex/atoi.h",
"src/upb/lex/round_trip.c",
"src/upb/lex/round_trip.h",
"src/upb/lex/strtod.c",
"src/upb/lex/strtod.h",
"src/upb/lex/unicode.c",
"src/upb/lex/unicode.h",
"src/upb/mem/alloc.c",
"src/upb/mem/alloc.h",
"src/upb/mem/arena.c",
"src/upb/mem/arena.h",
"src/upb/mem/internal/arena.h",
"src/upb/message/accessors.c",
"src/upb/message/accessors.h",
"src/upb/message/accessors_split64.h",
"src/upb/message/array.c",
"src/upb/message/array.h",
"src/upb/message/compare.c",
"src/upb/message/compare.h",
"src/upb/message/compat.c",
"src/upb/message/compat.h",
"src/upb/message/copy.c",
"src/upb/message/copy.h",
"src/upb/message/internal/accessors.h",
"src/upb/message/internal/array.h",
"src/upb/message/internal/compare_unknown.c",
"src/upb/message/internal/compare_unknown.h",
"src/upb/message/internal/extension.c",
"src/upb/message/internal/extension.h",
"src/upb/message/internal/iterator.c",
"src/upb/message/internal/iterator.h",
"src/upb/message/internal/map.h",
"src/upb/message/internal/map_entry.h",
"src/upb/message/internal/map_sorter.h",
"src/upb/message/internal/message.c",
"src/upb/message/internal/message.h",
"src/upb/message/internal/types.h",
"src/upb/message/map.c",
"src/upb/message/map.h",
"src/upb/message/map_gencode_util.h",
"src/upb/message/map_sorter.c",
"src/upb/message/merge.c",
"src/upb/message/merge.h",
"src/upb/message/message.c",
"src/upb/message/message.h",
"src/upb/message/promote.c",
"src/upb/message/promote.h",
"src/upb/message/value.h",
"src/upb/mini_descriptor/build_enum.c",
"src/upb/mini_descriptor/build_enum.h",
"src/upb/mini_descriptor/decode.c",
"src/upb/mini_descriptor/decode.h",
"src/upb/mini_descriptor/internal/base92.c",
"src/upb/mini_descriptor/internal/base92.h",
"src/upb/mini_descriptor/internal/decoder.h",
"src/upb/mini_descriptor/internal/encode.c",
"src/upb/mini_descriptor/internal/encode.h",
"src/upb/mini_descriptor/internal/modifiers.h",
"src/upb/mini_descriptor/internal/wire_constants.h",
"src/upb/mini_descriptor/link.c",
"src/upb/mini_descriptor/link.h",
"src/upb/mini_table/compat.c",
"src/upb/mini_table/compat.h",
"src/upb/mini_table/debug_string.c",
"src/upb/mini_table/debug_string.h",
"src/upb/mini_table/enum.h",
"src/upb/mini_table/extension.h",
"src/upb/mini_table/extension_registry.c",
"src/upb/mini_table/extension_registry.h",
"src/upb/mini_table/field.h",
"src/upb/mini_table/file.h",
"src/upb/mini_table/generated_registry.c",
"src/upb/mini_table/generated_registry.h",
"src/upb/mini_table/internal/enum.h",
"src/upb/mini_table/internal/extension.h",
"src/upb/mini_table/internal/field.h",
"src/upb/mini_table/internal/file.h",
"src/upb/mini_table/internal/generated_registry.h",
"src/upb/mini_table/internal/message.c",
"src/upb/mini_table/internal/message.h",
"src/upb/mini_table/internal/size_log2.h",
"src/upb/mini_table/internal/sub.h",
"src/upb/mini_table/message.c",
"src/upb/mini_table/message.h",
"src/upb/mini_table/sub.h",
"src/upb/port/atomic.h",
"src/upb/port/def.inc",
"src/upb/port/sanitizers.h",
"src/upb/port/undef.inc",
"src/upb/port/vsnprintf_compat.h",
"src/upb/reflection/common.h",
"src/upb/reflection/def.h",
"src/upb/reflection/def_pool.c",
"src/upb/reflection/def_pool.h",
"src/upb/reflection/def_type.c",
"src/upb/reflection/def_type.h",
"src/upb/reflection/desc_state.c",
"src/upb/reflection/descriptor_bootstrap.h",
"src/upb/reflection/enum_def.c",
"src/upb/reflection/enum_def.h",
"src/upb/reflection/enum_reserved_range.c",
"src/upb/reflection/enum_reserved_range.h",
"src/upb/reflection/enum_value_def.c",
"src/upb/reflection/enum_value_def.h",
"src/upb/reflection/extension_range.c",
"src/upb/reflection/extension_range.h",
"src/upb/reflection/field_def.c",
"src/upb/reflection/field_def.h",
"src/upb/reflection/file_def.c",
"src/upb/reflection/file_def.h",
"src/upb/reflection/internal/def_builder.c",
"src/upb/reflection/internal/def_builder.h",
"src/upb/reflection/internal/def_pool.h",
"src/upb/reflection/internal/desc_state.h",
"src/upb/reflection/internal/enum_def.h",
"src/upb/reflection/internal/enum_reserved_range.h",
"src/upb/reflection/internal/enum_value_def.h",
"src/upb/reflection/internal/extension_range.h",
"src/upb/reflection/internal/field_def.h",
"src/upb/reflection/internal/file_def.h",
"src/upb/reflection/internal/message_def.h",
"src/upb/reflection/internal/message_reserved_range.h",
"src/upb/reflection/internal/method_def.h",
"src/upb/reflection/internal/oneof_def.h",
"src/upb/reflection/internal/service_def.h",
"src/upb/reflection/internal/strdup2.c",
"src/upb/reflection/internal/strdup2.h",
"src/upb/reflection/internal/upb_edition_defaults.h",
"src/upb/reflection/message.c",
"src/upb/reflection/message.h",
"src/upb/reflection/message_def.c",
"src/upb/reflection/message_def.h",
"src/upb/reflection/message_reserved_range.c",
"src/upb/reflection/message_reserved_range.h",
"src/upb/reflection/method_def.c",
"src/upb/reflection/method_def.h",
"src/upb/reflection/oneof_def.c",
"src/upb/reflection/oneof_def.h",
"src/upb/reflection/service_def.c",
"src/upb/reflection/service_def.h",
"src/upb/reflection/stage0/google/protobuf/descriptor.upb.c",
"src/upb/reflection/stage0/google/protobuf/descriptor.upb.h",
"src/upb/wire/byte_size.c",
"src/upb/wire/byte_size.h",
"src/upb/wire/decode.c",
"src/upb/wire/decode.h",
"src/upb/wire/decode_fast/cardinality.c",
"src/upb/wire/decode_fast/cardinality.h",
"src/upb/wire/decode_fast/combinations.h",
"src/upb/wire/decode_fast/data.h",
"src/upb/wire/decode_fast/dispatch.c",
"src/upb/wire/decode_fast/dispatch.h",
"src/upb/wire/decode_fast/field_fixed.c",
"src/upb/wire/decode_fast/field_message.c",
"src/upb/wire/decode_fast/field_parsers.h",
"src/upb/wire/decode_fast/field_string.c",
"src/upb/wire/decode_fast/field_varint.c",
"src/upb/wire/decode_fast/function_array.c",
"src/upb/wire/decode_fast/function_array.h",
"src/upb/wire/decode_fast/select.c",
"src/upb/wire/decode_fast/select.h",
"src/upb/wire/encode.c",
"src/upb/wire/encode.h",
"src/upb/wire/eps_copy_input_stream.c",
"src/upb/wire/eps_copy_input_stream.h",
"src/upb/wire/internal/constants.h",
"src/upb/wire/internal/decoder.c",
"src/upb/wire/internal/decoder.h",
"src/upb/wire/internal/eps_copy_input_stream.h",
"src/upb/wire/internal/reader.h",
"src/upb/wire/reader.c",
"src/upb/wire/reader.h",
"src/upb/wire/types.h",
"src/upb/wire/writer.h",
]
public_configs = [ ":upb_bootstrap_config" ]
} else {
sources = [
"//build/secondary/third_party/protobuf/upb_generator/common.cc",
"src/upb/base/descriptor_constants.h",
"src/upb/base/internal/endian.h",
"src/upb/base/internal/log2.h",
"src/upb/base/status.h",
"src/upb/base/string_view.h",
"src/upb/base/upcast.h",
"src/upb/mem/alloc.h",
"src/upb/mem/arena.h",
"src/upb/mem/internal/arena.h",
"src/upb/port/atomic.h",
"src/upb/port/def.inc",
"src/upb/port/undef.inc",
"src/upb/port/vsnprintf_compat.h",
]
}
include_dirs = [ "//third_party/protobuf/src" ]
configs += [
":protobuf_config",
":protobuf_warnings",
]
deps = [ "//third_party/abseil-cpp" ]
}
# protoc compiler is separated into protoc library and executable targets to
# support protoc plugins that need to link libprotoc, but not the main()
# itself. See src/google/protobuf/compiler/plugin.h
#
# git ls-files -- ':!*/main.cc' ':!*test*' ':!*mock*'
# ':!src/google/protobuf/compiler/cpp/tools/*'
# 'src/google/protobuf/compiler/*.cc' | sed 's/^/"/' | sed 's/$/",/'
static_library("protoc_lib") {
visibility += [
"//third_party/grpc:*",
"//third_party/perfetto/gn:*",
]
if (use_new_protobuf) {
sources = [
"src/src/google/protobuf/compiler/code_generator.cc",
"src/src/google/protobuf/compiler/code_generator_lite.cc",
"src/src/google/protobuf/compiler/command_line_interface.cc",
"src/src/google/protobuf/compiler/cpp/enum.cc",
"src/src/google/protobuf/compiler/cpp/extension.cc",
"src/src/google/protobuf/compiler/cpp/field.cc",
"src/src/google/protobuf/compiler/cpp/field_chunk.cc",
"src/src/google/protobuf/compiler/cpp/field_generators/cord_field.cc",
"src/src/google/protobuf/compiler/cpp/field_generators/enum_field.cc",
"src/src/google/protobuf/compiler/cpp/field_generators/map_field.cc",
"src/src/google/protobuf/compiler/cpp/field_generators/message_field.cc",
"src/src/google/protobuf/compiler/cpp/field_generators/primitive_field.cc",
"src/src/google/protobuf/compiler/cpp/field_generators/string_field.cc",
"src/src/google/protobuf/compiler/cpp/field_generators/string_view_field.cc",
"src/src/google/protobuf/compiler/cpp/file.cc",
"src/src/google/protobuf/compiler/cpp/generator.cc",
"src/src/google/protobuf/compiler/cpp/helpers.cc",
"src/src/google/protobuf/compiler/cpp/ifndef_guard.cc",
"src/src/google/protobuf/compiler/cpp/message.cc",
"src/src/google/protobuf/compiler/cpp/message_layout_helper.cc",
"src/src/google/protobuf/compiler/cpp/namespace_printer.cc",
"src/src/google/protobuf/compiler/cpp/parse_function_generator.cc",
"src/src/google/protobuf/compiler/cpp/service.cc",
"src/src/google/protobuf/compiler/cpp/tracker.cc",
"src/src/google/protobuf/compiler/csharp/csharp_doc_comment.cc",
"src/src/google/protobuf/compiler/csharp/csharp_enum.cc",
"src/src/google/protobuf/compiler/csharp/csharp_enum_field.cc",
"src/src/google/protobuf/compiler/csharp/csharp_field_base.cc",
"src/src/google/protobuf/compiler/csharp/csharp_generator.cc",
"src/src/google/protobuf/compiler/csharp/csharp_helpers.cc",
"src/src/google/protobuf/compiler/csharp/csharp_map_field.cc",
"src/src/google/protobuf/compiler/csharp/csharp_message.cc",
"src/src/google/protobuf/compiler/csharp/csharp_message_field.cc",
"src/src/google/protobuf/compiler/csharp/csharp_primitive_field.cc",
"src/src/google/protobuf/compiler/csharp/csharp_reflection_class.cc",
"src/src/google/protobuf/compiler/csharp/csharp_repeated_enum_field.cc",
"src/src/google/protobuf/compiler/csharp/csharp_repeated_message_field.cc",
"src/src/google/protobuf/compiler/csharp/csharp_repeated_primitive_field.cc",
"src/src/google/protobuf/compiler/csharp/csharp_source_generator_base.cc",
"src/src/google/protobuf/compiler/csharp/csharp_wrapper_field.cc",
"src/src/google/protobuf/compiler/csharp/names.cc",
"src/src/google/protobuf/compiler/fake_plugin.cc",
"src/src/google/protobuf/compiler/importer.cc",
"src/src/google/protobuf/compiler/java/context.cc",
"src/src/google/protobuf/compiler/java/doc_comment.cc",
"src/src/google/protobuf/compiler/java/field_common.cc",
"src/src/google/protobuf/compiler/java/file.cc",
"src/src/google/protobuf/compiler/java/full/enum.cc",
"src/src/google/protobuf/compiler/java/full/enum_field.cc",
"src/src/google/protobuf/compiler/java/full/extension.cc",
"src/src/google/protobuf/compiler/java/full/generator_factory.cc",
"src/src/google/protobuf/compiler/java/full/make_field_gens.cc",
"src/src/google/protobuf/compiler/java/full/map_field.cc",
"src/src/google/protobuf/compiler/java/full/message.cc",
"src/src/google/protobuf/compiler/java/full/message_builder.cc",
"src/src/google/protobuf/compiler/java/full/message_field.cc",
"src/src/google/protobuf/compiler/java/full/primitive_field.cc",
"src/src/google/protobuf/compiler/java/full/service.cc",
"src/src/google/protobuf/compiler/java/full/string_field.cc",
"src/src/google/protobuf/compiler/java/generator.cc",
"src/src/google/protobuf/compiler/java/helpers.cc",
"src/src/google/protobuf/compiler/java/internal_helpers.cc",
"src/src/google/protobuf/compiler/java/java_features.pb.cc",
"src/src/google/protobuf/compiler/java/lite/enum.cc",
"src/src/google/protobuf/compiler/java/lite/enum_field.cc",
"src/src/google/protobuf/compiler/java/lite/extension.cc",
"src/src/google/protobuf/compiler/java/lite/generator_factory.cc",
"src/src/google/protobuf/compiler/java/lite/make_field_gens.cc",
"src/src/google/protobuf/compiler/java/lite/map_field.cc",
"src/src/google/protobuf/compiler/java/lite/message.cc",
"src/src/google/protobuf/compiler/java/lite/message_builder.cc",
"src/src/google/protobuf/compiler/java/lite/message_field.cc",
"src/src/google/protobuf/compiler/java/lite/primitive_field.cc",
"src/src/google/protobuf/compiler/java/lite/string_field.cc",
"src/src/google/protobuf/compiler/java/message_serialization.cc",
"src/src/google/protobuf/compiler/java/name_resolver.cc",
"src/src/google/protobuf/compiler/java/names.cc",
"src/src/google/protobuf/compiler/java/plugin_main.cc",
"src/src/google/protobuf/compiler/java/shared_code_generator.cc",
"src/src/google/protobuf/compiler/kotlin/field.cc",
"src/src/google/protobuf/compiler/kotlin/file.cc",
"src/src/google/protobuf/compiler/kotlin/generator.cc",
"src/src/google/protobuf/compiler/kotlin/message.cc",
"src/src/google/protobuf/compiler/main_no_generators.cc",
"src/src/google/protobuf/compiler/objectivec/enum.cc",
"src/src/google/protobuf/compiler/objectivec/enum_field.cc",
"src/src/google/protobuf/compiler/objectivec/extension.cc",
"src/src/google/protobuf/compiler/objectivec/field.cc",
"src/src/google/protobuf/compiler/objectivec/file.cc",
"src/src/google/protobuf/compiler/objectivec/generator.cc",
"src/src/google/protobuf/compiler/objectivec/helpers.cc",
"src/src/google/protobuf/compiler/objectivec/import_writer.cc",
"src/src/google/protobuf/compiler/objectivec/line_consumer.cc",
"src/src/google/protobuf/compiler/objectivec/map_field.cc",
"src/src/google/protobuf/compiler/objectivec/message.cc",
"src/src/google/protobuf/compiler/objectivec/message_field.cc",
"src/src/google/protobuf/compiler/objectivec/names.cc",
"src/src/google/protobuf/compiler/objectivec/oneof.cc",
"src/src/google/protobuf/compiler/objectivec/primitive_field.cc",
"src/src/google/protobuf/compiler/objectivec/tf_decode_data.cc",
"src/src/google/protobuf/compiler/parser.cc",
"src/src/google/protobuf/compiler/php/names.cc",
"src/src/google/protobuf/compiler/php/php_generator.cc",
"src/src/google/protobuf/compiler/plugin.cc",
"src/src/google/protobuf/compiler/plugin.pb.cc",
"src/src/google/protobuf/compiler/python/generator.cc",
"src/src/google/protobuf/compiler/python/helpers.cc",
"src/src/google/protobuf/compiler/python/plugin_main.cc",
"src/src/google/protobuf/compiler/python/pyi_generator.cc",
"src/src/google/protobuf/compiler/retention.cc",
"src/src/google/protobuf/compiler/ruby/rbs_generator.cc",
"src/src/google/protobuf/compiler/ruby/ruby_generator.cc",
"src/src/google/protobuf/compiler/rust/accessors/accessor_case.cc",
"src/src/google/protobuf/compiler/rust/accessors/accessors.cc",
"src/src/google/protobuf/compiler/rust/accessors/default_value.cc",
"src/src/google/protobuf/compiler/rust/accessors/map.cc",
"src/src/google/protobuf/compiler/rust/accessors/repeated_field.cc",
"src/src/google/protobuf/compiler/rust/accessors/singular_cord.cc",
"src/src/google/protobuf/compiler/rust/accessors/singular_message.cc",
"src/src/google/protobuf/compiler/rust/accessors/singular_scalar.cc",
"src/src/google/protobuf/compiler/rust/accessors/singular_string.cc",
"src/src/google/protobuf/compiler/rust/accessors/unsupported_field.cc",
"src/src/google/protobuf/compiler/rust/accessors/with_presence.cc",
"src/src/google/protobuf/compiler/rust/context.cc",
"src/src/google/protobuf/compiler/rust/crate_mapping.cc",
"src/src/google/protobuf/compiler/rust/enum.cc",
"src/src/google/protobuf/compiler/rust/extension.cc",
"src/src/google/protobuf/compiler/rust/generator.cc",
"src/src/google/protobuf/compiler/rust/message.cc",
"src/src/google/protobuf/compiler/rust/naming.cc",
"src/src/google/protobuf/compiler/rust/oneof.cc",
"src/src/google/protobuf/compiler/rust/relative_path.cc",
"src/src/google/protobuf/compiler/rust/rust_field_type.cc",
"src/src/google/protobuf/compiler/rust/rust_keywords.cc",
"src/src/google/protobuf/compiler/rust/upb_helpers.cc",
"src/src/google/protobuf/compiler/subprocess.cc",
"src/src/google/protobuf/compiler/versions.cc",
"src/src/google/protobuf/compiler/zip_writer.cc",
"src/src/google/protobuf/testing/file.cc",
]
} else {
sources = [
"src/src/google/protobuf/compiler/code_generator.cc",
"src/src/google/protobuf/compiler/code_generator_lite.cc",
"src/src/google/protobuf/compiler/command_line_interface.cc",
"src/src/google/protobuf/compiler/cpp/enum.cc",
"src/src/google/protobuf/compiler/cpp/extension.cc",
"src/src/google/protobuf/compiler/cpp/field.cc",
"src/src/google/protobuf/compiler/cpp/field_generators/cord_field.cc",
"src/src/google/protobuf/compiler/cpp/field_generators/enum_field.cc",
"src/src/google/protobuf/compiler/cpp/field_generators/map_field.cc",
"src/src/google/protobuf/compiler/cpp/field_generators/message_field.cc",
"src/src/google/protobuf/compiler/cpp/field_generators/primitive_field.cc",
"src/src/google/protobuf/compiler/cpp/field_generators/string_field.cc",
"src/src/google/protobuf/compiler/cpp/field_generators/string_view_field.cc",
"src/src/google/protobuf/compiler/cpp/file.cc",
"src/src/google/protobuf/compiler/cpp/generator.cc",
"src/src/google/protobuf/compiler/cpp/helpers.cc",
"src/src/google/protobuf/compiler/cpp/ifndef_guard.cc",
"src/src/google/protobuf/compiler/cpp/message.cc",
"src/src/google/protobuf/compiler/cpp/namespace_printer.cc",
"src/src/google/protobuf/compiler/cpp/padding_optimizer.cc",
"src/src/google/protobuf/compiler/cpp/parse_function_generator.cc",
"src/src/google/protobuf/compiler/cpp/service.cc",
"src/src/google/protobuf/compiler/cpp/tracker.cc",
"src/src/google/protobuf/compiler/csharp/csharp_doc_comment.cc",
"src/src/google/protobuf/compiler/csharp/csharp_enum.cc",
"src/src/google/protobuf/compiler/csharp/csharp_enum_field.cc",
"src/src/google/protobuf/compiler/csharp/csharp_field_base.cc",
"src/src/google/protobuf/compiler/csharp/csharp_generator.cc",
"src/src/google/protobuf/compiler/csharp/csharp_helpers.cc",
"src/src/google/protobuf/compiler/csharp/csharp_map_field.cc",
"src/src/google/protobuf/compiler/csharp/csharp_message.cc",
"src/src/google/protobuf/compiler/csharp/csharp_message_field.cc",
"src/src/google/protobuf/compiler/csharp/csharp_primitive_field.cc",
"src/src/google/protobuf/compiler/csharp/csharp_reflection_class.cc",
"src/src/google/protobuf/compiler/csharp/csharp_repeated_enum_field.cc",
"src/src/google/protobuf/compiler/csharp/csharp_repeated_message_field.cc",
"src/src/google/protobuf/compiler/csharp/csharp_repeated_primitive_field.cc",
"src/src/google/protobuf/compiler/csharp/csharp_source_generator_base.cc",
"src/src/google/protobuf/compiler/csharp/csharp_wrapper_field.cc",
"src/src/google/protobuf/compiler/csharp/names.cc",
"src/src/google/protobuf/compiler/fake_plugin.cc",
"src/src/google/protobuf/compiler/importer.cc",
"src/src/google/protobuf/compiler/java/context.cc",
"src/src/google/protobuf/compiler/java/doc_comment.cc",
"src/src/google/protobuf/compiler/java/field_common.cc",
"src/src/google/protobuf/compiler/java/file.cc",
"src/src/google/protobuf/compiler/java/full/enum.cc",
"src/src/google/protobuf/compiler/java/full/enum_field.cc",
"src/src/google/protobuf/compiler/java/full/extension.cc",
"src/src/google/protobuf/compiler/java/full/generator_factory.cc",
"src/src/google/protobuf/compiler/java/full/make_field_gens.cc",
"src/src/google/protobuf/compiler/java/full/map_field.cc",
"src/src/google/protobuf/compiler/java/full/message.cc",
"src/src/google/protobuf/compiler/java/full/message_builder.cc",
"src/src/google/protobuf/compiler/java/full/message_field.cc",
"src/src/google/protobuf/compiler/java/full/primitive_field.cc",
"src/src/google/protobuf/compiler/java/full/service.cc",
"src/src/google/protobuf/compiler/java/full/string_field.cc",
"src/src/google/protobuf/compiler/java/generator.cc",
"src/src/google/protobuf/compiler/java/helpers.cc",
"src/src/google/protobuf/compiler/java/internal_helpers.cc",
"src/src/google/protobuf/compiler/java/java_features.pb.cc",
"src/src/google/protobuf/compiler/java/lite/enum.cc",
"src/src/google/protobuf/compiler/java/lite/enum_field.cc",
"src/src/google/protobuf/compiler/java/lite/extension.cc",
"src/src/google/protobuf/compiler/java/lite/generator_factory.cc",
"src/src/google/protobuf/compiler/java/lite/make_field_gens.cc",
"src/src/google/protobuf/compiler/java/lite/map_field.cc",
"src/src/google/protobuf/compiler/java/lite/message.cc",
"src/src/google/protobuf/compiler/java/lite/message_builder.cc",
"src/src/google/protobuf/compiler/java/lite/message_field.cc",
"src/src/google/protobuf/compiler/java/lite/primitive_field.cc",
"src/src/google/protobuf/compiler/java/lite/string_field.cc",
"src/src/google/protobuf/compiler/java/message_serialization.cc",
"src/src/google/protobuf/compiler/java/name_resolver.cc",
"src/src/google/protobuf/compiler/java/names.cc",
"src/src/google/protobuf/compiler/java/plugin_main.cc",
"src/src/google/protobuf/compiler/java/shared_code_generator.cc",
"src/src/google/protobuf/compiler/kotlin/file.cc",
"src/src/google/protobuf/compiler/kotlin/generator.cc",
"src/src/google/protobuf/compiler/kotlin/message.cc",
"src/src/google/protobuf/compiler/main_no_generators.cc",
"src/src/google/protobuf/compiler/objectivec/enum.cc",
"src/src/google/protobuf/compiler/objectivec/enum_field.cc",
"src/src/google/protobuf/compiler/objectivec/extension.cc",
"src/src/google/protobuf/compiler/objectivec/field.cc",
"src/src/google/protobuf/compiler/objectivec/file.cc",
"src/src/google/protobuf/compiler/objectivec/generator.cc",
"src/src/google/protobuf/compiler/objectivec/helpers.cc",
"src/src/google/protobuf/compiler/objectivec/import_writer.cc",
"src/src/google/protobuf/compiler/objectivec/line_consumer.cc",
"src/src/google/protobuf/compiler/objectivec/map_field.cc",
"src/src/google/protobuf/compiler/objectivec/message.cc",
"src/src/google/protobuf/compiler/objectivec/message_field.cc",
"src/src/google/protobuf/compiler/objectivec/names.cc",
"src/src/google/protobuf/compiler/objectivec/oneof.cc",
"src/src/google/protobuf/compiler/objectivec/primitive_field.cc",
"src/src/google/protobuf/compiler/objectivec/tf_decode_data.cc",
"src/src/google/protobuf/compiler/parser.cc",
"src/src/google/protobuf/compiler/php/names.cc",
"src/src/google/protobuf/compiler/php/php_generator.cc",
"src/src/google/protobuf/compiler/plugin.cc",
"src/src/google/protobuf/compiler/plugin.pb.cc",
"src/src/google/protobuf/compiler/python/generator.cc",
"src/src/google/protobuf/compiler/python/helpers.cc",
"src/src/google/protobuf/compiler/python/plugin_main.cc",
"src/src/google/protobuf/compiler/python/pyi_generator.cc",
"src/src/google/protobuf/compiler/retention.cc",
"src/src/google/protobuf/compiler/ruby/ruby_generator.cc",
"src/src/google/protobuf/compiler/rust/accessors/accessor_case.cc",
"src/src/google/protobuf/compiler/rust/accessors/accessors.cc",
"src/src/google/protobuf/compiler/rust/accessors/default_value.cc",
"src/src/google/protobuf/compiler/rust/accessors/map.cc",
"src/src/google/protobuf/compiler/rust/accessors/repeated_field.cc",
"src/src/google/protobuf/compiler/rust/accessors/singular_cord.cc",
"src/src/google/protobuf/compiler/rust/accessors/singular_message.cc",
"src/src/google/protobuf/compiler/rust/accessors/singular_scalar.cc",
"src/src/google/protobuf/compiler/rust/accessors/singular_string.cc",
"src/src/google/protobuf/compiler/rust/accessors/unsupported_field.cc",
"src/src/google/protobuf/compiler/rust/accessors/with_presence.cc",
"src/src/google/protobuf/compiler/rust/context.cc",
"src/src/google/protobuf/compiler/rust/crate_mapping.cc",
"src/src/google/protobuf/compiler/rust/enum.cc",
"src/src/google/protobuf/compiler/rust/generator.cc",
"src/src/google/protobuf/compiler/rust/message.cc",
"src/src/google/protobuf/compiler/rust/naming.cc",
"src/src/google/protobuf/compiler/rust/oneof.cc",
"src/src/google/protobuf/compiler/rust/relative_path.cc",
"src/src/google/protobuf/compiler/rust/rust_field_type.cc",
"src/src/google/protobuf/compiler/rust/rust_keywords.cc",
"src/src/google/protobuf/compiler/rust/upb_helpers.cc",
"src/src/google/protobuf/compiler/subprocess.cc",
"src/src/google/protobuf/compiler/versions.cc",
"src/src/google/protobuf/compiler/zip_writer.cc",
"src/src/google/protobuf/testing/file.cc",
]
}
include_dirs = [ "//third_party/protobuf/src" ]
configs += [ ":protobuf_warnings" ]
public_deps = [
":protobuf_full",
":upb",
]
}
executable("protoc") {
visibility += visibility_protoc
sources = [ "src/src/google/protobuf/compiler/main.cc" ]
deps = [ ":protoc_lib" ]
}
} else {
group("protoc") {
visibility += visibility_protoc
deps = [ ":protoc($host_toolchain)" ]
}
}