In the presubmit for auto-bisect, run pylint and unit tests.
[chromium-blink-merge.git] / mojo / mojo_services.gypi
blob995cc6e664ad6e9af36dde61df8ed623be94d281
1 # Copyright (c) 2014 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.
6   'targets': [
7     {
8       'target_name': 'mojo_html_viewer',
9       'type': 'loadable_module',
10       'dependencies': [
11         '../net/net.gyp:net',
12         '../skia/skia.gyp:skia',
13         '../third_party/WebKit/public/blink.gyp:blink',
14         '../ui/native_theme/native_theme.gyp:native_theme',
15         '../url/url.gyp:url_lib',
16         'mojo_base.gyp:mojo_common_lib',
17         'mojo_base.gyp:mojo_cpp_bindings',
18         'mojo_base.gyp:mojo_utility',
19         'mojo_base.gyp:mojo_application_chromium',
20         'mojo_navigation_bindings',
21         'mojo_network_bindings',
22         'mojo_launcher_bindings',
23         'mojo_view_manager_lib',
24         '<(mojo_system_for_loadable_module)',
25       ],
26       'include_dirs': [
27         'third_party/WebKit'
28       ],
29       'sources': [
30         'services/html_viewer/blink_input_events_type_converters.cc',
31         'services/html_viewer/blink_input_events_type_converters.h',
32         'services/html_viewer/blink_platform_impl.cc',
33         'services/html_viewer/blink_platform_impl.h',
34         'services/html_viewer/blink_url_request_type_converters.cc',
35         'services/html_viewer/blink_url_request_type_converters.h',
36         'services/html_viewer/html_viewer.cc',
37         'services/html_viewer/html_document_view.cc',
38         'services/html_viewer/html_document_view.h',
39         'services/html_viewer/webcookiejar_impl.cc',
40         'services/html_viewer/webcookiejar_impl.h',
41         'services/html_viewer/webmimeregistry_impl.cc',
42         'services/html_viewer/webmimeregistry_impl.h',
43         'services/html_viewer/webstoragenamespace_impl.cc',
44         'services/html_viewer/webstoragenamespace_impl.h',
45         'services/html_viewer/webthemeengine_impl.cc',
46         'services/html_viewer/webthemeengine_impl.h',
47         'services/html_viewer/webthread_impl.cc',
48         'services/html_viewer/webthread_impl.h',
49         'services/html_viewer/weburlloader_impl.cc',
50         'services/html_viewer/weburlloader_impl.h',
51       ],
52     },
53     {
54       # GN version: //mojo/services/public/cpp/input_events
55       'target_name': 'mojo_input_events_lib',
56       'type': '<(component)',
57       'defines': [
58         'MOJO_INPUT_EVENTS_IMPLEMENTATION',
59       ],
60       'dependencies': [
61         '../base/base.gyp:base',
62         '../ui/events/events.gyp:events',
63         '../ui/gfx/gfx.gyp:gfx_geometry',
64         'mojo_base.gyp:mojo_environment_chromium',
65         'mojo_input_events_bindings',
66         'mojo_geometry_bindings',
67         'mojo_geometry_lib',
68         '<(mojo_system_for_component)',
69       ],
70       'sources': [
71         'services/public/cpp/input_events/lib/input_events_type_converters.cc',
72         'services/public/cpp/input_events/lib/mojo_extended_key_event_data.cc',
73         'services/public/cpp/input_events/lib/mojo_extended_key_event_data.h',
74         'services/public/cpp/input_events/input_events_type_converters.h',
75         'services/public/cpp/input_events/mojo_input_events_export.h',
76       ],
77     },
78     {
79       # GN version: //mojo/services/public/interfaces/input_events
80       'target_name': 'mojo_input_events_bindings',
81       'type': 'static_library',
82       'sources': [
83         'services/public/interfaces/input_events/input_event_constants.mojom',
84         'services/public/interfaces/input_events/input_events.mojom',
85         'services/public/interfaces/input_events/input_key_codes.mojom',
86       ],
87       'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
88       'dependencies': [
89         'mojo_base.gyp:mojo_cpp_bindings',
90         'mojo_geometry_bindings',
91       ],
92       'export_dependent_settings': [
93         'mojo_base.gyp:mojo_cpp_bindings',
94         'mojo_geometry_bindings',
95       ],
96     },
97     {
98       # GN version: //mojo/services/public/interfaces/geometry
99       'target_name': 'mojo_geometry_bindings',
100       'type': 'static_library',
101       'sources': [
102         'services/public/interfaces/geometry/geometry.mojom',
103       ],
104       'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
105       'dependencies': [
106         'mojo_base.gyp:mojo_cpp_bindings',
107       ],
108       'export_dependent_settings': [
109         'mojo_base.gyp:mojo_cpp_bindings',
110       ],
111     },
112     {
113       # GN version: //mojo/services/public/cpp/geometry
114       'target_name': 'mojo_geometry_lib',
115       'type': '<(component)',
116       'defines': [
117         'MOJO_GEOMETRY_IMPLEMENTATION',
118       ],
119       'dependencies': [
120         '../skia/skia.gyp:skia',
121         '../ui/gfx/gfx.gyp:gfx',
122         '../ui/gfx/gfx.gyp:gfx_geometry',
123         'mojo_base.gyp:mojo_environment_chromium',
124         'mojo_geometry_bindings',
125         '<(mojo_system_for_component)',
126       ],
127       'export_dependent_settings': [
128         '../ui/gfx/gfx.gyp:gfx',
129       ],
130       'sources': [
131         'services/public/cpp/geometry/lib/geometry_type_converters.cc',
132         'services/public/cpp/geometry/geometry_type_converters.h',
133         'services/public/cpp/geometry/mojo_geometry_export.h',
134       ],
135     },
136     {
137       # GN version: //mojo/services/public/cpp/surfaces
138       'target_name': 'mojo_surfaces_lib',
139       'type': '<(component)',
140       'defines': [
141         'MOJO_SURFACES_IMPLEMENTATION',
142       ],
143       'dependencies': [
144         '../base/base.gyp:base',
145         '../cc/cc.gyp:cc',
146         '../cc/cc.gyp:cc_surfaces',
147         '../gpu/gpu.gyp:gpu',
148         '../ui/gfx/gfx.gyp:gfx',
149         '../ui/gfx/gfx.gyp:gfx_geometry',
150         'mojo_base.gyp:mojo_environment_chromium',
151         'mojo_geometry_lib',
152         'mojo_surfaces_bindings',
153         '<(mojo_system_for_component)',
154       ],
155       'export_dependent_settings': [
156         'mojo_geometry_lib',
157         'mojo_surfaces_bindings',
158       ],
159       'sources': [
160         'services/public/cpp/surfaces/lib/surfaces_type_converters.cc',
161         'services/public/cpp/surfaces/surfaces_type_converters.h',
162         'services/public/cpp/surfaces/mojo_surfaces_export.h',
163       ],
164     },
165     {
166       # GN version: //mojo/services/public/cpp/surfaces/tests
167       'target_name': 'mojo_surfaces_lib_unittests',
168       'type': 'executable',
169       'dependencies': [
170         '../base/base.gyp:base',
171         '../base/base.gyp:test_support_base',
172         '../cc/cc.gyp:cc',
173         '../cc/cc.gyp:cc_surfaces',
174         '../gpu/gpu.gyp:gpu',
175         '../skia/skia.gyp:skia',
176         '../testing/gtest.gyp:gtest',
177         '../ui/gfx/gfx.gyp:gfx',
178         '../ui/gfx/gfx.gyp:gfx_geometry',
179         '../ui/gfx/gfx.gyp:gfx_test_support',
180         'mojo_base.gyp:mojo_environment_chromium',
181         'mojo_base.gyp:mojo_run_all_unittests',
182         'mojo_geometry_lib',
183         'mojo_surfaces_bindings',
184         'mojo_surfaces_lib',
185       ],
186       'sources': [
187         'services/public/cpp/surfaces/tests/surface_unittest.cc',
188       ],
189     },
190     {
191       # GN version: //mojo/services/gles2
192       'target_name': 'mojo_gles2_service',
193       'type': 'static_library',
194       'dependencies': [
195         '../base/base.gyp:base',
196         '../gpu/gpu.gyp:command_buffer_service',
197         '../ui/gfx/gfx.gyp:gfx',
198         '../ui/gfx/gfx.gyp:gfx_geometry',
199         '../ui/gl/gl.gyp:gl',
200         'mojo_base.gyp:mojo_gles2_bindings',
201       ],
202       'export_dependent_settings': [
203         'mojo_base.gyp:mojo_gles2_bindings',
204       ],
205       'sources': [
206         'services/gles2/command_buffer_impl.cc',
207         'services/gles2/command_buffer_impl.h',
208       ],
209     },
210     {
211       # GN version: //mojo/services/public/interfaces/gpu
212       'target_name': 'mojo_gpu_bindings',
213       'type': 'static_library',
214       'sources': [
215         'services/public/interfaces/gpu/gpu.mojom',
216       ],
217       'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
218       'dependencies': [
219         'mojo_base.gyp:mojo_cpp_bindings',
220         'mojo_base.gyp:mojo_gles2_bindings',
221         'mojo_geometry_bindings',
222       ],
223       'export_dependent_settings': [
224         'mojo_base.gyp:mojo_cpp_bindings',
225         'mojo_base.gyp:mojo_gles2_bindings',
226         'mojo_geometry_bindings',
227       ],
228     },
229     {
230       # GN version: //mojo/services/public/interfaces/native_viewport
231       'target_name': 'mojo_native_viewport_bindings',
232       'type': 'static_library',
233       'sources': [
234         'services/public/interfaces/native_viewport/native_viewport.mojom',
235       ],
236       'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
237       'dependencies': [
238         'mojo_base.gyp:mojo_cpp_bindings',
239         'mojo_base.gyp:mojo_gles2_bindings',
240         'mojo_geometry_bindings',
241         'mojo_input_events_bindings',
242         'mojo_surface_id_bindings',
243       ],
244       'export_dependent_settings': [
245         'mojo_base.gyp:mojo_cpp_bindings',
246         'mojo_base.gyp:mojo_gles2_bindings',
247         'mojo_geometry_bindings',
248         'mojo_input_events_bindings',
249         'mojo_surface_id_bindings',
250       ],
251     },
252     {
253       # GN version: //mojo/services/native_viewport
254       'target_name': 'mojo_native_viewport_service_lib',
255       # This is linked directly into the embedder, so we make it a static_library.
256       # TODO(davemoore): Make this a true service.
257       'type': 'static_library',
258       'dependencies': [
259         '../base/base.gyp:base',
260         '../cc/cc.gyp:cc_surfaces',
261         '../skia/skia.gyp:skia',
262         '../ui/events/events.gyp:events',
263         '../ui/gfx/gfx.gyp:gfx',
264         '../ui/gfx/gfx.gyp:gfx_geometry',
265         'mojo_base.gyp:mojo_application_chromium',
266         'mojo_base.gyp:mojo_common_lib',
267         'mojo_geometry_bindings',
268         'mojo_geometry_lib',
269         'mojo_gles2_service',
270         'mojo_gpu_bindings',
271         'mojo_input_events_lib',
272         'mojo_native_viewport_bindings',
273         'mojo_surfaces_bindings',
274         'mojo_surfaces_lib',
275       ],
276       'export_dependent_settings': [
277         'mojo_geometry_bindings',
278         'mojo_gpu_bindings',
279         'mojo_native_viewport_bindings',
280         'mojo_surfaces_bindings',
281       ],
282       'sources': [
283         'services/native_viewport/gpu_impl.cc',
284         'services/native_viewport/gpu_impl.h',
285         'services/native_viewport/native_viewport_impl.cc',
286         'services/native_viewport/native_viewport_impl.h',
287         'services/native_viewport/platform_viewport.h',
288         'services/native_viewport/platform_viewport_android.cc',
289         'services/native_viewport/platform_viewport_mac.mm',
290         'services/native_viewport/platform_viewport_ozone.cc',
291         'services/native_viewport/platform_viewport_stub.cc',
292         'services/native_viewport/platform_viewport_win.cc',
293         'services/native_viewport/platform_viewport_x11.cc',
294         'services/native_viewport/viewport_surface.cc',
295         'services/native_viewport/viewport_surface.h',
296       ],
297       'conditions': [
298         ['OS=="win" or OS=="android" or OS=="linux" or OS=="mac"', {
299           'sources!': [
300             'services/native_viewport/platform_viewport_stub.cc',
301           ],
302         }],
303         ['OS=="android"', {
304           'dependencies': [
305             'mojo_base.gyp:mojo_jni_headers',
306           ],
307         }],
308         ['OS=="win"', {
309           'dependencies': [
310             '../ui/platform_window/win/win_window.gyp:win_window',
311           ],
312         }],
313         ['use_x11==1', {
314           'dependencies': [
315             '../ui/platform_window/x11/x11_window.gyp:x11_window',
316             '../ui/events/platform/x11/x11_events_platform.gyp:x11_events_platform',
317           ],
318         }],
319         ['use_ozone==1', {
320           'dependencies': [
321             '../ui/ozone/ozone.gyp:ozone',
322           ],
323         }],
324       ],
325     },
326     {
327       # GN version: //mojo/services/public/interfaces/navigation
328       'target_name': 'mojo_navigation_bindings',
329       'type': 'static_library',
330       'sources': [
331         'services/public/interfaces/navigation/navigation.mojom',
332       ],
333       'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
334       'export_dependent_settings': [
335         'mojo_base.gyp:mojo_cpp_bindings',
336       ],
337       'dependencies': [
338         'mojo_base.gyp:mojo_cpp_bindings',
339         'mojo_network_bindings',
340       ],
341     },
342     {
343       # GN version: //mojo/services/public/interfaces/content_handler
344       'target_name': 'mojo_content_handler_bindings',
345       'type': 'static_library',
346       'sources': [
347         'services/public/interfaces/content_handler/content_handler.mojom',
348       ],
349       'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
350       'export_dependent_settings': [
351         'mojo_base.gyp:mojo_cpp_bindings',
352       ],
353       'dependencies': [
354         'mojo_base.gyp:mojo_application_bindings',
355         'mojo_base.gyp:mojo_cpp_bindings',
356         'mojo_network_bindings',
357       ],
358     },
359     {
360       # GN version: //mojo/services/public/interfaces/network
361       'target_name': 'mojo_network_bindings',
362       'type': 'static_library',
363       'sources': [
364         'services/public/interfaces/network/cookie_store.mojom',
365         'services/public/interfaces/network/network_error.mojom',
366         'services/public/interfaces/network/network_service.mojom',
367         'services/public/interfaces/network/url_loader.mojom',
368       ],
369       'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
370       'export_dependent_settings': [
371         'mojo_base.gyp:mojo_cpp_bindings',
372       ],
373       'dependencies': [
374         'mojo_base.gyp:mojo_cpp_bindings',
375       ],
376     },
377     {
378       # GN version: //mojo/services/network
379       'target_name': 'mojo_network_service_lib',
380       'type': 'static_library',
381       'dependencies': [
382         '../base/base.gyp:base',
383         '../net/net.gyp:net',
384         '../url/url.gyp:url_lib',
385         'mojo_base.gyp:mojo_common_lib',
386         'mojo_base.gyp:mojo_application_chromium',
387         'mojo_network_bindings',
388       ],
389       'export_dependent_settings': [
390         'mojo_network_bindings',
391       ],
392       'sources': [
393         'services/network/cookie_store_impl.cc',
394         'services/network/cookie_store_impl.h',
395         'services/network/network_context.cc',
396         'services/network/network_context.h',
397         'services/network/network_service_impl.cc',
398         'services/network/network_service_impl.h',
399         'services/network/url_loader_impl.cc',
400         'services/network/url_loader_impl.h',
401       ],
402     },
403     {
404       'target_name': 'mojo_network_service',
405       'type': 'loadable_module',
406       'dependencies': [
407         'mojo_network_bindings',
408         'mojo_network_service_lib',
409         '<(mojo_system_for_loadable_module)',
410       ],
411       'export_dependent_settings': [
412         'mojo_network_bindings',
413       ],
414       'sources': [
415         'services/network/main.cc',
416       ],
417     },
418     {
419       # GN version: //mojo/services/surfaces
420       'target_name': 'mojo_surfaces_service',
421       'type': 'loadable_module',
422       'dependencies': [
423         '../base/base.gyp:base',
424         '../cc/cc.gyp:cc',
425         '../cc/cc.gyp:cc_surfaces',
426         '../ui/gfx/gfx.gyp:gfx_geometry',
427         'mojo_base.gyp:mojo_application_chromium',
428         'mojo_cc_support',
429         'mojo_geometry_bindings',
430         'mojo_geometry_lib',
431         'mojo_gpu_bindings',
432         'mojo_surfaces_bindings',
433         'mojo_surfaces_lib',
434         '<(mojo_system_for_loadable_module)',
435       ],
436       'includes': [
437         'mojo_public_gles2_for_loadable_module.gypi',
438       ],
439       'sources': [
440         'services/surfaces/surfaces_impl.cc',
441         'services/surfaces/surfaces_impl.h',
442         'services/surfaces/surfaces_service_application.cc',
443         'services/surfaces/surfaces_service_application.h',
444         'services/surfaces/surfaces_service_impl.cc',
445         'services/surfaces/surfaces_service_impl.h',
446       ],
447     },
448     {
449       # GN version: //mojo/services/public/cpp/view_manager:common
450       'target_name': 'mojo_view_manager_common',
451       'type': 'static_library',
452       'sources': [
453         'services/public/cpp/view_manager/types.h',
454       ],
455     },
456     {
457       # GN version: //mojo/services/public/interfaces/launcher
458       'target_name': 'mojo_launcher_bindings',
459       'type': 'static_library',
460       'sources': [
461         'services/public/interfaces/launcher/launcher.mojom',
462       ],
463       'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
464       'export_dependent_settings': [
465         'mojo_base.gyp:mojo_cpp_bindings',
466       ],
467       'dependencies': [
468         'mojo_base.gyp:mojo_cpp_bindings',
469         'mojo_navigation_bindings',
470       ],
471     },
472     {
473       'target_name': 'mojo_launcher',
474       'type': 'loadable_module',
475       'dependencies': [
476         '../base/base.gyp:base',
477         '../url/url.gyp:url_lib',
478         'mojo_base.gyp:mojo_cpp_bindings',
479         'mojo_base.gyp:mojo_application_chromium',
480         'mojo_launcher_bindings',
481         'mojo_network_bindings',
482         '<(mojo_system_for_loadable_module)',
483       ],
484       'sources': [
485         'services/launcher/launcher.cc',
486       ],
487     },
488     {
489       # GN version: //mojo/services/public/interfaces/view_manager
490       'target_name': 'mojo_view_manager_bindings',
491       'type': 'static_library',
492       'sources': [
493         'services/public/interfaces/view_manager/view_manager.mojom',
494         'services/public/interfaces/view_manager/view_manager_constants.mojom',
495       ],
496       'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
497       'dependencies': [
498         'mojo_base.gyp:mojo_application_bindings',
499         'mojo_base.gyp:mojo_cpp_bindings',
500         'mojo_geometry_bindings',
501         'mojo_input_events_bindings',
502       ],
503       'export_dependent_settings': [
504         'mojo_base.gyp:mojo_application_bindings',
505         'mojo_base.gyp:mojo_cpp_bindings',
506         'mojo_geometry_bindings',
507         'mojo_input_events_bindings',
508       ],
509     },
510     {
511       # GN version: //mojo/services/public/cpp/view_manager
512       'target_name': 'mojo_view_manager_lib',
513       'type': 'static_library',
514       'dependencies': [
515         '../base/base.gyp:base',
516         '../skia/skia.gyp:skia',
517         '../ui/events/events.gyp:events',
518         '../ui/gfx/gfx.gyp:gfx',
519         '../ui/gfx/gfx.gyp:gfx_geometry',
520         'mojo_base.gyp:mojo_application_chromium',
521         'mojo_base.gyp:mojo_application_bindings',
522         'mojo_core_window_manager_bindings',
523         'mojo_geometry_bindings',
524         'mojo_geometry_lib',
525         'mojo_view_manager_bindings',
526         'mojo_view_manager_common',
527       ],
528       'sources': [
529         'services/public/cpp/view_manager/lib/view.cc',
530         'services/public/cpp/view_manager/lib/view_manager_client_factory.cc',
531         'services/public/cpp/view_manager/lib/view_manager_client_impl.cc',
532         'services/public/cpp/view_manager/lib/view_manager_client_impl.h',
533         'services/public/cpp/view_manager/lib/view_observer.cc',
534         'services/public/cpp/view_manager/lib/view_private.cc',
535         'services/public/cpp/view_manager/lib/view_private.h',
536         'services/public/cpp/view_manager/view.h',
537         'services/public/cpp/view_manager/view_manager.h',
538         'services/public/cpp/view_manager/view_manager_client_factory.h',
539         'services/public/cpp/view_manager/view_manager_delegate.h',
540         'services/public/cpp/view_manager/view_observer.h',
541         'services/public/cpp/view_manager/window_manager_delegate.h',
542       ],
543       'export_dependent_settings': [
544         'mojo_view_manager_bindings',
545       ],
546     },
547     {
548       # GN version: //mojo/services/public/cpp/view_manager/tests:mojo_view_manager_lib_unittests
549       'target_name': 'mojo_view_manager_lib_unittests',
550       'type': 'executable',
551       'dependencies': [
552         '../base/base.gyp:base',
553         '../base/base.gyp:test_support_base',
554         '../testing/gtest.gyp:gtest',
555         '../ui/gfx/gfx.gyp:gfx',
556         '../ui/gfx/gfx.gyp:gfx_test_support',
557         'mojo_base.gyp:mojo_environment_chromium',
558         'mojo_geometry_bindings',
559         'mojo_geometry_lib',
560         'mojo_shell_test_support',
561         'mojo_view_manager_bindings',
562         'mojo_view_manager_lib',
563       ],
564       'sources': [
565         'services/public/cpp/view_manager/tests/view_unittest.cc',
566         'services/public/cpp/view_manager/tests/view_manager_unittest.cc',
567       ],
568       'conditions': [
569         ['use_aura==1', {
570           'dependencies': [
571             'mojo_view_manager_run_unittests'
572           ],
573         }, {  # use_aura==0
574           'dependencies': [
575             'mojo_base.gyp:mojo_run_all_unittests',
576           ],
577         }],
578       ],
579     },
580     {
581       # GN version: //mojo/services/public/interfaces/surfaces
582       'target_name': 'mojo_surfaces_bindings',
583       'type': 'static_library',
584       'sources': [
585         'services/public/interfaces/surfaces/surfaces.mojom',
586         'services/public/interfaces/surfaces/surfaces_service.mojom',
587         'services/public/interfaces/surfaces/quads.mojom',
588       ],
589       'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
590       'dependencies': [
591         'mojo_base.gyp:mojo_cpp_bindings',
592         'mojo_base.gyp:mojo_gles2_bindings',
593         'mojo_geometry_bindings',
594         'mojo_surface_id_bindings',
595       ],
596       'export_dependent_settings': [
597         'mojo_base.gyp:mojo_cpp_bindings',
598         'mojo_base.gyp:mojo_gles2_bindings',
599         'mojo_geometry_bindings',
600         'mojo_surface_id_bindings',
601       ],
602     },
603     {
604       # GN version: //mojo/services/public/interfaces/surfaces:surface_id
605       'target_name': 'mojo_surface_id_bindings',
606       'type': 'static_library',
607       'sources': [
608         'services/public/interfaces/surfaces/surface_id.mojom',
609       ],
610       'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
611       'dependencies': [
612         'mojo_base.gyp:mojo_cpp_bindings',
613       ],
614       'export_dependent_settings': [
615         'mojo_base.gyp:mojo_cpp_bindings',
616       ],
617     },
618     {
619       # GN version: //mojo/services/test_service:bindings
620       'target_name': 'mojo_test_service_bindings',
621       'type': 'static_library',
622       'sources': [
623          # TODO(tim): Move to services/public/interfaces?
624         'services/test_service/test_request_tracker.mojom',
625         'services/test_service/test_service.mojom',
626       ],
627       'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
628       'export_dependent_settings': [
629         'mojo_base.gyp:mojo_cpp_bindings',
630       ],
631       'dependencies': [
632         'mojo_base.gyp:mojo_cpp_bindings',
633       ],
634     },
635     {
636       # GN version: //mojo/services/test_service
637       'target_name': 'mojo_test_app',
638       'type': 'loadable_module',
639       'dependencies': [
640         '../base/base.gyp:base',
641         'mojo_base.gyp:mojo_utility',
642         'mojo_base.gyp:mojo_application_standalone',
643         'mojo_test_service_bindings',
644         '<(mojo_system_for_loadable_module)',
645       ],
646       'sources': [
647         'services/test_service/test_request_tracker_client_impl.cc',
648         'services/test_service/test_request_tracker_client_impl.h',
649         'services/test_service/test_service_application.cc',
650         'services/test_service/test_service_application.h',
651         'services/test_service/test_service_impl.cc',
652         'services/test_service/test_service_impl.h',
653         'services/test_service/test_time_service_impl.cc',
654         'services/test_service/test_time_service_impl.h',
655       ],
656     },
657     {
658       # GN version: //mojo/services/test_service:request_tracker
659       'target_name': 'mojo_test_request_tracker_app',
660       'type': 'loadable_module',
661       'dependencies': [
662         '../base/base.gyp:base',
663         'mojo_base.gyp:mojo_utility',
664         'mojo_base.gyp:mojo_application_standalone',
665         'mojo_test_service_bindings',
666         '<(mojo_system_for_loadable_module)',
667       ],
668       'sources': [
669         'services/test_service/test_request_tracker_client_impl.cc',
670         'services/test_service/test_request_tracker_client_impl.h',
671         'services/test_service/test_request_tracker_application.cc',
672         'services/test_service/test_request_tracker_application.h',
673         'services/test_service/test_time_service_impl.cc',
674         'services/test_service/test_time_service_impl.h',
675         'services/test_service/test_request_tracker_impl.cc',
676         'services/test_service/test_request_tracker_impl.h',
677       ],
678     },
679     {
680       # GN version: //mojo/services/public/interfaces/window_manager
681       'target_name': 'mojo_core_window_manager_bindings',
682       'type': 'static_library',
683       'sources': [
684         'services/public/interfaces/window_manager/window_manager.mojom',
685       ],
686       'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
687       'export_dependent_settings': [
688         'mojo_base.gyp:mojo_cpp_bindings',
689       ],
690       'dependencies': [
691         'mojo_base.gyp:mojo_cpp_bindings',
692       ],
693     },
694   ],
695   'conditions': [
696     ['use_aura==1', {
697       'targets': [
698         {
699           # GN version: //mojo/services/view_manager
700           'target_name': 'mojo_view_manager',
701           'type': '<(component)',
702           'dependencies': [
703             '../base/base.gyp:base',
704             '../cc/cc.gyp:cc',
705             '../skia/skia.gyp:skia',
706             '../ui/aura/aura.gyp:aura',
707             '../ui/base/ui_base.gyp:ui_base',
708             '../ui/compositor/compositor.gyp:compositor',
709             '../ui/events/events.gyp:events',
710             '../ui/events/events.gyp:events_base',
711             '../ui/gfx/gfx.gyp:gfx',
712             '../ui/gfx/gfx.gyp:gfx_geometry',
713             '../ui/gl/gl.gyp:gl',
714             '../webkit/common/gpu/webkit_gpu.gyp:webkit_gpu',
715             'mojo_base.gyp:mojo_common_lib',
716             'mojo_base.gyp:mojo_application_chromium',
717             'mojo_cc_support',
718             'mojo_geometry_bindings',
719             'mojo_geometry_lib',
720             'mojo_input_events_bindings',
721             'mojo_input_events_lib',
722             'mojo_native_viewport_bindings',
723             'mojo_view_manager_bindings',
724             'mojo_view_manager_common',
725             'mojo_gpu_bindings',
726             '<(mojo_gles2_for_component)',
727             '<(mojo_system_for_component)',
728           ],
729           'sources': [
730             'services/view_manager/access_policy.h',
731             'services/view_manager/access_policy_delegate.h',
732             'services/view_manager/connection_manager.cc',
733             'services/view_manager/connection_manager.h',
734             'services/view_manager/context_factory_impl.cc',
735             'services/view_manager/context_factory_impl.h',
736             'services/view_manager/default_access_policy.cc',
737             'services/view_manager/default_access_policy.h',
738             'services/view_manager/display_manager.cc',
739             'services/view_manager/display_manager.h',
740             'services/view_manager/display_manager_delegate.h',
741             'services/view_manager/ids.h',
742             'services/view_manager/main.cc',
743             'services/view_manager/screen_impl.cc',
744             'services/view_manager/screen_impl.h',
745             'services/view_manager/server_view.cc',
746             'services/view_manager/server_view.h',
747             'services/view_manager/server_view_delegate.h',
748             'services/view_manager/view_manager_export.h',
749             'services/view_manager/view_manager_init_service_context.cc',
750             'services/view_manager/view_manager_init_service_context.h',
751             'services/view_manager/view_manager_init_service_impl.cc',
752             'services/view_manager/view_manager_init_service_impl.h',
753             'services/view_manager/view_manager_service_impl.cc',
754             'services/view_manager/view_manager_service_impl.h',
755             'services/view_manager/window_manager_access_policy.cc',
756             'services/view_manager/window_manager_access_policy.h',
757             'services/view_manager/window_tree_host_impl.cc',
758             'services/view_manager/window_tree_host_impl.h',
759           ],
760           'defines': [
761             'MOJO_VIEW_MANAGER_IMPLEMENTATION',
762           ],
763         },
764         {
765           # GN version: //mojo/services/public/cpp/view_manager/lib:run_unittests
766           'target_name': 'mojo_view_manager_run_unittests',
767           'type': 'static_library',
768           'dependencies': [
769             '../base/base.gyp:base',
770             '../base/base.gyp:test_support_base',
771             '../ui/gl/gl.gyp:gl',
772           ],
773           'sources': [
774             'services/public/cpp/view_manager/lib/view_manager_test_suite.cc',
775             'services/public/cpp/view_manager/lib/view_manager_test_suite.h',
776             'services/public/cpp/view_manager/lib/view_manager_unittests.cc',
777           ],
778           'conditions': [
779             ['OS=="linux" or OS=="win"', {
780               'dependencies': [
781                 '../third_party/mesa/mesa.gyp:osmesa',
782                 'mojo_native_viewport_service_lib',
783               ],
784             }],
785             ['use_x11==1', {
786               'dependencies': [
787                 '../ui/gfx/x/gfx_x11.gyp:gfx_x11',
788               ],
789             }],
790           ],
791         },
792         {
793           # GN version: //mojo/services/view_manager:mojo_view_manager_unittests
794           'target_name': 'mojo_view_manager_unittests',
795           'type': 'executable',
796           'dependencies': [
797             '../base/base.gyp:base',
798             '../base/base.gyp:test_support_base',
799             '../skia/skia.gyp:skia',
800             '../testing/gtest.gyp:gtest',
801             '../ui/aura/aura.gyp:aura',
802             '../ui/gfx/gfx.gyp:gfx_geometry',
803             '../ui/gl/gl.gyp:gl',
804             'mojo_application_manager',
805             'mojo_base.gyp:mojo_system_impl',
806             'mojo_base.gyp:mojo_application_chromium',
807             'mojo_geometry_bindings',
808             'mojo_geometry_lib',
809             'mojo_input_events_bindings',
810             'mojo_input_events_lib',
811             'mojo_shell_test_support',
812             'mojo_view_manager_bindings',
813             'mojo_view_manager_common',
814             'mojo_view_manager_run_unittests',
815           ],
816           'sources': [
817             'services/view_manager/test_change_tracker.cc',
818             'services/view_manager/test_change_tracker.h',
819             'services/view_manager/view_manager_unittest.cc',
820           ],
821         },
822         {
823           'target_name': 'package_mojo_view_manager',
824           'variables': {
825             'app_name': 'mojo_view_manager',
826           },
827           'includes': [ 'build/package_app.gypi' ],
828         },
829         {
830           # GN version: //mojo/services/window_manager:lib
831           'target_name': 'mojo_core_window_manager_lib',
832           'type': 'static_library',
833           'dependencies': [
834             '../base/base.gyp:base',
835             '../ui/base/ui_base.gyp:ui_base',
836             '../ui/gfx/gfx.gyp:gfx',
837             '../ui/gfx/gfx.gyp:gfx_geometry',
838             '../ui/wm/wm.gyp:wm',
839             'mojo_base.gyp:mojo_common_lib',
840             'mojo_base.gyp:mojo_application_chromium',
841             'mojo_aura_support',
842             'mojo_core_window_manager_bindings',
843             'mojo_input_events_lib',
844             'mojo_view_manager_lib',
845           ],
846           'sources': [
847             'services/window_manager/window_manager_app.cc',
848             'services/window_manager/window_manager_app.h',
849             'services/window_manager/window_manager_service_impl.cc',
850             'services/window_manager/window_manager_service_impl.h',
851           ],
852         },
853         {
854           # GN version: //mojo/services/window_manager
855           'target_name': 'mojo_core_window_manager',
856           'type': 'loadable_module',
857           'dependencies': [
858             'mojo_core_window_manager_lib',
859             '<(mojo_system_for_loadable_module)',
860           ],
861           'sources': [
862             'services/window_manager/main.cc',
863           ],
864         },
865         {
866           # GN version: //mojo/services/window_manager:mojo_core_window_manager_unittests
867           'target_name': 'mojo_core_window_manager_unittests',
868           'type': 'executable',
869           'dependencies': [
870             '../base/base.gyp:test_support_base',
871             '../testing/gtest.gyp:gtest',
872             '../ui/gl/gl.gyp:gl',
873             'mojo_application_manager',
874             'mojo_base.gyp:mojo_system_impl',
875             'mojo_base.gyp:mojo_environment_chromium',
876             'mojo_core_window_manager_bindings',
877             'mojo_shell_test_support',
878             'mojo_view_manager_bindings',
879             'mojo_view_manager_lib',
880           ],
881           'sources': [
882             'services/window_manager/window_manager_api_unittest.cc',
883             'services/window_manager/window_manager_unittests.cc',
884           ],
885           'conditions': [
886             ['OS=="linux"', {
887               'dependencies': [
888                 '../third_party/mesa/mesa.gyp:osmesa',
889                 'mojo_native_viewport_service_lib',
890               ],
891             }],
892             ['use_x11==1', {
893               'dependencies': [
894                 '../ui/gfx/x/gfx_x11.gyp:gfx_x11',
895               ],
896             }],
897           ],
898         },
899       ],
900     }],
901   ],