GLHelper: Use preferred BGRA read pixels for YUV read back
[chromium-blink-merge.git] / mojo / mojo_examples.gypi
blob0731887e1f2c741751c60f2f7033b1fb9b60d801
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/gfx/gfx.gyp:gfx',
13         '../ui/gfx/gfx.gyp:gfx_geometry',
14         '../ui/gl/gl.gyp:gl',
15         'mojo_bindings',
16         'mojo_environment_standalone',
17         'mojo_gles2',
18         'mojo_native_viewport_bindings',
19         'mojo_shell_client',
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       ],
30     },
31     {
32       'target_name': 'package_mojo_sample_app',
33       'variables': {
34         'app_name': 'mojo_sample_app',
35       },
36       'includes': [ 'build/package_app.gypi' ],
37     },
38     {
39       'target_name': 'mojo_compositor_support',
40       'type': 'static_library',
41       'dependencies': [
42         '../base/base.gyp:base',
43         '../cc/cc.gyp:cc',
44         '../skia/skia.gyp:skia',
45         '../gpu/gpu.gyp:gles2_implementation',
46         'mojo_gles2',
47         'mojo_system',
48       ],
49       'sources': [
50         'examples/compositor_app/mojo_context_provider.cc',
51         'examples/compositor_app/mojo_context_provider.h',
52       ],
53     },
54     {
55       'target_name': 'mojo_compositor_app',
56       'type': 'shared_library',
57       'dependencies': [
58         '../base/base.gyp:base',
59         '../cc/cc.gyp:cc',
60         '../ui/gfx/gfx.gyp:gfx',
61         '../ui/gfx/gfx.gyp:gfx_geometry',
62         'mojo_common_lib',
63         'mojo_compositor_support',
64         'mojo_environment_chromium',
65         'mojo_gles2',
66         'mojo_native_viewport_bindings',
67         'mojo_shell_client',
68         'mojo_system',
69       ],
70       'sources': [
71         'examples/compositor_app/compositor_app.cc',
72         'examples/compositor_app/compositor_host.cc',
73         'examples/compositor_app/compositor_host.h',
74       ],
75     },
76     {
77       'target_name': 'package_mojo_compositor_app',
78       'variables': {
79         'app_name': 'mojo_compositor_app',
80       },
81       'includes': [ 'build/package_app.gypi' ],
82     },
83     {
84       'target_name': 'mojo_pepper_container_app',
85       'type': 'shared_library',
86       'dependencies': [
87         '../base/base.gyp:base',
88         '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
89         '../ppapi/ppapi.gyp:ppapi_c',
90         '../ppapi/ppapi_internal.gyp:ppapi_example_gles2_spinning_cube',
91         'mojo_environment_chromium',
92         'mojo_gles2',
93         'mojo_native_viewport_bindings',
94         'mojo_shell_client',
95         'mojo_system',
96       ],
97       'defines': [
98         # We don't really want to export. We could change how
99         # ppapi_{shared,thunk}_export.h are defined to avoid this.
100         'PPAPI_SHARED_IMPLEMENTATION',
101         'PPAPI_THUNK_IMPLEMENTATION',
102       ],
103       'sources': [
104         # Source files from ppapi/.
105         # An alternative is to depend on
106         # '../ppapi/ppapi_internal.gyp:ppapi_shared', but that target includes
107         # a lot of things that we don't need.
108         # TODO(yzshen): Consider extracting these files into a separate target
109         # which mojo_pepper_container_app and ppapi_shared both depend on.
110         '../ppapi/shared_impl/api_id.h',
111         '../ppapi/shared_impl/callback_tracker.cc',
112         '../ppapi/shared_impl/callback_tracker.h',
113         '../ppapi/shared_impl/host_resource.cc',
114         '../ppapi/shared_impl/host_resource.h',
115         '../ppapi/shared_impl/id_assignment.cc',
116         '../ppapi/shared_impl/id_assignment.h',
117         '../ppapi/shared_impl/ppapi_globals.cc',
118         '../ppapi/shared_impl/ppapi_globals.h',
119         '../ppapi/shared_impl/ppapi_shared_export.h',
120         '../ppapi/shared_impl/ppb_message_loop_shared.cc',
121         '../ppapi/shared_impl/ppb_message_loop_shared.h',
122         '../ppapi/shared_impl/ppb_view_shared.cc',
123         '../ppapi/shared_impl/ppb_view_shared.h',
124         '../ppapi/shared_impl/proxy_lock.cc',
125         '../ppapi/shared_impl/proxy_lock.h',
126         '../ppapi/shared_impl/resource.cc',
127         '../ppapi/shared_impl/resource.h',
128         '../ppapi/shared_impl/resource_tracker.cc',
129         '../ppapi/shared_impl/resource_tracker.h',
130         '../ppapi/shared_impl/scoped_pp_resource.cc',
131         '../ppapi/shared_impl/scoped_pp_resource.h',
132         '../ppapi/shared_impl/singleton_resource_id.h',
133         '../ppapi/shared_impl/tracked_callback.cc',
134         '../ppapi/shared_impl/tracked_callback.h',
135         '../ppapi/thunk/enter.cc',
136         '../ppapi/thunk/enter.h',
137         '../ppapi/thunk/interfaces_ppb_private.h',
138         '../ppapi/thunk/interfaces_ppb_private_flash.h',
139         '../ppapi/thunk/interfaces_ppb_private_no_permissions.h',
140         '../ppapi/thunk/interfaces_ppb_public_dev.h',
141         '../ppapi/thunk/interfaces_ppb_public_dev_channel.h',
142         '../ppapi/thunk/interfaces_ppb_public_stable.h',
143         '../ppapi/thunk/interfaces_preamble.h',
144         '../ppapi/thunk/ppapi_thunk_export.h',
145         '../ppapi/thunk/ppb_graphics_3d_api.h',
146         '../ppapi/thunk/ppb_graphics_3d_thunk.cc',
147         '../ppapi/thunk/ppb_instance_api.h',
148         '../ppapi/thunk/ppb_instance_thunk.cc',
149         '../ppapi/thunk/ppb_message_loop_api.h',
150         '../ppapi/thunk/ppb_view_api.h',
151         '../ppapi/thunk/ppb_view_thunk.cc',
152         '../ppapi/thunk/resource_creation_api.h',
153         '../ppapi/thunk/thunk.h',
155         'examples/pepper_container_app/graphics_3d_resource.cc',
156         'examples/pepper_container_app/graphics_3d_resource.h',
157         'examples/pepper_container_app/interface_list.cc',
158         'examples/pepper_container_app/interface_list.h',
159         'examples/pepper_container_app/mojo_ppapi_globals.cc',
160         'examples/pepper_container_app/mojo_ppapi_globals.h',
161         'examples/pepper_container_app/pepper_container_app.cc',
162         'examples/pepper_container_app/plugin_instance.cc',
163         'examples/pepper_container_app/plugin_instance.h',
164         'examples/pepper_container_app/plugin_module.cc',
165         'examples/pepper_container_app/plugin_module.h',
166         'examples/pepper_container_app/ppb_core_thunk.cc',
167         'examples/pepper_container_app/ppb_opengles2_thunk.cc',
168         'examples/pepper_container_app/resource_creation_impl.cc',
169         'examples/pepper_container_app/resource_creation_impl.h',
170         'examples/pepper_container_app/thunk.h',
171         'examples/pepper_container_app/type_converters.h',
172       ],
173     },
174   ],
175   'conditions': [
176     ['use_aura==1', {
177       'targets': [
178         {
179           'target_name': 'mojo_aura_demo_support',
180           'type': 'static_library',
181           'dependencies': [
182             '../cc/cc.gyp:cc',
183             '../ui/aura/aura.gyp:aura',
184             '../ui/events/events.gyp:events',
185             '../ui/events/events.gyp:events_base',
186             '../ui/compositor/compositor.gyp:compositor',
187             '../ui/gl/gl.gyp:gl',
188             '../webkit/common/gpu/webkit_gpu.gyp:webkit_gpu',
189             'mojo_compositor_support',
190             'mojo_gles2',
191             'mojo_native_viewport_bindings',
192           ],
193           'sources': [
194             'examples/aura_demo/demo_context_factory.cc',
195             'examples/aura_demo/demo_context_factory.h',
196             'examples/aura_demo/demo_screen.cc',
197             'examples/aura_demo/demo_screen.h',
198             'examples/aura_demo/window_tree_host_mojo.cc',
199             'examples/aura_demo/window_tree_host_mojo.h',
200           ],
201         },
202         {
203           'target_name': 'mojo_aura_demo',
204           'type': 'shared_library',
205           'dependencies': [
206             '../base/base.gyp:base',
207             '../ui/aura/aura.gyp:aura',
208             '../ui/base/ui_base.gyp:ui_base',
209             '../ui/gfx/gfx.gyp:gfx',
210             '../ui/gfx/gfx.gyp:gfx_geometry',
211             'mojo_aura_demo_support',
212             'mojo_common_lib',
213             'mojo_environment_chromium',
214             'mojo_gles2',
215             'mojo_shell_client',
216             'mojo_system',
217           ],
218           'sources': [
219             'examples/aura_demo/aura_demo.cc',
220           ],
221         },
222         {
223           'target_name': 'package_mojo_aura_demo',
224           'variables': {
225             'app_name': 'mojo_aura_demo',
226           },
227           'includes': [ 'build/package_app.gypi' ],
228         },
229         {
230           'target_name': 'mojo_launcher_bindings',
231           'type': 'static_library',
232           'sources': [
233             'examples/launcher/launcher.mojom',
234           ],
235           'variables': {
236             'mojom_base_output_dir': 'mojo',
237           },
238           'includes': [ 'public/bindings/mojom_bindings_generator.gypi' ],
239           'export_dependent_settings': [
240             'mojo_bindings',
241             'mojo_system',
242           ],
243           'dependencies': [
244             'mojo_bindings',
245             'mojo_system',
246           ],
247         },
248         {
249           'target_name': 'mojo_launcher',
250           'type': 'shared_library',
251           'dependencies': [
252             '../base/base.gyp:base',
253             '../base/base.gyp:base_i18n',
254             '../ui/aura/aura.gyp:aura',
255             '../ui/aura/aura.gyp:aura_test_support',
256             '../ui/base/ui_base.gyp:ui_base',
257             '../ui/gfx/gfx.gyp:gfx',
258             '../ui/gfx/gfx.gyp:gfx_geometry',
259             '../ui/views/views.gyp:views',
260             '../url/url.gyp:url_lib',
261             'mojo_aura_demo_support',
262             'mojo_common_lib',
263             'mojo_environment_chromium',
264             'mojo_gles2',
265             'mojo_launcher_bindings',
266             'mojo_shell_client',
267             'mojo_system',
268           ],
269           'sources': [
270             'examples/launcher/launcher.cc',
271           ],
272         },
273         {
274           'target_name': 'package_mojo_launcher',
275           'variables': {
276             'app_name': 'mojo_launcher',
277           },
278           'includes': [ 'build/package_app.gypi' ],
279         },
280         {
281           'target_name': 'mojo_view_manager_bindings',
282           'type': 'static_library',
283           'sources': [
284             'examples/view_manager/view_manager.mojom',
285           ],
286           'variables': {
287             'mojom_base_output_dir': 'mojo',
288           },
289           'includes': [ 'public/bindings/mojom_bindings_generator.gypi' ],
290           'export_dependent_settings': [
291             'mojo_bindings',
292             'mojo_system',
293           ],
294           'dependencies': [
295             'mojo_bindings',
296             'mojo_system',
297           ],
298         },
299         {
300           'target_name': 'mojo_view_manager',
301           'type': 'shared_library',
302           'dependencies': [
303             '../base/base.gyp:base',
304             '../ui/gfx/gfx.gyp:gfx_geometry',
305             'mojo_common_lib',
306             'mojo_environment_chromium',
307             'mojo_launcher_bindings',
308             'mojo_native_viewport_bindings',
309             'mojo_shell_client',
310             'mojo_system',
311             'mojo_view_manager_bindings',
312           ],
313           'sources': [
314             'examples/view_manager/view_manager.cc',
315           ],
316         },
317         {
318           'target_name': 'package_mojo_view_manager',
319           'variables': {
320             'app_name': 'mojo_view_manager',
321           },
322           'includes': [ 'build/package_app.gypi' ],
323         },
324       ],
325     }],
326   ],