# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

config("protobuf_config") {
  include_dirs = [ "src" ]
  defines = [
    "GOOGLE_PROTOBUF_NO_RTTI",
    "GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER",
  ]
  if (!is_win) {
    defines += [ "HAVE_PTHREAD" ]
  }

  if (is_starboard) {
    if (is_clang) {
      cflags = [
        # protobuf-3 contains a few functions that are unused.
        "-Wno-unused-function",
        # protobuf-3 mixes generated enum types.
        "-Wno-enum-compare-switch",
        # Used by older version of clang.
        "-Wno-enum-compare",
        # Older version of clang don't have -Wno-enum-compare-switch
        "-Wno-unknown-warning-option",
      ]
    }
  }
}

config("protobuf_warnings") {
  cflags = []
  if (is_clang) {
    # protobuf-3 contains a few functions that are unused.
    cflags += [ "-Wno-unused-function" ]
  }
}

if (is_component_build) {
  config("protobuf_use_dlls") {
    defines = [ "PROTOBUF_USE_DLLS" ]
  }
}

# This config should be applied to targets using generated code from the proto
# compiler. It sets up the include directories properly.
config("using_proto") {
  include_dirs = [
    "src",
    "$root_gen_dir/protoc_out",
  ]
}

protobuf_lite_sources = [
  "src/google/protobuf/arena.cc",
  "src/google/protobuf/arena.h",
  "src/google/protobuf/arenastring.cc",
  "src/google/protobuf/arenastring.h",
  "src/google/protobuf/extension_set.cc",
  "src/google/protobuf/extension_set.h",
  "src/google/protobuf/generated_message_util.cc",
  "src/google/protobuf/generated_message_util.h",
  "src/google/protobuf/io/coded_stream.cc",
  "src/google/protobuf/io/coded_stream.h",
  "src/google/protobuf/io/coded_stream_inl.h",
  "src/google/protobuf/io/zero_copy_stream.cc",
  "src/google/protobuf/io/zero_copy_stream.h",
  "src/google/protobuf/io/zero_copy_stream_impl_lite.cc",
  "src/google/protobuf/io/zero_copy_stream_impl_lite.h",
  "src/google/protobuf/map.h",
  "src/google/protobuf/map_entry_lite.h",
  "src/google/protobuf/map_field_lite.h",
  "src/google/protobuf/map_type_handler.h",
  "src/google/protobuf/message_lite.cc",
  "src/google/protobuf/message_lite.h",
  "src/google/protobuf/repeated_field.cc",
  "src/google/protobuf/repeated_field.h",
  "src/google/protobuf/stubs/atomicops.h",
  "src/google/protobuf/stubs/atomicops_internals_arm64_gcc.h",
  "src/google/protobuf/stubs/atomicops_internals_arm_gcc.h",
  "src/google/protobuf/stubs/atomicops_internals_arm_qnx.h",
  "src/google/protobuf/stubs/atomicops_internals_atomicword_compat.h",
  "src/google/protobuf/stubs/atomicops_internals_generic_gcc.h",
  "src/google/protobuf/stubs/atomicops_internals_macosx.h",
  "src/google/protobuf/stubs/atomicops_internals_mips_gcc.h",
  "src/google/protobuf/stubs/atomicops_internals_pnacl.h",
  "src/google/protobuf/stubs/atomicops_internals_power.h",
  "src/google/protobuf/stubs/atomicops_internals_ppc_gcc.h",
  "src/google/protobuf/stubs/atomicops_internals_solaris.h",
  "src/google/protobuf/stubs/atomicops_internals_tsan.h",
  "src/google/protobuf/stubs/atomicops_internals_x86_gcc.cc",
  "src/google/protobuf/stubs/atomicops_internals_x86_gcc.h",
  "src/google/protobuf/stubs/atomicops_internals_x86_msvc.cc",
  "src/google/protobuf/stubs/atomicops_internals_x86_msvc.h",
  "src/google/protobuf/stubs/atomic_sequence_num.h",
  "src/google/protobuf/stubs/bytestream.cc",
  "src/google/protobuf/stubs/bytestream.h",
  "src/google/protobuf/stubs/callback.h",
  "src/google/protobuf/stubs/casts.h",
  "src/google/protobuf/stubs/common.cc",
  "src/google/protobuf/stubs/common.h",
  "src/google/protobuf/stubs/fastmem.h",
  "src/google/protobuf/stubs/hash.h",
  "src/google/protobuf/stubs/int128.cc",
  "src/google/protobuf/stubs/int128.h",
  "src/google/protobuf/stubs/logging.h",
  "src/google/protobuf/stubs/macros.h",
  "src/google/protobuf/stubs/map_util.h",
  "src/google/protobuf/stubs/mutex.h",
  "src/google/protobuf/stubs/once.cc",
  "src/google/protobuf/stubs/once.h",
  "src/google/protobuf/stubs/platform_macros.h",
  "src/google/protobuf/stubs/port.h",
  "src/google/protobuf/stubs/scoped_ptr.h",
  "src/google/protobuf/stubs/shared_ptr.h",
  "src/google/protobuf/stubs/status.cc",
  "src/google/protobuf/stubs/status.h",
  "src/google/protobuf/stubs/status_macros.h",
  "src/google/protobuf/stubs/statusor.cc",
  "src/google/protobuf/stubs/statusor.h",
  "src/google/protobuf/stubs/stl_util.h",
  "src/google/protobuf/stubs/stringpiece.cc",
  "src/google/protobuf/stubs/stringpiece.h",
  "src/google/protobuf/stubs/stringprintf.cc",
  "src/google/protobuf/stubs/stringprintf.h",
  "src/google/protobuf/stubs/structurally_valid.cc",
  "src/google/protobuf/stubs/strutil.cc",
  "src/google/protobuf/stubs/strutil.h",
  "src/google/protobuf/stubs/template_util.h",
  "src/google/protobuf/stubs/type_traits.h",
  "src/google/protobuf/stubs/time.cc",
  "src/google/protobuf/stubs/time.h",
  "src/google/protobuf/wire_format_lite.cc",
  "src/google/protobuf/wire_format_lite.h",
  "src/google/protobuf/wire_format_lite_inl.h",
]

