1// Bluetooth types
2package {
3    // See: http://go/android-license-faq
4    // A large-scale-change added 'default_applicable_licenses' to import
5    // all of the 'license_kinds' from "system_bt_license"
6    // to get the below license kinds:
7    //   SPDX-license-identifier-Apache-2.0
8    default_applicable_licenses: ["system_bt_license"],
9}
10
11cc_library_static {
12    name: "libbluetooth-common",
13    defaults: ["fluoride_defaults"],
14    cflags: [
15        /* we export all classes, so change default visibility, instead of having EXPORT_SYMBOL on each class*/
16        "-fvisibility=default",
17    ],
18    host_supported: true,
19    header_libs: ["libbluetooth_headers"],
20    srcs: [
21        "bluetooth/a2dp_codec_config.cc",
22        "bluetooth/adapter_state.cc",
23        "bluetooth/advertise_data.cc",
24        "bluetooth/advertise_settings.cc",
25        "bluetooth/avrcp_int_value.cc",
26        "bluetooth/avrcp_media_attr.cc",
27        "bluetooth/avrcp_register_notification_response.cc",
28        "bluetooth/characteristic.cc",
29        "bluetooth/descriptor.cc",
30        "bluetooth/remote_device_props.cc",
31        "bluetooth/scan_filter.cc",
32        "bluetooth/scan_result.cc",
33        "bluetooth/scan_settings.cc",
34        "bluetooth/service.cc",
35        "bluetooth/util/atomic_string.cc",
36    ],
37    export_include_dirs: ["./"],
38    include_dirs: ["system/bt"],
39    shared_libs: [
40        "libbase",
41    ],
42}
43
44// Bluetooth Binder shared library
45cc_library_static {
46    name: "libbluetooth-binder-common",
47    defaults: ["fluoride_defaults"],
48    cflags: [
49        /* we export all classes, so change default visibility, instead of having EXPORT_SYMBOL on each class*/
50        "-fvisibility=default",
51    ],
52    header_libs: ["libbluetooth_headers"],
53    srcs: [
54        "android/bluetooth/IBluetooth.aidl",
55        "android/bluetooth/IBluetoothA2dpSink.aidl",
56        "android/bluetooth/IBluetoothA2dpSinkCallback.aidl",
57        "android/bluetooth/IBluetoothA2dpSource.aidl",
58        "android/bluetooth/IBluetoothA2dpSourceCallback.aidl",
59        "android/bluetooth/IBluetoothAvrcpControl.aidl",
60        "android/bluetooth/IBluetoothAvrcpControlCallback.aidl",
61        "android/bluetooth/IBluetoothAvrcpTarget.aidl",
62        "android/bluetooth/IBluetoothAvrcpTargetCallback.aidl",
63        "android/bluetooth/IBluetoothCallback.aidl",
64        "android/bluetooth/IBluetoothGattClient.aidl",
65        "android/bluetooth/IBluetoothGattClientCallback.aidl",
66        "android/bluetooth/IBluetoothGattServer.aidl",
67        "android/bluetooth/IBluetoothGattServerCallback.aidl",
68        "android/bluetooth/IBluetoothLeAdvertiser.aidl",
69        "android/bluetooth/IBluetoothLeAdvertiserCallback.aidl",
70        "android/bluetooth/IBluetoothLeScanner.aidl",
71        "android/bluetooth/IBluetoothLeScannerCallback.aidl",
72        "android/bluetooth/IBluetoothLowEnergy.aidl",
73        "android/bluetooth/IBluetoothLowEnergyCallback.aidl",
74        "android/bluetooth/advertise_data.cc",
75        "android/bluetooth/advertise_settings.cc",
76        "android/bluetooth/bluetooth_a2dp_codec_config.cc",
77        "android/bluetooth/bluetooth_avrcp_int_value.cc",
78        "android/bluetooth/bluetooth_avrcp_media_attr.cc",
79        "android/bluetooth/bluetooth_avrcp_register_notification_response.cc",
80        "android/bluetooth/bluetooth_avrcp_string_value.cc",
81        "android/bluetooth/bluetooth_gatt_characteristic.cc",
82        "android/bluetooth/bluetooth_gatt_descriptor.cc",
83        "android/bluetooth/bluetooth_gatt_included_service.cc",
84        "android/bluetooth/bluetooth_gatt_service.cc",
85        "android/bluetooth/bluetooth_remote_device_props.cc",
86        "android/bluetooth/scan_filter.cc",
87        "android/bluetooth/scan_result.cc",
88        "android/bluetooth/scan_settings.cc",
89        "android/bluetooth/uuid.cc",
90    ],
91    aidl: {
92        export_aidl_headers: true,
93        include_dirs: [
94            "frameworks/native/aidl/binder",
95            "system/bt/service/common",
96        ],
97    },
98    export_include_dirs: ["./"],
99    whole_static_libs: ["libbluetooth-common"],
100    shared_libs: [
101        "libbase",
102        "libbinder",
103    ],
104    static_libs: [
105        "libbluetooth-types",
106    ],
107}
108