blob: 0d71e49bea43ed34d22b74b0a76574800d4ac394 [file] [log] [blame]
Bob Badour948e6aa2021-02-12 21:02:31 -08001package {
2 // See: http://go/android-license-faq
3 // A large-scale-change added 'default_applicable_licenses' to import
4 // all of the 'license_kinds' from "frameworks_av_license"
5 // to get the below license kinds:
6 // SPDX-license-identifier-Apache-2.0
7 default_applicable_licenses: ["frameworks_av_license"],
8}
9
Steven Moreland25a9e552017-04-17 14:30:39 -070010cc_library_headers {
11 name: "libaudioclient_headers",
12 vendor_available: true,
Jooyung Hane3cf41a2020-04-30 04:22:22 +090013 min_sdk_version: "29",
14
jiabin43810402019-10-24 14:58:31 -070015 header_libs: [
16 "libaudiofoundation_headers",
17 ],
18 export_include_dirs: [
19 "include",
20 ],
21 export_header_lib_headers: [
22 "libaudiofoundation_headers",
23 ],
S Vasudev Prasad43a18892020-05-09 12:52:58 +053024 host_supported: true,
25 target: {
26 darwin: {
27 enabled: false,
28 },
29 },
Steven Moreland25a9e552017-04-17 14:30:39 -070030}
31
Jack Hed92d34e2016-12-08 15:44:14 -080032cc_library_shared {
François Gaffied0ba9ed2018-11-05 11:50:42 +010033 name: "libaudiopolicy",
34 srcs: [
35 "AudioAttributes.cpp",
36 "AudioPolicy.cpp",
37 "AudioProductStrategy.cpp",
François Gaffie4b2018b2018-11-07 11:18:59 +010038 "AudioVolumeGroup.cpp",
François Gaffied0ba9ed2018-11-05 11:50:42 +010039 ],
40 shared_libs: [
Ytai Ben-Tsvi987d12c2020-03-24 17:35:44 -070041 "capture_state_listener-aidl-cpp",
jiabin05b5edd2019-11-04 14:10:42 -080042 "libaudiofoundation",
François Gaffied0ba9ed2018-11-05 11:50:42 +010043 "libaudioutils",
44 "libbinder",
45 "libcutils",
46 "liblog",
47 "libutils",
48 ],
49 cflags: [
50 "-Werror",
51 "-Wall",
52 ],
53 include_dirs: ["system/media/audio_utils/include"],
54 export_include_dirs: ["include"],
Ytai Ben-Tsvi987d12c2020-03-24 17:35:44 -070055 export_shared_lib_headers: [
56 "capture_state_listener-aidl-cpp",
57 ],
François Gaffied0ba9ed2018-11-05 11:50:42 +010058}
59
Ayushi Khopkar8a05eb92021-01-06 15:46:18 +053060cc_library {
Jack Hed92d34e2016-12-08 15:44:14 -080061 name: "libaudioclient",
Ivan Lozanoff6900d2017-08-01 15:47:38 -070062
63 aidl: {
64 export_aidl_headers: true,
65 local_include_dirs: ["aidl"],
66 include_dirs: [
67 "frameworks/av/media/libaudioclient/aidl",
68 ],
69 },
70
Jack Hed92d34e2016-12-08 15:44:14 -080071 srcs: [
Ivan Lozanoff6900d2017-08-01 15:47:38 -070072 // AIDL files for audioclient interfaces
73 // The headers for these interfaces will be available to any modules that
74 // include libaudioclient, at the path "aidl/package/path/BnFoo.h"
jiabinf6eb4c32020-02-25 14:06:25 -080075 ":libaudioclient_aidl_callback",
Dan Willemsenfaeab0f2018-09-14 21:17:46 -070076 ":libaudioclient_aidl_private",
Colin Cross6bf135b2017-11-14 13:05:37 -080077 ":libaudioclient_aidl",
Ivan Lozanoff6900d2017-08-01 15:47:38 -070078
Jack Hed92d34e2016-12-08 15:44:14 -080079 "AudioEffect.cpp",
Jack Hed92d34e2016-12-08 15:44:14 -080080 "AudioRecord.cpp",
81 "AudioSystem.cpp",
82 "AudioTrack.cpp",
83 "AudioTrackShared.cpp",
84 "IAudioFlinger.cpp",
85 "IAudioFlingerClient.cpp",
86 "IAudioPolicyService.cpp",
87 "IAudioPolicyServiceClient.cpp",
Jack Hed92d34e2016-12-08 15:44:14 -080088 "IAudioTrack.cpp",
89 "IEffect.cpp",
90 "IEffectClient.cpp",
91 "ToneGenerator.cpp",
Eric Laurentb5323222017-05-31 15:01:56 -070092 "PlayerBase.cpp",
Mikhail Naganov2996f672019-04-18 12:29:59 -070093 "RecordingActivityTracker.cpp",
Eric Laurentb5323222017-05-31 15:01:56 -070094 "TrackPlayerBase.cpp",
Jack Hed92d34e2016-12-08 15:44:14 -080095 ],
96 shared_libs: [
Ytai Ben-Tsvi85093d52020-03-26 09:41:15 -070097 "capture_state_listener-aidl-cpp",
jiabin43810402019-10-24 14:58:31 -070098 "libaudiofoundation",
Kevin Rocard07be14f2018-01-24 06:14:03 +000099 "libaudioutils",
François Gaffied0ba9ed2018-11-05 11:50:42 +0100100 "libaudiopolicy",
Eric Laurentb5323222017-05-31 15:01:56 -0700101 "libaudiomanager",
Eric Tanace588c2018-09-12 11:44:43 -0700102 "libbinder",
103 "libcutils",
104 "libdl",
105 "liblog",
Ray Essicked304702017-12-12 14:00:57 -0800106 "libmedia_helper",
107 "libmediametrics",
Andy Hung4ef19fa2018-05-15 19:35:29 -0700108 "libmediautils",
Eric Tanace588c2018-09-12 11:44:43 -0700109 "libnblog",
Suren Baghdasaryan7435e7d2018-12-19 17:09:28 -0800110 "libprocessgroup",
Eric Tanace588c2018-09-12 11:44:43 -0700111 "libutils",
jiabinbf6b0ec2019-02-12 12:30:12 -0800112 "libvibrator",
Jack Hed92d34e2016-12-08 15:44:14 -0800113 ],
114 export_shared_lib_headers: ["libbinder"],
Steven Moreland25a9e552017-04-17 14:30:39 -0700115
Marco Nelissena51151a2020-01-07 13:37:47 -0800116 include_dirs: [
117 "frameworks/av/media/libnbaio/include_mono/",
118 ],
119 local_include_dirs: [
120 "include/media", "aidl"
121 ],
Chih-Hung Hsiehffe35582018-09-13 13:59:28 -0700122 header_libs: [
123 "libaudioclient_headers",
124 "libbase_headers",
Marco Nelissen6b285942019-10-21 14:52:30 -0700125 "libmedia_headers",
Chih-Hung Hsiehffe35582018-09-13 13:59:28 -0700126 ],
Steven Moreland25a9e552017-04-17 14:30:39 -0700127 export_header_lib_headers: ["libaudioclient_headers"],
128
Jack Hed92d34e2016-12-08 15:44:14 -0800129 // for memory heap analysis
130 static_libs: [
131 "libc_malloc_debug_backtrace",
Jack Hed92d34e2016-12-08 15:44:14 -0800132 ],
133 cflags: [
Steven Moreland25a9e552017-04-17 14:30:39 -0700134 "-Wall",
Jack Hed92d34e2016-12-08 15:44:14 -0800135 "-Werror",
136 "-Wno-error=deprecated-declarations",
Jack Hed92d34e2016-12-08 15:44:14 -0800137 ],
138 sanitize: {
139 misc_undefined : [
140 "unsigned-integer-overflow",
141 "signed-integer-overflow",
142 ],
143 },
144}
Colin Cross6bf135b2017-11-14 13:05:37 -0800145
146// AIDL interface between libaudioclient and framework.jar
147filegroup {
148 name: "libaudioclient_aidl",
149 srcs: [
150 "aidl/android/media/IPlayer.aidl",
151 ],
Dan Willemsenfaeab0f2018-09-14 21:17:46 -0700152 path: "aidl",
153}
154
155// Used to strip the "aidl/" from the path, so the build system can predict the
156// output filename.
157filegroup {
158 name: "libaudioclient_aidl_private",
159 srcs: [
160 "aidl/android/media/IAudioRecord.aidl",
161 ],
162 path: "aidl",
Colin Cross6bf135b2017-11-14 13:05:37 -0800163}
jiabinf6eb4c32020-02-25 14:06:25 -0800164
165// AIDL interface for audio track callback
166filegroup {
167 name: "libaudioclient_aidl_callback",
168 srcs: [
169 "aidl/android/media/IAudioTrackCallback.aidl",
170 ],
171 path: "aidl",
172}
Ytai Ben-Tsvi987d12c2020-03-24 17:35:44 -0700173
174aidl_interface {
175 name: "capture_state_listener-aidl",
Jiyong Park1f2151f2020-04-13 12:52:14 +0900176 unstable: true,
Ytai Ben-Tsvi987d12c2020-03-24 17:35:44 -0700177 local_include_dir: "aidl",
178 srcs: [
179 "aidl/android/media/ICaptureStateListener.aidl",
180 ],
181}