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