protobuf_lite_cflags = []
if (is_win) {
  protobuf_lite_cflags = [
    "/wd4018",  # signed/unsigned mismatch in comparison
    "/wd4065",  # switch statement contains 'default' but no 'case' labels
    "/wd4146",  # unary minus operator applied to unsigned type
    "/wd4244",  # implicit conversion, possible loss of data
    "/wd4267",  # size_t to int truncation
    "/wd4291",  # no matching operator delete for a placement new.
    "/wd4305",  # double to float truncation
    "/wd4355",  # 'this' used in base member initializer list
    "/wd4506",  # no definition for inline function (protobuf issue #240)
    "/wd4715",  # not all control paths return a value (fixed in trunk)
  ]
}

component("protobuf_lite") {
  sources = protobuf_lite_sources

  if (is_starboard) {
    deps = [ "//starboard/common" ]
  } else if (!is_native_target_build) {
    configs -= [ "//build/config/compiler:chromium_code" ]
  }
  configs += [
    "//build/config/compiler:no_chromium_code",

    # Must be after no_chromium_code for warning flags to be ordered
    # correctly.
    ":protobuf_warnings",
  ]

  if (is_win) {
    configs -= [ "//build/config/win:lean_and_mean" ]
  }

  public_configs = [
    ":protobuf_config",

    # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
    "//build/config/compiler:no_size_t_to_int_warning",
  ]

  if (use_cobalt_customizations) {
    public_configs -= [ ":protobuf_config" ]
    all_dependent_configs = [ ":protobuf_config" ]
  } else {
    deps = [
      "//build/config/sanitizers:deps",
    ]
  }

  cflags = protobuf_lite_cflags

  # Required for component builds. See http://crbug.com/172800.
  if (is_component_build) {
    public_configs += [ ":protobuf_use_dlls" ]
    defines = [ "LIBPROTOBUF_EXPORTS" ]
  }
}

