subdirs = [
    "common",
]

cc_defaults {
    name: "fluoride_service_defaults",
    defaults: ["fluoride_defaults"],
    include_dirs: [
        "system/bt",
    ],
    header_libs: ["libbluetooth_headers"],
}

// Source variables
// ========================================================
btserviceDaemonSrc = [
    "a2dp_sink.cc",
    "a2dp_source.cc",
    "adapter.cc",
    "avrcp_control.cc",
    "avrcp_target.cc",
    "daemon.cc",
    "gatt_client.cc",
    "gatt_server.cc",
    "gatt_server_old.cc",
    "hal/bluetooth_av_interface.cc",
    "hal/bluetooth_avrcp_interface.cc",
    "hal/bluetooth_gatt_interface.cc",
    "hal/bluetooth_interface.cc",
    "ipc/ipc_handler.cc",
    "ipc/ipc_manager.cc",
    "logging_helpers.cc",
    "low_energy_advertiser.cc",
    "low_energy_scanner.cc",
    "low_energy_client.cc",
    "settings.cc",
]

btserviceLinuxSrc = [
    "ipc/ipc_handler_linux.cc",
    "ipc/linux_ipc_host.cc",
]

btserviceBinderDaemonSrc = [
    "ipc/binder/bluetooth_a2dp_sink_binder_server.cc",
    "ipc/binder/bluetooth_a2dp_source_binder_server.cc",
    "ipc/binder/bluetooth_avrcp_control_binder_server.cc",
    "ipc/binder/bluetooth_avrcp_target_binder_server.cc",
    "ipc/binder/bluetooth_binder_server.cc",
    "ipc/binder/bluetooth_gatt_client_binder_server.cc",
    "ipc/binder/bluetooth_gatt_server_binder_server.cc",
    "ipc/binder/bluetooth_le_advertiser_binder_server.cc",
    "ipc/binder/bluetooth_le_scanner_binder_server.cc",
    "ipc/binder/bluetooth_low_energy_binder_server.cc",
    "ipc/binder/interface_with_instances_base.cc",
    "ipc/binder/ipc_handler_binder.cc",
]

// Main unit test sources. These get built for host and target.
// ========================================================
btserviceBaseTestSrc = [
    "hal/fake_bluetooth_av_interface.cc",
    "hal/fake_bluetooth_gatt_interface.cc",
    "hal/fake_bluetooth_interface.cc",
    "test/a2dp_sink_unittest.cc",
    "test/a2dp_source_unittest.cc",
    "test/adapter_unittest.cc",
    "test/advertise_data_unittest.cc",
    "test/fake_hal_util.cc",
    "test/gatt_client_unittest.cc",
    "test/gatt_server_unittest.cc",
    "test/low_energy_advertiser_unittest.cc",
    "test/low_energy_client_unittest.cc",
    "test/low_energy_scanner_unittest.cc",
    "test/settings_unittest.cc",
]

// Native system service for target
// ========================================================
cc_binary {
    name: "bluetoothtbd",
    defaults: ["fluoride_service_defaults"],
    srcs: btserviceBinderDaemonSrc +
        btserviceLinuxSrc +
        btserviceDaemonSrc +
        ["main.cc"],
    static_libs: [
        "libbluetooth-binder-common",
        "libbtcore",
        "libbluetooth-types",
        "libosi",
    ],

    shared_libs: [
        "libchrome",
        "libbinder",
        "libcutils",
        "liblog",
        "libutils",
    ],
    init_rc: ["bluetoothtbd.rc"],
}

// Native system service unit tests for target and host

// ========================================================
cc_test {
    name: "bluetoothtbd_test",
    test_suites: ["device-tests"],
    defaults: ["fluoride_service_defaults"],
    srcs: btserviceBaseTestSrc +
        btserviceDaemonSrc + [
            "test/main.cc",
        ],
    aidl: {
        include_dirs: [
            "system/bt/service/common",
            "frameworks/native/aidl/binder",
        ],
    },
    static_libs: [
        "libbluetooth-common",
        "libgmock",
        "liblog",
        "libbluetooth-types",
        "libutils",
    ],
    shared_libs: [
        "libchrome",
    ],

    host_supported: true,
    target: {
        // This includes Binder related tests that can only be run
        // on target.
        android: {
            srcs: btserviceBinderDaemonSrc + [
                "test/parcelable_unittest.cc",
                "test/ParcelableTest.aidl",
            ],
            static_libs: [
                "libbluetooth-binder-common",
            ],
            shared_libs: [
                "libbinder",
            ],
        },
        host: {
            srcs: [
                "test/stub_ipc_handler_binder.cc",
            ],
        },
        linux_glibc: {
            srcs: btserviceLinuxSrc + [
                // TODO(bcf): Fix this test.
                //"test/ipc_linux_unittest.cc",
            ],
        },
    },
    sanitize: {
        cfi: false,
    },
}

// Native system service CLI for target
// ========================================================
cc_binary {
    name: "bluetooth-cli",
    defaults: ["fluoride_defaults"],
    srcs: ["client/main.cc"],
    static_libs: [
        "libbluetooth-binder-common",
    ],
    shared_libs: [
        "libbinder",
        "libutils",
    ],
}

// Heart Rate GATT service example for target
// ========================================================
cc_binary {
    name: "bt-example-hr-server",
    defaults: ["fluoride_defaults"],
    local_include_dirs: ["example/heart_rate"],
    srcs: [
        "example/heart_rate/heart_rate_server.cc",
        "example/heart_rate/server_main.cc",
    ],
    static_libs: [
        "libbluetooth-binder-common",
    ],
    shared_libs: [
        "libbinder",
        "libutils",
    ],
}

cc_library_static {
    name: "libbluetoothtbd_hal",
    defaults: ["fluoride_defaults"],
    include_dirs: ["system/bt"],
    header_libs: ["libbluetooth_headers"],
    srcs: [
        "hal/bluetooth_gatt_interface.cc",
        "hal/bluetooth_interface.cc",
        "logging_helpers.cc",
    ],
}
