1# Copyright (C) 2022 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 15import("../gn/perfetto_python.gni") 16 17perfetto_py_library("trace_processor_table_generator") { 18 sources = [ 19 "generators/trace_processor_table/public.py", 20 "generators/trace_processor_table/serialize.py", 21 "generators/trace_processor_table/util.py", 22 ] 23} 24 25perfetto_py_library("trace_processor_stdlib_docs") { 26 sources = [ 27 "generators/sql_processing/docs_extractor.py", 28 "generators/sql_processing/docs_parse.py", 29 "generators/sql_processing/utils.py", 30 ] 31} 32 33perfetto_py_library("trace_processor_diff_tests") { 34 sources = [ 35 "generators/diff_tests/runner.py", 36 "generators/diff_tests/testing.py", 37 "generators/diff_tests/utils.py", 38 ] 39} 40 41perfetto_py_binary("trace_processor_py_example") { 42 sources = [ "example.py" ] 43 deps = [ 44 ":trace_processor_py", 45 "../gn:pandas_py", 46 ] 47 main = "example.py" 48} 49 50perfetto_py_library("common") { 51 sources = [ 52 "perfetto/common/exceptions.py", 53 "perfetto/common/query_result_iterator.py", 54 ] 55} 56 57perfetto_py_library("trace_processor_py_no_resolvers") { 58 sources = [ 59 "perfetto/trace_processor/__init__.py", 60 "perfetto/trace_processor/api.py", 61 "perfetto/trace_processor/http.py", 62 "perfetto/trace_processor/platform.py", 63 "perfetto/trace_processor/protos.py", 64 "perfetto/trace_processor/shell.py", 65 ] 66 data = [ 67 "perfetto/trace_processor/trace_processor.descriptor", 68 "perfetto/trace_processor/metrics.descriptor", 69 "..:trace_processor_shell", 70 ] 71 deps = [ 72 ":common", 73 ":trace_uri_resolver", 74 "../gn:pandas_py", 75 "../gn:protobuf_py", 76 "../gn:tp_vendor_py", 77 ] 78} 79 80perfetto_py_library("trace_processor_py") { 81 deps = [ 82 ":trace_processor_py_no_resolvers", 83 "../gn:tp_resolvers_py", 84 ] 85} 86 87perfetto_py_library("trace_uri_resolver") { 88 sources = [ 89 "perfetto/trace_uri_resolver/__init__.py", 90 "perfetto/trace_uri_resolver/path.py", 91 "perfetto/trace_uri_resolver/registry.py", 92 "perfetto/trace_uri_resolver/resolver.py", 93 "perfetto/trace_uri_resolver/util.py", 94 ] 95} 96 97perfetto_py_library("experimental_slice_breakdown_lib") { 98 sources = [ 99 "perfetto/experimental/slice_breakdown/__init__.py", 100 "perfetto/experimental/slice_breakdown/breakdown.py", 101 ] 102 deps = [ ":trace_processor_py" ] 103} 104 105perfetto_py_binary("experimental_slice_breakdown_bin") { 106 sources = [ "tools/slice_breakdown.py" ] 107 main = "tools/slice_breakdown.py" 108 deps = [ 109 ":experimental_slice_breakdown_lib", 110 ":trace_processor_py", 111 "../gn:pandas_py", 112 ] 113} 114 115perfetto_py_library("batch_trace_processor") { 116 sources = [ 117 "perfetto/batch_trace_processor/__init__.py", 118 "perfetto/batch_trace_processor/api.py", 119 "perfetto/batch_trace_processor/platform.py", 120 ] 121 deps = [ 122 ":trace_processor_py", 123 "../gn:pandas_py", 124 "../gn:tp_vendor_py", 125 ] 126} 127 128perfetto_py_library("sql_processing") { 129 sources = [ 130 "generators/sql_processing/docs_extractor.py", 131 "generators/sql_processing/docs_parse.py", 132 "generators/sql_processing/utils.py", 133 ] 134} 135