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("//build/ohos.gni")
1599552fe9Sopenharmony_ciimport("//foundation/resourceschedule/device_standby/standby_service.gni")
1699552fe9Sopenharmony_ci
1799552fe9Sopenharmony_ciconfig("standby_service_public_config") {
1899552fe9Sopenharmony_ci  include_dirs = [
1999552fe9Sopenharmony_ci    "common/include",
2099552fe9Sopenharmony_ci    "core/include",
2199552fe9Sopenharmony_ci    "notification/include",
2299552fe9Sopenharmony_ci    "${standby_plugins_path}/ext/include",
2399552fe9Sopenharmony_ci  ]
2499552fe9Sopenharmony_ci}
2599552fe9Sopenharmony_ci
2699552fe9Sopenharmony_ciohos_shared_library("standby_service") {
2799552fe9Sopenharmony_ci  branch_protector_ret = "pac_ret"
2899552fe9Sopenharmony_ci  sanitize = {
2999552fe9Sopenharmony_ci    cfi = true
3099552fe9Sopenharmony_ci    cfi_cross_dso = true
3199552fe9Sopenharmony_ci    debug = false
3299552fe9Sopenharmony_ci  }
3399552fe9Sopenharmony_ci  if (!use_clang_coverage) {
3499552fe9Sopenharmony_ci    shlib_type = "sa"
3599552fe9Sopenharmony_ci  }
3699552fe9Sopenharmony_ci
3799552fe9Sopenharmony_ci  sources = [
3899552fe9Sopenharmony_ci    "common/src/device_standby_switch.cpp",
3999552fe9Sopenharmony_ci    "common/src/time_provider.cpp",
4099552fe9Sopenharmony_ci    "common/src/timed_task.cpp",
4199552fe9Sopenharmony_ci    "core/src/ability_manager_helper.cpp",
4299552fe9Sopenharmony_ci    "core/src/allow_record.cpp",
4399552fe9Sopenharmony_ci    "core/src/app_mgr_helper.cpp",
4499552fe9Sopenharmony_ci    "core/src/app_state_observer.cpp",
4599552fe9Sopenharmony_ci    "core/src/bundle_manager_helper.cpp",
4699552fe9Sopenharmony_ci    "core/src/common_event_observer.cpp",
4799552fe9Sopenharmony_ci    "core/src/standby_service.cpp",
4899552fe9Sopenharmony_ci    "core/src/standby_service_impl.cpp",
4999552fe9Sopenharmony_ci    "notification/src/standby_state_subscriber.cpp",
5099552fe9Sopenharmony_ci  ]
5199552fe9Sopenharmony_ci
5299552fe9Sopenharmony_ci  public_configs = [ ":standby_service_public_config" ]
5399552fe9Sopenharmony_ci
5499552fe9Sopenharmony_ci  deps = [
5599552fe9Sopenharmony_ci    "${standby_innerkits_path}:standby_innerkits",
5699552fe9Sopenharmony_ci    "${standby_service_frameworks_path}:standby_fwk",
5799552fe9Sopenharmony_ci    "${standby_utils_common_path}:standby_utils_common",
5899552fe9Sopenharmony_ci    "${standby_utils_policy_path}:standby_utils_policy",
5999552fe9Sopenharmony_ci  ]
6099552fe9Sopenharmony_ci
6199552fe9Sopenharmony_ci  external_deps = [
6299552fe9Sopenharmony_ci    "ability_base:want",
6399552fe9Sopenharmony_ci    "ability_runtime:app_manager",
6499552fe9Sopenharmony_ci    "ability_runtime:wantagent_innerkits",
6599552fe9Sopenharmony_ci    "access_token:libaccesstoken_sdk",
6699552fe9Sopenharmony_ci    "access_token:libtokenid_sdk",
6799552fe9Sopenharmony_ci    "bundle_framework:appexecfwk_base",
6899552fe9Sopenharmony_ci    "c_utils:utils",
6999552fe9Sopenharmony_ci    "common_event_service:cesfwk_innerkits",
7099552fe9Sopenharmony_ci    "eventhandler:libeventhandler",
7199552fe9Sopenharmony_ci    "hilog:libhilog",
7299552fe9Sopenharmony_ci    "init:libbegetutil",
7399552fe9Sopenharmony_ci    "ipc:ipc_single",
7499552fe9Sopenharmony_ci    "json:nlohmann_json_static",
7599552fe9Sopenharmony_ci    "safwk:system_ability_fwk",
7699552fe9Sopenharmony_ci    "samgr:samgr_proxy",
7799552fe9Sopenharmony_ci    "time_service:time_client",
7899552fe9Sopenharmony_ci  ]
7999552fe9Sopenharmony_ci
8099552fe9Sopenharmony_ci  defines = []
8199552fe9Sopenharmony_ci  if (enable_background_task_mgr) {
8299552fe9Sopenharmony_ci    external_deps += [ "background_task_mgr:bgtaskmgr_innerkits" ]
8399552fe9Sopenharmony_ci    sources += [ "common/src/background_task_helper.cpp" ]
8499552fe9Sopenharmony_ci    defines += [ "ENABLE_BACKGROUND_TASK_MGR" ]
8599552fe9Sopenharmony_ci  }
8699552fe9Sopenharmony_ci
8799552fe9Sopenharmony_ci  if (standby_power_manager_enable) {
8899552fe9Sopenharmony_ci    external_deps += [ "power_manager:powermgr_client" ]
8999552fe9Sopenharmony_ci    defines += [ "STANDBY_POWER_MANAGER_ENABLE" ]
9099552fe9Sopenharmony_ci  }
9199552fe9Sopenharmony_ci
9299552fe9Sopenharmony_ci  subsystem_name = "resourceschedule"
9399552fe9Sopenharmony_ci  part_name = "${standby_service_part_name}"
9499552fe9Sopenharmony_ci
9599552fe9Sopenharmony_ci  version_script = "libstandby_service.versionscript"
9699552fe9Sopenharmony_ci}
9799552fe9Sopenharmony_ci
9899552fe9Sopenharmony_ciohos_static_library("standby_service_static") {
9999552fe9Sopenharmony_ci  branch_protector_ret = "pac_ret"
10099552fe9Sopenharmony_ci  sanitize = {
10199552fe9Sopenharmony_ci    cfi = true
10299552fe9Sopenharmony_ci    cfi_cross_dso = true
10399552fe9Sopenharmony_ci    debug = false
10499552fe9Sopenharmony_ci  }
10599552fe9Sopenharmony_ci  cflags_cc = [ "-DSTANDBY_SERVICE_UNIT_TEST" ]
10699552fe9Sopenharmony_ci  sources = [
10799552fe9Sopenharmony_ci    "common/src/device_standby_switch.cpp",
10899552fe9Sopenharmony_ci    "common/src/time_provider.cpp",
10999552fe9Sopenharmony_ci    "common/src/timed_task.cpp",
11099552fe9Sopenharmony_ci    "core/src/ability_manager_helper.cpp",
11199552fe9Sopenharmony_ci    "core/src/allow_record.cpp",
11299552fe9Sopenharmony_ci    "core/src/app_mgr_helper.cpp",
11399552fe9Sopenharmony_ci    "core/src/app_state_observer.cpp",
11499552fe9Sopenharmony_ci    "core/src/bundle_manager_helper.cpp",
11599552fe9Sopenharmony_ci    "core/src/common_event_observer.cpp",
11699552fe9Sopenharmony_ci    "core/src/standby_service.cpp",
11799552fe9Sopenharmony_ci    "core/src/standby_service_impl.cpp",
11899552fe9Sopenharmony_ci    "notification/src/standby_state_subscriber.cpp",
11999552fe9Sopenharmony_ci  ]
12099552fe9Sopenharmony_ci
12199552fe9Sopenharmony_ci  public_configs = [ ":standby_service_public_config" ]
12299552fe9Sopenharmony_ci
12399552fe9Sopenharmony_ci  deps = [
12499552fe9Sopenharmony_ci    "${standby_innerkits_path}:standby_innerkits",
12599552fe9Sopenharmony_ci    "${standby_service_frameworks_path}:standby_fwk",
12699552fe9Sopenharmony_ci    "${standby_utils_common_path}:standby_utils_common",
12799552fe9Sopenharmony_ci    "${standby_utils_policy_path}:standby_utils_policy",
12899552fe9Sopenharmony_ci  ]
12999552fe9Sopenharmony_ci
13099552fe9Sopenharmony_ci  external_deps = [
13199552fe9Sopenharmony_ci    "ability_base:want",
13299552fe9Sopenharmony_ci    "ability_runtime:app_manager",
13399552fe9Sopenharmony_ci    "ability_runtime:wantagent_innerkits",
13499552fe9Sopenharmony_ci    "access_token:libaccesstoken_sdk",
13599552fe9Sopenharmony_ci    "access_token:libtokenid_sdk",
13699552fe9Sopenharmony_ci    "bundle_framework:appexecfwk_base",
13799552fe9Sopenharmony_ci    "c_utils:utils",
13899552fe9Sopenharmony_ci    "common_event_service:cesfwk_innerkits",
13999552fe9Sopenharmony_ci    "eventhandler:libeventhandler",
14099552fe9Sopenharmony_ci    "hilog:libhilog",
14199552fe9Sopenharmony_ci    "init:libbegetutil",
14299552fe9Sopenharmony_ci    "ipc:ipc_single",
14399552fe9Sopenharmony_ci    "json:nlohmann_json_static",
14499552fe9Sopenharmony_ci    "safwk:system_ability_fwk",
14599552fe9Sopenharmony_ci    "samgr:samgr_proxy",
14699552fe9Sopenharmony_ci    "time_service:time_client",
14799552fe9Sopenharmony_ci  ]
14899552fe9Sopenharmony_ci
14999552fe9Sopenharmony_ci  defines = []
15099552fe9Sopenharmony_ci  if (enable_background_task_mgr) {
15199552fe9Sopenharmony_ci    external_deps += [ "background_task_mgr:bgtaskmgr_innerkits" ]
15299552fe9Sopenharmony_ci    sources += [ "common/src/background_task_helper.cpp" ]
15399552fe9Sopenharmony_ci    defines += [ "ENABLE_BACKGROUND_TASK_MGR" ]
15499552fe9Sopenharmony_ci  }
15599552fe9Sopenharmony_ci
15699552fe9Sopenharmony_ci  if (standby_power_manager_enable) {
15799552fe9Sopenharmony_ci    external_deps += [ "power_manager:powermgr_client" ]
15899552fe9Sopenharmony_ci    defines += [ "STANDBY_POWER_MANAGER_ENABLE" ]
15999552fe9Sopenharmony_ci  }
16099552fe9Sopenharmony_ci
16199552fe9Sopenharmony_ci  subsystem_name = "resourceschedule"
16299552fe9Sopenharmony_ci  part_name = "${standby_service_part_name}"
16399552fe9Sopenharmony_ci}
164