Upstreaming browser/ui/uikit_ui_util from iOS.
[chromium-blink-merge.git] / remoting / BUILD.gn
blob4895f28df041c0554177460959d83c4ff3776a2a
1 # Copyright 2015 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.
5 import("//build/config/features.gni")
6 import("//build/config/ui.gni")
7 import("//build/util/version.gni")
8 import("//remoting/remoting_version.gni")
9 import("//remoting/remoting_enable.gni")
10 import("//testing/test.gni")
12 # Various remoting targets need this version definition.
13 config("version") {
14   defines = [ "VERSION=$chrome_version_full" ]
17 group("remoting_all") {
18   testonly = true
20   deps = [
21     #"//remoting:remoting_browser_test_resources",
22     "//remoting:remoting_unittests",
23     #"//remoting:remoting_webapp_unittests",
24     #"//app_remoting_test.gyp:ar_sample_test_driver",
25     #"//app_remoting_webapp.gyp:ar_sample_app",
26   ]
28   # TODO(GYP): add is_mac
29   if ((is_linux && !is_chromeos) || is_win) {
30     deps += [ "//remoting/webapp" ]
31   }
33   if (is_win) {
34     deps += [
35       #"//remoting:remoting_breakpad_tester",
36       #"//remoting:remoting_console",
37       #"//remoting:remoting_desktop",
38       #"//remoting:remoting_host_installation",
39     ]
40   }
42   if (is_android) {
43     deps += [
44       #"//remoting:remoting_apk",
45       #"//remoting:remoting_test_apk",
46       #"//remoting:remoting_unittests_apk",
47     ]
48   }
50   if (enable_remoting_host) {
51     deps += [
52       "//remoting:remoting_perftests",
53       "//remoting/host",
54       "//remoting/host:remoting_start_host",
55       "//remoting/host/it2me:remote_assistance_host",
57       #"//remoting:remoting_it2me_native_messaging_host",
58       #"//remoting:remoting_native_messaging_manifests",
59     ]
60   }
62   if (enable_me2me_host) {
63     deps += [
64       "//remoting/host:remoting_me2me_host",
65       #"//remoting/host:remoting_me2me_host_archive",
66     ]
67   }
69   # TODO(GYP) Depends on crbug.com/471924 being fixed for PNaCl.
70   if (enable_nacl) {
71     deps += [ "//remoting:remoting_key_tester" ]
72   }
75 # GYP version: remoting/remoting_test.gypi:remoting_test_support
76 source_set("test_support") {
77   testonly = true
79   deps = [
80     "//base",
81     "//net",
82     "//remoting/base",
83     "//remoting/client",
84     "//remoting/codec",
85     "//remoting/protocol:test_support",
86     "//remoting/resources",
87     "//remoting/signaling:test_support",
88     "//remoting/test:test_support",
89     "//testing/gmock",
90     "//testing/gtest",
91   ]
93   if (enable_configuration_policy) {
94     deps += [ "//components/policy:test_support" ]
95   }
97   if (enable_remoting_host) {
98     deps += [ "//remoting/host:test_support" ]
99   }
102 # TODO(GYP) remoting_unittests on Mac. Needs to be tested.
103 if (!is_mac) {
104   # TODO(GYP): Delete this after we've converted everything to GN.
105   # The _run targets exist only for compatibility w/ GYP.
106   group("remoting_unittests_run") {
107     testonly = true
108     deps = [
109       ":remoting_unittests",
110     ]
111   }
113   test("remoting_unittests") {
114     configs += [
115       ":version",
117       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
118       "//build/config/compiler:no_size_t_to_int_warning",
119     ]
121     data = [
122       "//net/data/ssl/certificates/ok_cert.pem",
123       "//net/data/ssl/certificates/unittest.key.bin",
124       "//net/data/ssl/certificates/unittest.selfsigned.der",
125     ]
127     deps = [
128       ":test_support",
129       "//base/allocator",
130       "//google_apis",
131       "//remoting/base:unit_tests",
132       "//remoting/client:unit_tests",
133       "//remoting/protocol:unit_tests",
134       "//remoting/signaling:unit_tests",
135       "//remoting/test:unit_tests",
136       "//testing/gmock",
137       "//testing/gtest",
138       "//third_party/webrtc",
139     ]
141     if (is_android) {
142       deps += [ "//testing/android/native_test:native_test_native_code" ]
143     }
145     if (enable_remoting_host) {
146       deps += [
147         "//remoting/codec:unit_tests",
148         "//remoting/host:unit_tests",
149         "//ui/gfx",
150       ]
151     }
153     if (enable_webrtc) {
154       deps += [
155         "//third_party/libjingle:libjingle_webrtc",
156         "//third_party/libjingle:libpeerconnection",
157       ]
158     }
159   }
161   if (enable_remoting_host) {
162     test("remoting_perftests") {
163       sources = [
164         "codec/codec_test.cc",
165         "codec/codec_test.h",
166         "codec/video_encoder_vpx_perftest.cc",
167         "test/protocol_perftest.cc",
168       ]
170       configs += [ ":version" ]
172       deps = [
173         ":test_support",
174         "//base",
175         "//base/test:run_all_unittests",
176         "//base/test:test_support",
177         "//net:test_support",
178         "//remoting/base",
179         "//testing/gtest",
180         "//third_party/webrtc/modules/desktop_capture",
181         "//third_party/libjingle",
182       ]
184       if (enable_webrtc) {
185         deps += [ "//third_party/libjingle:libjingle_webrtc" ]
186       }
187     }
188   }
189 } else {
190   group("remoting_unittests") {
191   }
194 if (enable_pnacl) {
195   group("remoting_key_tester") {
196     deps = [
197       ":remoting_key_tester_copies",
198     ]
199   }
201   copy("remoting_key_tester_copies") {
202     sources = [
203       "tools/javascript_key_tester/background.js",
204       "tools/javascript_key_tester/chord_tracker.js",
205       "tools/javascript_key_tester/event_listeners.js",
206       "tools/javascript_key_tester/icon_128.png",
207       "tools/javascript_key_tester/main.css",
208       "tools/javascript_key_tester/main.html",
209       "tools/javascript_key_tester/main.js",
210       "tools/javascript_key_tester/manifest.json",
211       "tools/javascript_key_tester/pnacl/remoting_key_tester.nmf",
213       # TODO(GYP): crbug.com/471924 "$target_out_dir/remoting_key_tester_newlib.pexe",
214     ]
216     outputs = [
217       "$target_out_dir/remoting/key_tester/{{source_file_part}}",
218     ]
220     deps = [
221       ":remoting_key_tester_jscompile",
222       ":remoting_key_tester_pexe",
223     ]
224   }
226   group("remoting_key_tester_jscompile") {
227     # TODO(GYP): crbug.com/471926 add support for run_jscompile=true.
228     run_jscompile = false
229     if (run_jscompile) {
230     }
231   }
233   group("remoting_key_tester_pexe") {
234     # TODO(GYP): crbug.com/471924 implement me when we have a pnacl toolchain.
235     #sources = [
236     # "tools/javascript_key_tester/pnacl/remoting_key_tester.cc",
237     #]
238   }