199552fe9Sopenharmony_ci# Copyright (c) 2023 Huawei Device Co., Ltd. 299552fe9Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 399552fe9Sopenharmony_ci# you may not use this file except in compliance with the License. 499552fe9Sopenharmony_ci# You may obtain a copy of the License at 599552fe9Sopenharmony_ci# 699552fe9Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 799552fe9Sopenharmony_ci# 899552fe9Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software 999552fe9Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 1099552fe9Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1199552fe9Sopenharmony_ci# See the License for the specific language governing permissions and 1299552fe9Sopenharmony_ci# limitations under the License. 1399552fe9Sopenharmony_ci 1499552fe9Sopenharmony_ciimport("//foundation/resourceschedule/device_standby/standby_service.gni") 1599552fe9Sopenharmony_ci 1699552fe9Sopenharmony_ciconfig("standby_utils_policy_config") { 1799552fe9Sopenharmony_ci include_dirs = [ "include" ] 1899552fe9Sopenharmony_ci} 1999552fe9Sopenharmony_ci 2099552fe9Sopenharmony_ciStandbyUtilsPolicy = [ 2199552fe9Sopenharmony_ci "src/json_utils.cpp", 2299552fe9Sopenharmony_ci "src/standby_config_manager.cpp", 2399552fe9Sopenharmony_ci] 2499552fe9Sopenharmony_ci 2599552fe9Sopenharmony_ciStandbyUtilsPolicyExternalDeps = [ 2699552fe9Sopenharmony_ci "c_utils:utils", 2799552fe9Sopenharmony_ci "hilog:libhilog", 2899552fe9Sopenharmony_ci "ipc:ipc_single", 2999552fe9Sopenharmony_ci "json:nlohmann_json_static", 3099552fe9Sopenharmony_ci] 3199552fe9Sopenharmony_ci 3299552fe9Sopenharmony_ciohos_shared_library("standby_utils_policy") { 3399552fe9Sopenharmony_ci branch_protector_ret = "pac_ret" 3499552fe9Sopenharmony_ci sanitize = { 3599552fe9Sopenharmony_ci cfi = true 3699552fe9Sopenharmony_ci cfi_cross_dso = true 3799552fe9Sopenharmony_ci debug = false 3899552fe9Sopenharmony_ci } 3999552fe9Sopenharmony_ci sources = StandbyUtilsPolicy 4099552fe9Sopenharmony_ci 4199552fe9Sopenharmony_ci public_configs = [ ":standby_utils_policy_config" ] 4299552fe9Sopenharmony_ci 4399552fe9Sopenharmony_ci deps = [ "${standby_utils_common_path}:standby_utils_common" ] 4499552fe9Sopenharmony_ci 4599552fe9Sopenharmony_ci external_deps = StandbyUtilsPolicyExternalDeps 4699552fe9Sopenharmony_ci 4799552fe9Sopenharmony_ci defines = [] 4899552fe9Sopenharmony_ci if (enable_standby_configpolicy) { 4999552fe9Sopenharmony_ci external_deps += [ "config_policy:configpolicy_util" ] 5099552fe9Sopenharmony_ci defines += [ "STANDBY_CONFIG_POLICY_ENABLE" ] 5199552fe9Sopenharmony_ci } 5299552fe9Sopenharmony_ci 5399552fe9Sopenharmony_ci subsystem_name = "resourceschedule" 5499552fe9Sopenharmony_ci part_name = "${standby_service_part_name}" 5599552fe9Sopenharmony_ci version_script = "libstandby_utils_policy.versionscript" 5699552fe9Sopenharmony_ci} 5799552fe9Sopenharmony_ci 5899552fe9Sopenharmony_ciohos_static_library("standby_utils_policy_static") { 5999552fe9Sopenharmony_ci branch_protector_ret = "pac_ret" 6099552fe9Sopenharmony_ci sanitize = { 6199552fe9Sopenharmony_ci cfi = true 6299552fe9Sopenharmony_ci cfi_cross_dso = true 6399552fe9Sopenharmony_ci debug = false 6499552fe9Sopenharmony_ci } 6599552fe9Sopenharmony_ci sources = StandbyUtilsPolicy 6699552fe9Sopenharmony_ci 6799552fe9Sopenharmony_ci public_configs = [ ":standby_utils_policy_config" ] 6899552fe9Sopenharmony_ci 6999552fe9Sopenharmony_ci deps = [ "${standby_utils_common_path}:standby_utils_common" ] 7099552fe9Sopenharmony_ci 7199552fe9Sopenharmony_ci external_deps = StandbyUtilsPolicyExternalDeps 7299552fe9Sopenharmony_ci 7399552fe9Sopenharmony_ci defines = [] 7499552fe9Sopenharmony_ci if (enable_standby_configpolicy) { 7599552fe9Sopenharmony_ci external_deps += [ "config_policy:configpolicy_util" ] 7699552fe9Sopenharmony_ci defines += [ "STANDBY_CONFIG_POLICY_ENABLE" ] 7799552fe9Sopenharmony_ci } 7899552fe9Sopenharmony_ci 7999552fe9Sopenharmony_ci subsystem_name = "resourceschedule" 8099552fe9Sopenharmony_ci part_name = "${standby_service_part_name}" 8199552fe9Sopenharmony_ci} 8299552fe9Sopenharmony_ci 8399552fe9Sopenharmony_ciohos_prebuilt_etc("stancby_service_policy_config_device_standby") { 8499552fe9Sopenharmony_ci source = "configs/device_standby_config.json" 8599552fe9Sopenharmony_ci install_enable = true 8699552fe9Sopenharmony_ci subsystem_name = "resourceschedule" 8799552fe9Sopenharmony_ci part_name = "${standby_service_part_name}" 8899552fe9Sopenharmony_ci module_install_dir = "etc/standby_service" 8999552fe9Sopenharmony_ci} 9099552fe9Sopenharmony_ci 9199552fe9Sopenharmony_ciohos_prebuilt_etc("stancby_service_policy_config_resource_config") { 9299552fe9Sopenharmony_ci source = "configs/standby_strategy_config.json" 9399552fe9Sopenharmony_ci install_enable = true 9499552fe9Sopenharmony_ci subsystem_name = "resourceschedule" 9599552fe9Sopenharmony_ci part_name = "${standby_service_part_name}" 9699552fe9Sopenharmony_ci module_install_dir = "etc/standby_service" 9799552fe9Sopenharmony_ci} 9899552fe9Sopenharmony_ci 9999552fe9Sopenharmony_cigroup("standby_service_config") { 10099552fe9Sopenharmony_ci deps = [ 10199552fe9Sopenharmony_ci ":stancby_service_policy_config_device_standby", 10299552fe9Sopenharmony_ci ":stancby_service_policy_config_resource_config", 10399552fe9Sopenharmony_ci ] 10499552fe9Sopenharmony_ci} 105