1# Copyright (c) 2024 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/ets_runtime/js_runtime_config.gni") 15 16ohos_shared_library("profDumpJson") { 17 deps = [ ":profDumpJsonStatic" ] 18 part_name = "ets_runtime" 19 subsystem_name = "arkcompiler" 20} 21 22ohos_static_library("profDumpJsonStatic") { 23 if (is_ohos && is_standard_system && current_toolchain != host_toolchain && 24 !ark_standalone_build) { 25 sanitize = { 26 ubsan = true 27 } 28 } 29 sources = [ "src/prof_dump_json.cpp" ] 30 include_dirs = [ "include" ] 31 cflags = [ "-g" ] 32 if (is_mingw) { 33 defines = [ "PROF_DUMP_JSON_WINDOWS" ] 34 } 35 deps = [ 36 "$js_root:libark_js_intl_set", 37 "$js_root:libark_jsruntime_set", 38 "$js_root/ecmascript/compiler:libark_mock_stub_set", 39 ] 40 external_deps = [ 41 "cJSON:cjson_static", 42 "runtime_core:arkfile_header_deps", 43 "runtime_core:libarkbase_static", 44 "runtime_core:libarkfile_static", 45 "zlib:libz", 46 ] 47 if (target_os == "ios") { 48 deps += [ 49 "$ark_third_party_root/icu/icu4c:static_icui18n", 50 "$ark_third_party_root/icu/icu4c:static_icuuc", 51 ] 52 } else { 53 external_deps += [ 54 "icu:shared_icui18n", 55 "icu:shared_icuuc", 56 ] 57 } 58 part_name = "ets_runtime" 59 subsystem_name = "arkcompiler" 60} 61 62ohos_executable("apViewer") { 63 sources = [ "src/main.cpp" ] 64 include_dirs = [ "include" ] 65 deps = [ ":profDumpJson" ] 66 configs = [ 67 "$js_root:ark_jsruntime_common_config", 68 "$js_root:ark_jsruntime_public_config", 69 ] 70 external_deps = [ 71 "bounds_checking_function:libsec_shared", 72 "cJSON:cjson_static", 73 ] 74 75 # hiviewdfx libraries 76 external_deps += hiviewdfx_ext_deps 77 deps += hiviewdfx_deps 78 79 part_name = "ets_runtime" 80 subsystem_name = "arkcompiler" 81} 82