122736c2fSopenharmony_ci# Copyright (c) 2021 Huawei Device Co., Ltd. 222736c2fSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 322736c2fSopenharmony_ci# you may not use this file except in compliance with the License. 422736c2fSopenharmony_ci# You may obtain a copy of the License at 522736c2fSopenharmony_ci# 622736c2fSopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 722736c2fSopenharmony_ci# 822736c2fSopenharmony_ci# Unless required by applicable law or agreed to in writing, software 922736c2fSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 1022736c2fSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1122736c2fSopenharmony_ci# See the License for the specific language governing permissions and 1222736c2fSopenharmony_ci# limitations under the License. 1322736c2fSopenharmony_ci 1422736c2fSopenharmony_ciimport("//base/inputmethod/imf/inputmethod.gni") 1522736c2fSopenharmony_ciimport("//build/ohos.gni") 1622736c2fSopenharmony_ci 1722736c2fSopenharmony_ciconfig("inputmethod_services_native_config") { 1822736c2fSopenharmony_ci visibility = [ ":*" ] 1922736c2fSopenharmony_ci include_dirs = [ 2022736c2fSopenharmony_ci "include", 2122736c2fSopenharmony_ci "${inputmethod_path}/common/include", 2222736c2fSopenharmony_ci "${inputmethod_path}/frameworks/common", 2322736c2fSopenharmony_ci "${inputmethod_path}/frameworks/native/inputmethod_ability/include", 2422736c2fSopenharmony_ci "${inputmethod_path}/frameworks/native/inputmethod_controller/include", 2522736c2fSopenharmony_ci "${inputmethod_path}/interfaces/inner_api/inputmethod_ability/include", 2622736c2fSopenharmony_ci "${inputmethod_path}/interfaces/inner_api/inputmethod_controller/include", 2722736c2fSopenharmony_ci "${inputmethod_path}/services/adapter/focus_monitor/include", 2822736c2fSopenharmony_ci "${inputmethod_path}/services/adapter/ime_connection_manager/include", 2922736c2fSopenharmony_ci "${inputmethod_path}/services/adapter/keyboard/include", 3022736c2fSopenharmony_ci "${inputmethod_path}/services/adapter/os_account_adapter/include", 3122736c2fSopenharmony_ci "${inputmethod_path}/services/adapter/system_language_observer/include", 3222736c2fSopenharmony_ci "${inputmethod_path}/services/adapter/wms_connection_monitor/include", 3322736c2fSopenharmony_ci "${inputmethod_path}/services/identity_checker/include", 3422736c2fSopenharmony_ci ] 3522736c2fSopenharmony_ci} 3622736c2fSopenharmony_ci 3722736c2fSopenharmony_ciohos_shared_library("inputmethod_service") { 3822736c2fSopenharmony_ci branch_protector_ret = "pac_ret" 3922736c2fSopenharmony_ci sanitize = { 4022736c2fSopenharmony_ci cfi = true 4122736c2fSopenharmony_ci cfi_cross_dso = true 4222736c2fSopenharmony_ci debug = false 4322736c2fSopenharmony_ci } 4422736c2fSopenharmony_ci cflags_cc = [ 4522736c2fSopenharmony_ci "-fexceptions", 4622736c2fSopenharmony_ci "-fvisibility=hidden", 4722736c2fSopenharmony_ci "-fvisibility-inlines-hidden", 4822736c2fSopenharmony_ci "-fdata-sections", 4922736c2fSopenharmony_ci "-ffunction-sections", 5022736c2fSopenharmony_ci "-Os", 5122736c2fSopenharmony_ci "-Wno-c99-designator", 5222736c2fSopenharmony_ci ] 5322736c2fSopenharmony_ci sources = [ 5422736c2fSopenharmony_ci "${inputmethod_path}/frameworks/native/inputmethod_ability/src/input_method_core_proxy.cpp", 5522736c2fSopenharmony_ci "${inputmethod_path}/frameworks/native/inputmethod_controller/src/input_client_proxy.cpp", 5622736c2fSopenharmony_ci "${inputmethod_path}/services/adapter/focus_monitor/src/focus_change_listener.cpp", 5722736c2fSopenharmony_ci "${inputmethod_path}/services/adapter/focus_monitor/src/focus_monitor_manager.cpp", 5822736c2fSopenharmony_ci "${inputmethod_path}/services/adapter/ime_connection_manager/src/ime_connection.cpp", 5922736c2fSopenharmony_ci "${inputmethod_path}/services/adapter/system_language_observer/src/system_language_observer.cpp", 6022736c2fSopenharmony_ci "${inputmethod_path}/services/adapter/wms_connection_monitor/src/wms_connection_monitor_manager.cpp", 6122736c2fSopenharmony_ci "${inputmethod_path}/services/adapter/wms_connection_monitor/src/wms_connection_observer.cpp", 6222736c2fSopenharmony_ci "${inputmethod_path}/services/identity_checker/src/identity_checker_impl.cpp", 6322736c2fSopenharmony_ci "adapter/os_account_adapter/src/os_account_adapter.cpp", 6422736c2fSopenharmony_ci "src/freeze_manager.cpp", 6522736c2fSopenharmony_ci "src/full_ime_info_manager.cpp", 6622736c2fSopenharmony_ci "src/im_common_event_manager.cpp", 6722736c2fSopenharmony_ci "src/ime_cfg_manager.cpp", 6822736c2fSopenharmony_ci "src/ime_info_inquirer.cpp", 6922736c2fSopenharmony_ci "src/input_control_channel_stub.cpp", 7022736c2fSopenharmony_ci "src/input_method_system_ability.cpp", 7122736c2fSopenharmony_ci "src/input_method_system_ability_stub.cpp", 7222736c2fSopenharmony_ci "src/input_type_manager.cpp", 7322736c2fSopenharmony_ci "src/peruser_session.cpp", 7422736c2fSopenharmony_ci "src/sys_cfg_parser.cpp", 7522736c2fSopenharmony_ci "src/user_session_manager.cpp", 7622736c2fSopenharmony_ci ] 7722736c2fSopenharmony_ci 7822736c2fSopenharmony_ci configs = [ ":inputmethod_services_native_config" ] 7922736c2fSopenharmony_ci 8022736c2fSopenharmony_ci public_configs = [ ":inputmethod_services_native_config" ] 8122736c2fSopenharmony_ci 8222736c2fSopenharmony_ci deps = [ 8322736c2fSopenharmony_ci "${inputmethod_path}/common:inputmethod_common", 8422736c2fSopenharmony_ci "${inputmethod_path}/services/adapter/keyboard:keboard_event_static", 8522736c2fSopenharmony_ci "${inputmethod_path}/services/adapter/settings_data_provider:settings_data_static", 8622736c2fSopenharmony_ci "${inputmethod_path}/services/file:imf_file_static", 8722736c2fSopenharmony_ci "${inputmethod_path}/services/json:imf_json_static", 8822736c2fSopenharmony_ci "//third_party/cJSON:cjson", 8922736c2fSopenharmony_ci ] 9022736c2fSopenharmony_ci 9122736c2fSopenharmony_ci external_deps = [ 9222736c2fSopenharmony_ci "ability_base:want", 9322736c2fSopenharmony_ci "ability_runtime:ability_connect_callback_stub", 9422736c2fSopenharmony_ci "ability_runtime:ability_manager", 9522736c2fSopenharmony_ci "ability_runtime:app_manager", 9622736c2fSopenharmony_ci "access_token:libaccesstoken_sdk", 9722736c2fSopenharmony_ci "access_token:libtokenid_sdk", 9822736c2fSopenharmony_ci "bundle_framework:appexecfwk_base", 9922736c2fSopenharmony_ci "bundle_framework:appexecfwk_core", 10022736c2fSopenharmony_ci "c_utils:utils", 10122736c2fSopenharmony_ci "common_event_service:cesfwk_innerkits", 10222736c2fSopenharmony_ci "config_policy:configpolicy_util", 10322736c2fSopenharmony_ci "data_share:datashare_common", 10422736c2fSopenharmony_ci "data_share:datashare_consumer", 10522736c2fSopenharmony_ci "eventhandler:libeventhandler", 10622736c2fSopenharmony_ci "hicollie:libhicollie", 10722736c2fSopenharmony_ci "hilog:libhilog", 10822736c2fSopenharmony_ci "i18n:intl_util", 10922736c2fSopenharmony_ci "init:libbeget_proxy", 11022736c2fSopenharmony_ci "init:libbegetutil", 11122736c2fSopenharmony_ci "input:libmmi-client", 11222736c2fSopenharmony_ci "ipc:ipc_single", 11322736c2fSopenharmony_ci "memmgr:memmgrclient", 11422736c2fSopenharmony_ci "os_account:os_account_innerkits", 11522736c2fSopenharmony_ci "resource_management:global_resmgr", 11622736c2fSopenharmony_ci "resource_schedule_service:ressched_client", 11722736c2fSopenharmony_ci "safwk:system_ability_fwk", 11822736c2fSopenharmony_ci "samgr:samgr_proxy", 11922736c2fSopenharmony_ci "window_manager:libwsutils", 12022736c2fSopenharmony_ci ] 12122736c2fSopenharmony_ci 12222736c2fSopenharmony_ci defines = [] 12322736c2fSopenharmony_ci if (imf_screenlock_mgr_enable) { 12422736c2fSopenharmony_ci defines += [ "IMF_SCREENLOCK_MGR_ENABLE" ] 12522736c2fSopenharmony_ci external_deps += [ "screenlock_mgr:screenlock_client" ] 12622736c2fSopenharmony_ci } 12722736c2fSopenharmony_ci if (window_manager_use_sceneboard) { 12822736c2fSopenharmony_ci external_deps += [ "window_manager:libwm_lite" ] 12922736c2fSopenharmony_ci defines += [ "SCENE_BOARD_ENABLE" ] 13022736c2fSopenharmony_ci } else { 13122736c2fSopenharmony_ci external_deps += [ "window_manager:libwm" ] 13222736c2fSopenharmony_ci } 13322736c2fSopenharmony_ci subsystem_name = "inputmethod" 13422736c2fSopenharmony_ci part_name = "imf" 13522736c2fSopenharmony_ci} 13622736c2fSopenharmony_ci 13722736c2fSopenharmony_ciohos_static_library("inputmethod_service_static") { 13822736c2fSopenharmony_ci branch_protector_ret = "pac_ret" 13922736c2fSopenharmony_ci sanitize = { 14022736c2fSopenharmony_ci cfi = true 14122736c2fSopenharmony_ci cfi_cross_dso = true 14222736c2fSopenharmony_ci debug = false 14322736c2fSopenharmony_ci } 14422736c2fSopenharmony_ci cflags_cc = [ 14522736c2fSopenharmony_ci "-fdata-sections", 14622736c2fSopenharmony_ci "-ffunction-sections", 14722736c2fSopenharmony_ci "-Os", 14822736c2fSopenharmony_ci ] 14922736c2fSopenharmony_ci sources = [ 15022736c2fSopenharmony_ci "${inputmethod_path}/frameworks/native/inputmethod_ability/src/input_method_core_proxy.cpp", 15122736c2fSopenharmony_ci "${inputmethod_path}/frameworks/native/inputmethod_controller/src/input_client_proxy.cpp", 15222736c2fSopenharmony_ci "adapter/focus_monitor/src/focus_change_listener.cpp", 15322736c2fSopenharmony_ci "adapter/focus_monitor/src/focus_monitor_manager.cpp", 15422736c2fSopenharmony_ci "adapter/ime_connection_manager/src/ime_connection.cpp", 15522736c2fSopenharmony_ci "adapter/os_account_adapter/src/os_account_adapter.cpp", 15622736c2fSopenharmony_ci "adapter/system_language_observer/src/system_language_observer.cpp", 15722736c2fSopenharmony_ci "adapter/wms_connection_monitor/src/wms_connection_monitor_manager.cpp", 15822736c2fSopenharmony_ci "adapter/wms_connection_monitor/src/wms_connection_observer.cpp", 15922736c2fSopenharmony_ci "identity_checker/src/identity_checker_impl.cpp", 16022736c2fSopenharmony_ci "src/freeze_manager.cpp", 16122736c2fSopenharmony_ci "src/full_ime_info_manager.cpp", 16222736c2fSopenharmony_ci "src/im_common_event_manager.cpp", 16322736c2fSopenharmony_ci "src/ime_cfg_manager.cpp", 16422736c2fSopenharmony_ci "src/ime_info_inquirer.cpp", 16522736c2fSopenharmony_ci "src/input_control_channel_stub.cpp", 16622736c2fSopenharmony_ci "src/input_method_system_ability.cpp", 16722736c2fSopenharmony_ci "src/input_method_system_ability_stub.cpp", 16822736c2fSopenharmony_ci "src/input_type_manager.cpp", 16922736c2fSopenharmony_ci "src/peruser_session.cpp", 17022736c2fSopenharmony_ci "src/sys_cfg_parser.cpp", 17122736c2fSopenharmony_ci "src/user_session_manager.cpp", 17222736c2fSopenharmony_ci ] 17322736c2fSopenharmony_ci 17422736c2fSopenharmony_ci public_configs = [ ":inputmethod_services_native_config" ] 17522736c2fSopenharmony_ci 17622736c2fSopenharmony_ci public_deps = [ 17722736c2fSopenharmony_ci "${inputmethod_path}/common:inputmethod_common", 17822736c2fSopenharmony_ci "adapter/keyboard:keboard_event_static", 17922736c2fSopenharmony_ci "adapter/settings_data_provider:settings_data_static", 18022736c2fSopenharmony_ci "file:imf_file_static", 18122736c2fSopenharmony_ci "json:imf_json_static", 18222736c2fSopenharmony_ci ] 18322736c2fSopenharmony_ci 18422736c2fSopenharmony_ci external_deps = [ 18522736c2fSopenharmony_ci "ability_base:want", 18622736c2fSopenharmony_ci "ability_runtime:ability_manager", 18722736c2fSopenharmony_ci "ability_runtime:app_manager", 18822736c2fSopenharmony_ci "access_token:libaccesstoken_sdk", 18922736c2fSopenharmony_ci "access_token:libtokenid_sdk", 19022736c2fSopenharmony_ci "bundle_framework:appexecfwk_base", 19122736c2fSopenharmony_ci "bundle_framework:appexecfwk_core", 19222736c2fSopenharmony_ci "c_utils:utils", 19322736c2fSopenharmony_ci "common_event_service:cesfwk_innerkits", 19422736c2fSopenharmony_ci "config_policy:configpolicy_util", 19522736c2fSopenharmony_ci "data_share:datashare_common", 19622736c2fSopenharmony_ci "data_share:datashare_consumer", 19722736c2fSopenharmony_ci "eventhandler:libeventhandler", 19822736c2fSopenharmony_ci "hicollie:libhicollie", 19922736c2fSopenharmony_ci "hilog:libhilog", 20022736c2fSopenharmony_ci "i18n:intl_util", 20122736c2fSopenharmony_ci "init:libbeget_proxy", 20222736c2fSopenharmony_ci "init:libbegetutil", 20322736c2fSopenharmony_ci "input:libmmi-client", 20422736c2fSopenharmony_ci "ipc:ipc_single", 20522736c2fSopenharmony_ci "memmgr:memmgrclient", 20622736c2fSopenharmony_ci "os_account:os_account_innerkits", 20722736c2fSopenharmony_ci "resource_management:global_resmgr", 20822736c2fSopenharmony_ci "resource_schedule_service:ressched_client", 20922736c2fSopenharmony_ci "safwk:system_ability_fwk", 21022736c2fSopenharmony_ci "samgr:samgr_proxy", 21122736c2fSopenharmony_ci "window_manager:libwsutils", 21222736c2fSopenharmony_ci ] 21322736c2fSopenharmony_ci 21422736c2fSopenharmony_ci defines = [] 21522736c2fSopenharmony_ci if (imf_screenlock_mgr_enable) { 21622736c2fSopenharmony_ci defines += [ "IMF_SCREENLOCK_MGR_ENABLE" ] 21722736c2fSopenharmony_ci external_deps += [ "screenlock_mgr:screenlock_client" ] 21822736c2fSopenharmony_ci } 21922736c2fSopenharmony_ci if (window_manager_use_sceneboard) { 22022736c2fSopenharmony_ci external_deps += [ "window_manager:libwm_lite" ] 22122736c2fSopenharmony_ci defines += [ "SCENE_BOARD_ENABLE" ] 22222736c2fSopenharmony_ci } else { 22322736c2fSopenharmony_ci external_deps += [ "window_manager:libwm" ] 22422736c2fSopenharmony_ci } 22522736c2fSopenharmony_ci subsystem_name = "inputmethod" 22622736c2fSopenharmony_ci part_name = "imf" 22722736c2fSopenharmony_ci} 228