| build_config_dir_ = "include/perfetto/base/build_configs/bazel" | 
 |  | 
 | # Deliberately NOT a perfetto_cc_library, to avoid cyclic deps. | 
 | # This is pulled as a default dep by all targets. | 
 | cc_library( | 
 |     name = "build_config_hdr", | 
 |     hdrs = [build_config_dir_ + "/perfetto_build_flags.h"], | 
 |     includes = [build_config_dir_], | 
 | ) | 
 |  | 
 | perfetto_cc_library( | 
 |     name = "cc_merged_sql_metrics", | 
 |     hdrs = ["src/trace_processor/metrics/sql_metrics.h"], | 
 | ) | 
 |  | 
 | perfetto_py_binary( | 
 |     name = "gen_merged_sql_metrics_py", | 
 |     srcs = [ | 
 |         "tools/gen_merged_sql_metrics.py", | 
 |     ], | 
 |     main = "tools/gen_merged_sql_metrics.py", | 
 |     python_version = "PY3", | 
 | ) | 
 |  | 
 | perfetto_py_binary( | 
 |     name = "gen_cc_proto_descriptor_py", | 
 |     srcs = [ | 
 |         "tools/gen_cc_proto_descriptor.py", | 
 |     ], | 
 |     main = "tools/gen_cc_proto_descriptor.py", | 
 |     python_version = "PY3", | 
 | ) | 
 |  | 
 | perfetto_java_proto_library( | 
 |     name = "protos_perfetto_metrics_java", | 
 |     deps = [ | 
 |         ":protos_perfetto_metrics_protos", | 
 |     ], | 
 | ) | 
 |  | 
 | perfetto_java_proto_library( | 
 |     name = "protos_perfetto_metrics_android_java", | 
 |     deps = [ | 
 |         ":protos_perfetto_metrics_android_protos", | 
 |     ], | 
 | ) | 
 |  | 
 | perfetto_java_proto_library( | 
 |     name = "protos_perfetto_trace_merged_trace_java", | 
 |     deps = [ | 
 |         ":protos_perfetto_trace_merged_trace_protos", | 
 |     ], | 
 | ) | 
 |  | 
 | perfetto_java_proto_library( | 
 |     name = "protos_perfetto_config_merged_config_java", | 
 |     deps = [ | 
 |         ":protos_perfetto_config_merged_config_protos", | 
 |     ], | 
 | ) | 
 |  | 
 | perfetto_java_lite_proto_library( | 
 |     name = "protos_perfetto_config_merged_config_java_lite", | 
 |     deps = [ | 
 |         ":protos_perfetto_config_merged_config_protos", | 
 |     ], | 
 | ) | 
 |  | 
 | perfetto_gensignature_internal_only( | 
 |     name = "trace_processor_sig", | 
 |     srcs = [ | 
 |         ":trace_processor_shell", | 
 |         ":trace_to_text", | 
 |     ], | 
 |     tags = [ | 
 |         "__TRACE_PROCESSOR_SIG_TAG1", | 
 |         "__TRACE_PROCESSOR_SIG_TAG2", | 
 |     ], | 
 | ) | 
 |  | 
 | # This is overridden in google internal builds via | 
 | # PERFETTO_CONFIG.deps.version_header (see perfetto_cfg.bzl). | 
 | perfetto_cc_library( | 
 |     name = "cc_perfetto_version_header", | 
 |     hdrs = ["perfetto_version.gen.h"], | 
 | ) | 
 |  | 
 | perfetto_py_binary( | 
 |     name = "gen_version_header_py", | 
 |     srcs = ["tools/write_version_header.py"], | 
 |     data = ["CHANGELOG"], | 
 |     main = "tools/write_version_header.py", | 
 |     python_version = "PY3", | 
 | ) | 
 |  | 
 | # Noop targets used to represent targets of the protobuf library. | 
 | # These will be rewritten in Google3 to be dependencies on the real targets. | 
 |  | 
 | perfetto_py_library( | 
 |     name = "pyglib_noop", | 
 |     srcs = [], | 
 | ) | 
 |  | 
 | perfetto_py_library( | 
 |     name = "protobuf_noop", | 
 |     srcs = [], | 
 | ) | 
 |  | 
 | perfetto_py_library( | 
 |     name = "protobuf_descriptor_pb2_noop", | 
 |     srcs = [], | 
 | ) | 
 |  | 
 | perfetto_py_library( | 
 |     name = "gfile_noop", | 
 |     srcs = [], | 
 | ) | 
 |  | 
 | perfetto_py_library( | 
 |     name = "trace_processor_init_noop", | 
 |     srcs = [], | 
 | ) | 
 |  | 
 | perfetto_py_binary( | 
 |     name = "trace_processor_py_example", | 
 |     srcs = ["src/trace_processor/python/example.py"], | 
 |     deps = [":trace_processor_py"], | 
 |     main = "src/trace_processor/python/example.py", | 
 |     python_version = "PY3", | 
 | ) | 
 |  | 
 | perfetto_py_library( | 
 |     name = "trace_processor_py", | 
 |     srcs = glob(["src/trace_processor/python/perfetto/trace_processor/*.py"]), | 
 |     data = [ | 
 |         ":trace_processor_init_noop", | 
 |         "src/trace_processor/python/perfetto/trace_processor/trace_processor.descriptor", | 
 |         "src/trace_processor/python/perfetto/trace_processor/metrics.descriptor", | 
 |         ":trace_processor_shell", | 
 |     ], | 
 |     deps = [ | 
 |         ":gfile_noop", | 
 |         ":protobuf_noop", | 
 |         ":protobuf_descriptor_pb2_noop", | 
 |         ":pyglib_noop", | 
 |     ], | 
 |     visibility = PERFETTO_CONFIG.public_visibility, | 
 | ) |