1 2// Bluetooth main HW module / shared library for target 3// ======================================================== 4cc_library_shared { 5 name: "libbluetooth", 6 defaults: ["fluoride_defaults"], 7 header_libs: ["libbluetooth_headers"], 8 export_header_lib_headers: ["libbluetooth_headers"], 9 srcs: [ 10 // platform specific 11 "bte_conf.cc", 12 "bte_init.cc", 13 "bte_init_cpp_logging.cc", 14 "bte_logmsg.cc", 15 "bte_main.cc", 16 "stack_config.cc", 17 ], 18 include_dirs: [ 19 "system/bt", 20 "system/bt/bta/include", 21 "system/bt/bta/sys", 22 "system/bt/bta/dm", 23 "system/bt/btcore/include", 24 "system/bt/internal_include", 25 "system/bt/stack/include", 26 "system/bt/stack/l2cap", 27 "system/bt/stack/a2dp", 28 "system/bt/stack/btm", 29 "system/bt/stack/avdt", 30 "system/bt/udrv/include", 31 "system/bt/btif/include", 32 "system/bt/btif/co", 33 "system/bt/hci/include", 34 "system/bt/vnd/include", 35 "system/bt/embdrv/sbc/encoder/include", 36 "system/bt/embdrv/sbc/decoder/include", 37 "system/bt/utils/include", 38 "system/security/keystore/include", 39 "hardware/interfaces/keymaster/4.0/support/include", 40 ], 41 logtags: ["../EventLogTags.logtags"], 42 shared_libs: [ 43 "android.hardware.bluetooth@1.0", 44 "android.hardware.bluetooth.a2dp@1.0", 45 "android.hardware.bluetooth.audio@2.0", 46 "libaudioclient", 47 "libcutils", 48 "libdl", 49 "libfmq", 50 "libhidlbase", 51 "libhidltransport", 52 "libhwbinder", 53 "liblog", 54 "libprocessgroup", 55 "libprotobuf-cpp-lite", 56 "libutils", 57 "libtinyxml2", 58 "libz", 59 "libcrypto", 60 "android.hardware.keymaster@4.0", 61 "android.hardware.keymaster@3.0", 62 "libkeymaster4support", 63 "libkeystore_aidl", 64 "libkeystore_binder", 65 "libkeystore_parcelables", 66 ], 67 static_libs: [ 68 "libbt-sbc-decoder", 69 "libbt-sbc-encoder", 70 "libFraunhoferAAC", 71 "libg722codec", 72 "libudrv-uipc", 73 ], 74 whole_static_libs: [ 75 "libbt-bta", 76 "libbt-common", 77 "libbtdevice", 78 "libbtif", 79 "libbt-hci", 80 "libbt-stack", 81 "libbt-utils", 82 "libbtcore", 83 "libosi", 84 "libbt-protos-lite", 85 ], 86 // Shared library link options. 87 // References to global symbols and functions should bind to the library 88 // itself. This is to avoid issues with some of the unit/system tests 89 // that might link statically with some of the code in the library, and 90 // also dlopen(3) the shared library. 91 ldflags: ["-Wl,-Bsymbolic,-Bsymbolic-functions"], 92 required: [ 93 "bt_did.conf", 94 "bt_stack.conf", 95 "libldacBT_enc", 96 "libldacBT_abr", 97 ], 98 cflags: [ 99 "-DBUILDCFG", 100 ], 101 sanitize: { 102 scs: true, 103 }, 104} 105 106cc_library_static { 107 name: "libbluetooth-for-tests", 108 defaults: ["fluoride_defaults"], 109 110 srcs: [ 111 "bte_conf.cc", 112 "bte_init.cc", 113 "bte_init_cpp_logging.cc", 114 "bte_logmsg.cc", 115 "bte_main.cc", 116 "stack_config.cc", 117 ], 118 include_dirs: [ 119 "system/bt", 120 "system/bt/bta/include", 121 "system/bt/btcore/include", 122 "system/bt/btif/include", 123 "system/bt/hci/include", 124 "system/bt/internal_include", 125 "system/bt/stack/include", 126 "system/bt/utils/include", 127 ], 128 cflags: [ 129 "-DBUILDCFG", 130 ], 131} 132