14dfc7d99Sopenharmony_ci# Copyright (c) 2022-2024 Huawei Device Co., Ltd. 24dfc7d99Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 34dfc7d99Sopenharmony_ci# you may not use this file except in compliance with the License. 44dfc7d99Sopenharmony_ci# You may obtain a copy of the License at 54dfc7d99Sopenharmony_ci# 64dfc7d99Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 74dfc7d99Sopenharmony_ci# 84dfc7d99Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software 94dfc7d99Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 104dfc7d99Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 114dfc7d99Sopenharmony_ci# See the License for the specific language governing permissions and 124dfc7d99Sopenharmony_ci# limitations under the License. 134dfc7d99Sopenharmony_ci 144dfc7d99Sopenharmony_ciimport("//build/ohos.gni") 154dfc7d99Sopenharmony_ciimport("//build/test.gni") 164dfc7d99Sopenharmony_ciimport("../ressched.gni") 174dfc7d99Sopenharmony_ci 184dfc7d99Sopenharmony_ciconfig("ressched_config") { 194dfc7d99Sopenharmony_ci include_dirs = [ 204dfc7d99Sopenharmony_ci "${ressched_common}/include", 214dfc7d99Sopenharmony_ci "resschedmgr/resschedfwk/include", 224dfc7d99Sopenharmony_ci "resschedmgr/pluginbase/include", 234dfc7d99Sopenharmony_ci ] 244dfc7d99Sopenharmony_ci} 254dfc7d99Sopenharmony_ci 264dfc7d99Sopenharmony_ciconfig("resschedsvc_public_config") { 274dfc7d99Sopenharmony_ci include_dirs = [ 284dfc7d99Sopenharmony_ci "${ressched_common}/include", 294dfc7d99Sopenharmony_ci "resschedmgr/resschedfwk/include", 304dfc7d99Sopenharmony_ci "resschedmgr/pluginbase/include", 314dfc7d99Sopenharmony_ci ] 324dfc7d99Sopenharmony_ci} 334dfc7d99Sopenharmony_ci 344dfc7d99Sopenharmony_ciconfig("resschedsvc_private_config") { 354dfc7d99Sopenharmony_ci include_dirs = [ 364dfc7d99Sopenharmony_ci "resschedservice/include", 374dfc7d99Sopenharmony_ci "../scene_recognize/include", 384dfc7d99Sopenharmony_ci "../sched_controller/common_event/include", 394dfc7d99Sopenharmony_ci "../sched_controller/observer/include", 404dfc7d99Sopenharmony_ci ] 414dfc7d99Sopenharmony_ci} 424dfc7d99Sopenharmony_ci 434dfc7d99Sopenharmony_ciohos_shared_library("resschedsvc") { 444dfc7d99Sopenharmony_ci configs = [ ":resschedsvc_private_config" ] 454dfc7d99Sopenharmony_ci 464dfc7d99Sopenharmony_ci public_configs = [ ":resschedsvc_public_config" ] 474dfc7d99Sopenharmony_ci 484dfc7d99Sopenharmony_ci defines = [] 494dfc7d99Sopenharmony_ci include_dirs = [ "../common/include" ] 504dfc7d99Sopenharmony_ci 514dfc7d99Sopenharmony_ci sources = [ 524dfc7d99Sopenharmony_ci "../scene_recognize/src/background_sensitive_task_overlapping_scene_recognizer.cpp", 534dfc7d99Sopenharmony_ci "../scene_recognize/src/continuous_app_install_recognizer.cpp", 544dfc7d99Sopenharmony_ci "../scene_recognize/src/scene_recognizer_mgr.cpp", 554dfc7d99Sopenharmony_ci "../scene_recognize/src/slide_recognizer.cpp", 564dfc7d99Sopenharmony_ci "../scene_recognize/src/system_upgrade_scene_recognizer.cpp", 574dfc7d99Sopenharmony_ci "../sched_controller/common_event/src/event_controller.cpp", 584dfc7d99Sopenharmony_ci "../sched_controller/observer/src/account_observer.cpp", 594dfc7d99Sopenharmony_ci "../sched_controller/observer/src/audio_observer.cpp", 604dfc7d99Sopenharmony_ci "../sched_controller/observer/src/connection_subscriber.cpp", 614dfc7d99Sopenharmony_ci "../sched_controller/observer/src/download_upload_observer.cpp", 624dfc7d99Sopenharmony_ci "../sched_controller/observer/src/fold_display_mode_observer.cpp", 634dfc7d99Sopenharmony_ci "../sched_controller/observer/src/hisysevent_observer.cpp", 644dfc7d99Sopenharmony_ci "../sched_controller/observer/src/mmi_observer.cpp", 654dfc7d99Sopenharmony_ci "../sched_controller/observer/src/observer_manager.cpp", 664dfc7d99Sopenharmony_ci "resschedmgr/resschedfwk/src/config_reader.cpp", 674dfc7d99Sopenharmony_ci "resschedmgr/resschedfwk/src/event_listener_mgr.cpp", 684dfc7d99Sopenharmony_ci "resschedmgr/resschedfwk/src/kill_process.cpp", 694dfc7d99Sopenharmony_ci "resschedmgr/resschedfwk/src/notifier_mgr.cpp", 704dfc7d99Sopenharmony_ci "resschedmgr/resschedfwk/src/plugin_mgr.cpp", 714dfc7d99Sopenharmony_ci "resschedmgr/resschedfwk/src/plugin_switch.cpp", 724dfc7d99Sopenharmony_ci "resschedmgr/resschedfwk/src/res_sched_mgr.cpp", 734dfc7d99Sopenharmony_ci "resschedservice/src/res_sched_service.cpp", 744dfc7d99Sopenharmony_ci "resschedservice/src/res_sched_service_ability.cpp", 754dfc7d99Sopenharmony_ci "resschedservice/src/res_sched_service_stub.cpp", 764dfc7d99Sopenharmony_ci ] 774dfc7d99Sopenharmony_ci 784dfc7d99Sopenharmony_ci deps = [ 794dfc7d99Sopenharmony_ci "${ressched_interfaces}/innerkits/ressched_client:ressched_client", 804dfc7d99Sopenharmony_ci "${resschedexe_interfaces}/innerkits/ressched_executor_client:resschedexe_client", 814dfc7d99Sopenharmony_ci "../common:ressched_common_utils", 824dfc7d99Sopenharmony_ci ] 834dfc7d99Sopenharmony_ci 844dfc7d99Sopenharmony_ci external_deps = [ 854dfc7d99Sopenharmony_ci "ability_base:want", 864dfc7d99Sopenharmony_ci "ability_runtime:ability_manager", 874dfc7d99Sopenharmony_ci "ability_runtime:app_manager", 884dfc7d99Sopenharmony_ci "ability_runtime:connection_obs_manager", 894dfc7d99Sopenharmony_ci "ability_runtime:wantagent_innerkits", 904dfc7d99Sopenharmony_ci "access_token:libaccesstoken_sdk", 914dfc7d99Sopenharmony_ci "access_token:libtokenid_sdk", 924dfc7d99Sopenharmony_ci "background_task_mgr:bgtaskmgr_innerkits", 934dfc7d99Sopenharmony_ci "bundle_framework:appexecfwk_base", 944dfc7d99Sopenharmony_ci "bundle_framework:appexecfwk_core", 954dfc7d99Sopenharmony_ci "c_utils:utils", 964dfc7d99Sopenharmony_ci "common_event_service:cesfwk_innerkits", 974dfc7d99Sopenharmony_ci "config_policy:configpolicy_util", 984dfc7d99Sopenharmony_ci "eventhandler:libeventhandler", 994dfc7d99Sopenharmony_ci "ffrt:libffrt", 1004dfc7d99Sopenharmony_ci "hilog:libhilog", 1014dfc7d99Sopenharmony_ci "hisysevent:libhisysevent", 1024dfc7d99Sopenharmony_ci "hisysevent:libhisyseventmanager", 1034dfc7d99Sopenharmony_ci "hitrace:hitrace_meter", 1044dfc7d99Sopenharmony_ci "init:libbegetutil", 1054dfc7d99Sopenharmony_ci "input:libmmi-client", 1064dfc7d99Sopenharmony_ci "ipc:ipc_single", 1074dfc7d99Sopenharmony_ci "libxml2:libxml2", 1084dfc7d99Sopenharmony_ci "os_account:os_account_innerkits", 1094dfc7d99Sopenharmony_ci "safwk:system_ability_fwk", 1104dfc7d99Sopenharmony_ci "samgr:samgr_proxy", 1114dfc7d99Sopenharmony_ci "window_manager:libdm", 1124dfc7d99Sopenharmony_ci "window_manager:libwm_lite", 1134dfc7d99Sopenharmony_ci ] 1144dfc7d99Sopenharmony_ci 1154dfc7d99Sopenharmony_ci public_external_deps = [ "json:nlohmann_json_static" ] 1164dfc7d99Sopenharmony_ci 1174dfc7d99Sopenharmony_ci if (device_movement_perception_enable) { 1184dfc7d99Sopenharmony_ci defines += [ "DEVICE_MOVEMENT_PERCEPTION_ENABLE" ] 1194dfc7d99Sopenharmony_ci external_deps += [ "movement:movement_client" ] 1204dfc7d99Sopenharmony_ci sources += 1214dfc7d99Sopenharmony_ci [ "../sched_controller/observer/src/device_movement_observer.cpp" ] 1224dfc7d99Sopenharmony_ci } 1234dfc7d99Sopenharmony_ci if (ressched_with_telephony_state_registry_enable) { 1244dfc7d99Sopenharmony_ci defines += [ "RESSCHED_TELEPHONY_STATE_REGISTRY_ENABLE" ] 1254dfc7d99Sopenharmony_ci external_deps += [ 1264dfc7d99Sopenharmony_ci "core_service:tel_core_service_api", 1274dfc7d99Sopenharmony_ci "state_registry:tel_state_registry_api", 1284dfc7d99Sopenharmony_ci ] 1294dfc7d99Sopenharmony_ci sources += 1304dfc7d99Sopenharmony_ci [ "../sched_controller/observer/src/sched_telephony_observer.cpp" ] 1314dfc7d99Sopenharmony_ci } 1324dfc7d99Sopenharmony_ci if (communication_bluetooth_perception_enable) { 1334dfc7d99Sopenharmony_ci defines += [ "RESSCHED_COMMUNICATION_BLUETOOTH_ENABLE" ] 1344dfc7d99Sopenharmony_ci external_deps += [ "bluetooth:btframework" ] 1354dfc7d99Sopenharmony_ci } 1364dfc7d99Sopenharmony_ci if (ressched_with_resourceschedule_multimedia_av_session_enable) { 1374dfc7d99Sopenharmony_ci defines += [ "RESSCHED_MULTIMEDIA_AV_SESSION_ENABLE" ] 1384dfc7d99Sopenharmony_ci sources += 1394dfc7d99Sopenharmony_ci [ "../sched_controller/observer/src/av_session_state_listener.cpp" ] 1404dfc7d99Sopenharmony_ci external_deps += [ "av_session:avsession_client" ] 1414dfc7d99Sopenharmony_ci } 1424dfc7d99Sopenharmony_ci if (ressched_with_resourceschedule_multimedia_audio_framework_enable) { 1434dfc7d99Sopenharmony_ci defines += [ "RESSCHED_AUDIO_FRAMEWORK_ENABLE" ] 1444dfc7d99Sopenharmony_ci external_deps += [ "audio_framework:audio_client" ] 1454dfc7d99Sopenharmony_ci } 1464dfc7d99Sopenharmony_ci if (resource_schedule_service_with_ffrt_enable) { 1474dfc7d99Sopenharmony_ci defines += [ "RESOURCE_SCHEDULE_SERVICE_WITH_FFRT_ENABLE" ] 1484dfc7d99Sopenharmony_ci } 1494dfc7d99Sopenharmony_ci if (resource_schedule_service_with_ext_res_enable) { 1504dfc7d99Sopenharmony_ci defines += [ "RESOURCE_SCHEDULE_SERVICE_WITH_EXT_RES_ENABLE" ] 1514dfc7d99Sopenharmony_ci } 1524dfc7d99Sopenharmony_ci if (rss_request_enable) { 1534dfc7d99Sopenharmony_ci defines += [ "RESOURCE_REQUEST_REQUEST" ] 1544dfc7d99Sopenharmony_ci external_deps += [ "request:request_native" ] 1554dfc7d99Sopenharmony_ci } 1564dfc7d99Sopenharmony_ci external_deps += [ "data_share:datashare_consumer" ] 1574dfc7d99Sopenharmony_ci 1584dfc7d99Sopenharmony_ci version_script = "libresschedsvc.versionscript" 1594dfc7d99Sopenharmony_ci shlib_type = "sa" 1604dfc7d99Sopenharmony_ci subsystem_name = "resourceschedule" 1614dfc7d99Sopenharmony_ci part_name = "resource_schedule_service" 1624dfc7d99Sopenharmony_ci branch_protector_ret = "pac_ret" 1634dfc7d99Sopenharmony_ci 1644dfc7d99Sopenharmony_ci sanitize = { 1654dfc7d99Sopenharmony_ci cfi = true 1664dfc7d99Sopenharmony_ci cfi_cross_dso = true 1674dfc7d99Sopenharmony_ci debug = false 1684dfc7d99Sopenharmony_ci } 1694dfc7d99Sopenharmony_ci} 1704dfc7d99Sopenharmony_ci 1714dfc7d99Sopenharmony_ci# for unittest 1724dfc7d99Sopenharmony_ciohos_static_library("resschedsvc_static") { 1734dfc7d99Sopenharmony_ci configs = [] 1744dfc7d99Sopenharmony_ci 1754dfc7d99Sopenharmony_ci public_configs = [ 1764dfc7d99Sopenharmony_ci ":resschedsvc_private_config", 1774dfc7d99Sopenharmony_ci ":resschedsvc_public_config", 1784dfc7d99Sopenharmony_ci ] 1794dfc7d99Sopenharmony_ci 1804dfc7d99Sopenharmony_ci defines = [] 1814dfc7d99Sopenharmony_ci 1824dfc7d99Sopenharmony_ci include_dirs = [ "../common/include" ] 1834dfc7d99Sopenharmony_ci 1844dfc7d99Sopenharmony_ci sources = [ 1854dfc7d99Sopenharmony_ci "../scene_recognize/src/background_sensitive_task_overlapping_scene_recognizer.cpp", 1864dfc7d99Sopenharmony_ci "../scene_recognize/src/continuous_app_install_recognizer.cpp", 1874dfc7d99Sopenharmony_ci "../scene_recognize/src/scene_recognizer_mgr.cpp", 1884dfc7d99Sopenharmony_ci "../scene_recognize/src/slide_recognizer.cpp", 1894dfc7d99Sopenharmony_ci "../scene_recognize/src/system_upgrade_scene_recognizer.cpp", 1904dfc7d99Sopenharmony_ci "../sched_controller/common_event/src/event_controller.cpp", 1914dfc7d99Sopenharmony_ci "../sched_controller/observer/src/account_observer.cpp", 1924dfc7d99Sopenharmony_ci "../sched_controller/observer/src/audio_observer.cpp", 1934dfc7d99Sopenharmony_ci "../sched_controller/observer/src/connection_subscriber.cpp", 1944dfc7d99Sopenharmony_ci "../sched_controller/observer/src/download_upload_observer.cpp", 1954dfc7d99Sopenharmony_ci "../sched_controller/observer/src/fold_display_mode_observer.cpp", 1964dfc7d99Sopenharmony_ci "../sched_controller/observer/src/hisysevent_observer.cpp", 1974dfc7d99Sopenharmony_ci "../sched_controller/observer/src/mmi_observer.cpp", 1984dfc7d99Sopenharmony_ci "../sched_controller/observer/src/observer_manager.cpp", 1994dfc7d99Sopenharmony_ci "resschedmgr/resschedfwk/src/config_reader.cpp", 2004dfc7d99Sopenharmony_ci "resschedmgr/resschedfwk/src/event_listener_mgr.cpp", 2014dfc7d99Sopenharmony_ci "resschedmgr/resschedfwk/src/kill_process.cpp", 2024dfc7d99Sopenharmony_ci "resschedmgr/resschedfwk/src/notifier_mgr.cpp", 2034dfc7d99Sopenharmony_ci "resschedmgr/resschedfwk/src/plugin_mgr.cpp", 2044dfc7d99Sopenharmony_ci "resschedmgr/resschedfwk/src/plugin_switch.cpp", 2054dfc7d99Sopenharmony_ci "resschedmgr/resschedfwk/src/res_sched_mgr.cpp", 2064dfc7d99Sopenharmony_ci "resschedservice/src/res_sched_service.cpp", 2074dfc7d99Sopenharmony_ci "resschedservice/src/res_sched_service_ability.cpp", 2084dfc7d99Sopenharmony_ci "resschedservice/src/res_sched_service_stub.cpp", 2094dfc7d99Sopenharmony_ci ] 2104dfc7d99Sopenharmony_ci 2114dfc7d99Sopenharmony_ci deps = [ 2124dfc7d99Sopenharmony_ci "${ressched_interfaces}/innerkits/ressched_client:ressched_client", 2134dfc7d99Sopenharmony_ci "${resschedexe_interfaces}/innerkits/ressched_executor_client:resschedexe_client", 2144dfc7d99Sopenharmony_ci "../common:ressched_common_utils", 2154dfc7d99Sopenharmony_ci ] 2164dfc7d99Sopenharmony_ci 2174dfc7d99Sopenharmony_ci external_deps = [ 2184dfc7d99Sopenharmony_ci "ability_base:want", 2194dfc7d99Sopenharmony_ci "ability_runtime:app_manager", 2204dfc7d99Sopenharmony_ci "ability_runtime:connection_obs_manager", 2214dfc7d99Sopenharmony_ci "ability_runtime:dataobs_manager", 2224dfc7d99Sopenharmony_ci "ability_runtime:wantagent_innerkits", 2234dfc7d99Sopenharmony_ci "access_token:libaccesstoken_sdk", 2244dfc7d99Sopenharmony_ci "access_token:libtokenid_sdk", 2254dfc7d99Sopenharmony_ci "background_task_mgr:bgtaskmgr_innerkits", 2264dfc7d99Sopenharmony_ci "bundle_framework:appexecfwk_base", 2274dfc7d99Sopenharmony_ci "bundle_framework:appexecfwk_core", 2284dfc7d99Sopenharmony_ci "c_utils:utils", 2294dfc7d99Sopenharmony_ci "common_event_service:cesfwk_innerkits", 2304dfc7d99Sopenharmony_ci "config_policy:configpolicy_util", 2314dfc7d99Sopenharmony_ci "eventhandler:libeventhandler", 2324dfc7d99Sopenharmony_ci "ffrt:libffrt", 2334dfc7d99Sopenharmony_ci "hilog:libhilog", 2344dfc7d99Sopenharmony_ci "hisysevent:libhisysevent", 2354dfc7d99Sopenharmony_ci "hisysevent:libhisyseventmanager", 2364dfc7d99Sopenharmony_ci "hitrace:hitrace_meter", 2374dfc7d99Sopenharmony_ci "init:libbegetutil", 2384dfc7d99Sopenharmony_ci "input:libmmi-client", 2394dfc7d99Sopenharmony_ci "ipc:ipc_single", 2404dfc7d99Sopenharmony_ci "jsoncpp:jsoncpp", 2414dfc7d99Sopenharmony_ci "libxml2:libxml2", 2424dfc7d99Sopenharmony_ci "os_account:os_account_innerkits", 2434dfc7d99Sopenharmony_ci "safwk:system_ability_fwk", 2444dfc7d99Sopenharmony_ci "samgr:samgr_proxy", 2454dfc7d99Sopenharmony_ci "window_manager:libdm", 2464dfc7d99Sopenharmony_ci "window_manager:libwm_lite", 2474dfc7d99Sopenharmony_ci ] 2484dfc7d99Sopenharmony_ci 2494dfc7d99Sopenharmony_ci if (device_movement_perception_enable) { 2504dfc7d99Sopenharmony_ci defines += [ "DEVICE_MOVEMENT_PERCEPTION_ENABLE" ] 2514dfc7d99Sopenharmony_ci external_deps += [ "movement:movement_client" ] 2524dfc7d99Sopenharmony_ci sources += 2534dfc7d99Sopenharmony_ci [ "../sched_controller/observer/src/device_movement_observer.cpp" ] 2544dfc7d99Sopenharmony_ci } 2554dfc7d99Sopenharmony_ci if (ressched_with_telephony_state_registry_enable) { 2564dfc7d99Sopenharmony_ci defines += [ "RESSCHED_TELEPHONY_STATE_REGISTRY_ENABLE" ] 2574dfc7d99Sopenharmony_ci external_deps += [ 2584dfc7d99Sopenharmony_ci "core_service:tel_core_service_api", 2594dfc7d99Sopenharmony_ci "state_registry:tel_state_registry_api", 2604dfc7d99Sopenharmony_ci ] 2614dfc7d99Sopenharmony_ci sources += 2624dfc7d99Sopenharmony_ci [ "../sched_controller/observer/src/sched_telephony_observer.cpp" ] 2634dfc7d99Sopenharmony_ci } 2644dfc7d99Sopenharmony_ci if (communication_bluetooth_perception_enable) { 2654dfc7d99Sopenharmony_ci defines += [ "RESSCHED_COMMUNICATION_BLUETOOTH_ENABLE" ] 2664dfc7d99Sopenharmony_ci external_deps += [ "bluetooth:btframework" ] 2674dfc7d99Sopenharmony_ci } 2684dfc7d99Sopenharmony_ci if (ressched_with_resourceschedule_multimedia_av_session_enable) { 2694dfc7d99Sopenharmony_ci defines += [ "RESSCHED_MULTIMEDIA_AV_SESSION_ENABLE" ] 2704dfc7d99Sopenharmony_ci sources += 2714dfc7d99Sopenharmony_ci [ "../sched_controller/observer/src/av_session_state_listener.cpp" ] 2724dfc7d99Sopenharmony_ci external_deps += [ "av_session:avsession_client" ] 2734dfc7d99Sopenharmony_ci } 2744dfc7d99Sopenharmony_ci if (ressched_with_resourceschedule_multimedia_audio_framework_enable) { 2754dfc7d99Sopenharmony_ci defines += [ "RESSCHED_AUDIO_FRAMEWORK_ENABLE" ] 2764dfc7d99Sopenharmony_ci external_deps += [ "audio_framework:audio_client" ] 2774dfc7d99Sopenharmony_ci } 2784dfc7d99Sopenharmony_ci if (resource_schedule_service_with_ext_res_enable) { 2794dfc7d99Sopenharmony_ci defines += [ "RESOURCE_SCHEDULE_SERVICE_WITH_EXT_RES_ENABLE" ] 2804dfc7d99Sopenharmony_ci } 2814dfc7d99Sopenharmony_ci if (rss_request_enable) { 2824dfc7d99Sopenharmony_ci defines += [ "RESOURCE_REQUEST_REQUEST" ] 2834dfc7d99Sopenharmony_ci external_deps += [ "request:request_native" ] 2844dfc7d99Sopenharmony_ci } 2854dfc7d99Sopenharmony_ci if (resource_schedule_service_with_ffrt_enable) { 2864dfc7d99Sopenharmony_ci defines += [ "RESOURCE_SCHEDULE_SERVICE_WITH_FFRT_ENABLE" ] 2874dfc7d99Sopenharmony_ci } 2884dfc7d99Sopenharmony_ci external_deps += [ "data_share:datashare_consumer" ] 2894dfc7d99Sopenharmony_ci 2904dfc7d99Sopenharmony_ci subsystem_name = "resourceschedule" 2914dfc7d99Sopenharmony_ci part_name = "resource_schedule_service" 2924dfc7d99Sopenharmony_ci branch_protector_ret = "pac_ret" 2934dfc7d99Sopenharmony_ci 2944dfc7d99Sopenharmony_ci sanitize = { 2954dfc7d99Sopenharmony_ci cfi = true 2964dfc7d99Sopenharmony_ci cfi_cross_dso = true 2974dfc7d99Sopenharmony_ci debug = false 2984dfc7d99Sopenharmony_ci } 2994dfc7d99Sopenharmony_ci} 300