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