OLD | NEW |
1 # Copyright 2016 The Chromium Authors. All rights reserved. | 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 | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import("//build/config/features.gni") | 5 import("//build/config/features.gni") |
| 6 import("//services/catalog/public/tools/catalog.gni") |
6 import("//services/service_manager/public/cpp/service.gni") | 7 import("//services/service_manager/public/cpp/service.gni") |
7 import("//services/service_manager/public/service_manifest.gni") | 8 import("//services/service_manager/public/service_manifest.gni") |
8 | 9 |
9 if (is_android) { | 10 if (is_android) { |
10 import("//build/config/android/rules.gni") | 11 import("//build/config/android/rules.gni") |
11 } | 12 } |
12 | 13 |
13 source_set("lib") { | 14 source_set("lib") { |
14 # This should be visible only to embedders of the Device Service, and the | 15 # This should be visible only to embedders of the Device Service, and the |
15 # dependence should only be for the purpose of embedding the Device Service. | 16 # dependence should only be for the purpose of embedding the Device Service. |
16 visibility = [ "//content/browser" ] | 17 visibility = [ |
| 18 ":test_support", |
| 19 "//content/browser", |
| 20 ] |
17 sources = [ | 21 sources = [ |
18 "device_service.cc", | 22 "device_service.cc", |
19 "device_service.h", | 23 "device_service.h", |
20 ] | 24 ] |
21 | 25 |
22 deps = [ | 26 deps = [ |
23 "//base", | 27 "//base", |
24 "//device/battery:mojo_bindings", | 28 "//device/battery:mojo_bindings", |
25 "//device/sensors", | 29 "//device/sensors", |
| 30 "//device/sensors/public/interfaces", |
26 "//device/vibration:mojo_bindings", | 31 "//device/vibration:mojo_bindings", |
27 "//device/wake_lock", | 32 "//device/wake_lock", |
28 "//services/device/fingerprint", | 33 "//services/device/fingerprint", |
29 "//services/device/power_monitor", | 34 "//services/device/power_monitor", |
30 "//services/device/screen_orientation", | 35 "//services/device/screen_orientation", |
31 "//services/device/time_zone_monitor", | 36 "//services/device/time_zone_monitor", |
32 "//services/service_manager/public/cpp", | 37 "//services/service_manager/public/cpp", |
33 "//ui/gfx", | 38 "//ui/gfx", |
34 ] | 39 ] |
35 | 40 |
36 if (is_android) { | 41 if (is_android) { |
37 sources += [ | 42 sources += [ |
38 "//services/device/android/register_jni.cc", | 43 "//services/device/android/register_jni.cc", |
39 "//services/device/android/register_jni.h", | 44 "//services/device/android/register_jni.h", |
40 ] | 45 ] |
41 deps += [ ":device_service_jni_headers" ] | 46 deps += [ |
| 47 ":device_service_jni_headers", |
| 48 "//mojo/android:libsystem_java", |
| 49 ] |
42 } else { | 50 } else { |
43 deps += [ | 51 deps += [ |
44 "//device/battery", | 52 "//device/battery", |
45 "//device/vibration", | 53 "//device/vibration", |
46 ] | 54 ] |
47 } | 55 } |
48 } | 56 } |
49 | 57 |
50 source_set("tests") { | 58 source_set("tests") { |
51 testonly = true | 59 testonly = true |
52 | 60 |
53 sources = [ | 61 sources = [ |
54 "power_monitor/power_monitor_message_broadcaster_unittest.cc", | 62 "power_monitor/power_monitor_message_broadcaster_unittest.cc", |
55 "public/cpp/power_monitor/power_monitor_broadcast_source_unittest.cc", | 63 "public/cpp/power_monitor/power_monitor_broadcast_source_unittest.cc", |
| 64 "vibration/vibration_manager_impl_unittest.cc", |
56 ] | 65 ] |
57 | 66 |
58 deps = [ | 67 deps = [ |
| 68 ":test_support", |
59 "//base", | 69 "//base", |
60 "//base/test:test_support", | 70 "//base/test:test_support", |
| 71 "//device/vibration:mojo_bindings", |
61 "//mojo/public/cpp/bindings", | 72 "//mojo/public/cpp/bindings", |
62 "//services/device/power_monitor", | 73 "//services/device/power_monitor", |
63 "//services/device/public/cpp/power_monitor", | 74 "//services/device/public/cpp/power_monitor", |
64 "//testing/gtest", | 75 "//testing/gtest", |
65 ] | 76 ] |
66 | 77 |
67 if (is_chromeos) { | 78 if (is_chromeos) { |
68 sources += [ "fingerprint/fingerprint_chromeos_unittest.cc" ] | 79 sources += [ "fingerprint/fingerprint_chromeos_unittest.cc" ] |
69 deps += [ "//services/device/fingerprint" ] | 80 deps += [ "//services/device/fingerprint" ] |
70 } | 81 } |
71 | 82 |
72 if (is_android) { | 83 if (is_android) { |
73 deps += [ ":device_service_jni_headers" ] | 84 deps += [ |
| 85 ":device_service_jni_headers", |
| 86 "//device/vibration/android:vibration_jni_headers", |
| 87 ] |
74 } else { | 88 } else { |
75 deps += [ "//device/battery" ] | 89 deps += [ |
| 90 "//device/battery", |
| 91 "//device/vibration", |
| 92 ] |
76 } | 93 } |
77 } | 94 } |
78 | 95 |
79 service_manifest("manifest") { | 96 service_manifest("manifest") { |
80 name = "device" | 97 name = "device" |
81 source = "manifest.json" | 98 source = "manifest.json" |
82 } | 99 } |
83 | 100 |
| 101 service_manifest("unittest_manifest") { |
| 102 name = "device_unittests" |
| 103 source = "unittest_manifest.json" |
| 104 packaged_services = [ ":manifest" ] |
| 105 } |
| 106 |
| 107 catalog("tests_catalog") { |
| 108 testonly = true |
| 109 embedded_services = [ ":unittest_manifest" ] |
| 110 } |
| 111 |
| 112 source_set("test_support") { |
| 113 testonly = true |
| 114 |
| 115 sources = [ |
| 116 "device_service_test_base.cc", |
| 117 "device_service_test_base.h", |
| 118 ] |
| 119 |
| 120 deps = [ |
| 121 ":lib", |
| 122 "//base", |
| 123 "//base/test:test_support", |
| 124 "//mojo/public/cpp/bindings", |
| 125 "//services/device/public/interfaces:constants", |
| 126 "//services/service_manager/public/cpp:service_test_support", |
| 127 "//services/service_manager/public/cpp:sources", |
| 128 ] |
| 129 } |
| 130 |
84 if (is_android) { | 131 if (is_android) { |
85 generate_jni("device_service_jni_headers") { | 132 generate_jni("device_service_jni_headers") { |
86 sources = [ | 133 sources = [ |
87 "android/java/src/org/chromium/services/device/InterfaceRegistrar.java", | 134 "android/java/src/org/chromium/services/device/InterfaceRegistrar.java", |
88 ] | 135 ] |
89 jni_package = "device_service" | 136 jni_package = "device_service" |
90 } | 137 } |
91 | 138 |
92 android_library("java") { | 139 android_library("java") { |
93 # This should be visible only to embedders of the Device Service, and the | 140 # This should be visible only to embedders of the Device Service, and the |
94 # dependence should only be for the purpose of embedding the Device Service. | 141 # dependence should only be for the purpose of embedding the Device Service. |
95 # //content/public/android:* here actually wants to identify the | 142 # //content/public/android:* here actually wants to identify the |
96 # //content/public/android:content_java target and all of its generated | 143 # //content/public/android:content_java target and all of its generated |
97 # targets which also need to see this target as well. | 144 # targets which also need to see this target as well. |
98 visibility = [ "//content/public/android:*" ] | 145 # //services:* identifies //services:service_unittests and all of its |
| 146 # generated targets. |
| 147 visibility = [ |
| 148 "//content/public/android:*", |
| 149 "//services:*", |
| 150 ] |
99 java_files = [ "android/java/src/org/chromium/services/device/InterfaceRegis
trar.java" ] | 151 java_files = [ "android/java/src/org/chromium/services/device/InterfaceRegis
trar.java" ] |
100 deps = [ | 152 deps = [ |
101 "//base:base_java", | 153 "//base:base_java", |
102 "//device/battery:mojo_bindings_java", | 154 "//device/battery:mojo_bindings_java", |
103 "//device/battery/android:battery_monitor_java", | 155 "//device/battery/android:battery_monitor_java", |
104 "//device/vibration:mojo_bindings_java", | 156 "//device/vibration:mojo_bindings_java", |
105 "//device/vibration/android:vibration_manager_java", | 157 "//device/vibration/android:vibration_manager_java", |
106 "//mojo/android:system_java", | 158 "//mojo/android:system_java", |
107 "//mojo/public/java:bindings_java", | 159 "//mojo/public/java:bindings_java", |
108 "//mojo/public/java:system_java", | 160 "//mojo/public/java:system_java", |
109 "//services/device/screen_orientation:java", | 161 "//services/device/screen_orientation:java", |
110 "//services/device/time_zone_monitor:java", | 162 "//services/device/time_zone_monitor:java", |
111 "//services/service_manager/public/interfaces:interfaces_java", | 163 "//services/service_manager/public/interfaces:interfaces_java", |
112 "//services/service_manager/public/java:service_manager_java", | 164 "//services/service_manager/public/java:service_manager_java", |
113 ] | 165 ] |
114 } | 166 } |
115 } | 167 } |
OLD | NEW |