| # Copyright 2014 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//third_party/protobuf/proto_library.gni") |
| import("protocol_sources.gni") |
| |
| proto_library("protocol") { |
| proto_in_dir = "//" |
| sources = sync_protocol_sources |
| extra_configs = [ "//build/config/compiler:wexit_time_destructors" ] |
| } |
| |
| # TODO(crbug.com/947443): It seems some code implicitly depends on "util" due to |
| # it being listed in public_deps of upper directories (even though it doesn't |
| # fit the definition of public_deps). Consider using a group() to expose this |
| # together with the "protocol" target and simplify things. |
| static_library("util") { |
| sources = [ |
| "entity_data.cc", |
| "entity_data.h", |
| "model_type_state_helper.cc", |
| "model_type_state_helper.h", |
| "proto_enum_conversions.cc", |
| "proto_enum_conversions.h", |
| "proto_memory_estimations.cc", |
| "proto_memory_estimations.h", |
| "proto_value_conversions.cc", |
| "proto_value_conversions.h", |
| "proto_visitors.h", |
| "sync_protocol_error.cc", |
| "sync_protocol_error.h", |
| ] |
| |
| public_deps = [ |
| "//base", |
| "//components/sync/base", |
| ] |
| } |
| |
| if (is_android) { |
| import("//build/config/android/rules.gni") |
| |
| proto_java_library("protocol_java") { |
| proto_path = "//" |
| sources = sync_protocol_sources |
| } |
| } |