1686862fbSopenharmony_ci# Copyright (c) 2021-2024 Huawei Device Co., Ltd. 2686862fbSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 3686862fbSopenharmony_ci# you may not use this file except in compliance with the License. 4686862fbSopenharmony_ci# You may obtain a copy of the License at 5686862fbSopenharmony_ci# 6686862fbSopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 7686862fbSopenharmony_ci# 8686862fbSopenharmony_ci# Unless required by applicable law or agreed to in writing, software 9686862fbSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 10686862fbSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11686862fbSopenharmony_ci# See the License for the specific language governing permissions and 12686862fbSopenharmony_ci# limitations under the License. 13686862fbSopenharmony_ci 14686862fbSopenharmony_ciimport("//build/ohos.gni") 15686862fbSopenharmony_ciimport("//build/ohos_var.gni") 16686862fbSopenharmony_ciimport("//foundation/ability/dmsfwk/dmsfwk.gni") 17686862fbSopenharmony_ci 18686862fbSopenharmony_cigroup("unittest") { 19686862fbSopenharmony_ci testonly = true 20686862fbSopenharmony_ci deps = [ "test:unittest" ] 21686862fbSopenharmony_ci} 22686862fbSopenharmony_ci 23686862fbSopenharmony_ciconfig("distributed_sched_config") { 24686862fbSopenharmony_ci visibility = [ ":*" ] 25686862fbSopenharmony_ci visibility += [ "./test/*" ] 26686862fbSopenharmony_ci include_dirs = [ 27686862fbSopenharmony_ci "include", 28686862fbSopenharmony_ci "${dms_path}/common/include", 29686862fbSopenharmony_ci "${dms_path}/interfaces/kits/napi/include", 30686862fbSopenharmony_ci "${dms_path}/interfaces/innerkits/common/include", 31686862fbSopenharmony_ci "include/collaborate", 32686862fbSopenharmony_ci "include/continue", 33686862fbSopenharmony_ci "include/continue/state", 34686862fbSopenharmony_ci "include/continue/state/source_state", 35686862fbSopenharmony_ci "include/continue/state/sink_state", 36686862fbSopenharmony_ci "include/distributedWant", 37686862fbSopenharmony_ci "include/softbus_adapter/transport", 38686862fbSopenharmony_ci "include/softbus_adapter/allconnectmgr", 39686862fbSopenharmony_ci ] 40686862fbSopenharmony_ci defines = [] 41686862fbSopenharmony_ci if (dmsfwk_mission_manager) { 42686862fbSopenharmony_ci defines += [ "SUPPORT_DISTRIBUTED_MISSION_MANAGER" ] 43686862fbSopenharmony_ci } 44686862fbSopenharmony_ci if (dmsfwk_report_memmgr || dmsfwk_report_memmgr_plugins) { 45686862fbSopenharmony_ci defines += [ "SUPPORT_DISTRIBUTEDCOMPONENT_TO_MEMMGR" ] 46686862fbSopenharmony_ci } 47686862fbSopenharmony_ci if (dmsfwk_standard_form_share) { 48686862fbSopenharmony_ci defines += [ "SUPPORT_DISTRIBUTED_FORM_SHARE" ] 49686862fbSopenharmony_ci } 50686862fbSopenharmony_ci if (efficiency_manager_service_enable) { 51686862fbSopenharmony_ci defines += [ "EFFICIENCY_MANAGER_ENABLE" ] 52686862fbSopenharmony_ci } 53686862fbSopenharmony_ci if (dmsfwk_service_disable) { 54686862fbSopenharmony_ci defines += [ "DMS_SERVICE_DISABLE" ] 55686862fbSopenharmony_ci } 56686862fbSopenharmony_ci if (os_account_part) { 57686862fbSopenharmony_ci defines += [ "OS_ACCOUNT_PART" ] 58686862fbSopenharmony_ci } 59686862fbSopenharmony_ci if (dmsfwk_ces_listener) { 60686862fbSopenharmony_ci defines += [ "SUPPORT_COMMON_EVENT_SERVICE" ] 61686862fbSopenharmony_ci } 62686862fbSopenharmony_ci if (dmsfwk_mmi_listener) { 63686862fbSopenharmony_ci defines += [ "SUPPORT_MULTIMODALINPUT_SERVICE" ] 64686862fbSopenharmony_ci } 65686862fbSopenharmony_ci if (use_libfuzzer || use_clang_coverage) { 66686862fbSopenharmony_ci defines += [ "TEST_COVERAGE" ] 67686862fbSopenharmony_ci } 68686862fbSopenharmony_ci} 69686862fbSopenharmony_ci 70686862fbSopenharmony_ciohos_shared_library("distributedschedsvr") { 71686862fbSopenharmony_ci branch_protector_ret = "pac_ret" 72686862fbSopenharmony_ci sanitize = { 73686862fbSopenharmony_ci cfi = true 74686862fbSopenharmony_ci cfi_cross_dso = true 75686862fbSopenharmony_ci debug = false 76686862fbSopenharmony_ci } 77686862fbSopenharmony_ci 78686862fbSopenharmony_ci install_enable = true 79686862fbSopenharmony_ci 80686862fbSopenharmony_ci if (!dmsfwk_softbus_adapter_common) { 81686862fbSopenharmony_ci cflags = [ 82686862fbSopenharmony_ci "-DDMSFWK_SAME_ACCOUNT", 83686862fbSopenharmony_ci "-DDMSFWK_INTERACTIVE_ADAPTER", 84686862fbSopenharmony_ci "-DDMSFWK_ALL_CONNECT_MGR", 85686862fbSopenharmony_ci ] 86686862fbSopenharmony_ci } 87686862fbSopenharmony_ci 88686862fbSopenharmony_ci sources = [ 89686862fbSopenharmony_ci "src/ability_connection_wrapper_proxy.cpp", 90686862fbSopenharmony_ci "src/ability_connection_wrapper_stub.cpp", 91686862fbSopenharmony_ci "src/adapter/dnetwork_adapter.cpp", 92686862fbSopenharmony_ci "src/app_state_observer.cpp", 93686862fbSopenharmony_ci "src/bundle/bundle_manager_callback_stub.cpp", 94686862fbSopenharmony_ci "src/bundle/bundle_manager_internal.cpp", 95686862fbSopenharmony_ci "src/collaborate/dsched_collaborate_callback_mgr.cpp", 96686862fbSopenharmony_ci "src/connect_death_recipient.cpp", 97686862fbSopenharmony_ci "src/continue/dsched_continue.cpp", 98686862fbSopenharmony_ci "src/continue/dsched_continue_event.cpp", 99686862fbSopenharmony_ci "src/continue/dsched_continue_event_handler.cpp", 100686862fbSopenharmony_ci "src/continue/dsched_continue_manager.cpp", 101686862fbSopenharmony_ci "src/continue/state/dsched_continue_state_machine.cpp", 102686862fbSopenharmony_ci "src/continue/state/sink_state/dsched_continue_data_state.cpp", 103686862fbSopenharmony_ci "src/continue/state/sink_state/dsched_continue_sink_end_state.cpp", 104686862fbSopenharmony_ci "src/continue/state/sink_state/dsched_continue_sink_start_state.cpp", 105686862fbSopenharmony_ci "src/continue/state/sink_state/dsched_continue_sink_wait_end_state.cpp", 106686862fbSopenharmony_ci "src/continue/state/source_state/dsched_continue_ability_state.cpp", 107686862fbSopenharmony_ci "src/continue/state/source_state/dsched_continue_source_end_state.cpp", 108686862fbSopenharmony_ci "src/continue/state/source_state/dsched_continue_source_start_state.cpp", 109686862fbSopenharmony_ci "src/continue/state/source_state/dsched_continue_source_wait_end_state.cpp", 110686862fbSopenharmony_ci "src/continue_scene_session_handler.cpp", 111686862fbSopenharmony_ci "src/datashare_manager.cpp", 112686862fbSopenharmony_ci "src/deviceManager/dms_device_info.cpp", 113686862fbSopenharmony_ci "src/dfx/distributed_radar.cpp", 114686862fbSopenharmony_ci "src/dfx/distributed_sched_dumper.cpp", 115686862fbSopenharmony_ci "src/dfx/distributed_ue.cpp", 116686862fbSopenharmony_ci "src/dfx/dms_continue_time_dumper.cpp", 117686862fbSopenharmony_ci "src/dfx/dms_hisysevent_report.cpp", 118686862fbSopenharmony_ci "src/dfx/dms_hitrace_chain.cpp", 119686862fbSopenharmony_ci "src/distributedWant/distributed_operation.cpp", 120686862fbSopenharmony_ci "src/distributedWant/distributed_operation_builder.cpp", 121686862fbSopenharmony_ci "src/distributedWant/distributed_want.cpp", 122686862fbSopenharmony_ci "src/distributedWant/distributed_want_params.cpp", 123686862fbSopenharmony_ci "src/distributedWant/distributed_want_params_wrapper.cpp", 124686862fbSopenharmony_ci "src/distributed_device_node_listener.cpp", 125686862fbSopenharmony_ci "src/distributed_event_died_listener.cpp", 126686862fbSopenharmony_ci "src/distributed_sched_adapter.cpp", 127686862fbSopenharmony_ci "src/distributed_sched_continuation.cpp", 128686862fbSopenharmony_ci "src/distributed_sched_permission.cpp", 129686862fbSopenharmony_ci "src/distributed_sched_proxy.cpp", 130686862fbSopenharmony_ci "src/distributed_sched_service.cpp", 131686862fbSopenharmony_ci "src/distributed_sched_stub.cpp", 132686862fbSopenharmony_ci "src/dms_callback_task.cpp", 133686862fbSopenharmony_ci "src/dms_free_install_callback.cpp", 134686862fbSopenharmony_ci "src/dms_free_install_callback_proxy.cpp", 135686862fbSopenharmony_ci "src/dms_free_install_callback_stub.cpp", 136686862fbSopenharmony_ci "src/dms_token_callback.cpp", 137686862fbSopenharmony_ci "src/dms_version_manager.cpp", 138686862fbSopenharmony_ci "src/dtbschedmgr_device_info_storage.cpp", 139686862fbSopenharmony_ci "src/softbus_adapter/allconnectmgr/dsched_all_connect_manager.cpp", 140686862fbSopenharmony_ci "src/softbus_adapter/transport/dsched_data_buffer.cpp", 141686862fbSopenharmony_ci "src/softbus_adapter/transport/dsched_softbus_session.cpp", 142686862fbSopenharmony_ci "src/softbus_adapter/transport/dsched_transport_softbus_adapter.cpp", 143686862fbSopenharmony_ci "src/switch_status_dependency.cpp", 144686862fbSopenharmony_ci ] 145686862fbSopenharmony_ci 146686862fbSopenharmony_ci if (!dmsfwk_softbus_adapter_common) { 147686862fbSopenharmony_ci sources += [ "src/softbus_adapter/softbus_adapter.cpp" ] 148686862fbSopenharmony_ci } else { 149686862fbSopenharmony_ci sources += [ "src/softbus_adapter/softbus_adapter_common.cpp" ] 150686862fbSopenharmony_ci } 151686862fbSopenharmony_ci 152686862fbSopenharmony_ci configs = [ 153686862fbSopenharmony_ci ":distributed_sched_config", 154686862fbSopenharmony_ci "//foundation/ability/dmsfwk/services/dtbschedmgr/test/resource:coverage_flags", 155686862fbSopenharmony_ci ] 156686862fbSopenharmony_ci 157686862fbSopenharmony_ci deps = [ "${dms_path}/common:distributed_sched_utils" ] 158686862fbSopenharmony_ci 159686862fbSopenharmony_ci external_deps = [ 160686862fbSopenharmony_ci "ability_base:base", 161686862fbSopenharmony_ci "ability_base:want", 162686862fbSopenharmony_ci "ability_base:zuri", 163686862fbSopenharmony_ci "ability_runtime:ability_manager", 164686862fbSopenharmony_ci "ability_runtime:app_manager", 165686862fbSopenharmony_ci "ability_runtime:dataobs_manager", 166686862fbSopenharmony_ci "ability_runtime:mission_info", 167686862fbSopenharmony_ci "access_token:libaccesstoken_sdk", 168686862fbSopenharmony_ci "access_token:libtokensetproc_shared", 169686862fbSopenharmony_ci "bundle_framework:appexecfwk_base", 170686862fbSopenharmony_ci "bundle_framework:appexecfwk_core", 171686862fbSopenharmony_ci "cJSON:cjson", 172686862fbSopenharmony_ci "c_utils:utils", 173686862fbSopenharmony_ci "data_share:datashare_consumer", 174686862fbSopenharmony_ci "device_auth:deviceauth_sdk", 175686862fbSopenharmony_ci "device_info_manager:distributed_device_profile_common", 176686862fbSopenharmony_ci "device_info_manager:distributed_device_profile_sdk", 177686862fbSopenharmony_ci "device_manager:devicemanagersdk", 178686862fbSopenharmony_ci "device_security_level:dslm_sdk", 179686862fbSopenharmony_ci "distributed_bundle_framework:dbms_fwk", 180686862fbSopenharmony_ci "dsoftbus:softbus_client", 181686862fbSopenharmony_ci "eventhandler:libeventhandler", 182686862fbSopenharmony_ci "hilog:libhilog", 183686862fbSopenharmony_ci "hisysevent:libhisysevent", 184686862fbSopenharmony_ci "hitrace:hitrace_meter", 185686862fbSopenharmony_ci "hitrace:libhitracechain", 186686862fbSopenharmony_ci "init:libbegetutil", 187686862fbSopenharmony_ci "ipc:ipc_core", 188686862fbSopenharmony_ci "kv_store:distributeddata_inner", 189686862fbSopenharmony_ci "os_account:libaccountkits", 190686862fbSopenharmony_ci "safwk:system_ability_fwk", 191686862fbSopenharmony_ci "samgr:samgr_proxy", 192686862fbSopenharmony_ci "wifi:wifi_sdk", 193686862fbSopenharmony_ci "window_manager:libwsutils", 194686862fbSopenharmony_ci "window_manager:scene_session", 195686862fbSopenharmony_ci "window_manager:session_manager_lite", 196686862fbSopenharmony_ci ] 197686862fbSopenharmony_ci if (os_account_part) { 198686862fbSopenharmony_ci external_deps += [ "os_account:os_account_innerkits" ] 199686862fbSopenharmony_ci } 200686862fbSopenharmony_ci 201686862fbSopenharmony_ci if (efficiency_manager_service_enable) { 202686862fbSopenharmony_ci external_deps += [ "resource_schedule_service:ressched_client" ] 203686862fbSopenharmony_ci } 204686862fbSopenharmony_ci 205686862fbSopenharmony_ci if (dmsfwk_standard_form_share) { 206686862fbSopenharmony_ci external_deps += [ "form_fwk:form_manager" ] 207686862fbSopenharmony_ci sources += [ "src/form_mgr_death_recipient.cpp" ] 208686862fbSopenharmony_ci } 209686862fbSopenharmony_ci 210686862fbSopenharmony_ci if (dmsfwk_mission_manager) { 211686862fbSopenharmony_ci sources += [ 212686862fbSopenharmony_ci "src/mission/distributed_bm_storage.cpp", 213686862fbSopenharmony_ci "src/mission/distributed_bundle_info.cpp", 214686862fbSopenharmony_ci "src/mission/distributed_data_change_listener.cpp", 215686862fbSopenharmony_ci "src/mission/distributed_data_storage.cpp", 216686862fbSopenharmony_ci "src/mission/distributed_mission_broadcast_listener.cpp", 217686862fbSopenharmony_ci "src/mission/distributed_mission_change_listener.cpp", 218686862fbSopenharmony_ci "src/mission/distributed_mission_died_listener.cpp", 219686862fbSopenharmony_ci "src/mission/distributed_mission_focused_listener.cpp", 220686862fbSopenharmony_ci "src/mission/distributed_mission_info.cpp", 221686862fbSopenharmony_ci "src/mission/distributed_sched_mission_manager.cpp", 222686862fbSopenharmony_ci "src/mission/dms_continue_recv_manager.cpp", 223686862fbSopenharmony_ci "src/mission/dms_continue_send_manager.cpp", 224686862fbSopenharmony_ci "src/mission/dsched_sync_e2e.cpp", 225686862fbSopenharmony_ci "src/mission/kvstore_death_recipient.cpp", 226686862fbSopenharmony_ci "src/mission/mission_changed_notify.cpp", 227686862fbSopenharmony_ci "src/mission/mission_info_converter.cpp", 228686862fbSopenharmony_ci "src/mission/snapshot.cpp", 229686862fbSopenharmony_ci "src/mission/snapshot_converter.cpp", 230686862fbSopenharmony_ci "src/mission/wifi_state_adapter.cpp", 231686862fbSopenharmony_ci "src/mission/wifi_state_listener.cpp", 232686862fbSopenharmony_ci ] 233686862fbSopenharmony_ci external_deps += [ 234686862fbSopenharmony_ci "config_policy:configpolicy_util", 235686862fbSopenharmony_ci "image_framework:image_native", 236686862fbSopenharmony_ci ] 237686862fbSopenharmony_ci } 238686862fbSopenharmony_ci 239686862fbSopenharmony_ci if (dmsfwk_report_memmgr) { 240686862fbSopenharmony_ci external_deps += [ "memmgr:memmgrclient" ] 241686862fbSopenharmony_ci } 242686862fbSopenharmony_ci 243686862fbSopenharmony_ci if (dmsfwk_report_memmgr_plugins) { 244686862fbSopenharmony_ci external_deps += [ "memmgr_override:memmgrclient" ] 245686862fbSopenharmony_ci } 246686862fbSopenharmony_ci 247686862fbSopenharmony_ci if (dmsfwk_ces_listener) { 248686862fbSopenharmony_ci external_deps += [ "common_event_service:cesfwk_innerkits" ] 249686862fbSopenharmony_ci sources += [ "src/common_event_listener.cpp" ] 250686862fbSopenharmony_ci } 251686862fbSopenharmony_ci 252686862fbSopenharmony_ci if (dmsfwk_mmi_listener) { 253686862fbSopenharmony_ci external_deps += [ "input:libmmi-client" ] 254686862fbSopenharmony_ci sources += [ "src/adapter/mmi_adapter.cpp" ] 255686862fbSopenharmony_ci } else { 256686862fbSopenharmony_ci sources += [ "src/adapter/mmi_adapter_common.cpp" ] 257686862fbSopenharmony_ci } 258686862fbSopenharmony_ci 259686862fbSopenharmony_ci install_images = [ system_base_dir ] 260686862fbSopenharmony_ci relative_install_dir = "platformsdk" 261686862fbSopenharmony_ci part_name = "dmsfwk" 262686862fbSopenharmony_ci subsystem_name = "ability" 263686862fbSopenharmony_ci} 264