122736c2fSopenharmony_ci# Copyright (C) 2023 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_tdd_util_config") {
1822736c2fSopenharmony_ci  visibility = [ ":*" ]
1922736c2fSopenharmony_ci  include_dirs = [ "./" ]
2022736c2fSopenharmony_ci  ldflags = [ "-Wl,--exclude-libs=ALL" ]
2122736c2fSopenharmony_ci  cflags = [
2222736c2fSopenharmony_ci    "-fdata-sections",
2322736c2fSopenharmony_ci    "-ffunction-sections",
2422736c2fSopenharmony_ci    "-fvisibility=hidden",
2522736c2fSopenharmony_ci  ]
2622736c2fSopenharmony_ci}
2722736c2fSopenharmony_ci
2822736c2fSopenharmony_ciconfig("inputmethod_tdd_util_public_config") {
2922736c2fSopenharmony_ci  visibility = [ "./*" ]
3022736c2fSopenharmony_ci  include_dirs = [
3122736c2fSopenharmony_ci    "include",
3222736c2fSopenharmony_ci    "${bundllemanager_path}/interfaces/inner_api/appexecfwk_core/include/bundlemgr",
3322736c2fSopenharmony_ci    "${inputmethod_path}/services/adapter/settings_data_provider/common/include",
3422736c2fSopenharmony_ci  ]
3522736c2fSopenharmony_ci}
3622736c2fSopenharmony_ci
3722736c2fSopenharmony_ciohos_static_library("inputmethod_tdd_util") {
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  sources = [
4522736c2fSopenharmony_ci    "src/key_event_util.cpp",
4622736c2fSopenharmony_ci    "src/tdd_util.cpp",
4722736c2fSopenharmony_ci  ]
4822736c2fSopenharmony_ci  configs = [ ":inputmethod_tdd_util_config" ]
4922736c2fSopenharmony_ci  public_configs = [ ":inputmethod_tdd_util_public_config" ]
5022736c2fSopenharmony_ci  deps = [
5122736c2fSopenharmony_ci    "${inputmethod_path}/services:inputmethod_service",
5222736c2fSopenharmony_ci    "${inputmethod_path}/services/adapter/settings_data_provider:settings_data_static",
5322736c2fSopenharmony_ci    "//third_party/cJSON:cjson",
5422736c2fSopenharmony_ci  ]
5522736c2fSopenharmony_ci  external_deps = [
5622736c2fSopenharmony_ci    "access_token:libaccesstoken_sdk",
5722736c2fSopenharmony_ci    "access_token:libnativetoken",
5822736c2fSopenharmony_ci    "access_token:libtoken_setproc",
5922736c2fSopenharmony_ci    "bundle_framework:appexecfwk_core",
6022736c2fSopenharmony_ci    "data_share:datashare_common",
6122736c2fSopenharmony_ci    "data_share:datashare_consumer",
6222736c2fSopenharmony_ci    "hilog:libhilog",
6322736c2fSopenharmony_ci    "input:libmmi-client",
6422736c2fSopenharmony_ci    "os_account:os_account_innerkits",
6522736c2fSopenharmony_ci    "safwk:system_ability_fwk",
6622736c2fSopenharmony_ci    "samgr:samgr_proxy",
6722736c2fSopenharmony_ci  ]
6822736c2fSopenharmony_ci
6922736c2fSopenharmony_ci  if (window_manager_use_sceneboard) {
7022736c2fSopenharmony_ci    external_deps += [ "window_manager:libwm_lite" ]
7122736c2fSopenharmony_ci  } else {
7222736c2fSopenharmony_ci    external_deps += [ "window_manager:libwm" ]
7322736c2fSopenharmony_ci  }
7422736c2fSopenharmony_ci
7522736c2fSopenharmony_ci  subsystem_name = "inputmethod"
7622736c2fSopenharmony_ci  part_name = "imf"
7722736c2fSopenharmony_ci}
78