# Copyright 2016 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("//third_party/WebKit/Source/modules/modules.gni")

blink_modules_sources("sensor") {
  sources = [
    "Sensor.cpp",
    "Sensor.h",
    "SensorErrorEvent.cpp",
    "SensorErrorEvent.h",
    "SensorProviderProxy.cpp",
    "SensorProviderProxy.h",
    "SensorProxy.cpp",
    "SensorProxy.h",
    "SensorReading.cpp",
    "SensorReading.h",
    "SensorReadingEvent.cpp",
    "SensorReadingEvent.h",
    "SensorState.h",
  ]

  deps = [
    "//device/generic_sensor/public/interfaces:interfaces_blink",
  ]
}
