1# Copyright (c) Huawei Technologies Co., Ltd. 2021. All rights reserved. 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("//build/ohos.gni") 15import("../../base/config.gni") 16 17ohos_source_set("memdataplugin_source") { 18 part_name = "${OHOS_PROFILER_PART_NAME}" 19 subsystem_name = "${OHOS_PROFILER_SUBSYS_NAME}" 20 sources = [ 21 "src/buffer_splitter.cpp", 22 "src/memory_data_plugin.cpp", 23 "src/memory_module.cpp", 24 "src/smaps_stats.cpp", 25 ] 26 include_dirs = [ 27 "include", 28 "../api/include", 29 "${OHOS_PROFILER_DIR}/interfaces/kits", 30 "${OHOS_PROFILER_DIR}/device/base/include", 31 "//third_party/bounds_checking_function/include", 32 ] 33 deps = [ 34 "${OHOS_PROFILER_3RDPARTY_PROTOBUF_DIR}:protobuf_lite", 35 "${OHOS_PROFILER_DIR}/proto_encoder:proto_encoder_source", 36 "${OHOS_PROFILER_DIR}/protos/types/plugins/memory_data:memory_data_cpp", 37 "${OHOS_PROFILER_DIR}/protos/types/plugins/memory_data:memory_data_encoder", 38 "//third_party/bounds_checking_function:libsec_static", 39 ] 40 if (current_toolchain != host_toolchain) { 41 defines = [ "HAVE_HILOG" ] 42 external_deps = [ 43 "c_utils:utils", 44 "drivers_interface_memorytracker:libmemorytracker_proxy_1.0", 45 "graphic_2d:librender_service_client", 46 "hidumper:lib_dump_usage", 47 "hilog:libhilog", 48 ] 49 } 50 public_configs = [ "${OHOS_PROFILER_DIR}/device/base:hiprofiler_test_config" ] 51} 52 53ohos_shared_library("memdataplugin") { 54 output_name = "memdataplugin" 55 56 deps = [ ":memdataplugin_source" ] 57 if (current_toolchain != host_toolchain) { 58 defines = [ "HAVE_HILOG" ] 59 external_deps = [ 60 "c_utils:utils", 61 "drivers_interface_memorytracker:libmemorytracker_proxy_1.0", 62 "graphic_2d:librender_service_client", 63 "hilog:libhilog", 64 ] 65 } 66 install_enable = true 67 subsystem_name = "${OHOS_PROFILER_SUBSYS_NAME}" 68 part_name = "${OHOS_PROFILER_PART_NAME}" 69} 70 71ohos_executable("memorytest") { 72 output_name = "memorytest" 73 sources = [ "src/test_main.cpp" ] 74 75 include_dirs = [ 76 "${OHOS_PROFILER_DIR}/device/base/include", 77 "//third_party/bounds_checking_function/include", 78 ] 79 80 deps = [ "//third_party/bounds_checking_function:libsec_static" ] 81 82 if (current_toolchain != host_toolchain) { 83 defines = [ "HAVE_HILOG" ] 84 external_deps = [ "hilog:libhilog" ] 85 } 86 install_enable = false 87 subsystem_name = "${OHOS_PROFILER_SUBSYS_NAME}" 88 part_name = "${OHOS_PROFILER_PART_NAME}" 89} 90