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("//build/ohos.gni") 15import("//drivers/hdf_core/adapter/uhdf2/uhdf.gni") 16import("//drivers/peripheral/audio/audio.gni") 17 18config("audio_interface_config") { 19 visibility = [ ":*" ] 20 21 cflags = [] 22 if (drivers_peripheral_audio_feature_mono_to_stereo) { 23 cflags += [ "-DMONO_TO_STEREO" ] 24 } 25 26 ldflags = [ "-Wl" ] 27} 28 29if (defined(ohos_lite)) { 30 ohos_shared_library("hdi_audio_interface_lib_capture") { 31 sources = [ 32 "//drivers/peripheral/audio/hal/hdi_passthrough/src/audio_common.c", 33 "adm_adapter/src/audio_interface_lib_capture.c", 34 "adm_adapter/src/audio_interface_lib_common.c", 35 ] 36 37 include_dirs = [ 38 "//drivers/peripheral/audio/hal/hdi_passthrough/include", 39 "//drivers/peripheral/audio/supportlibs/adm_adapter/include", 40 "//drivers/peripheral/audio/supportlibs/interfaces/include", 41 "//drivers/peripheral/audio/interfaces/include", 42 "//third_party/bounds_checking_function/include", 43 "//base/hiviewdfx/hilog_lite/interfaces/native/kits/", 44 "//device/hisilicon/hispark_taurus/sdk_linux/huawei_proprietary/include", 45 ] 46 47 deps = [ 48 "//base/hiviewdfx/hilog_lite/frameworks/featured:hilog_shared", 49 "//third_party/bounds_checking_function:libsec_shared", 50 ] 51 external_deps = [ "hdf_core:libhdf_utils" ] 52 public_configs = [ ":audio_interface_config" ] 53 defines = [ "_GNU_SOURCE" ] 54 subsystem_name = "hdf" 55 part_name = "drivers_peripheral_audio" 56 } 57 58 ohos_shared_library("hdi_audio_interface_lib_render") { 59 sources = [ 60 "//drivers/peripheral/audio/hal/hdi_passthrough/src/audio_common.c", 61 "adm_adapter/src/audio_interface_lib_common.c", 62 "adm_adapter/src/audio_interface_lib_render.c", 63 ] 64 65 include_dirs = [ 66 "//drivers/peripheral/audio/hal/hdi_passthrough/include", 67 "//drivers/peripheral/audio/supportlibs/adm_adapter/include", 68 "//drivers/peripheral/audio/supportlibs/interfaces/include", 69 "//drivers/peripheral/audio/interfaces/include", 70 "//third_party/bounds_checking_function/include", 71 "//base/hiviewdfx/hilog_lite/interfaces/native/kits/", 72 "//device/hisilicon/hispark_taurus/sdk_linux/huawei_proprietary/include", 73 ] 74 75 deps = [ 76 "//base/hiviewdfx/hilog_lite/frameworks/featured:hilog_shared", 77 "//third_party/bounds_checking_function:libsec_shared", 78 ] 79 external_deps = [ "hdf_core:libhdf_utils" ] 80 defines = [ "_GNU_SOURCE" ] 81 if (enable_audio_hal_hdf_log) { 82 defines += [ "AUDIO_HDF_LOG" ] 83 } 84 public_configs = [ ":audio_interface_config" ] 85 subsystem_name = "hdf" 86 part_name = "drivers_peripheral_audio" 87 } 88} else { 89 ohos_shared_library("hdi_audio_interface_lib_capture") { 90 sources = 91 [ "//drivers/peripheral/audio/hal/hdi_passthrough/src/audio_common.c" ] 92 if (drivers_peripheral_audio_alsa_lib) { 93 sources += [ 94 "//drivers/peripheral/audio/supportlibs/alsa_adapter/src/alsa_lib_capture.c", 95 "//drivers/peripheral/audio/supportlibs/alsa_adapter/src/alsa_lib_common.c", 96 "//third_party/cJSON/cJSON.c", 97 ] 98 } else { 99 sources += [ 100 "//drivers/peripheral/audio/supportlibs/adm_adapter/src/audio_interface_lib_capture.c", 101 "//drivers/peripheral/audio/supportlibs/adm_adapter/src/audio_interface_lib_common.c", 102 ] 103 } 104 include_dirs = [ 105 "//drivers/peripheral/audio/hal/hdi_passthrough/include", 106 "//drivers/peripheral/audio/interfaces/include", 107 "//drivers/peripheral/audio/supportlibs/interfaces/include", 108 "//third_party/bounds_checking_function/include", 109 "//device/hisilicon/hispark_taurus/sdk_linux/huawei_proprietary/include", 110 ] 111 112 deps = [] 113 114 if (enable_audio_hal_hdf_log) { 115 defines = [ "AUDIO_HDF_LOG" ] 116 } 117 118 if (drivers_peripheral_audio_alsa_lib) { 119 include_dirs += [ 120 "//third_party/alsa-lib/include", 121 "//drivers/peripheral/audio/supportlibs/alsa_adapter/include", 122 "//third_party/cJSON", 123 ] 124 deps += [ "//third_party/alsa-lib:libasound" ] 125 } else { 126 include_dirs += 127 [ "//drivers/peripheral/audio/supportlibs/adm_adapter/include" ] 128 } 129 if (is_standard_system) { 130 external_deps = [ 131 "c_utils:utils", 132 "hdf_core:libhdf_utils", 133 "hiviewdfx_hilog_native:libhilog", 134 ] 135 } else { 136 external_deps = [ "hilog:libhilog" ] 137 } 138 139 public_configs = [ ":audio_interface_config" ] 140 141 install_images = [ chipset_base_dir ] 142 subsystem_name = "hdf" 143 part_name = "drivers_peripheral_audio" 144 } 145 146 ohos_shared_library("hdi_audio_interface_lib_render") { 147 sources = 148 [ "//drivers/peripheral/audio/hal/hdi_passthrough/src/audio_common.c" ] 149 if (drivers_peripheral_audio_alsa_lib) { 150 sources += [ 151 "//drivers/peripheral/audio/supportlibs/alsa_adapter/src/alsa_lib_common.c", 152 "//drivers/peripheral/audio/supportlibs/alsa_adapter/src/alsa_lib_render.c", 153 "//third_party/cJSON/cJSON.c", 154 ] 155 } else { 156 sources += [ 157 "//drivers/peripheral/audio/supportlibs/adm_adapter/src/audio_interface_lib_common.c", 158 "//drivers/peripheral/audio/supportlibs/adm_adapter/src/audio_interface_lib_render.c", 159 ] 160 } 161 162 include_dirs = [ 163 "//drivers/peripheral/audio/hal/hdi_passthrough/include", 164 "//drivers/peripheral/audio/interfaces/include", 165 "//drivers/peripheral/audio/supportlibs/interfaces/include", 166 "//third_party/bounds_checking_function/include", 167 "//device/hisilicon/hispark_taurus/sdk_linux/huawei_proprietary/include", 168 ] 169 170 deps = [] 171 172 if (enable_audio_hal_hdf_log) { 173 defines = [ "AUDIO_HDF_LOG" ] 174 } 175 176 if (drivers_peripheral_audio_alsa_lib) { 177 include_dirs += [ 178 "//drivers/peripheral/audio/supportlibs/alsa_adapter/include", 179 "//third_party/alsa-lib/include", 180 "//third_party/cJSON", 181 ] 182 deps += [ "//third_party/alsa-lib:libasound" ] 183 } else { 184 include_dirs += 185 [ "//drivers/peripheral/audio/supportlibs/adm_adapter/include" ] 186 } 187 if (is_standard_system) { 188 external_deps = [ 189 "c_utils:utils", 190 "hdf_core:libhdf_utils", 191 "hiviewdfx_hilog_native:libhilog", 192 ] 193 } else { 194 external_deps = [ "hilog:libhilog" ] 195 } 196 197 public_configs = [ ":audio_interface_config" ] 198 199 install_images = [ chipset_base_dir ] 200 subsystem_name = "hdf" 201 part_name = "drivers_peripheral_audio" 202 } 203} 204