# 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("//components/safe_browsing/buildflags.gni") import("//third_party/libprotobuf-mutator/fuzzable_proto_library.gni") import("//third_party/protobuf/proto_library.gni") # Because csd.proto is included from a proto file outside its own directory, # proto_in_dir is required so that import can follow the Chromium style guide # that all imports start from the source root. # # However, due to the way that protoc generates C++ code, this directive is # also required in all build targets for protos that import csd.proto, including # the protos in the same directory. Those protos also need to import csd.proto # using a path from the source root, otherwise they won't compile. fuzzable_proto_library("csd_proto") { proto_in_dir = "//" sources = [ "csd.proto" ] } proto_extras("csd_proto_extras") { sources = [ "csd.proto" ] deps = [ ":csd_proto" ] } proto_library("crx_info_proto") { sources = [ "crx_info.proto" ] } proto_library("webui_proto") { sources = [ "webui.proto" ] } fuzzable_proto_library("realtimeapi_proto") { proto_in_dir = "//" sources = [ "realtimeapi.proto" ] deps = [ ":csd_proto", "//components/enterprise/common/proto:connectors_proto", ] } proto_extras("realtimeapi_proto_extras") { sources = [ "realtimeapi.proto" ] deps = [ ":csd_proto", ":realtimeapi_proto", "//components/enterprise/common/proto:connectors_proto", ] extras_deps = [ ":csd_proto_extras", "//components/enterprise/common/proto:connectors_proto_extras", ] } fuzzable_proto_library("client_model_proto") { proto_in_dir = "//" sources = [ "client_model.proto" ] deps = [ ":csd_proto" ] } proto_library("safebrowsingv5_proto") { sources = [ "safebrowsingv5.proto" ] } proto_extras("safebrowsingv5_proto_extras") { sources = [ "safebrowsingv5.proto" ] deps = [ ":safebrowsingv5_proto" ] } proto_library("v5_store_proto") { sources = [ "v5_store.proto" ] } proto_library("realtimeallowlist_proto") { proto_in_dir = "//" sources = [ "realtimeallowlist.proto" ] }