1# 2# Copyright 2015 Google, Inc. 3# 4# Licensed under the Apache License, Version 2.0 (the "License"); 5# you may not use this file except in compliance with the License. 6# You may obtain a copy of the License at: 7# 8# http://www.apache.org/licenses/LICENSE-2.0 9# 10# Unless required by applicable law or agreed to in writing, software 11# distributed under the License is distributed on an "AS IS" BASIS, 12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# See the License for the specific language governing permissions and 14# limitations under the License. 15# 16 17import("//bt/system/gd/dumpsys/bundler/bundler.gni") 18import("//common-mk/flatbuffer.gni") 19 20static_library("bta") { 21 sources = [ 22 "ag/bta_ag_act.cc", 23 "ag/bta_ag_api.cc", 24 "ag/bta_ag_at.cc", 25 "ag/bta_ag_cfg.cc", 26 "ag/bta_ag_cmd.cc", 27 "ag/bta_ag_main.cc", 28 "ag/bta_ag_rfc.cc", 29 "ag/bta_ag_sco.cc", 30 "ag/bta_ag_sdp.cc", 31 "ag/bta_ag_swb_aptx.cc", 32 "ar/bta_ar.cc", 33 "av/bta_av_aact.cc", 34 "av/bta_av_act.cc", 35 "av/bta_av_api.cc", 36 "av/bta_av_cfg.cc", 37 "av/bta_av_ci.cc", 38 "av/bta_av_main.cc", 39 "av/bta_av_ssm.cc", 40 "csis/csis_client.cc", 41 "dm/bta_dm_act.cc", 42 "dm/bta_dm_api.cc", 43 "dm/bta_dm_sec_api.cc", 44 "dm/bta_dm_cfg.cc", 45 "dm/bta_dm_ci.cc", 46 "dm/bta_dm_device_search.cc", 47 "dm/bta_dm_disc.cc", 48 "dm/bta_dm_disc_legacy.cc", 49 "dm/bta_dm_disc_sdp.cc", 50 "dm/bta_dm_gatt_client.cc", 51 "dm/bta_dm_main.cc", 52 "dm/bta_dm_pm.cc", 53 "dm/bta_dm_sec.cc", 54 "gatt/bta_gattc_act.cc", 55 "gatt/bta_gattc_api.cc", 56 "gatt/bta_gattc_db_storage.cc", 57 "gatt/bta_gattc_cache.cc", 58 "gatt/bta_gattc_main.cc", 59 "gatt/bta_gattc_utils.cc", 60 "gatt/bta_gattc_queue.cc", 61 "gatt/bta_gatts_act.cc", 62 "gatt/bta_gatts_api.cc", 63 "gatt/bta_gatts_main.cc", 64 "gatt/bta_gatts_utils.cc", 65 "gatt/database.cc", 66 "gatt/database_builder.cc", 67 "groups/groups.cc", 68 "has/has_client.cc", 69 "has/has_ctp.cc", 70 "has/has_preset.cc", 71 "has/has_types.cc", 72 "has/has_journal.cc", 73 "hearing_aid/hearing_aid.cc", 74 "hearing_aid/hearing_aid_audio_source.cc", 75 "hf_client/bta_hf_client_act.cc", 76 "hf_client/bta_hf_client_api.cc", 77 "hf_client/bta_hf_client_at.cc", 78 "hf_client/bta_hf_client_main.cc", 79 "hf_client/bta_hf_client_rfc.cc", 80 "hf_client/bta_hf_client_sdp.cc", 81 "hf_client/bta_hf_client_sco.cc", 82 "hh/bta_hh_act.cc", 83 "hh/bta_hh_api.cc", 84 "hh/bta_hh_cfg.cc", 85 "hh/bta_hh_headtracker.cc", 86 "hh/bta_hh_le.cc", 87 "hh/bta_hh_main.cc", 88 "hh/bta_hh_utils.cc", 89 "hfp/bta_hfp_api.cc", 90 "hd/bta_hd_act.cc", 91 "hd/bta_hd_api.cc", 92 "hd/bta_hd_main.cc", 93 "jv/bta_jv_act.cc", 94 "jv/bta_jv_api.cc", 95 "le_audio/audio_hal_client/audio_sink_hal_client.cc", 96 "le_audio/audio_hal_client/audio_source_hal_client.cc", 97 "le_audio/broadcaster/broadcast_configuration_provider.cc", 98 "le_audio/broadcaster/broadcaster.cc", 99 "le_audio/broadcaster/broadcaster_types.cc", 100 "le_audio/broadcaster/state_machine.cc", 101 "le_audio/client.cc", 102 "le_audio/client_parser.cc", 103 "le_audio/codec_interface.cc", 104 "le_audio/codec_manager.cc", 105 "le_audio/content_control_id_keeper.cc", 106 "le_audio/device_groups.cc", 107 "le_audio/devices.cc", 108 "le_audio/hal_verifier_linux.cc", 109 "le_audio/le_audio_health_status.cc", 110 "le_audio/le_audio_log_history.cc", 111 "le_audio/le_audio_set_configuration_provider_json.cc", 112 "le_audio/le_audio_types.cc", 113 "le_audio/le_audio_utils.cc", 114 "le_audio/metrics_collector.cc", 115 "le_audio/state_machine.cc", 116 "le_audio/storage_helper.cc", 117 "pan/bta_pan_act.cc", 118 "pan/bta_pan_api.cc", 119 "pan/bta_pan_ci.cc", 120 "pan/bta_pan_main.cc", 121 "ras/ras_client.cc", 122 "ras/ras_server.cc", 123 "ras/ras_utils.cc", 124 "rfcomm/bta_rfcomm_scn.cc", 125 "sdp/bta_sdp.cc", 126 "sdp/bta_sdp_act.cc", 127 "sdp/bta_sdp_api.cc", 128 "sdp/bta_sdp_cfg.cc", 129 "sys/bta_sys_conn.cc", 130 "sys/bta_sys_main.cc", 131 "sys/utl.cc", 132 "vc/device.cc", 133 "vc/vc.cc", 134 ] 135 136 include_dirs = [ 137 "closure", 138 "dm", 139 "hh", 140 "hd", 141 "include", 142 "sys", 143 "//bt/system/", 144 "//bt/system/include", 145 "//bt/system/linux_include", 146 "//bt/system/bta", 147 "//bt/system/gd", 148 "//bt/system/stack/include", 149 "//bt/system/stack/btm", 150 "//bt/system/udrv/include", 151 "//bt/system/vnd/include", 152 "//bt/system/btif/include", 153 "//bt/system/btif/avrcp", 154 "//bt/system/include/hardware/avrcp", 155 "//bt/system/profile/avrcp", 156 "//bt/system/packet/avrcp", 157 "//bt/system/packet/base", 158 ] 159 160 configs += [ 161 "//bt/system:target_defaults", 162 "//bt/system/log:log_defaults", 163 ] 164 165 deps = [ 166 "//bt/flags:bluetooth_flags_c_lib", 167 "//bt/sysprop:libcom.android.sysprop.bluetooth", 168 "//bt/system/audio:libbt-audio-asrc", 169 "//bt/system/bta:LeAudioSetScenariosSchema_bfbs", 170 "//bt/system/bta:LeAudioSetConfigsSchema_bfbs", 171 "//bt/system/bta:install_audio_set_scenarios_json", 172 "//bt/system/bta:install_audio_set_configurations_json", 173 "//bt/system/bta:install_audio_set_scenarios_bfbs", 174 "//bt/system/bta:install_audio_set_configurations_bfbs", 175 "//bt/system:libbt-platform-protos-lite", 176 "//bt/system/gd/rust/shim:init_flags_bridge_header", 177 ] 178 179 libs = [ 180 "lc3", 181 ] 182} 183 184bt_flatc_binary_schema("LeAudioSetScenariosSchema_bfbs") { 185 sources = [ 186 "le_audio/audio_set_scenarios.fbs", 187 ] 188 189 include_dir = "system" 190 gen_header = true 191} 192 193bt_flatc_binary_schema("LeAudioSetConfigsSchema_bfbs") { 194 sources = [ 195 "le_audio/audio_set_configurations.fbs", 196 ] 197 198 include_dir = "system" 199 gen_header = true 200} 201 202install_config("install_audio_set_scenarios_bfbs") { 203 sources = [ "$target_gen_dir/audio_set_scenarios.bfbs" ] 204 install_path = "/etc/bluetooth/le_audio/" 205} 206 207install_config("install_audio_set_configurations_bfbs") { 208 sources = [ "$target_gen_dir/audio_set_configurations.bfbs" ] 209 install_path = "/etc/bluetooth/le_audio/" 210} 211 212install_config("install_audio_set_scenarios_json") { 213 sources = [ "le_audio/audio_set_scenarios.json" ] 214 install_path = "/etc/bluetooth/le_audio/" 215} 216 217install_config("install_audio_set_configurations_json") { 218 sources = [ "le_audio/audio_set_configurations.json" ] 219 install_path = "/etc/bluetooth/le_audio/" 220} 221 222if (use.test) { 223 executable("net_test_bta") { 224 sources = [ 225 "gatt/database_builder.cc", 226 "test/gatt/database_builder_test.cc", 227 "test/gatt/database_builder_sample_device_test.cc", 228 "test/gatt/database_test.cc", 229 ] 230 231 include_dirs = [ 232 "include", 233 "//bt/system/", 234 "//bt/system/bta", 235 "//bt/system/stack/btm", 236 ] 237 238 deps = [ 239 "//bt/system/bta", 240 "//bt/system/types", 241 ] 242 243 configs += [ 244 "//bt/system:external_gmock_main", 245 "//bt/system:target_defaults", 246 ] 247 } 248} 249