blob: 53392a73a2a4f2d6e5d807283ab9bbe94c6179c2 [file] [log] [blame] [edit]
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,
)