When enabling new profile management programmatically, make sure to set the
[chromium-blink-merge.git] / mojo / mojo_examples.gypi
blob0f8d3f972a1fa4d20332ddea70ed0c4fcd598c66
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       'target_name': 'mojo_sample_app',
9       'type': 'shared_library',
10       'dependencies': [
11         # TODO(darin): we should not be linking against these libraries!
12         '../ui/events/events.gyp:events',
13         '../ui/gfx/gfx.gyp:gfx_geometry',
14         'mojo_application',
15         'mojo_cpp_bindings',
16         'mojo_environment_standalone',
17         'mojo_geometry_bindings',
18         'mojo_gles2',
19         'mojo_native_viewport_bindings',
20         'mojo_system',
21         'mojo_utility',
22       ],
23       'sources': [
24         'examples/sample_app/gles2_client_impl.cc',
25         'examples/sample_app/gles2_client_impl.cc',
26         'examples/sample_app/sample_app.cc',
27         'examples/sample_app/spinning_cube.cc',
28         'examples/sample_app/spinning_cube.h',
29         'public/cpp/application/lib/mojo_main_standalone.cc',
30       ],
31     },
32     {
33       'target_name': 'package_mojo_sample_app',
34       'variables': {
35         'app_name': 'mojo_sample_app',
36       },
37       'includes': [ 'build/package_app.gypi' ],
38     },
39     {
40       'target_name': 'mojo_compositor_app',
41       'type': 'shared_library',
42       'dependencies': [
43         '../base/base.gyp:base',
44         '../cc/cc.gyp:cc',
45         '../ui/gfx/gfx.gyp:gfx',
46         '../ui/gfx/gfx.gyp:gfx_geometry',
47         'mojo_application',
48         'mojo_cc_support',
49         'mojo_common_lib',
50         'mojo_environment_chromium',
51         'mojo_geometry_bindings',
52         'mojo_geometry_lib',
53         'mojo_gles2',
54         'mojo_native_viewport_bindings',
55         'mojo_system_impl',
56       ],
57       'sources': [
58         'examples/compositor_app/compositor_app.cc',
59         'examples/compositor_app/compositor_host.cc',
60         'examples/compositor_app/compositor_host.h',
61         'public/cpp/application/lib/mojo_main_chromium.cc',
62       ],
63     },
64     {
65       'target_name': 'package_mojo_compositor_app',
66       'variables': {
67         'app_name': 'mojo_compositor_app',
68       },
69       'includes': [ 'build/package_app.gypi' ],
70     },
71     {
72       'target_name': 'mojo_wget',
73       'type': 'shared_library',
74       'dependencies': [
75         'mojo_application',
76         'mojo_cpp_bindings',
77         'mojo_environment_standalone',
78         'mojo_network_bindings',
79         'mojo_system',
80         'mojo_utility',
81       ],
82       'sources': [
83         'examples/wget/wget.cc',
84         'public/cpp/application/lib/mojo_main_standalone.cc',
85       ],
86     },
87     {
88       'target_name': 'package_mojo_wget',
89       'variables': {
90         'app_name': 'mojo_wget',
91       },
92       'includes': [ 'build/package_app.gypi' ],
93     },
94     {
95       'target_name': 'mojo_html_viewer',
96       'type': 'shared_library',
97       'dependencies': [
98         '../skia/skia.gyp:skia',
99         'mojo_application',
100         'mojo_cpp_bindings',
101         'mojo_environment_chromium',
102         'mojo_navigation_bindings',
103         'mojo_network_bindings',
104         'mojo_launcher_bindings',
105         'mojo_system_impl',
106         'mojo_utility',
107         'mojo_view_manager_lib',
108       ],
109       'sources': [
110         'examples/html_viewer/html_viewer.cc',
111         'public/cpp/application/lib/mojo_main_chromium.cc',
112       ],
113     },
114     {
115       'target_name': 'mojo_image_viewer',
116       'type': 'shared_library',
117       'dependencies': [
118         '../skia/skia.gyp:skia',
119         '../ui/gfx/gfx.gyp:gfx',
120         'mojo_application',
121         'mojo_cpp_bindings',
122         'mojo_environment_chromium',
123         'mojo_navigation_bindings',
124         'mojo_network_bindings',
125         'mojo_launcher_bindings',
126         'mojo_system_impl',
127         'mojo_utility',
128         'mojo_view_manager_lib',
129       ],
130       'sources': [
131         'examples/image_viewer/image_viewer.cc',
132         'public/cpp/application/lib/mojo_main_chromium.cc',
133       ],
134     },
135     {
136       'target_name': 'mojo_pepper_container_app',
137       'type': 'shared_library',
138       'dependencies': [
139         '../base/base.gyp:base',
140         '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
141         '../gpu/gpu.gyp:command_buffer_common',
142         '../ppapi/ppapi.gyp:ppapi_c',
143         '../ppapi/ppapi_internal.gyp:ppapi_example_gles2_spinning_cube',
144         '../ui/events/events.gyp:events_base',
145         'mojo_application',
146         'mojo_common_lib',
147         'mojo_environment_chromium',
148         'mojo_geometry_bindings',
149         'mojo_gles2',
150         'mojo_native_viewport_bindings',
151         'mojo_system_impl',
152       ],
153       'defines': [
154         # We don't really want to export. We could change how
155         # ppapi_{shared,thunk}_export.h are defined to avoid this.
156         'PPAPI_SHARED_IMPLEMENTATION',
157         'PPAPI_THUNK_IMPLEMENTATION',
158       ],
159       'sources': [
160         # Source files from ppapi/.
161         # An alternative is to depend on
162         # '../ppapi/ppapi_internal.gyp:ppapi_shared', but that target includes
163         # a lot of things that we don't need.
164         # TODO(yzshen): Consider extracting these files into a separate target
165         # which mojo_pepper_container_app and ppapi_shared both depend on.
166         '../ppapi/shared_impl/api_id.h',
167         '../ppapi/shared_impl/callback_tracker.cc',
168         '../ppapi/shared_impl/callback_tracker.h',
169         '../ppapi/shared_impl/host_resource.cc',
170         '../ppapi/shared_impl/host_resource.h',
171         '../ppapi/shared_impl/id_assignment.cc',
172         '../ppapi/shared_impl/id_assignment.h',
173         '../ppapi/shared_impl/ppapi_globals.cc',
174         '../ppapi/shared_impl/ppapi_globals.h',
175         '../ppapi/shared_impl/ppapi_shared_export.h',
176         '../ppapi/shared_impl/ppb_message_loop_shared.cc',
177         '../ppapi/shared_impl/ppb_message_loop_shared.h',
178         '../ppapi/shared_impl/ppb_view_shared.cc',
179         '../ppapi/shared_impl/ppb_view_shared.h',
180         '../ppapi/shared_impl/proxy_lock.cc',
181         '../ppapi/shared_impl/proxy_lock.h',
182         '../ppapi/shared_impl/resource.cc',
183         '../ppapi/shared_impl/resource.h',
184         '../ppapi/shared_impl/resource_tracker.cc',
185         '../ppapi/shared_impl/resource_tracker.h',
186         '../ppapi/shared_impl/scoped_pp_resource.cc',
187         '../ppapi/shared_impl/scoped_pp_resource.h',
188         '../ppapi/shared_impl/singleton_resource_id.h',
189         '../ppapi/shared_impl/tracked_callback.cc',
190         '../ppapi/shared_impl/tracked_callback.h',
191         '../ppapi/thunk/enter.cc',
192         '../ppapi/thunk/enter.h',
193         '../ppapi/thunk/interfaces_ppb_private.h',
194         '../ppapi/thunk/interfaces_ppb_private_flash.h',
195         '../ppapi/thunk/interfaces_ppb_private_no_permissions.h',
196         '../ppapi/thunk/interfaces_ppb_public_dev.h',
197         '../ppapi/thunk/interfaces_ppb_public_dev_channel.h',
198         '../ppapi/thunk/interfaces_ppb_public_stable.h',
199         '../ppapi/thunk/interfaces_preamble.h',
200         '../ppapi/thunk/ppapi_thunk_export.h',
201         '../ppapi/thunk/ppb_graphics_3d_api.h',
202         '../ppapi/thunk/ppb_graphics_3d_thunk.cc',
203         '../ppapi/thunk/ppb_instance_api.h',
204         '../ppapi/thunk/ppb_instance_thunk.cc',
205         '../ppapi/thunk/ppb_message_loop_api.h',
206         '../ppapi/thunk/ppb_view_api.h',
207         '../ppapi/thunk/ppb_view_thunk.cc',
208         '../ppapi/thunk/resource_creation_api.h',
209         '../ppapi/thunk/thunk.h',
211         'examples/pepper_container_app/graphics_3d_resource.cc',
212         'examples/pepper_container_app/graphics_3d_resource.h',
213         'examples/pepper_container_app/interface_list.cc',
214         'examples/pepper_container_app/interface_list.h',
215         'examples/pepper_container_app/mojo_ppapi_globals.cc',
216         'examples/pepper_container_app/mojo_ppapi_globals.h',
217         'examples/pepper_container_app/pepper_container_app.cc',
218         'examples/pepper_container_app/plugin_instance.cc',
219         'examples/pepper_container_app/plugin_instance.h',
220         'examples/pepper_container_app/plugin_module.cc',
221         'examples/pepper_container_app/plugin_module.h',
222         'examples/pepper_container_app/ppb_core_thunk.cc',
223         'examples/pepper_container_app/ppb_opengles2_thunk.cc',
224         'examples/pepper_container_app/resource_creation_impl.cc',
225         'examples/pepper_container_app/resource_creation_impl.h',
226         'examples/pepper_container_app/thunk.h',
227         'examples/pepper_container_app/type_converters.h',
228         'public/cpp/application/lib/mojo_main_chromium.cc',
229       ],
230     },
231   ],
232   'conditions': [
233     ['use_aura==1', {
234       'targets': [
235         {
236           'target_name': 'mojo_aura_demo',
237           'type': 'shared_library',
238           'dependencies': [
239             '../base/base.gyp:base',
240             '../cc/cc.gyp:cc',
241             '../ui/aura/aura.gyp:aura',
242             '../ui/base/ui_base.gyp:ui_base',
243             '../ui/compositor/compositor.gyp:compositor',
244             '../ui/gfx/gfx.gyp:gfx',
245             '../ui/gfx/gfx.gyp:gfx_geometry',
246             'mojo_application',
247             'mojo_aura_support',
248             'mojo_common_lib',
249             'mojo_environment_chromium',
250             'mojo_geometry_bindings',
251             'mojo_geometry_lib',
252             'mojo_system_impl',
253             'mojo_view_manager_lib',
254           ],
255           'sources': [
256             'examples/aura_demo/aura_demo.cc',
257             'public/cpp/application/lib/mojo_main_chromium.cc',
258           ],
259         },
260         {
261           'target_name': 'mojo_aura_demo_init',
262           'type': 'shared_library',
263           'dependencies': [
264             '../base/base.gyp:base',
265             'mojo_application',
266             'mojo_environment_chromium',
267             'mojo_system_impl',
268             'mojo_view_manager_bindings',
269           ],
270           'sources': [
271             'examples/aura_demo/view_manager_init.cc',
272             'public/cpp/application/lib/mojo_main_chromium.cc',
273           ],
274         },
275         {
276           'target_name': 'mojo_browser',
277           'type': 'shared_library',
278           'dependencies': [
279             '../base/base.gyp:base',
280             '../cc/cc.gyp:cc',
281             '../third_party/icu/icu.gyp:icui18n',
282             '../third_party/icu/icu.gyp:icuuc',
283             '../ui/aura/aura.gyp:aura',
284             '../ui/base/ui_base.gyp:ui_base',
285             '../ui/compositor/compositor.gyp:compositor',
286             '../ui/gfx/gfx.gyp:gfx',
287             '../ui/gfx/gfx.gyp:gfx_geometry',
288             '../ui/resources/ui_resources.gyp:ui_resources',
289             '../ui/resources/ui_resources.gyp:ui_test_pak',
290             '../ui/views/views.gyp:views',
291             '../url/url.gyp:url_lib',
292             'mojo_application',
293             'mojo_aura_support',
294             'mojo_common_lib',
295             'mojo_environment_chromium',
296             'mojo_geometry_bindings',
297             'mojo_geometry_lib',
298             'mojo_input_events_lib',
299             'mojo_navigation_bindings',
300             'mojo_system_impl',
301             'mojo_views_support',
302             'mojo_view_manager_bindings',
303             'mojo_view_manager_lib',
304           ],
305           'sources': [
306             'examples/browser/browser.cc',
307             'public/cpp/application/lib/mojo_main_chromium.cc',
308           ],
309         },
310         {
311           'target_name': 'package_mojo_aura_demo',
312           'variables': {
313             'app_name': 'mojo_aura_demo',
314           },
315           'includes': [ 'build/package_app.gypi' ],
316         },
317         {
318           'target_name': 'mojo_demo_launcher',
319           'type': 'shared_library',
320           'dependencies': [
321             '../base/base.gyp:base',
322             '../skia/skia.gyp:skia',
323             '../ui/gfx/gfx.gyp:gfx',
324             '../ui/gfx/gfx.gyp:gfx_geometry',
325             '../ui/gl/gl.gyp:gl',
326             'mojo_application',
327             'mojo_cpp_bindings',
328             'mojo_environment_chromium',
329             'mojo_geometry_bindings',
330             'mojo_gles2',
331             'mojo_view_manager_bindings',
332             'mojo_system_impl',
333             'mojo_utility',
334           ],
335           'sources': [
336             'examples/demo_launcher/demo_launcher.cc',
337             'public/cpp/application/lib/mojo_main_chromium.cc',
338           ],
339         },
340         {
341           'target_name': 'mojo_window_manager_bindings',
342           'type': 'static_library',
343           'sources': [
344             'examples/window_manager/window_manager.mojom',
345           ],
346           'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
347           'export_dependent_settings': [
348             'mojo_cpp_bindings',
349           ],
350           'dependencies': [
351             'mojo_cpp_bindings',
352           ],
353         },
354         {
355           'target_name': 'mojo_window_manager',
356           'type': 'shared_library',
357           'dependencies': [
358             '../base/base.gyp:base',
359             '../ui/gfx/gfx.gyp:gfx_geometry',
360             '../ui/gl/gl.gyp:gl',
361             'mojo_application',
362             'mojo_cpp_bindings',
363             'mojo_environment_chromium',
364             'mojo_geometry_bindings',
365             'mojo_gles2',
366             'mojo_launcher_bindings',
367             'mojo_navigation_bindings',
368             'mojo_view_manager_lib',
369             'mojo_window_manager_bindings',
370             'mojo_system_impl',
371             'mojo_utility',
372           ],
373           'sources': [
374             'examples/window_manager/window_manager.cc',
375             'public/cpp/application/lib/mojo_main_chromium.cc',
376           ],
377         },
378         {
379           'target_name': 'mojo_embedded_app',
380           'type': 'shared_library',
381           'dependencies': [
382             '../base/base.gyp:base',
383             '../ui/gfx/gfx.gyp:gfx_geometry',
384             '../ui/gl/gl.gyp:gl',
385             '../url/url.gyp:url_lib',
386             'mojo_application',
387             'mojo_cpp_bindings',
388             'mojo_environment_chromium',
389             'mojo_geometry_bindings',
390             'mojo_gles2',
391             'mojo_navigation_bindings',
392             'mojo_view_manager_lib',
393             'mojo_window_manager_bindings',
394             'mojo_system_impl',
395             'mojo_utility',
396           ],
397           'sources': [
398             'examples/embedded_app/embedded_app.cc',
399             'public/cpp/application/lib/mojo_main_chromium.cc',
400           ],
401         },
402         {
403           'target_name': 'mojo_nesting_app',
404           'type': 'shared_library',
405           'dependencies': [
406             '../base/base.gyp:base',
407             '../ui/gfx/gfx.gyp:gfx_geometry',
408             '../ui/gl/gl.gyp:gl',
409             '../url/url.gyp:url_lib',
410             'mojo_application',
411             'mojo_cpp_bindings',
412             'mojo_environment_chromium',
413             'mojo_geometry_bindings',
414             'mojo_gles2',
415             'mojo_navigation_bindings',
416             'mojo_view_manager_lib',
417             'mojo_window_manager_bindings',
418             'mojo_system_impl',
419             'mojo_utility',
420           ],
421           'sources': [
422             'examples/nesting_app/nesting_app.cc',
423             'public/cpp/application/lib/mojo_main_chromium.cc',
424           ],
425         },
426       ],
427     }],
428     ['OS=="linux"', {
429       'targets': [
430         {
431           'target_name': 'mojo_dbus_echo',
432           'type': 'shared_library',
433           'dependencies': [
434             '../base/base.gyp:base',
435             'mojo_application',
436             'mojo_cpp_bindings',
437             'mojo_environment_standalone',
438             'mojo_echo_bindings',
439             'mojo_system',
440             'mojo_utility',
441           ],
442           'sources': [
443             'examples/dbus_echo/dbus_echo_app.cc',
444             'public/cpp/application/lib/mojo_main_standalone.cc',
445           ],
446         },
447       ],
448     }],
449   ],