| # Copyright 2021 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//components/proto_extras/proto_extras.gni") |
| import("//third_party/libprotobuf-mutator/fuzzable_proto_library.gni") |
| import("//third_party/protobuf/proto_library.gni") |
| |
| # Record constants for use with the reporting messaging library. |
| fuzzable_proto_library("record_constants") { |
| proto_in_dir = "//" |
| |
| # Generate JS so it can be used by chrome extensions |
| generate_javascript = true |
| |
| sources = [ "synced/record_constants.proto" ] |
| } |
| |
| proto_extras("record_constants_extras") { |
| sources = [ "synced/record_constants.proto" ] |
| deps = [ ":record_constants" ] |
| protobuf_full_support = true |
| } |
| |
| # Record definitions for reporting. |
| fuzzable_proto_library("record_proto") { |
| proto_in_dir = "//" |
| |
| # Generate JS so it can be used by chrome extensions |
| generate_javascript = true |
| |
| sources = [ "synced/record.proto" ] |
| |
| deps = [ |
| ":health_proto", |
| ":record_constants", |
| ] |
| } |
| |
| proto_extras("record_proto_extras") { |
| sources = [ "synced/record.proto" ] |
| deps = [ |
| ":health_proto", |
| ":record_constants", |
| ":record_proto", |
| ] |
| extras_deps = [ |
| ":health_proto_extras", |
| ":record_constants_extras", |
| ] |
| protobuf_full_support = true |
| } |
| |
| proto_library("interface_proto") { |
| proto_in_dir = "//" |
| |
| # Generate JS so it can be used by chrome extensions |
| generate_javascript = true |
| |
| sources = [ "synced/interface.proto" ] |
| |
| deps = [ |
| ":record_constants", |
| ":record_proto", |
| ":status_proto", |
| ] |
| } |
| |
| fuzzable_proto_library("health_proto") { |
| proto_in_dir = "//" |
| |
| # Generate JS so it can be used by chrome extensions |
| generate_javascript = true |
| |
| sources = [ "synced/health.proto" ] |
| |
| deps = [ |
| ":record_constants", |
| ":status_proto", |
| ] |
| } |
| |
| proto_extras("health_proto_extras") { |
| sources = [ "synced/health.proto" ] |
| deps = [ |
| ":health_proto", |
| ":record_constants", |
| ":status_proto", |
| ] |
| extras_deps = [ |
| ":record_constants_extras", |
| ":status_proto_extras", |
| ] |
| protobuf_full_support = true |
| } |
| |
| proto_library("session_affiliated_user_proto") { |
| proto_in_dir = "//" |
| |
| # Generate JS so it can be used by chrome extensions |
| generate_javascript = true |
| |
| sources = [ "synced/session_affiliated_user.proto" ] |
| } |
| |
| proto_library("test_proto") { |
| proto_in_dir = "//" |
| sources = [ "test.proto" ] |
| } |
| |
| # Metrics records definitions. |
| proto_library("metric_data_proto") { |
| proto_in_dir = "//" |
| |
| # Generate JS so it can be used by chrome extensions |
| generate_javascript = true |
| |
| sources = [ "synced/metric_data.proto" ] |
| |
| deps = [ |
| ":session_affiliated_user_proto", |
| "//components/services/app_service/public/protos", |
| ] |
| } |
| |
| fuzzable_proto_library("status_proto") { |
| proto_in_dir = "//" |
| |
| # Generate JS so it can be used by chrome extensions |
| generate_javascript = true |
| |
| sources = [ "synced/status.proto" ] |
| } |
| |
| proto_extras("status_proto_extras") { |
| sources = [ "synced/status.proto" ] |
| deps = [ ":status_proto" ] |
| protobuf_full_support = true |
| } |
| |
| fuzzable_proto_library("upload_tracker_proto") { |
| proto_in_dir = "//" |
| |
| sources = [ "synced/upload_tracker.proto" ] |
| |
| deps = [ ":status_proto" ] |
| } |
| |
| fuzzable_proto_library("configuration_file_proto") { |
| proto_in_dir = "//" |
| |
| sources = [ "synced/configuration_file.proto" ] |
| |
| deps = [ ":record_constants" ] |
| } |