# # Copyright 2015 Google, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at: # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # static_library("crypto_toolbox") { sources = [ "crypto_toolbox/aes.cc", "crypto_toolbox/aes_cmac.cc", "crypto_toolbox/crypto_toolbox.cc", ] include_dirs = [ "//bt/" ] configs += [ "//bt:target_defaults" ] } source_set("nonstandard_codecs") { if (defined(use.bt_nonstandard_codecs) && use.bt_nonstandard_codecs) { sources = [ "a2dp/a2dp_aac.cc", "a2dp/a2dp_aac_decoder.cc", "a2dp/a2dp_aac_encoder.cc", "a2dp/a2dp_vendor.cc", "a2dp/a2dp_vendor_aptx.cc", "a2dp/a2dp_vendor_aptx_encoder.cc", "a2dp/a2dp_vendor_aptx_hd.cc", "a2dp/a2dp_vendor_aptx_hd_encoder.cc", "a2dp/a2dp_vendor_ldac.cc", "a2dp/a2dp_vendor_ldac_abr.cc", "a2dp/a2dp_vendor_ldac_decoder.cc", "a2dp/a2dp_vendor_ldac_encoder.cc", ] include_dirs = [ "//bt", "//bt/bta/include", "//bt/btif/include", "//bt/internal_include", "//bt/stack/include", "//bt/utils/include", ] deps = [ "//bt/gd/rust/shim:init_flags_bridge_header" ] configs += [ "//bt:target_defaults", "//bt:external_libldac", "//bt:external_aac", ] } } source_set("stack") { sources = [ "a2dp/a2dp_api.cc", "a2dp/a2dp_codec_config.cc", "a2dp/a2dp_sbc.cc", "a2dp/a2dp_sbc_decoder.cc", "a2dp/a2dp_sbc_encoder.cc", "a2dp/a2dp_sbc_up_sample.cc", "acl/acl.cc", "acl/ble_acl.cc", "acl/btm_acl.cc", "acl/btm_ble_connection_establishment.cc", "acl/btm_pm.cc", "avct/avct_api.cc", "avct/avct_bcb_act.cc", "avct/avct_ccb.cc", "avct/avct_l2c.cc", "avct/avct_l2c_br.cc", "avct/avct_lcb.cc", "avct/avct_lcb_act.cc", "avdt/avdt_ad.cc", "avdt/avdt_api.cc", "avdt/avdt_ccb.cc", "avdt/avdt_ccb_act.cc", "avdt/avdt_l2c.cc", "avdt/avdt_msg.cc", "avdt/avdt_scb.cc", "avdt/avdt_scb_act.cc", "avrc/avrc_api.cc", "avrc/avrc_bld_ct.cc", "avrc/avrc_bld_tg.cc", "avrc/avrc_opt.cc", "avrc/avrc_pars_ct.cc", "avrc/avrc_pars_tg.cc", "avrc/avrc_sdp.cc", "avrc/avrc_utils.cc", "bnep/bnep_api.cc", "bnep/bnep_main.cc", "bnep/bnep_utils.cc", "btm/ble_advertiser_hci_interface.cc", "btm/ble_scanner_hci_interface.cc", "btm/btm_ble.cc", "btm/btm_ble_addr.cc", "btm/btm_ble_adv_filter.cc", "btm/btm_ble_batchscan.cc", "btm/btm_ble_bgconn.cc", "btm/btm_ble_cont_energy.cc", "btm/btm_ble_gap.cc", "btm/btm_ble_multi_adv.cc", "btm/btm_ble_privacy.cc", "btm/btm_client_interface.cc", "btm/btm_dev.cc", "btm/btm_devctl.cc", "btm/btm_inq.cc", "btm/btm_iso.cc", "btm/btm_main.cc", "btm/btm_scn.cc", "btm/btm_sco.cc", "btm/btm_sec.cc", "btu/btu_hcif.cc", "btu/btu_task.cc", "eatt/eatt.cc", "gap/gap_ble.cc", "gap/gap_conn.cc", "gatt/att_protocol.cc", "gatt/connection_manager.cc", "gatt/gatt_api.cc", "gatt/gatt_attr.cc", "gatt/gatt_auth.cc", "gatt/gatt_cl.cc", "gatt/gatt_db.cc", "gatt/gatt_main.cc", "gatt/gatt_sr.cc", "gatt/gatt_sr_hash.cc", "gatt/gatt_utils.cc", "hcic/hciblecmds.cc", "hcic/hcicmds.cc", "hid/hidd_api.cc", "hid/hidd_conn.cc", "hid/hidh_api.cc", "hid/hidh_conn.cc", "l2cap/l2c_api.cc", "l2cap/l2c_ble.cc", "l2cap/l2c_csm.cc", "l2cap/l2c_fcr.cc", "l2cap/l2c_link.cc", "l2cap/l2c_main.cc", "l2cap/l2c_utils.cc", "metrics/stack_metrics_logging.cc", "pan/pan_api.cc", "pan/pan_main.cc", "pan/pan_utils.cc", "rfcomm/port_api.cc", "rfcomm/port_rfc.cc", "rfcomm/port_utils.cc", "rfcomm/rfc_l2cap_if.cc", "rfcomm/rfc_mx_fsm.cc", "rfcomm/rfc_port_fsm.cc", "rfcomm/rfc_port_if.cc", "rfcomm/rfc_ts_frames.cc", "rfcomm/rfc_utils.cc", "sdp/sdp_api.cc", "sdp/sdp_db.cc", "sdp/sdp_discovery.cc", "sdp/sdp_main.cc", "sdp/sdp_server.cc", "sdp/sdp_utils.cc", "smp/p_256_curvepara.cc", "smp/p_256_ecc_pp.cc", "smp/p_256_multprecision.cc", "smp/smp_act.cc", "smp/smp_api.cc", "smp/smp_br_main.cc", "smp/smp_keys.cc", "smp/smp_l2c.cc", "smp/smp_main.cc", "smp/smp_utils.cc", "srvc/srvc_dis.cc", "srvc/srvc_eng.cc", ] include_dirs = [ ".", "include", "avct", "btm", "avrc", "l2cap", "avdt", "gatt", "gap", "pan", "bnep", "eatt", "hid", "metrics", "sdp", "smp", "srvc", "//bt/types", "//bt/linux_include", "//bt/internal_include", "//bt/btcore/include", "//bt/vnd/include", "//bt/vnd/ble", "//bt/btif/include", "//bt/hci/include", "//bt/udrv/include", "//bt/rpc/include", "//bt/hcis", "//bt/ctrlr/include", "//bt/bta/include", "//bt/bta/sys", "//bt/utils/include", "//bt/", ] deps = [ ":crypto_toolbox", ":nonstandard_codecs", "//bt:libbt-platform-protos-lite", "//bt/gd/rust/shim:init_flags_bridge_header", "//bt/types", "//bt/types", ] configs += [ "//bt:target_defaults" ] } if (use.test) { executable("net_test_btm_iso") { sources = [ "btm/btm_iso.cc", "test/btm_iso_test.cc", "test/common/mock_controller.cc", "test/common/mock_gatt_layer.cc", "test/common/mock_hcic_layer.cc", ] include_dirs = [ "btm", "include", "test/common", "//bt/internal_include", "//bt/packet/tests", ] deps = [ "//bt/common", "//bt/osi", ] configs += [ "//bt:external_gmock_main", "//bt:target_defaults", ] } } if (defined(use.android) && use.android) { executable("stack_unittests") { sources = [ "test/stack_a2dp_test.cc", "test/stack_avrcp_test.cc", ] include_dirs = [ "include", "//bt/", "//bt/bta/eatt", "//bt/bta/include", "//bt/bta/sys", "//bt/btcore/include", "//bt/embdrv/sbc/encoder/include", "//bt/hci/include", "//bt/internal_include", "//bt/stack/a2dp", "//bt/stack/btm", "//bt/stack/include", "//bt/udrv/include", "//bt/utils/include", "//bt/vnd/include", ] libs = [ "dl", "pthread", "resolv", "rt", "z", ] deps = [ ":stack", "//bt/btcore", "//bt/device", "//bt/embdrv/g722", "//bt/embdrv/sbc", "//bt/hci", "//bt/main:bluetooth", "//bt/osi", "//bt/types", ] configs += [ "//bt:external_tinyxml2", "//bt:external_gmock_main", "//bt:target_defaults", ] } executable("net_test_stack_crypto_toolbox") { sources = [ "test/crypto_toolbox_test.cc" ] include_dirs = [ "//bt/" ] deps = [ ":crypto_toolbox" ] configs += [ "//bt:external_gmock_main", "//bt:target_defaults", ] } executable("net_test_stack_smp") { sources = [ "smp/p_256_curvepara.cc", "smp/p_256_ecc_pp.cc", "smp/p_256_multprecision.cc", "smp/smp_api.cc", "smp/smp_keys.cc", "smp/smp_main.cc", "smp/smp_utils.cc", "test/stack_smp_test.cc", ] include_dirs = [ "//bt/", "//bt/linux_include", "//bt/internal_include", "//bt/btcore/include", "//bt/hci/include", "//bt/utils/include", "//bt/bta/include", "//bt/bta/sys", "//bt/btcore/include", "//bt/embdrv/sbc/encoder/include", "//bt/hci/include", "//bt/internal_include", "//bt/stack/a2dp", "//bt/stack/l2cap", "//bt/stack/btm", "//bt/stack/include", "//bt/udrv/include", "//bt/utils/include", "//bt/vnd/include", ] libs = [ "dl", "pthread", "resolv", "rt", "z", ] deps = [ ":crypto_toolbox", "//bt/osi", "//bt/types", ] configs += [ "//bt:external_tinyxml2", "//bt:external_gmock_main", "//bt:target_defaults", ] } executable("net_test_stack_multi_adv") { sources = [ "btm/btm_ble_multi_adv.cc", "test/ble_advertiser_test.cc", ] include_dirs = [ "include", "//bt/", "//bt/btcore/include", "//bt/hci/include", "//bt/internal_include", "//bt/stack/btm", ] libs = [ "dl", "pthread", "resolv", "rt", "z", ] deps = [ "//bt/types" ] configs += [ "//bt:external_gmock_main", "//bt:target_defaults", ] } }