blob: f300589c9ec988fbde9d5a68557d0e2480091194 [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: [
jiabin5b781412019-11-04 14:10:42 -080016 "libaudiofoundation",
François Gaffied0ba9ed2018-11-05 11:50:42 +010017 "libaudioutils",
18 "libbinder",
19 "libcutils",
20 "liblog",
21 "libutils",
22 ],
23 cflags: [
24 "-Werror",
25 "-Wall",
26 ],
27 include_dirs: ["system/media/audio_utils/include"],
28 export_include_dirs: ["include"],
29}
30
31cc_library_shared {
Jack Hed92d34e2016-12-08 15:44:14 -080032 name: "libaudioclient",
Ivan Lozanoff6900d2017-08-01 15:47:38 -070033
34 aidl: {
35 export_aidl_headers: true,
36 local_include_dirs: ["aidl"],
37 include_dirs: [
38 "frameworks/av/media/libaudioclient/aidl",
39 ],
40 },
41
Jack Hed92d34e2016-12-08 15:44:14 -080042 srcs: [
Ivan Lozanoff6900d2017-08-01 15:47:38 -070043 // AIDL files for audioclient interfaces
44 // The headers for these interfaces will be available to any modules that
45 // include libaudioclient, at the path "aidl/package/path/BnFoo.h"
Dan Willemsenfaeab0f2018-09-14 21:17:46 -070046 ":libaudioclient_aidl_private",
Colin Cross6bf135b2017-11-14 13:05:37 -080047 ":libaudioclient_aidl",
Ivan Lozanoff6900d2017-08-01 15:47:38 -070048
Jack Hed92d34e2016-12-08 15:44:14 -080049 "AudioEffect.cpp",
Jack Hed92d34e2016-12-08 15:44:14 -080050 "AudioRecord.cpp",
51 "AudioSystem.cpp",
52 "AudioTrack.cpp",
53 "AudioTrackShared.cpp",
54 "IAudioFlinger.cpp",
55 "IAudioFlingerClient.cpp",
56 "IAudioPolicyService.cpp",
57 "IAudioPolicyServiceClient.cpp",
Jack Hed92d34e2016-12-08 15:44:14 -080058 "IAudioTrack.cpp",
59 "IEffect.cpp",
60 "IEffectClient.cpp",
61 "ToneGenerator.cpp",
Eric Laurentb5323222017-05-31 15:01:56 -070062 "PlayerBase.cpp",
Mikhail Naganov2996f672019-04-18 12:29:59 -070063 "RecordingActivityTracker.cpp",
Eric Laurentb5323222017-05-31 15:01:56 -070064 "TrackPlayerBase.cpp",
Jack Hed92d34e2016-12-08 15:44:14 -080065 ],
66 shared_libs: [
Kevin Rocard07be14f2018-01-24 06:14:03 +000067 "libaudioutils",
François Gaffied0ba9ed2018-11-05 11:50:42 +010068 "libaudiopolicy",
Eric Laurentb5323222017-05-31 15:01:56 -070069 "libaudiomanager",
Eric Tanace588c2018-09-12 11:44:43 -070070 "libbinder",
71 "libcutils",
72 "libdl",
73 "liblog",
Ray Essicked304702017-12-12 14:00:57 -080074 "libmedia_helper",
75 "libmediametrics",
Andy Hung4ef19fa2018-05-15 19:35:29 -070076 "libmediautils",
Eric Tanace588c2018-09-12 11:44:43 -070077 "libnblog",
Suren Baghdasaryan7435e7d2018-12-19 17:09:28 -080078 "libprocessgroup",
Eric Tanace588c2018-09-12 11:44:43 -070079 "libutils",
jiabinbf6b0ec2019-02-12 12:30:12 -080080 "libvibrator",
Jack Hed92d34e2016-12-08 15:44:14 -080081 ],
82 export_shared_lib_headers: ["libbinder"],
Steven Moreland25a9e552017-04-17 14:30:39 -070083
Ivan Lozano8cf3a072017-08-09 09:01:33 -070084 local_include_dirs: ["include/media", "aidl"],
Chih-Hung Hsiehffe35582018-09-13 13:59:28 -070085 header_libs: [
86 "libaudioclient_headers",
87 "libbase_headers",
Marco Nelissen6b285942019-10-21 14:52:30 -070088 "libmedia_headers",
Chih-Hung Hsiehffe35582018-09-13 13:59:28 -070089 ],
Steven Moreland25a9e552017-04-17 14:30:39 -070090 export_header_lib_headers: ["libaudioclient_headers"],
91
Jack Hed92d34e2016-12-08 15:44:14 -080092 // for memory heap analysis
93 static_libs: [
94 "libc_malloc_debug_backtrace",
Jack Hed92d34e2016-12-08 15:44:14 -080095 ],
96 cflags: [
Steven Moreland25a9e552017-04-17 14:30:39 -070097 "-Wall",
Jack Hed92d34e2016-12-08 15:44:14 -080098 "-Werror",
99 "-Wno-error=deprecated-declarations",
Jack Hed92d34e2016-12-08 15:44:14 -0800100 ],
101 sanitize: {
102 misc_undefined : [
103 "unsigned-integer-overflow",
104 "signed-integer-overflow",
105 ],
106 },
107}
Colin Cross6bf135b2017-11-14 13:05:37 -0800108
109// AIDL interface between libaudioclient and framework.jar
110filegroup {
111 name: "libaudioclient_aidl",
112 srcs: [
113 "aidl/android/media/IPlayer.aidl",
114 ],
Dan Willemsenfaeab0f2018-09-14 21:17:46 -0700115 path: "aidl",
116}
117
118// Used to strip the "aidl/" from the path, so the build system can predict the
119// output filename.
120filegroup {
121 name: "libaudioclient_aidl_private",
122 srcs: [
123 "aidl/android/media/IAudioRecord.aidl",
124 ],
125 path: "aidl",
Colin Cross6bf135b2017-11-14 13:05:37 -0800126}