blob: d1812e61750605453d185bd324edb68f00a18b23 [file] [log] [blame]
Steven Moreland25a9e552017-04-17 14:30:39 -07001cc_library_headers {
2 name: "libaudioclient_headers",
3 vendor_available: true,
jiabinc0106832019-10-24 14:58:31 -07004 header_libs: [
5 "libaudiofoundation_headers",
6 ],
7 export_include_dirs: [
8 "include",
9 ],
10 export_header_lib_headers: [
11 "libaudiofoundation_headers",
12 ],
Steven Moreland25a9e552017-04-17 14:30:39 -070013}
14
Jack Hed92d34e2016-12-08 15:44:14 -080015cc_library_shared {
François Gaffied0ba9ed2018-11-05 11:50:42 +010016 name: "libaudiopolicy",
17 srcs: [
18 "AudioAttributes.cpp",
19 "AudioPolicy.cpp",
20 "AudioProductStrategy.cpp",
François Gaffie4b2018b2018-11-07 11:18:59 +010021 "AudioVolumeGroup.cpp",
François Gaffied0ba9ed2018-11-05 11:50:42 +010022 ],
23 shared_libs: [
jiabin5b781412019-11-04 14:10:42 -080024 "libaudiofoundation",
François Gaffied0ba9ed2018-11-05 11:50:42 +010025 "libaudioutils",
26 "libbinder",
27 "libcutils",
28 "liblog",
29 "libutils",
30 ],
31 cflags: [
32 "-Werror",
33 "-Wall",
34 ],
35 include_dirs: ["system/media/audio_utils/include"],
36 export_include_dirs: ["include"],
37}
38
39cc_library_shared {
Jack Hed92d34e2016-12-08 15:44:14 -080040 name: "libaudioclient",
Ivan Lozanoff6900d2017-08-01 15:47:38 -070041
42 aidl: {
43 export_aidl_headers: true,
44 local_include_dirs: ["aidl"],
45 include_dirs: [
46 "frameworks/av/media/libaudioclient/aidl",
47 ],
48 },
49
Jack Hed92d34e2016-12-08 15:44:14 -080050 srcs: [
Ivan Lozanoff6900d2017-08-01 15:47:38 -070051 // AIDL files for audioclient interfaces
52 // The headers for these interfaces will be available to any modules that
53 // include libaudioclient, at the path "aidl/package/path/BnFoo.h"
Dan Willemsenfaeab0f2018-09-14 21:17:46 -070054 ":libaudioclient_aidl_private",
Colin Cross6bf135b2017-11-14 13:05:37 -080055 ":libaudioclient_aidl",
Ivan Lozanoff6900d2017-08-01 15:47:38 -070056
Jack Hed92d34e2016-12-08 15:44:14 -080057 "AudioEffect.cpp",
Jack Hed92d34e2016-12-08 15:44:14 -080058 "AudioRecord.cpp",
59 "AudioSystem.cpp",
60 "AudioTrack.cpp",
61 "AudioTrackShared.cpp",
62 "IAudioFlinger.cpp",
63 "IAudioFlingerClient.cpp",
64 "IAudioPolicyService.cpp",
65 "IAudioPolicyServiceClient.cpp",
Jack Hed92d34e2016-12-08 15:44:14 -080066 "IAudioTrack.cpp",
67 "IEffect.cpp",
68 "IEffectClient.cpp",
69 "ToneGenerator.cpp",
Eric Laurentb5323222017-05-31 15:01:56 -070070 "PlayerBase.cpp",
Mikhail Naganov2996f672019-04-18 12:29:59 -070071 "RecordingActivityTracker.cpp",
Eric Laurentb5323222017-05-31 15:01:56 -070072 "TrackPlayerBase.cpp",
Jack Hed92d34e2016-12-08 15:44:14 -080073 ],
74 shared_libs: [
jiabinc0106832019-10-24 14:58:31 -070075 "libaudiofoundation",
Kevin Rocard07be14f2018-01-24 06:14:03 +000076 "libaudioutils",
François Gaffied0ba9ed2018-11-05 11:50:42 +010077 "libaudiopolicy",
Eric Laurentb5323222017-05-31 15:01:56 -070078 "libaudiomanager",
Eric Tanace588c2018-09-12 11:44:43 -070079 "libbinder",
80 "libcutils",
81 "libdl",
82 "liblog",
Ray Essicked304702017-12-12 14:00:57 -080083 "libmedia_helper",
84 "libmediametrics",
Andy Hung4ef19fa2018-05-15 19:35:29 -070085 "libmediautils",
Eric Tanace588c2018-09-12 11:44:43 -070086 "libnblog",
Suren Baghdasaryan7435e7d2018-12-19 17:09:28 -080087 "libprocessgroup",
Eric Tanace588c2018-09-12 11:44:43 -070088 "libutils",
jiabinbf6b0ec2019-02-12 12:30:12 -080089 "libvibrator",
Jack Hed92d34e2016-12-08 15:44:14 -080090 ],
91 export_shared_lib_headers: ["libbinder"],
Steven Moreland25a9e552017-04-17 14:30:39 -070092
Ivan Lozano8cf3a072017-08-09 09:01:33 -070093 local_include_dirs: ["include/media", "aidl"],
Chih-Hung Hsiehffe35582018-09-13 13:59:28 -070094 header_libs: [
95 "libaudioclient_headers",
96 "libbase_headers",
Marco Nelissen6b285942019-10-21 14:52:30 -070097 "libmedia_headers",
Chih-Hung Hsiehffe35582018-09-13 13:59:28 -070098 ],
Steven Moreland25a9e552017-04-17 14:30:39 -070099 export_header_lib_headers: ["libaudioclient_headers"],
100
Jack Hed92d34e2016-12-08 15:44:14 -0800101 // for memory heap analysis
102 static_libs: [
103 "libc_malloc_debug_backtrace",
Jack Hed92d34e2016-12-08 15:44:14 -0800104 ],
105 cflags: [
Steven Moreland25a9e552017-04-17 14:30:39 -0700106 "-Wall",
Jack Hed92d34e2016-12-08 15:44:14 -0800107 "-Werror",
108 "-Wno-error=deprecated-declarations",
Jack Hed92d34e2016-12-08 15:44:14 -0800109 ],
110 sanitize: {
111 misc_undefined : [
112 "unsigned-integer-overflow",
113 "signed-integer-overflow",
114 ],
115 },
116}
Colin Cross6bf135b2017-11-14 13:05:37 -0800117
118// AIDL interface between libaudioclient and framework.jar
119filegroup {
120 name: "libaudioclient_aidl",
121 srcs: [
122 "aidl/android/media/IPlayer.aidl",
123 ],
Dan Willemsenfaeab0f2018-09-14 21:17:46 -0700124 path: "aidl",
125}
126
127// Used to strip the "aidl/" from the path, so the build system can predict the
128// output filename.
129filegroup {
130 name: "libaudioclient_aidl_private",
131 srcs: [
132 "aidl/android/media/IAudioRecord.aidl",
133 ],
134 path: "aidl",
Colin Cross6bf135b2017-11-14 13:05:37 -0800135}