blob: b9cfc9c6cf82cade1d45694f51fcaa53e8ea85ce [file] [log] [blame]
Steven Moreland25a9e552017-04-17 14:30:39 -07001cc_library_headers {
2 name: "libaudioclient_headers",
3 vendor_available: true,
Jooyung Hane3cf41a2020-04-30 04:22:22 +09004 min_sdk_version: "29",
5
jiabin43810402019-10-24 14:58:31 -07006 header_libs: [
7 "libaudiofoundation_headers",
8 ],
9 export_include_dirs: [
10 "include",
11 ],
12 export_header_lib_headers: [
13 "libaudiofoundation_headers",
14 ],
S Vasudev Prasad43a18892020-05-09 12:52:58 +053015 host_supported: true,
16 target: {
17 darwin: {
18 enabled: false,
19 },
20 },
Steven Moreland25a9e552017-04-17 14:30:39 -070021}
22
Jack Hed92d34e2016-12-08 15:44:14 -080023cc_library_shared {
François Gaffied0ba9ed2018-11-05 11:50:42 +010024 name: "libaudiopolicy",
25 srcs: [
26 "AudioAttributes.cpp",
27 "AudioPolicy.cpp",
28 "AudioProductStrategy.cpp",
François Gaffie4b2018b2018-11-07 11:18:59 +010029 "AudioVolumeGroup.cpp",
François Gaffied0ba9ed2018-11-05 11:50:42 +010030 ],
31 shared_libs: [
Ytai Ben-Tsvi987d12c2020-03-24 17:35:44 -070032 "capture_state_listener-aidl-cpp",
jiabin05b5edd2019-11-04 14:10:42 -080033 "libaudiofoundation",
François Gaffied0ba9ed2018-11-05 11:50:42 +010034 "libaudioutils",
35 "libbinder",
36 "libcutils",
37 "liblog",
38 "libutils",
39 ],
40 cflags: [
41 "-Werror",
42 "-Wall",
43 ],
44 include_dirs: ["system/media/audio_utils/include"],
45 export_include_dirs: ["include"],
Ytai Ben-Tsvi987d12c2020-03-24 17:35:44 -070046 export_shared_lib_headers: [
47 "capture_state_listener-aidl-cpp",
48 ],
François Gaffied0ba9ed2018-11-05 11:50:42 +010049}
50
Ayushi Khopkar8a05eb92021-01-06 15:46:18 +053051cc_library {
Jack Hed92d34e2016-12-08 15:44:14 -080052 name: "libaudioclient",
Ivan Lozanoff6900d2017-08-01 15:47:38 -070053
54 aidl: {
55 export_aidl_headers: true,
56 local_include_dirs: ["aidl"],
57 include_dirs: [
58 "frameworks/av/media/libaudioclient/aidl",
59 ],
60 },
61
Jack Hed92d34e2016-12-08 15:44:14 -080062 srcs: [
Ivan Lozanoff6900d2017-08-01 15:47:38 -070063 // AIDL files for audioclient interfaces
64 // The headers for these interfaces will be available to any modules that
65 // include libaudioclient, at the path "aidl/package/path/BnFoo.h"
jiabinf6eb4c32020-02-25 14:06:25 -080066 ":libaudioclient_aidl_callback",
Dan Willemsenfaeab0f2018-09-14 21:17:46 -070067 ":libaudioclient_aidl_private",
Colin Cross6bf135b2017-11-14 13:05:37 -080068 ":libaudioclient_aidl",
Ivan Lozanoff6900d2017-08-01 15:47:38 -070069
Jack Hed92d34e2016-12-08 15:44:14 -080070 "AudioEffect.cpp",
Jack Hed92d34e2016-12-08 15:44:14 -080071 "AudioRecord.cpp",
Eric Laurent2a451152020-10-07 13:48:21 -070072 "AudioSanitizer.cpp",
Jack Hed92d34e2016-12-08 15:44:14 -080073 "AudioSystem.cpp",
74 "AudioTrack.cpp",
75 "AudioTrackShared.cpp",
76 "IAudioFlinger.cpp",
77 "IAudioFlingerClient.cpp",
78 "IAudioPolicyService.cpp",
79 "IAudioPolicyServiceClient.cpp",
Jack Hed92d34e2016-12-08 15:44:14 -080080 "IAudioTrack.cpp",
81 "IEffect.cpp",
82 "IEffectClient.cpp",
83 "ToneGenerator.cpp",
Eric Laurentb5323222017-05-31 15:01:56 -070084 "PlayerBase.cpp",
Mikhail Naganov2996f672019-04-18 12:29:59 -070085 "RecordingActivityTracker.cpp",
Eric Laurentb5323222017-05-31 15:01:56 -070086 "TrackPlayerBase.cpp",
Jack Hed92d34e2016-12-08 15:44:14 -080087 ],
88 shared_libs: [
Ytai Ben-Tsvi85093d52020-03-26 09:41:15 -070089 "capture_state_listener-aidl-cpp",
jiabin43810402019-10-24 14:58:31 -070090 "libaudiofoundation",
Kevin Rocard07be14f2018-01-24 06:14:03 +000091 "libaudioutils",
François Gaffied0ba9ed2018-11-05 11:50:42 +010092 "libaudiopolicy",
Eric Laurentb5323222017-05-31 15:01:56 -070093 "libaudiomanager",
Eric Tanace588c2018-09-12 11:44:43 -070094 "libbinder",
95 "libcutils",
96 "libdl",
97 "liblog",
Ray Essicked304702017-12-12 14:00:57 -080098 "libmedia_helper",
99 "libmediametrics",
Andy Hung4ef19fa2018-05-15 19:35:29 -0700100 "libmediautils",
Eric Tanace588c2018-09-12 11:44:43 -0700101 "libnblog",
Suren Baghdasaryan7435e7d2018-12-19 17:09:28 -0800102 "libprocessgroup",
Eric Tanace588c2018-09-12 11:44:43 -0700103 "libutils",
jiabinbf6b0ec2019-02-12 12:30:12 -0800104 "libvibrator",
Jack Hed92d34e2016-12-08 15:44:14 -0800105 ],
106 export_shared_lib_headers: ["libbinder"],
Steven Moreland25a9e552017-04-17 14:30:39 -0700107
Marco Nelissena51151a2020-01-07 13:37:47 -0800108 include_dirs: [
109 "frameworks/av/media/libnbaio/include_mono/",
110 ],
111 local_include_dirs: [
112 "include/media", "aidl"
113 ],
Chih-Hung Hsiehffe35582018-09-13 13:59:28 -0700114 header_libs: [
115 "libaudioclient_headers",
116 "libbase_headers",
Marco Nelissen6b285942019-10-21 14:52:30 -0700117 "libmedia_headers",
Chih-Hung Hsiehffe35582018-09-13 13:59:28 -0700118 ],
Steven Moreland25a9e552017-04-17 14:30:39 -0700119 export_header_lib_headers: ["libaudioclient_headers"],
120
Jack Hed92d34e2016-12-08 15:44:14 -0800121 // for memory heap analysis
122 static_libs: [
123 "libc_malloc_debug_backtrace",
Jack Hed92d34e2016-12-08 15:44:14 -0800124 ],
125 cflags: [
Steven Moreland25a9e552017-04-17 14:30:39 -0700126 "-Wall",
Jack Hed92d34e2016-12-08 15:44:14 -0800127 "-Werror",
128 "-Wno-error=deprecated-declarations",
Jack Hed92d34e2016-12-08 15:44:14 -0800129 ],
130 sanitize: {
131 misc_undefined : [
132 "unsigned-integer-overflow",
133 "signed-integer-overflow",
134 ],
135 },
136}
Colin Cross6bf135b2017-11-14 13:05:37 -0800137
138// AIDL interface between libaudioclient and framework.jar
139filegroup {
140 name: "libaudioclient_aidl",
141 srcs: [
142 "aidl/android/media/IPlayer.aidl",
143 ],
Dan Willemsenfaeab0f2018-09-14 21:17:46 -0700144 path: "aidl",
145}
146
147// Used to strip the "aidl/" from the path, so the build system can predict the
148// output filename.
149filegroup {
150 name: "libaudioclient_aidl_private",
151 srcs: [
152 "aidl/android/media/IAudioRecord.aidl",
153 ],
154 path: "aidl",
Colin Cross6bf135b2017-11-14 13:05:37 -0800155}
jiabinf6eb4c32020-02-25 14:06:25 -0800156
157// AIDL interface for audio track callback
158filegroup {
159 name: "libaudioclient_aidl_callback",
160 srcs: [
161 "aidl/android/media/IAudioTrackCallback.aidl",
162 ],
163 path: "aidl",
164}
Ytai Ben-Tsvi987d12c2020-03-24 17:35:44 -0700165
166aidl_interface {
167 name: "capture_state_listener-aidl",
Jiyong Park1f2151f2020-04-13 12:52:14 +0900168 unstable: true,
Ytai Ben-Tsvi987d12c2020-03-24 17:35:44 -0700169 local_include_dir: "aidl",
170 srcs: [
171 "aidl/android/media/ICaptureStateListener.aidl",
172 ],
173}