1cc_library_shared {
2    name: "libbluetooth-binder",
3    product_variables: {
4        pdk: {
5            enabled: false,
6        },
7    },
8    srcs: [
9        "android/bluetooth/bluetooth_device.cc",
10        "android/bluetooth/IBluetoothSocketManager.aidl",
11        "android/os/parcel_file_descriptor.cc",
12        "android/os/parcel_uuid.cc",
13/* TODO: Uncomment this files as they get converted one-by-one into native implementation
14        "android/bluetooth/IBluetooth.aidl",
15        "android/bluetooth/IBluetoothA2dp.aidl",
16        "android/bluetooth/IBluetoothA2dpSink.aidl",
17        "android/bluetooth/IBluetoothAvrcpController.aidl",
18        "android/bluetooth/IBluetoothAvrcpTarget.aidl",
19        "android/bluetooth/IBluetoothCallback.aidl",
20        "android/bluetooth/IBluetoothProfileServiceConnection.aidl",
21        "android/bluetooth/IBluetoothHeadset.aidl",
22        "android/bluetooth/IBluetoothHeadsetPhone.aidl",
23        "android/bluetooth/IBluetoothHealth.aidl",
24        "android/bluetooth/IBluetoothHealthCallback.aidl",
25        "android/bluetooth/IBluetoothHearingAid.aidl",
26        "android/bluetooth/IBluetoothHidHost.aidl",
27        "android/bluetooth/IBluetoothPan.aidl",
28        "android/bluetooth/IBluetoothManager.aidl",
29        "android/bluetooth/IBluetoothManagerCallback.aidl",
30        "android/bluetooth/IBluetoothMap.aidl",
31        "android/bluetooth/IBluetoothMapClient.aidl",
32        "android/bluetooth/IBluetoothPbap.aidl",
33        "android/bluetooth/IBluetoothPbapClient.aidl",
34        "android/bluetooth/IBluetoothSap.aidl",
35        "android/bluetooth/IBluetoothStateChangeCallback.aidl",
36        "android/bluetooth/IBluetoothHeadsetClient.aidl",
37        "android/bluetooth/IBluetoothHidDevice.aidl",
38        "android/bluetooth/IBluetoothHidDeviceCallback.aidl",
39        "android/bluetooth/IBluetoothGatt.aidl",
40        "android/bluetooth/IBluetoothGattCallback.aidl",
41        "android/bluetooth/IBluetoothGattServerCallback.aidl",
42        "android/bluetooth/le/IAdvertisingSetCallback.aidl",
43        "android/bluetooth/le/IPeriodicAdvertisingCallback.aidl",
44        "android/bluetooth/le/IScannerCallback.aidl"
45*/
46     ],
47    export_include_dirs: [ "./"],
48    aidl: {
49        export_aidl_headers: true,
50        include_dirs: [
51            "frameworks/native/aidl/binder",
52
53             /* required for android.os.ParcelUuid, and android.os.ParcelFileDescriptor */
54            "frameworks/base/core/java",
55            "system/bt/binder",
56        ],
57    },
58    include_dirs: [
59        "libnativehelper/include/nativehelper",
60        "system/bt/types",
61    ],
62    shared_libs: [
63        "libandroid_runtime",
64        "libbinder",
65        "libchrome",
66        "libnativehelper",
67        "libcutils",
68        "libutils",
69        "liblog",
70    ],
71
72    static_libs: [
73        "libbluetooth-types",
74    ],
75    cflags: [
76        "-Wall",
77        "-Werror",
78        "-Wextra",
79        "-Wno-unused-parameter",
80    ],
81}
82
83// AIDL interface between libbluetooth-binder and framework.jar
84filegroup {
85    name: "libbluetooth-binder-aidl",
86    srcs: [
87        "android/bluetooth/IBluetooth.aidl",
88        "android/bluetooth/IBluetoothA2dp.aidl",
89        "android/bluetooth/IBluetoothA2dpSink.aidl",
90        "android/bluetooth/IBluetoothAvrcpController.aidl",
91        "android/bluetooth/IBluetoothAvrcpTarget.aidl",
92        "android/bluetooth/IBluetoothCallback.aidl",
93        "android/bluetooth/IBluetoothProfileServiceConnection.aidl",
94        "android/bluetooth/IBluetoothHeadset.aidl",
95        "android/bluetooth/IBluetoothHeadsetPhone.aidl",
96        "android/bluetooth/IBluetoothHealth.aidl",
97        "android/bluetooth/IBluetoothHealthCallback.aidl",
98        "android/bluetooth/IBluetoothHearingAid.aidl",
99        "android/bluetooth/IBluetoothHidHost.aidl",
100        "android/bluetooth/IBluetoothPan.aidl",
101        "android/bluetooth/IBluetoothManager.aidl",
102        "android/bluetooth/IBluetoothManagerCallback.aidl",
103        "android/bluetooth/IBluetoothMap.aidl",
104        "android/bluetooth/IBluetoothMapClient.aidl",
105        "android/bluetooth/IBluetoothPbap.aidl",
106        "android/bluetooth/IBluetoothPbapClient.aidl",
107        "android/bluetooth/IBluetoothSap.aidl",
108        "android/bluetooth/IBluetoothSocketManager.aidl",
109        "android/bluetooth/IBluetoothStateChangeCallback.aidl",
110        "android/bluetooth/IBluetoothHeadsetClient.aidl",
111        "android/bluetooth/IBluetoothHidDevice.aidl",
112        "android/bluetooth/IBluetoothHidDeviceCallback.aidl",
113        "android/bluetooth/IBluetoothGatt.aidl",
114        "android/bluetooth/IBluetoothGattCallback.aidl",
115        "android/bluetooth/IBluetoothGattServerCallback.aidl",
116        "android/bluetooth/le/IAdvertisingSetCallback.aidl",
117        "android/bluetooth/le/IPeriodicAdvertisingCallback.aidl",
118        "android/bluetooth/le/IScannerCallback.aidl",
119    ],
120}
121