|  | # Copyright (C) 2022 The Android Open Source Project | 
|  | # | 
|  | # Licensed under the Apache License, Version 2.0 (the "License"); | 
|  | # you may not use this file except in compliance with the License. | 
|  | # You may obtain a copy of the License at | 
|  | # | 
|  | #      http://www.apache.org/licenses/LICENSE-2.0 | 
|  | # | 
|  | # Unless required by applicable law or agreed to in writing, software | 
|  | # distributed under the License is distributed on an "AS IS" BASIS, | 
|  | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | 
|  | # See the License for the specific language governing permissions and | 
|  | # limitations under the License. | 
|  |  | 
|  | import("../gn/perfetto_python.gni") | 
|  |  | 
|  | perfetto_py_library("trace_processor_table_generator") { | 
|  | sources = [ | 
|  | "generators/trace_processor_table/public.py", | 
|  | "generators/trace_processor_table/serialize.py", | 
|  | "generators/trace_processor_table/util.py", | 
|  | ] | 
|  | } | 
|  |  | 
|  | perfetto_py_library("trace_processor_stdlib_docs") { | 
|  | sources = [ | 
|  | "generators/sql_processing/docs_extractor.py", | 
|  | "generators/sql_processing/docs_parse.py", | 
|  | "generators/sql_processing/utils.py", | 
|  | ] | 
|  | } | 
|  |  | 
|  | perfetto_py_library("trace_processor_diff_tests") { | 
|  | sources = [ | 
|  | "generators/diff_tests/runner.py", | 
|  | "generators/diff_tests/testing.py", | 
|  | "generators/diff_tests/utils.py", | 
|  | ] | 
|  | } | 
|  |  | 
|  | perfetto_py_binary("trace_processor_py_example") { | 
|  | sources = [ "example.py" ] | 
|  | deps = [ | 
|  | ":trace_processor_py", | 
|  | "../gn:pandas_py", | 
|  | ] | 
|  | main = "example.py" | 
|  | } | 
|  |  | 
|  | perfetto_py_library("trace_processor_py") { | 
|  | sources = [ | 
|  | "perfetto/trace_processor/__init__.py", | 
|  | "perfetto/trace_processor/api.py", | 
|  | "perfetto/trace_processor/http.py", | 
|  | "perfetto/trace_processor/platform.py", | 
|  | "perfetto/trace_processor/protos.py", | 
|  | "perfetto/trace_processor/shell.py", | 
|  | ] | 
|  | data = [ | 
|  | "perfetto/trace_processor/trace_processor.descriptor", | 
|  | "perfetto/trace_processor/metrics.descriptor", | 
|  | "..:trace_processor_shell", | 
|  | ] | 
|  | deps = [ | 
|  | ":trace_uri_resolver", | 
|  | "../gn:pandas_py", | 
|  | "../gn:protobuf_py", | 
|  | "../gn:tp_vendor_py", | 
|  | ] | 
|  | } | 
|  |  | 
|  | perfetto_py_library("trace_uri_resolver") { | 
|  | sources = [ | 
|  | "perfetto/trace_uri_resolver/__init__.py", | 
|  | "perfetto/trace_uri_resolver/path.py", | 
|  | "perfetto/trace_uri_resolver/registry.py", | 
|  | "perfetto/trace_uri_resolver/resolver.py", | 
|  | "perfetto/trace_uri_resolver/util.py", | 
|  | ] | 
|  | } | 
|  |  | 
|  | perfetto_py_library("experimental_slice_breakdown_lib") { | 
|  | sources = [ | 
|  | "perfetto/experimental/slice_breakdown/__init__.py", | 
|  | "perfetto/experimental/slice_breakdown/breakdown.py", | 
|  | ] | 
|  | deps = [ ":trace_processor_py" ] | 
|  | } | 
|  |  | 
|  | perfetto_py_binary("experimental_slice_breakdown_bin") { | 
|  | sources = [ "tools/slice_breakdown.py" ] | 
|  | main = "tools/slice_breakdown.py" | 
|  | deps = [ | 
|  | ":experimental_slice_breakdown_lib", | 
|  | ":trace_processor_py", | 
|  | "../gn:pandas_py", | 
|  | ] | 
|  | } | 
|  |  | 
|  | perfetto_py_library("batch_trace_processor") { | 
|  | sources = [ | 
|  | "perfetto/batch_trace_processor/__init__.py", | 
|  | "perfetto/batch_trace_processor/api.py", | 
|  | "perfetto/batch_trace_processor/platform.py", | 
|  | ] | 
|  | deps = [ | 
|  | ":trace_processor_py", | 
|  | "../gn:pandas_py", | 
|  | "../gn:tp_vendor_py", | 
|  | ] | 
|  | } |