OLD | NEW |
| (Empty) |
1 # Copyright 2016 The Chromium Authors. All rights reserved. | |
2 # Use of this source code is governed by a BSD-style license that can be | |
3 # found in the LICENSE file. | |
4 | |
5 import("//build/config/features.gni") | |
6 | |
7 if (is_android) { | |
8 import("//build/config/android/rules.gni") # For generate_jni(). | |
9 } | |
10 | |
11 source_set("generic_sensor") { | |
12 output_name = "generic_sensor" | |
13 sources = [ | |
14 "generic_sensor_consts.h", | |
15 "linux/sensor_data_linux.cc", | |
16 "linux/sensor_data_linux.h", | |
17 "platform_sensor.cc", | |
18 "platform_sensor.h", | |
19 "platform_sensor_accelerometer_mac.cc", | |
20 "platform_sensor_accelerometer_mac.h", | |
21 "platform_sensor_ambient_light_mac.cc", | |
22 "platform_sensor_ambient_light_mac.h", | |
23 "platform_sensor_android.cc", | |
24 "platform_sensor_android.h", | |
25 "platform_sensor_linux.cc", | |
26 "platform_sensor_linux.h", | |
27 "platform_sensor_provider.cc", | |
28 "platform_sensor_provider.h", | |
29 "platform_sensor_provider_android.cc", | |
30 "platform_sensor_provider_android.h", | |
31 "platform_sensor_provider_base.cc", | |
32 "platform_sensor_provider_base.h", | |
33 "platform_sensor_provider_mac.cc", | |
34 "platform_sensor_provider_mac.h", | |
35 "platform_sensor_provider_win.cc", | |
36 "platform_sensor_provider_win.h", | |
37 "platform_sensor_reader_linux.cc", | |
38 "platform_sensor_reader_linux.h", | |
39 "platform_sensor_reader_win.cc", | |
40 "platform_sensor_reader_win.h", | |
41 "platform_sensor_win.cc", | |
42 "platform_sensor_win.h", | |
43 "sensor_impl.cc", | |
44 "sensor_impl.h", | |
45 "sensor_provider_impl.cc", | |
46 "sensor_provider_impl.h", | |
47 ] | |
48 | |
49 deps = [ | |
50 "//base", | |
51 "//device/base/synchronization", | |
52 ] | |
53 | |
54 public_deps = [ | |
55 "//services/device/public/cpp/generic_sensor", | |
56 ] | |
57 | |
58 if (is_android) { | |
59 sources += [ | |
60 "android/sensors_jni_registrar.cc", | |
61 "android/sensors_jni_registrar.h", | |
62 ] | |
63 | |
64 deps += [ ":jni_headers" ] | |
65 } | |
66 | |
67 if (is_mac) { | |
68 deps += [ | |
69 "//device/sensors/public/cpp:full", | |
70 "//third_party/sudden_motion_sensor", | |
71 ] | |
72 libs = [ | |
73 "CoreFoundation.framework", | |
74 "IOKit.framework", | |
75 ] | |
76 } | |
77 | |
78 if (use_udev) { | |
79 deps += [ | |
80 "//device/base", | |
81 "//device/udev_linux", | |
82 ] | |
83 | |
84 sources += [ | |
85 "linux/sensor_device_manager.cc", | |
86 "linux/sensor_device_manager.h", | |
87 "platform_sensor_provider_linux.cc", | |
88 "platform_sensor_provider_linux.h", | |
89 ] | |
90 } | |
91 | |
92 if (is_win) { | |
93 libs = [ | |
94 "portabledeviceguids.lib", | |
95 "sensorsapi.lib", | |
96 ] | |
97 } | |
98 } | |
99 | |
100 if (is_android) { | |
101 device_sensors_jni_sources = [ | |
102 "android/java/src/org/chromium/device/sensors/PlatformSensor.java", | |
103 "android/java/src/org/chromium/device/sensors/PlatformSensorProvider.java", | |
104 ] | |
105 | |
106 generate_jni("jni_headers") { | |
107 sources = device_sensors_jni_sources | |
108 jni_package = "device" | |
109 } | |
110 | |
111 android_library("java") { | |
112 java_files = device_sensors_jni_sources | |
113 | |
114 deps = [ | |
115 "//base:base_java", | |
116 "//services/device/public/interfaces:generic_sensor_java", | |
117 ] | |
118 } | |
119 } | |
120 | |
121 static_library("testing") { | |
122 testonly = true | |
123 sources = [ | |
124 "fake_platform_sensor.cc", | |
125 "fake_platform_sensor.h", | |
126 "fake_platform_sensor_provider.cc", | |
127 "fake_platform_sensor_provider.h", | |
128 ] | |
129 | |
130 public_deps = [ | |
131 ":generic_sensor", | |
132 "//base", | |
133 "//testing/gmock", | |
134 ] | |
135 } | |
OLD | NEW |