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 producer interface. 22source_set("producer") { 23 public_deps = [ 24 "../../../../include/perfetto/ext/tracing/core", 25 "../../../../include/perfetto/ext/tracing/ipc", 26 "../../../../include/perfetto/tracing", 27 "../../../../protos/perfetto/ipc", 28 ] 29 sources = [ 30 "producer_ipc_client_impl.cc", 31 "producer_ipc_client_impl.h", 32 ] 33 deps = [ 34 "..:common", 35 "../../../../gn:default_deps", 36 "../../../base", 37 "../../../base:version", 38 "../../core", 39 ] 40 if (perfetto_component_type == "static_library") { 41 deps += [ "../../../ipc:perfetto_ipc" ] 42 } else { 43 deps += [ "../../../ipc:client" ] 44 } 45} 46 47# Relay port client implementation, used by the relay service. 48source_set("relay") { 49 public_deps = [ "../../../../protos/perfetto/ipc" ] 50 sources = [ 51 "relay_ipc_client.cc", 52 "relay_ipc_client.h", 53 ] 54 deps = [ 55 "..:common", 56 "../../../../gn:default_deps", 57 ] 58 if (perfetto_component_type == "static_library") { 59 deps += [ "../../../ipc:perfetto_ipc" ] 60 } else { 61 deps += [ "../../../ipc:client" ] 62 } 63} 64