| // These targets are appended to the autogenerated Android.bp by tools/gen_android_bp. | 
 |  | 
 | java_library_host { | 
 |     name: "perfetto_config-full", | 
 |     proto: { | 
 |         type: "full", | 
 |     }, | 
 |     srcs: [ | 
 |         "protos/perfetto/config/perfetto_config.proto", | 
 |     ], | 
 | } | 
 |  | 
 | java_library { | 
 |     name: "perfetto_config-lite", | 
 |     proto: { | 
 |         type: "lite", | 
 |     }, | 
 |     srcs: [ | 
 |         "protos/perfetto/config/perfetto_config.proto", | 
 |     ], | 
 | } | 
 |  | 
 | java_library_host { | 
 |     name: "perfetto_trace-full", | 
 |     proto: { | 
 |         type: "full", | 
 |     }, | 
 |     srcs: [ | 
 |         "protos/perfetto/trace/perfetto_trace.proto", | 
 |     ], | 
 |     // b/267831518: Pin tradefed and dependencies to Java 11. | 
 |     java_version: "11", | 
 | } | 
 |  | 
 | java_library_host { | 
 |     name: "perfetto_metrics-full", | 
 |     proto: { | 
 |         type: "full", | 
 |     }, | 
 |     srcs: [ | 
 |         "protos/perfetto/metrics/perfetto_merged_metrics.proto", | 
 |     ], | 
 |     // b/267831518: Pin tradefed and dependencies to Java 11. | 
 |     java_version: "11", | 
 | } | 
 |  | 
 | // This sample target shows how to use the perfetto client API from within the | 
 | // Android tree. | 
 | cc_binary { | 
 |     name: "libperfetto_client_example", | 
 |     srcs: [ | 
 |         "test/client_api_example.cc", | 
 |     ], | 
 |     static_libs: [ | 
 |         "libperfetto_client_experimental", | 
 |         "perfetto_trace_protos", | 
 |     ], | 
 |     shared_libs: [ | 
 |         "libprotobuf-cpp-lite", | 
 |         "liblog", | 
 |     ], | 
 |     cflags: [ | 
 |         "-DGOOGLE_PROTOBUF_NO_RTTI", | 
 |         "-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER", | 
 |     ], | 
 |     defaults: [ | 
 |         "perfetto_defaults", | 
 |     ], | 
 | } | 
 |  | 
 | cc_library_static { | 
 |     name: "libstatslog_perfetto", | 
 |     generated_sources: ["statslog_perfetto.cpp"], | 
 |     generated_headers: ["statslog_perfetto.h"], | 
 |     cflags: [ | 
 |         "-Wall", | 
 |         "-Werror", | 
 |     ], | 
 |     export_generated_headers: ["statslog_perfetto.h"], | 
 |     shared_libs: [ | 
 |         "libcutils", | 
 |         "liblog", | 
 |         "libstatssocket", | 
 |         "libutils", | 
 |     ], | 
 | } | 
 |  | 
 | genrule { | 
 |     name: "statslog_perfetto.h", | 
 |     tools: ["stats-log-api-gen"], | 
 |     cmd: "$(location stats-log-api-gen) --header $(genDir)/statslog_perfetto.h --module perfetto --namespace perfetto,android_internal", | 
 |     out: [ | 
 |         "statslog_perfetto.h", | 
 |     ], | 
 | } | 
 |  | 
 | genrule { | 
 |     name: "statslog_perfetto.cpp", | 
 |     tools: ["stats-log-api-gen"], | 
 |     cmd: "$(location stats-log-api-gen) --cpp $(genDir)/statslog_perfetto.cpp --module perfetto --namespace perfetto,android_internal --importHeader statslog_perfetto.h", | 
 |     out: [ | 
 |         "statslog_perfetto.cpp", | 
 |     ], | 
 | } | 
 |  | 
 | sh_binary { | 
 |     name: "mm_events", | 
 |     src: "tools/mm_events", | 
 | } | 
 |  | 
 | package { | 
 |     default_applicable_licenses: ["external_perfetto_license"], | 
 | } | 
 |  | 
 | python_library { | 
 |     name: "perfetto-trace-processor-python", | 
 |     srcs: [ | 
 |         ":perfetto-trace-processor-python-srcs", | 
 |         ":perfetto-trace-uri-resolver-python-srcs", | 
 |     ], | 
 |     data: [ | 
 |         ":perfetto-trace-processor-python-data", | 
 |     ], | 
 |     libs: [ | 
 |         "libprotobuf-python", | 
 |     ], | 
 |     host_supported: true, | 
 | } | 
 |  | 
 | filegroup { | 
 |     name: "perfetto-trace-uri-resolver-python-srcs", | 
 |     srcs: ["python/perfetto/trace_uri_resolver/*.py"], | 
 |     path: "python", | 
 | } | 
 |  | 
 | filegroup { | 
 |     name: "perfetto-trace-processor-python-srcs", | 
 |     srcs: ["python/perfetto/trace_processor/*.py"], | 
 |     path: "python", | 
 | } | 
 |  | 
 | filegroup { | 
 |     name: "perfetto-trace-processor-python-data", | 
 |     srcs: ["python/perfetto/trace_processor/*.descriptor*"], | 
 |     path: "python", | 
 | } | 
 |  | 
 | // Added automatically by a large-scale-change that took the approach of | 
 | // 'apply every license found to every target'. While this makes sure we respect | 
 | // every license restriction, it may not be entirely correct. | 
 | // | 
 | // e.g. GPL in an MIT project might only apply to the contrib/ directory. | 
 | // | 
 | // Please consider splitting the single license below into multiple licenses, | 
 | // taking care not to lose any license_kind information, and overriding the | 
 | // default license using the 'licenses: [...]' property on targets as needed. | 
 | // | 
 | // For unused files, consider creating a 'fileGroup' with "//visibility:private" | 
 | // to attach the license to, and including a comment whether the files may be | 
 | // used in the current project. | 
 | // See: http://go/android-license-faq | 
 | license { | 
 |     name: "external_perfetto_license", | 
 |     visibility: [":__subpackages__"], | 
 |     license_kinds: [ | 
 |         "SPDX-license-identifier-Apache-2.0", | 
 |         "SPDX-license-identifier-BSD", | 
 |         "SPDX-license-identifier-CC-BY", | 
 |     ], | 
 |     license_text: [ | 
 |         "LICENSE", | 
 |     ], | 
 | } |