1# Copyright (c) 2022-2024 Huawei Device Co., Ltd. 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("//build/test.gni") 16import("../ressched.gni") 17 18config("ressched_config") { 19 include_dirs = [ 20 "${ressched_common}/include", 21 "resschedmgr/resschedfwk/include", 22 "resschedmgr/pluginbase/include", 23 ] 24} 25 26config("resschedsvc_public_config") { 27 include_dirs = [ 28 "${ressched_common}/include", 29 "resschedmgr/resschedfwk/include", 30 "resschedmgr/pluginbase/include", 31 ] 32} 33 34config("resschedsvc_private_config") { 35 include_dirs = [ 36 "resschedservice/include", 37 "../scene_recognize/include", 38 "../sched_controller/common_event/include", 39 "../sched_controller/observer/include", 40 ] 41} 42 43ohos_shared_library("resschedsvc") { 44 configs = [ ":resschedsvc_private_config" ] 45 46 public_configs = [ ":resschedsvc_public_config" ] 47 48 defines = [] 49 include_dirs = [ "../common/include" ] 50 51 sources = [ 52 "../scene_recognize/src/background_sensitive_task_overlapping_scene_recognizer.cpp", 53 "../scene_recognize/src/continuous_app_install_recognizer.cpp", 54 "../scene_recognize/src/scene_recognizer_mgr.cpp", 55 "../scene_recognize/src/slide_recognizer.cpp", 56 "../scene_recognize/src/system_upgrade_scene_recognizer.cpp", 57 "../sched_controller/common_event/src/event_controller.cpp", 58 "../sched_controller/observer/src/account_observer.cpp", 59 "../sched_controller/observer/src/audio_observer.cpp", 60 "../sched_controller/observer/src/connection_subscriber.cpp", 61 "../sched_controller/observer/src/download_upload_observer.cpp", 62 "../sched_controller/observer/src/fold_display_mode_observer.cpp", 63 "../sched_controller/observer/src/hisysevent_observer.cpp", 64 "../sched_controller/observer/src/mmi_observer.cpp", 65 "../sched_controller/observer/src/observer_manager.cpp", 66 "resschedmgr/resschedfwk/src/config_reader.cpp", 67 "resschedmgr/resschedfwk/src/event_listener_mgr.cpp", 68 "resschedmgr/resschedfwk/src/kill_process.cpp", 69 "resschedmgr/resschedfwk/src/notifier_mgr.cpp", 70 "resschedmgr/resschedfwk/src/plugin_mgr.cpp", 71 "resschedmgr/resschedfwk/src/plugin_switch.cpp", 72 "resschedmgr/resschedfwk/src/res_sched_mgr.cpp", 73 "resschedservice/src/res_sched_service.cpp", 74 "resschedservice/src/res_sched_service_ability.cpp", 75 "resschedservice/src/res_sched_service_stub.cpp", 76 ] 77 78 deps = [ 79 "${ressched_interfaces}/innerkits/ressched_client:ressched_client", 80 "${resschedexe_interfaces}/innerkits/ressched_executor_client:resschedexe_client", 81 "../common:ressched_common_utils", 82 ] 83 84 external_deps = [ 85 "ability_base:want", 86 "ability_runtime:ability_manager", 87 "ability_runtime:app_manager", 88 "ability_runtime:connection_obs_manager", 89 "ability_runtime:wantagent_innerkits", 90 "access_token:libaccesstoken_sdk", 91 "access_token:libtokenid_sdk", 92 "background_task_mgr:bgtaskmgr_innerkits", 93 "bundle_framework:appexecfwk_base", 94 "bundle_framework:appexecfwk_core", 95 "c_utils:utils", 96 "common_event_service:cesfwk_innerkits", 97 "config_policy:configpolicy_util", 98 "eventhandler:libeventhandler", 99 "ffrt:libffrt", 100 "hilog:libhilog", 101 "hisysevent:libhisysevent", 102 "hisysevent:libhisyseventmanager", 103 "hitrace:hitrace_meter", 104 "init:libbegetutil", 105 "input:libmmi-client", 106 "ipc:ipc_single", 107 "libxml2:libxml2", 108 "os_account:os_account_innerkits", 109 "safwk:system_ability_fwk", 110 "samgr:samgr_proxy", 111 "window_manager:libdm", 112 "window_manager:libwm_lite", 113 ] 114 115 public_external_deps = [ "json:nlohmann_json_static" ] 116 117 if (device_movement_perception_enable) { 118 defines += [ "DEVICE_MOVEMENT_PERCEPTION_ENABLE" ] 119 external_deps += [ "movement:movement_client" ] 120 sources += 121 [ "../sched_controller/observer/src/device_movement_observer.cpp" ] 122 } 123 if (ressched_with_telephony_state_registry_enable) { 124 defines += [ "RESSCHED_TELEPHONY_STATE_REGISTRY_ENABLE" ] 125 external_deps += [ 126 "core_service:tel_core_service_api", 127 "state_registry:tel_state_registry_api", 128 ] 129 sources += 130 [ "../sched_controller/observer/src/sched_telephony_observer.cpp" ] 131 } 132 if (communication_bluetooth_perception_enable) { 133 defines += [ "RESSCHED_COMMUNICATION_BLUETOOTH_ENABLE" ] 134 external_deps += [ "bluetooth:btframework" ] 135 } 136 if (ressched_with_resourceschedule_multimedia_av_session_enable) { 137 defines += [ "RESSCHED_MULTIMEDIA_AV_SESSION_ENABLE" ] 138 sources += 139 [ "../sched_controller/observer/src/av_session_state_listener.cpp" ] 140 external_deps += [ "av_session:avsession_client" ] 141 } 142 if (ressched_with_resourceschedule_multimedia_audio_framework_enable) { 143 defines += [ "RESSCHED_AUDIO_FRAMEWORK_ENABLE" ] 144 external_deps += [ "audio_framework:audio_client" ] 145 } 146 if (resource_schedule_service_with_ffrt_enable) { 147 defines += [ "RESOURCE_SCHEDULE_SERVICE_WITH_FFRT_ENABLE" ] 148 } 149 if (resource_schedule_service_with_ext_res_enable) { 150 defines += [ "RESOURCE_SCHEDULE_SERVICE_WITH_EXT_RES_ENABLE" ] 151 } 152 if (rss_request_enable) { 153 defines += [ "RESOURCE_REQUEST_REQUEST" ] 154 external_deps += [ "request:request_native" ] 155 } 156 external_deps += [ "data_share:datashare_consumer" ] 157 158 version_script = "libresschedsvc.versionscript" 159 shlib_type = "sa" 160 subsystem_name = "resourceschedule" 161 part_name = "resource_schedule_service" 162 branch_protector_ret = "pac_ret" 163 164 sanitize = { 165 cfi = true 166 cfi_cross_dso = true 167 debug = false 168 } 169} 170 171# for unittest 172ohos_static_library("resschedsvc_static") { 173 configs = [] 174 175 public_configs = [ 176 ":resschedsvc_private_config", 177 ":resschedsvc_public_config", 178 ] 179 180 defines = [] 181 182 include_dirs = [ "../common/include" ] 183 184 sources = [ 185 "../scene_recognize/src/background_sensitive_task_overlapping_scene_recognizer.cpp", 186 "../scene_recognize/src/continuous_app_install_recognizer.cpp", 187 "../scene_recognize/src/scene_recognizer_mgr.cpp", 188 "../scene_recognize/src/slide_recognizer.cpp", 189 "../scene_recognize/src/system_upgrade_scene_recognizer.cpp", 190 "../sched_controller/common_event/src/event_controller.cpp", 191 "../sched_controller/observer/src/account_observer.cpp", 192 "../sched_controller/observer/src/audio_observer.cpp", 193 "../sched_controller/observer/src/connection_subscriber.cpp", 194 "../sched_controller/observer/src/download_upload_observer.cpp", 195 "../sched_controller/observer/src/fold_display_mode_observer.cpp", 196 "../sched_controller/observer/src/hisysevent_observer.cpp", 197 "../sched_controller/observer/src/mmi_observer.cpp", 198 "../sched_controller/observer/src/observer_manager.cpp", 199 "resschedmgr/resschedfwk/src/config_reader.cpp", 200 "resschedmgr/resschedfwk/src/event_listener_mgr.cpp", 201 "resschedmgr/resschedfwk/src/kill_process.cpp", 202 "resschedmgr/resschedfwk/src/notifier_mgr.cpp", 203 "resschedmgr/resschedfwk/src/plugin_mgr.cpp", 204 "resschedmgr/resschedfwk/src/plugin_switch.cpp", 205 "resschedmgr/resschedfwk/src/res_sched_mgr.cpp", 206 "resschedservice/src/res_sched_service.cpp", 207 "resschedservice/src/res_sched_service_ability.cpp", 208 "resschedservice/src/res_sched_service_stub.cpp", 209 ] 210 211 deps = [ 212 "${ressched_interfaces}/innerkits/ressched_client:ressched_client", 213 "${resschedexe_interfaces}/innerkits/ressched_executor_client:resschedexe_client", 214 "../common:ressched_common_utils", 215 ] 216 217 external_deps = [ 218 "ability_base:want", 219 "ability_runtime:app_manager", 220 "ability_runtime:connection_obs_manager", 221 "ability_runtime:dataobs_manager", 222 "ability_runtime:wantagent_innerkits", 223 "access_token:libaccesstoken_sdk", 224 "access_token:libtokenid_sdk", 225 "background_task_mgr:bgtaskmgr_innerkits", 226 "bundle_framework:appexecfwk_base", 227 "bundle_framework:appexecfwk_core", 228 "c_utils:utils", 229 "common_event_service:cesfwk_innerkits", 230 "config_policy:configpolicy_util", 231 "eventhandler:libeventhandler", 232 "ffrt:libffrt", 233 "hilog:libhilog", 234 "hisysevent:libhisysevent", 235 "hisysevent:libhisyseventmanager", 236 "hitrace:hitrace_meter", 237 "init:libbegetutil", 238 "input:libmmi-client", 239 "ipc:ipc_single", 240 "jsoncpp:jsoncpp", 241 "libxml2:libxml2", 242 "os_account:os_account_innerkits", 243 "safwk:system_ability_fwk", 244 "samgr:samgr_proxy", 245 "window_manager:libdm", 246 "window_manager:libwm_lite", 247 ] 248 249 if (device_movement_perception_enable) { 250 defines += [ "DEVICE_MOVEMENT_PERCEPTION_ENABLE" ] 251 external_deps += [ "movement:movement_client" ] 252 sources += 253 [ "../sched_controller/observer/src/device_movement_observer.cpp" ] 254 } 255 if (ressched_with_telephony_state_registry_enable) { 256 defines += [ "RESSCHED_TELEPHONY_STATE_REGISTRY_ENABLE" ] 257 external_deps += [ 258 "core_service:tel_core_service_api", 259 "state_registry:tel_state_registry_api", 260 ] 261 sources += 262 [ "../sched_controller/observer/src/sched_telephony_observer.cpp" ] 263 } 264 if (communication_bluetooth_perception_enable) { 265 defines += [ "RESSCHED_COMMUNICATION_BLUETOOTH_ENABLE" ] 266 external_deps += [ "bluetooth:btframework" ] 267 } 268 if (ressched_with_resourceschedule_multimedia_av_session_enable) { 269 defines += [ "RESSCHED_MULTIMEDIA_AV_SESSION_ENABLE" ] 270 sources += 271 [ "../sched_controller/observer/src/av_session_state_listener.cpp" ] 272 external_deps += [ "av_session:avsession_client" ] 273 } 274 if (ressched_with_resourceschedule_multimedia_audio_framework_enable) { 275 defines += [ "RESSCHED_AUDIO_FRAMEWORK_ENABLE" ] 276 external_deps += [ "audio_framework:audio_client" ] 277 } 278 if (resource_schedule_service_with_ext_res_enable) { 279 defines += [ "RESOURCE_SCHEDULE_SERVICE_WITH_EXT_RES_ENABLE" ] 280 } 281 if (rss_request_enable) { 282 defines += [ "RESOURCE_REQUEST_REQUEST" ] 283 external_deps += [ "request:request_native" ] 284 } 285 if (resource_schedule_service_with_ffrt_enable) { 286 defines += [ "RESOURCE_SCHEDULE_SERVICE_WITH_FFRT_ENABLE" ] 287 } 288 external_deps += [ "data_share:datashare_consumer" ] 289 290 subsystem_name = "resourceschedule" 291 part_name = "resource_schedule_service" 292 branch_protector_ret = "pac_ret" 293 294 sanitize = { 295 cfi = true 296 cfi_cross_dso = true 297 debug = false 298 } 299} 300