1020a203aSopenharmony_ci# Copyright (c) 2022-2024 Huawei Device Co., Ltd. 2020a203aSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 3020a203aSopenharmony_ci# you may not use this file except in compliance with the License. 4020a203aSopenharmony_ci# You may obtain a copy of the License at 5020a203aSopenharmony_ci# 6020a203aSopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 7020a203aSopenharmony_ci# 8020a203aSopenharmony_ci# Unless required by applicable law or agreed to in writing, software 9020a203aSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 10020a203aSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11020a203aSopenharmony_ci# See the License for the specific language governing permissions and 12020a203aSopenharmony_ci# limitations under the License. 13020a203aSopenharmony_ciimport("//base/hiviewdfx/hiview/hiview.gni") 14020a203aSopenharmony_ciimport("//build/ohos.gni") 15020a203aSopenharmony_ci 16020a203aSopenharmony_ciconfig("usage_report_config") { 17020a203aSopenharmony_ci visibility = [ "*:*" ] 18020a203aSopenharmony_ci include_dirs = [ 19020a203aSopenharmony_ci "../cache/include", 20020a203aSopenharmony_ci "../event/include", 21020a203aSopenharmony_ci "../include", 22020a203aSopenharmony_ci "factory/include", 23020a203aSopenharmony_ci "include", 24020a203aSopenharmony_ci ] 25020a203aSopenharmony_ci} 26020a203aSopenharmony_ci 27020a203aSopenharmony_ciohos_executable("usage_report") { 28020a203aSopenharmony_ci branch_protector_ret = "pac_ret" 29020a203aSopenharmony_ci sanitize = { 30020a203aSopenharmony_ci cfi = true 31020a203aSopenharmony_ci cfi_cross_dso = true 32020a203aSopenharmony_ci cfi_vcall_icall_only = true 33020a203aSopenharmony_ci debug = false 34020a203aSopenharmony_ci } 35020a203aSopenharmony_ci configs = [ ":usage_report_config" ] 36020a203aSopenharmony_ci 37020a203aSopenharmony_ci sources = [ 38020a203aSopenharmony_ci "../cache/event_db_helper.cpp", 39020a203aSopenharmony_ci "../cache/json_parser.cpp", 40020a203aSopenharmony_ci "../cache/usage_event_cacher.cpp", 41020a203aSopenharmony_ci "../event/app_usage_event.cpp", 42020a203aSopenharmony_ci "../event/sys_usage_event.cpp", 43020a203aSopenharmony_ci "factory/app_usage_event_factory.cpp", 44020a203aSopenharmony_ci "factory/sys_usage_event_factory.cpp", 45020a203aSopenharmony_ci "main.cpp", 46020a203aSopenharmony_ci "usage_event_report_service.cpp", 47020a203aSopenharmony_ci ] 48020a203aSopenharmony_ci 49020a203aSopenharmony_ci deps = [ "$hiview_base:hiviewbase" ] 50020a203aSopenharmony_ci 51020a203aSopenharmony_ci external_deps = [ 52020a203aSopenharmony_ci "ability_runtime:wantagent_innerkits", 53020a203aSopenharmony_ci "bundle_framework:appexecfwk_base", 54020a203aSopenharmony_ci "bundle_framework:appexecfwk_core", 55020a203aSopenharmony_ci "c_utils:utils", 56020a203aSopenharmony_ci "hilog:libhilog", 57020a203aSopenharmony_ci "hisysevent:libhisysevent", 58020a203aSopenharmony_ci "ipc:ipc_single", 59020a203aSopenharmony_ci "jsoncpp:jsoncpp", 60020a203aSopenharmony_ci "os_account:os_account_innerkits", 61020a203aSopenharmony_ci "relational_store:native_rdb", 62020a203aSopenharmony_ci "time_service:time_client", 63020a203aSopenharmony_ci ] 64020a203aSopenharmony_ci 65020a203aSopenharmony_ci defines = [] 66020a203aSopenharmony_ci if (device_usage_statistics_enable) { 67020a203aSopenharmony_ci external_deps += [ "device_usage_statistics:usagestatsinner" ] 68020a203aSopenharmony_ci defines += [ "DEVICE_USAGE_STATISTICS_ENABLE" ] 69020a203aSopenharmony_ci } 70020a203aSopenharmony_ci 71020a203aSopenharmony_ci part_name = "hiview" 72020a203aSopenharmony_ci subsystem_name = "hiviewdfx" 73020a203aSopenharmony_ci} 74