# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/config/features.gni")

component("base") {
  output_name = "device_base"

  sources = [
    "device_base_export.h",
    "device_client.cc",
    "device_client.h",
    "device_info_query_win.cc",
    "device_info_query_win.h",
    "device_monitor_win.cc",
    "device_monitor_win.h",
    "features.cc",
    "features.h",
  ]

  defines = [ "DEVICE_BASE_IMPLEMENTATION" ]

  deps = []

  public_deps = [
    "//base",
  ]

  if (use_udev) {
    sources += [
      "device_monitor_linux.cc",
      "device_monitor_linux.h",
    ]

    deps += [ "//device/udev_linux" ]
  }

  if (is_win) {
    libs = [ "setupapi.lib" ]
  }
}

source_set("mocks") {
  testonly = true

  sources = [
    "mock_device_client.cc",
    "mock_device_client.h",
  ]

  deps = [
    ":base",
    "//device/usb:test_support",
  ]
}