blob: f5f8163a921abb64b9e9c9682c5020e9b7ec9c4e [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 Dofbc99e02023-11-15 03:21:03 +000045 "aidl_session/BluetoothLeAudioAseConfigurationSettingProvider.cpp",
Josh Wu20bac522021-12-29 23:52:39 -080046 ],
47 export_include_dirs: ["aidl_session/"],
shihchienc8ed901a2022-09-06 08:44:44 +000048 header_libs: [
49 "libhardware_headers",
50 "libxsdc-utils",
51 ],
Shunkai Yao195d3d62023-10-10 19:26:07 +000052 defaults: [
53 "latest_android_hardware_bluetooth_audio_ndk_shared",
54 ],
Josh Wu20bac522021-12-29 23:52:39 -080055 shared_libs: [
56 "android.hardware.bluetooth.audio@2.0",
57 "android.hardware.bluetooth.audio@2.1",
Josh Wu20bac522021-12-29 23:52:39 -080058 "libbase",
59 "libcutils",
60 "libbinder_ndk",
61 "libfmq",
62 "liblog",
Josh Wu20bac522021-12-29 23:52:39 -080063 "libhidlbase",
shihchienc8ed901a2022-09-06 08:44:44 +000064 "libxml2",
Bao Dofbc99e02023-11-15 03:21:03 +000065 "libflatbuffers-cpp",
Jakub Pawlowski964f3232021-02-02 15:11:39 +010066 ],
shihchienc8ed901a2022-09-06 08:44:44 +000067 generated_sources: ["le_audio_codec_capabilities"],
Bao Dofbc99e02023-11-15 03:21:03 +000068 generated_headers: [
69 "le_audio_codec_capabilities",
70 "AIDLLeAudioSetConfigSchemas_h",
71 ],
Bao Dobe994192023-11-15 03:34:00 +000072 required: [
73 "aidl_audio_set_configurations_bfbs",
74 "aidl_audio_set_configurations_json",
75 "aidl_audio_set_scenarios_bfbs",
76 "aidl_audio_set_scenarios_json",
77 ],
shihchienc8ed901a2022-09-06 08:44:44 +000078}
79
shihchiencd7f565a2022-10-14 13:45:37 +000080cc_test {
81 name: "BluetoothLeAudioCodecsProviderTest",
82 srcs: [
83 "aidl_session/BluetoothLeAudioCodecsProvider.cpp",
84 "aidl_session/BluetoothLeAudioCodecsProviderTest.cpp",
85 ],
86 header_libs: [
87 "libxsdc-utils",
88 ],
89 shared_libs: [
90 "libbase",
91 "libbinder_ndk",
Jakub Rotkiewicze70014d2023-08-07 12:49:46 +000092 "android.hardware.bluetooth.audio-V4-ndk",
shihchiencd7f565a2022-10-14 13:45:37 +000093 "libxml2",
94 ],
95 test_suites: [
96 "general-tests",
97 ],
98 test_options: {
99 unit_test: false,
100 },
101 generated_sources: ["le_audio_codec_capabilities"],
102 generated_headers: ["le_audio_codec_capabilities"],
103}
104
shihchienc8ed901a2022-09-06 08:44:44 +0000105xsd_config {
106 name: "le_audio_codec_capabilities",
107 srcs: ["le_audio_codec_capabilities/le_audio_codec_capabilities.xsd"],
108 package_name: "aidl.android.hardware.bluetooth.audio.setting",
109 api_dir: "le_audio_codec_capabilities/schema",
Jooyung Han16d5af62023-05-22 16:36:26 +0900110 root_elements: ["leAudioOffloadSetting"],
Jakub Pawlowski964f3232021-02-02 15:11:39 +0100111}
Bao Dofbc99e02023-11-15 03:21:03 +0000112
113genrule {
114 name: "AIDLLeAudioSetConfigSchemas_h",
115 tools: [
116 "flatc",
117 ],
118 cmd: "$(location flatc) -I hardware/interfaces/bluetooth/audio/utils/ -o $(genDir) --cpp $(in) ",
119 srcs: [
120 "le_audio_configuration_set/audio_set_configurations.fbs",
121 "le_audio_configuration_set/audio_set_scenarios.fbs",
122 ],
123 out: [
124 "audio_set_configurations_generated.h",
125 "audio_set_scenarios_generated.h",
126 ],
127}
128
129// Binary generation
130genrule {
131 name: "AIDLLeAudioSetScenariosSchema_bfbs",
132 tools: [
133 "flatc",
134 ],
135 cmd: "$(location flatc) -I hardware/interfaces/bluetooth/audio/utils/ -b --schema -o $(genDir) $(in) ",
136 srcs: [
137 "le_audio_configuration_set/audio_set_scenarios.fbs",
138 ],
139 out: [
140 "audio_set_scenarios.bfbs",
141 ],
142}
143
144genrule {
145 name: "AIDLLeAudioSetConfigsSchema_bfbs",
146 tools: [
147 "flatc",
148 ],
149 cmd: "$(location flatc) -I hardware/interfaces/bluetooth/audio/utils/ -b --schema -o $(genDir) $(in) ",
150 srcs: [
151 "le_audio_configuration_set/audio_set_configurations.fbs",
152 ],
153 out: [
154 "audio_set_configurations.bfbs",
155 ],
156}
157
158// Add to prebuilt etc
159prebuilt_etc {
160 name: "aidl_audio_set_scenarios_bfbs",
161 src: ":AIDLLeAudioSetScenariosSchema_bfbs",
162 filename: "aidl_audio_set_scenarios.bfbs",
163 sub_dir: "aidl/le_audio",
Bao Dobe994192023-11-15 03:34:00 +0000164 vendor: true,
Bao Dofbc99e02023-11-15 03:21:03 +0000165}
166
167prebuilt_etc {
168 name: "aidl_audio_set_scenarios_json",
169 src: "le_audio_configuration_set/audio_set_scenarios.json",
170 filename: "aidl_audio_set_scenarios.json",
171 sub_dir: "aidl/le_audio",
Bao Dobe994192023-11-15 03:34:00 +0000172 vendor: true,
Bao Dofbc99e02023-11-15 03:21:03 +0000173}
174
175prebuilt_etc {
176 name: "aidl_audio_set_configurations_bfbs",
177 src: ":AIDLLeAudioSetConfigsSchema_bfbs",
178 filename: "aidl_audio_set_configurations.bfbs",
179 sub_dir: "aidl/le_audio",
Bao Dobe994192023-11-15 03:34:00 +0000180 vendor: true,
Bao Dofbc99e02023-11-15 03:21:03 +0000181}
182
183prebuilt_etc {
184 name: "aidl_audio_set_configurations_json",
185 src: "le_audio_configuration_set/audio_set_configurations.json",
186 filename: "aidl_audio_set_configurations.json",
187 sub_dir: "aidl/le_audio",
Bao Dobe994192023-11-15 03:34:00 +0000188 vendor: true,
Bao Dofbc99e02023-11-15 03:21:03 +0000189}