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_ci 1746f34cbfSopenharmony_ciconfig("audio_toneplayer_config") { 1846f34cbfSopenharmony_ci include_dirs = [ 1946f34cbfSopenharmony_ci "include", 2046f34cbfSopenharmony_ci "../audiostream/include", 2146f34cbfSopenharmony_ci "../audioutils/include", 2246f34cbfSopenharmony_ci "../audiorenderer/include", 2346f34cbfSopenharmony_ci "../../../interfaces/inner_api/native/audiocommon/include", 2446f34cbfSopenharmony_ci "../../../interfaces/inner_api/native/audiomanager/include", 2546f34cbfSopenharmony_ci "../../../interfaces/inner_api/native/audiorenderer/include", 2646f34cbfSopenharmony_ci "../../../interfaces/inner_api/native/toneplayer/include", 2746f34cbfSopenharmony_ci "../../../services/audio_policy/include", 2846f34cbfSopenharmony_ci "../../../services/audio_service/client", 2946f34cbfSopenharmony_ci "../../../services/test", 3046f34cbfSopenharmony_ci ] 3146f34cbfSopenharmony_ci 3246f34cbfSopenharmony_ci cflags = [ 3346f34cbfSopenharmony_ci "-Wall", 3446f34cbfSopenharmony_ci "-Werror", 3546f34cbfSopenharmony_ci ] 3646f34cbfSopenharmony_ci} 3746f34cbfSopenharmony_ci 3846f34cbfSopenharmony_ciif (!audio_framework_feature_dtmf_tone) { 3946f34cbfSopenharmony_ci group("audio_toneplayer") { 4046f34cbfSopenharmony_ci deps = [] 4146f34cbfSopenharmony_ci } 4246f34cbfSopenharmony_ci} else { 4346f34cbfSopenharmony_ci ohos_shared_library("audio_toneplayer") { 4446f34cbfSopenharmony_ci branch_protector_ret = "pac_ret" 4546f34cbfSopenharmony_ci sanitize = { 4646f34cbfSopenharmony_ci cfi = true 4746f34cbfSopenharmony_ci cfi_cross_dso = true 4846f34cbfSopenharmony_ci cfi_vcall_icall_only = true 4946f34cbfSopenharmony_ci debug = false 5046f34cbfSopenharmony_ci } 5146f34cbfSopenharmony_ci install_enable = true 5246f34cbfSopenharmony_ci 5346f34cbfSopenharmony_ci configs = [ ":audio_toneplayer_config" ] 5446f34cbfSopenharmony_ci 5546f34cbfSopenharmony_ci sources = [ "src/toneplayer_impl.cpp" ] 5646f34cbfSopenharmony_ci 5746f34cbfSopenharmony_ci defines = [ "FEATURE_DTMF_TONE" ] 5846f34cbfSopenharmony_ci 5946f34cbfSopenharmony_ci deps = [ 6046f34cbfSopenharmony_ci "../../../services/audio_policy:audio_policy_client", 6146f34cbfSopenharmony_ci "../../../services/audio_service:audio_client", 6246f34cbfSopenharmony_ci "../audiorenderer:audio_renderer", 6346f34cbfSopenharmony_ci "../audioutils:audio_utils", 6446f34cbfSopenharmony_ci ] 6546f34cbfSopenharmony_ci 6646f34cbfSopenharmony_ci public_configs = [ ":audio_external_library_config" ] 6746f34cbfSopenharmony_ci 6846f34cbfSopenharmony_ci external_deps = [ 6946f34cbfSopenharmony_ci "c_utils:utils", 7046f34cbfSopenharmony_ci "eventhandler:libeventhandler", 7146f34cbfSopenharmony_ci "hilog:libhilog", 7246f34cbfSopenharmony_ci "ipc:ipc_single", 7346f34cbfSopenharmony_ci "pulseaudio:pulse", 7446f34cbfSopenharmony_ci ] 7546f34cbfSopenharmony_ci 7646f34cbfSopenharmony_ci public_external_deps = [ "bounds_checking_function:libsec_shared" ] 7746f34cbfSopenharmony_ci 7846f34cbfSopenharmony_ci version_script = "../../../audio_framework.versionscript" 7946f34cbfSopenharmony_ci innerapi_tags = [ "platformsdk" ] 8046f34cbfSopenharmony_ci 8146f34cbfSopenharmony_ci part_name = "audio_framework" 8246f34cbfSopenharmony_ci subsystem_name = "multimedia" 8346f34cbfSopenharmony_ci } 8446f34cbfSopenharmony_ci} 8546f34cbfSopenharmony_ci 8646f34cbfSopenharmony_ciif (!audio_framework_feature_dtmf_tone) { 8746f34cbfSopenharmony_ci group("audio_toneplayer_test") { 8846f34cbfSopenharmony_ci deps = [] 8946f34cbfSopenharmony_ci } 9046f34cbfSopenharmony_ci} else { 9146f34cbfSopenharmony_ci ohos_executable("audio_toneplayer_test") { 9246f34cbfSopenharmony_ci install_enable = false 9346f34cbfSopenharmony_ci 9446f34cbfSopenharmony_ci sources = [ "test/example/audio_toneplayer_test.cpp" ] 9546f34cbfSopenharmony_ci 9646f34cbfSopenharmony_ci configs = [ ":audio_toneplayer_config" ] 9746f34cbfSopenharmony_ci 9846f34cbfSopenharmony_ci defines = [ "FEATURE_DTMF_TONE" ] 9946f34cbfSopenharmony_ci 10046f34cbfSopenharmony_ci deps = [ ":audio_toneplayer" ] 10146f34cbfSopenharmony_ci 10246f34cbfSopenharmony_ci external_deps = [ 10346f34cbfSopenharmony_ci "hilog:libhilog", 10446f34cbfSopenharmony_ci "pulseaudio:pulse", 10546f34cbfSopenharmony_ci ] 10646f34cbfSopenharmony_ci 10746f34cbfSopenharmony_ci part_name = "audio_framework" 10846f34cbfSopenharmony_ci subsystem_name = "multimedia" 10946f34cbfSopenharmony_ci } 11046f34cbfSopenharmony_ci} 11146f34cbfSopenharmony_ci 11246f34cbfSopenharmony_ciconfig("audio_external_library_config") { 11346f34cbfSopenharmony_ci include_dirs = [ 11446f34cbfSopenharmony_ci "include", 11546f34cbfSopenharmony_ci "../../../interfaces/inner_api/native/toneplayer/include", 11646f34cbfSopenharmony_ci ] 11746f34cbfSopenharmony_ci} 118