| # 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. |
| |
| import("//third_party/protobuf/proto_library.gni") |
| |
| # The proto files need to be a component to avoid duplicate symbols the way the |
| # dependency structure is currently. Since proto_library generates a source |
| # set, here we link the result into a component. |
| component("proto") { |
| output_name = "policy_proto" |
| public_deps = [ |
| ":proto_internal", |
| ] |
| } |
| |
| proto_library("proto_internal") { |
| visibility = [ ":proto" ] |
| |
| sources = [ |
| "device_management_backend.proto", |
| "policy_signing_key.proto", |
| ] |
| |
| if (is_chromeos) { |
| sources += [ |
| "chrome_device_policy.proto", |
| "install_attributes.proto", |
| ] |
| } |
| |
| if (!is_android && !is_ios) { |
| sources += [ "chrome_extension_policy.proto" ] |
| } |
| |
| cc_generator_options = "dllexport_decl=POLICY_PROTO_EXPORT:" |
| cc_include = "components/policy/proto/policy_proto_export.h" |
| component_build_force_source_set = true |
| defines = [ "POLICY_PROTO_COMPILATION" ] |
| } |