Hector Dearman | 3e712a0 | 2017-12-19 16:39:59 +0000 | [diff] [blame] | 1 | # 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 | |
Primiano Tucci | a7f5a8e | 2021-01-02 17:10:50 +0100 | [diff] [blame^] | 15 | import("../../../gn/perfetto.gni") |
Primiano Tucci | 02c1176 | 2019-08-30 00:57:59 +0200 | [diff] [blame] | 16 | import("../../../gn/test.gni") |
| 17 | |
Primiano Tucci | a7f5a8e | 2021-01-02 17:10:50 +0100 | [diff] [blame^] | 18 | assert(enable_perfetto_traced_probes) |
Primiano Tucci | 42433ab | 2020-11-30 18:42:01 +0100 | [diff] [blame] | 19 | |
Primiano Tucci | 02c1176 | 2019-08-30 00:57:59 +0200 | [diff] [blame] | 20 | # The unprivileged daemon that is allowed to access tracefs (for ftrace). |
| 21 | # Registers as a Producer on the traced daemon. |
| 22 | executable("traced_probes") { |
| 23 | deps = [ |
| 24 | "../../../:libperfetto", |
| 25 | "../../../gn:default_deps", |
| 26 | "../../../include/perfetto/ext/traced", |
| 27 | ] |
Primiano Tucci | 2925e9d | 2020-01-27 10:15:58 +0000 | [diff] [blame] | 28 | sources = [ "main.cc" ] |
Primiano Tucci | e8020f9 | 2019-11-26 13:24:01 +0000 | [diff] [blame] | 29 | assert_no_deps = [ "//gn:protobuf_lite" ] |
Primiano Tucci | 02c1176 | 2019-08-30 00:57:59 +0200 | [diff] [blame] | 30 | } |
| 31 | |
| 32 | # Contains all the implementation but not the main() entry point. This target |
| 33 | # is shared both by the executable and tests. |
Hector Dearman | 3e712a0 | 2017-12-19 16:39:59 +0000 | [diff] [blame] | 34 | source_set("probes") { |
Primiano Tucci | 2925e9d | 2020-01-27 10:15:58 +0000 | [diff] [blame] | 35 | public_deps = [ "../../../include/perfetto/ext/traced" ] |
Hector Dearman | 3e712a0 | 2017-12-19 16:39:59 +0000 | [diff] [blame] | 36 | deps = [ |
Isabelle Taylor | d404ea1 | 2018-02-19 17:28:01 +0000 | [diff] [blame] | 37 | ":probes_src", |
Hector Dearman | 3e712a0 | 2017-12-19 16:39:59 +0000 | [diff] [blame] | 38 | "../../../gn:default_deps", |
Primiano Tucci | c4c063b | 2020-01-27 09:34:46 +0000 | [diff] [blame] | 39 | "../../tracing/ipc/producer", |
Hector Dearman | 3e712a0 | 2017-12-19 16:39:59 +0000 | [diff] [blame] | 40 | ] |
Primiano Tucci | 2925e9d | 2020-01-27 10:15:58 +0000 | [diff] [blame] | 41 | sources = [ "probes.cc" ] |
Hector Dearman | 3e712a0 | 2017-12-19 16:39:59 +0000 | [diff] [blame] | 42 | } |
Lalit Maganti | 0b65b91 | 2018-01-12 18:04:31 +0000 | [diff] [blame] | 43 | |
Isabelle Taylor | d404ea1 | 2018-02-19 17:28:01 +0000 | [diff] [blame] | 44 | source_set("probes_src") { |
Primiano Tucci | 2925e9d | 2020-01-27 10:15:58 +0000 | [diff] [blame] | 45 | public_deps = [ "ftrace" ] |
Lalit Maganti | 0b65b91 | 2018-01-12 18:04:31 +0000 | [diff] [blame] | 46 | deps = [ |
Primiano Tucci | fd8240d | 2018-08-01 09:34:54 +0100 | [diff] [blame] | 47 | ":data_source", |
Lalit Maganti | 0b65b91 | 2018-01-12 18:04:31 +0000 | [diff] [blame] | 48 | "../../../gn:default_deps", |
Primiano Tucci | 2c5488f | 2019-06-01 03:27:28 +0100 | [diff] [blame] | 49 | "../../../include/perfetto/ext/traced", |
Primiano Tucci | 57dd66b | 2019-10-15 23:09:04 +0100 | [diff] [blame] | 50 | "../../../protos/perfetto/config/ftrace:cpp", |
Primiano Tucci | c4c063b | 2020-01-27 09:34:46 +0000 | [diff] [blame] | 51 | "../../../protos/perfetto/trace:zero", |
Primiano Tucci | c2eb510 | 2018-05-15 10:40:01 +0100 | [diff] [blame] | 52 | "../../../protos/perfetto/trace/ps:zero", |
Lalit Maganti | 0b65b91 | 2018-01-12 18:04:31 +0000 | [diff] [blame] | 53 | "../../base", |
Primiano Tucci | c4c063b | 2020-01-27 09:34:46 +0000 | [diff] [blame] | 54 | "../../tracing/core", |
| 55 | "../../tracing/ipc/producer", |
Primiano Tucci | 64df2ca | 2019-01-03 22:26:47 +0000 | [diff] [blame] | 56 | "android_log", |
Rafal Slawik | 8053a68 | 2020-04-08 17:26:40 +0100 | [diff] [blame] | 57 | "common", |
Anna Zappone | 2a6f904 | 2018-03-14 13:26:07 +0000 | [diff] [blame] | 58 | "filesystem", |
Simon MacMullen | 3d4c54a | 2020-04-17 16:40:53 +0100 | [diff] [blame] | 59 | "initial_display_state", |
Primiano Tucci | b02d8dc | 2019-06-04 11:46:43 +0100 | [diff] [blame] | 60 | "metatrace", |
Florian Mayer | 12f0f8e | 2019-04-02 12:31:13 +0100 | [diff] [blame] | 61 | "packages_list", |
Primiano Tucci | b86e9ca | 2018-12-03 20:20:11 +0100 | [diff] [blame] | 62 | "power", |
Primiano Tucci | b6de48b | 2018-07-26 16:00:44 +0100 | [diff] [blame] | 63 | "ps", |
Primiano Tucci | 82a8bfd | 2018-09-19 11:33:04 +0100 | [diff] [blame] | 64 | "sys_stats", |
Rafal Slawik | b013a11 | 2020-04-03 16:12:02 +0100 | [diff] [blame] | 65 | "system_info", |
Lalit Maganti | 0b65b91 | 2018-01-12 18:04:31 +0000 | [diff] [blame] | 66 | ] |
| 67 | sources = [ |
Isabelle Taylor | d404ea1 | 2018-02-19 17:28:01 +0000 | [diff] [blame] | 68 | "probes_producer.cc", |
| 69 | "probes_producer.h", |
Hector Dearman | ebf07c7 | 2018-03-13 10:31:05 +0000 | [diff] [blame] | 70 | ] |
| 71 | } |
| 72 | |
Primiano Tucci | fd8240d | 2018-08-01 09:34:54 +0100 | [diff] [blame] | 73 | # Base class for data sources in traced_probes. |
| 74 | # Needs to be a separate target to avoid cyclical deps. |
| 75 | source_set("data_source") { |
| 76 | deps = [ |
| 77 | "../../../gn:default_deps", |
Primiano Tucci | c4c063b | 2020-01-27 09:34:46 +0000 | [diff] [blame] | 78 | "../../tracing/core", |
Primiano Tucci | fd8240d | 2018-08-01 09:34:54 +0100 | [diff] [blame] | 79 | ] |
| 80 | sources = [ |
| 81 | "probes_data_source.cc", |
| 82 | "probes_data_source.h", |
| 83 | ] |
| 84 | } |
| 85 | |
Primiano Tucci | 02c1176 | 2019-08-30 00:57:59 +0200 | [diff] [blame] | 86 | perfetto_unittest_source_set("unittests") { |
Hector Dearman | ebf07c7 | 2018-03-13 10:31:05 +0000 | [diff] [blame] | 87 | testonly = true |
| 88 | deps = [ |
| 89 | ":probes_src", |
| 90 | "../../../gn:default_deps", |
Primiano Tucci | 13ae72f | 2019-06-06 10:53:02 +0100 | [diff] [blame] | 91 | "../../../gn:gtest_and_gmock", |
Primiano Tucci | c4c063b | 2020-01-27 09:34:46 +0000 | [diff] [blame] | 92 | "../../tracing/test:test_support", |
Primiano Tucci | 64df2ca | 2019-01-03 22:26:47 +0000 | [diff] [blame] | 93 | "android_log:unittests", |
Rafal Slawik | 8053a68 | 2020-04-08 17:26:40 +0100 | [diff] [blame] | 94 | "common:unittests", |
Primiano Tucci | b6de48b | 2018-07-26 16:00:44 +0100 | [diff] [blame] | 95 | "filesystem:unittests", |
Simon MacMullen | 3d4c54a | 2020-04-17 16:40:53 +0100 | [diff] [blame] | 96 | "initial_display_state:unittests", |
Florian Mayer | 12f0f8e | 2019-04-02 12:31:13 +0100 | [diff] [blame] | 97 | "packages_list:unittests", |
Primiano Tucci | b6de48b | 2018-07-26 16:00:44 +0100 | [diff] [blame] | 98 | "ps:unittests", |
Primiano Tucci | 82a8bfd | 2018-09-19 11:33:04 +0100 | [diff] [blame] | 99 | "sys_stats:unittests", |
Rafal Slawik | b013a11 | 2020-04-03 16:12:02 +0100 | [diff] [blame] | 100 | "system_info:unittests", |
Lalit Maganti | 0b65b91 | 2018-01-12 18:04:31 +0000 | [diff] [blame] | 101 | ] |
| 102 | } |