blob: 32904bb20185270a0c96f139bf861ceb6837f471 [file] [log] [blame]
Steven Moreland25a9e552017-04-17 14:30:39 -07001cc_library_headers {
2 name: "libaudioclient_headers",
3 vendor_available: true,
4 export_include_dirs: ["include"],
5}
6
Jack Hed92d34e2016-12-08 15:44:14 -08007cc_library_shared {
François Gaffied0ba9ed2018-11-05 11:50:42 +01008 name: "libaudiopolicy",
9 srcs: [
10 "AudioAttributes.cpp",
11 "AudioPolicy.cpp",
12 "AudioProductStrategy.cpp",
François Gaffie4b2018b2018-11-07 11:18:59 +010013 "AudioVolumeGroup.cpp",
François Gaffied0ba9ed2018-11-05 11:50:42 +010014 ],
15 shared_libs: [
16 "libaudioutils",
17 "libbinder",
18 "libcutils",
19 "liblog",
20 "libutils",
21 ],
22 cflags: [
23 "-Werror",
24 "-Wall",
25 ],
26 include_dirs: ["system/media/audio_utils/include"],
27 export_include_dirs: ["include"],
28}
29
30cc_library_shared {
Jack Hed92d34e2016-12-08 15:44:14 -080031 name: "libaudioclient",
Ivan Lozanoff6900d2017-08-01 15:47:38 -070032
33 aidl: {
34 export_aidl_headers: true,
35 local_include_dirs: ["aidl"],
36 include_dirs: [
37 "frameworks/av/media/libaudioclient/aidl",
38 ],
39 },
40
Jack Hed92d34e2016-12-08 15:44:14 -080041 srcs: [
Ivan Lozanoff6900d2017-08-01 15:47:38 -070042 // AIDL files for audioclient interfaces
43 // The headers for these interfaces will be available to any modules that
44 // include libaudioclient, at the path "aidl/package/path/BnFoo.h"
Dan Willemsenfaeab0f2018-09-14 21:17:46 -070045 ":libaudioclient_aidl_private",
Colin Cross6bf135b2017-11-14 13:05:37 -080046 ":libaudioclient_aidl",
Ivan Lozanoff6900d2017-08-01 15:47:38 -070047
Jack Hed92d34e2016-12-08 15:44:14 -080048 "AudioEffect.cpp",
Jack Hed92d34e2016-12-08 15:44:14 -080049 "AudioRecord.cpp",
50 "AudioSystem.cpp",
51 "AudioTrack.cpp",
52 "AudioTrackShared.cpp",
53 "IAudioFlinger.cpp",
54 "IAudioFlingerClient.cpp",
55 "IAudioPolicyService.cpp",
56 "IAudioPolicyServiceClient.cpp",
Jack Hed92d34e2016-12-08 15:44:14 -080057 "IAudioTrack.cpp",
58 "IEffect.cpp",
59 "IEffectClient.cpp",
60 "ToneGenerator.cpp",
Eric Laurentb5323222017-05-31 15:01:56 -070061 "PlayerBase.cpp",
Mikhail Naganov2996f672019-04-18 12:29:59 -070062 "RecordingActivityTracker.cpp",
Eric Laurentb5323222017-05-31 15:01:56 -070063 "TrackPlayerBase.cpp",
Jack Hed92d34e2016-12-08 15:44:14 -080064 ],
65 shared_libs: [
Kevin Rocard07be14f2018-01-24 06:14:03 +000066 "libaudioutils",
François Gaffied0ba9ed2018-11-05 11:50:42 +010067 "libaudiopolicy",
Eric Laurentb5323222017-05-31 15:01:56 -070068 "libaudiomanager",
Eric Tanace588c2018-09-12 11:44:43 -070069 "libbinder",
70 "libcutils",
71 "libdl",
72 "liblog",
Ray Essicked304702017-12-12 14:00:57 -080073 "libmedia_helper",
74 "libmediametrics",
Andy Hung4ef19fa2018-05-15 19:35:29 -070075 "libmediautils",
Eric Tanace588c2018-09-12 11:44:43 -070076 "libnblog",
Suren Baghdasaryan7435e7d2018-12-19 17:09:28 -080077 "libprocessgroup",
Eric Tanace588c2018-09-12 11:44:43 -070078 "libutils",
jiabinbf6b0ec2019-02-12 12:30:12 -080079 "libvibrator",
Jack Hed92d34e2016-12-08 15:44:14 -080080 ],
81 export_shared_lib_headers: ["libbinder"],
Steven Moreland25a9e552017-04-17 14:30:39 -070082
Ivan Lozano8cf3a072017-08-09 09:01:33 -070083 local_include_dirs: ["include/media", "aidl"],
Chih-Hung Hsiehffe35582018-09-13 13:59:28 -070084 header_libs: [
85 "libaudioclient_headers",
86 "libbase_headers",
Marco Nelissen6b285942019-10-21 14:52:30 -070087 "libmedia_headers",
Chih-Hung Hsiehffe35582018-09-13 13:59:28 -070088 ],
Steven Moreland25a9e552017-04-17 14:30:39 -070089 export_header_lib_headers: ["libaudioclient_headers"],
90
Jack Hed92d34e2016-12-08 15:44:14 -080091 // for memory heap analysis
92 static_libs: [
93 "libc_malloc_debug_backtrace",
Jack Hed92d34e2016-12-08 15:44:14 -080094 ],
95 cflags: [
Steven Moreland25a9e552017-04-17 14:30:39 -070096 "-Wall",
Jack Hed92d34e2016-12-08 15:44:14 -080097 "-Werror",
98 "-Wno-error=deprecated-declarations",
Jack Hed92d34e2016-12-08 15:44:14 -080099 ],
100 sanitize: {
101 misc_undefined : [
102 "unsigned-integer-overflow",
103 "signed-integer-overflow",
104 ],
105 },
106}
Colin Cross6bf135b2017-11-14 13:05:37 -0800107
108// AIDL interface between libaudioclient and framework.jar
109filegroup {
110 name: "libaudioclient_aidl",
111 srcs: [
112 "aidl/android/media/IPlayer.aidl",
113 ],
Dan Willemsenfaeab0f2018-09-14 21:17:46 -0700114 path: "aidl",
115}
116
117// Used to strip the "aidl/" from the path, so the build system can predict the
118// output filename.
119filegroup {
120 name: "libaudioclient_aidl_private",
121 srcs: [
122 "aidl/android/media/IAudioRecord.aidl",
123 ],
124 path: "aidl",
Colin Cross6bf135b2017-11-14 13:05:37 -0800125}