153a5a1b3Sopenharmony_ci# Copyright (c) 2021-2022 Huawei Device Co., Ltd. 253a5a1b3Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 353a5a1b3Sopenharmony_ci# you may not use this file except in compliance with the License. 453a5a1b3Sopenharmony_ci# You may obtain a copy of the License at 553a5a1b3Sopenharmony_ci# 653a5a1b3Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 753a5a1b3Sopenharmony_ci# 853a5a1b3Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software 953a5a1b3Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 1053a5a1b3Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1153a5a1b3Sopenharmony_ci# See the License for the specific language governing permissions and 1253a5a1b3Sopenharmony_ci# limitations under the License. 1353a5a1b3Sopenharmony_ci 1453a5a1b3Sopenharmony_ciimport("//build/ohos.gni") 1553a5a1b3Sopenharmony_ci 1653a5a1b3Sopenharmony_ciconfig("pulse_config") { 1753a5a1b3Sopenharmony_ci visibility = [ ":*" ] 1853a5a1b3Sopenharmony_ci 1953a5a1b3Sopenharmony_ci include_dirs = [ 2053a5a1b3Sopenharmony_ci "../../../include", 2153a5a1b3Sopenharmony_ci "../../../src/pulse", 2253a5a1b3Sopenharmony_ci "../../../src", 2353a5a1b3Sopenharmony_ci "../../../", 2453a5a1b3Sopenharmony_ci "../../src", 2553a5a1b3Sopenharmony_ci "../../include", 2653a5a1b3Sopenharmony_ci ] 2753a5a1b3Sopenharmony_ci 2853a5a1b3Sopenharmony_ci cflags = [ 2953a5a1b3Sopenharmony_ci "-Wall", 3053a5a1b3Sopenharmony_ci "-Werror", 3153a5a1b3Sopenharmony_ci "-Wno-implicit-function-declaration", 3253a5a1b3Sopenharmony_ci "-Wno-sign-compare", 3353a5a1b3Sopenharmony_ci "-Wno-unused-function", 3453a5a1b3Sopenharmony_ci "-DHAVE_CONFIG_H", 3553a5a1b3Sopenharmony_ci "-D_GNU_SOURCE", 3653a5a1b3Sopenharmony_ci ] 3753a5a1b3Sopenharmony_ci} 3853a5a1b3Sopenharmony_ci 3953a5a1b3Sopenharmony_ciconfig("pulse_include_config") { 4053a5a1b3Sopenharmony_ci visibility = [ ":*" ] 4153a5a1b3Sopenharmony_ci include_dirs = [ 4253a5a1b3Sopenharmony_ci "../../../include", 4353a5a1b3Sopenharmony_ci "../../../src", 4453a5a1b3Sopenharmony_ci ] 4553a5a1b3Sopenharmony_ci} 4653a5a1b3Sopenharmony_ci 4753a5a1b3Sopenharmony_ciohos_source_set("pulse_sources") { 4853a5a1b3Sopenharmony_ci sources = [ 4953a5a1b3Sopenharmony_ci "../../../src/pulse/channelmap.c", 5053a5a1b3Sopenharmony_ci "../../../src/pulse/context.c", 5153a5a1b3Sopenharmony_ci "../../../src/pulse/direction.c", 5253a5a1b3Sopenharmony_ci "../../../src/pulse/error.c", 5353a5a1b3Sopenharmony_ci "../../../src/pulse/ext-device-manager.c", 5453a5a1b3Sopenharmony_ci "../../../src/pulse/ext-device-restore.c", 5553a5a1b3Sopenharmony_ci "../../../src/pulse/ext-stream-restore.c", 5653a5a1b3Sopenharmony_ci "../../../src/pulse/format.c", 5753a5a1b3Sopenharmony_ci "../../../src/pulse/internal.h", 5853a5a1b3Sopenharmony_ci "../../../src/pulse/introspect.c", 5953a5a1b3Sopenharmony_ci "../../../src/pulse/mainloop-api.c", 6053a5a1b3Sopenharmony_ci "../../../src/pulse/mainloop-signal.c", 6153a5a1b3Sopenharmony_ci "../../../src/pulse/mainloop.c", 6253a5a1b3Sopenharmony_ci "../../../src/pulse/ohos_pa_volume.c", 6353a5a1b3Sopenharmony_ci "../../../src/pulse/operation.c", 6453a5a1b3Sopenharmony_ci "../../../src/pulse/proplist.c", 6553a5a1b3Sopenharmony_ci "../../../src/pulse/rtclock.c", 6653a5a1b3Sopenharmony_ci "../../../src/pulse/sample.c", 6753a5a1b3Sopenharmony_ci "../../../src/pulse/scache.c", 6853a5a1b3Sopenharmony_ci "../../../src/pulse/stream.c", 6953a5a1b3Sopenharmony_ci "../../../src/pulse/subscribe.c", 7053a5a1b3Sopenharmony_ci "../../../src/pulse/thread-mainloop.c", 7153a5a1b3Sopenharmony_ci "../../../src/pulse/timeval.c", 7253a5a1b3Sopenharmony_ci "../../../src/pulse/utf8.c", 7353a5a1b3Sopenharmony_ci "../../../src/pulse/util.c", 7453a5a1b3Sopenharmony_ci "../../../src/pulse/xmalloc.c", 7553a5a1b3Sopenharmony_ci ] 7653a5a1b3Sopenharmony_ci 7753a5a1b3Sopenharmony_ci configs = [ ":pulse_config" ] 7853a5a1b3Sopenharmony_ci 7953a5a1b3Sopenharmony_ci external_deps = [ "hilog:libhilog" ] 8053a5a1b3Sopenharmony_ci 8153a5a1b3Sopenharmony_ci subsystem_name = "thirdparty" 8253a5a1b3Sopenharmony_ci part_name = "pulseaudio" 8353a5a1b3Sopenharmony_ci} 8453a5a1b3Sopenharmony_ci 8553a5a1b3Sopenharmony_ciohos_shared_library("pulse") { 8653a5a1b3Sopenharmony_ci branch_protector_ret = "pac_ret" 8753a5a1b3Sopenharmony_ci deps = [ 8853a5a1b3Sopenharmony_ci ":pulse_sources", 8953a5a1b3Sopenharmony_ci "../../src:pulsecommon", 9053a5a1b3Sopenharmony_ci ] 9153a5a1b3Sopenharmony_ci 9253a5a1b3Sopenharmony_ci public_configs = [ ":pulse_include_config" ] 9353a5a1b3Sopenharmony_ci 9453a5a1b3Sopenharmony_ci external_deps = [ "hilog:libhilog" ] 9553a5a1b3Sopenharmony_ci 9653a5a1b3Sopenharmony_ci defines = [] 9753a5a1b3Sopenharmony_ci 9853a5a1b3Sopenharmony_ci if (build_variant == "user") { 9953a5a1b3Sopenharmony_ci defines += [ "AUDIO_BUILD_VARIANT_USER" ] 10053a5a1b3Sopenharmony_ci } else if (build_variant == "root") { 10153a5a1b3Sopenharmony_ci defines += [ "AUDIO_BUILD_VARIANT_ROOT" ] 10253a5a1b3Sopenharmony_ci } 10353a5a1b3Sopenharmony_ci 10453a5a1b3Sopenharmony_ci if (defined(global_parts_info) && 10553a5a1b3Sopenharmony_ci defined(global_parts_info.hiviewdfx_hitrace)) { 10653a5a1b3Sopenharmony_ci defines += [ "FEATURE_HITRACE_METER" ] 10753a5a1b3Sopenharmony_ci external_deps += [ "hitrace:hitrace_meter" ] 10853a5a1b3Sopenharmony_ci } 10953a5a1b3Sopenharmony_ci 11053a5a1b3Sopenharmony_ci subsystem_name = "thirdparty" 11153a5a1b3Sopenharmony_ci innerapi_tags = [ "platformsdk_indirect" ] 11253a5a1b3Sopenharmony_ci part_name = "pulseaudio" 11353a5a1b3Sopenharmony_ci} 11453a5a1b3Sopenharmony_ci 11553a5a1b3Sopenharmony_ciohos_shared_library("pulse-simple") { 11653a5a1b3Sopenharmony_ci sources = [ "../../../src/pulse/simple.c" ] 11753a5a1b3Sopenharmony_ci 11853a5a1b3Sopenharmony_ci configs = [ ":pulse_config" ] 11953a5a1b3Sopenharmony_ci external_deps = [ "hilog:libhilog" ] 12053a5a1b3Sopenharmony_ci deps = [ 12153a5a1b3Sopenharmony_ci "../../src:pulsecommon", 12253a5a1b3Sopenharmony_ci "../../src/pulse:pulse", 12353a5a1b3Sopenharmony_ci ] 12453a5a1b3Sopenharmony_ci 12553a5a1b3Sopenharmony_ci subsystem_name = "thirdparty" 12653a5a1b3Sopenharmony_ci part_name = "pulseaudio" 12753a5a1b3Sopenharmony_ci} 128