xref: /aosp_15_r20/external/perfetto/src/tracing/ipc/service/BUILD.gn (revision 6dbdd20afdafa5e3ca9b8809fa73465d530080dc)
1# Copyright (C) 2020 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("../../../../gn/perfetto_component.gni")
17
18assert(enable_perfetto_ipc)
19
20# Posix specialization of the tracing library for Linux / Android / Mac.
21# Provides an IPC transport over a UNIX socket for the service interface.
22source_set("service") {
23  public_deps = [
24    "../../../../include/perfetto/ext/tracing/core",
25    "../../../../include/perfetto/ext/tracing/ipc",
26  ]
27  sources = [
28    "consumer_ipc_service.cc",
29    "consumer_ipc_service.h",
30    "producer_ipc_service.cc",
31    "producer_ipc_service.h",
32    "relay_ipc_service.cc",
33    "relay_ipc_service.h",
34    "service_ipc_host_impl.cc",
35    "service_ipc_host_impl.h",
36  ]
37  deps = [
38    "..:common",
39    "../../../../gn:default_deps",
40    "../../../../protos/perfetto/ipc",
41    "../../../base",
42    "../../core:core",
43    "../../service",
44  ]
45  if (perfetto_component_type == "static_library") {
46    deps += [ "../../../ipc:perfetto_ipc" ]
47  } else {
48    deps += [ "../../../ipc:host" ]
49  }
50}
51