1# Copyright (c) 2021-2022 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("//build/lite/config/component/lite_component.gni")
14import("//build/lite/ndk/ndk.gni")
15
16static_library("audio_capturer_server") {
17  sources = [
18    "server/src/audio_capturer_samgr.cpp",
19    "server/src/audio_capturer_server.cpp",
20  ]
21  cflags = [ "-fPIC" ]
22  cflags += [ "-Werror" ]
23  cflags_cc = cflags
24  include_dirs = [
25    "//base/security/permission_lite/interfaces/kits",
26    "//foundation/multimedia/audio_lite/services/server/include",
27    "//foundation/multimedia/audio_lite/interfaces/kits",
28    "//foundation/multimedia/audio_lite/services/impl",
29    "//foundation/systemabilitymgr/samgr_lite/interfaces/kits/registry",
30    "//foundation/systemabilitymgr/samgr_lite/interfaces/kits/samgr",
31    "//foundation/communication/ipc/interfaces/innerkits/c/ipc/include",
32    "//foundation/systemabilitymgr/samgr_lite/interfaces/kits/communication/broadcast",
33    "//foundation/multimedia/media_utils_lite/interfaces/kits",
34    "//third_party/bounds_checking_function/include",
35  ]
36
37  deps = [
38    "//base/security/permission_lite/services/pms_client:pms_client",
39    "//foundation/communication/ipc/interfaces/innerkits/c/ipc:ipc_single",
40    "//foundation/graphic/surface_lite:surface_lite",
41    "//foundation/multimedia/audio_lite/services:audio_capturer_impl",
42    "//foundation/multimedia/media_utils_lite:media_common",
43    "//foundation/systemabilitymgr/samgr_lite/samgr:samgr",
44    "//third_party/bounds_checking_function:libsec_shared",
45  ]
46}
47
48shared_library("audio_capturer_impl") {
49  sources = [
50    "impl/audio_capturer_impl.cpp",
51    "impl/audio_encoder/audio_encoder.cpp",
52    "impl/audio_source/audio_source.cpp",
53  ]
54  cflags = [ "-fPIC" ]
55  cflags += [ "-Werror" ]
56  cflags_cc = cflags
57  include_dirs = [
58    "//foundation/multimedia/audio_lite/services/impl/audio_encoder/include",
59    "//foundation/multimedia/audio_lite/services/impl/audio_source/include",
60    "//foundation/multimedia/audio_lite/frameworks/binder",
61    "//foundation/multimedia/audio_lite/interfaces/kits",
62    "//drivers/peripheral/audio/interfaces/include",
63    "//drivers/peripheral/codec/interfaces/include",
64    "//drivers/peripheral/display/interfaces/include",
65    "//drivers/peripheral/base",
66    "//foundation/multimedia/media_utils_lite/interfaces/kits",
67  ]
68
69  outdir = rebase_path("$root_out_dir")
70  public_configs = [ ":audio_external_library_config" ]
71  ldflags = [
72    "-L$outdir",
73    "-lcodec",
74    "-laudio_hw",
75    "-lpthread",
76  ]
77  deps = [
78    "//device/soc/hisilicon/common/hal/media:hardware_media_sdk",
79    "//foundation/graphic/surface_lite:surface_lite",
80    "//foundation/multimedia/media_utils_lite:media_common",
81    "//third_party/bounds_checking_function:libsec_shared",
82  ]
83}
84
85config("audio_external_library_config") {
86  include_dirs = [ "//foundation/multimedia/audio_lite/interfaces/kits" ]
87  include_dirs += [ "//foundation/multimedia/media_utils_lite/interfaces/kits" ]
88}
89