• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (C) 2019 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#
15# This file is automatically generated by tools/gen_bazel. Do not edit.
16
17load("@perfetto_cfg//:perfetto_cfg.bzl", "PERFETTO_CONFIG")
18load(
19    "@perfetto//bazel:rules.bzl",
20    "perfetto_cc_binary",
21    "perfetto_cc_ipc_library",
22    "perfetto_cc_library",
23    "perfetto_cc_proto_descriptor",
24    "perfetto_cc_proto_library",
25    "perfetto_cc_protocpp_library",
26    "perfetto_cc_protozero_library",
27    "perfetto_java_proto_library",
28    "perfetto_java_lite_proto_library",
29    "perfetto_proto_library",
30    "perfetto_proto_descriptor",
31    "perfetto_py_binary",
32    "perfetto_py_library",
33    "perfetto_gensignature_internal_only",
34)
35
36package(default_visibility = ["//visibility:private"])
37
38licenses(["notice"])
39
40exports_files(["NOTICE"])
41
42# ##############################################################################
43# Internal targets
44# ##############################################################################
45
46# GN target: //src/ipc/protoc_plugin:ipc_plugin
47perfetto_cc_binary(
48    name = "ipc_plugin",
49    srcs = [
50        "src/ipc/protoc_plugin/ipc_plugin.cc",
51    ],
52    deps = [
53        ":src_base_base",
54    ] + PERFETTO_CONFIG.deps.protoc_lib,
55)
56
57# GN target: //src/ipc:perfetto_ipc
58perfetto_cc_library(
59    name = "perfetto_ipc",
60    srcs = [
61        ":src_ipc_client",
62        ":src_ipc_common",
63        ":src_ipc_host",
64    ],
65    hdrs = [
66        ":include_perfetto_base_base",
67        ":include_perfetto_ext_base_base",
68        ":include_perfetto_ext_ipc_ipc",
69        ":include_perfetto_protozero_protozero",
70    ],
71    deps = [
72        ":protos_perfetto_ipc_wire_protocol_cpp",
73        ":src_base_base",
74        ":src_base_unix_socket",
75    ],
76    linkstatic = True,
77)
78
79# GN target: //src/protozero/protoc_plugin:cppgen_plugin
80perfetto_cc_binary(
81    name = "cppgen_plugin",
82    srcs = [
83        "src/protozero/protoc_plugin/cppgen_plugin.cc",
84    ],
85    deps = [
86        ":src_base_base",
87    ] + PERFETTO_CONFIG.deps.protoc_lib,
88)
89
90# GN target: //src/protozero/protoc_plugin:protozero_plugin
91perfetto_cc_binary(
92    name = "protozero_plugin",
93    srcs = [
94        "src/protozero/protoc_plugin/protozero_plugin.cc",
95    ],
96    deps = [
97        ":src_base_base",
98    ] + PERFETTO_CONFIG.deps.protoc_lib,
99)
100
101# GN target: //src/protozero:protozero
102perfetto_cc_library(
103    name = "protozero",
104    srcs = [
105        "src/protozero/field.cc",
106        "src/protozero/message.cc",
107        "src/protozero/message_arena.cc",
108        "src/protozero/message_handle.cc",
109        "src/protozero/packed_repeated_fields.cc",
110        "src/protozero/proto_decoder.cc",
111        "src/protozero/scattered_heap_buffer.cc",
112        "src/protozero/scattered_stream_null_delegate.cc",
113        "src/protozero/scattered_stream_writer.cc",
114        "src/protozero/static_buffer.cc",
115        "src/protozero/virtual_destructors.cc",
116    ],
117    hdrs = [
118        ":include_perfetto_base_base",
119        ":include_perfetto_protozero_protozero",
120    ],
121    deps = [
122        ":src_base_base",
123    ],
124    linkstatic = True,
125)
126
127# GN target: //test:client_api_example
128perfetto_cc_binary(
129    name = "client_api_example",
130    srcs = [
131        ":include_perfetto_base_base",
132        ":include_perfetto_protozero_protozero",
133        ":include_perfetto_tracing_core_forward_decls",
134        ":include_perfetto_tracing_tracing",
135        "test/client_api_example.cc",
136    ],
137    deps = [
138        ":libperfetto_client_experimental",
139        ":protos_perfetto_common_cpp",
140        ":protos_perfetto_common_zero",
141        ":protos_perfetto_config_android_zero",
142        ":protos_perfetto_config_ftrace_zero",
143        ":protos_perfetto_config_gpu_zero",
144        ":protos_perfetto_config_inode_file_zero",
145        ":protos_perfetto_config_interceptors_zero",
146        ":protos_perfetto_config_power_zero",
147        ":protos_perfetto_config_process_stats_zero",
148        ":protos_perfetto_config_profiling_zero",
149        ":protos_perfetto_config_sys_stats_zero",
150        ":protos_perfetto_config_track_event_cpp",
151        ":protos_perfetto_config_track_event_zero",
152        ":protos_perfetto_config_zero",
153        ":protos_perfetto_trace_android_zero",
154        ":protos_perfetto_trace_chrome_zero",
155        ":protos_perfetto_trace_filesystem_zero",
156        ":protos_perfetto_trace_ftrace_zero",
157        ":protos_perfetto_trace_gpu_zero",
158        ":protos_perfetto_trace_interned_data_zero",
159        ":protos_perfetto_trace_minimal_zero",
160        ":protos_perfetto_trace_non_minimal_zero",
161        ":protos_perfetto_trace_perfetto_zero",
162        ":protos_perfetto_trace_power_zero",
163        ":protos_perfetto_trace_profiling_zero",
164        ":protos_perfetto_trace_ps_zero",
165        ":protos_perfetto_trace_sys_stats_zero",
166        ":protos_perfetto_trace_system_info_zero",
167        ":protos_perfetto_trace_track_event_cpp",
168        ":protos_perfetto_trace_track_event_zero",
169    ],
170)
171
172# GN target: //:libperfetto
173perfetto_cc_library(
174    name = "libperfetto",
175    srcs = [
176        ":src_android_internal_headers",
177        ":src_android_internal_lazy_library_loader",
178        ":src_android_stats_android_stats",
179        ":src_android_stats_perfetto_atoms",
180        ":src_kallsyms_kallsyms",
181        ":src_protozero_filtering_bytecode_common",
182        ":src_protozero_filtering_bytecode_parser",
183        ":src_protozero_filtering_message_filter",
184        ":src_traced_probes_android_log_android_log",
185        ":src_traced_probes_common_common",
186        ":src_traced_probes_data_source",
187        ":src_traced_probes_filesystem_filesystem",
188        ":src_traced_probes_ftrace_format_parser_format_parser",
189        ":src_traced_probes_ftrace_ftrace",
190        ":src_traced_probes_ftrace_ftrace_procfs",
191        ":src_traced_probes_initial_display_state_initial_display_state",
192        ":src_traced_probes_metatrace_metatrace",
193        ":src_traced_probes_packages_list_packages_list",
194        ":src_traced_probes_packages_list_packages_list_parser",
195        ":src_traced_probes_power_power",
196        ":src_traced_probes_probes",
197        ":src_traced_probes_probes_src",
198        ":src_traced_probes_ps_ps",
199        ":src_traced_probes_sys_stats_sys_stats",
200        ":src_traced_probes_system_info_system_info",
201        ":src_traced_service_service",
202        ":src_tracing_common",
203        ":src_tracing_consumer_api_deprecated_consumer_api_deprecated",
204        ":src_tracing_core_core",
205        ":src_tracing_core_service",
206        ":src_tracing_ipc_common",
207        ":src_tracing_ipc_consumer_consumer",
208        ":src_tracing_ipc_producer_producer",
209        ":src_tracing_ipc_service_service",
210    ],
211    hdrs = [
212        ":include_perfetto_base_base",
213        ":include_perfetto_ext_base_base",
214        ":include_perfetto_ext_ipc_ipc",
215        ":include_perfetto_ext_traced_sys_stats_counters",
216        ":include_perfetto_ext_traced_traced",
217        ":include_perfetto_ext_tracing_core_core",
218        ":include_perfetto_ext_tracing_ipc_ipc",
219        ":include_perfetto_protozero_protozero",
220        ":include_perfetto_public_public",
221        ":include_perfetto_tracing_core_core",
222        ":include_perfetto_tracing_core_forward_decls",
223        ":include_perfetto_tracing_tracing",
224    ],
225    deps = [
226        ":perfetto_ipc",
227        ":protos_perfetto_common_cpp",
228        ":protos_perfetto_common_zero",
229        ":protos_perfetto_config_android_cpp",
230        ":protos_perfetto_config_android_zero",
231        ":protos_perfetto_config_cpp",
232        ":protos_perfetto_config_ftrace_cpp",
233        ":protos_perfetto_config_ftrace_zero",
234        ":protos_perfetto_config_gpu_cpp",
235        ":protos_perfetto_config_gpu_zero",
236        ":protos_perfetto_config_inode_file_cpp",
237        ":protos_perfetto_config_inode_file_zero",
238        ":protos_perfetto_config_interceptors_cpp",
239        ":protos_perfetto_config_interceptors_zero",
240        ":protos_perfetto_config_power_cpp",
241        ":protos_perfetto_config_power_zero",
242        ":protos_perfetto_config_process_stats_cpp",
243        ":protos_perfetto_config_process_stats_zero",
244        ":protos_perfetto_config_profiling_cpp",
245        ":protos_perfetto_config_profiling_zero",
246        ":protos_perfetto_config_sys_stats_cpp",
247        ":protos_perfetto_config_sys_stats_zero",
248        ":protos_perfetto_config_track_event_cpp",
249        ":protos_perfetto_config_track_event_zero",
250        ":protos_perfetto_config_zero",
251        ":protos_perfetto_ipc_cpp",
252        ":protos_perfetto_ipc_ipc",
253        ":protos_perfetto_trace_android_zero",
254        ":protos_perfetto_trace_chrome_zero",
255        ":protos_perfetto_trace_filesystem_zero",
256        ":protos_perfetto_trace_ftrace_zero",
257        ":protos_perfetto_trace_gpu_zero",
258        ":protos_perfetto_trace_interned_data_zero",
259        ":protos_perfetto_trace_minimal_zero",
260        ":protos_perfetto_trace_non_minimal_zero",
261        ":protos_perfetto_trace_perfetto_zero",
262        ":protos_perfetto_trace_power_zero",
263        ":protos_perfetto_trace_profiling_zero",
264        ":protos_perfetto_trace_ps_zero",
265        ":protos_perfetto_trace_sys_stats_zero",
266        ":protos_perfetto_trace_system_info_zero",
267        ":protos_perfetto_trace_track_event_cpp",
268        ":protos_perfetto_trace_track_event_zero",
269        ":protozero",
270        ":src_base_base",
271    ],
272    linkstatic = True,
273)
274
275# GN target: //include/perfetto/base:base
276filegroup(
277    name = "include_perfetto_base_base",
278    srcs = [
279        "include/perfetto/base/build_config.h",
280        "include/perfetto/base/compiler.h",
281        "include/perfetto/base/export.h",
282        "include/perfetto/base/flat_set.h",
283        "include/perfetto/base/logging.h",
284        "include/perfetto/base/platform_handle.h",
285        "include/perfetto/base/proc_utils.h",
286        "include/perfetto/base/status.h",
287        "include/perfetto/base/task_runner.h",
288        "include/perfetto/base/template_util.h",
289        "include/perfetto/base/thread_utils.h",
290        "include/perfetto/base/time.h",
291    ],
292)
293
294# GN target: //include/perfetto/ext/base:base
295filegroup(
296    name = "include_perfetto_ext_base_base",
297    srcs = [
298        "include/perfetto/ext/base/circular_queue.h",
299        "include/perfetto/ext/base/container_annotations.h",
300        "include/perfetto/ext/base/ctrl_c_handler.h",
301        "include/perfetto/ext/base/endian.h",
302        "include/perfetto/ext/base/event_fd.h",
303        "include/perfetto/ext/base/file_utils.h",
304        "include/perfetto/ext/base/getopt.h",
305        "include/perfetto/ext/base/getopt_compat.h",
306        "include/perfetto/ext/base/hash.h",
307        "include/perfetto/ext/base/metatrace.h",
308        "include/perfetto/ext/base/metatrace_events.h",
309        "include/perfetto/ext/base/no_destructor.h",
310        "include/perfetto/ext/base/optional.h",
311        "include/perfetto/ext/base/paged_memory.h",
312        "include/perfetto/ext/base/periodic_task.h",
313        "include/perfetto/ext/base/pipe.h",
314        "include/perfetto/ext/base/scoped_file.h",
315        "include/perfetto/ext/base/small_set.h",
316        "include/perfetto/ext/base/string_splitter.h",
317        "include/perfetto/ext/base/string_utils.h",
318        "include/perfetto/ext/base/string_view.h",
319        "include/perfetto/ext/base/string_writer.h",
320        "include/perfetto/ext/base/subprocess.h",
321        "include/perfetto/ext/base/temp_file.h",
322        "include/perfetto/ext/base/thread_annotations.h",
323        "include/perfetto/ext/base/thread_checker.h",
324        "include/perfetto/ext/base/thread_task_runner.h",
325        "include/perfetto/ext/base/thread_utils.h",
326        "include/perfetto/ext/base/unix_socket.h",
327        "include/perfetto/ext/base/unix_task_runner.h",
328        "include/perfetto/ext/base/utils.h",
329        "include/perfetto/ext/base/uuid.h",
330        "include/perfetto/ext/base/version.h",
331        "include/perfetto/ext/base/waitable_event.h",
332        "include/perfetto/ext/base/watchdog.h",
333        "include/perfetto/ext/base/watchdog_noop.h",
334        "include/perfetto/ext/base/watchdog_posix.h",
335        "include/perfetto/ext/base/weak_ptr.h",
336    ],
337)
338
339# GN target: //include/perfetto/ext/ipc:ipc
340filegroup(
341    name = "include_perfetto_ext_ipc_ipc",
342    srcs = [
343        "include/perfetto/ext/ipc/async_result.h",
344        "include/perfetto/ext/ipc/basic_types.h",
345        "include/perfetto/ext/ipc/client.h",
346        "include/perfetto/ext/ipc/client_info.h",
347        "include/perfetto/ext/ipc/codegen_helpers.h",
348        "include/perfetto/ext/ipc/deferred.h",
349        "include/perfetto/ext/ipc/host.h",
350        "include/perfetto/ext/ipc/service.h",
351        "include/perfetto/ext/ipc/service_descriptor.h",
352        "include/perfetto/ext/ipc/service_proxy.h",
353    ],
354)
355
356# GN target: //include/perfetto/ext/trace_processor/importers/memory_tracker:memory_tracker
357filegroup(
358    name = "include_perfetto_ext_trace_processor_importers_memory_tracker_memory_tracker",
359    srcs = [
360        "include/perfetto/ext/trace_processor/importers/memory_tracker/graph.h",
361        "include/perfetto/ext/trace_processor/importers/memory_tracker/graph_processor.h",
362        "include/perfetto/ext/trace_processor/importers/memory_tracker/memory_allocator_node_id.h",
363        "include/perfetto/ext/trace_processor/importers/memory_tracker/memory_graph_edge.h",
364        "include/perfetto/ext/trace_processor/importers/memory_tracker/raw_memory_graph_node.h",
365        "include/perfetto/ext/trace_processor/importers/memory_tracker/raw_process_memory_node.h",
366    ],
367)
368
369# GN target: //include/perfetto/ext/trace_processor:export_json
370filegroup(
371    name = "include_perfetto_ext_trace_processor_export_json",
372    srcs = [
373        "include/perfetto/ext/trace_processor/export_json.h",
374    ],
375)
376
377# GN target: //include/perfetto/ext/traced:sys_stats_counters
378filegroup(
379    name = "include_perfetto_ext_traced_sys_stats_counters",
380    srcs = [
381        "include/perfetto/ext/traced/sys_stats_counters.h",
382    ],
383)
384
385# GN target: //include/perfetto/ext/traced:traced
386filegroup(
387    name = "include_perfetto_ext_traced_traced",
388    srcs = [
389        "include/perfetto/ext/traced/data_source_types.h",
390        "include/perfetto/ext/traced/traced.h",
391    ],
392)
393
394# GN target: //include/perfetto/ext/tracing/core:core
395filegroup(
396    name = "include_perfetto_ext_tracing_core_core",
397    srcs = [
398        "include/perfetto/ext/tracing/core/basic_types.h",
399        "include/perfetto/ext/tracing/core/commit_data_request.h",
400        "include/perfetto/ext/tracing/core/consumer.h",
401        "include/perfetto/ext/tracing/core/observable_events.h",
402        "include/perfetto/ext/tracing/core/producer.h",
403        "include/perfetto/ext/tracing/core/shared_memory.h",
404        "include/perfetto/ext/tracing/core/shared_memory_abi.h",
405        "include/perfetto/ext/tracing/core/shared_memory_arbiter.h",
406        "include/perfetto/ext/tracing/core/slice.h",
407        "include/perfetto/ext/tracing/core/trace_packet.h",
408        "include/perfetto/ext/tracing/core/trace_stats.h",
409        "include/perfetto/ext/tracing/core/trace_writer.h",
410        "include/perfetto/ext/tracing/core/tracing_service.h",
411    ],
412)
413
414# GN target: //include/perfetto/ext/tracing/ipc:ipc
415filegroup(
416    name = "include_perfetto_ext_tracing_ipc_ipc",
417    srcs = [
418        "include/perfetto/ext/tracing/ipc/consumer_ipc_client.h",
419        "include/perfetto/ext/tracing/ipc/default_socket.h",
420        "include/perfetto/ext/tracing/ipc/producer_ipc_client.h",
421        "include/perfetto/ext/tracing/ipc/service_ipc_host.h",
422    ],
423)
424
425# GN target: //include/perfetto/profiling:pprof_builder
426filegroup(
427    name = "include_perfetto_profiling_pprof_builder",
428    srcs = [
429        "include/perfetto/profiling/pprof_builder.h",
430    ],
431)
432
433# GN target: //include/perfetto/protozero:protozero
434filegroup(
435    name = "include_perfetto_protozero_protozero",
436    srcs = [
437        "include/perfetto/protozero/contiguous_memory_range.h",
438        "include/perfetto/protozero/copyable_ptr.h",
439        "include/perfetto/protozero/cpp_message_obj.h",
440        "include/perfetto/protozero/field.h",
441        "include/perfetto/protozero/field_writer.h",
442        "include/perfetto/protozero/message.h",
443        "include/perfetto/protozero/message_arena.h",
444        "include/perfetto/protozero/message_handle.h",
445        "include/perfetto/protozero/packed_repeated_fields.h",
446        "include/perfetto/protozero/proto_decoder.h",
447        "include/perfetto/protozero/proto_utils.h",
448        "include/perfetto/protozero/root_message.h",
449        "include/perfetto/protozero/scattered_heap_buffer.h",
450        "include/perfetto/protozero/scattered_stream_null_delegate.h",
451        "include/perfetto/protozero/scattered_stream_writer.h",
452        "include/perfetto/protozero/static_buffer.h",
453    ],
454)
455
456# GN target: //include/perfetto/public:public
457filegroup(
458    name = "include_perfetto_public_public",
459    srcs = [
460        "include/perfetto/public/consumer_api.h",
461    ],
462)
463
464# GN target: //include/perfetto/trace_processor:basic_types
465filegroup(
466    name = "include_perfetto_trace_processor_basic_types",
467    srcs = [
468        "include/perfetto/trace_processor/basic_types.h",
469        "include/perfetto/trace_processor/status.h",
470    ],
471)
472
473# GN target: //include/perfetto/trace_processor:storage
474filegroup(
475    name = "include_perfetto_trace_processor_storage",
476    srcs = [
477        "include/perfetto/trace_processor/trace_processor_storage.h",
478    ],
479)
480
481# GN target: //include/perfetto/trace_processor:trace_processor
482filegroup(
483    name = "include_perfetto_trace_processor_trace_processor",
484    srcs = [
485        "include/perfetto/trace_processor/iterator.h",
486        "include/perfetto/trace_processor/read_trace.h",
487        "include/perfetto/trace_processor/trace_processor.h",
488    ],
489)
490
491# GN target: //include/perfetto/tracing/core:core
492filegroup(
493    name = "include_perfetto_tracing_core_core",
494    srcs = [
495        "include/perfetto/tracing/core/chrome_config.h",
496        "include/perfetto/tracing/core/data_source_config.h",
497        "include/perfetto/tracing/core/data_source_descriptor.h",
498        "include/perfetto/tracing/core/trace_config.h",
499        "include/perfetto/tracing/core/tracing_service_capabilities.h",
500        "include/perfetto/tracing/core/tracing_service_state.h",
501    ],
502)
503
504# GN target: //include/perfetto/tracing/core:forward_decls
505filegroup(
506    name = "include_perfetto_tracing_core_forward_decls",
507    srcs = [
508        "include/perfetto/tracing/core/forward_decls.h",
509    ],
510)
511
512# GN target: //include/perfetto/tracing:tracing
513filegroup(
514    name = "include_perfetto_tracing_tracing",
515    srcs = [
516        "include/perfetto/tracing/backend_type.h",
517        "include/perfetto/tracing/buffer_exhausted_policy.h",
518        "include/perfetto/tracing/console_interceptor.h",
519        "include/perfetto/tracing/data_source.h",
520        "include/perfetto/tracing/debug_annotation.h",
521        "include/perfetto/tracing/event_context.h",
522        "include/perfetto/tracing/interceptor.h",
523        "include/perfetto/tracing/internal/basic_types.h",
524        "include/perfetto/tracing/internal/checked_scope.h",
525        "include/perfetto/tracing/internal/compile_time_hash.h",
526        "include/perfetto/tracing/internal/data_source_internal.h",
527        "include/perfetto/tracing/internal/in_process_tracing_backend.h",
528        "include/perfetto/tracing/internal/interceptor_trace_writer.h",
529        "include/perfetto/tracing/internal/system_tracing_backend.h",
530        "include/perfetto/tracing/internal/tracing_backend_fake.h",
531        "include/perfetto/tracing/internal/tracing_muxer.h",
532        "include/perfetto/tracing/internal/tracing_tls.h",
533        "include/perfetto/tracing/internal/track_event_data_source.h",
534        "include/perfetto/tracing/internal/track_event_internal.h",
535        "include/perfetto/tracing/internal/track_event_interned_fields.h",
536        "include/perfetto/tracing/internal/track_event_macros.h",
537        "include/perfetto/tracing/internal/write_track_event_args.h",
538        "include/perfetto/tracing/locked_handle.h",
539        "include/perfetto/tracing/platform.h",
540        "include/perfetto/tracing/string_helpers.h",
541        "include/perfetto/tracing/trace_writer_base.h",
542        "include/perfetto/tracing/traced_proto.h",
543        "include/perfetto/tracing/traced_value.h",
544        "include/perfetto/tracing/traced_value_forward.h",
545        "include/perfetto/tracing/tracing.h",
546        "include/perfetto/tracing/tracing_backend.h",
547        "include/perfetto/tracing/tracing_policy.h",
548        "include/perfetto/tracing/track.h",
549        "include/perfetto/tracing/track_event.h",
550        "include/perfetto/tracing/track_event_category_registry.h",
551        "include/perfetto/tracing/track_event_interned_data_index.h",
552        "include/perfetto/tracing/track_event_legacy.h",
553        "include/perfetto/tracing/track_event_state_tracker.h",
554    ],
555)
556
557# GN target: //src/android_internal:headers
558filegroup(
559    name = "src_android_internal_headers",
560    srcs = [
561        "src/android_internal/atrace_hal.h",
562        "src/android_internal/health_hal.h",
563        "src/android_internal/incident_service.h",
564        "src/android_internal/power_stats.h",
565        "src/android_internal/statsd_logging.h",
566        "src/android_internal/tracing_service_proxy.h",
567    ],
568)
569
570# GN target: //src/android_internal:lazy_library_loader
571filegroup(
572    name = "src_android_internal_lazy_library_loader",
573    srcs = [
574        "src/android_internal/lazy_library_loader.cc",
575        "src/android_internal/lazy_library_loader.h",
576    ],
577)
578
579# GN target: //src/android_stats:android_stats
580filegroup(
581    name = "src_android_stats_android_stats",
582    srcs = [
583        "src/android_stats/statsd_logging_helper.cc",
584        "src/android_stats/statsd_logging_helper.h",
585    ],
586)
587
588# GN target: //src/android_stats:perfetto_atoms
589filegroup(
590    name = "src_android_stats_perfetto_atoms",
591    srcs = [
592        "src/android_stats/perfetto_atoms.h",
593    ],
594)
595
596# GN target: //src/base:base
597perfetto_cc_library(
598    name = "src_base_base",
599    srcs = [
600        "src/base/ctrl_c_handler.cc",
601        "src/base/event_fd.cc",
602        "src/base/file_utils.cc",
603        "src/base/getopt_compat.cc",
604        "src/base/logging.cc",
605        "src/base/metatrace.cc",
606        "src/base/paged_memory.cc",
607        "src/base/periodic_task.cc",
608        "src/base/pipe.cc",
609        "src/base/status.cc",
610        "src/base/string_splitter.cc",
611        "src/base/string_utils.cc",
612        "src/base/string_view.cc",
613        "src/base/subprocess.cc",
614        "src/base/subprocess_posix.cc",
615        "src/base/subprocess_windows.cc",
616        "src/base/temp_file.cc",
617        "src/base/thread_checker.cc",
618        "src/base/thread_task_runner.cc",
619        "src/base/time.cc",
620        "src/base/unix_task_runner.cc",
621        "src/base/utils.cc",
622        "src/base/uuid.cc",
623        "src/base/version.cc",
624        "src/base/virtual_destructors.cc",
625        "src/base/waitable_event.cc",
626        "src/base/watchdog_posix.cc",
627    ],
628    hdrs = [
629        ":include_perfetto_base_base",
630        ":include_perfetto_ext_base_base",
631    ],
632    deps = [
633    ] + PERFETTO_CONFIG.deps.version_header,
634    linkstatic = True,
635)
636
637# GN target: //src/base:unix_socket
638perfetto_cc_library(
639    name = "src_base_unix_socket",
640    srcs = [
641        "src/base/unix_socket.cc",
642    ],
643    hdrs = [
644        ":include_perfetto_base_base",
645        ":include_perfetto_ext_base_base",
646    ],
647    linkstatic = True,
648)
649
650genrule(
651    name = "src_base_version_gen_h",
652    srcs = [
653        "CHANGELOG",
654    ],
655    outs = [
656        "perfetto_version.gen.h",
657    ],
658    cmd = "$(location gen_version_header_py) --cpp_out=$@ --changelog=$(location CHANGELOG)",
659    exec_tools = [
660        ":gen_version_header_py",
661    ],
662)
663
664# GN target: //src/ipc:client
665filegroup(
666    name = "src_ipc_client",
667    srcs = [
668        "src/ipc/client_impl.cc",
669        "src/ipc/client_impl.h",
670        "src/ipc/service_proxy.cc",
671    ],
672)
673
674# GN target: //src/ipc:common
675filegroup(
676    name = "src_ipc_common",
677    srcs = [
678        "src/ipc/buffered_frame_deserializer.cc",
679        "src/ipc/buffered_frame_deserializer.h",
680        "src/ipc/deferred.cc",
681        "src/ipc/virtual_destructors.cc",
682    ],
683)
684
685# GN target: //src/ipc:host
686filegroup(
687    name = "src_ipc_host",
688    srcs = [
689        "src/ipc/host_impl.cc",
690        "src/ipc/host_impl.h",
691    ],
692)
693
694# GN target: //src/kallsyms:kallsyms
695filegroup(
696    name = "src_kallsyms_kallsyms",
697    srcs = [
698        "src/kallsyms/kernel_symbol_map.cc",
699        "src/kallsyms/kernel_symbol_map.h",
700        "src/kallsyms/lazy_kernel_symbolizer.cc",
701        "src/kallsyms/lazy_kernel_symbolizer.h",
702    ],
703)
704
705perfetto_cc_proto_descriptor(
706    name = "src_perfetto_cmd_gen_cc_config_descriptor",
707    deps = [
708        ":protos_perfetto_config_perfetto_config_descriptor",
709    ],
710    outs = [
711        "src/perfetto_cmd/perfetto_config.descriptor.h",
712    ],
713)
714
715# GN target: //src/perfetto_cmd:perfetto_cmd
716filegroup(
717    name = "src_perfetto_cmd_perfetto_cmd",
718    srcs = [
719        "src/perfetto_cmd/config.cc",
720        "src/perfetto_cmd/config.h",
721        "src/perfetto_cmd/packet_writer.cc",
722        "src/perfetto_cmd/packet_writer.h",
723        "src/perfetto_cmd/pbtxt_to_pb.cc",
724        "src/perfetto_cmd/pbtxt_to_pb.h",
725        "src/perfetto_cmd/perfetto_cmd.cc",
726        "src/perfetto_cmd/perfetto_cmd.h",
727        "src/perfetto_cmd/rate_limiter.cc",
728        "src/perfetto_cmd/rate_limiter.h",
729    ],
730)
731
732# GN target: //src/perfetto_cmd:trigger_producer
733filegroup(
734    name = "src_perfetto_cmd_trigger_producer",
735    srcs = [
736        "src/perfetto_cmd/trigger_producer.cc",
737        "src/perfetto_cmd/trigger_producer.h",
738    ],
739)
740
741# GN target: //src/profiling/symbolizer:symbolize_database
742filegroup(
743    name = "src_profiling_symbolizer_symbolize_database",
744    srcs = [
745        "src/profiling/symbolizer/symbolize_database.cc",
746        "src/profiling/symbolizer/symbolize_database.h",
747    ],
748)
749
750# GN target: //src/profiling/symbolizer:symbolizer
751filegroup(
752    name = "src_profiling_symbolizer_symbolizer",
753    srcs = [
754        "src/profiling/symbolizer/filesystem.h",
755        "src/profiling/symbolizer/filesystem_posix.cc",
756        "src/profiling/symbolizer/filesystem_windows.cc",
757        "src/profiling/symbolizer/local_symbolizer.cc",
758        "src/profiling/symbolizer/local_symbolizer.h",
759        "src/profiling/symbolizer/scoped_read_mmap.h",
760        "src/profiling/symbolizer/scoped_read_mmap_posix.cc",
761        "src/profiling/symbolizer/scoped_read_mmap_windows.cc",
762        "src/profiling/symbolizer/subprocess.h",
763        "src/profiling/symbolizer/subprocess_posix.cc",
764        "src/profiling/symbolizer/subprocess_windows.cc",
765        "src/profiling/symbolizer/symbolizer.cc",
766        "src/profiling/symbolizer/symbolizer.h",
767    ],
768)
769
770# GN target: //src/profiling:deobfuscator
771filegroup(
772    name = "src_profiling_deobfuscator",
773    srcs = [
774        "src/profiling/deobfuscator.cc",
775        "src/profiling/deobfuscator.h",
776    ],
777)
778
779# GN target: //src/protozero/filtering:bytecode_common
780filegroup(
781    name = "src_protozero_filtering_bytecode_common",
782    srcs = [
783        "src/protozero/filtering/filter_bytecode_common.h",
784    ],
785)
786
787# GN target: //src/protozero/filtering:bytecode_parser
788filegroup(
789    name = "src_protozero_filtering_bytecode_parser",
790    srcs = [
791        "src/protozero/filtering/filter_bytecode_parser.cc",
792        "src/protozero/filtering/filter_bytecode_parser.h",
793    ],
794)
795
796# GN target: //src/protozero/filtering:message_filter
797filegroup(
798    name = "src_protozero_filtering_message_filter",
799    srcs = [
800        "src/protozero/filtering/message_filter.cc",
801        "src/protozero/filtering/message_filter.h",
802        "src/protozero/filtering/message_tokenizer.h",
803    ],
804)
805
806# GN target: //src/trace_processor/analysis:analysis
807filegroup(
808    name = "src_trace_processor_analysis_analysis",
809    srcs = [
810        "src/trace_processor/analysis/describe_slice.cc",
811        "src/trace_processor/analysis/describe_slice.h",
812    ],
813)
814
815# GN target: //src/trace_processor/containers:containers
816perfetto_cc_library(
817    name = "src_trace_processor_containers_containers",
818    srcs = [
819        "src/trace_processor/containers/bit_vector.cc",
820        "src/trace_processor/containers/bit_vector_iterators.cc",
821        "src/trace_processor/containers/nullable_vector.cc",
822        "src/trace_processor/containers/row_map.cc",
823        "src/trace_processor/containers/string_pool.cc",
824    ],
825    hdrs = [
826        ":include_perfetto_base_base",
827        ":include_perfetto_protozero_protozero",
828        "src/trace_processor/containers/bit_vector.h",
829        "src/trace_processor/containers/bit_vector_iterators.h",
830        "src/trace_processor/containers/null_term_string_view.h",
831        "src/trace_processor/containers/nullable_vector.h",
832        "src/trace_processor/containers/row_map.h",
833        "src/trace_processor/containers/string_pool.h",
834    ],
835    deps = [
836        ":src_base_base",
837    ],
838    linkstatic = True,
839)
840
841# GN target: //src/trace_processor/db:db
842filegroup(
843    name = "src_trace_processor_db_db",
844    srcs = [
845        "src/trace_processor/db/column.cc",
846        "src/trace_processor/db/column.h",
847        "src/trace_processor/db/compare.h",
848        "src/trace_processor/db/table.cc",
849        "src/trace_processor/db/table.h",
850        "src/trace_processor/db/typed_column.h",
851        "src/trace_processor/db/typed_column_internal.h",
852    ],
853)
854
855# GN target: //src/trace_processor/importers/common:common
856filegroup(
857    name = "src_trace_processor_importers_common_common",
858    srcs = [
859        "src/trace_processor/importers/common/args_tracker.cc",
860        "src/trace_processor/importers/common/args_tracker.h",
861        "src/trace_processor/importers/common/chunked_trace_reader.h",
862        "src/trace_processor/importers/common/clock_tracker.cc",
863        "src/trace_processor/importers/common/clock_tracker.h",
864        "src/trace_processor/importers/common/event_tracker.cc",
865        "src/trace_processor/importers/common/event_tracker.h",
866        "src/trace_processor/importers/common/flow_tracker.cc",
867        "src/trace_processor/importers/common/flow_tracker.h",
868        "src/trace_processor/importers/common/global_args_tracker.cc",
869        "src/trace_processor/importers/common/global_args_tracker.h",
870        "src/trace_processor/importers/common/process_tracker.cc",
871        "src/trace_processor/importers/common/process_tracker.h",
872        "src/trace_processor/importers/common/slice_tracker.cc",
873        "src/trace_processor/importers/common/slice_tracker.h",
874        "src/trace_processor/importers/common/system_info_tracker.cc",
875        "src/trace_processor/importers/common/system_info_tracker.h",
876        "src/trace_processor/importers/common/trace_blob_view.h",
877        "src/trace_processor/importers/common/trace_parser.h",
878        "src/trace_processor/importers/common/track_tracker.cc",
879        "src/trace_processor/importers/common/track_tracker.h",
880    ],
881)
882
883# GN target: //src/trace_processor/importers/memory_tracker:graph_processor
884filegroup(
885    name = "src_trace_processor_importers_memory_tracker_graph_processor",
886    srcs = [
887        "src/trace_processor/importers/memory_tracker/graph.cc",
888        "src/trace_processor/importers/memory_tracker/graph_processor.cc",
889        "src/trace_processor/importers/memory_tracker/memory_allocator_node_id.cc",
890        "src/trace_processor/importers/memory_tracker/raw_memory_graph_node.cc",
891        "src/trace_processor/importers/memory_tracker/raw_process_memory_node.cc",
892    ],
893)
894
895perfetto_cc_proto_descriptor(
896    name = "src_trace_processor_importers_gen_cc_chrome_track_event_descriptor",
897    deps = [
898        ":protos_third_party_chromium_chrome_track_event_descriptor",
899    ],
900    outs = [
901        "src/trace_processor/importers/chrome_track_event.descriptor.h",
902    ],
903)
904
905perfetto_cc_proto_descriptor(
906    name = "src_trace_processor_importers_gen_cc_config_descriptor",
907    deps = [
908        ":protos_perfetto_config_descriptor",
909    ],
910    outs = [
911        "src/trace_processor/importers/config.descriptor.h",
912    ],
913)
914
915perfetto_cc_proto_descriptor(
916    name = "src_trace_processor_importers_gen_cc_track_event_descriptor",
917    deps = [
918        ":protos_perfetto_trace_track_event_track_event_descriptor",
919    ],
920    outs = [
921        "src/trace_processor/importers/track_event.descriptor.h",
922    ],
923)
924
925perfetto_cc_proto_descriptor(
926    name = "src_trace_processor_metrics_gen_cc_all_chrome_metrics_descriptor",
927    deps = [
928        ":protos_perfetto_metrics_chrome_descriptor",
929    ],
930    outs = [
931        "src/trace_processor/metrics/chrome/all_chrome_metrics.descriptor.h",
932    ],
933)
934
935perfetto_cc_proto_descriptor(
936    name = "src_trace_processor_metrics_gen_cc_metrics_descriptor",
937    deps = [
938        ":protos_perfetto_metrics_descriptor",
939    ],
940    outs = [
941        "src/trace_processor/metrics/metrics.descriptor.h",
942    ],
943)
944
945genrule(
946    name = "src_trace_processor_metrics_gen_merged_sql_metrics",
947    srcs = [
948        "src/trace_processor/metrics/android/android_batt.sql",
949        "src/trace_processor/metrics/android/android_cpu.sql",
950        "src/trace_processor/metrics/android/android_cpu_agg.sql",
951        "src/trace_processor/metrics/android/android_cpu_raw_metrics_per_core.sql",
952        "src/trace_processor/metrics/android/android_dma_heap.sql",
953        "src/trace_processor/metrics/android/android_fastrpc.sql",
954        "src/trace_processor/metrics/android/android_gpu.sql",
955        "src/trace_processor/metrics/android/android_hwcomposer.sql",
956        "src/trace_processor/metrics/android/android_hwui_metric.sql",
957        "src/trace_processor/metrics/android/android_hwui_threads.sql",
958        "src/trace_processor/metrics/android/android_ion.sql",
959        "src/trace_processor/metrics/android/android_jank.sql",
960        "src/trace_processor/metrics/android/android_lmk.sql",
961        "src/trace_processor/metrics/android/android_lmk_reason.sql",
962        "src/trace_processor/metrics/android/android_mem.sql",
963        "src/trace_processor/metrics/android/android_mem_unagg.sql",
964        "src/trace_processor/metrics/android/android_package_list.sql",
965        "src/trace_processor/metrics/android/android_powrails.sql",
966        "src/trace_processor/metrics/android/android_proxy_power.sql",
967        "src/trace_processor/metrics/android/android_startup.sql",
968        "src/trace_processor/metrics/android/android_startup_launches.sql",
969        "src/trace_processor/metrics/android/android_surfaceflinger.sql",
970        "src/trace_processor/metrics/android/android_sysui_cuj.sql",
971        "src/trace_processor/metrics/android/android_task_names.sql",
972        "src/trace_processor/metrics/android/android_thread_time_in_state.sql",
973        "src/trace_processor/metrics/android/composer_execution.sql",
974        "src/trace_processor/metrics/android/composition_layers.sql",
975        "src/trace_processor/metrics/android/cpu_info.sql",
976        "src/trace_processor/metrics/android/display_metrics.sql",
977        "src/trace_processor/metrics/android/frame_missed.sql",
978        "src/trace_processor/metrics/android/g2d.sql",
979        "src/trace_processor/metrics/android/g2d_duration.sql",
980        "src/trace_processor/metrics/android/global_counter_span_view.sql",
981        "src/trace_processor/metrics/android/hsc_startups.sql",
982        "src/trace_processor/metrics/android/java_heap_histogram.sql",
983        "src/trace_processor/metrics/android/java_heap_stats.sql",
984        "src/trace_processor/metrics/android/mem_stats_priority_breakdown.sql",
985        "src/trace_processor/metrics/android/power_drain_in_watts.sql",
986        "src/trace_processor/metrics/android/power_profile_data.sql",
987        "src/trace_processor/metrics/android/process_counter_span_view.sql",
988        "src/trace_processor/metrics/android/process_mem.sql",
989        "src/trace_processor/metrics/android/process_metadata.sql",
990        "src/trace_processor/metrics/android/process_oom_score.sql",
991        "src/trace_processor/metrics/android/process_unagg_mem_view.sql",
992        "src/trace_processor/metrics/android/span_view_stats.sql",
993        "src/trace_processor/metrics/android/unsymbolized_frames.sql",
994        "src/trace_processor/metrics/chrome/actual_power_by_category.sql",
995        "src/trace_processor/metrics/chrome/actual_power_by_rail_mode.sql",
996        "src/trace_processor/metrics/chrome/chrome_event_metadata.sql",
997        "src/trace_processor/metrics/chrome/chrome_processes.sql",
998        "src/trace_processor/metrics/chrome/chrome_thread_slice_with_cpu_time.sql",
999        "src/trace_processor/metrics/chrome/cpu_time_by_category.sql",
1000        "src/trace_processor/metrics/chrome/cpu_time_by_rail_mode.sql",
1001        "src/trace_processor/metrics/chrome/estimated_power_by_category.sql",
1002        "src/trace_processor/metrics/chrome/estimated_power_by_rail_mode.sql",
1003        "src/trace_processor/metrics/chrome/rail_modes.sql",
1004        "src/trace_processor/metrics/chrome/scroll_flow_event.sql",
1005        "src/trace_processor/metrics/chrome/scroll_flow_event_queuing_delay.sql",
1006        "src/trace_processor/metrics/chrome/scroll_jank.sql",
1007        "src/trace_processor/metrics/chrome/scroll_jank_cause.sql",
1008        "src/trace_processor/metrics/chrome/scroll_jank_cause_blocking_task.sql",
1009        "src/trace_processor/metrics/chrome/scroll_jank_cause_blocking_touch_move.sql",
1010        "src/trace_processor/metrics/chrome/scroll_jank_cause_get_bitmap.sql",
1011        "src/trace_processor/metrics/chrome/scroll_jank_cause_queuing_delay.sql",
1012        "src/trace_processor/metrics/chrome/test_chrome_metric.sql",
1013        "src/trace_processor/metrics/experimental/blink_gc_metric.sql",
1014        "src/trace_processor/metrics/experimental/frame_times.sql",
1015        "src/trace_processor/metrics/experimental/media_metric.sql",
1016        "src/trace_processor/metrics/experimental/reported_by_page.sql",
1017        "src/trace_processor/metrics/trace_metadata.sql",
1018        "src/trace_processor/metrics/trace_stats.sql",
1019        "src/trace_processor/metrics/webview/webview_power_usage.sql",
1020    ],
1021    outs = [
1022        "src/trace_processor/metrics/sql_metrics.h",
1023    ],
1024    cmd = "$(location gen_merged_sql_metrics_py) --cpp_out=$@ $(SRCS)",
1025    exec_tools = [
1026        ":gen_merged_sql_metrics_py",
1027    ],
1028)
1029
1030# GN target: //src/trace_processor/metrics:lib
1031filegroup(
1032    name = "src_trace_processor_metrics_lib",
1033    srcs = [
1034        "src/trace_processor/metrics/metrics.cc",
1035        "src/trace_processor/metrics/metrics.h",
1036    ],
1037)
1038
1039# GN target: //src/trace_processor/rpc:httpd
1040filegroup(
1041    name = "src_trace_processor_rpc_httpd",
1042    srcs = [
1043        "src/trace_processor/rpc/httpd.cc",
1044        "src/trace_processor/rpc/httpd.h",
1045    ],
1046)
1047
1048# GN target: //src/trace_processor/rpc:rpc
1049filegroup(
1050    name = "src_trace_processor_rpc_rpc",
1051    srcs = [
1052        "src/trace_processor/rpc/proto_ring_buffer.cc",
1053        "src/trace_processor/rpc/proto_ring_buffer.h",
1054        "src/trace_processor/rpc/query_result_serializer.cc",
1055        "src/trace_processor/rpc/query_result_serializer.h",
1056        "src/trace_processor/rpc/rpc.cc",
1057        "src/trace_processor/rpc/rpc.h",
1058    ],
1059)
1060
1061# GN target: //src/trace_processor/sqlite:sqlite
1062filegroup(
1063    name = "src_trace_processor_sqlite_sqlite",
1064    srcs = [
1065        "src/trace_processor/sqlite/db_sqlite_table.cc",
1066        "src/trace_processor/sqlite/db_sqlite_table.h",
1067        "src/trace_processor/sqlite/query_cache.h",
1068        "src/trace_processor/sqlite/query_constraints.cc",
1069        "src/trace_processor/sqlite/query_constraints.h",
1070        "src/trace_processor/sqlite/scoped_db.h",
1071        "src/trace_processor/sqlite/span_join_operator_table.cc",
1072        "src/trace_processor/sqlite/span_join_operator_table.h",
1073        "src/trace_processor/sqlite/sql_stats_table.cc",
1074        "src/trace_processor/sqlite/sql_stats_table.h",
1075        "src/trace_processor/sqlite/sqlite3_str_split.cc",
1076        "src/trace_processor/sqlite/sqlite3_str_split.h",
1077        "src/trace_processor/sqlite/sqlite_raw_table.cc",
1078        "src/trace_processor/sqlite/sqlite_raw_table.h",
1079        "src/trace_processor/sqlite/sqlite_table.cc",
1080        "src/trace_processor/sqlite/sqlite_table.h",
1081        "src/trace_processor/sqlite/sqlite_utils.h",
1082        "src/trace_processor/sqlite/stats_table.cc",
1083        "src/trace_processor/sqlite/stats_table.h",
1084        "src/trace_processor/sqlite/window_operator_table.cc",
1085        "src/trace_processor/sqlite/window_operator_table.h",
1086    ],
1087)
1088
1089# GN target: //src/trace_processor/storage:storage
1090filegroup(
1091    name = "src_trace_processor_storage_storage",
1092    srcs = [
1093        "src/trace_processor/storage/metadata.h",
1094        "src/trace_processor/storage/stats.h",
1095        "src/trace_processor/storage/trace_storage.cc",
1096        "src/trace_processor/storage/trace_storage.h",
1097    ],
1098)
1099
1100# GN target: //src/trace_processor/tables:tables
1101filegroup(
1102    name = "src_trace_processor_tables_tables",
1103    srcs = [
1104        "src/trace_processor/tables/android_tables.h",
1105        "src/trace_processor/tables/counter_tables.h",
1106        "src/trace_processor/tables/flow_tables.h",
1107        "src/trace_processor/tables/macros.h",
1108        "src/trace_processor/tables/macros_internal.h",
1109        "src/trace_processor/tables/memory_tables.h",
1110        "src/trace_processor/tables/metadata_tables.h",
1111        "src/trace_processor/tables/profiler_tables.h",
1112        "src/trace_processor/tables/slice_tables.h",
1113        "src/trace_processor/tables/table_destructors.cc",
1114        "src/trace_processor/tables/track_tables.h",
1115    ],
1116)
1117
1118# GN target: //src/trace_processor/types:types
1119filegroup(
1120    name = "src_trace_processor_types_types",
1121    srcs = [
1122        "src/trace_processor/types/destructible.cc",
1123        "src/trace_processor/types/destructible.h",
1124        "src/trace_processor/types/gfp_flags.cc",
1125        "src/trace_processor/types/gfp_flags.h",
1126        "src/trace_processor/types/softirq_action.h",
1127        "src/trace_processor/types/task_state.cc",
1128        "src/trace_processor/types/task_state.h",
1129        "src/trace_processor/types/trace_processor_context.h",
1130        "src/trace_processor/types/variadic.cc",
1131        "src/trace_processor/types/variadic.h",
1132        "src/trace_processor/types/version_number.h",
1133    ],
1134)
1135
1136# GN target: //src/trace_processor/util:descriptors
1137filegroup(
1138    name = "src_trace_processor_util_descriptors",
1139    srcs = [
1140        "src/trace_processor/util/descriptors.cc",
1141        "src/trace_processor/util/descriptors.h",
1142    ],
1143)
1144
1145# GN target: //src/trace_processor/util:proto_to_args_parser
1146filegroup(
1147    name = "src_trace_processor_util_proto_to_args_parser",
1148    srcs = [
1149        "src/trace_processor/util/proto_to_args_parser.cc",
1150        "src/trace_processor/util/proto_to_args_parser.h",
1151    ],
1152)
1153
1154# GN target: //src/trace_processor/util:protozero_to_text
1155filegroup(
1156    name = "src_trace_processor_util_protozero_to_text",
1157    srcs = [
1158        "src/trace_processor/util/protozero_to_text.cc",
1159        "src/trace_processor/util/protozero_to_text.h",
1160    ],
1161)
1162
1163# GN target: //src/trace_processor/util:util
1164filegroup(
1165    name = "src_trace_processor_util_util",
1166    srcs = [
1167        "src/trace_processor/util/status_macros.h",
1168    ],
1169)
1170
1171# GN target: //src/trace_processor:export_json
1172filegroup(
1173    name = "src_trace_processor_export_json",
1174    srcs = [
1175        "src/trace_processor/export_json.cc",
1176        "src/trace_processor/export_json.h",
1177    ],
1178)
1179
1180# GN target: //src/trace_processor:ftrace_descriptors
1181filegroup(
1182    name = "src_trace_processor_ftrace_descriptors",
1183    srcs = [
1184        "src/trace_processor/importers/ftrace/ftrace_descriptors.cc",
1185        "src/trace_processor/importers/ftrace/ftrace_descriptors.h",
1186    ],
1187)
1188
1189# GN target: //src/trace_processor:lib
1190filegroup(
1191    name = "src_trace_processor_lib",
1192    srcs = [
1193        "src/trace_processor/dynamic/ancestor_generator.cc",
1194        "src/trace_processor/dynamic/ancestor_generator.h",
1195        "src/trace_processor/dynamic/connected_flow_generator.cc",
1196        "src/trace_processor/dynamic/connected_flow_generator.h",
1197        "src/trace_processor/dynamic/descendant_slice_generator.cc",
1198        "src/trace_processor/dynamic/descendant_slice_generator.h",
1199        "src/trace_processor/dynamic/describe_slice_generator.cc",
1200        "src/trace_processor/dynamic/describe_slice_generator.h",
1201        "src/trace_processor/dynamic/experimental_annotated_stack_generator.cc",
1202        "src/trace_processor/dynamic/experimental_annotated_stack_generator.h",
1203        "src/trace_processor/dynamic/experimental_counter_dur_generator.cc",
1204        "src/trace_processor/dynamic/experimental_counter_dur_generator.h",
1205        "src/trace_processor/dynamic/experimental_flamegraph_generator.cc",
1206        "src/trace_processor/dynamic/experimental_flamegraph_generator.h",
1207        "src/trace_processor/dynamic/experimental_sched_upid_generator.cc",
1208        "src/trace_processor/dynamic/experimental_sched_upid_generator.h",
1209        "src/trace_processor/dynamic/experimental_slice_layout_generator.cc",
1210        "src/trace_processor/dynamic/experimental_slice_layout_generator.h",
1211        "src/trace_processor/dynamic/thread_state_generator.cc",
1212        "src/trace_processor/dynamic/thread_state_generator.h",
1213        "src/trace_processor/iterator_impl.cc",
1214        "src/trace_processor/iterator_impl.h",
1215        "src/trace_processor/read_trace.cc",
1216        "src/trace_processor/trace_processor.cc",
1217        "src/trace_processor/trace_processor_impl.cc",
1218        "src/trace_processor/trace_processor_impl.h",
1219    ],
1220)
1221
1222# GN target: //src/trace_processor:metatrace
1223filegroup(
1224    name = "src_trace_processor_metatrace",
1225    srcs = [
1226        "src/trace_processor/tp_metatrace.cc",
1227        "src/trace_processor/tp_metatrace.h",
1228    ],
1229)
1230
1231# GN target: //src/trace_processor:storage_full
1232filegroup(
1233    name = "src_trace_processor_storage_full",
1234    srcs = [
1235        "src/trace_processor/importers/additional_modules.cc",
1236        "src/trace_processor/importers/additional_modules.h",
1237        "src/trace_processor/importers/ftrace/binder_tracker.cc",
1238        "src/trace_processor/importers/ftrace/binder_tracker.h",
1239        "src/trace_processor/importers/ftrace/ftrace_module_impl.cc",
1240        "src/trace_processor/importers/ftrace/ftrace_module_impl.h",
1241        "src/trace_processor/importers/ftrace/ftrace_parser.cc",
1242        "src/trace_processor/importers/ftrace/ftrace_parser.h",
1243        "src/trace_processor/importers/ftrace/ftrace_tokenizer.cc",
1244        "src/trace_processor/importers/ftrace/ftrace_tokenizer.h",
1245        "src/trace_processor/importers/ftrace/rss_stat_tracker.cc",
1246        "src/trace_processor/importers/ftrace/rss_stat_tracker.h",
1247        "src/trace_processor/importers/ftrace/sched_event_tracker.cc",
1248        "src/trace_processor/importers/ftrace/sched_event_tracker.h",
1249        "src/trace_processor/importers/fuchsia/fuchsia_record.cc",
1250        "src/trace_processor/importers/fuchsia/fuchsia_trace_parser.cc",
1251        "src/trace_processor/importers/fuchsia/fuchsia_trace_parser.h",
1252        "src/trace_processor/importers/fuchsia/fuchsia_trace_tokenizer.cc",
1253        "src/trace_processor/importers/fuchsia/fuchsia_trace_tokenizer.h",
1254        "src/trace_processor/importers/fuchsia/fuchsia_trace_utils.cc",
1255        "src/trace_processor/importers/gzip/gzip_trace_parser.cc",
1256        "src/trace_processor/importers/gzip/gzip_trace_parser.h",
1257        "src/trace_processor/importers/json/json_trace_parser.cc",
1258        "src/trace_processor/importers/json/json_trace_parser.h",
1259        "src/trace_processor/importers/json/json_trace_tokenizer.cc",
1260        "src/trace_processor/importers/json/json_trace_tokenizer.h",
1261        "src/trace_processor/importers/json/json_tracker.cc",
1262        "src/trace_processor/importers/json/json_tracker.h",
1263        "src/trace_processor/importers/proto/android_probes_module.cc",
1264        "src/trace_processor/importers/proto/android_probes_module.h",
1265        "src/trace_processor/importers/proto/android_probes_parser.cc",
1266        "src/trace_processor/importers/proto/android_probes_parser.h",
1267        "src/trace_processor/importers/proto/android_probes_tracker.cc",
1268        "src/trace_processor/importers/proto/android_probes_tracker.h",
1269        "src/trace_processor/importers/proto/frame_timeline_event_parser.cc",
1270        "src/trace_processor/importers/proto/frame_timeline_event_parser.h",
1271        "src/trace_processor/importers/proto/gpu_event_parser.cc",
1272        "src/trace_processor/importers/proto/gpu_event_parser.h",
1273        "src/trace_processor/importers/proto/graphics_event_module.cc",
1274        "src/trace_processor/importers/proto/graphics_event_module.h",
1275        "src/trace_processor/importers/proto/graphics_frame_event_parser.cc",
1276        "src/trace_processor/importers/proto/graphics_frame_event_parser.h",
1277        "src/trace_processor/importers/proto/heap_graph_module.cc",
1278        "src/trace_processor/importers/proto/heap_graph_module.h",
1279        "src/trace_processor/importers/proto/heap_graph_tracker.cc",
1280        "src/trace_processor/importers/proto/heap_graph_tracker.h",
1281        "src/trace_processor/importers/proto/system_probes_module.cc",
1282        "src/trace_processor/importers/proto/system_probes_module.h",
1283        "src/trace_processor/importers/proto/system_probes_parser.cc",
1284        "src/trace_processor/importers/proto/system_probes_parser.h",
1285        "src/trace_processor/importers/proto/vulkan_memory_tracker.cc",
1286        "src/trace_processor/importers/proto/vulkan_memory_tracker.h",
1287        "src/trace_processor/importers/syscalls/syscall_tracker.cc",
1288        "src/trace_processor/importers/syscalls/syscalls_aarch32.h",
1289        "src/trace_processor/importers/syscalls/syscalls_aarch64.h",
1290        "src/trace_processor/importers/syscalls/syscalls_armeabi.h",
1291        "src/trace_processor/importers/syscalls/syscalls_x86.h",
1292        "src/trace_processor/importers/syscalls/syscalls_x86_64.h",
1293        "src/trace_processor/importers/systrace/systrace_line_parser.cc",
1294        "src/trace_processor/importers/systrace/systrace_line_parser.h",
1295        "src/trace_processor/importers/systrace/systrace_line_tokenizer.cc",
1296        "src/trace_processor/importers/systrace/systrace_line_tokenizer.h",
1297        "src/trace_processor/importers/systrace/systrace_parser.cc",
1298        "src/trace_processor/importers/systrace/systrace_parser.h",
1299        "src/trace_processor/importers/systrace/systrace_trace_parser.cc",
1300        "src/trace_processor/importers/systrace/systrace_trace_parser.h",
1301    ],
1302)
1303
1304# GN target: //src/trace_processor:storage_minimal
1305filegroup(
1306    name = "src_trace_processor_storage_minimal",
1307    srcs = [
1308        "src/trace_processor/forwarding_trace_parser.cc",
1309        "src/trace_processor/forwarding_trace_parser.h",
1310        "src/trace_processor/importers/default_modules.cc",
1311        "src/trace_processor/importers/default_modules.h",
1312        "src/trace_processor/importers/ftrace/ftrace_module.cc",
1313        "src/trace_processor/importers/ftrace/ftrace_module.h",
1314        "src/trace_processor/importers/fuchsia/fuchsia_record.h",
1315        "src/trace_processor/importers/fuchsia/fuchsia_trace_utils.h",
1316        "src/trace_processor/importers/gzip/gzip_utils.cc",
1317        "src/trace_processor/importers/gzip/gzip_utils.h",
1318        "src/trace_processor/importers/json/json_utils.cc",
1319        "src/trace_processor/importers/json/json_utils.h",
1320        "src/trace_processor/importers/ninja/ninja_log_parser.cc",
1321        "src/trace_processor/importers/ninja/ninja_log_parser.h",
1322        "src/trace_processor/importers/proto/async_track_set_tracker.cc",
1323        "src/trace_processor/importers/proto/async_track_set_tracker.h",
1324        "src/trace_processor/importers/proto/chrome_string_lookup.cc",
1325        "src/trace_processor/importers/proto/chrome_string_lookup.h",
1326        "src/trace_processor/importers/proto/chrome_system_probes_module.cc",
1327        "src/trace_processor/importers/proto/chrome_system_probes_module.h",
1328        "src/trace_processor/importers/proto/chrome_system_probes_parser.cc",
1329        "src/trace_processor/importers/proto/chrome_system_probes_parser.h",
1330        "src/trace_processor/importers/proto/heap_profile_tracker.cc",
1331        "src/trace_processor/importers/proto/heap_profile_tracker.h",
1332        "src/trace_processor/importers/proto/memory_tracker_snapshot_module.cc",
1333        "src/trace_processor/importers/proto/memory_tracker_snapshot_module.h",
1334        "src/trace_processor/importers/proto/memory_tracker_snapshot_parser.cc",
1335        "src/trace_processor/importers/proto/memory_tracker_snapshot_parser.h",
1336        "src/trace_processor/importers/proto/metadata_module.cc",
1337        "src/trace_processor/importers/proto/metadata_module.h",
1338        "src/trace_processor/importers/proto/metadata_tracker.cc",
1339        "src/trace_processor/importers/proto/metadata_tracker.h",
1340        "src/trace_processor/importers/proto/packet_sequence_state.cc",
1341        "src/trace_processor/importers/proto/packet_sequence_state.h",
1342        "src/trace_processor/importers/proto/perf_sample_tracker.cc",
1343        "src/trace_processor/importers/proto/perf_sample_tracker.h",
1344        "src/trace_processor/importers/proto/profile_module.cc",
1345        "src/trace_processor/importers/proto/profile_module.h",
1346        "src/trace_processor/importers/proto/profile_packet_utils.cc",
1347        "src/trace_processor/importers/proto/profile_packet_utils.h",
1348        "src/trace_processor/importers/proto/profiler_util.cc",
1349        "src/trace_processor/importers/proto/profiler_util.h",
1350        "src/trace_processor/importers/proto/proto_importer_module.cc",
1351        "src/trace_processor/importers/proto/proto_importer_module.h",
1352        "src/trace_processor/importers/proto/proto_incremental_state.h",
1353        "src/trace_processor/importers/proto/proto_trace_parser.cc",
1354        "src/trace_processor/importers/proto/proto_trace_parser.h",
1355        "src/trace_processor/importers/proto/proto_trace_reader.cc",
1356        "src/trace_processor/importers/proto/proto_trace_reader.h",
1357        "src/trace_processor/importers/proto/proto_trace_tokenizer.cc",
1358        "src/trace_processor/importers/proto/proto_trace_tokenizer.h",
1359        "src/trace_processor/importers/proto/stack_profile_tracker.cc",
1360        "src/trace_processor/importers/proto/stack_profile_tracker.h",
1361        "src/trace_processor/importers/proto/track_event_module.cc",
1362        "src/trace_processor/importers/proto/track_event_module.h",
1363        "src/trace_processor/importers/proto/track_event_parser.cc",
1364        "src/trace_processor/importers/proto/track_event_parser.h",
1365        "src/trace_processor/importers/proto/track_event_tokenizer.cc",
1366        "src/trace_processor/importers/proto/track_event_tokenizer.h",
1367        "src/trace_processor/importers/proto/track_event_tracker.cc",
1368        "src/trace_processor/importers/proto/track_event_tracker.h",
1369        "src/trace_processor/importers/syscalls/syscall_tracker.h",
1370        "src/trace_processor/importers/systrace/systrace_line.h",
1371        "src/trace_processor/timestamped_trace_piece.h",
1372        "src/trace_processor/trace_processor_context.cc",
1373        "src/trace_processor/trace_processor_storage.cc",
1374        "src/trace_processor/trace_processor_storage_impl.cc",
1375        "src/trace_processor/trace_processor_storage_impl.h",
1376        "src/trace_processor/trace_sorter.cc",
1377        "src/trace_processor/trace_sorter.h",
1378        "src/trace_processor/virtual_destructors.cc",
1379    ],
1380)
1381
1382# GN target: //src/traced/probes/android_log:android_log
1383filegroup(
1384    name = "src_traced_probes_android_log_android_log",
1385    srcs = [
1386        "src/traced/probes/android_log/android_log_data_source.cc",
1387        "src/traced/probes/android_log/android_log_data_source.h",
1388    ],
1389)
1390
1391# GN target: //src/traced/probes/common:common
1392filegroup(
1393    name = "src_traced_probes_common_common",
1394    srcs = [
1395        "src/traced/probes/common/cpu_freq_info.cc",
1396        "src/traced/probes/common/cpu_freq_info.h",
1397    ],
1398)
1399
1400# GN target: //src/traced/probes/filesystem:filesystem
1401filegroup(
1402    name = "src_traced_probes_filesystem_filesystem",
1403    srcs = [
1404        "src/traced/probes/filesystem/file_scanner.cc",
1405        "src/traced/probes/filesystem/file_scanner.h",
1406        "src/traced/probes/filesystem/fs_mount.cc",
1407        "src/traced/probes/filesystem/fs_mount.h",
1408        "src/traced/probes/filesystem/inode_file_data_source.cc",
1409        "src/traced/probes/filesystem/inode_file_data_source.h",
1410        "src/traced/probes/filesystem/lru_inode_cache.cc",
1411        "src/traced/probes/filesystem/lru_inode_cache.h",
1412        "src/traced/probes/filesystem/prefix_finder.cc",
1413        "src/traced/probes/filesystem/prefix_finder.h",
1414        "src/traced/probes/filesystem/range_tree.cc",
1415        "src/traced/probes/filesystem/range_tree.h",
1416    ],
1417)
1418
1419# GN target: //src/traced/probes/ftrace/format_parser:format_parser
1420filegroup(
1421    name = "src_traced_probes_ftrace_format_parser_format_parser",
1422    srcs = [
1423        "src/traced/probes/ftrace/format_parser/format_parser.cc",
1424        "src/traced/probes/ftrace/format_parser/format_parser.h",
1425    ],
1426)
1427
1428# GN target: //src/traced/probes/ftrace:ftrace
1429filegroup(
1430    name = "src_traced_probes_ftrace_ftrace",
1431    srcs = [
1432        "src/traced/probes/ftrace/atrace_hal_wrapper.cc",
1433        "src/traced/probes/ftrace/atrace_hal_wrapper.h",
1434        "src/traced/probes/ftrace/atrace_wrapper.cc",
1435        "src/traced/probes/ftrace/atrace_wrapper.h",
1436        "src/traced/probes/ftrace/compact_sched.cc",
1437        "src/traced/probes/ftrace/compact_sched.h",
1438        "src/traced/probes/ftrace/cpu_reader.cc",
1439        "src/traced/probes/ftrace/cpu_reader.h",
1440        "src/traced/probes/ftrace/cpu_stats_parser.cc",
1441        "src/traced/probes/ftrace/cpu_stats_parser.h",
1442        "src/traced/probes/ftrace/discover_vendor_tracepoints.cc",
1443        "src/traced/probes/ftrace/discover_vendor_tracepoints.h",
1444        "src/traced/probes/ftrace/event_info.cc",
1445        "src/traced/probes/ftrace/event_info.h",
1446        "src/traced/probes/ftrace/event_info_constants.cc",
1447        "src/traced/probes/ftrace/event_info_constants.h",
1448        "src/traced/probes/ftrace/ftrace_config_muxer.cc",
1449        "src/traced/probes/ftrace/ftrace_config_muxer.h",
1450        "src/traced/probes/ftrace/ftrace_config_utils.cc",
1451        "src/traced/probes/ftrace/ftrace_config_utils.h",
1452        "src/traced/probes/ftrace/ftrace_controller.cc",
1453        "src/traced/probes/ftrace/ftrace_controller.h",
1454        "src/traced/probes/ftrace/ftrace_data_source.cc",
1455        "src/traced/probes/ftrace/ftrace_data_source.h",
1456        "src/traced/probes/ftrace/ftrace_metadata.h",
1457        "src/traced/probes/ftrace/ftrace_stats.cc",
1458        "src/traced/probes/ftrace/ftrace_stats.h",
1459        "src/traced/probes/ftrace/printk_formats_parser.cc",
1460        "src/traced/probes/ftrace/printk_formats_parser.h",
1461        "src/traced/probes/ftrace/proto_translation_table.cc",
1462        "src/traced/probes/ftrace/proto_translation_table.h",
1463    ],
1464)
1465
1466# GN target: //src/traced/probes/ftrace:ftrace_procfs
1467filegroup(
1468    name = "src_traced_probes_ftrace_ftrace_procfs",
1469    srcs = [
1470        "src/traced/probes/ftrace/ftrace_procfs.cc",
1471        "src/traced/probes/ftrace/ftrace_procfs.h",
1472    ],
1473)
1474
1475# GN target: //src/traced/probes/initial_display_state:initial_display_state
1476filegroup(
1477    name = "src_traced_probes_initial_display_state_initial_display_state",
1478    srcs = [
1479        "src/traced/probes/initial_display_state/initial_display_state_data_source.cc",
1480        "src/traced/probes/initial_display_state/initial_display_state_data_source.h",
1481    ],
1482)
1483
1484# GN target: //src/traced/probes/metatrace:metatrace
1485filegroup(
1486    name = "src_traced_probes_metatrace_metatrace",
1487    srcs = [
1488        "src/traced/probes/metatrace/metatrace_data_source.cc",
1489        "src/traced/probes/metatrace/metatrace_data_source.h",
1490    ],
1491)
1492
1493# GN target: //src/traced/probes/packages_list:packages_list
1494filegroup(
1495    name = "src_traced_probes_packages_list_packages_list",
1496    srcs = [
1497        "src/traced/probes/packages_list/packages_list_data_source.cc",
1498        "src/traced/probes/packages_list/packages_list_data_source.h",
1499    ],
1500)
1501
1502# GN target: //src/traced/probes/packages_list:packages_list_parser
1503filegroup(
1504    name = "src_traced_probes_packages_list_packages_list_parser",
1505    srcs = [
1506        "src/traced/probes/packages_list/packages_list_parser.cc",
1507        "src/traced/probes/packages_list/packages_list_parser.h",
1508    ],
1509)
1510
1511# GN target: //src/traced/probes/power:power
1512filegroup(
1513    name = "src_traced_probes_power_power",
1514    srcs = [
1515        "src/traced/probes/power/android_power_data_source.cc",
1516        "src/traced/probes/power/android_power_data_source.h",
1517    ],
1518)
1519
1520# GN target: //src/traced/probes/ps:ps
1521filegroup(
1522    name = "src_traced_probes_ps_ps",
1523    srcs = [
1524        "src/traced/probes/ps/process_stats_data_source.cc",
1525        "src/traced/probes/ps/process_stats_data_source.h",
1526    ],
1527)
1528
1529# GN target: //src/traced/probes/sys_stats:sys_stats
1530filegroup(
1531    name = "src_traced_probes_sys_stats_sys_stats",
1532    srcs = [
1533        "src/traced/probes/sys_stats/sys_stats_data_source.cc",
1534        "src/traced/probes/sys_stats/sys_stats_data_source.h",
1535    ],
1536)
1537
1538# GN target: //src/traced/probes/system_info:system_info
1539filegroup(
1540    name = "src_traced_probes_system_info_system_info",
1541    srcs = [
1542        "src/traced/probes/system_info/system_info_data_source.cc",
1543        "src/traced/probes/system_info/system_info_data_source.h",
1544    ],
1545)
1546
1547# GN target: //src/traced/probes:data_source
1548filegroup(
1549    name = "src_traced_probes_data_source",
1550    srcs = [
1551        "src/traced/probes/probes_data_source.cc",
1552        "src/traced/probes/probes_data_source.h",
1553    ],
1554)
1555
1556# GN target: //src/traced/probes:probes
1557filegroup(
1558    name = "src_traced_probes_probes",
1559    srcs = [
1560        "src/traced/probes/probes.cc",
1561    ],
1562)
1563
1564# GN target: //src/traced/probes:probes_src
1565filegroup(
1566    name = "src_traced_probes_probes_src",
1567    srcs = [
1568        "src/traced/probes/kmem_activity_trigger.cc",
1569        "src/traced/probes/kmem_activity_trigger.h",
1570        "src/traced/probes/probes_producer.cc",
1571        "src/traced/probes/probes_producer.h",
1572    ],
1573)
1574
1575# GN target: //src/traced/service:service
1576filegroup(
1577    name = "src_traced_service_service",
1578    srcs = [
1579        "src/traced/service/builtin_producer.cc",
1580        "src/traced/service/builtin_producer.h",
1581        "src/traced/service/service.cc",
1582    ],
1583)
1584
1585# GN target: //src/tracing/consumer_api_deprecated:consumer_api_deprecated
1586filegroup(
1587    name = "src_tracing_consumer_api_deprecated_consumer_api_deprecated",
1588    srcs = [
1589        "src/tracing/consumer_api_deprecated/consumer_api_deprecated.cc",
1590    ],
1591)
1592
1593# GN target: //src/tracing/core:core
1594filegroup(
1595    name = "src_tracing_core_core",
1596    srcs = [
1597        "src/tracing/core/id_allocator.cc",
1598        "src/tracing/core/id_allocator.h",
1599        "src/tracing/core/null_trace_writer.cc",
1600        "src/tracing/core/null_trace_writer.h",
1601        "src/tracing/core/patch_list.h",
1602        "src/tracing/core/shared_memory_abi.cc",
1603        "src/tracing/core/shared_memory_arbiter_impl.cc",
1604        "src/tracing/core/shared_memory_arbiter_impl.h",
1605        "src/tracing/core/trace_packet.cc",
1606        "src/tracing/core/trace_writer_impl.cc",
1607        "src/tracing/core/trace_writer_impl.h",
1608        "src/tracing/core/virtual_destructors.cc",
1609    ],
1610)
1611
1612# GN target: //src/tracing/core:service
1613filegroup(
1614    name = "src_tracing_core_service",
1615    srcs = [
1616        "src/tracing/core/metatrace_writer.cc",
1617        "src/tracing/core/metatrace_writer.h",
1618        "src/tracing/core/packet_stream_validator.cc",
1619        "src/tracing/core/packet_stream_validator.h",
1620        "src/tracing/core/trace_buffer.cc",
1621        "src/tracing/core/trace_buffer.h",
1622        "src/tracing/core/tracing_service_impl.cc",
1623        "src/tracing/core/tracing_service_impl.h",
1624    ],
1625)
1626
1627# GN target: //src/tracing/ipc/consumer:consumer
1628filegroup(
1629    name = "src_tracing_ipc_consumer_consumer",
1630    srcs = [
1631        "src/tracing/ipc/consumer/consumer_ipc_client_impl.cc",
1632        "src/tracing/ipc/consumer/consumer_ipc_client_impl.h",
1633    ],
1634)
1635
1636# GN target: //src/tracing/ipc/producer:producer
1637filegroup(
1638    name = "src_tracing_ipc_producer_producer",
1639    srcs = [
1640        "src/tracing/ipc/producer/producer_ipc_client_impl.cc",
1641        "src/tracing/ipc/producer/producer_ipc_client_impl.h",
1642    ],
1643)
1644
1645# GN target: //src/tracing/ipc/service:service
1646filegroup(
1647    name = "src_tracing_ipc_service_service",
1648    srcs = [
1649        "src/tracing/ipc/service/consumer_ipc_service.cc",
1650        "src/tracing/ipc/service/consumer_ipc_service.h",
1651        "src/tracing/ipc/service/producer_ipc_service.cc",
1652        "src/tracing/ipc/service/producer_ipc_service.h",
1653        "src/tracing/ipc/service/service_ipc_host_impl.cc",
1654        "src/tracing/ipc/service/service_ipc_host_impl.h",
1655    ],
1656)
1657
1658# GN target: //src/tracing/ipc:common
1659filegroup(
1660    name = "src_tracing_ipc_common",
1661    srcs = [
1662        "src/tracing/ipc/default_socket.cc",
1663        "src/tracing/ipc/memfd.cc",
1664        "src/tracing/ipc/memfd.h",
1665        "src/tracing/ipc/posix_shared_memory.cc",
1666        "src/tracing/ipc/posix_shared_memory.h",
1667    ],
1668)
1669
1670# GN target: //src/tracing:client_api_without_backends
1671filegroup(
1672    name = "src_tracing_client_api_without_backends",
1673    srcs = [
1674        "src/tracing/console_interceptor.cc",
1675        "src/tracing/data_source.cc",
1676        "src/tracing/debug_annotation.cc",
1677        "src/tracing/event_context.cc",
1678        "src/tracing/interceptor.cc",
1679        "src/tracing/internal/checked_scope.cc",
1680        "src/tracing/internal/interceptor_trace_writer.cc",
1681        "src/tracing/internal/tracing_backend_fake.cc",
1682        "src/tracing/internal/tracing_muxer_fake.cc",
1683        "src/tracing/internal/tracing_muxer_fake.h",
1684        "src/tracing/internal/tracing_muxer_impl.cc",
1685        "src/tracing/internal/tracing_muxer_impl.h",
1686        "src/tracing/internal/track_event_internal.cc",
1687        "src/tracing/internal/track_event_interned_fields.cc",
1688        "src/tracing/platform.cc",
1689        "src/tracing/traced_value.cc",
1690        "src/tracing/tracing.cc",
1691        "src/tracing/tracing_policy.cc",
1692        "src/tracing/track.cc",
1693        "src/tracing/track_event_category_registry.cc",
1694        "src/tracing/track_event_legacy.cc",
1695        "src/tracing/track_event_state_tracker.cc",
1696        "src/tracing/virtual_destructors.cc",
1697    ],
1698)
1699
1700# GN target: //src/tracing:common
1701filegroup(
1702    name = "src_tracing_common",
1703    srcs = [
1704        "src/tracing/trace_writer_base.cc",
1705    ],
1706)
1707
1708# GN target: //src/tracing:in_process_backend
1709filegroup(
1710    name = "src_tracing_in_process_backend",
1711    srcs = [
1712        "src/tracing/internal/in_process_tracing_backend.cc",
1713    ],
1714)
1715
1716# GN target: //src/tracing:platform_impl
1717filegroup(
1718    name = "src_tracing_platform_impl",
1719    srcs = [
1720        "src/tracing/platform_posix.cc",
1721    ],
1722)
1723
1724# GN target: //src/tracing:system_backend
1725filegroup(
1726    name = "src_tracing_system_backend",
1727    srcs = [
1728        "src/tracing/internal/system_tracing_backend.cc",
1729    ],
1730)
1731
1732# GN target: //tools/trace_to_text:common
1733filegroup(
1734    name = "tools_trace_to_text_common",
1735    srcs = [
1736        "tools/trace_to_text/deobfuscate_profile.cc",
1737        "tools/trace_to_text/deobfuscate_profile.h",
1738        "tools/trace_to_text/main.cc",
1739        "tools/trace_to_text/symbolize_profile.cc",
1740        "tools/trace_to_text/symbolize_profile.h",
1741        "tools/trace_to_text/trace_to_hprof.cc",
1742        "tools/trace_to_text/trace_to_hprof.h",
1743        "tools/trace_to_text/trace_to_json.cc",
1744        "tools/trace_to_text/trace_to_json.h",
1745        "tools/trace_to_text/trace_to_profile.cc",
1746        "tools/trace_to_text/trace_to_profile.h",
1747        "tools/trace_to_text/trace_to_systrace.cc",
1748        "tools/trace_to_text/trace_to_systrace.h",
1749        "tools/trace_to_text/trace_to_text.h",
1750    ],
1751)
1752
1753# GN target: //tools/trace_to_text:full
1754filegroup(
1755    name = "tools_trace_to_text_full",
1756    srcs = [
1757        "tools/trace_to_text/proto_full_utils.cc",
1758        "tools/trace_to_text/proto_full_utils.h",
1759        "tools/trace_to_text/trace_to_text.cc",
1760    ],
1761)
1762
1763# GN target: //tools/trace_to_text:pprofbuilder
1764filegroup(
1765    name = "tools_trace_to_text_pprofbuilder",
1766    srcs = [
1767        "tools/trace_to_text/pprof_builder.cc",
1768    ],
1769)
1770
1771# GN target: //tools/trace_to_text:utils
1772filegroup(
1773    name = "tools_trace_to_text_utils",
1774    srcs = [
1775        "tools/trace_to_text/utils.cc",
1776        "tools/trace_to_text/utils.h",
1777    ],
1778)
1779
1780# ##############################################################################
1781# Proto libraries
1782# ##############################################################################
1783
1784# GN target: //protos/perfetto/common:cpp
1785perfetto_cc_protocpp_library(
1786    name = "protos_perfetto_common_cpp",
1787    deps = [
1788        ":protos_perfetto_common_protos",
1789    ],
1790)
1791
1792# GN target: //protos/perfetto/common:lite
1793perfetto_cc_proto_library(
1794    name = "protos_perfetto_common_lite",
1795    deps = [
1796        ":protos_perfetto_common_protos",
1797    ],
1798)
1799
1800# GN target: //protos/perfetto/common:zero
1801perfetto_proto_library(
1802    name = "protos_perfetto_common_protos",
1803    srcs = [
1804        "protos/perfetto/common/android_energy_consumer_descriptor.proto",
1805        "protos/perfetto/common/android_log_constants.proto",
1806        "protos/perfetto/common/builtin_clock.proto",
1807        "protos/perfetto/common/commit_data_request.proto",
1808        "protos/perfetto/common/data_source_descriptor.proto",
1809        "protos/perfetto/common/descriptor.proto",
1810        "protos/perfetto/common/gpu_counter_descriptor.proto",
1811        "protos/perfetto/common/interceptor_descriptor.proto",
1812        "protos/perfetto/common/observable_events.proto",
1813        "protos/perfetto/common/perf_events.proto",
1814        "protos/perfetto/common/sys_stats_counters.proto",
1815        "protos/perfetto/common/trace_stats.proto",
1816        "protos/perfetto/common/tracing_service_capabilities.proto",
1817        "protos/perfetto/common/tracing_service_state.proto",
1818        "protos/perfetto/common/track_event_descriptor.proto",
1819    ],
1820    visibility = [
1821        PERFETTO_CONFIG.proto_library_visibility,
1822    ],
1823)
1824
1825# GN target: //protos/perfetto/common:zero
1826perfetto_cc_protozero_library(
1827    name = "protos_perfetto_common_zero",
1828    deps = [
1829        ":protos_perfetto_common_protos",
1830    ],
1831)
1832
1833# GN target: //protos/perfetto/config/android:cpp
1834perfetto_cc_protocpp_library(
1835    name = "protos_perfetto_config_android_cpp",
1836    deps = [
1837        ":protos_perfetto_common_cpp",
1838        ":protos_perfetto_config_android_protos",
1839    ],
1840)
1841
1842# GN target: //protos/perfetto/config/android:lite
1843perfetto_cc_proto_library(
1844    name = "protos_perfetto_config_android_lite",
1845    deps = [
1846        ":protos_perfetto_config_android_protos",
1847    ],
1848)
1849
1850# GN target: //protos/perfetto/config/android:zero
1851perfetto_proto_library(
1852    name = "protos_perfetto_config_android_protos",
1853    srcs = [
1854        "protos/perfetto/config/android/android_log_config.proto",
1855        "protos/perfetto/config/android/android_polled_state_config.proto",
1856        "protos/perfetto/config/android/packages_list_config.proto",
1857    ],
1858    visibility = [
1859        PERFETTO_CONFIG.proto_library_visibility,
1860    ],
1861    deps = [
1862        ":protos_perfetto_common_protos",
1863    ],
1864)
1865
1866# GN target: //protos/perfetto/config/android:zero
1867perfetto_cc_protozero_library(
1868    name = "protos_perfetto_config_android_zero",
1869    deps = [
1870        ":protos_perfetto_common_zero",
1871        ":protos_perfetto_config_android_protos",
1872    ],
1873)
1874
1875# GN target: //protos/perfetto/config:cpp
1876perfetto_cc_protocpp_library(
1877    name = "protos_perfetto_config_cpp",
1878    deps = [
1879        ":protos_perfetto_common_cpp",
1880        ":protos_perfetto_config_android_cpp",
1881        ":protos_perfetto_config_ftrace_cpp",
1882        ":protos_perfetto_config_gpu_cpp",
1883        ":protos_perfetto_config_inode_file_cpp",
1884        ":protos_perfetto_config_interceptors_cpp",
1885        ":protos_perfetto_config_power_cpp",
1886        ":protos_perfetto_config_process_stats_cpp",
1887        ":protos_perfetto_config_profiling_cpp",
1888        ":protos_perfetto_config_protos",
1889        ":protos_perfetto_config_sys_stats_cpp",
1890        ":protos_perfetto_config_track_event_cpp",
1891    ],
1892)
1893
1894# GN target: //protos/perfetto/config:descriptor
1895perfetto_proto_descriptor(
1896    name = "protos_perfetto_config_descriptor",
1897    deps = [
1898        ":protos_perfetto_config_protos",
1899    ],
1900    outs = [
1901        "protos_perfetto_config_descriptor.bin",
1902    ],
1903)
1904
1905# GN target: //protos/perfetto/config/ftrace:cpp
1906perfetto_cc_protocpp_library(
1907    name = "protos_perfetto_config_ftrace_cpp",
1908    deps = [
1909        ":protos_perfetto_config_ftrace_protos",
1910    ],
1911)
1912
1913# GN target: //protos/perfetto/config/ftrace:lite
1914perfetto_cc_proto_library(
1915    name = "protos_perfetto_config_ftrace_lite",
1916    deps = [
1917        ":protos_perfetto_config_ftrace_protos",
1918    ],
1919)
1920
1921# GN target: //protos/perfetto/config/ftrace:zero
1922perfetto_proto_library(
1923    name = "protos_perfetto_config_ftrace_protos",
1924    srcs = [
1925        "protos/perfetto/config/ftrace/ftrace_config.proto",
1926    ],
1927    visibility = [
1928        PERFETTO_CONFIG.proto_library_visibility,
1929    ],
1930)
1931
1932# GN target: //protos/perfetto/config/ftrace:zero
1933perfetto_cc_protozero_library(
1934    name = "protos_perfetto_config_ftrace_zero",
1935    deps = [
1936        ":protos_perfetto_config_ftrace_protos",
1937    ],
1938)
1939
1940# GN target: //protos/perfetto/config/gpu:cpp
1941perfetto_cc_protocpp_library(
1942    name = "protos_perfetto_config_gpu_cpp",
1943    deps = [
1944        ":protos_perfetto_config_gpu_protos",
1945    ],
1946)
1947
1948# GN target: //protos/perfetto/config/gpu:lite
1949perfetto_cc_proto_library(
1950    name = "protos_perfetto_config_gpu_lite",
1951    deps = [
1952        ":protos_perfetto_config_gpu_protos",
1953    ],
1954)
1955
1956# GN target: //protos/perfetto/config/gpu:zero
1957perfetto_proto_library(
1958    name = "protos_perfetto_config_gpu_protos",
1959    srcs = [
1960        "protos/perfetto/config/gpu/gpu_counter_config.proto",
1961        "protos/perfetto/config/gpu/vulkan_memory_config.proto",
1962    ],
1963    visibility = [
1964        PERFETTO_CONFIG.proto_library_visibility,
1965    ],
1966)
1967
1968# GN target: //protos/perfetto/config/gpu:zero
1969perfetto_cc_protozero_library(
1970    name = "protos_perfetto_config_gpu_zero",
1971    deps = [
1972        ":protos_perfetto_config_gpu_protos",
1973    ],
1974)
1975
1976# GN target: //protos/perfetto/config/inode_file:cpp
1977perfetto_cc_protocpp_library(
1978    name = "protos_perfetto_config_inode_file_cpp",
1979    deps = [
1980        ":protos_perfetto_config_inode_file_protos",
1981    ],
1982)
1983
1984# GN target: //protos/perfetto/config/inode_file:lite
1985perfetto_cc_proto_library(
1986    name = "protos_perfetto_config_inode_file_lite",
1987    deps = [
1988        ":protos_perfetto_config_inode_file_protos",
1989    ],
1990)
1991
1992# GN target: //protos/perfetto/config/inode_file:zero
1993perfetto_proto_library(
1994    name = "protos_perfetto_config_inode_file_protos",
1995    srcs = [
1996        "protos/perfetto/config/inode_file/inode_file_config.proto",
1997    ],
1998    visibility = [
1999        PERFETTO_CONFIG.proto_library_visibility,
2000    ],
2001)
2002
2003# GN target: //protos/perfetto/config/inode_file:zero
2004perfetto_cc_protozero_library(
2005    name = "protos_perfetto_config_inode_file_zero",
2006    deps = [
2007        ":protos_perfetto_config_inode_file_protos",
2008    ],
2009)
2010
2011# GN target: //protos/perfetto/config/interceptors:cpp
2012perfetto_cc_protocpp_library(
2013    name = "protos_perfetto_config_interceptors_cpp",
2014    deps = [
2015        ":protos_perfetto_common_cpp",
2016        ":protos_perfetto_config_interceptors_protos",
2017    ],
2018)
2019
2020# GN target: //protos/perfetto/config/interceptors:lite
2021perfetto_cc_proto_library(
2022    name = "protos_perfetto_config_interceptors_lite",
2023    deps = [
2024        ":protos_perfetto_config_interceptors_protos",
2025    ],
2026)
2027
2028# GN target: //protos/perfetto/config/interceptors:zero
2029perfetto_proto_library(
2030    name = "protos_perfetto_config_interceptors_protos",
2031    srcs = [
2032        "protos/perfetto/config/interceptors/console_config.proto",
2033    ],
2034    visibility = [
2035        PERFETTO_CONFIG.proto_library_visibility,
2036    ],
2037    deps = [
2038        ":protos_perfetto_common_protos",
2039    ],
2040)
2041
2042# GN target: //protos/perfetto/config/interceptors:zero
2043perfetto_cc_protozero_library(
2044    name = "protos_perfetto_config_interceptors_zero",
2045    deps = [
2046        ":protos_perfetto_common_zero",
2047        ":protos_perfetto_config_interceptors_protos",
2048    ],
2049)
2050
2051# GN target: //protos/perfetto/config:lite
2052perfetto_cc_proto_library(
2053    name = "protos_perfetto_config_lite",
2054    deps = [
2055        ":protos_perfetto_config_protos",
2056    ],
2057)
2058
2059# GN target: //protos/perfetto/config:merged_config
2060perfetto_cc_proto_library(
2061    name = "protos_perfetto_config_merged_config",
2062    deps = [
2063        ":protos_perfetto_config_merged_config_protos",
2064    ],
2065)
2066
2067# GN target: //protos/perfetto/config:merged_config
2068perfetto_proto_library(
2069    name = "protos_perfetto_config_merged_config_protos",
2070    srcs = [
2071        "protos/perfetto/config/perfetto_config.proto",
2072    ],
2073    visibility = PERFETTO_CONFIG.public_visibility,
2074)
2075
2076# GN target: //protos/perfetto/config:perfetto_config_descriptor
2077perfetto_proto_descriptor(
2078    name = "protos_perfetto_config_perfetto_config_descriptor",
2079    deps = [
2080        ":protos_perfetto_config_perfetto_config_protos",
2081    ],
2082    outs = [
2083        "protos_perfetto_config_perfetto_config_descriptor.bin",
2084    ],
2085)
2086
2087# GN target: //protos/perfetto/config:perfetto_config_descriptor
2088perfetto_proto_library(
2089    name = "protos_perfetto_config_perfetto_config_protos",
2090    srcs = [
2091        "protos/perfetto/config/perfetto_config.proto",
2092    ],
2093    visibility = [
2094        PERFETTO_CONFIG.proto_library_visibility,
2095    ],
2096)
2097
2098# GN target: //protos/perfetto/config/power:cpp
2099perfetto_cc_protocpp_library(
2100    name = "protos_perfetto_config_power_cpp",
2101    deps = [
2102        ":protos_perfetto_config_power_protos",
2103    ],
2104)
2105
2106# GN target: //protos/perfetto/config/power:lite
2107perfetto_cc_proto_library(
2108    name = "protos_perfetto_config_power_lite",
2109    deps = [
2110        ":protos_perfetto_config_power_protos",
2111    ],
2112)
2113
2114# GN target: //protos/perfetto/config/power:zero
2115perfetto_proto_library(
2116    name = "protos_perfetto_config_power_protos",
2117    srcs = [
2118        "protos/perfetto/config/power/android_power_config.proto",
2119    ],
2120    visibility = [
2121        PERFETTO_CONFIG.proto_library_visibility,
2122    ],
2123)
2124
2125# GN target: //protos/perfetto/config/power:zero
2126perfetto_cc_protozero_library(
2127    name = "protos_perfetto_config_power_zero",
2128    deps = [
2129        ":protos_perfetto_config_power_protos",
2130    ],
2131)
2132
2133# GN target: //protos/perfetto/config/process_stats:cpp
2134perfetto_cc_protocpp_library(
2135    name = "protos_perfetto_config_process_stats_cpp",
2136    deps = [
2137        ":protos_perfetto_config_process_stats_protos",
2138    ],
2139)
2140
2141# GN target: //protos/perfetto/config/process_stats:lite
2142perfetto_cc_proto_library(
2143    name = "protos_perfetto_config_process_stats_lite",
2144    deps = [
2145        ":protos_perfetto_config_process_stats_protos",
2146    ],
2147)
2148
2149# GN target: //protos/perfetto/config/process_stats:zero
2150perfetto_proto_library(
2151    name = "protos_perfetto_config_process_stats_protos",
2152    srcs = [
2153        "protos/perfetto/config/process_stats/process_stats_config.proto",
2154    ],
2155    visibility = [
2156        PERFETTO_CONFIG.proto_library_visibility,
2157    ],
2158)
2159
2160# GN target: //protos/perfetto/config/process_stats:zero
2161perfetto_cc_protozero_library(
2162    name = "protos_perfetto_config_process_stats_zero",
2163    deps = [
2164        ":protos_perfetto_config_process_stats_protos",
2165    ],
2166)
2167
2168# GN target: //protos/perfetto/config/profiling:cpp
2169perfetto_cc_protocpp_library(
2170    name = "protos_perfetto_config_profiling_cpp",
2171    deps = [
2172        ":protos_perfetto_common_cpp",
2173        ":protos_perfetto_config_profiling_protos",
2174    ],
2175)
2176
2177# GN target: //protos/perfetto/config/profiling:lite
2178perfetto_cc_proto_library(
2179    name = "protos_perfetto_config_profiling_lite",
2180    deps = [
2181        ":protos_perfetto_config_profiling_protos",
2182    ],
2183)
2184
2185# GN target: //protos/perfetto/config/profiling:zero
2186perfetto_proto_library(
2187    name = "protos_perfetto_config_profiling_protos",
2188    srcs = [
2189        "protos/perfetto/config/profiling/heapprofd_config.proto",
2190        "protos/perfetto/config/profiling/java_hprof_config.proto",
2191        "protos/perfetto/config/profiling/perf_event_config.proto",
2192    ],
2193    visibility = [
2194        PERFETTO_CONFIG.proto_library_visibility,
2195    ],
2196    deps = [
2197        ":protos_perfetto_common_protos",
2198    ],
2199)
2200
2201# GN target: //protos/perfetto/config/profiling:zero
2202perfetto_cc_protozero_library(
2203    name = "protos_perfetto_config_profiling_zero",
2204    deps = [
2205        ":protos_perfetto_common_zero",
2206        ":protos_perfetto_config_profiling_protos",
2207    ],
2208)
2209
2210# GN target: //protos/perfetto/config:zero
2211perfetto_proto_library(
2212    name = "protos_perfetto_config_protos",
2213    srcs = [
2214        "protos/perfetto/config/chrome/chrome_config.proto",
2215        "protos/perfetto/config/data_source_config.proto",
2216        "protos/perfetto/config/interceptor_config.proto",
2217        "protos/perfetto/config/stress_test_config.proto",
2218        "protos/perfetto/config/test_config.proto",
2219        "protos/perfetto/config/trace_config.proto",
2220    ],
2221    visibility = PERFETTO_CONFIG.public_visibility,
2222    deps = [
2223        ":protos_perfetto_common_protos",
2224        ":protos_perfetto_config_android_protos",
2225        ":protos_perfetto_config_ftrace_protos",
2226        ":protos_perfetto_config_gpu_protos",
2227        ":protos_perfetto_config_inode_file_protos",
2228        ":protos_perfetto_config_interceptors_protos",
2229        ":protos_perfetto_config_power_protos",
2230        ":protos_perfetto_config_process_stats_protos",
2231        ":protos_perfetto_config_profiling_protos",
2232        ":protos_perfetto_config_sys_stats_protos",
2233        ":protos_perfetto_config_track_event_protos",
2234    ],
2235)
2236
2237# GN target: //protos/perfetto/config/sys_stats:cpp
2238perfetto_cc_protocpp_library(
2239    name = "protos_perfetto_config_sys_stats_cpp",
2240    deps = [
2241        ":protos_perfetto_common_cpp",
2242        ":protos_perfetto_config_sys_stats_protos",
2243    ],
2244)
2245
2246# GN target: //protos/perfetto/config/sys_stats:lite
2247perfetto_cc_proto_library(
2248    name = "protos_perfetto_config_sys_stats_lite",
2249    deps = [
2250        ":protos_perfetto_config_sys_stats_protos",
2251    ],
2252)
2253
2254# GN target: //protos/perfetto/config/sys_stats:zero
2255perfetto_proto_library(
2256    name = "protos_perfetto_config_sys_stats_protos",
2257    srcs = [
2258        "protos/perfetto/config/sys_stats/sys_stats_config.proto",
2259    ],
2260    visibility = [
2261        PERFETTO_CONFIG.proto_library_visibility,
2262    ],
2263    deps = [
2264        ":protos_perfetto_common_protos",
2265    ],
2266)
2267
2268# GN target: //protos/perfetto/config/sys_stats:zero
2269perfetto_cc_protozero_library(
2270    name = "protos_perfetto_config_sys_stats_zero",
2271    deps = [
2272        ":protos_perfetto_common_zero",
2273        ":protos_perfetto_config_sys_stats_protos",
2274    ],
2275)
2276
2277# GN target: //protos/perfetto/config/track_event:cpp
2278perfetto_cc_protocpp_library(
2279    name = "protos_perfetto_config_track_event_cpp",
2280    deps = [
2281        ":protos_perfetto_config_track_event_protos",
2282    ],
2283)
2284
2285# GN target: //protos/perfetto/config/track_event:lite
2286perfetto_cc_proto_library(
2287    name = "protos_perfetto_config_track_event_lite",
2288    deps = [
2289        ":protos_perfetto_config_track_event_protos",
2290    ],
2291)
2292
2293# GN target: //protos/perfetto/config/track_event:zero
2294perfetto_proto_library(
2295    name = "protos_perfetto_config_track_event_protos",
2296    srcs = [
2297        "protos/perfetto/config/track_event/track_event_config.proto",
2298    ],
2299    visibility = [
2300        PERFETTO_CONFIG.proto_library_visibility,
2301    ],
2302)
2303
2304# GN target: //protos/perfetto/config/track_event:zero
2305perfetto_cc_protozero_library(
2306    name = "protos_perfetto_config_track_event_zero",
2307    deps = [
2308        ":protos_perfetto_config_track_event_protos",
2309    ],
2310)
2311
2312# GN target: //protos/perfetto/config:zero
2313perfetto_cc_protozero_library(
2314    name = "protos_perfetto_config_zero",
2315    deps = [
2316        ":protos_perfetto_common_zero",
2317        ":protos_perfetto_config_android_zero",
2318        ":protos_perfetto_config_ftrace_zero",
2319        ":protos_perfetto_config_gpu_zero",
2320        ":protos_perfetto_config_inode_file_zero",
2321        ":protos_perfetto_config_interceptors_zero",
2322        ":protos_perfetto_config_power_zero",
2323        ":protos_perfetto_config_process_stats_zero",
2324        ":protos_perfetto_config_profiling_zero",
2325        ":protos_perfetto_config_protos",
2326        ":protos_perfetto_config_sys_stats_zero",
2327        ":protos_perfetto_config_track_event_zero",
2328    ],
2329)
2330
2331# GN target: //protos/perfetto/ipc:cpp
2332perfetto_cc_protocpp_library(
2333    name = "protos_perfetto_ipc_cpp",
2334    deps = [
2335        ":protos_perfetto_common_cpp",
2336        ":protos_perfetto_config_android_cpp",
2337        ":protos_perfetto_config_cpp",
2338        ":protos_perfetto_config_ftrace_cpp",
2339        ":protos_perfetto_config_gpu_cpp",
2340        ":protos_perfetto_config_inode_file_cpp",
2341        ":protos_perfetto_config_interceptors_cpp",
2342        ":protos_perfetto_config_power_cpp",
2343        ":protos_perfetto_config_process_stats_cpp",
2344        ":protos_perfetto_config_profiling_cpp",
2345        ":protos_perfetto_config_sys_stats_cpp",
2346        ":protos_perfetto_config_track_event_cpp",
2347        ":protos_perfetto_ipc_protos",
2348    ],
2349)
2350
2351# GN target: //protos/perfetto/ipc:ipc
2352perfetto_cc_ipc_library(
2353    name = "protos_perfetto_ipc_ipc",
2354    deps = [
2355        ":protos_perfetto_common_cpp",
2356        ":protos_perfetto_config_android_cpp",
2357        ":protos_perfetto_config_cpp",
2358        ":protos_perfetto_config_ftrace_cpp",
2359        ":protos_perfetto_config_gpu_cpp",
2360        ":protos_perfetto_config_inode_file_cpp",
2361        ":protos_perfetto_config_interceptors_cpp",
2362        ":protos_perfetto_config_power_cpp",
2363        ":protos_perfetto_config_process_stats_cpp",
2364        ":protos_perfetto_config_profiling_cpp",
2365        ":protos_perfetto_config_sys_stats_cpp",
2366        ":protos_perfetto_config_track_event_cpp",
2367        ":protos_perfetto_ipc_cpp",
2368        ":protos_perfetto_ipc_protos",
2369    ],
2370)
2371
2372# GN target: //protos/perfetto/ipc:ipc
2373perfetto_proto_library(
2374    name = "protos_perfetto_ipc_protos",
2375    srcs = [
2376        "protos/perfetto/ipc/consumer_port.proto",
2377        "protos/perfetto/ipc/producer_port.proto",
2378    ],
2379    visibility = [
2380        PERFETTO_CONFIG.proto_library_visibility,
2381    ],
2382    deps = [
2383        ":protos_perfetto_common_protos",
2384        ":protos_perfetto_config_android_protos",
2385        ":protos_perfetto_config_ftrace_protos",
2386        ":protos_perfetto_config_gpu_protos",
2387        ":protos_perfetto_config_inode_file_protos",
2388        ":protos_perfetto_config_interceptors_protos",
2389        ":protos_perfetto_config_power_protos",
2390        ":protos_perfetto_config_process_stats_protos",
2391        ":protos_perfetto_config_profiling_protos",
2392        ":protos_perfetto_config_protos",
2393        ":protos_perfetto_config_sys_stats_protos",
2394        ":protos_perfetto_config_track_event_protos",
2395    ],
2396)
2397
2398# GN target: //protos/perfetto/ipc:wire_protocol_cpp
2399perfetto_cc_protocpp_library(
2400    name = "protos_perfetto_ipc_wire_protocol_cpp",
2401    deps = [
2402        ":protos_perfetto_ipc_wire_protocol_protos",
2403    ],
2404)
2405
2406# GN target: //protos/perfetto/ipc:wire_protocol_cpp
2407perfetto_proto_library(
2408    name = "protos_perfetto_ipc_wire_protocol_protos",
2409    srcs = [
2410        "protos/perfetto/ipc/wire_protocol.proto",
2411    ],
2412    visibility = [
2413        PERFETTO_CONFIG.proto_library_visibility,
2414    ],
2415)
2416
2417# GN target: //protos/perfetto/metrics/android:lite
2418perfetto_cc_proto_library(
2419    name = "protos_perfetto_metrics_android_lite",
2420    deps = [
2421        ":protos_perfetto_metrics_android_protos",
2422    ],
2423)
2424
2425# GN target: //protos/perfetto/metrics/android:source_set
2426perfetto_proto_library(
2427    name = "protos_perfetto_metrics_android_protos",
2428    srcs = [
2429        "protos/perfetto/metrics/android/batt_metric.proto",
2430        "protos/perfetto/metrics/android/cpu_metric.proto",
2431        "protos/perfetto/metrics/android/display_metrics.proto",
2432        "protos/perfetto/metrics/android/dma_heap_metric.proto",
2433        "protos/perfetto/metrics/android/fastrpc_metric.proto",
2434        "protos/perfetto/metrics/android/g2d_metric.proto",
2435        "protos/perfetto/metrics/android/gpu_metric.proto",
2436        "protos/perfetto/metrics/android/hwcomposer.proto",
2437        "protos/perfetto/metrics/android/hwui_metric.proto",
2438        "protos/perfetto/metrics/android/ion_metric.proto",
2439        "protos/perfetto/metrics/android/jank_metric.proto",
2440        "protos/perfetto/metrics/android/java_heap_histogram.proto",
2441        "protos/perfetto/metrics/android/java_heap_stats.proto",
2442        "protos/perfetto/metrics/android/lmk_metric.proto",
2443        "protos/perfetto/metrics/android/lmk_reason_metric.proto",
2444        "protos/perfetto/metrics/android/mem_metric.proto",
2445        "protos/perfetto/metrics/android/mem_unagg_metric.proto",
2446        "protos/perfetto/metrics/android/package_list.proto",
2447        "protos/perfetto/metrics/android/powrails_metric.proto",
2448        "protos/perfetto/metrics/android/process_metadata.proto",
2449        "protos/perfetto/metrics/android/startup_metric.proto",
2450        "protos/perfetto/metrics/android/surfaceflinger.proto",
2451        "protos/perfetto/metrics/android/sysui_cuj_metrics.proto",
2452        "protos/perfetto/metrics/android/task_names.proto",
2453        "protos/perfetto/metrics/android/thread_time_in_state_metric.proto",
2454        "protos/perfetto/metrics/android/unsymbolized_frames.proto",
2455    ],
2456    visibility = PERFETTO_CONFIG.public_visibility,
2457)
2458
2459# GN target: //protos/perfetto/metrics/chrome:descriptor
2460perfetto_proto_descriptor(
2461    name = "protos_perfetto_metrics_chrome_descriptor",
2462    deps = [
2463        ":protos_perfetto_metrics_chrome_protos",
2464    ],
2465    outs = [
2466        "protos_perfetto_metrics_chrome_descriptor.bin",
2467    ],
2468)
2469
2470# GN target: //protos/perfetto/metrics/chrome:source_set
2471perfetto_proto_library(
2472    name = "protos_perfetto_metrics_chrome_protos",
2473    srcs = [
2474        "protos/perfetto/metrics/chrome/all_chrome_metrics.proto",
2475        "protos/perfetto/metrics/chrome/blink_gc_metric.proto",
2476        "protos/perfetto/metrics/chrome/frame_times.proto",
2477        "protos/perfetto/metrics/chrome/media_metric.proto",
2478        "protos/perfetto/metrics/chrome/reported_by_page.proto",
2479        "protos/perfetto/metrics/chrome/scroll_jank.proto",
2480        "protos/perfetto/metrics/chrome/test_chrome_metric.proto",
2481    ],
2482    visibility = [
2483        PERFETTO_CONFIG.proto_library_visibility,
2484    ],
2485    deps = [
2486        ":protos_perfetto_metrics_android_protos",
2487        ":protos_perfetto_metrics_custom_options_protos",
2488        ":protos_perfetto_metrics_protos",
2489    ] + PERFETTO_CONFIG.deps.protobuf_descriptor_proto,
2490)
2491
2492# GN target: //protos/perfetto/metrics:custom_options_source_set
2493perfetto_proto_library(
2494    name = "protos_perfetto_metrics_custom_options_protos",
2495    srcs = [
2496        "protos/perfetto/metrics/custom_options.proto",
2497    ],
2498    visibility = [
2499        PERFETTO_CONFIG.proto_library_visibility,
2500    ],
2501    deps = [
2502    ] + PERFETTO_CONFIG.deps.protobuf_descriptor_proto,
2503)
2504
2505# GN target: //protos/perfetto/metrics:descriptor
2506perfetto_proto_descriptor(
2507    name = "protos_perfetto_metrics_descriptor",
2508    deps = [
2509        ":protos_perfetto_metrics_protos",
2510    ],
2511    outs = [
2512        "protos_perfetto_metrics_descriptor.bin",
2513    ],
2514)
2515
2516# GN target: //protos/perfetto/metrics:lite
2517perfetto_cc_proto_library(
2518    name = "protos_perfetto_metrics_lite",
2519    deps = [
2520        ":protos_perfetto_metrics_protos",
2521    ],
2522)
2523
2524# GN target: //protos/perfetto/metrics:source_set
2525perfetto_proto_library(
2526    name = "protos_perfetto_metrics_protos",
2527    srcs = [
2528        "protos/perfetto/metrics/metrics.proto",
2529    ],
2530    visibility = PERFETTO_CONFIG.public_visibility,
2531    deps = [
2532        ":protos_perfetto_metrics_android_protos",
2533    ],
2534)
2535
2536# GN target: //protos/perfetto/trace/android:lite
2537perfetto_cc_proto_library(
2538    name = "protos_perfetto_trace_android_lite",
2539    deps = [
2540        ":protos_perfetto_trace_android_protos",
2541    ],
2542)
2543
2544# GN target: //protos/perfetto/trace/android:zero
2545perfetto_proto_library(
2546    name = "protos_perfetto_trace_android_protos",
2547    srcs = [
2548        "protos/perfetto/trace/android/android_log.proto",
2549        "protos/perfetto/trace/android/frame_timeline_event.proto",
2550        "protos/perfetto/trace/android/gpu_mem_event.proto",
2551        "protos/perfetto/trace/android/graphics_frame_event.proto",
2552        "protos/perfetto/trace/android/initial_display_state.proto",
2553        "protos/perfetto/trace/android/packages_list.proto",
2554    ],
2555    visibility = [
2556        PERFETTO_CONFIG.proto_library_visibility,
2557    ],
2558    deps = [
2559        ":protos_perfetto_common_protos",
2560    ],
2561)
2562
2563# GN target: //protos/perfetto/trace/android:zero
2564perfetto_cc_protozero_library(
2565    name = "protos_perfetto_trace_android_zero",
2566    deps = [
2567        ":protos_perfetto_common_zero",
2568        ":protos_perfetto_trace_android_protos",
2569    ],
2570)
2571
2572# GN target: //protos/perfetto/trace/chrome:lite
2573perfetto_cc_proto_library(
2574    name = "protos_perfetto_trace_chrome_lite",
2575    deps = [
2576        ":protos_perfetto_trace_chrome_protos",
2577    ],
2578)
2579
2580# GN target: //protos/perfetto/trace/chrome:zero
2581perfetto_proto_library(
2582    name = "protos_perfetto_trace_chrome_protos",
2583    srcs = [
2584        "protos/perfetto/trace/chrome/chrome_benchmark_metadata.proto",
2585        "protos/perfetto/trace/chrome/chrome_metadata.proto",
2586        "protos/perfetto/trace/chrome/chrome_trace_event.proto",
2587    ],
2588    visibility = [
2589        PERFETTO_CONFIG.proto_library_visibility,
2590    ],
2591)
2592
2593# GN target: //protos/perfetto/trace/chrome:zero
2594perfetto_cc_protozero_library(
2595    name = "protos_perfetto_trace_chrome_zero",
2596    deps = [
2597        ":protos_perfetto_trace_chrome_protos",
2598    ],
2599)
2600
2601# GN target: //protos/perfetto/trace/filesystem:lite
2602perfetto_cc_proto_library(
2603    name = "protos_perfetto_trace_filesystem_lite",
2604    deps = [
2605        ":protos_perfetto_trace_filesystem_protos",
2606    ],
2607)
2608
2609# GN target: //protos/perfetto/trace/filesystem:zero
2610perfetto_proto_library(
2611    name = "protos_perfetto_trace_filesystem_protos",
2612    srcs = [
2613        "protos/perfetto/trace/filesystem/inode_file_map.proto",
2614    ],
2615    visibility = [
2616        PERFETTO_CONFIG.proto_library_visibility,
2617    ],
2618)
2619
2620# GN target: //protos/perfetto/trace/filesystem:zero
2621perfetto_cc_protozero_library(
2622    name = "protos_perfetto_trace_filesystem_zero",
2623    deps = [
2624        ":protos_perfetto_trace_filesystem_protos",
2625    ],
2626)
2627
2628# GN target: //protos/perfetto/trace/ftrace:lite
2629perfetto_cc_proto_library(
2630    name = "protos_perfetto_trace_ftrace_lite",
2631    deps = [
2632        ":protos_perfetto_trace_ftrace_protos",
2633    ],
2634)
2635
2636# GN target: //protos/perfetto/trace/ftrace:zero
2637perfetto_proto_library(
2638    name = "protos_perfetto_trace_ftrace_protos",
2639    srcs = [
2640        "protos/perfetto/trace/ftrace/binder.proto",
2641        "protos/perfetto/trace/ftrace/block.proto",
2642        "protos/perfetto/trace/ftrace/cgroup.proto",
2643        "protos/perfetto/trace/ftrace/clk.proto",
2644        "protos/perfetto/trace/ftrace/compaction.proto",
2645        "protos/perfetto/trace/ftrace/cpuhp.proto",
2646        "protos/perfetto/trace/ftrace/dmabuf_heap.proto",
2647        "protos/perfetto/trace/ftrace/dpu.proto",
2648        "protos/perfetto/trace/ftrace/ext4.proto",
2649        "protos/perfetto/trace/ftrace/f2fs.proto",
2650        "protos/perfetto/trace/ftrace/fastrpc.proto",
2651        "protos/perfetto/trace/ftrace/fence.proto",
2652        "protos/perfetto/trace/ftrace/filemap.proto",
2653        "protos/perfetto/trace/ftrace/ftrace.proto",
2654        "protos/perfetto/trace/ftrace/ftrace_event.proto",
2655        "protos/perfetto/trace/ftrace/ftrace_event_bundle.proto",
2656        "protos/perfetto/trace/ftrace/ftrace_stats.proto",
2657        "protos/perfetto/trace/ftrace/g2d.proto",
2658        "protos/perfetto/trace/ftrace/generic.proto",
2659        "protos/perfetto/trace/ftrace/gpu_mem.proto",
2660        "protos/perfetto/trace/ftrace/i2c.proto",
2661        "protos/perfetto/trace/ftrace/ion.proto",
2662        "protos/perfetto/trace/ftrace/ipi.proto",
2663        "protos/perfetto/trace/ftrace/irq.proto",
2664        "protos/perfetto/trace/ftrace/kmem.proto",
2665        "protos/perfetto/trace/ftrace/lowmemorykiller.proto",
2666        "protos/perfetto/trace/ftrace/mali.proto",
2667        "protos/perfetto/trace/ftrace/mdss.proto",
2668        "protos/perfetto/trace/ftrace/mm_event.proto",
2669        "protos/perfetto/trace/ftrace/oom.proto",
2670        "protos/perfetto/trace/ftrace/power.proto",
2671        "protos/perfetto/trace/ftrace/raw_syscalls.proto",
2672        "protos/perfetto/trace/ftrace/regulator.proto",
2673        "protos/perfetto/trace/ftrace/sched.proto",
2674        "protos/perfetto/trace/ftrace/scm.proto",
2675        "protos/perfetto/trace/ftrace/sde.proto",
2676        "protos/perfetto/trace/ftrace/signal.proto",
2677        "protos/perfetto/trace/ftrace/sync.proto",
2678        "protos/perfetto/trace/ftrace/systrace.proto",
2679        "protos/perfetto/trace/ftrace/task.proto",
2680        "protos/perfetto/trace/ftrace/test_bundle_wrapper.proto",
2681        "protos/perfetto/trace/ftrace/thermal.proto",
2682        "protos/perfetto/trace/ftrace/vmscan.proto",
2683        "protos/perfetto/trace/ftrace/workqueue.proto",
2684    ],
2685    visibility = [
2686        PERFETTO_CONFIG.proto_library_visibility,
2687    ],
2688)
2689
2690# GN target: //protos/perfetto/trace/ftrace:zero
2691perfetto_cc_protozero_library(
2692    name = "protos_perfetto_trace_ftrace_zero",
2693    deps = [
2694        ":protos_perfetto_trace_ftrace_protos",
2695    ],
2696)
2697
2698# GN target: //protos/perfetto/trace/gpu:lite
2699perfetto_cc_proto_library(
2700    name = "protos_perfetto_trace_gpu_lite",
2701    deps = [
2702        ":protos_perfetto_trace_gpu_protos",
2703    ],
2704)
2705
2706# GN target: //protos/perfetto/trace/gpu:zero
2707perfetto_proto_library(
2708    name = "protos_perfetto_trace_gpu_protos",
2709    srcs = [
2710        "protos/perfetto/trace/gpu/gpu_counter_event.proto",
2711        "protos/perfetto/trace/gpu/gpu_log.proto",
2712        "protos/perfetto/trace/gpu/gpu_render_stage_event.proto",
2713        "protos/perfetto/trace/gpu/vulkan_api_event.proto",
2714        "protos/perfetto/trace/gpu/vulkan_memory_event.proto",
2715    ],
2716    visibility = [
2717        PERFETTO_CONFIG.proto_library_visibility,
2718    ],
2719    deps = [
2720        ":protos_perfetto_common_protos",
2721    ],
2722)
2723
2724# GN target: //protos/perfetto/trace/gpu:zero
2725perfetto_cc_protozero_library(
2726    name = "protos_perfetto_trace_gpu_zero",
2727    deps = [
2728        ":protos_perfetto_common_zero",
2729        ":protos_perfetto_trace_gpu_protos",
2730    ],
2731)
2732
2733# GN target: //protos/perfetto/trace/interned_data:lite
2734perfetto_cc_proto_library(
2735    name = "protos_perfetto_trace_interned_data_lite",
2736    deps = [
2737        ":protos_perfetto_trace_interned_data_protos",
2738    ],
2739)
2740
2741# GN target: //protos/perfetto/trace/interned_data:zero
2742perfetto_proto_library(
2743    name = "protos_perfetto_trace_interned_data_protos",
2744    srcs = [
2745        "protos/perfetto/trace/interned_data/interned_data.proto",
2746    ],
2747    visibility = [
2748        PERFETTO_CONFIG.proto_library_visibility,
2749    ],
2750    deps = [
2751        ":protos_perfetto_common_protos",
2752        ":protos_perfetto_trace_gpu_protos",
2753        ":protos_perfetto_trace_profiling_protos",
2754        ":protos_perfetto_trace_track_event_protos",
2755    ],
2756)
2757
2758# GN target: //protos/perfetto/trace/interned_data:zero
2759perfetto_cc_protozero_library(
2760    name = "protos_perfetto_trace_interned_data_zero",
2761    deps = [
2762        ":protos_perfetto_common_zero",
2763        ":protos_perfetto_trace_gpu_zero",
2764        ":protos_perfetto_trace_interned_data_protos",
2765        ":protos_perfetto_trace_profiling_zero",
2766        ":protos_perfetto_trace_track_event_zero",
2767    ],
2768)
2769
2770# GN target: //protos/perfetto/trace:merged_trace
2771perfetto_cc_proto_library(
2772    name = "protos_perfetto_trace_merged_trace",
2773    deps = [
2774        ":protos_perfetto_trace_merged_trace_protos",
2775    ],
2776)
2777
2778# GN target: //protos/perfetto/trace:merged_trace
2779perfetto_proto_library(
2780    name = "protos_perfetto_trace_merged_trace_protos",
2781    srcs = [
2782        "protos/perfetto/trace/perfetto_trace.proto",
2783    ],
2784    visibility = PERFETTO_CONFIG.public_visibility,
2785)
2786
2787# GN target: //protos/perfetto/trace:minimal_lite
2788perfetto_cc_proto_library(
2789    name = "protos_perfetto_trace_minimal_lite",
2790    deps = [
2791        ":protos_perfetto_trace_minimal_protos",
2792    ],
2793)
2794
2795# GN target: //protos/perfetto/trace:minimal_zero
2796perfetto_proto_library(
2797    name = "protos_perfetto_trace_minimal_protos",
2798    srcs = [
2799        "protos/perfetto/trace/clock_snapshot.proto",
2800        "protos/perfetto/trace/system_info.proto",
2801        "protos/perfetto/trace/trigger.proto",
2802    ],
2803    visibility = [
2804        PERFETTO_CONFIG.proto_library_visibility,
2805    ],
2806    deps = [
2807        ":protos_perfetto_common_protos",
2808        ":protos_perfetto_config_android_protos",
2809        ":protos_perfetto_config_ftrace_protos",
2810        ":protos_perfetto_config_gpu_protos",
2811        ":protos_perfetto_config_inode_file_protos",
2812        ":protos_perfetto_config_interceptors_protos",
2813        ":protos_perfetto_config_power_protos",
2814        ":protos_perfetto_config_process_stats_protos",
2815        ":protos_perfetto_config_profiling_protos",
2816        ":protos_perfetto_config_protos",
2817        ":protos_perfetto_config_sys_stats_protos",
2818        ":protos_perfetto_config_track_event_protos",
2819    ],
2820)
2821
2822# GN target: //protos/perfetto/trace:minimal_zero
2823perfetto_cc_protozero_library(
2824    name = "protos_perfetto_trace_minimal_zero",
2825    deps = [
2826        ":protos_perfetto_common_zero",
2827        ":protos_perfetto_config_android_zero",
2828        ":protos_perfetto_config_ftrace_zero",
2829        ":protos_perfetto_config_gpu_zero",
2830        ":protos_perfetto_config_inode_file_zero",
2831        ":protos_perfetto_config_interceptors_zero",
2832        ":protos_perfetto_config_power_zero",
2833        ":protos_perfetto_config_process_stats_zero",
2834        ":protos_perfetto_config_profiling_zero",
2835        ":protos_perfetto_config_sys_stats_zero",
2836        ":protos_perfetto_config_track_event_zero",
2837        ":protos_perfetto_config_zero",
2838        ":protos_perfetto_trace_minimal_protos",
2839    ],
2840)
2841
2842# GN target: //protos/perfetto/trace:non_minimal_lite
2843perfetto_cc_proto_library(
2844    name = "protos_perfetto_trace_non_minimal_lite",
2845    deps = [
2846        ":protos_perfetto_trace_non_minimal_protos",
2847    ],
2848)
2849
2850# GN target: //protos/perfetto/trace:non_minimal_zero
2851perfetto_proto_library(
2852    name = "protos_perfetto_trace_non_minimal_protos",
2853    srcs = [
2854        "protos/perfetto/trace/extension_descriptor.proto",
2855        "protos/perfetto/trace/memory_graph.proto",
2856        "protos/perfetto/trace/test_event.proto",
2857        "protos/perfetto/trace/test_extensions.proto",
2858        "protos/perfetto/trace/trace.proto",
2859        "protos/perfetto/trace/trace_packet.proto",
2860        "protos/perfetto/trace/trace_packet_defaults.proto",
2861        "protos/perfetto/trace/ui_state.proto",
2862    ],
2863    visibility = PERFETTO_CONFIG.public_visibility,
2864    deps = [
2865        ":protos_perfetto_common_protos",
2866        ":protos_perfetto_config_android_protos",
2867        ":protos_perfetto_config_ftrace_protos",
2868        ":protos_perfetto_config_gpu_protos",
2869        ":protos_perfetto_config_inode_file_protos",
2870        ":protos_perfetto_config_interceptors_protos",
2871        ":protos_perfetto_config_power_protos",
2872        ":protos_perfetto_config_process_stats_protos",
2873        ":protos_perfetto_config_profiling_protos",
2874        ":protos_perfetto_config_protos",
2875        ":protos_perfetto_config_sys_stats_protos",
2876        ":protos_perfetto_config_track_event_protos",
2877        ":protos_perfetto_trace_android_protos",
2878        ":protos_perfetto_trace_chrome_protos",
2879        ":protos_perfetto_trace_filesystem_protos",
2880        ":protos_perfetto_trace_ftrace_protos",
2881        ":protos_perfetto_trace_gpu_protos",
2882        ":protos_perfetto_trace_interned_data_protos",
2883        ":protos_perfetto_trace_minimal_protos",
2884        ":protos_perfetto_trace_perfetto_protos",
2885        ":protos_perfetto_trace_power_protos",
2886        ":protos_perfetto_trace_profiling_protos",
2887        ":protos_perfetto_trace_ps_protos",
2888        ":protos_perfetto_trace_sys_stats_protos",
2889        ":protos_perfetto_trace_system_info_protos",
2890        ":protos_perfetto_trace_track_event_protos",
2891    ],
2892)
2893
2894# GN target: //protos/perfetto/trace:non_minimal_zero
2895perfetto_cc_protozero_library(
2896    name = "protos_perfetto_trace_non_minimal_zero",
2897    deps = [
2898        ":protos_perfetto_common_zero",
2899        ":protos_perfetto_config_android_zero",
2900        ":protos_perfetto_config_ftrace_zero",
2901        ":protos_perfetto_config_gpu_zero",
2902        ":protos_perfetto_config_inode_file_zero",
2903        ":protos_perfetto_config_interceptors_zero",
2904        ":protos_perfetto_config_power_zero",
2905        ":protos_perfetto_config_process_stats_zero",
2906        ":protos_perfetto_config_profiling_zero",
2907        ":protos_perfetto_config_sys_stats_zero",
2908        ":protos_perfetto_config_track_event_zero",
2909        ":protos_perfetto_config_zero",
2910        ":protos_perfetto_trace_android_zero",
2911        ":protos_perfetto_trace_chrome_zero",
2912        ":protos_perfetto_trace_filesystem_zero",
2913        ":protos_perfetto_trace_ftrace_zero",
2914        ":protos_perfetto_trace_gpu_zero",
2915        ":protos_perfetto_trace_interned_data_zero",
2916        ":protos_perfetto_trace_minimal_zero",
2917        ":protos_perfetto_trace_non_minimal_protos",
2918        ":protos_perfetto_trace_perfetto_zero",
2919        ":protos_perfetto_trace_power_zero",
2920        ":protos_perfetto_trace_profiling_zero",
2921        ":protos_perfetto_trace_ps_zero",
2922        ":protos_perfetto_trace_sys_stats_zero",
2923        ":protos_perfetto_trace_system_info_zero",
2924        ":protos_perfetto_trace_track_event_zero",
2925    ],
2926)
2927
2928# GN target: //protos/perfetto/trace/perfetto:lite
2929perfetto_cc_proto_library(
2930    name = "protos_perfetto_trace_perfetto_lite",
2931    deps = [
2932        ":protos_perfetto_trace_perfetto_protos",
2933    ],
2934)
2935
2936# GN target: //protos/perfetto/trace/perfetto:zero
2937perfetto_proto_library(
2938    name = "protos_perfetto_trace_perfetto_protos",
2939    srcs = [
2940        "protos/perfetto/trace/perfetto/perfetto_metatrace.proto",
2941        "protos/perfetto/trace/perfetto/tracing_service_event.proto",
2942    ],
2943    visibility = [
2944        PERFETTO_CONFIG.proto_library_visibility,
2945    ],
2946)
2947
2948# GN target: //protos/perfetto/trace/perfetto:zero
2949perfetto_cc_protozero_library(
2950    name = "protos_perfetto_trace_perfetto_zero",
2951    deps = [
2952        ":protos_perfetto_trace_perfetto_protos",
2953    ],
2954)
2955
2956# GN target: //protos/perfetto/trace/power:lite
2957perfetto_cc_proto_library(
2958    name = "protos_perfetto_trace_power_lite",
2959    deps = [
2960        ":protos_perfetto_trace_power_protos",
2961    ],
2962)
2963
2964# GN target: //protos/perfetto/trace/power:zero
2965perfetto_proto_library(
2966    name = "protos_perfetto_trace_power_protos",
2967    srcs = [
2968        "protos/perfetto/trace/power/android_energy_estimation_breakdown.proto",
2969        "protos/perfetto/trace/power/battery_counters.proto",
2970        "protos/perfetto/trace/power/power_rails.proto",
2971    ],
2972    visibility = [
2973        PERFETTO_CONFIG.proto_library_visibility,
2974    ],
2975    deps = [
2976        ":protos_perfetto_common_protos",
2977    ],
2978)
2979
2980# GN target: //protos/perfetto/trace/power:zero
2981perfetto_cc_protozero_library(
2982    name = "protos_perfetto_trace_power_zero",
2983    deps = [
2984        ":protos_perfetto_common_zero",
2985        ":protos_perfetto_trace_power_protos",
2986    ],
2987)
2988
2989# GN target: //protos/perfetto/trace_processor:metrics_impl_zero
2990perfetto_proto_library(
2991    name = "protos_perfetto_trace_processor_metrics_impl_protos",
2992    srcs = [
2993        "protos/perfetto/trace_processor/metrics_impl.proto",
2994    ],
2995    visibility = [
2996        PERFETTO_CONFIG.proto_library_visibility,
2997    ],
2998)
2999
3000# GN target: //protos/perfetto/trace_processor:metrics_impl_zero
3001perfetto_cc_protozero_library(
3002    name = "protos_perfetto_trace_processor_metrics_impl_zero",
3003    deps = [
3004        ":protos_perfetto_trace_processor_metrics_impl_protos",
3005    ],
3006)
3007
3008# GN target: //protos/perfetto/trace_processor:zero
3009perfetto_proto_library(
3010    name = "protos_perfetto_trace_processor_protos",
3011    srcs = [
3012        "protos/perfetto/trace_processor/trace_processor.proto",
3013    ],
3014    visibility = [
3015        PERFETTO_CONFIG.proto_library_visibility,
3016    ],
3017    deps = [
3018        ":protos_perfetto_common_protos",
3019    ],
3020)
3021
3022# GN target: //protos/perfetto/trace_processor:zero
3023perfetto_cc_protozero_library(
3024    name = "protos_perfetto_trace_processor_zero",
3025    deps = [
3026        ":protos_perfetto_common_zero",
3027        ":protos_perfetto_trace_processor_protos",
3028    ],
3029)
3030
3031# GN target: //protos/perfetto/trace/profiling:lite
3032perfetto_cc_proto_library(
3033    name = "protos_perfetto_trace_profiling_lite",
3034    deps = [
3035        ":protos_perfetto_trace_profiling_protos",
3036    ],
3037)
3038
3039# GN target: //protos/perfetto/trace/profiling:zero
3040perfetto_proto_library(
3041    name = "protos_perfetto_trace_profiling_protos",
3042    srcs = [
3043        "protos/perfetto/trace/profiling/deobfuscation.proto",
3044        "protos/perfetto/trace/profiling/heap_graph.proto",
3045        "protos/perfetto/trace/profiling/profile_common.proto",
3046        "protos/perfetto/trace/profiling/profile_packet.proto",
3047        "protos/perfetto/trace/profiling/smaps.proto",
3048    ],
3049    visibility = [
3050        PERFETTO_CONFIG.proto_library_visibility,
3051    ],
3052    deps = [
3053        ":protos_perfetto_common_protos",
3054    ],
3055)
3056
3057# GN target: //protos/perfetto/trace/profiling:zero
3058perfetto_cc_protozero_library(
3059    name = "protos_perfetto_trace_profiling_zero",
3060    deps = [
3061        ":protos_perfetto_common_zero",
3062        ":protos_perfetto_trace_profiling_protos",
3063    ],
3064)
3065
3066# GN target: //protos/perfetto/trace/ps:lite
3067perfetto_cc_proto_library(
3068    name = "protos_perfetto_trace_ps_lite",
3069    deps = [
3070        ":protos_perfetto_trace_ps_protos",
3071    ],
3072)
3073
3074# GN target: //protos/perfetto/trace/ps:zero
3075perfetto_proto_library(
3076    name = "protos_perfetto_trace_ps_protos",
3077    srcs = [
3078        "protos/perfetto/trace/ps/process_stats.proto",
3079        "protos/perfetto/trace/ps/process_tree.proto",
3080    ],
3081    visibility = [
3082        PERFETTO_CONFIG.proto_library_visibility,
3083    ],
3084)
3085
3086# GN target: //protos/perfetto/trace/ps:zero
3087perfetto_cc_protozero_library(
3088    name = "protos_perfetto_trace_ps_zero",
3089    deps = [
3090        ":protos_perfetto_trace_ps_protos",
3091    ],
3092)
3093
3094# GN target: //protos/perfetto/trace/sys_stats:lite
3095perfetto_cc_proto_library(
3096    name = "protos_perfetto_trace_sys_stats_lite",
3097    deps = [
3098        ":protos_perfetto_trace_sys_stats_protos",
3099    ],
3100)
3101
3102# GN target: //protos/perfetto/trace/sys_stats:zero
3103perfetto_proto_library(
3104    name = "protos_perfetto_trace_sys_stats_protos",
3105    srcs = [
3106        "protos/perfetto/trace/sys_stats/sys_stats.proto",
3107    ],
3108    visibility = [
3109        PERFETTO_CONFIG.proto_library_visibility,
3110    ],
3111    deps = [
3112        ":protos_perfetto_common_protos",
3113    ],
3114)
3115
3116# GN target: //protos/perfetto/trace/sys_stats:zero
3117perfetto_cc_protozero_library(
3118    name = "protos_perfetto_trace_sys_stats_zero",
3119    deps = [
3120        ":protos_perfetto_common_zero",
3121        ":protos_perfetto_trace_sys_stats_protos",
3122    ],
3123)
3124
3125# GN target: //protos/perfetto/trace/system_info:lite
3126perfetto_cc_proto_library(
3127    name = "protos_perfetto_trace_system_info_lite",
3128    deps = [
3129        ":protos_perfetto_trace_system_info_protos",
3130    ],
3131)
3132
3133# GN target: //protos/perfetto/trace/system_info:zero
3134perfetto_proto_library(
3135    name = "protos_perfetto_trace_system_info_protos",
3136    srcs = [
3137        "protos/perfetto/trace/system_info/cpu_info.proto",
3138    ],
3139    visibility = [
3140        PERFETTO_CONFIG.proto_library_visibility,
3141    ],
3142)
3143
3144# GN target: //protos/perfetto/trace/system_info:zero
3145perfetto_cc_protozero_library(
3146    name = "protos_perfetto_trace_system_info_zero",
3147    deps = [
3148        ":protos_perfetto_trace_system_info_protos",
3149    ],
3150)
3151
3152# GN target: //protos/perfetto/trace/track_event:cpp
3153perfetto_cc_protocpp_library(
3154    name = "protos_perfetto_trace_track_event_cpp",
3155    deps = [
3156        ":protos_perfetto_trace_track_event_protos",
3157    ],
3158)
3159
3160# GN target: //protos/perfetto/trace/track_event:lite
3161perfetto_cc_proto_library(
3162    name = "protos_perfetto_trace_track_event_lite",
3163    deps = [
3164        ":protos_perfetto_trace_track_event_protos",
3165    ],
3166)
3167
3168# GN target: //protos/perfetto/trace/track_event:zero
3169perfetto_proto_library(
3170    name = "protos_perfetto_trace_track_event_protos",
3171    srcs = [
3172        "protos/perfetto/trace/track_event/chrome_application_state_info.proto",
3173        "protos/perfetto/trace/track_event/chrome_compositor_scheduler_state.proto",
3174        "protos/perfetto/trace/track_event/chrome_content_settings_event_info.proto",
3175        "protos/perfetto/trace/track_event/chrome_frame_reporter.proto",
3176        "protos/perfetto/trace/track_event/chrome_histogram_sample.proto",
3177        "protos/perfetto/trace/track_event/chrome_keyed_service.proto",
3178        "protos/perfetto/trace/track_event/chrome_latency_info.proto",
3179        "protos/perfetto/trace/track_event/chrome_legacy_ipc.proto",
3180        "protos/perfetto/trace/track_event/chrome_message_pump.proto",
3181        "protos/perfetto/trace/track_event/chrome_mojo_event_info.proto",
3182        "protos/perfetto/trace/track_event/chrome_process_descriptor.proto",
3183        "protos/perfetto/trace/track_event/chrome_renderer_scheduler_state.proto",
3184        "protos/perfetto/trace/track_event/chrome_thread_descriptor.proto",
3185        "protos/perfetto/trace/track_event/chrome_user_event.proto",
3186        "protos/perfetto/trace/track_event/chrome_window_handle_event_info.proto",
3187        "protos/perfetto/trace/track_event/counter_descriptor.proto",
3188        "protos/perfetto/trace/track_event/debug_annotation.proto",
3189        "protos/perfetto/trace/track_event/log_message.proto",
3190        "protos/perfetto/trace/track_event/process_descriptor.proto",
3191        "protos/perfetto/trace/track_event/source_location.proto",
3192        "protos/perfetto/trace/track_event/task_execution.proto",
3193        "protos/perfetto/trace/track_event/thread_descriptor.proto",
3194        "protos/perfetto/trace/track_event/track_descriptor.proto",
3195        "protos/perfetto/trace/track_event/track_event.proto",
3196    ],
3197    visibility = [
3198        PERFETTO_CONFIG.proto_library_visibility,
3199    ],
3200)
3201
3202# GN target: //protos/perfetto/trace/track_event:track_event_descriptor
3203perfetto_proto_descriptor(
3204    name = "protos_perfetto_trace_track_event_track_event_descriptor",
3205    deps = [
3206        ":protos_perfetto_trace_track_event_track_event_protos",
3207    ],
3208    outs = [
3209        "protos_perfetto_trace_track_event_track_event_descriptor.bin",
3210    ],
3211)
3212
3213# GN target: //protos/perfetto/trace/track_event:track_event_descriptor
3214perfetto_proto_library(
3215    name = "protos_perfetto_trace_track_event_track_event_protos",
3216    srcs = [
3217        "protos/perfetto/trace/track_event/track_event.proto",
3218    ],
3219    visibility = [
3220        PERFETTO_CONFIG.proto_library_visibility,
3221    ],
3222    deps = [
3223        ":protos_perfetto_trace_track_event_protos",
3224    ],
3225)
3226
3227# GN target: //protos/perfetto/trace/track_event:zero
3228perfetto_cc_protozero_library(
3229    name = "protos_perfetto_trace_track_event_zero",
3230    deps = [
3231        ":protos_perfetto_trace_track_event_protos",
3232    ],
3233)
3234
3235# GN target: //protos/third_party/chromium:chrome_track_event_descriptor
3236perfetto_proto_descriptor(
3237    name = "protos_third_party_chromium_chrome_track_event_descriptor",
3238    deps = [
3239        ":protos_third_party_chromium_chrome_track_event_protos",
3240    ],
3241    outs = [
3242        "protos_third_party_chromium_chrome_track_event_descriptor.bin",
3243    ],
3244)
3245
3246# GN target: //protos/third_party/chromium:chrome_track_event_descriptor
3247perfetto_proto_library(
3248    name = "protos_third_party_chromium_chrome_track_event_protos",
3249    srcs = [
3250        "protos/third_party/chromium/chrome_track_event.proto",
3251    ],
3252    visibility = [
3253        PERFETTO_CONFIG.proto_library_visibility,
3254    ],
3255    deps = [
3256        ":protos_perfetto_trace_track_event_protos",
3257    ],
3258)
3259
3260# GN target: //protos/third_party/pprof:zero
3261perfetto_proto_library(
3262    name = "protos_third_party_pprof_protos",
3263    srcs = [
3264        "protos/third_party/pprof/profile.proto",
3265    ],
3266    visibility = [
3267        PERFETTO_CONFIG.proto_library_visibility,
3268    ],
3269)
3270
3271# GN target: //protos/third_party/pprof:zero
3272perfetto_cc_protozero_library(
3273    name = "protos_third_party_pprof_zero",
3274    deps = [
3275        ":protos_third_party_pprof_protos",
3276    ],
3277)
3278
3279# GN target: //src/perfetto_cmd:protos
3280perfetto_cc_protocpp_library(
3281    name = "src_perfetto_cmd_protos",
3282    deps = [
3283        ":src_perfetto_cmd_protos_protos",
3284    ],
3285)
3286
3287# GN target: //src/perfetto_cmd:protos
3288perfetto_proto_library(
3289    name = "src_perfetto_cmd_protos_protos",
3290    srcs = [
3291        "src/perfetto_cmd/perfetto_cmd_state.proto",
3292    ],
3293    visibility = [
3294        PERFETTO_CONFIG.proto_library_visibility,
3295    ],
3296)
3297
3298# ##############################################################################
3299# Public targets
3300# ##############################################################################
3301
3302# GN target: //:libperfetto_client_experimental
3303perfetto_cc_library(
3304    name = "libperfetto_client_experimental",
3305    srcs = [
3306        ":src_android_stats_android_stats",
3307        ":src_android_stats_perfetto_atoms",
3308        ":src_protozero_filtering_bytecode_common",
3309        ":src_protozero_filtering_bytecode_parser",
3310        ":src_protozero_filtering_message_filter",
3311        ":src_tracing_client_api_without_backends",
3312        ":src_tracing_common",
3313        ":src_tracing_core_core",
3314        ":src_tracing_core_service",
3315        ":src_tracing_in_process_backend",
3316        ":src_tracing_ipc_common",
3317        ":src_tracing_ipc_consumer_consumer",
3318        ":src_tracing_ipc_producer_producer",
3319        ":src_tracing_ipc_service_service",
3320        ":src_tracing_platform_impl",
3321        ":src_tracing_system_backend",
3322    ],
3323    hdrs = [
3324        ":include_perfetto_base_base",
3325        ":include_perfetto_ext_base_base",
3326        ":include_perfetto_ext_ipc_ipc",
3327        ":include_perfetto_ext_tracing_core_core",
3328        ":include_perfetto_ext_tracing_ipc_ipc",
3329        ":include_perfetto_protozero_protozero",
3330        ":include_perfetto_tracing_core_core",
3331        ":include_perfetto_tracing_core_forward_decls",
3332        ":include_perfetto_tracing_tracing",
3333        "include/perfetto/tracing.h",
3334    ],
3335    visibility = [
3336        "//visibility:public",
3337    ],
3338    deps = [
3339        ":perfetto_ipc",
3340        ":protos_perfetto_common_cpp",
3341        ":protos_perfetto_common_zero",
3342        ":protos_perfetto_config_android_cpp",
3343        ":protos_perfetto_config_android_zero",
3344        ":protos_perfetto_config_cpp",
3345        ":protos_perfetto_config_ftrace_cpp",
3346        ":protos_perfetto_config_ftrace_zero",
3347        ":protos_perfetto_config_gpu_cpp",
3348        ":protos_perfetto_config_gpu_zero",
3349        ":protos_perfetto_config_inode_file_cpp",
3350        ":protos_perfetto_config_inode_file_zero",
3351        ":protos_perfetto_config_interceptors_cpp",
3352        ":protos_perfetto_config_interceptors_zero",
3353        ":protos_perfetto_config_power_cpp",
3354        ":protos_perfetto_config_power_zero",
3355        ":protos_perfetto_config_process_stats_cpp",
3356        ":protos_perfetto_config_process_stats_zero",
3357        ":protos_perfetto_config_profiling_cpp",
3358        ":protos_perfetto_config_profiling_zero",
3359        ":protos_perfetto_config_sys_stats_cpp",
3360        ":protos_perfetto_config_sys_stats_zero",
3361        ":protos_perfetto_config_track_event_cpp",
3362        ":protos_perfetto_config_track_event_zero",
3363        ":protos_perfetto_config_zero",
3364        ":protos_perfetto_ipc_cpp",
3365        ":protos_perfetto_ipc_ipc",
3366        ":protos_perfetto_trace_android_zero",
3367        ":protos_perfetto_trace_chrome_zero",
3368        ":protos_perfetto_trace_filesystem_zero",
3369        ":protos_perfetto_trace_ftrace_zero",
3370        ":protos_perfetto_trace_gpu_zero",
3371        ":protos_perfetto_trace_interned_data_zero",
3372        ":protos_perfetto_trace_minimal_zero",
3373        ":protos_perfetto_trace_non_minimal_zero",
3374        ":protos_perfetto_trace_perfetto_zero",
3375        ":protos_perfetto_trace_power_zero",
3376        ":protos_perfetto_trace_profiling_zero",
3377        ":protos_perfetto_trace_ps_zero",
3378        ":protos_perfetto_trace_sys_stats_zero",
3379        ":protos_perfetto_trace_system_info_zero",
3380        ":protos_perfetto_trace_track_event_cpp",
3381        ":protos_perfetto_trace_track_event_zero",
3382        ":protozero",
3383        ":src_base_base",
3384    ],
3385    linkstatic = True,
3386)
3387
3388# GN target: //src/perfetto_cmd:perfetto
3389perfetto_cc_binary(
3390    name = "perfetto",
3391    srcs = [
3392        ":include_perfetto_base_base",
3393        ":include_perfetto_ext_base_base",
3394        ":include_perfetto_ext_ipc_ipc",
3395        ":include_perfetto_ext_traced_traced",
3396        ":include_perfetto_ext_tracing_core_core",
3397        ":include_perfetto_ext_tracing_ipc_ipc",
3398        ":include_perfetto_protozero_protozero",
3399        ":include_perfetto_tracing_core_core",
3400        ":include_perfetto_tracing_core_forward_decls",
3401        ":include_perfetto_tracing_tracing",
3402        ":src_android_stats_android_stats",
3403        ":src_android_stats_perfetto_atoms",
3404        ":src_perfetto_cmd_perfetto_cmd",
3405        ":src_perfetto_cmd_trigger_producer",
3406        ":src_tracing_common",
3407        ":src_tracing_core_core",
3408        ":src_tracing_ipc_common",
3409        ":src_tracing_ipc_consumer_consumer",
3410        ":src_tracing_ipc_producer_producer",
3411        "src/perfetto_cmd/main.cc",
3412    ],
3413    visibility = [
3414        "//visibility:public",
3415    ],
3416    deps = [
3417        ":perfetto_ipc",
3418        ":protos_perfetto_common_cpp",
3419        ":protos_perfetto_common_zero",
3420        ":protos_perfetto_config_android_cpp",
3421        ":protos_perfetto_config_android_zero",
3422        ":protos_perfetto_config_cpp",
3423        ":protos_perfetto_config_ftrace_cpp",
3424        ":protos_perfetto_config_ftrace_zero",
3425        ":protos_perfetto_config_gpu_cpp",
3426        ":protos_perfetto_config_gpu_zero",
3427        ":protos_perfetto_config_inode_file_cpp",
3428        ":protos_perfetto_config_inode_file_zero",
3429        ":protos_perfetto_config_interceptors_cpp",
3430        ":protos_perfetto_config_interceptors_zero",
3431        ":protos_perfetto_config_power_cpp",
3432        ":protos_perfetto_config_power_zero",
3433        ":protos_perfetto_config_process_stats_cpp",
3434        ":protos_perfetto_config_process_stats_zero",
3435        ":protos_perfetto_config_profiling_cpp",
3436        ":protos_perfetto_config_profiling_zero",
3437        ":protos_perfetto_config_sys_stats_cpp",
3438        ":protos_perfetto_config_sys_stats_zero",
3439        ":protos_perfetto_config_track_event_cpp",
3440        ":protos_perfetto_config_track_event_zero",
3441        ":protos_perfetto_config_zero",
3442        ":protos_perfetto_ipc_cpp",
3443        ":protos_perfetto_ipc_ipc",
3444        ":protos_perfetto_trace_android_zero",
3445        ":protos_perfetto_trace_chrome_zero",
3446        ":protos_perfetto_trace_filesystem_zero",
3447        ":protos_perfetto_trace_ftrace_zero",
3448        ":protos_perfetto_trace_gpu_zero",
3449        ":protos_perfetto_trace_interned_data_zero",
3450        ":protos_perfetto_trace_minimal_zero",
3451        ":protos_perfetto_trace_non_minimal_zero",
3452        ":protos_perfetto_trace_perfetto_zero",
3453        ":protos_perfetto_trace_power_zero",
3454        ":protos_perfetto_trace_profiling_zero",
3455        ":protos_perfetto_trace_ps_zero",
3456        ":protos_perfetto_trace_sys_stats_zero",
3457        ":protos_perfetto_trace_system_info_zero",
3458        ":protos_perfetto_trace_track_event_cpp",
3459        ":protos_perfetto_trace_track_event_zero",
3460        ":protozero",
3461        ":src_base_base",
3462        ":src_perfetto_cmd_gen_cc_config_descriptor",
3463        ":src_perfetto_cmd_protos",
3464    ] + PERFETTO_CONFIG.deps.zlib,
3465)
3466
3467# GN target: //src/trace_processor:trace_processor
3468perfetto_cc_library(
3469    name = "trace_processor",
3470    srcs = [
3471        ":src_trace_processor_analysis_analysis",
3472        ":src_trace_processor_db_db",
3473        ":src_trace_processor_export_json",
3474        ":src_trace_processor_ftrace_descriptors",
3475        ":src_trace_processor_importers_common_common",
3476        ":src_trace_processor_importers_memory_tracker_graph_processor",
3477        ":src_trace_processor_lib",
3478        ":src_trace_processor_metatrace",
3479        ":src_trace_processor_metrics_lib",
3480        ":src_trace_processor_sqlite_sqlite",
3481        ":src_trace_processor_storage_full",
3482        ":src_trace_processor_storage_minimal",
3483        ":src_trace_processor_storage_storage",
3484        ":src_trace_processor_tables_tables",
3485        ":src_trace_processor_types_types",
3486        ":src_trace_processor_util_descriptors",
3487        ":src_trace_processor_util_proto_to_args_parser",
3488        ":src_trace_processor_util_protozero_to_text",
3489        ":src_trace_processor_util_util",
3490    ],
3491    hdrs = [
3492        ":include_perfetto_base_base",
3493        ":include_perfetto_ext_base_base",
3494        ":include_perfetto_ext_trace_processor_export_json",
3495        ":include_perfetto_ext_trace_processor_importers_memory_tracker_memory_tracker",
3496        ":include_perfetto_ext_traced_sys_stats_counters",
3497        ":include_perfetto_trace_processor_basic_types",
3498        ":include_perfetto_trace_processor_storage",
3499        ":include_perfetto_trace_processor_trace_processor",
3500    ],
3501    visibility = [
3502        "//visibility:public",
3503    ],
3504    deps = [
3505               ":protos_perfetto_common_zero",
3506               ":protos_perfetto_config_android_zero",
3507               ":protos_perfetto_config_ftrace_zero",
3508               ":protos_perfetto_config_gpu_zero",
3509               ":protos_perfetto_config_inode_file_zero",
3510               ":protos_perfetto_config_interceptors_zero",
3511               ":protos_perfetto_config_power_zero",
3512               ":protos_perfetto_config_process_stats_zero",
3513               ":protos_perfetto_config_profiling_zero",
3514               ":protos_perfetto_config_sys_stats_zero",
3515               ":protos_perfetto_config_track_event_zero",
3516               ":protos_perfetto_config_zero",
3517               ":protos_perfetto_trace_android_zero",
3518               ":protos_perfetto_trace_chrome_zero",
3519               ":protos_perfetto_trace_filesystem_zero",
3520               ":protos_perfetto_trace_ftrace_zero",
3521               ":protos_perfetto_trace_gpu_zero",
3522               ":protos_perfetto_trace_interned_data_zero",
3523               ":protos_perfetto_trace_minimal_zero",
3524               ":protos_perfetto_trace_non_minimal_zero",
3525               ":protos_perfetto_trace_perfetto_zero",
3526               ":protos_perfetto_trace_power_zero",
3527               ":protos_perfetto_trace_processor_metrics_impl_zero",
3528               ":protos_perfetto_trace_processor_zero",
3529               ":protos_perfetto_trace_profiling_zero",
3530               ":protos_perfetto_trace_ps_zero",
3531               ":protos_perfetto_trace_sys_stats_zero",
3532               ":protos_perfetto_trace_system_info_zero",
3533               ":protos_perfetto_trace_track_event_zero",
3534               ":protozero",
3535               ":src_base_base",
3536               ":src_trace_processor_containers_containers",
3537               ":src_trace_processor_importers_gen_cc_chrome_track_event_descriptor",
3538               ":src_trace_processor_importers_gen_cc_config_descriptor",
3539               ":src_trace_processor_importers_gen_cc_track_event_descriptor",
3540               ":src_trace_processor_metrics_gen_cc_all_chrome_metrics_descriptor",
3541               ":src_trace_processor_metrics_gen_cc_metrics_descriptor",
3542           ] + PERFETTO_CONFIG.deps.jsoncpp +
3543           PERFETTO_CONFIG.deps.sqlite +
3544           PERFETTO_CONFIG.deps.sqlite_ext_percentile +
3545           PERFETTO_CONFIG.deps.zlib + [
3546        ":cc_merged_sql_metrics",
3547    ],
3548    linkstatic = True,
3549)
3550
3551# GN target: //src/trace_processor:trace_processor_shell
3552perfetto_cc_binary(
3553    name = "trace_processor_shell",
3554    srcs = [
3555        ":include_perfetto_base_base",
3556        ":include_perfetto_ext_base_base",
3557        ":include_perfetto_ext_trace_processor_export_json",
3558        ":include_perfetto_ext_trace_processor_importers_memory_tracker_memory_tracker",
3559        ":include_perfetto_ext_traced_sys_stats_counters",
3560        ":include_perfetto_protozero_protozero",
3561        ":include_perfetto_trace_processor_basic_types",
3562        ":include_perfetto_trace_processor_storage",
3563        ":include_perfetto_trace_processor_trace_processor",
3564        ":src_profiling_deobfuscator",
3565        ":src_profiling_symbolizer_symbolize_database",
3566        ":src_profiling_symbolizer_symbolizer",
3567        ":src_trace_processor_analysis_analysis",
3568        ":src_trace_processor_db_db",
3569        ":src_trace_processor_export_json",
3570        ":src_trace_processor_ftrace_descriptors",
3571        ":src_trace_processor_importers_common_common",
3572        ":src_trace_processor_importers_memory_tracker_graph_processor",
3573        ":src_trace_processor_lib",
3574        ":src_trace_processor_metatrace",
3575        ":src_trace_processor_metrics_lib",
3576        ":src_trace_processor_rpc_httpd",
3577        ":src_trace_processor_rpc_rpc",
3578        ":src_trace_processor_sqlite_sqlite",
3579        ":src_trace_processor_storage_full",
3580        ":src_trace_processor_storage_minimal",
3581        ":src_trace_processor_storage_storage",
3582        ":src_trace_processor_tables_tables",
3583        ":src_trace_processor_types_types",
3584        ":src_trace_processor_util_descriptors",
3585        ":src_trace_processor_util_proto_to_args_parser",
3586        ":src_trace_processor_util_protozero_to_text",
3587        ":src_trace_processor_util_util",
3588        "src/trace_processor/trace_processor_shell.cc",
3589        "src/trace_processor/util/proto_to_json.cc",
3590        "src/trace_processor/util/proto_to_json.h",
3591    ],
3592    visibility = [
3593        "//visibility:public",
3594    ],
3595    deps = [
3596               ":protos_perfetto_common_zero",
3597               ":protos_perfetto_config_android_zero",
3598               ":protos_perfetto_config_ftrace_zero",
3599               ":protos_perfetto_config_gpu_zero",
3600               ":protos_perfetto_config_inode_file_zero",
3601               ":protos_perfetto_config_interceptors_zero",
3602               ":protos_perfetto_config_power_zero",
3603               ":protos_perfetto_config_process_stats_zero",
3604               ":protos_perfetto_config_profiling_zero",
3605               ":protos_perfetto_config_sys_stats_zero",
3606               ":protos_perfetto_config_track_event_zero",
3607               ":protos_perfetto_config_zero",
3608               ":protos_perfetto_trace_android_zero",
3609               ":protos_perfetto_trace_chrome_zero",
3610               ":protos_perfetto_trace_filesystem_zero",
3611               ":protos_perfetto_trace_ftrace_zero",
3612               ":protos_perfetto_trace_gpu_zero",
3613               ":protos_perfetto_trace_interned_data_zero",
3614               ":protos_perfetto_trace_minimal_zero",
3615               ":protos_perfetto_trace_non_minimal_zero",
3616               ":protos_perfetto_trace_perfetto_zero",
3617               ":protos_perfetto_trace_power_zero",
3618               ":protos_perfetto_trace_processor_metrics_impl_zero",
3619               ":protos_perfetto_trace_processor_zero",
3620               ":protos_perfetto_trace_profiling_zero",
3621               ":protos_perfetto_trace_ps_zero",
3622               ":protos_perfetto_trace_sys_stats_zero",
3623               ":protos_perfetto_trace_system_info_zero",
3624               ":protos_perfetto_trace_track_event_zero",
3625               ":protozero",
3626               ":src_base_base",
3627               ":src_base_unix_socket",
3628               ":src_trace_processor_containers_containers",
3629               ":src_trace_processor_importers_gen_cc_chrome_track_event_descriptor",
3630               ":src_trace_processor_importers_gen_cc_config_descriptor",
3631               ":src_trace_processor_importers_gen_cc_track_event_descriptor",
3632               ":src_trace_processor_metrics_gen_cc_all_chrome_metrics_descriptor",
3633               ":src_trace_processor_metrics_gen_cc_metrics_descriptor",
3634           ] + PERFETTO_CONFIG.deps.jsoncpp +
3635           PERFETTO_CONFIG.deps.linenoise +
3636           PERFETTO_CONFIG.deps.protobuf_full +
3637           PERFETTO_CONFIG.deps.sqlite +
3638           PERFETTO_CONFIG.deps.sqlite_ext_percentile +
3639           PERFETTO_CONFIG.deps.zlib + [
3640        ":cc_merged_sql_metrics",
3641    ],
3642)
3643
3644# GN target: //src/traced/probes:traced_probes
3645perfetto_cc_binary(
3646    name = "traced_probes",
3647    srcs = [
3648        ":include_perfetto_ext_traced_traced",
3649        "src/traced/probes/main.cc",
3650    ],
3651    visibility = [
3652        "//visibility:public",
3653    ],
3654    deps = [
3655        ":libperfetto",
3656    ],
3657)
3658
3659# GN target: //src/traced/service:traced
3660perfetto_cc_binary(
3661    name = "traced",
3662    srcs = [
3663        ":include_perfetto_ext_traced_traced",
3664        "src/traced/service/main.cc",
3665    ],
3666    visibility = [
3667        "//visibility:public",
3668    ],
3669    deps = [
3670        ":libperfetto",
3671    ],
3672)
3673
3674# GN target: //tools/trace_to_text:libpprofbuilder
3675perfetto_cc_library(
3676    name = "libpprofbuilder",
3677    srcs = [
3678        ":src_profiling_deobfuscator",
3679        ":src_profiling_symbolizer_symbolize_database",
3680        ":src_profiling_symbolizer_symbolizer",
3681        ":tools_trace_to_text_pprofbuilder",
3682        ":tools_trace_to_text_utils",
3683    ],
3684    hdrs = [
3685        ":include_perfetto_base_base",
3686        ":include_perfetto_ext_base_base",
3687        ":include_perfetto_profiling_pprof_builder",
3688        ":include_perfetto_protozero_protozero",
3689        ":include_perfetto_trace_processor_basic_types",
3690        ":include_perfetto_trace_processor_storage",
3691        ":include_perfetto_trace_processor_trace_processor",
3692    ],
3693    visibility = [
3694        "//visibility:public",
3695    ],
3696    deps = [
3697        ":protos_perfetto_common_zero",
3698        ":protos_perfetto_config_android_zero",
3699        ":protos_perfetto_config_ftrace_zero",
3700        ":protos_perfetto_config_gpu_zero",
3701        ":protos_perfetto_config_inode_file_zero",
3702        ":protos_perfetto_config_interceptors_zero",
3703        ":protos_perfetto_config_power_zero",
3704        ":protos_perfetto_config_process_stats_zero",
3705        ":protos_perfetto_config_profiling_zero",
3706        ":protos_perfetto_config_sys_stats_zero",
3707        ":protos_perfetto_config_track_event_zero",
3708        ":protos_perfetto_config_zero",
3709        ":protos_perfetto_trace_android_zero",
3710        ":protos_perfetto_trace_chrome_zero",
3711        ":protos_perfetto_trace_filesystem_zero",
3712        ":protos_perfetto_trace_ftrace_zero",
3713        ":protos_perfetto_trace_gpu_zero",
3714        ":protos_perfetto_trace_interned_data_zero",
3715        ":protos_perfetto_trace_minimal_zero",
3716        ":protos_perfetto_trace_non_minimal_zero",
3717        ":protos_perfetto_trace_perfetto_zero",
3718        ":protos_perfetto_trace_power_zero",
3719        ":protos_perfetto_trace_profiling_zero",
3720        ":protos_perfetto_trace_ps_zero",
3721        ":protos_perfetto_trace_sys_stats_zero",
3722        ":protos_perfetto_trace_system_info_zero",
3723        ":protos_perfetto_trace_track_event_zero",
3724        ":protos_third_party_pprof_zero",
3725        ":protozero",
3726        ":src_trace_processor_containers_containers",
3727    ] + PERFETTO_CONFIG.deps.zlib,
3728    linkstatic = True,
3729)
3730
3731# GN target: //tools/trace_to_text:trace_to_text
3732perfetto_cc_binary(
3733    name = "trace_to_text",
3734    srcs = [
3735        ":include_perfetto_base_base",
3736        ":include_perfetto_ext_base_base",
3737        ":include_perfetto_ext_trace_processor_export_json",
3738        ":include_perfetto_ext_trace_processor_importers_memory_tracker_memory_tracker",
3739        ":include_perfetto_ext_traced_sys_stats_counters",
3740        ":include_perfetto_profiling_pprof_builder",
3741        ":include_perfetto_protozero_protozero",
3742        ":include_perfetto_trace_processor_basic_types",
3743        ":include_perfetto_trace_processor_storage",
3744        ":include_perfetto_trace_processor_trace_processor",
3745        ":src_profiling_deobfuscator",
3746        ":src_profiling_symbolizer_symbolize_database",
3747        ":src_profiling_symbolizer_symbolizer",
3748        ":src_trace_processor_analysis_analysis",
3749        ":src_trace_processor_db_db",
3750        ":src_trace_processor_export_json",
3751        ":src_trace_processor_ftrace_descriptors",
3752        ":src_trace_processor_importers_common_common",
3753        ":src_trace_processor_importers_memory_tracker_graph_processor",
3754        ":src_trace_processor_lib",
3755        ":src_trace_processor_metatrace",
3756        ":src_trace_processor_metrics_lib",
3757        ":src_trace_processor_sqlite_sqlite",
3758        ":src_trace_processor_storage_full",
3759        ":src_trace_processor_storage_minimal",
3760        ":src_trace_processor_storage_storage",
3761        ":src_trace_processor_tables_tables",
3762        ":src_trace_processor_types_types",
3763        ":src_trace_processor_util_descriptors",
3764        ":src_trace_processor_util_proto_to_args_parser",
3765        ":src_trace_processor_util_protozero_to_text",
3766        ":src_trace_processor_util_util",
3767        ":tools_trace_to_text_common",
3768        ":tools_trace_to_text_full",
3769        ":tools_trace_to_text_pprofbuilder",
3770        ":tools_trace_to_text_utils",
3771    ],
3772    visibility = [
3773        "//visibility:public",
3774    ],
3775    deps = [
3776               ":protos_perfetto_common_zero",
3777               ":protos_perfetto_config_android_zero",
3778               ":protos_perfetto_config_ftrace_zero",
3779               ":protos_perfetto_config_gpu_zero",
3780               ":protos_perfetto_config_inode_file_zero",
3781               ":protos_perfetto_config_interceptors_zero",
3782               ":protos_perfetto_config_power_zero",
3783               ":protos_perfetto_config_process_stats_zero",
3784               ":protos_perfetto_config_profiling_zero",
3785               ":protos_perfetto_config_sys_stats_zero",
3786               ":protos_perfetto_config_track_event_zero",
3787               ":protos_perfetto_config_zero",
3788               ":protos_perfetto_trace_android_zero",
3789               ":protos_perfetto_trace_chrome_zero",
3790               ":protos_perfetto_trace_filesystem_zero",
3791               ":protos_perfetto_trace_ftrace_zero",
3792               ":protos_perfetto_trace_gpu_zero",
3793               ":protos_perfetto_trace_interned_data_zero",
3794               ":protos_perfetto_trace_minimal_zero",
3795               ":protos_perfetto_trace_non_minimal_zero",
3796               ":protos_perfetto_trace_perfetto_zero",
3797               ":protos_perfetto_trace_power_zero",
3798               ":protos_perfetto_trace_processor_metrics_impl_zero",
3799               ":protos_perfetto_trace_processor_zero",
3800               ":protos_perfetto_trace_profiling_zero",
3801               ":protos_perfetto_trace_ps_zero",
3802               ":protos_perfetto_trace_sys_stats_zero",
3803               ":protos_perfetto_trace_system_info_zero",
3804               ":protos_perfetto_trace_track_event_zero",
3805               ":protos_third_party_pprof_zero",
3806               ":protozero",
3807               ":src_base_base",
3808               ":src_trace_processor_containers_containers",
3809               ":src_trace_processor_importers_gen_cc_chrome_track_event_descriptor",
3810               ":src_trace_processor_importers_gen_cc_config_descriptor",
3811               ":src_trace_processor_importers_gen_cc_track_event_descriptor",
3812               ":src_trace_processor_metrics_gen_cc_all_chrome_metrics_descriptor",
3813               ":src_trace_processor_metrics_gen_cc_metrics_descriptor",
3814           ] + PERFETTO_CONFIG.deps.jsoncpp +
3815           PERFETTO_CONFIG.deps.protobuf_full +
3816           PERFETTO_CONFIG.deps.sqlite +
3817           PERFETTO_CONFIG.deps.sqlite_ext_percentile +
3818           PERFETTO_CONFIG.deps.zlib + [
3819        ":cc_merged_sql_metrics",
3820    ],
3821)
3822
3823# Content from BUILD.extras
3824
3825build_config_dir_ = "include/perfetto/base/build_configs/bazel"
3826
3827# Deliberately NOT a perfetto_cc_library, to avoid cyclic deps.
3828# This is pulled as a default dep by all targets.
3829cc_library(
3830    name = "build_config_hdr",
3831    hdrs = [build_config_dir_ + "/perfetto_build_flags.h"],
3832    includes = [build_config_dir_],
3833)
3834
3835perfetto_cc_library(
3836    name = "cc_merged_sql_metrics",
3837    hdrs = ["src/trace_processor/metrics/sql_metrics.h"],
3838)
3839
3840perfetto_py_binary(
3841    name = "gen_merged_sql_metrics_py",
3842    srcs = [
3843        "tools/gen_merged_sql_metrics.py",
3844    ],
3845    main = "tools/gen_merged_sql_metrics.py",
3846    python_version = "PY3",
3847)
3848
3849perfetto_py_binary(
3850    name = "gen_cc_proto_descriptor_py",
3851    srcs = [
3852        "tools/gen_cc_proto_descriptor.py",
3853    ],
3854    main = "tools/gen_cc_proto_descriptor.py",
3855    python_version = "PY3",
3856)
3857
3858perfetto_java_proto_library(
3859    name = "protos_perfetto_metrics_java",
3860    deps = [
3861        ":protos_perfetto_metrics_protos",
3862    ],
3863)
3864
3865perfetto_java_proto_library(
3866    name = "protos_perfetto_metrics_android_java",
3867    deps = [
3868        ":protos_perfetto_metrics_android_protos",
3869    ],
3870)
3871
3872perfetto_java_proto_library(
3873    name = "protos_perfetto_trace_merged_trace_java",
3874    deps = [
3875        ":protos_perfetto_trace_merged_trace_protos",
3876    ],
3877)
3878
3879perfetto_java_proto_library(
3880    name = "protos_perfetto_config_merged_config_java",
3881    deps = [
3882        ":protos_perfetto_config_merged_config_protos",
3883    ],
3884)
3885
3886perfetto_java_lite_proto_library(
3887    name = "protos_perfetto_config_merged_config_java_lite",
3888    deps = [
3889        ":protos_perfetto_config_merged_config_protos",
3890    ],
3891)
3892
3893perfetto_gensignature_internal_only(
3894    name = "trace_processor_sig",
3895    srcs = [
3896        ":trace_processor_shell",
3897        ":trace_to_text",
3898    ],
3899    tags = [
3900        "__TRACE_PROCESSOR_SIG_TAG1",
3901        "__TRACE_PROCESSOR_SIG_TAG2",
3902    ],
3903)
3904
3905# This is overridden in google internal builds via
3906# PERFETTO_CONFIG.deps.version_header (see perfetto_cfg.bzl).
3907perfetto_cc_library(
3908    name = "cc_perfetto_version_header",
3909    hdrs = ["perfetto_version.gen.h"],
3910)
3911
3912perfetto_py_binary(
3913    name = "gen_version_header_py",
3914    srcs = ["tools/write_version_header.py"],
3915    data = ["CHANGELOG"],
3916    main = "tools/write_version_header.py",
3917    python_version = "PY3",
3918)
3919
3920# Noop targets used to represent targets of the protobuf library.
3921# These will be rewritten in Google3 to be dependencies on the real targets.
3922
3923perfetto_py_library(
3924    name = "pyglib_noop",
3925    srcs = [],
3926)
3927
3928perfetto_py_library(
3929    name = "protobuf_noop",
3930    srcs = [],
3931)
3932
3933perfetto_py_library(
3934    name = "protobuf_descriptor_pb2_noop",
3935    srcs = [],
3936)
3937
3938perfetto_py_library(
3939    name = "gfile_noop",
3940    srcs = [],
3941)
3942
3943perfetto_py_library(
3944    name = "trace_processor_init_noop",
3945    srcs = [],
3946)
3947
3948perfetto_py_binary(
3949    name = "trace_processor_py_example",
3950    srcs = ["src/trace_processor/python/example.py"],
3951    deps = [":trace_processor_py"],
3952    main = "src/trace_processor/python/example.py",
3953    python_version = "PY3",
3954)
3955
3956perfetto_py_library(
3957    name = "trace_processor_py",
3958    srcs = glob(["src/trace_processor/python/perfetto/trace_processor/*.py"]),
3959    data = [
3960        ":trace_processor_init_noop",
3961        "src/trace_processor/python/perfetto/trace_processor/trace_processor.descriptor",
3962        "src/trace_processor/python/perfetto/trace_processor/metrics.descriptor",
3963        ":trace_processor_shell",
3964    ],
3965    deps = [
3966        ":gfile_noop",
3967        ":protobuf_noop",
3968        ":protobuf_descriptor_pb2_noop",
3969        ":pyglib_noop",
3970    ],
3971    visibility = PERFETTO_CONFIG.public_visibility,
3972)
3973