xref: /aosp_15_r20/hardware/interfaces/audio/aidl/default/Android.bp (revision 4d7e907c777eeecc4c5bd7cf640a754fac206ff7)
1package {
2    default_team: "trendy_team_android_media_audio_framework",
3    // See: http://go/android-license-faq
4    // A large-scale-change added 'default_applicable_licenses' to import
5    // all of the 'license_kinds' from "hardware_interfaces_license"
6    // to get the below license kinds:
7    //   SPDX-license-identifier-Apache-2.0
8    default_applicable_licenses: ["hardware_interfaces_license"],
9}
10
11cc_defaults {
12    name: "aidlaudioservice_defaults",
13    vendor: true,
14    shared_libs: [
15        "libalsautilsv2",
16        "libaudio_aidl_conversion_common_ndk",
17        "libaudioaidlcommon",
18        "libaudioutils",
19        "libbase",
20        "libbinder_ndk",
21        "libcutils",
22        "libfmq",
23        "libnbaio_mono",
24        "liblog",
25        "libmedia_helper",
26        "libstagefright_foundation",
27        "libtinyalsav2",
28        "libutils",
29        "libxml2",
30        "android.hardware.common-V2-ndk",
31        "android.hardware.common.fmq-V1-ndk",
32    ],
33    header_libs: [
34        "libaudio_system_headers",
35        "libaudioaidl_headers",
36        "libxsdc-utils",
37    ],
38    cflags: [
39        "-DBACKEND_NDK",
40    ],
41}
42
43cc_library {
44    name: "libaudioserviceexampleimpl",
45    defaults: [
46        "aidlaudioservice_defaults",
47        "latest_android_media_audio_common_types_ndk_shared",
48        "latest_android_hardware_audio_core_ndk_shared",
49        "latest_android_hardware_audio_core_sounddose_ndk_shared",
50        "latest_android_hardware_bluetooth_audio_ndk_shared",
51    ],
52    export_include_dirs: ["include"],
53    srcs: [
54        "AidlConversionXsdc.cpp",
55        "AudioPolicyConfigXmlConverter.cpp",
56        "Bluetooth.cpp",
57        "CapEngineConfigXmlConverter.cpp",
58        "Config.cpp",
59        "Configuration.cpp",
60        "EngineConfigXmlConverter.cpp",
61        "Module.cpp",
62        "ModulePrimary.cpp",
63        "SoundDose.cpp",
64        "Stream.cpp",
65        "Telephony.cpp",
66        "XsdcConversion.cpp",
67        "alsa/Mixer.cpp",
68        "alsa/ModuleAlsa.cpp",
69        "alsa/StreamAlsa.cpp",
70        "alsa/Utils.cpp",
71        "bluetooth/DevicePortProxy.cpp",
72        "bluetooth/ModuleBluetooth.cpp",
73        "bluetooth/StreamBluetooth.cpp",
74        "deprecated/StreamSwitcher.cpp",
75        "primary/PrimaryMixer.cpp",
76        "primary/StreamPrimary.cpp",
77        "r_submix/ModuleRemoteSubmix.cpp",
78        "r_submix/SubmixRoute.cpp",
79        "r_submix/StreamRemoteSubmix.cpp",
80        "stub/DriverStubImpl.cpp",
81        "stub/ModuleStub.cpp",
82        "stub/StreamStub.cpp",
83        "usb/ModuleUsb.cpp",
84        "usb/StreamUsb.cpp",
85        "usb/UsbAlsaMixerControl.cpp",
86    ],
87    generated_sources: [
88        "audio_policy_capengine_configuration_aidl_default",
89        "audio_policy_configuration_aidl_default",
90        "audio_policy_engine_configuration_aidl_default",
91    ],
92    generated_headers: [
93        "audio_policy_capengine_configuration_aidl_default",
94        "audio_policy_configuration_aidl_default",
95        "audio_policy_engine_configuration_aidl_default",
96    ],
97    export_generated_headers: [
98        "audio_policy_capengine_configuration_aidl_default",
99        "audio_policy_configuration_aidl_default",
100        "audio_policy_engine_configuration_aidl_default",
101    ],
102    shared_libs: [
103        "android.hardware.bluetooth.audio-impl",
104        "libaudio_aidl_conversion_common_ndk",
105        "libaudioutils",
106        "libbluetooth_audio_session_aidl",
107        "liblog",
108        "libmedia_helper",
109        "libmediautils_vendor",
110        "libstagefright_foundation",
111    ],
112    export_shared_lib_headers: [
113        "libaudio_aidl_conversion_common_ndk",
114    ],
115    cflags: [
116        "-Wall",
117        "-Wextra",
118        "-Werror",
119        "-Wthread-safety",
120        "-DBACKEND_NDK",
121    ],
122}
123
124cc_binary {
125    name: "android.hardware.audio.service-aidl.example",
126    relative_install_path: "hw",
127    defaults: [
128        "aidlaudioservice_defaults",
129        "latest_android_hardware_audio_core_sounddose_ndk_shared",
130        "latest_android_hardware_audio_core_ndk_shared",
131        "latest_android_hardware_bluetooth_audio_ndk_shared",
132        "latest_android_media_audio_common_types_ndk_shared",
133    ],
134    static_libs: [
135        "libaudioserviceexampleimpl",
136    ],
137    shared_libs: [
138        "android.hardware.bluetooth.audio-impl",
139        "libaudio_aidl_conversion_common_ndk",
140        "libbluetooth_audio_session_aidl",
141        "liblog",
142        "libmedia_helper",
143        "libstagefright_foundation",
144    ],
145    srcs: ["main.cpp"],
146    cflags: [
147        "-Wall",
148        "-Wextra",
149        "-Werror",
150        "-Wthread-safety",
151        "-DBACKEND_NDK",
152    ],
153    installable: false, //installed in apex com.android.hardware.audio
154}
155
156cc_test {
157    name: "audio_policy_config_xml_converter_tests",
158    vendor_available: true,
159    defaults: [
160        "latest_android_media_audio_common_types_ndk_static",
161        "latest_android_hardware_audio_core_ndk_static",
162    ],
163    shared_libs: [
164        "libaudio_aidl_conversion_common_ndk",
165        "libaudioaidlcommon",
166        "libaudioutils",
167        "libbase",
168        "libbinder_ndk",
169        "libcutils",
170        "libfmq",
171        "libmedia_helper",
172        "libstagefright_foundation",
173        "libutils",
174        "libxml2",
175    ],
176    header_libs: [
177        "libaudio_system_headers",
178        "libaudioaidl_headers",
179        "libxsdc-utils",
180    ],
181    generated_sources: [
182        "audio_policy_configuration_aidl_default",
183        "audio_policy_engine_configuration_aidl_default",
184    ],
185    generated_headers: [
186        "audio_policy_configuration_aidl_default",
187        "audio_policy_engine_configuration_aidl_default",
188    ],
189    srcs: [
190        "AudioPolicyConfigXmlConverter.cpp",
191        "tests/AudioPolicyConfigXmlConverterTest.cpp",
192    ],
193    cflags: [
194        "-Wall",
195        "-Wextra",
196        "-Werror",
197        "-Wthread-safety",
198        "-DBACKEND_NDK",
199    ],
200    test_suites: ["general-tests"],
201}
202
203cc_test {
204    name: "audio_alsa_utils_tests",
205    vendor_available: true,
206    defaults: [
207        "latest_android_media_audio_common_types_ndk_static",
208        "latest_android_hardware_audio_core_ndk_static",
209    ],
210    static_libs: [
211        "libalsautilsv2",
212        "libtinyalsav2",
213    ],
214    shared_libs: [
215        "libaudio_aidl_conversion_common_ndk",
216        "libaudioaidlcommon",
217        "libaudioutils",
218        "libbase",
219        "libbinder_ndk",
220        "libcutils",
221        "libfmq",
222        "libmedia_helper",
223        "libstagefright_foundation",
224        "libutils",
225    ],
226    header_libs: [
227        "libaudio_system_headers",
228        "libaudioaidl_headers",
229    ],
230    srcs: [
231        "alsa/Utils.cpp",
232        "tests/AlsaUtilsTest.cpp",
233    ],
234    cflags: [
235        "-Wall",
236        "-Wextra",
237        "-Werror",
238        "-Wthread-safety",
239        "-DBACKEND_NDK",
240    ],
241    test_suites: ["general-tests"],
242}
243
244cc_defaults {
245    name: "aidlaudioeffectservice_defaults",
246    defaults: [
247        "latest_android_media_audio_common_types_ndk_shared",
248        "latest_android_hardware_audio_effect_ndk_shared",
249    ],
250    vendor: true,
251    shared_libs: [
252        "libaudio_aidl_conversion_common_ndk",
253        "libaudioaidlcommon",
254        "libaudioutils",
255        "libbase",
256        "libbinder_ndk",
257        "libcutils",
258        "libfmq",
259        "liblog",
260        "libutils",
261        "android.hardware.common-V2-ndk",
262        "android.hardware.common.fmq-V1-ndk",
263    ],
264    header_libs: [
265        "libaudioaidl_headers",
266        "libaudio_system_headers",
267        "libsystem_headers",
268    ],
269    cflags: [
270        "-Wall",
271        "-Wextra",
272        "-Werror",
273        "-Wthread-safety",
274        "-DBACKEND_NDK",
275    ],
276}
277
278filegroup {
279    name: "effectCommonFile",
280    srcs: [
281        "EffectContext.cpp",
282        "EffectThread.cpp",
283        "EffectImpl.cpp",
284    ],
285}
286
287cc_binary {
288    name: "android.hardware.audio.effect.service-aidl.example",
289    relative_install_path: "hw",
290    defaults: ["aidlaudioeffectservice_defaults"],
291    shared_libs: [
292        "libapexsupport",
293        "libtinyxml2",
294    ],
295    srcs: [
296        "EffectConfig.cpp",
297        "EffectFactory.cpp",
298        "EffectMain.cpp",
299    ],
300    installable: false, //installed in apex com.android.hardware.audio
301}
302
303cc_library_headers {
304    name: "libaudioaidl_headers",
305    export_include_dirs: ["include"],
306    vendor_available: true,
307    host_supported: true,
308}
309
310prebuilt_etc {
311    name: "android.hardware.audio.service-aidl.example.rc",
312    src: "android.hardware.audio.service-aidl.example.rc",
313    installable: false,
314}
315
316prebuilt_etc {
317    name: "android.hardware.audio.service-aidl.xml",
318    src: "android.hardware.audio.service-aidl.xml",
319    sub_dir: "vintf",
320    installable: false,
321}
322