blob: c47c2ef2b520103fbfd762d41dfffc9936307706 [file] [log] [blame]
# Copyright 2017 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")
if (is_android) {
import("//build/config/android/rules.gni") # For generate_jni().
}
component("sensors") {
sources = [
"ambient_light_mac.cc",
"ambient_light_mac.h",
"android/device_sensor_jni_registrar.cc",
"android/device_sensor_jni_registrar.h",
"data_fetcher_shared_memory.h",
"data_fetcher_shared_memory_android.cc",
"data_fetcher_shared_memory_base.cc",
"data_fetcher_shared_memory_base.h",
"data_fetcher_shared_memory_chromeos.cc",
"data_fetcher_shared_memory_default.cc",
"data_fetcher_shared_memory_mac.cc",
"data_fetcher_shared_memory_win.cc",
"device_sensor_export.h",
"device_sensor_host.cc",
"device_sensor_host.h",
"device_sensor_service.cc",
"device_sensor_service.h",
"device_sensors_consts.h",
"sensor_manager_android.cc",
"sensor_manager_android.h",
"sensor_manager_chromeos.cc",
"sensor_manager_chromeos.h",
]
defines = [ "DEVICE_SENSOR_IMPLEMENTATION" ]
deps = [
"//base",
"//device/sensors/public/cpp",
"//mojo/public/cpp/bindings",
]
public_deps = [
"//device/sensors/public/interfaces",
]
if (is_win) {
sources -= [ "data_fetcher_shared_memory_default.cc" ]
libs = [
"sensorsapi.lib",
"portabledeviceguids.lib",
]
}
if (is_android) {
sources -= [ "data_fetcher_shared_memory_default.cc" ]
deps += [ ":device_sensors_jni_headers" ]
}
if (is_mac) {
sources -= [ "data_fetcher_shared_memory_default.cc" ]
deps += [ "//third_party/sudden_motion_sensor" ]
libs = [
"CoreFoundation.framework",
"IOKit.framework",
]
}
if (is_chromeos) {
sources -= [ "data_fetcher_shared_memory_default.cc" ]
deps += [
"//chromeos",
"//ui/gfx",
]
}
}
if (is_android) {
generate_jni("device_sensors_jni_headers") {
sources = [
"android/java/src/org/chromium/device/sensors/DeviceSensors.java",
]
jni_package = "sensors"
}
android_library("java") {
java_files =
[ "android/java/src/org/chromium/device/sensors/DeviceSensors.java" ]
deps = [
"//base:base_java",
"//third_party/android_tools:android_support_annotations_java",
]
srcjar_deps = [ ":device_sensors_android_java_enums_srcjar" ]
}
android_library("javatests") {
testonly = true
java_files = [ "android/javatests/src/org/chromium/device/sensors/DeviceSensorsTest.java" ]
deps = [
":java",
"//third_party/android_support_test_runner:runner_java",
]
}
java_cpp_enum("device_sensors_android_java_enums_srcjar") {
sources = [
"device_sensors_consts.h",
"sensor_manager_android.h",
]
}
}