• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2023 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("//build/ohos.gni")
15import("../../intell_voice_service.gni")
16
17ohos_shared_library("intelligentvoice_engine") {
18  configs = [ "//build/config/compiler:exceptions" ]
19  if (intelligent_voice_framework_engine_enable) {
20    sources = [
21      "server/base/adapter_callback_service.cpp",
22      "server/base/audio_debug.cpp",
23      "server/base/audio_source.cpp",
24      "server/base/data_operation_callback.cpp",
25      "server/base/engine_base.cpp",
26      "server/base/engine_factory.cpp",
27      "server/base/engine_util.cpp",
28      "server/base/file_source.cpp",
29      "server/base/intell_voice_engine_callback_proxy.cpp",
30      "server/base/intell_voice_engine_stub.cpp",
31      "server/base/intell_voice_sensibility.cpp",
32      "server/base/intell_voice_update_callback_proxy.cpp",
33      "server/base/swing_service_wrapper.cpp",
34      "server/enroll/enroll_adapter_listener.cpp",
35      "server/enroll/enroll_engine.cpp",
36      "server/hdi_adapter/adapter_host_manager.cpp",
37      "server/hdi_adapter/engine_host_manager.cpp",
38      "server/hdi_adapter/headset_adapter_host_manager.cpp",
39      "server/hdi_adapter/headset_host_manager.cpp",
40      "server/manager/engine_callback_message.cpp",
41      "server/manager/intell_voice_engine_arbitration.cpp",
42      "server/manager/intell_voice_engine_manager.cpp",
43      "server/update/controller/strategy/clone_update_strategy.cpp",
44      "server/update/controller/strategy/silence_update_strategy.cpp",
45      "server/update/controller/update_engine_controller.cpp",
46      "server/update/update_adapter_listener.cpp",
47      "server/update/update_engine.cpp",
48      "server/update/update_engine_utils.cpp",
49      "server/wakeup/headset/headset_wakeup_engine_impl.cpp",
50      "server/wakeup/headset/headset_wakeup_wrapper.cpp",
51      "server/wakeup/wakeup_adapter_listener.cpp",
52      "server/wakeup/wakeup_engine.cpp",
53      "server/wakeup/wakeup_engine_impl.cpp",
54      "server/wakeup/wakeup_source_process.cpp",
55      "server/wakeup/wakeup_source_stop_callback.cpp",
56    ]
57
58    include_dirs = [
59      "inc",
60      "../../../../ai/intelligent_voice_framework/utils",
61      "../../../../ai/intelligent_voice_framework/interfaces/inner_api/native",
62      "../intell_voice_service/inc",
63      "intell_voice_engine",
64      "server/base",
65      "server/enroll",
66      "server/hdi_adapter",
67      "server/update",
68      "server/update/controller",
69      "server/update/controller/strategy",
70      "server/utils",
71      "server/wakeup",
72      "server/wakeup/headset",
73    ]
74
75    external_deps = [
76      "ability_runtime:ability_manager",
77      "audio_framework:audio_capturer",
78      "audio_framework:audio_client",
79      "audio_framework:audio_foundation",
80      "c_utils:utils",
81      "drivers_interface_intelligent_voice:intell_voice_engine_idl_headers",
82      "drivers_interface_intelligent_voice:libintell_voice_engine_proxy_1.0",
83      "drivers_interface_intelligent_voice:libintell_voice_engine_proxy_1.1",
84      "drivers_interface_intelligent_voice:libintell_voice_engine_proxy_1.2",
85      "ffrt:libffrt",
86      "hdf_core:libhdi",
87      "hilog:libhilog",
88      "huks:libhukssdk",
89      "ipc:ipc_core",
90      "jsoncpp:jsoncpp",
91      "kv_store:distributeddata_inner",
92      "safwk:system_ability_fwk",
93      "samgr:samgr_proxy",
94    ]
95  } else {
96    sources = [
97      "server/manager/dummy_engine_manager.cpp",
98      "server/manager/engine_callback_message.cpp",
99    ]
100    include_dirs = [
101      "inc",
102      "../intell_voice_service/inc",
103    ]
104    external_deps = []
105  }
106
107  cflags_cc = [
108    "-Wno-error=unused-parameter",
109    "-DHILOG_ENABLE",
110    "-DENABLE_DEBUG",
111    "-DUSE_FFRT",
112  ]
113
114  defines = []
115  if (build_variant == "root") {
116    defines += [ "INTELL_VOICE_BUILD_VARIANT_ROOT" ]
117  }
118
119  deps = [ "../../utils:intell_voice_utils" ]
120
121  sanitize = {
122    cfi = true
123    cfi_cross_dso = true
124    cfi_vcall_icall_only = true
125    debug = false
126  }
127
128  branch_protector_ret = "pac_ret"
129
130  subsystem_name = "ai"
131  part_name = "intelligent_voice_framework"
132}
133