1# Copyright (c) 2024 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. 13import("//base/inputmethod/imf/inputmethod.gni") 14import("//build/ohos.gni") 15 16ohos_shared_library("ohinputmethod") { 17 sanitize = { 18 cfi = true 19 cfi_cross_dso = true 20 cfi_vcall_icall_only = true 21 debug = false 22 } 23 output_name = "ohinputmethod" 24 output_extension = "so" 25 26 sources = [ 27 "${inputmethod_path}/frameworks/native/inputmethod_controller/src/input_client_info.cpp", 28 "${inputmethod_path}/frameworks/native/inputmethod_controller/src/input_method_tools.cpp", 29 "${inputmethod_path}/frameworks/native/inputmethod_controller/src/input_method_utils.cpp", 30 "src/inputmethod_attach_options_capi.cpp", 31 "src/inputmethod_controller_capi.cpp", 32 "src/inputmethod_cursor_info_capi.cpp", 33 "src/inputmethod_inputmethod_proxy_capi.cpp", 34 "src/inputmethod_message_handler_proxy_capi.cpp", 35 "src/inputmethod_private_command_capi.cpp", 36 "src/inputmethod_text_avoid_info_capi.cpp", 37 "src/inputmethod_text_config_capi.cpp", 38 "src/inputmethod_texteditor_proxy_capi.cpp", 39 "src/native_capi_utils.cpp", 40 "src/native_message_handler_callback.cpp", 41 "src/native_text_changed_listener.cpp", 42 ] 43 include_dirs = [ 44 "include", 45 "${inputmethod_path}/interfaces/kits/c", 46 ] 47 deps = [ 48 "${inputmethod_path}/common:inputmethod_common", 49 "${inputmethod_path}/interfaces/inner_api/inputmethod_controller:inputmethod_client", 50 ] 51 52 configs = [ "${inputmethod_path}/interfaces/inner_api/inputmethod_ability:inputmethod_ability_native_public_config" ] 53 54 external_deps = [ 55 "c_utils:utils", 56 "eventhandler:libeventhandler", 57 "hilog:libhilog", 58 "input:libmmi-client", 59 "ipc:ipc_single", 60 ] 61 62 innerapi_tags = [ "ndk" ] 63 subsystem_name = "inputmethod" 64 part_name = "imf" 65} 66 67ohos_static_library("ohinputmethod_static") { 68 testonly = true 69 branch_protector_ret = "pac_ret" 70 sanitize = { 71 cfi = true 72 cfi_cross_dso = true 73 cfi_vcall_icall_only = true 74 debug = false 75 } 76 output_name = "ohinputmethod" 77 output_extension = "so" 78 sources = [ 79 "src/inputmethod_attach_options_capi.cpp", 80 "src/inputmethod_controller_capi.cpp", 81 "src/inputmethod_cursor_info_capi.cpp", 82 "src/inputmethod_inputmethod_proxy_capi.cpp", 83 "src/inputmethod_message_handler_proxy_capi.cpp", 84 "src/inputmethod_private_command_capi.cpp", 85 "src/inputmethod_text_avoid_info_capi.cpp", 86 "src/inputmethod_text_config_capi.cpp", 87 "src/inputmethod_texteditor_proxy_capi.cpp", 88 "src/native_capi_utils.cpp", 89 "src/native_message_handler_callback.cpp", 90 "src/native_text_changed_listener.cpp", 91 ] 92 93 include_dirs = [ 94 "include", 95 "${inputmethod_path}/interfaces/kits/c", 96 ] 97 98 deps = [ 99 "${inputmethod_path}/common:inputmethod_common", 100 "${inputmethod_path}/interfaces/inner_api/inputmethod_controller:inputmethod_client_static", 101 ] 102 103 configs = [ "${inputmethod_path}/interfaces/inner_api/inputmethod_ability:inputmethod_ability_native_public_config" ] 104 105 external_deps = [ 106 "c_utils:utils", 107 "eventhandler:libeventhandler", 108 "hilog:libhilog", 109 "input:libmmi-client", 110 "ipc:ipc_single", 111 ] 112 113 subsystem_name = "inputmethod" 114 part_name = "imf" 115} 116