• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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