• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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.gni")
16import("../../../../gn/test.gni")
17
18source_set("minimal") {
19  sources = [
20    "json_utils.cc",
21    "json_utils.h",
22  ]
23  deps = [
24    "../../../../gn:default_deps",
25    "../common",
26  ]
27  if (enable_perfetto_trace_processor_json) {
28    public_deps = [ "../../../../gn:jsoncpp" ]
29  }
30}
31
32source_set("full") {
33  sources = [
34    "json_trace_parser_impl.cc",
35    "json_trace_parser_impl.h",
36    "json_trace_tokenizer.cc",
37    "json_trace_tokenizer.h",
38  ]
39  deps = [
40    ":minimal",
41    "../../../../gn:default_deps",
42    "../../sorter",
43    "../../storage",
44    "../../tables",
45    "../../types",
46    "../common",
47    "../systrace:full",
48    "../systrace:systrace_line",
49  ]
50  if (enable_perfetto_trace_processor_json) {
51    public_deps = [ "../../../../gn:jsoncpp" ]
52  }
53}
54
55if (enable_perfetto_trace_processor_json) {
56  perfetto_unittest_source_set("unittests") {
57    testonly = true
58    sources = [
59      "json_trace_tokenizer_unittest.cc",
60      "json_utils_unittest.cc",
61    ]
62    deps = [
63      ":full",
64      ":minimal",
65      "../../../../gn:default_deps",
66      "../../../../gn:gtest_and_gmock",
67      "../../types",
68    ]
69  }
70}
71