1# Copyright (C) 2022 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/test.gni") 16 17source_set("minimal") { 18 sources = [ 19 "ftrace_module.cc", 20 "ftrace_module.h", 21 ] 22 deps = [ 23 "../../../../gn:default_deps", 24 "../common:parser_types", 25 "../common:trace_parser_hdr", 26 "../proto:proto_importer_module", 27 ] 28} 29 30source_set("full") { 31 sources = [ 32 "binder_tracker.cc", 33 "binder_tracker.h", 34 "drm_tracker.cc", 35 "drm_tracker.h", 36 "ftrace_module_impl.cc", 37 "ftrace_module_impl.h", 38 "ftrace_parser.cc", 39 "ftrace_parser.h", 40 "ftrace_sched_event_tracker.cc", 41 "ftrace_sched_event_tracker.h", 42 "ftrace_tokenizer.cc", 43 "ftrace_tokenizer.h", 44 "gpu_work_period_tracker.cc", 45 "gpu_work_period_tracker.h", 46 "iostat_tracker.cc", 47 "iostat_tracker.h", 48 "mali_gpu_event_tracker.cc", 49 "mali_gpu_event_tracker.h", 50 "pixel_mm_kswapd_event_tracker.cc", 51 "pixel_mm_kswapd_event_tracker.h", 52 "pkvm_hyp_cpu_tracker.cc", 53 "pkvm_hyp_cpu_tracker.h", 54 "rss_stat_tracker.cc", 55 "rss_stat_tracker.h", 56 "thermal_tracker.cc", 57 "thermal_tracker.h", 58 "v4l2_tracker.cc", 59 "v4l2_tracker.h", 60 "virtio_gpu_tracker.cc", 61 "virtio_gpu_tracker.h", 62 "virtio_video_tracker.cc", 63 "virtio_video_tracker.h", 64 ] 65 deps = [ 66 ":ftrace_descriptors", 67 ":minimal", 68 "../../../../gn:default_deps", 69 "../../../../protos/perfetto/common:zero", 70 "../../../../protos/perfetto/trace:zero", 71 "../../../../protos/perfetto/trace/ftrace:zero", 72 "../../../../protos/perfetto/trace/interned_data:zero", 73 "../../../../protos/perfetto/trace/profiling:zero", 74 "../../../protozero", 75 "../../sorter", 76 "../../storage", 77 "../../tables", 78 "../../types", 79 "../common", 80 "../common:parser_types", 81 "../i2c:full", 82 "../proto:minimal", 83 "../proto:packet_sequence_state_generation_hdr", 84 "../syscalls:full", 85 "../systrace:systrace_parser", 86 ] 87} 88 89source_set("ftrace_descriptors") { 90 sources = [ 91 "ftrace_descriptors.cc", 92 "ftrace_descriptors.h", 93 ] 94 deps = [ 95 "../../../../gn:default_deps", 96 "../../../../include/perfetto/ext/base:base", 97 "../../../protozero", 98 ] 99} 100 101perfetto_unittest_source_set("unittests") { 102 testonly = true 103 sources = [ 104 "binder_tracker_unittest.cc", 105 "ftrace_sched_event_tracker_unittest.cc", 106 ] 107 deps = [ 108 "../../../../gn:default_deps", 109 "../../../../gn:gtest_and_gmock", 110 "../../storage", 111 "../../types", 112 "../common", 113 "../ftrace:full", 114 ] 115} 116