# Copyright (c) 2023 Huawei Device Co., Ltd. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import("//base/security/security_guard/security_guard.gni") import("//build/ohos.gni") ohos_shared_library("security_collector_service") { subsystem_name = "security" part_name = "security_guard" include_dirs = [ "${sg_root_dir}/frameworks/common/interfaces", "${sg_root_dir}/interfaces/inner_api/collector/include", "${sg_root_dir}/services/security_collector/include", "${sg_root_dir}/frameworks/common/log/include", "${sg_root_dir}/frameworks/common/constants/include", "${sg_root_dir}/frameworks/common/task_handler/include", "${sg_root_dir}/frameworks/common/json/include", "${sg_root_dir}/frameworks/common/utils/include", ] sources = [ "${sg_root_dir}/frameworks/common/json/src/json_cfg.cpp", "${sg_root_dir}/frameworks/common/utils/src/security_guard_utils.cpp", "${sg_root_dir}/interfaces/inner_api/collector/src/security_collector_subscribe_info.cpp", "${sg_root_dir}/services/security_collector/src/collector_cfg_marshalling.cpp", "${sg_root_dir}/services/security_collector/src/data_collection.cpp", "${sg_root_dir}/services/security_collector/src/lib_loader.cpp", "${sg_root_dir}/services/security_collector/src/security_collector_manager_callback_proxy.cpp", "${sg_root_dir}/services/security_collector/src/security_collector_manager_service.cpp", "${sg_root_dir}/services/security_collector/src/security_collector_manager_stub.cpp", "${sg_root_dir}/services/security_collector/src/security_collector_run_manager.cpp", "${sg_root_dir}/services/security_collector/src/security_collector_subscriber_manager.cpp", ] sanitize = { integer_overflow = true ubsan = true boundary_sanitize = true cfi = true cfi_cross_dso = true debug = false } stack_protector_ret = true deps = [ "${sg_root_dir}/frameworks/common/task_handler:sg_task_stamp", "${sg_root_dir}/interfaces/inner_api/collect:libsg_collect_sdk", "${sg_root_dir}/interfaces/inner_api/collector:libsg_collector_sdk", ] external_deps = [ "access_token:libaccesstoken_sdk", "access_token:libtokenid_sdk", "c_utils:utils", "hilog:libhilog", "hisysevent:libhisysevent", "hisysevent:libhisyseventmanager", "ipc:ipc_core", "json:nlohmann_json_static", "os_account:os_account_innerkits", "preferences:native_preferences", "relational_store:native_rdb", "safwk:system_ability_fwk", "samgr:samgr_proxy", ] }