• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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