blob: 52313517e6c728b99eb40100dabbdc017539dd32 [file] [log] [blame]
Primiano Tucci4f9b6d72017-12-05 20:59:16 +00001# Copyright (C) 2017 The Android Open Source Project
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15import("../../gn/perfetto.gni")
16import("//build_overrides/build.gni")
17
18if (!build_with_chromium) {
Primiano Tucci7a40e4d2017-12-06 09:51:09 +000019 import("//gn/standalone/proto_library.gni")
Primiano Tucci4f9b6d72017-12-05 20:59:16 +000020} else {
21 import("//third_party/protobuf/proto_library.gni")
22}
23
24# Generates .ipc.{h,cc} stubs for IPC services defined in .proto files.
25template("ipc_library") {
26 proto_library(target_name) {
27 perfetto_root_path = invoker.perfetto_root_path
28
29 generator_plugin_label =
30 perfetto_root_path + "src/ipc/protoc_plugin:ipc_plugin"
31 generator_plugin_suffix = ".ipc"
32
33 deps = [
34 "${perfetto_root_path}src/ipc",
35 ]
36 proto_out_dir = "protos_lite"
37 forward_variables_from(invoker,
38 [
39 "defines",
40 "extra_configs",
41 "include_dirs",
42 "proto_in_dir",
43 "proto_out_dir",
44 "sources",
45 "testonly",
46 "visibility",
47 ])
48 }
49}