# Only compile the compiler for the host architecture.
if (current_toolchain == host_toolchain) {
  # 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. Do not use in Chrome code.
  static_library("protobuf_full") {
    # Prevent people from depending on this outside our file.
    visibility = [ ":*" ]

    sources = protobuf_lite_sources
    sources += [
      "src/google/protobuf/any.cc",
      "src/google/protobuf/any.h",
      "src/google/protobuf/any.pb.cc",
      "src/google/protobuf/any.pb.h",
      "src/google/protobuf/api.pb.cc",
      "src/google/protobuf/api.pb.h",
      "src/google/protobuf/compiler/importer.cc",
      "src/google/protobuf/compiler/importer.h",
      "src/google/protobuf/compiler/parser.cc",
      "src/google/protobuf/compiler/parser.h",
      "src/google/protobuf/descriptor.cc",
      "src/google/protobuf/descriptor.h",
      "src/google/protobuf/descriptor.pb.cc",
      "src/google/protobuf/descriptor.pb.h",
      "src/google/protobuf/descriptor_database.cc",
      "src/google/protobuf/descriptor_database.h",
      "src/google/protobuf/duration.pb.cc",
      "src/google/protobuf/duration.pb.h",
      "src/google/protobuf/dynamic_message.cc",
      "src/google/protobuf/dynamic_message.h",
      "src/google/protobuf/empty.pb.cc",
      "src/google/protobuf/empty.pb.h",
      "src/google/protobuf/extension_set_heavy.cc",
      "src/google/protobuf/field_mask.pb.cc",
      "src/google/protobuf/field_mask.pb.h",
      "src/google/protobuf/generated_enum_reflection.h",
      "src/google/protobuf/generated_enum_util.h",
      "src/google/protobuf/generated_message_reflection.cc",
      "src/google/protobuf/generated_message_reflection.h",

      # 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/google/protobuf/io/gzip_stream.h",

      "src/google/protobuf/io/printer.cc",
      "src/google/protobuf/io/printer.h",
      "src/google/protobuf/io/strtod.cc",
      "src/google/protobuf/io/strtod.h",
      "src/google/protobuf/io/tokenizer.cc",
      "src/google/protobuf/io/tokenizer.h",
      "src/google/protobuf/io/zero_copy_stream_impl.cc",
      "src/google/protobuf/io/zero_copy_stream_impl.h",
      "src/google/protobuf/map_entry.h",
      "src/google/protobuf/map_field.cc",
      "src/google/protobuf/map_field.h",
      "src/google/protobuf/map_field_inl.h",
      "src/google/protobuf/message.cc",
      "src/google/protobuf/message.h",
      "src/google/protobuf/metadata.h",
      "src/google/protobuf/reflection.h",
      "src/google/protobuf/reflection_internal.h",
      "src/google/protobuf/reflection_ops.cc",
      "src/google/protobuf/reflection_ops.h",
      "src/google/protobuf/service.cc",
      "src/google/protobuf/service.h",
      "src/google/protobuf/source_context.pb.cc",
      "src/google/protobuf/source_context.pb.h",
      "src/google/protobuf/struct.pb.cc",
      "src/google/protobuf/struct.pb.h",
      "src/google/protobuf/stubs/mathlimits.cc",
      "src/google/protobuf/stubs/mathlimits.h",
      "src/google/protobuf/stubs/mathutil.h",
      "src/google/protobuf/stubs/singleton.h",
      "src/google/protobuf/stubs/substitute.cc",
      "src/google/protobuf/stubs/substitute.h",
      "src/google/protobuf/text_format.cc",
      "src/google/protobuf/text_format.h",
      "src/google/protobuf/timestamp.pb.cc",
      "src/google/protobuf/timestamp.pb.h",
      "src/google/protobuf/type.pb.cc",
      "src/google/protobuf/type.pb.h",
      "src/google/protobuf/unknown_field_set.cc",
      "src/google/protobuf/unknown_field_set.h",
      "src/google/protobuf/util/field_comparator.cc",
      "src/google/protobuf/util/field_comparator.h",
      "src/google/protobuf/util/field_mask_util.cc",
      "src/google/protobuf/util/field_mask_util.h",
      "src/google/protobuf/util/internal/constants.h",
      "src/google/protobuf/util/internal/datapiece.cc",
      "src/google/protobuf/util/internal/datapiece.h",
      "src/google/protobuf/util/internal/default_value_objectwriter.cc",
      "src/google/protobuf/util/internal/default_value_objectwriter.h",
      "src/google/protobuf/util/internal/error_listener.cc",
      "src/google/protobuf/util/internal/error_listener.h",
      "src/google/protobuf/util/internal/field_mask_utility.cc",
      "src/google/protobuf/util/internal/field_mask_utility.h",
      "src/google/protobuf/util/internal/json_escaping.cc",
      "src/google/protobuf/util/internal/json_escaping.h",
      "src/google/protobuf/util/internal/json_objectwriter.cc",
      "src/google/protobuf/util/internal/json_objectwriter.h",
      "src/google/protobuf/util/internal/json_stream_parser.cc",
      "src/google/protobuf/util/internal/json_stream_parser.h",
      "src/google/protobuf/util/internal/location_tracker.h",
      "src/google/protobuf/util/internal/object_location_tracker.h",
      "src/google/protobuf/util/internal/object_source.h",
      "src/google/protobuf/util/internal/object_writer.cc",
      "src/google/protobuf/util/internal/object_writer.h",
      "src/google/protobuf/util/internal/proto_writer.cc",
      "src/google/protobuf/util/internal/proto_writer.h",
      "src/google/protobuf/util/internal/protostream_objectsource.cc",
      "src/google/protobuf/util/internal/protostream_objectsource.h",
      "src/google/protobuf/util/internal/protostream_objectwriter.cc",
      "src/google/protobuf/util/internal/protostream_objectwriter.h",
      "src/google/protobuf/util/internal/structured_objectwriter.h",
      "src/google/protobuf/util/internal/type_info.cc",
      "src/google/protobuf/util/internal/type_info.h",
      "src/google/protobuf/util/internal/type_info_test_helper.cc",
      "src/google/protobuf/util/internal/type_info_test_helper.h",
      "src/google/protobuf/util/internal/utility.cc",
      "src/google/protobuf/util/internal/utility.h",
      "src/google/protobuf/util/json_util.cc",
      "src/google/protobuf/util/json_util.h",
      "src/google/protobuf/util/message_differencer.cc",
      "src/google/protobuf/util/message_differencer.h",
      "src/google/protobuf/util/time_util.cc",
      "src/google/protobuf/util/time_util.h",
      "src/google/protobuf/util/type_resolver.h",
      "src/google/protobuf/util/type_resolver_util.cc",
      "src/google/protobuf/util/type_resolver_util.h",
      "src/google/protobuf/wire_format.cc",
      "src/google/protobuf/wire_format.h",
      "src/google/protobuf/wrappers.pb.cc",
      "src/google/protobuf/wrappers.pb.h",
    ]

    if (!is_starboard) {
      deps = [
        "//build/config/sanitizers:deps",
      ]
      configs -= [ "//build/config/compiler:chromium_code" ]
    }
    configs += [
      "//build/config/compiler:no_chromium_code",

      # Must be after no_chromium_code for warning flags to be ordered
      # correctly.
      ":protobuf_warnings",
    ]
    if (is_win) {
      configs -= [ "//build/config/win:lean_and_mean" ]
    }
    public_configs = [
      ":protobuf_config",

      # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
      "//build/config/compiler:no_size_t_to_int_warning",
    ]

    cflags = protobuf_lite_cflags
  }

  # 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
  static_library("protoc_lib") {
    sources = [
      "src/google/protobuf/compiler/code_generator.cc",
      "src/google/protobuf/compiler/code_generator.h",
      "src/google/protobuf/compiler/command_line_interface.cc",
      "src/google/protobuf/compiler/command_line_interface.h",
      "src/google/protobuf/compiler/cpp/cpp_enum.cc",
      "src/google/protobuf/compiler/cpp/cpp_enum.h",
      "src/google/protobuf/compiler/cpp/cpp_enum_field.cc",
      "src/google/protobuf/compiler/cpp/cpp_enum_field.h",
      "src/google/protobuf/compiler/cpp/cpp_extension.cc",
      "src/google/protobuf/compiler/cpp/cpp_extension.h",
      "src/google/protobuf/compiler/cpp/cpp_field.cc",
      "src/google/protobuf/compiler/cpp/cpp_field.h",
      "src/google/protobuf/compiler/cpp/cpp_file.cc",
      "src/google/protobuf/compiler/cpp/cpp_file.h",
      "src/google/protobuf/compiler/cpp/cpp_generator.cc",
      "src/google/protobuf/compiler/cpp/cpp_generator.h",
      "src/google/protobuf/compiler/cpp/cpp_helpers.cc",
      "src/google/protobuf/compiler/cpp/cpp_helpers.h",
      "src/google/protobuf/compiler/cpp/cpp_map_field.cc",
      "src/google/protobuf/compiler/cpp/cpp_map_field.h",
      "src/google/protobuf/compiler/cpp/cpp_message.cc",
      "src/google/protobuf/compiler/cpp/cpp_message.h",
      "src/google/protobuf/compiler/cpp/cpp_message_field.cc",
      "src/google/protobuf/compiler/cpp/cpp_message_field.h",
      "src/google/protobuf/compiler/cpp/cpp_options.h",
      "src/google/protobuf/compiler/cpp/cpp_primitive_field.cc",
      "src/google/protobuf/compiler/cpp/cpp_primitive_field.h",
      "src/google/protobuf/compiler/cpp/cpp_service.cc",
      "src/google/protobuf/compiler/cpp/cpp_service.h",
      "src/google/protobuf/compiler/cpp/cpp_string_field.cc",
      "src/google/protobuf/compiler/cpp/cpp_string_field.h",
      "src/google/protobuf/compiler/csharp/csharp_doc_comment.cc",
      "src/google/protobuf/compiler/csharp/csharp_doc_comment.h",
      "src/google/protobuf/compiler/csharp/csharp_enum.cc",
      "src/google/protobuf/compiler/csharp/csharp_enum.h",
      "src/google/protobuf/compiler/csharp/csharp_enum_field.cc",
      "src/google/protobuf/compiler/csharp/csharp_enum_field.h",
      "src/google/protobuf/compiler/csharp/csharp_field_base.cc",
      "src/google/protobuf/compiler/csharp/csharp_field_base.h",
      "src/google/protobuf/compiler/csharp/csharp_generator.cc",
      "src/google/protobuf/compiler/csharp/csharp_generator.h",
      "src/google/protobuf/compiler/csharp/csharp_helpers.cc",
      "src/google/protobuf/compiler/csharp/csharp_helpers.h",
      "src/google/protobuf/compiler/csharp/csharp_map_field.cc",
      "src/google/protobuf/compiler/csharp/csharp_map_field.h",
      "src/google/protobuf/compiler/csharp/csharp_message.cc",
      "src/google/protobuf/compiler/csharp/csharp_message.h",
      "src/google/protobuf/compiler/csharp/csharp_message_field.cc",
      "src/google/protobuf/compiler/csharp/csharp_message_field.h",
      "src/google/protobuf/compiler/csharp/csharp_options.h",
      "src/google/protobuf/compiler/csharp/csharp_primitive_field.cc",
      "src/google/protobuf/compiler/csharp/csharp_primitive_field.h",
      "src/google/protobuf/compiler/csharp/csharp_reflection_class.cc",
      "src/google/protobuf/compiler/csharp/csharp_reflection_class.h",
      "src/google/protobuf/compiler/csharp/csharp_repeated_enum_field.cc",
      "src/google/protobuf/compiler/csharp/csharp_repeated_enum_field.h",
      "src/google/protobuf/compiler/csharp/csharp_repeated_message_field.cc",
      "src/google/protobuf/compiler/csharp/csharp_repeated_message_field.h",
      "src/google/protobuf/compiler/csharp/csharp_repeated_primitive_field.cc",
      "src/google/protobuf/compiler/csharp/csharp_repeated_primitive_field.h",
      "src/google/protobuf/compiler/csharp/csharp_source_generator_base.cc",
      "src/google/protobuf/compiler/csharp/csharp_source_generator_base.h",
      "src/google/protobuf/compiler/csharp/csharp_wrapper_field.cc",
      "src/google/protobuf/compiler/csharp/csharp_wrapper_field.h",
      "src/google/protobuf/compiler/java/java_context.cc",
      "src/google/protobuf/compiler/java/java_context.h",
      "src/google/protobuf/compiler/java/java_doc_comment.cc",
      "src/google/protobuf/compiler/java/java_doc_comment.h",
      "src/google/protobuf/compiler/java/java_enum.cc",
      "src/google/protobuf/compiler/java/java_enum.h",
      "src/google/protobuf/compiler/java/java_enum_field.cc",
      "src/google/protobuf/compiler/java/java_enum_field.h",
      "src/google/protobuf/compiler/java/java_enum_field_lite.cc",
      "src/google/protobuf/compiler/java/java_enum_field_lite.h",
      "src/google/protobuf/compiler/java/java_enum_lite.cc",
      "src/google/protobuf/compiler/java/java_enum_lite.h",
      "src/google/protobuf/compiler/java/java_extension.cc",
      "src/google/protobuf/compiler/java/java_extension.h",
      "src/google/protobuf/compiler/java/java_extension_lite.cc",
      "src/google/protobuf/compiler/java/java_extension_lite.h",
      "src/google/protobuf/compiler/java/java_field.cc",
      "src/google/protobuf/compiler/java/java_field.h",
      "src/google/protobuf/compiler/java/java_file.cc",
      "src/google/protobuf/compiler/java/java_file.h",
      "src/google/protobuf/compiler/java/java_generator.cc",
      "src/google/protobuf/compiler/java/java_generator.h",
      "src/google/protobuf/compiler/java/java_generator_factory.cc",
      "src/google/protobuf/compiler/java/java_generator_factory.h",
      "src/google/protobuf/compiler/java/java_helpers.cc",
      "src/google/protobuf/compiler/java/java_helpers.h",
      "src/google/protobuf/compiler/java/java_lazy_message_field.cc",
      "src/google/protobuf/compiler/java/java_lazy_message_field.h",
      "src/google/protobuf/compiler/java/java_lazy_message_field_lite.cc",
      "src/google/protobuf/compiler/java/java_lazy_message_field_lite.h",
      "src/google/protobuf/compiler/java/java_map_field.cc",
      "src/google/protobuf/compiler/java/java_map_field.h",
      "src/google/protobuf/compiler/java/java_map_field_lite.cc",
      "src/google/protobuf/compiler/java/java_map_field_lite.h",
      "src/google/protobuf/compiler/java/java_message.cc",
      "src/google/protobuf/compiler/java/java_message.h",
      "src/google/protobuf/compiler/java/java_message_builder.cc",
      "src/google/protobuf/compiler/java/java_message_builder.h",
      "src/google/protobuf/compiler/java/java_message_builder_lite.cc",
      "src/google/protobuf/compiler/java/java_message_builder_lite.h",
      "src/google/protobuf/compiler/java/java_message_field.cc",
      "src/google/protobuf/compiler/java/java_message_field.h",
      "src/google/protobuf/compiler/java/java_message_field_lite.cc",
      "src/google/protobuf/compiler/java/java_message_field_lite.h",
      "src/google/protobuf/compiler/java/java_message_lite.cc",
      "src/google/protobuf/compiler/java/java_message_lite.h",
      "src/google/protobuf/compiler/java/java_name_resolver.cc",
      "src/google/protobuf/compiler/java/java_name_resolver.h",
      "src/google/protobuf/compiler/java/java_primitive_field.cc",
      "src/google/protobuf/compiler/java/java_primitive_field.h",
      "src/google/protobuf/compiler/java/java_primitive_field_lite.cc",
      "src/google/protobuf/compiler/java/java_primitive_field_lite.h",
      "src/google/protobuf/compiler/java/java_service.cc",
      "src/google/protobuf/compiler/java/java_service.h",
      "src/google/protobuf/compiler/java/java_shared_code_generator.cc",
      "src/google/protobuf/compiler/java/java_shared_code_generator.h",
      "src/google/protobuf/compiler/java/java_string_field.cc",
      "src/google/protobuf/compiler/java/java_string_field.h",
      "src/google/protobuf/compiler/java/java_string_field_lite.cc",
      "src/google/protobuf/compiler/java/java_string_field_lite.h",
      "src/google/protobuf/compiler/javanano/javanano_enum.cc",
      "src/google/protobuf/compiler/javanano/javanano_enum.h",
      "src/google/protobuf/compiler/javanano/javanano_enum_field.cc",
      "src/google/protobuf/compiler/javanano/javanano_enum_field.h",
      "src/google/protobuf/compiler/javanano/javanano_extension.cc",
      "src/google/protobuf/compiler/javanano/javanano_extension.h",
      "src/google/protobuf/compiler/javanano/javanano_field.cc",
      "src/google/protobuf/compiler/javanano/javanano_field.h",
      "src/google/protobuf/compiler/javanano/javanano_file.cc",
      "src/google/protobuf/compiler/javanano/javanano_file.h",
      "src/google/protobuf/compiler/javanano/javanano_generator.cc",
      "src/google/protobuf/compiler/javanano/javanano_generator.h",
      "src/google/protobuf/compiler/javanano/javanano_helpers.cc",
      "src/google/protobuf/compiler/javanano/javanano_helpers.h",
      "src/google/protobuf/compiler/javanano/javanano_map_field.cc",
      "src/google/protobuf/compiler/javanano/javanano_map_field.h",
      "src/google/protobuf/compiler/javanano/javanano_message.cc",
      "src/google/protobuf/compiler/javanano/javanano_message.h",
      "src/google/protobuf/compiler/javanano/javanano_message_field.cc",
      "src/google/protobuf/compiler/javanano/javanano_message_field.h",
      "src/google/protobuf/compiler/javanano/javanano_primitive_field.cc",
      "src/google/protobuf/compiler/javanano/javanano_primitive_field.h",
      "src/google/protobuf/compiler/js/js_generator.cc",
      "src/google/protobuf/compiler/js/js_generator.h",
      "src/google/protobuf/compiler/objectivec/objectivec_enum.cc",
      "src/google/protobuf/compiler/objectivec/objectivec_enum.h",
      "src/google/protobuf/compiler/objectivec/objectivec_enum_field.cc",
      "src/google/protobuf/compiler/objectivec/objectivec_enum_field.h",
      "src/google/protobuf/compiler/objectivec/objectivec_extension.cc",
      "src/google/protobuf/compiler/objectivec/objectivec_extension.h",
      "src/google/protobuf/compiler/objectivec/objectivec_field.cc",
      "src/google/protobuf/compiler/objectivec/objectivec_field.h",
      "src/google/protobuf/compiler/objectivec/objectivec_file.cc",
      "src/google/protobuf/compiler/objectivec/objectivec_file.h",
      "src/google/protobuf/compiler/objectivec/objectivec_generator.cc",
      "src/google/protobuf/compiler/objectivec/objectivec_generator.h",
      "src/google/protobuf/compiler/objectivec/objectivec_helpers.cc",
      "src/google/protobuf/compiler/objectivec/objectivec_helpers.h",
      "src/google/protobuf/compiler/objectivec/objectivec_map_field.cc",
      "src/google/protobuf/compiler/objectivec/objectivec_map_field.h",
      "src/google/protobuf/compiler/objectivec/objectivec_message.cc",
      "src/google/protobuf/compiler/objectivec/objectivec_message.h",
      "src/google/protobuf/compiler/objectivec/objectivec_message_field.cc",
      "src/google/protobuf/compiler/objectivec/objectivec_message_field.h",
      "src/google/protobuf/compiler/objectivec/objectivec_oneof.cc",
      "src/google/protobuf/compiler/objectivec/objectivec_oneof.h",
      "src/google/protobuf/compiler/objectivec/objectivec_primitive_field.cc",
      "src/google/protobuf/compiler/objectivec/objectivec_primitive_field.h",
      "src/google/protobuf/compiler/plugin.cc",
      "src/google/protobuf/compiler/plugin.h",
      "src/google/protobuf/compiler/plugin.pb.cc",
      "src/google/protobuf/compiler/plugin.pb.h",
      "src/google/protobuf/compiler/python/python_generator.cc",
      "src/google/protobuf/compiler/python/python_generator.h",
      "src/google/protobuf/compiler/ruby/ruby_generator.cc",
      "src/google/protobuf/compiler/ruby/ruby_generator.h",
      "src/google/protobuf/compiler/subprocess.cc",
      "src/google/protobuf/compiler/subprocess.h",
      "src/google/protobuf/compiler/zip_writer.cc",
      "src/google/protobuf/compiler/zip_writer.h",
    ]

    if (!is_starboard) {
      configs -= [ "//build/config/compiler:chromium_code" ]
    }
    configs += [
      "//build/config/compiler:no_chromium_code",

      # Must be after no_chromium_code for warning flags to be ordered
      # correctly.
      ":protobuf_warnings",
    ]
    if (is_win) {
      # This is defined internally, don't warn on duplicate.
      configs -= [ "//build/config/win:lean_and_mean" ]
    }

    public_configs = [ ":protobuf_config" ]

    cflags = protobuf_lite_cflags

    public_deps = [
      ":protobuf_full",
    ]
  }

  executable("protoc") {
    sources = [
      "src/google/protobuf/compiler/main.cc",
    ]

    if (!is_starboard) {
      configs -= [ "//build/config/compiler:chromium_code" ]
    }
    configs += [ "//build/config/compiler:no_chromium_code" ]

    cflags = protobuf_lite_cflags

    deps = [
      ":protoc_lib",

      # Default manifest on Windows (a no-op elsewhere).
      "//build/win:default_exe_manifest",
    ]
  }
}

