1fb726d48Sopenharmony_ci# Copyright (c) Huawei Technologies Co., Ltd. 2023. All rights reserved.
2fb726d48Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
3fb726d48Sopenharmony_ci# you may not use this file except in compliance with the License.
4fb726d48Sopenharmony_ci# You may obtain a copy of the License at
5fb726d48Sopenharmony_ci#
6fb726d48Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
7fb726d48Sopenharmony_ci#
8fb726d48Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
9fb726d48Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
10fb726d48Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11fb726d48Sopenharmony_ci# See the License for the specific language governing permissions and
12fb726d48Sopenharmony_ci# limitations under the License.
13fb726d48Sopenharmony_ci
14fb726d48Sopenharmony_ciimport("//build/ohos.gni")
15fb726d48Sopenharmony_ci
16fb726d48Sopenharmony_ciimport("../../build/ts.gni")
17fb726d48Sopenharmony_ciohos_source_set("table") {
18fb726d48Sopenharmony_ci  subsystem_name = "${OHOS_PROFILER_SUBSYS_NAME}"
19fb726d48Sopenharmony_ci  part_name = "${OHOS_PROFILER_PART_NAME}"
20fb726d48Sopenharmony_ci  include_dirs = [
21fb726d48Sopenharmony_ci    "${THIRD_PARTY}/sqlite/include",
22fb726d48Sopenharmony_ci    "${SRC}/base",
23fb726d48Sopenharmony_ci    "../parser",
24fb726d48Sopenharmony_ci    "base",
25fb726d48Sopenharmony_ci    "${SRC}/trace_data",
26fb726d48Sopenharmony_ci    "${SRC}/include",
27fb726d48Sopenharmony_ci    "${SRC}",
28fb726d48Sopenharmony_ci    "${THIRD_PARTY}/protobuf/src",
29fb726d48Sopenharmony_ci    "${THIRD_PARTY}/bounds_checking_function/include",
30fb726d48Sopenharmony_ci  ]
31fb726d48Sopenharmony_ci  include_dirs += [
32fb726d48Sopenharmony_ci    "${SRC}/trace_data/trace_stdtype",
33fb726d48Sopenharmony_ci    "${SRC}/trace_data/trace_stdtype/ftrace",
34fb726d48Sopenharmony_ci    "${SRC}/trace_data/trace_stdtype/ftrace/template",
35fb726d48Sopenharmony_ci    "${SRC}/trace_data/trace_stdtype/hilog",
36fb726d48Sopenharmony_ci    "${SRC}/trace_data/trace_stdtype/hiperf",
37fb726d48Sopenharmony_ci    "${SRC}/trace_data/trace_stdtype/hisysevent",
38fb726d48Sopenharmony_ci    "${SRC}/trace_data/trace_stdtype/htrace",
39fb726d48Sopenharmony_ci    "${SRC}/trace_data/trace_stdtype/measure",
40fb726d48Sopenharmony_ci  ]
41fb726d48Sopenharmony_ci  if (!is_independent_compile) {
42fb726d48Sopenharmony_ci    configs = [ "${TS_DIR}/gn:ts_config" ]
43fb726d48Sopenharmony_ci  }
44fb726d48Sopenharmony_ci  if (enable_ts_utest && !use_wasm) {
45fb726d48Sopenharmony_ci    cflags = [
46fb726d48Sopenharmony_ci      "-fprofile-arcs",
47fb726d48Sopenharmony_ci      "-ftest-coverage",
48fb726d48Sopenharmony_ci    ]
49fb726d48Sopenharmony_ci    ldflags = [
50fb726d48Sopenharmony_ci      "-fprofile-arcs",
51fb726d48Sopenharmony_ci      "-ftest-coverage",
52fb726d48Sopenharmony_ci      "--coverage",
53fb726d48Sopenharmony_ci    ]
54fb726d48Sopenharmony_ci    if (is_test) {
55fb726d48Sopenharmony_ci      cflags += [ "-D IS_UT" ]
56fb726d48Sopenharmony_ci    }
57fb726d48Sopenharmony_ci  }
58fb726d48Sopenharmony_ci
59fb726d48Sopenharmony_ci  deps = [
60fb726d48Sopenharmony_ci    "base:base_tables",
61fb726d48Sopenharmony_ci    "ebpf:ebpf_tables",
62fb726d48Sopenharmony_ci    "ftrace:ftrace_tables",
63fb726d48Sopenharmony_ci    "hi_sysevent:hi_sysevent_tables",
64fb726d48Sopenharmony_ci    "hiperf:hiperf_tables",
65fb726d48Sopenharmony_ci    "js_memory:js_memory_tables",
66fb726d48Sopenharmony_ci    "monitor:monitor_tables",
67fb726d48Sopenharmony_ci    "native_hook:native_hook_tables",
68fb726d48Sopenharmony_ci  ]
69fb726d48Sopenharmony_ci}
70