100600bfbSopenharmony_ci# Copyright (c) 2021-2022 Huawei Device Co., Ltd.
200600bfbSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
300600bfbSopenharmony_ci# you may not use this file except in compliance with the License.
400600bfbSopenharmony_ci# You may obtain a copy of the License at
500600bfbSopenharmony_ci#
600600bfbSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
700600bfbSopenharmony_ci#
800600bfbSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
900600bfbSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
1000600bfbSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1100600bfbSopenharmony_ci# See the License for the specific language governing permissions and
1200600bfbSopenharmony_ci# limitations under the License.
1300600bfbSopenharmony_ci
1400600bfbSopenharmony_ciimport("../../hidumper.gni")
1500600bfbSopenharmony_ci
1600600bfbSopenharmony_ciconfig("dump_usage_config") {
1700600bfbSopenharmony_ci  visibility = [ "*:*" ]
1800600bfbSopenharmony_ci
1900600bfbSopenharmony_ci  include_dirs = [
2000600bfbSopenharmony_ci    "include",
2100600bfbSopenharmony_ci    "${hidumper_frameworks_path}",
2200600bfbSopenharmony_ci    "${hidumper_frameworks_path}/include",
2300600bfbSopenharmony_ci    "${hidumper_utils_path}/native/include",
2400600bfbSopenharmony_ci    "${hidumper_interface}/innerkits/include",
2500600bfbSopenharmony_ci  ]
2600600bfbSopenharmony_ci}
2700600bfbSopenharmony_ci
2800600bfbSopenharmony_ciohos_shared_library("lib_dump_usage") {
2900600bfbSopenharmony_ci  branch_protector_ret = "pac_ret"
3000600bfbSopenharmony_ci  public_configs = [ ":dump_usage_config" ]
3100600bfbSopenharmony_ci
3200600bfbSopenharmony_ci  sources = [
3300600bfbSopenharmony_ci    "${hidumper_frameworks_path}/src/executor/memory/dma_info.cpp",
3400600bfbSopenharmony_ci    "${hidumper_frameworks_path}/src/executor/memory/memory_util.cpp",
3500600bfbSopenharmony_ci    "${hidumper_frameworks_path}/src/executor/memory/parse/parse_smaps_rollup_info.cpp",
3600600bfbSopenharmony_ci    "${hidumper_frameworks_path}/src/util/file_utils.cpp",
3700600bfbSopenharmony_ci    "${hidumper_frameworks_path}/src/util/string_utils.cpp",
3800600bfbSopenharmony_ci    "../../interfaces/innerkits/dump_usage.cpp",
3900600bfbSopenharmony_ci  ]
4000600bfbSopenharmony_ci
4100600bfbSopenharmony_ci  defines = []
4200600bfbSopenharmony_ci  if (hidumper_hiviewdfx_hiview_enable) {
4300600bfbSopenharmony_ci    defines += [ "HIDUMPER_HIVIEWDFX_HIVIEW_ENABLE" ]
4400600bfbSopenharmony_ci  }
4500600bfbSopenharmony_ci
4600600bfbSopenharmony_ci  deps = [ "${hidumper_service_path}:hidumper_client" ]
4700600bfbSopenharmony_ci
4800600bfbSopenharmony_ci  external_deps = [
4900600bfbSopenharmony_ci    "c_utils:utils",
5000600bfbSopenharmony_ci    "hilog:libhilog",
5100600bfbSopenharmony_ci    "hiview:libucollection_utility",
5200600bfbSopenharmony_ci    "ipc:ipc_core",
5300600bfbSopenharmony_ci    "safwk:system_ability_fwk",
5400600bfbSopenharmony_ci    "samgr:samgr_proxy",
5500600bfbSopenharmony_ci  ]
5600600bfbSopenharmony_ci  version_script = "libdumpusage.map"
5700600bfbSopenharmony_ci  subsystem_name = "hiviewdfx"
5800600bfbSopenharmony_ci  innerapi_tags = [ "platformsdk" ]
5900600bfbSopenharmony_ci  part_name = "hidumper"
6000600bfbSopenharmony_ci}
61