if (!is_starboard) {
  google_python_dir = "$root_out_dir/pyproto/google"

  copy("copy_google") {
    sources = [
      "__init__.py",
    ]
    outputs = [
      "$google_python_dir/{{source_file_part}}",
    ]
  }

  copy("copy_six") {
    sources = [
      "third_party/six/six.py",
    ]
    outputs = [
      "$google_python_dir/third_party/six/{{source_file_part}}",
    ]
  }

  copy("copy_google_protobuf") {
    sources = [
      "python/google/protobuf/__init__.py",
      "python/google/protobuf/descriptor.py",
      "python/google/protobuf/descriptor_database.py",
      "python/google/protobuf/descriptor_pool.py",
      "python/google/protobuf/json_format.py",
      "python/google/protobuf/message.py",
      "python/google/protobuf/message_factory.py",
      "python/google/protobuf/proto_builder.py",
      "python/google/protobuf/reflection.py",
      "python/google/protobuf/service.py",
      "python/google/protobuf/service_reflection.py",
      "python/google/protobuf/symbol_database.py",
      "python/google/protobuf/text_encoding.py",
      "python/google/protobuf/text_format.py",

      # TODO(ncarter): protoc's python generator treats descriptor.proto
      # specially, but only when the input path is exactly
      # "google/protobuf/descriptor.proto".  I'm not sure how to execute a rule
      # from a different directory.  For now, use a manually-generated copy of
      # descriptor_pb2.py.
      "python/google/protobuf/descriptor_pb2.py",
    ]
    outputs = [
      "$google_python_dir/protobuf/{{source_file_part}}",
    ]
  }

  copy("copy_google_protobuf_internal") {
    sources = [
      "python/google/protobuf/internal/__init__.py",
      "python/google/protobuf/internal/_parameterized.py",
      "python/google/protobuf/internal/api_implementation.py",
      "python/google/protobuf/internal/containers.py",
      "python/google/protobuf/internal/decoder.py",
      "python/google/protobuf/internal/encoder.py",
      "python/google/protobuf/internal/enum_type_wrapper.py",
      "python/google/protobuf/internal/message_listener.py",
      "python/google/protobuf/internal/python_message.py",
      "python/google/protobuf/internal/type_checkers.py",
      "python/google/protobuf/internal/well_known_types.py",
      "python/google/protobuf/internal/wire_format.py",
    ]
    outputs = [
      "$google_python_dir/protobuf/internal/{{source_file_part}}",
    ]
  }

  group("py_proto") {
    public_deps = [
      ":copy_google",
      ":copy_google_protobuf",
      ":copy_google_protobuf_internal",
      ":copy_six",
    ]

    # Targets that depend on this should depend on the copied data files.
    data = get_target_outputs(":copy_google")
    data += get_target_outputs(":copy_six")
    data += get_target_outputs(":copy_google_protobuf")
    data += get_target_outputs(":copy_google_protobuf_internal")
  }
}
