1# Copyright (c) 2021 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("//base/inputmethod/imf/inputmethod.gni") 15import("//build/ohos.gni") 16 17config("inputmethod_services_native_config") { 18 visibility = [ ":*" ] 19 include_dirs = [ 20 "include", 21 "${inputmethod_path}/frameworks/inputmethod_ability/include", 22 "${inputmethod_path}/frameworks/inputmethod_controller/include", 23 "//base/notification/common_event_service/frameworks/core/include", 24 "//base/notification/common_event_service/interfaces/innerkits/native/include", 25 "//foundation/multimodalinput/input/interfaces/native/innerkits/event/include", 26 "${inputmethod_path}/services/adapter/keyboard/include", 27 "${inputmethod_path}/services/dfx/include", 28 ] 29 30 cflags_cc = [ "-fexceptions" ] 31} 32 33ohos_shared_library("inputmethod_service") { 34 sources = [ 35 "${inputmethod_path}/frameworks/inputmethod_controller/src/input_client_proxy.cpp", 36 "${inputmethod_path}/frameworks/inputmethod_controller/src/itypes_util.cpp", 37 "src/bundle_checker.cpp", 38 "src/global.cpp", 39 "src/im_common_event_manager.cpp", 40 "src/ime_cfg_manager.cpp", 41 "src/input_channel.cpp", 42 "src/input_control_channel_proxy.cpp", 43 "src/input_control_channel_stub.cpp", 44 "src/input_method_info.cpp", 45 "src/input_method_system_ability.cpp", 46 "src/input_method_system_ability_stub.cpp", 47 "src/message.cpp", 48 "src/message_handler.cpp", 49 "src/peruser_session.cpp", 50 ] 51 52 configs = [ ":inputmethod_services_native_config" ] 53 54 public_configs = [ ":inputmethod_services_native_config" ] 55 56 deps = [ 57 "${ability_runtime_inner_api_path}/ability_manager:ability_manager", 58 "${inputmethod_path}/services/adapter/keyboard:keboard_event_static", 59 "${inputmethod_path}/services/dfx:inputmethod_dfx_static", 60 "//base/global/resource_management/frameworks/resmgr:global_resmgr", 61 "//base/inputmethod/imf/frameworks/inputmethod_ability:inputmethod_ability", 62 "//foundation/arkui/ace_engine/interfaces/inner_api/ui_service_manager:ui_service_mgr", 63 "//foundation/communication/ipc/interfaces/innerkits/ipc_core:ipc_core", 64 "//foundation/systemabilitymgr/safwk/interfaces/innerkits/safwk:system_ability_fwk", 65 "//foundation/systemabilitymgr/samgr/interfaces/innerkits/samgr_proxy:samgr_proxy", 66 "//third_party/jsoncpp:jsoncpp", 67 ] 68 69 external_deps = [ 70 "ability_base:want", 71 "access_token:libaccesstoken_sdk", 72 "bundle_framework:appexecfwk_base", 73 "bundle_framework:appexecfwk_core", 74 "c_utils:utils", 75 "common_event_service:cesfwk_core", 76 "common_event_service:cesfwk_innerkits", 77 "eventhandler:libeventhandler", 78 "hiviewdfx_hilog_native:libhilog", 79 "init:libbegetutil", 80 "os_account:os_account_innerkits", 81 ] 82 83 subsystem_name = "inputmethod" 84 part_name = "imf" 85} 86