1# Copyright (c) 2023 Huawei Device Co., Ltd.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at
5#
6#     http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13
14import("//arkcompiler/toolchain/toolchain.gni")
15
16ohos_source_set("libark_client_set") {
17  stack_protector_ret = false
18  defines = []
19  deps = []
20
21  # hiviewdfx libraries
22  external_deps = hiviewdfx_ext_deps
23  deps += hiviewdfx_deps
24
25  include_dirs = [
26    "..",
27    "$toolchain_root/websocket",
28  ]
29
30  sources = [
31    "../utils/utils.cpp",
32    "domain/debugger_client.cpp",
33    "domain/heapprofiler_client.cpp",
34    "domain/profiler_client.cpp",
35    "domain/runtime_client.cpp",
36    "domain/test_client.cpp",
37    "manager/breakpoint_manager.cpp",
38    "manager/domain_manager.cpp",
39    "manager/source_manager.cpp",
40    "manager/stack_manager.cpp",
41    "manager/variable_manager.cpp",
42    "manager/watch_manager.cpp",
43    "session/session.cpp",
44    "tcpServer/tcp_server.cpp",
45    "utils/cli_command.cpp",
46  ]
47
48  deps += [
49    "$toolchain_root/websocket:websocket_client",
50    "..:libark_ecma_debugger",
51  ]
52
53  external_deps += [
54    "bounds_checking_function:libsec_shared",
55    "cJSON:cjson_static",
56    "ets_runtime:libark_jsruntime",
57    "libuv:uv",
58  ]
59
60  configs = [ "../..:ark_toolchain_common_config" ]
61
62  cflags_cc = [ "-Wno-vla-extension" ]
63
64  subsystem_name = "arkcompiler"
65  part_name = "toolchain"
66}
67
68ohos_shared_library("libark_client") {
69  stack_protector_ret = false
70  deps = [ ":libark_client_set" ]
71
72  install_enable = false
73  if (!is_mingw && !is_mac) {
74    output_extension = "so"
75  }
76  external_deps = []
77  external_deps += [
78    "bounds_checking_function:libsec_shared",
79    "cJSON:cjson_static",
80  ]
81  if (enable_hilog) {
82    external_deps += [ "hilog:libhilog" ]
83  }
84
85  subsystem_name = "test"
86}
87