• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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.
13
14import("//build/ohos.gni")
15
16pulseaudio_dir = "//third_party/pulseaudio"
17pulseaudio_build_path = "//third_party/pulseaudio/ohosbuild"
18
19config("pulse_config") {
20  visibility = [ ":*" ]
21
22  include_dirs = [
23    "$pulseaudio_dir/include",
24    "$pulseaudio_dir/src/pulse",
25    "$pulseaudio_dir/src",
26    "$pulseaudio_dir",
27    "$pulseaudio_build_path/src",
28    "$pulseaudio_build_path/include",
29    "//third_party/glib/glib",
30    "//third_party/glib",
31  ]
32
33  cflags = [
34    "-Wall",
35    "-Werror",
36    "-Wno-implicit-function-declaration",
37    "-Wno-sign-compare",
38    "-Wno-unused-function",
39    "-DHAVE_CONFIG_H",
40    "-D_GNU_SOURCE",
41  ]
42}
43
44ohos_source_set("pulse_sources") {
45  sources = [
46    "$pulseaudio_dir/src/pulse/channelmap.c",
47    "$pulseaudio_dir/src/pulse/context.c",
48    "$pulseaudio_dir/src/pulse/direction.c",
49    "$pulseaudio_dir/src/pulse/error.c",
50    "$pulseaudio_dir/src/pulse/ext-device-manager.c",
51    "$pulseaudio_dir/src/pulse/ext-device-restore.c",
52    "$pulseaudio_dir/src/pulse/ext-stream-restore.c",
53    "$pulseaudio_dir/src/pulse/format.c",
54    "$pulseaudio_dir/src/pulse/internal.h",
55    "$pulseaudio_dir/src/pulse/introspect.c",
56    "$pulseaudio_dir/src/pulse/mainloop-api.c",
57    "$pulseaudio_dir/src/pulse/mainloop-signal.c",
58    "$pulseaudio_dir/src/pulse/mainloop.c",
59    "$pulseaudio_dir/src/pulse/ohos_pa_volume.c",
60    "$pulseaudio_dir/src/pulse/operation.c",
61    "$pulseaudio_dir/src/pulse/proplist.c",
62    "$pulseaudio_dir/src/pulse/rtclock.c",
63    "$pulseaudio_dir/src/pulse/sample.c",
64    "$pulseaudio_dir/src/pulse/scache.c",
65    "$pulseaudio_dir/src/pulse/stream.c",
66    "$pulseaudio_dir/src/pulse/subscribe.c",
67    "$pulseaudio_dir/src/pulse/thread-mainloop.c",
68    "$pulseaudio_dir/src/pulse/timeval.c",
69    "$pulseaudio_dir/src/pulse/utf8.c",
70    "$pulseaudio_dir/src/pulse/util.c",
71    "$pulseaudio_dir/src/pulse/xmalloc.c",
72  ]
73
74  configs = [ ":pulse_config" ]
75
76  subsystem_name = "multimedia"
77  part_name = "multimedia_audio_framework"
78}
79
80ohos_shared_library("pulse") {
81  deps = [
82    ":pulse_sources",
83    "$pulseaudio_build_path/src:pulsecommon",
84  ]
85
86  subsystem_name = "multimedia"
87  part_name = "multimedia_audio_framework"
88}
89
90ohos_shared_library("pulse-simple") {
91  sources = [ "$pulseaudio_dir/src/pulse/simple.c" ]
92
93  configs = [ ":pulse_config" ]
94
95  deps = [
96    "$pulseaudio_build_path/src:pulsecommon",
97    "$pulseaudio_build_path/src/pulse:pulse",
98  ]
99
100  subsystem_name = "multimedia"
101  part_name = "multimedia_audio_framework"
102}
103
104ohos_shared_library("pulse-mainloop-glib") {
105  sources = [ "$pulseaudio_dir/src/pulse/ohos_glib-mainloop.c" ]
106
107  configs = [ ":pulse_config" ]
108  deps = [
109    "$pulseaudio_build_path/src:pulsecommon",
110    "//third_party/glib:glib",
111  ]
112
113  subsystem_name = "multimedia"
114  part_name = "multimedia_audio_framework"
115}
116