// Bluetooth main HW module / shared library for target // ======================================================== filegroup { name: "LibBluetoothSources", srcs: [ "bte_conf.cc", "bte_init.cc", "bte_init_cpp_logging.cc", "bte_logmsg.cc", "bte_main.cc", "stack_config.cc", ] } cc_library_shared { name: "libbluetooth", defaults: ["fluoride_defaults"], header_libs: ["libbluetooth_headers"], export_header_lib_headers: ["libbluetooth_headers"], srcs: [ ":LibBluetoothSources", ":LibBluetoothShimSources", ], include_dirs: [ "system/bt", "system/bt/bta/include", "system/bt/bta/sys", "system/bt/bta/dm", "system/bt/btcore/include", "system/bt/internal_include", "system/bt/stack/include", "system/bt/stack/l2cap", "system/bt/stack/a2dp", "system/bt/stack/btm", "system/bt/stack/avdt", "system/bt/udrv/include", "system/bt/btif/include", "system/bt/btif/co", "system/bt/hci/include", "system/bt/vnd/include", "system/bt/embdrv/sbc/encoder/include", "system/bt/embdrv/sbc/decoder/include", "system/bt/utils/include", "system/security/keystore/include", "hardware/interfaces/keymaster/4.0/support/include", ], logtags: ["../EventLogTags.logtags"], shared_libs: [ "android.hardware.bluetooth@1.0", "android.hardware.bluetooth@1.1", "android.hardware.bluetooth.a2dp@1.0", "android.hardware.bluetooth.audio@2.0", "libaaudio", "libcutils", "libdl", "libfmq", "libhidlbase", "liblog", "libprocessgroup", "libprotobuf-cpp-lite", "libutils", "libtinyxml2", "libz", "libcrypto", //"android.hardware.keymaster@4.0", //"libkeymaster4support", //"libkeystore_binder", ], static_libs: [ "libbt-sbc-decoder", "libbt-sbc-encoder", "libFraunhoferAAC", "libg722codec", "libudrv-uipc", "libbluetooth_gd", // Gabeldorsche ], whole_static_libs: [ "libbt-bta", "libbt-common", "libbtdevice", "libbtif", "libbt-hci", "libbt-stack", "libbt-utils", "libbtcore", "libosi", "libbt-protos-lite", ], // Shared library link options. // References to global symbols and functions should bind to the library // itself. This is to avoid issues with some of the unit/system tests // that might link statically with some of the code in the library, and // also dlopen(3) the shared library. ldflags: ["-Wl,-Bsymbolic,-Bsymbolic-functions"], required: [ "bt_did.conf", "bt_stack.conf", "libldacBT_enc", "libldacBT_abr", ], cflags: [ "-DBUILDCFG", ], sanitize: { scs: true, }, } cc_library_static { name: "libbluetooth-for-tests", defaults: ["fluoride_defaults"], srcs: [ ":LibBluetoothSources", ":LibBluetoothShimSources", ], host_supported: true, include_dirs: [ "system/bt", "system/bt/bta/include", "system/bt/btcore/include", "system/bt/btif/include", "system/bt/hci/include", "system/bt/internal_include", "system/bt/stack/include", "system/bt/utils/include", ], cflags: [ "-DBUILDCFG", ], } cc_test { name: "bluetooth_test_legacy", defaults: ["fluoride_defaults", "fluoride_osi_defaults", ], test_suites: ["device-tests"], host_supported: true, srcs: [ ":LibBluetoothShimTestSources", ":LibBluetoothShimStubSources", ], static_libs: [ "libgmock", "libbluetooth-for-tests", "libosi", ], shared_libs: [ "libchrome", "liblog", ], }