1package { 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 10cc_library_shared { 11 name: "libbluetooth_audio_session", 12 defaults: ["hidl_defaults"], 13 vendor: true, 14 srcs: [ 15 "session/BluetoothAudioSession.cpp", 16 "session/BluetoothAudioSession_2_1.cpp", 17 "session/BluetoothAudioSupportedCodecsDB.cpp", 18 "session/BluetoothAudioSupportedCodecsDB_2_1.cpp", 19 ], 20 export_include_dirs: ["session/"], 21 header_libs: ["libhardware_headers"], 22 shared_libs: [ 23 "[email protected]", 24 "[email protected]", 25 "[email protected]", 26 "libbase", 27 "libcutils", 28 "libfmq", 29 "libhidlbase", 30 "liblog", 31 "libutils", 32 "libbluetooth_audio_session_aidl", 33 ], 34} 35 36cc_library_shared { 37 name: "libbluetooth_audio_session_aidl", 38 vendor: true, 39 host_supported: true, 40 srcs: [ 41 "aidl_session/BluetoothAudioCodecs.cpp", 42 "aidl_session/BluetoothAudioSession.cpp", 43 "aidl_session/HidlToAidlMiddleware.cpp", 44 "aidl_session/BluetoothLeAudioCodecsProvider.cpp", 45 "aidl_session/BluetoothHfpCodecsProvider.cpp", 46 "aidl_session/BluetoothLeAudioAseConfigurationSettingProvider.cpp", 47 ], 48 export_include_dirs: ["aidl_session/"], 49 header_libs: [ 50 "libhardware_headers", 51 "libxsdc-utils", 52 ], 53 defaults: [ 54 "aconfig_lib_cc_static_link.defaults", 55 "latest_android_hardware_bluetooth_audio_ndk_shared", 56 ], 57 shared_libs: [ 58 "[email protected]", 59 "[email protected]", 60 "libbase", 61 "libcutils", 62 "libbinder_ndk", 63 "libfmq", 64 "liblog", 65 "libhidlbase", 66 "libxml2", 67 "libflatbuffers-cpp", 68 "server_configurable_flags", 69 ], 70 static_libs: [ 71 "btaudiohal_flags_c_lib", 72 ], 73 generated_sources: [ 74 "le_audio_codec_capabilities", 75 "hfp_codec_capabilities", 76 ], 77 generated_headers: [ 78 "le_audio_codec_capabilities", 79 "hfp_codec_capabilities", 80 "AIDLLeAudioSetConfigSchemas_h", 81 ], 82 required: [ 83 "aidl_audio_set_configurations_bfbs", 84 "aidl_default_audio_set_configurations_json", 85 "aidl_audio_set_scenarios_bfbs", 86 "aidl_default_audio_set_scenarios_json", 87 "hfp_codec_capabilities_xml", 88 ], 89} 90 91cc_test { 92 name: "BluetoothLeAudioCodecsProviderTest", 93 srcs: [ 94 "aidl_session/BluetoothLeAudioCodecsProvider.cpp", 95 "aidl_session/BluetoothLeAudioCodecsProviderTest.cpp", 96 ], 97 defaults: [ 98 "latest_android_hardware_audio_common_ndk_static", 99 "latest_android_hardware_bluetooth_audio_ndk_static", 100 "latest_android_media_audio_common_types_ndk_static", 101 ], 102 header_libs: [ 103 "libxsdc-utils", 104 ], 105 shared_libs: [ 106 "libbase", 107 "libbinder_ndk", 108 "libxml2", 109 ], 110 test_suites: [ 111 "general-tests", 112 ], 113 test_options: { 114 unit_test: false, 115 }, 116 generated_sources: ["le_audio_codec_capabilities"], 117 generated_headers: ["le_audio_codec_capabilities"], 118} 119 120cc_test { 121 name: "BluetoothHfpCodecsProviderTest", 122 defaults: [ 123 "latest_android_hardware_audio_common_ndk_static", 124 "latest_android_hardware_bluetooth_audio_ndk_static", 125 "latest_android_media_audio_common_types_ndk_static", 126 ], 127 srcs: [ 128 "aidl_session/BluetoothHfpCodecsProvider.cpp", 129 "aidl_session/BluetoothHfpCodecsProviderTest.cpp", 130 ], 131 header_libs: [ 132 "libxsdc-utils", 133 ], 134 shared_libs: [ 135 "libbase", 136 "libbinder_ndk", 137 "libxml2", 138 ], 139 test_suites: [ 140 "general-tests", 141 ], 142 test_options: { 143 unit_test: false, 144 }, 145 generated_sources: ["hfp_codec_capabilities"], 146 generated_headers: ["hfp_codec_capabilities"], 147} 148 149xsd_config { 150 name: "le_audio_codec_capabilities", 151 srcs: ["le_audio_codec_capabilities/le_audio_codec_capabilities.xsd"], 152 package_name: "aidl.android.hardware.bluetooth.audio.setting", 153 api_dir: "le_audio_codec_capabilities/schema", 154 root_elements: ["leAudioOffloadSetting"], 155} 156 157xsd_config { 158 name: "hfp_codec_capabilities", 159 srcs: ["hfp_codec_capabilities/hfp_codec_capabilities.xsd"], 160 package_name: "aidl.android.hardware.bluetooth.audio.hfp.setting", 161 api_dir: "hfp_codec_capabilities/schema", 162 root_elements: ["hfpOffloadSetting"], 163} 164 165genrule { 166 name: "AIDLLeAudioSetConfigSchemas_h", 167 tools: [ 168 "flatc", 169 ], 170 cmd: "$(location flatc) -I hardware/interfaces/bluetooth/audio/utils/ -o $(genDir) --cpp $(in) ", 171 srcs: [ 172 "le_audio_configuration_set/audio_set_configurations.fbs", 173 "le_audio_configuration_set/audio_set_scenarios.fbs", 174 ], 175 out: [ 176 "audio_set_configurations_generated.h", 177 "audio_set_scenarios_generated.h", 178 ], 179} 180 181// Binary generation 182genrule { 183 name: "AIDLLeAudioSetScenariosSchema_bfbs", 184 tools: [ 185 "flatc", 186 ], 187 cmd: "$(location flatc) -I hardware/interfaces/bluetooth/audio/utils/ -b --schema -o $(genDir) $(in) ", 188 srcs: [ 189 "le_audio_configuration_set/audio_set_scenarios.fbs", 190 ], 191 out: [ 192 "audio_set_scenarios.bfbs", 193 ], 194} 195 196genrule { 197 name: "AIDLLeAudioSetConfigsSchema_bfbs", 198 tools: [ 199 "flatc", 200 ], 201 cmd: "$(location flatc) -I hardware/interfaces/bluetooth/audio/utils/ -b --schema -o $(genDir) $(in) ", 202 srcs: [ 203 "le_audio_configuration_set/audio_set_configurations.fbs", 204 ], 205 out: [ 206 "audio_set_configurations.bfbs", 207 ], 208} 209 210// Add to prebuilt etc 211prebuilt_etc { 212 name: "aidl_audio_set_scenarios_bfbs", 213 src: ":AIDLLeAudioSetScenariosSchema_bfbs", 214 filename: "aidl_audio_set_scenarios.bfbs", 215 sub_dir: "aidl/le_audio", 216 vendor: true, 217} 218 219prebuilt_etc { 220 name: "aidl_default_audio_set_scenarios_json", 221 src: "le_audio_configuration_set/audio_set_scenarios.json", 222 filename: "aidl_default_audio_set_scenarios.json", 223 sub_dir: "aidl/le_audio", 224 vendor: true, 225} 226 227prebuilt_etc { 228 name: "hfp_codec_capabilities_xml", 229 src: "hfp_codec_capabilities/hfp_codec_capabilities.xml", 230 filename: "hfp_codec_capabilities.xml", 231 sub_dir: "aidl/hfp", 232 vendor: true, 233} 234 235prebuilt_etc { 236 name: "aidl_audio_set_configurations_bfbs", 237 src: ":AIDLLeAudioSetConfigsSchema_bfbs", 238 filename: "aidl_audio_set_configurations.bfbs", 239 sub_dir: "aidl/le_audio", 240 vendor: true, 241} 242 243prebuilt_etc { 244 name: "aidl_default_audio_set_configurations_json", 245 src: "le_audio_configuration_set/audio_set_configurations.json", 246 filename: "aidl_default_audio_set_configurations.json", 247 sub_dir: "aidl/le_audio", 248 vendor: true, 249} 250