In the presubmit for auto-bisect, run pylint and unit tests.
[chromium-blink-merge.git] / mojo / mojo_examples.gypi
blobfcb0ec45a3c117773f31cbc1ef8b0df04181f308
1 # Copyright 2013 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       # GN version: //mojo/examples/echo:client
9       'target_name': 'mojo_echo_client',
10       'type': 'loadable_module',
11       'dependencies': [
12         'mojo_base.gyp:mojo_application_standalone',
13         'mojo_base.gyp:mojo_cpp_bindings',
14         'mojo_base.gyp:mojo_utility',
15         'mojo_echo_service_bindings',
16         '<(mojo_system_for_loadable_module)',
17       ],
18       'sources': [
19         'examples/echo/echo_client.cc',
20       ],
21     },
22     {
23       'target_name': 'package_mojo_echo_client',
24       'variables': {
25         'app_name': 'mojo_echo_client',
26       },
27       'includes': [ 'build/package_app.gypi' ],
28     },
29     {
30       # GN version: //mojo/examples/echo:bindings
31       'target_name': 'mojo_echo_service_bindings',
32       'type': 'static_library',
33       'sources': [
34         'examples/echo/echo_service.mojom',
35       ],
36       'dependencies': [
37         'mojo_base.gyp:mojo_cpp_bindings',
38       ],
39       'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
40       'export_dependent_settings': [
41         'mojo_base.gyp:mojo_cpp_bindings',
42       ],
43     },
44     {
45       # GN version: //mojo/examples/echo:service
46       'target_name': 'mojo_echo_service',
47       'type': 'loadable_module',
48       'dependencies': [
49         'mojo_base.gyp:mojo_application_standalone',
50         'mojo_base.gyp:mojo_cpp_bindings',
51         'mojo_base.gyp:mojo_utility',
52         'mojo_echo_service_bindings',
53         '<(mojo_system_for_loadable_module)',
54       ],
55       'sources': [
56         'examples/echo/echo_service.cc',
57       ],
58     },
59     {
60       'target_name': 'package_mojo_echo_service',
61       'variables': {
62         'app_name': 'mojo_echo_service',
63       },
64       'includes': [ 'build/package_app.gypi' ],
65     },
66     {
67       # GN version: //mojo/examples/sample_app
68       'target_name': 'mojo_sample_app',
69       'type': 'loadable_module',
70       'dependencies': [
71         'mojo_base.gyp:mojo_application_standalone',
72         'mojo_base.gyp:mojo_cpp_bindings',
73         'mojo_base.gyp:mojo_utility',
74         'mojo_geometry_bindings',
75         'mojo_gpu_bindings',
76         'mojo_native_viewport_bindings',
77         '<(mojo_system_for_loadable_module)',
78       ],
79       'includes': [
80         'mojo_public_gles2_for_loadable_module.gypi',
81       ],
82       'sources': [
83         'examples/sample_app/gles2_client_impl.cc',
84         'examples/sample_app/gles2_client_impl.cc',
85         'examples/sample_app/sample_app.cc',
86         'examples/sample_app/spinning_cube.cc',
87         'examples/sample_app/spinning_cube.h',
88       ],
89     },
90     {
91       'target_name': 'package_mojo_sample_app',
92       'variables': {
93         'app_name': 'mojo_sample_app',
94       },
95       'includes': [ 'build/package_app.gypi' ],
96     },
97     {
98       'target_name': 'mojo_example_service_bindings',
99       'type': 'static_library',
100       'sources': [
101         'examples/apptest/example_service.mojom',
102       ],
103       'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
104       'export_dependent_settings': [
105         'mojo_base.gyp:mojo_cpp_bindings',
106       ],
107       'dependencies': [
108         'mojo_base.gyp:mojo_cpp_bindings',
109       ],
110     },
111     {
112       'target_name': 'mojo_example_service',
113       'type': 'loadable_module',
114       'dependencies': [
115         'mojo_base.gyp:mojo_application_standalone', # For ApplicationDelegate.
116         'mojo_base.gyp:mojo_cpp_bindings',           # For *.mojom.h
117         'mojo_example_service_bindings',
118         'mojo_base.gyp:mojo_utility',                # For RunLoop.
119         '<(mojo_system_for_loadable_module)',
120       ],
121       'sources': [
122         'examples/apptest/example_service_application.cc',
123         'examples/apptest/example_service_application.h',
124         'examples/apptest/example_service_impl.cc',
125         'examples/apptest/example_service_impl.h',
126       ],
127     },
128     {
129       'target_name': 'mojo_example_apptests',
130       'type': 'loadable_module',
131       'dependencies': [
132         '../testing/gtest.gyp:gtest',
133         'mojo_base.gyp:mojo_application_standalone', # For ApplicationDelegate.
134         'mojo_example_service',
135         'mojo_example_service_bindings',
136         'mojo_base.gyp:mojo_utility',                # For RunLoop.
137         '<(mojo_system_for_loadable_module)',
138       ],
139       'sources': [
140         'examples/apptest/example_apptest.cc',
141         'examples/apptest/example_client_application.cc',
142         'examples/apptest/example_client_application.h',
143         'examples/apptest/example_client_impl.cc',
144         'examples/apptest/example_client_impl.h',
145       ],
146     },
147     {
148       'target_name': 'package_mojo_example_apptests',
149       'variables': {
150         'app_name': 'mojo_example_apptests',
151       },
152       'includes': [ 'build/package_app.gypi' ],
153     },
154     {
155       'target_name': 'mojo_compositor_app',
156       'type': 'loadable_module',
157       'dependencies': [
158         '../base/base.gyp:base',
159         '../cc/cc.gyp:cc',
160         '../ui/gfx/gfx.gyp:gfx',
161         '../ui/gfx/gfx.gyp:gfx_geometry',
162         'mojo_base.gyp:mojo_application_chromium',
163         'mojo_base.gyp:mojo_common_lib',
164         'mojo_cc_support',
165         'mojo_geometry_bindings',
166         'mojo_geometry_lib',
167         'mojo_gpu_bindings',
168         'mojo_native_viewport_bindings',
169         '<(mojo_system_for_loadable_module)',
170       ],
171       'includes': [
172         'mojo_public_gles2_for_loadable_module.gypi',
173       ],
174       'sources': [
175         'examples/compositor_app/compositor_app.cc',
176         'examples/compositor_app/compositor_host.cc',
177         'examples/compositor_app/compositor_host.h',
178       ],
179     },
180     {
181       'target_name': 'package_mojo_compositor_app',
182       'variables': {
183         'app_name': 'mojo_compositor_app',
184       },
185       'includes': [ 'build/package_app.gypi' ],
186     },
187     {
188       # GN version: //mojo/examples/wget
189       'target_name': 'mojo_wget',
190       'type': 'loadable_module',
191       'dependencies': [
192         'mojo_base.gyp:mojo_application_standalone',
193         'mojo_base.gyp:mojo_cpp_bindings',
194         'mojo_base.gyp:mojo_utility',
195         'mojo_network_bindings',
196         '<(mojo_system_for_loadable_module)',
197       ],
198       'sources': [
199         'examples/wget/wget.cc',
200       ],
201     },
202     {
203       'target_name': 'mojo_content_handler_demo',
204       'type': 'loadable_module',
205       'dependencies': [
206         'mojo_base.gyp:mojo_application_standalone',
207         'mojo_base.gyp:mojo_cpp_bindings',
208         'mojo_base.gyp:mojo_utility',
209         'mojo_content_handler_bindings',
210         '<(mojo_system_for_loadable_module)',
211       ],
212       'sources': [
213         'examples/content_handler_demo/content_handler_demo.cc',
214       ],
215     },
216     {
217       'target_name': 'package_mojo_wget',
218       'variables': {
219         'app_name': 'mojo_wget',
220       },
221       'includes': [ 'build/package_app.gypi' ],
222     },
223     {
224       'target_name': 'mojo_media_viewer_bindings',
225       'type': 'static_library',
226       'sources': [
227         'examples/media_viewer/media_viewer.mojom',
228       ],
229       'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
230       'export_dependent_settings': [
231         'mojo_base.gyp:mojo_cpp_bindings',
232       ],
233       'dependencies': [
234         'mojo_base.gyp:mojo_cpp_bindings',
235       ],
236     },
237     {
238       'target_name': 'mojo_png_viewer',
239       'type': 'loadable_module',
240       'dependencies': [
241         '../skia/skia.gyp:skia',
242         '../ui/gfx/gfx.gyp:gfx',
243         'mojo_base.gyp:mojo_application_chromium',
244         'mojo_base.gyp:mojo_cpp_bindings',
245         'mojo_base.gyp:mojo_utility',
246         'mojo_media_viewer_bindings',
247         'mojo_navigation_bindings',
248         'mojo_network_bindings',
249         'mojo_launcher_bindings',
250         'mojo_view_manager_lib',
251         '<(mojo_system_for_loadable_module)',
252       ],
253       'sources': [
254         'examples/png_viewer/png_viewer.cc',
255       ],
256     },
257     {
258       'target_name': 'mojo_pepper_container_app',
259       'type': 'loadable_module',
260       'dependencies': [
261         '../base/base.gyp:base',
262         '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
263         '../gpu/gpu.gyp:command_buffer_common',
264         '../ppapi/ppapi.gyp:ppapi_c',
265         '../ppapi/ppapi_internal.gyp:ppapi_example_gles2_spinning_cube',
266         '../ui/events/events.gyp:events_base',
267         'mojo_base.gyp:mojo_application_chromium',
268         'mojo_base.gyp:mojo_common_lib',
269         'mojo_geometry_bindings',
270         'mojo_gpu_bindings',
271         'mojo_native_viewport_bindings',
272         '<(mojo_system_for_loadable_module)',
273       ],
274       'includes': [
275         'mojo_public_gles2_for_loadable_module.gypi',
276       ],
277       'defines': [
278         # We don't really want to export. We could change how
279         # ppapi_{shared,thunk}_export.h are defined to avoid this.
280         'PPAPI_SHARED_IMPLEMENTATION',
281         'PPAPI_THUNK_IMPLEMENTATION',
282       ],
283       'sources': [
284         # Source files from ppapi/.
285         # An alternative is to depend on
286         # '../ppapi/ppapi_internal.gyp:ppapi_shared', but that target includes
287         # a lot of things that we don't need.
288         # TODO(yzshen): Consider extracting these files into a separate target
289         # which mojo_pepper_container_app and ppapi_shared both depend on.
290         '../ppapi/shared_impl/api_id.h',
291         '../ppapi/shared_impl/callback_tracker.cc',
292         '../ppapi/shared_impl/callback_tracker.h',
293         '../ppapi/shared_impl/host_resource.cc',
294         '../ppapi/shared_impl/host_resource.h',
295         '../ppapi/shared_impl/id_assignment.cc',
296         '../ppapi/shared_impl/id_assignment.h',
297         '../ppapi/shared_impl/ppapi_globals.cc',
298         '../ppapi/shared_impl/ppapi_globals.h',
299         '../ppapi/shared_impl/ppapi_shared_export.h',
300         '../ppapi/shared_impl/ppb_message_loop_shared.cc',
301         '../ppapi/shared_impl/ppb_message_loop_shared.h',
302         '../ppapi/shared_impl/ppb_view_shared.cc',
303         '../ppapi/shared_impl/ppb_view_shared.h',
304         '../ppapi/shared_impl/proxy_lock.cc',
305         '../ppapi/shared_impl/proxy_lock.h',
306         '../ppapi/shared_impl/resource.cc',
307         '../ppapi/shared_impl/resource.h',
308         '../ppapi/shared_impl/resource_tracker.cc',
309         '../ppapi/shared_impl/resource_tracker.h',
310         '../ppapi/shared_impl/scoped_pp_resource.cc',
311         '../ppapi/shared_impl/scoped_pp_resource.h',
312         '../ppapi/shared_impl/singleton_resource_id.h',
313         '../ppapi/shared_impl/tracked_callback.cc',
314         '../ppapi/shared_impl/tracked_callback.h',
315         '../ppapi/thunk/enter.cc',
316         '../ppapi/thunk/enter.h',
317         '../ppapi/thunk/interfaces_ppb_private.h',
318         '../ppapi/thunk/interfaces_ppb_private_flash.h',
319         '../ppapi/thunk/interfaces_ppb_private_no_permissions.h',
320         '../ppapi/thunk/interfaces_ppb_public_dev.h',
321         '../ppapi/thunk/interfaces_ppb_public_dev_channel.h',
322         '../ppapi/thunk/interfaces_ppb_public_stable.h',
323         '../ppapi/thunk/interfaces_preamble.h',
324         '../ppapi/thunk/ppapi_thunk_export.h',
325         '../ppapi/thunk/ppb_graphics_3d_api.h',
326         '../ppapi/thunk/ppb_graphics_3d_thunk.cc',
327         '../ppapi/thunk/ppb_instance_api.h',
328         '../ppapi/thunk/ppb_instance_thunk.cc',
329         '../ppapi/thunk/ppb_message_loop_api.h',
330         '../ppapi/thunk/ppb_view_api.h',
331         '../ppapi/thunk/ppb_view_thunk.cc',
332         '../ppapi/thunk/resource_creation_api.h',
333         '../ppapi/thunk/thunk.h',
335         'examples/pepper_container_app/graphics_3d_resource.cc',
336         'examples/pepper_container_app/graphics_3d_resource.h',
337         'examples/pepper_container_app/interface_list.cc',
338         'examples/pepper_container_app/interface_list.h',
339         'examples/pepper_container_app/mojo_ppapi_globals.cc',
340         'examples/pepper_container_app/mojo_ppapi_globals.h',
341         'examples/pepper_container_app/pepper_container_app.cc',
342         'examples/pepper_container_app/plugin_instance.cc',
343         'examples/pepper_container_app/plugin_instance.h',
344         'examples/pepper_container_app/plugin_module.cc',
345         'examples/pepper_container_app/plugin_module.h',
346         'examples/pepper_container_app/ppb_core_thunk.cc',
347         'examples/pepper_container_app/ppb_opengles2_thunk.cc',
348         'examples/pepper_container_app/resource_creation_impl.cc',
349         'examples/pepper_container_app/resource_creation_impl.h',
350         'examples/pepper_container_app/thunk.h',
351         'examples/pepper_container_app/type_converters.h',
352       ],
353     },
354     {
355       'target_name': 'mojo_surfaces_app',
356       'type': 'loadable_module',
357       'dependencies': [
358         '../base/base.gyp:base',
359         '../cc/cc.gyp:cc',
360         '../cc/cc.gyp:cc_surfaces',
361         '../skia/skia.gyp:skia',
362         '../ui/gfx/gfx.gyp:gfx',
363         '../ui/gfx/gfx.gyp:gfx_geometry',
364         'mojo_base.gyp:mojo_application_chromium',
365         'mojo_base.gyp:mojo_common_lib',
366         'mojo_geometry_bindings',
367         'mojo_geometry_lib',
368         'mojo_gpu_bindings',
369         'mojo_native_viewport_bindings',
370         'mojo_surfaces_bindings',
371         'mojo_surfaces_app_bindings',
372         'mojo_surfaces_lib',
373         '<(mojo_system_for_loadable_module)',
374       ],
375       'sources': [
376         'examples/surfaces_app/embedder.cc',
377         'examples/surfaces_app/embedder.h',
378         'examples/surfaces_app/surfaces_app.cc',
379         'examples/surfaces_app/surfaces_util.cc',
380         'examples/surfaces_app/surfaces_util.h',
381       ],
382     },
383     {
384       'target_name': 'mojo_surfaces_app_bindings',
385       'type': 'static_library',
386       'sources': [
387         'examples/surfaces_app/child.mojom',
388       ],
389       'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
390       'export_dependent_settings': [
391         'mojo_base.gyp:mojo_cpp_bindings',
392       ],
393       'dependencies': [
394         'mojo_base.gyp:mojo_cpp_bindings',
395         'mojo_geometry_bindings',
396         'mojo_surfaces_bindings',
397       ],
398     },
399     {
400       'target_name': 'package_mojo_surfaces_app',
401       'variables': {
402         'app_name': 'mojo_surfaces_app',
403       },
404       'includes': [ 'build/package_app.gypi' ],
405     },
406     {
407       'target_name': 'mojo_surfaces_child_app',
408       'type': 'loadable_module',
409       'dependencies': [
410         '../base/base.gyp:base',
411         '../cc/cc.gyp:cc',
412         '../cc/cc.gyp:cc_surfaces',
413         '../skia/skia.gyp:skia',
414         '../ui/gfx/gfx.gyp:gfx',
415         '../ui/gfx/gfx.gyp:gfx_geometry',
416         'mojo_base.gyp:mojo_application_chromium',
417         'mojo_base.gyp:mojo_common_lib',
418         'mojo_geometry_bindings',
419         'mojo_geometry_lib',
420         'mojo_surfaces_app_bindings',
421         'mojo_surfaces_bindings',
422         'mojo_surfaces_lib',
423         '<(mojo_system_for_loadable_module)',
424       ],
425       'sources': [
426         'examples/surfaces_app/child_app.cc',
427         'examples/surfaces_app/child_impl.cc',
428         'examples/surfaces_app/child_impl.h',
429         'examples/surfaces_app/surfaces_util.cc',
430         'examples/surfaces_app/surfaces_util.h',
431       ],
432     },
433     {
434       'target_name': 'mojo_surfaces_child_gl_app',
435       'type': 'loadable_module',
436       'dependencies': [
437         '../base/base.gyp:base',
438         '../cc/cc.gyp:cc',
439         '../cc/cc.gyp:cc_surfaces',
440         '../skia/skia.gyp:skia',
441         '../ui/gfx/gfx.gyp:gfx',
442         '../ui/gfx/gfx.gyp:gfx_geometry',
443         'mojo_base.gyp:mojo_application_chromium',
444         'mojo_base.gyp:mojo_common_lib',
445         'mojo_geometry_bindings',
446         'mojo_geometry_lib',
447         'mojo_gpu_bindings',
448         'mojo_surfaces_app_bindings',
449         'mojo_surfaces_bindings',
450         'mojo_surfaces_lib',
451         '<(mojo_system_for_loadable_module)',
452       ],
453       'includes': [
454         'mojo_public_gles2_for_loadable_module.gypi',
455       ],
456       'sources': [
457         'examples/surfaces_app/child_gl_app.cc',
458         'examples/surfaces_app/child_gl_impl.cc',
459         'examples/surfaces_app/child_gl_impl.h',
460         'examples/surfaces_app/surfaces_util.cc',
461         'examples/surfaces_app/surfaces_util.h',
462         'examples/sample_app/spinning_cube.cc',
463         'examples/sample_app/spinning_cube.h',
464       ],
465     }
466   ],
467   'conditions': [
468     ['use_aura==1', {
469       'targets': [
470         {
471           'target_name': 'mojo_aura_demo',
472           'type': 'loadable_module',
473           'dependencies': [
474             '../base/base.gyp:base',
475             '../cc/cc.gyp:cc',
476             '../ui/aura/aura.gyp:aura',
477             '../ui/base/ui_base.gyp:ui_base',
478             '../ui/compositor/compositor.gyp:compositor',
479             '../ui/gfx/gfx.gyp:gfx',
480             '../ui/gfx/gfx.gyp:gfx_geometry',
481             'mojo_base.gyp:mojo_application_chromium',
482             'mojo_base.gyp:mojo_common_lib',
483             'mojo_aura_support',
484             'mojo_geometry_bindings',
485             'mojo_geometry_lib',
486             'mojo_view_manager_lib',
487             '<(mojo_system_for_loadable_module)',
488           ],
489           'sources': [
490             'examples/aura_demo/aura_demo.cc',
491           ],
492         },
493         {
494           'target_name': 'mojo_aura_demo_init',
495           'type': 'loadable_module',
496           'dependencies': [
497             '../base/base.gyp:base',
498             'mojo_base.gyp:mojo_application_chromium',
499             'mojo_view_manager_bindings',
500             '<(mojo_system_for_loadable_module)',
501           ],
502           'sources': [
503             'examples/aura_demo/view_manager_init.cc',
504           ],
505         },
506         {
507           'target_name': 'mojo_browser',
508           'type': 'loadable_module',
509           'dependencies': [
510             '../base/base.gyp:base',
511             '../cc/cc.gyp:cc',
512             '../third_party/icu/icu.gyp:icui18n',
513             '../third_party/icu/icu.gyp:icuuc',
514             '../ui/aura/aura.gyp:aura',
515             '../ui/base/ui_base.gyp:ui_base',
516             '../ui/compositor/compositor.gyp:compositor',
517             '../ui/gfx/gfx.gyp:gfx',
518             '../ui/gfx/gfx.gyp:gfx_geometry',
519             '../ui/resources/ui_resources.gyp:ui_resources',
520             '../ui/resources/ui_resources.gyp:ui_test_pak',
521             '../ui/views/views.gyp:views',
522             '../url/url.gyp:url_lib',
523             'mojo_base.gyp:mojo_application_chromium',
524             'mojo_base.gyp:mojo_common_lib',
525             'mojo_aura_support',
526             'mojo_geometry_bindings',
527             'mojo_geometry_lib',
528             'mojo_input_events_lib',
529             'mojo_navigation_bindings',
530             'mojo_views_support',
531             'mojo_view_manager_bindings',
532             'mojo_view_manager_lib',
533             'mojo_window_manager_bindings',
534             '<(mojo_system_for_loadable_module)',
535           ],
536           'sources': [
537             'examples/browser/browser.cc',
538           ],
539         },
540         {
541           'target_name': 'package_mojo_aura_demo',
542           'variables': {
543             'app_name': 'mojo_aura_demo',
544           },
545           'includes': [ 'build/package_app.gypi' ],
546         },
547         {
548           'target_name': 'mojo_demo_launcher',
549           'type': 'loadable_module',
550           'dependencies': [
551             '../base/base.gyp:base',
552             '../skia/skia.gyp:skia',
553             '../ui/gfx/gfx.gyp:gfx',
554             '../ui/gfx/gfx.gyp:gfx_geometry',
555             '../ui/gl/gl.gyp:gl',
556             'mojo_base.gyp:mojo_application_chromium',
557             'mojo_base.gyp:mojo_cpp_bindings',
558             'mojo_base.gyp:mojo_utility',
559             'mojo_geometry_bindings',
560             'mojo_view_manager_bindings',
561             '<(mojo_system_for_loadable_module)',
562           ],
563           'includes': [
564             'mojo_public_gles2_for_loadable_module.gypi',
565           ],
566           'sources': [
567             'examples/demo_launcher/demo_launcher.cc',
568           ],
569         },
570         {
571           'target_name': 'mojo_keyboard',
572           'type': 'loadable_module',
573           'dependencies': [
574             '../base/base.gyp:base',
575             '../cc/cc.gyp:cc',
576             '../third_party/icu/icu.gyp:icui18n',
577             '../third_party/icu/icu.gyp:icuuc',
578             '../ui/aura/aura.gyp:aura',
579             '../ui/base/ui_base.gyp:ui_base',
580             '../ui/compositor/compositor.gyp:compositor',
581             '../ui/gfx/gfx.gyp:gfx',
582             '../ui/gfx/gfx.gyp:gfx_geometry',
583             '../ui/resources/ui_resources.gyp:ui_resources',
584             '../ui/resources/ui_resources.gyp:ui_test_pak',
585             '../ui/views/views.gyp:views',
586             '../url/url.gyp:url_lib',
587             'mojo_base.gyp:mojo_application_chromium',
588             'mojo_base.gyp:mojo_common_lib',
589             'mojo_aura_support',
590             'mojo_geometry_bindings',
591             'mojo_geometry_lib',
592             'mojo_input_events_lib',
593             'mojo_keyboard_bindings',
594             'mojo_navigation_bindings',
595             'mojo_views_support',
596             'mojo_view_manager_bindings',
597             'mojo_view_manager_lib',
598             '<(mojo_system_for_loadable_module)',
599           ],
600           'sources': [
601             'examples/keyboard/keyboard_delegate.h',
602             'examples/keyboard/keyboard_view.cc',
603             'examples/keyboard/keyboard_view.h',
604             'examples/keyboard/keyboard.cc',
605             'examples/keyboard/keys.cc',
606             'examples/keyboard/keys.h',
607           ],
608         },
609         {
610           'target_name': 'mojo_keyboard_bindings',
611           'type': 'static_library',
612           'sources': [
613             'examples/keyboard/keyboard.mojom',
614           ],
615           'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
616           'export_dependent_settings': [
617             'mojo_base.gyp:mojo_cpp_bindings',
618           ],
619           'dependencies': [
620             'mojo_base.gyp:mojo_cpp_bindings',
621           ],
622         },
623         {
624           'target_name': 'mojo_window_manager_bindings',
625           'type': 'static_library',
626           'sources': [
627             'examples/window_manager/window_manager.mojom',
628           ],
629           'dependencies': [
630             'mojo_base.gyp:mojo_cpp_bindings',
631             'mojo_geometry_bindings',
632           ],
633           'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
634           'export_dependent_settings': [
635             'mojo_base.gyp:mojo_cpp_bindings',
636           ],
637         },
638         {
639           'target_name': 'mojo_window_manager',
640           'type': 'loadable_module',
641           'dependencies': [
642             '../base/base.gyp:base',
643             '../ui/aura/aura.gyp:aura',
644             '../ui/base/ui_base.gyp:ui_base',
645             '../ui/gfx/gfx.gyp:gfx',
646             '../ui/gfx/gfx.gyp:gfx_geometry',
647             '../ui/gl/gl.gyp:gl',
648             '../ui/resources/ui_resources.gyp:ui_resources',
649             '../ui/resources/ui_resources.gyp:ui_test_pak',
650             '../ui/views/views.gyp:views',
651             'mojo_base.gyp:mojo_application_chromium',
652             'mojo_base.gyp:mojo_cpp_bindings',
653             'mojo_base.gyp:mojo_utility',
654             'mojo_aura_support',
655             'mojo_core_window_manager_lib',
656             'mojo_geometry_bindings',
657             'mojo_geometry_lib',
658             'mojo_input_events_lib',
659             'mojo_keyboard_bindings',
660             'mojo_launcher_bindings',
661             'mojo_navigation_bindings',
662             'mojo_view_manager_lib',
663             'mojo_views_support',
664             'mojo_window_manager_bindings',
665             '<(mojo_system_for_loadable_module)',
666           ],
667           'includes': [
668             'mojo_public_gles2_for_loadable_module.gypi',
669           ],
670           'sources': [
671             'examples/window_manager/debug_panel.h',
672             'examples/window_manager/debug_panel.cc',
673             'examples/window_manager/window_manager.cc',
674           ],
675         },
676         {
677           'target_name': 'mojo_embedded_app',
678           'type': 'loadable_module',
679           'dependencies': [
680             '../base/base.gyp:base',
681             '../ui/gfx/gfx.gyp:gfx_geometry',
682             '../ui/gl/gl.gyp:gl',
683             '../url/url.gyp:url_lib',
684             'mojo_base.gyp:mojo_application_chromium',
685             'mojo_base.gyp:mojo_cpp_bindings',
686             'mojo_base.gyp:mojo_utility',
687             'mojo_geometry_bindings',
688             'mojo_navigation_bindings',
689             'mojo_view_manager_lib',
690             'mojo_window_manager_bindings',
691             '<(mojo_system_for_loadable_module)',
692           ],
693           'includes': [
694             'mojo_public_gles2_for_loadable_module.gypi',
695           ],
696           'sources': [
697             'examples/embedded_app/embedded_app.cc',
698           ],
699         },
700         {
701           'target_name': 'mojo_nesting_app',
702           'type': 'loadable_module',
703           'dependencies': [
704             '../base/base.gyp:base',
705             '../ui/gfx/gfx.gyp:gfx_geometry',
706             '../ui/gl/gl.gyp:gl',
707             '../url/url.gyp:url_lib',
708             'mojo_base.gyp:mojo_application_chromium',
709             'mojo_base.gyp:mojo_cpp_bindings',
710             'mojo_base.gyp:mojo_utility',
711             'mojo_geometry_bindings',
712             'mojo_navigation_bindings',
713             'mojo_view_manager_lib',
714             'mojo_window_manager_bindings',
715             '<(mojo_system_for_loadable_module)',
716           ],
717           'includes': [
718             'mojo_public_gles2_for_loadable_module.gypi',
719           ],
720           'sources': [
721             'examples/nesting_app/nesting_app.cc',
722           ],
723         },
724         {
725           'target_name': 'mojo_media_viewer',
726           'type': 'loadable_module',
727           'dependencies': [
728             '../base/base.gyp:base',
729             '../skia/skia.gyp:skia',
730             '../ui/gfx/gfx.gyp:gfx_geometry',
731             '../ui/views/views.gyp:views',
732             'mojo_base.gyp:mojo_application_chromium',
733             'mojo_input_events_lib',
734             'mojo_media_viewer_bindings',
735             'mojo_navigation_bindings',
736             'mojo_views_support',
737             'mojo_view_manager_bindings',
738             'mojo_view_manager_lib',
739             '<(mojo_system_for_loadable_module)',
740           ],
741           'sources': [
742             'examples/media_viewer/media_viewer.cc',
743           ],
744         },
745         {
746           'target_name': 'mojo_wm_flow_wm',
747           'type': 'loadable_module',
748           'dependencies': [
749             '../base/base.gyp:base',
750             'mojo_base.gyp:mojo_application_chromium',
751             'mojo_core_window_manager_lib',
752             'mojo_view_manager_lib',
753             '<(mojo_system_for_loadable_module)',
754           ],
755           'sources': [
756             'examples/wm_flow/wm/wm.cc',
757           ],
758         },
759         {
760           'target_name': 'mojo_wm_flow_init',
761           'type': 'loadable_module',
762           'dependencies': [
763             '../base/base.gyp:base',
764             'mojo_base.gyp:mojo_application_chromium',
765             'mojo_view_manager_bindings',
766             '<(mojo_system_for_loadable_module)',
767           ],
768           'sources': [
769             'examples/wm_flow/init/init.cc',
770           ],
771         },
772         {
773           'target_name': 'mojo_wm_flow_embedder_bindings',
774           'type': 'static_library',
775           'sources': [
776             'examples/wm_flow/app/embedder.mojom',
777           ],
778           'dependencies': [
779             'mojo_base.gyp:mojo_cpp_bindings',
780           ],
781           'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
782           'export_dependent_settings': [
783             'mojo_base.gyp:mojo_cpp_bindings',
784           ],
785         },
786         {
787           'target_name': 'mojo_wm_flow_embeddee_bindings',
788           'type': 'static_library',
789           'sources': [
790             'examples/wm_flow/embedded/embeddee.mojom',
791           ],
792           'dependencies': [
793             'mojo_base.gyp:mojo_cpp_bindings',
794           ],
795           'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
796           'export_dependent_settings': [
797             'mojo_base.gyp:mojo_cpp_bindings',
798           ],
799         },
800         {
801           'target_name': 'mojo_wm_flow_app',
802           'type': 'loadable_module',
803           'dependencies': [
804             '../base/base.gyp:base',
805             'mojo_base.gyp:mojo_application_chromium',
806             'mojo_core_window_manager_bindings',
807             'mojo_view_manager_lib',
808             'mojo_wm_flow_embeddee_bindings',
809             'mojo_wm_flow_embedder_bindings',
810             '<(mojo_system_for_loadable_module)',
811           ],
812           'sources': [
813             'examples/wm_flow/app/app.cc',
814           ],
815         },
816         {
817           'target_name': 'mojo_wm_flow_embedded',
818           'type': 'loadable_module',
819           'dependencies': [
820             '../base/base.gyp:base',
821             'mojo_base.gyp:mojo_application_chromium',
822             'mojo_core_window_manager_bindings',
823             'mojo_view_manager_lib',
824             'mojo_wm_flow_embeddee_bindings',
825             'mojo_wm_flow_embedder_bindings',
826             '<(mojo_system_for_loadable_module)',
827           ],
828           'sources': [
829             'examples/wm_flow/embedded/embedded.cc',
830           ],
831         },
832       ],
833     }],
834     ['OS=="linux"', {
835       'targets': [
836         {
837           'target_name': 'mojo_dbus_echo',
838           'type': 'loadable_module',
839           'dependencies': [
840             '../base/base.gyp:base',
841             'mojo_base.gyp:mojo_application_standalone',
842             'mojo_base.gyp:mojo_cpp_bindings',
843             'mojo_base.gyp:mojo_utility',
844             'mojo_echo_service_bindings',
845             '<(mojo_system_for_loadable_module)',
846           ],
847           'sources': [
848             'examples/dbus_echo/dbus_echo_app.cc',
849           ],
850         },
851         {
852           'target_name': 'mojo_dbus_echo_service',
853           'type': 'executable',
854           'dependencies': [
855             '../base/base.gyp:base',
856             '../build/linux/system.gyp:dbus',
857             '../dbus/dbus.gyp:dbus',
858             'mojo_base.gyp:mojo_common_lib',
859             'mojo_base.gyp:mojo_system_impl',
860             'mojo_base.gyp:mojo_application_chromium',
861             'mojo_dbus_service',
862             'mojo_echo_service_bindings',
863           ],
864           'sources': [
865             'examples/dbus_echo/dbus_echo_service.cc',
866           ],
867         },
868       ],
870     }],
871   ],