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