blob: 0899441c4ee221be8661b59f9df9feb3bca10457 [file] [log] [blame]
Bob Badourb224b362021-02-12 20:13:01 -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 "hardware_interfaces_license"
5 // to get the below license kinds:
6 // SPDX-license-identifier-Apache-2.0
7 default_applicable_licenses: ["hardware_interfaces_license"],
8}
9
Jakub Pawlowski964f3232021-02-02 15:11:39 +010010cc_library_shared {
11 name: "libbluetooth_audio_session",
12 defaults: ["hidl_defaults"],
13 vendor: true,
14 srcs: [
15 "session/BluetoothAudioSession.cpp",
Jakub Pawlowski3c8dc612021-02-03 20:43:20 +010016 "session/BluetoothAudioSession_2_1.cpp",
Jakub Pawlowski964f3232021-02-02 15:11:39 +010017 "session/BluetoothAudioSupportedCodecsDB.cpp",
Jakub Pawlowski3c8dc612021-02-03 20:43:20 +010018 "session/BluetoothAudioSupportedCodecsDB_2_1.cpp",
Jakub Pawlowski964f3232021-02-02 15:11:39 +010019 ],
20 export_include_dirs: ["session/"],
21 header_libs: ["libhardware_headers"],
22 shared_libs: [
Jakub Pawlowski8d87eb72021-12-06 15:22:03 +010023 "android.hardware.audio.common@5.0",
Jakub Pawlowski964f3232021-02-02 15:11:39 +010024 "android.hardware.bluetooth.audio@2.0",
Jakub Pawlowski3c8dc612021-02-03 20:43:20 +010025 "android.hardware.bluetooth.audio@2.1",
Jakub Pawlowski964f3232021-02-02 15:11:39 +010026 "libbase",
27 "libcutils",
28 "libfmq",
29 "libhidlbase",
30 "liblog",
31 "libutils",
Josh Wu20bac522021-12-29 23:52:39 -080032 "libbluetooth_audio_session_aidl",
33 ],
34}
35
36cc_library_shared {
37 name: "libbluetooth_audio_session_aidl",
38 vendor: true,
Yung Ti Sufefceb12023-08-22 09:29:06 +000039 host_supported: true,
Josh Wu20bac522021-12-29 23:52:39 -080040 srcs: [
41 "aidl_session/BluetoothAudioCodecs.cpp",
42 "aidl_session/BluetoothAudioSession.cpp",
43 "aidl_session/HidlToAidlMiddleware.cpp",
shihchienc8ed901a2022-09-06 08:44:44 +000044 "aidl_session/BluetoothLeAudioCodecsProvider.cpp",
Bao Do2fa1ab42024-01-29 17:50:34 +080045 "aidl_session/BluetoothHfpCodecsProvider.cpp",
Bao Dofbc99e02023-11-15 03:21:03 +000046 "aidl_session/BluetoothLeAudioAseConfigurationSettingProvider.cpp",
Josh Wu20bac522021-12-29 23:52:39 -080047 ],
48 export_include_dirs: ["aidl_session/"],
shihchienc8ed901a2022-09-06 08:44:44 +000049 header_libs: [
50 "libhardware_headers",
51 "libxsdc-utils",
52 ],
Shunkai Yao195d3d62023-10-10 19:26:07 +000053 defaults: [
54 "latest_android_hardware_bluetooth_audio_ndk_shared",
55 ],
Josh Wu20bac522021-12-29 23:52:39 -080056 shared_libs: [
57 "android.hardware.bluetooth.audio@2.0",
58 "android.hardware.bluetooth.audio@2.1",
Josh Wu20bac522021-12-29 23:52:39 -080059 "libbase",
60 "libcutils",
61 "libbinder_ndk",
62 "libfmq",
63 "liblog",
Josh Wu20bac522021-12-29 23:52:39 -080064 "libhidlbase",
shihchienc8ed901a2022-09-06 08:44:44 +000065 "libxml2",
Bao Dofbc99e02023-11-15 03:21:03 +000066 "libflatbuffers-cpp",
Limon Miab58cee42023-12-01 12:16:00 +000067 "server_configurable_flags",
68 ],
69 static_libs: [
70 "btaudiohal_flags_c_lib",
Jakub Pawlowski964f3232021-02-02 15:11:39 +010071 ],
Bao Do2fa1ab42024-01-29 17:50:34 +080072 generated_sources: [
73 "le_audio_codec_capabilities",
74 "hfp_codec_capabilities",
75 ],
Bao Dofbc99e02023-11-15 03:21:03 +000076 generated_headers: [
77 "le_audio_codec_capabilities",
Bao Do2fa1ab42024-01-29 17:50:34 +080078 "hfp_codec_capabilities",
Bao Dofbc99e02023-11-15 03:21:03 +000079 "AIDLLeAudioSetConfigSchemas_h",
80 ],
Bao Dobe994192023-11-15 03:34:00 +000081 required: [
82 "aidl_audio_set_configurations_bfbs",
83 "aidl_audio_set_configurations_json",
84 "aidl_audio_set_scenarios_bfbs",
85 "aidl_audio_set_scenarios_json",
Bao Do2fa1ab42024-01-29 17:50:34 +080086 "hfp_codec_capabilities_xml",
Bao Dobe994192023-11-15 03:34:00 +000087 ],
shihchienc8ed901a2022-09-06 08:44:44 +000088}
89
Bao Do2fa1ab42024-01-29 17:50:34 +080090// TODO: Write test for BluetoothHfpCodecsProvider.cpp
91
shihchiencd7f565a2022-10-14 13:45:37 +000092cc_test {
93 name: "BluetoothLeAudioCodecsProviderTest",
94 srcs: [
95 "aidl_session/BluetoothLeAudioCodecsProvider.cpp",
96 "aidl_session/BluetoothLeAudioCodecsProviderTest.cpp",
97 ],
98 header_libs: [
99 "libxsdc-utils",
100 ],
101 shared_libs: [
102 "libbase",
103 "libbinder_ndk",
Jakub Rotkiewicze70014d2023-08-07 12:49:46 +0000104 "android.hardware.bluetooth.audio-V4-ndk",
shihchiencd7f565a2022-10-14 13:45:37 +0000105 "libxml2",
106 ],
107 test_suites: [
108 "general-tests",
109 ],
110 test_options: {
111 unit_test: false,
112 },
113 generated_sources: ["le_audio_codec_capabilities"],
114 generated_headers: ["le_audio_codec_capabilities"],
115}
116
shihchienc8ed901a2022-09-06 08:44:44 +0000117xsd_config {
118 name: "le_audio_codec_capabilities",
119 srcs: ["le_audio_codec_capabilities/le_audio_codec_capabilities.xsd"],
120 package_name: "aidl.android.hardware.bluetooth.audio.setting",
121 api_dir: "le_audio_codec_capabilities/schema",
Jooyung Han16d5af62023-05-22 16:36:26 +0900122 root_elements: ["leAudioOffloadSetting"],
Jakub Pawlowski964f3232021-02-02 15:11:39 +0100123}
Bao Dofbc99e02023-11-15 03:21:03 +0000124
Bao Do2fa1ab42024-01-29 17:50:34 +0800125xsd_config {
126 name: "hfp_codec_capabilities",
127 srcs: ["hfp_codec_capabilities/hfp_codec_capabilities.xsd"],
128 package_name: "aidl.android.hardware.bluetooth.audio.hfp.setting",
129 api_dir: "hfp_codec_capabilities/schema",
130 root_elements: ["hfpOffloadSetting"],
131}
132
Bao Dofbc99e02023-11-15 03:21:03 +0000133genrule {
134 name: "AIDLLeAudioSetConfigSchemas_h",
135 tools: [
136 "flatc",
137 ],
138 cmd: "$(location flatc) -I hardware/interfaces/bluetooth/audio/utils/ -o $(genDir) --cpp $(in) ",
139 srcs: [
140 "le_audio_configuration_set/audio_set_configurations.fbs",
141 "le_audio_configuration_set/audio_set_scenarios.fbs",
142 ],
143 out: [
144 "audio_set_configurations_generated.h",
145 "audio_set_scenarios_generated.h",
146 ],
147}
148
149// Binary generation
150genrule {
151 name: "AIDLLeAudioSetScenariosSchema_bfbs",
152 tools: [
153 "flatc",
154 ],
155 cmd: "$(location flatc) -I hardware/interfaces/bluetooth/audio/utils/ -b --schema -o $(genDir) $(in) ",
156 srcs: [
157 "le_audio_configuration_set/audio_set_scenarios.fbs",
158 ],
159 out: [
160 "audio_set_scenarios.bfbs",
161 ],
162}
163
164genrule {
165 name: "AIDLLeAudioSetConfigsSchema_bfbs",
166 tools: [
167 "flatc",
168 ],
169 cmd: "$(location flatc) -I hardware/interfaces/bluetooth/audio/utils/ -b --schema -o $(genDir) $(in) ",
170 srcs: [
171 "le_audio_configuration_set/audio_set_configurations.fbs",
172 ],
173 out: [
174 "audio_set_configurations.bfbs",
175 ],
176}
177
178// Add to prebuilt etc
179prebuilt_etc {
180 name: "aidl_audio_set_scenarios_bfbs",
181 src: ":AIDLLeAudioSetScenariosSchema_bfbs",
182 filename: "aidl_audio_set_scenarios.bfbs",
183 sub_dir: "aidl/le_audio",
Bao Dobe994192023-11-15 03:34:00 +0000184 vendor: true,
Bao Dofbc99e02023-11-15 03:21:03 +0000185}
186
187prebuilt_etc {
188 name: "aidl_audio_set_scenarios_json",
189 src: "le_audio_configuration_set/audio_set_scenarios.json",
190 filename: "aidl_audio_set_scenarios.json",
191 sub_dir: "aidl/le_audio",
Bao Dobe994192023-11-15 03:34:00 +0000192 vendor: true,
Bao Dofbc99e02023-11-15 03:21:03 +0000193}
194
195prebuilt_etc {
Bao Do2fa1ab42024-01-29 17:50:34 +0800196 name: "hfp_codec_capabilities_xml",
197 src: "hfp_codec_capabilities/hfp_codec_capabilities.xml",
198 filename: "hfp_codec_capabilities.xml",
199 sub_dir: "aidl/hfp",
200 vendor: true,
201}
202
203prebuilt_etc {
Bao Dofbc99e02023-11-15 03:21:03 +0000204 name: "aidl_audio_set_configurations_bfbs",
205 src: ":AIDLLeAudioSetConfigsSchema_bfbs",
206 filename: "aidl_audio_set_configurations.bfbs",
207 sub_dir: "aidl/le_audio",
Bao Dobe994192023-11-15 03:34:00 +0000208 vendor: true,
Bao Dofbc99e02023-11-15 03:21:03 +0000209}
210
211prebuilt_etc {
212 name: "aidl_audio_set_configurations_json",
213 src: "le_audio_configuration_set/audio_set_configurations.json",
214 filename: "aidl_audio_set_configurations.json",
215 sub_dir: "aidl/le_audio",
Bao Dobe994192023-11-15 03:34:00 +0000216 vendor: true,
Bao Dofbc99e02023-11-15 03:21:03 +0000217}