146f34cbfSopenharmony_ci# Copyright (c) 2022 Huawei Device Co., Ltd. 246f34cbfSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 346f34cbfSopenharmony_ci# you may not use this file except in compliance with the License. 446f34cbfSopenharmony_ci# You may obtain a copy of the License at 546f34cbfSopenharmony_ci# 646f34cbfSopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 746f34cbfSopenharmony_ci# 846f34cbfSopenharmony_ci# Unless required by applicable law or agreed to in writing, software 946f34cbfSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 1046f34cbfSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1146f34cbfSopenharmony_ci# See the License for the specific language governing permissions and 1246f34cbfSopenharmony_ci# limitations under the License. 1346f34cbfSopenharmony_ci 1446f34cbfSopenharmony_ciimport("//build/ohos.gni") 1546f34cbfSopenharmony_ciimport("../../../config.gni") 1646f34cbfSopenharmony_ciconfig("audio_utils_public_config") { 1746f34cbfSopenharmony_ci include_dirs = [ "./include" ] 1846f34cbfSopenharmony_ci 1946f34cbfSopenharmony_ci cflags_cc = [ "-std=c++20" ] 2046f34cbfSopenharmony_ci} 2146f34cbfSopenharmony_ci 2246f34cbfSopenharmony_ciohos_shared_library("audio_utils") { 2346f34cbfSopenharmony_ci branch_protector_ret = "pac_ret" 2446f34cbfSopenharmony_ci sanitize = { 2546f34cbfSopenharmony_ci cfi = true 2646f34cbfSopenharmony_ci cfi_cross_dso = true 2746f34cbfSopenharmony_ci cfi_vcall_icall_only = true 2846f34cbfSopenharmony_ci debug = false 2946f34cbfSopenharmony_ci } 3046f34cbfSopenharmony_ci public_configs = [ ":audio_utils_public_config" ] 3146f34cbfSopenharmony_ci install_enable = true 3246f34cbfSopenharmony_ci include_dirs = [ 3346f34cbfSopenharmony_ci "./include", 3446f34cbfSopenharmony_ci "../../../interfaces/inner_api/native/audiocommon/include/", 3546f34cbfSopenharmony_ci "../../../services/audio_service/client/include", 3646f34cbfSopenharmony_ci ] 3746f34cbfSopenharmony_ci 3846f34cbfSopenharmony_ci sources = [ 3946f34cbfSopenharmony_ci "./src/audio_channel_blend.cpp", 4046f34cbfSopenharmony_ci "./src/audio_speed.cpp", 4146f34cbfSopenharmony_ci "./src/audio_utils.cpp", 4246f34cbfSopenharmony_ci "./src/volume_ramp.cpp", 4346f34cbfSopenharmony_ci ] 4446f34cbfSopenharmony_ci 4546f34cbfSopenharmony_ci public_external_deps = [ "bounds_checking_function:libsec_shared" ] 4646f34cbfSopenharmony_ci 4746f34cbfSopenharmony_ci external_deps = [ 4846f34cbfSopenharmony_ci "access_token:libaccesstoken_sdk", 4946f34cbfSopenharmony_ci "access_token:libprivacy_sdk", 5046f34cbfSopenharmony_ci "access_token:libtokenid_sdk", 5146f34cbfSopenharmony_ci "c_utils:utils", 5246f34cbfSopenharmony_ci "hicollie:libhicollie", 5346f34cbfSopenharmony_ci "hilog:libhilog", 5446f34cbfSopenharmony_ci "hitrace:hitrace_meter", 5546f34cbfSopenharmony_ci "init:libbegetutil", 5646f34cbfSopenharmony_ci "ipc:ipc_single", 5746f34cbfSopenharmony_ci ] 5846f34cbfSopenharmony_ci 5946f34cbfSopenharmony_ci if (sonic_enable == true) { 6046f34cbfSopenharmony_ci external_deps += [ "pulseaudio:sonic" ] 6146f34cbfSopenharmony_ci } 6246f34cbfSopenharmony_ci 6346f34cbfSopenharmony_ci defines = [] 6446f34cbfSopenharmony_ci if (audio_framework_feature_hitrace_enable) { 6546f34cbfSopenharmony_ci defines += [ "FEATURE_HITRACE_METER" ] 6646f34cbfSopenharmony_ci external_deps += [ "hitrace:hitrace_meter" ] 6746f34cbfSopenharmony_ci } 6846f34cbfSopenharmony_ci 6946f34cbfSopenharmony_ci if (build_variant == "user") { 7046f34cbfSopenharmony_ci defines += [ "AUDIO_BUILD_VARIANT_USER" ] 7146f34cbfSopenharmony_ci } else if (build_variant == "root") { 7246f34cbfSopenharmony_ci defines += [ "AUDIO_BUILD_VARIANT_ROOT" ] 7346f34cbfSopenharmony_ci } 7446f34cbfSopenharmony_ci 7546f34cbfSopenharmony_ci subsystem_name = "multimedia" 7646f34cbfSopenharmony_ci innerapi_tags = [ "platformsdk_indirect" ] 7746f34cbfSopenharmony_ci part_name = "audio_framework" 7846f34cbfSopenharmony_ci} 79