1# Copyright (c) 2012 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  'variables': {
7    'chromium_code': 1,
8  },
9  'targets': [
10    {
11      # GN version: //cc
12      'target_name': 'cc',
13      'type': '<(component)',
14      'dependencies': [
15        '<(DEPTH)/base/base.gyp:base',
16        '<(DEPTH)/base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
17        '<(DEPTH)/gpu/gpu.gyp:gpu',
18        '<(DEPTH)/media/media.gyp:media',
19        '<(DEPTH)/skia/skia.gyp:skia',
20        '<(DEPTH)/ui/events/events.gyp:events_base',
21        '<(DEPTH)/ui/gfx/gfx.gyp:gfx',
22        '<(DEPTH)/ui/gfx/gfx.gyp:gfx_geometry',
23      ],
24      'variables': {
25        'optimize': 'max',
26      },
27      'export_dependent_settings': [
28        '<(DEPTH)/skia/skia.gyp:skia',
29      ],
30      'defines': [
31        'CC_IMPLEMENTATION=1',
32      ],
33      'sources': [
34        # Note: file list duplicated in GN build.
35        'animation/animation.cc',
36        'animation/animation.h',
37        'animation/animation_curve.cc',
38        'animation/animation_curve.h',
39        'animation/animation_delegate.h',
40        'animation/animation_events.cc',
41        'animation/animation_events.h',
42        'animation/animation_id_provider.cc',
43        'animation/animation_id_provider.h',
44        'animation/animation_registrar.cc',
45        'animation/animation_registrar.h',
46        'animation/keyframed_animation_curve.cc',
47        'animation/keyframed_animation_curve.h',
48        'animation/layer_animation_controller.cc',
49        'animation/layer_animation_controller.h',
50        'animation/layer_animation_event_observer.h',
51        'animation/layer_animation_value_observer.h',
52        'animation/layer_animation_value_provider.h',
53        'animation/scroll_offset_animation_curve.cc',
54        'animation/scroll_offset_animation_curve.h',
55        'animation/scrollbar_animation_controller.h',
56        'animation/scrollbar_animation_controller.cc',
57        'animation/scrollbar_animation_controller_linear_fade.cc',
58        'animation/scrollbar_animation_controller_linear_fade.h',
59        'animation/scrollbar_animation_controller_thinning.cc',
60        'animation/scrollbar_animation_controller_thinning.h',
61        'animation/timing_function.cc',
62        'animation/timing_function.h',
63        'animation/transform_operation.cc',
64        'animation/transform_operation.h',
65        'animation/transform_operations.cc',
66        'animation/transform_operations.h',
67        'base/completion_event.h',
68        'base/delayed_unique_notifier.cc',
69        'base/delayed_unique_notifier.h',
70        'base/invalidation_region.cc',
71        'base/invalidation_region.h',
72        'base/latency_info_swap_promise.cc',
73        'base/latency_info_swap_promise.h',
74        'base/latency_info_swap_promise_monitor.cc',
75        'base/latency_info_swap_promise_monitor.h',
76        'base/math_util.cc',
77        'base/math_util.h',
78        'base/ref_counted_managed.h',
79        'base/region.cc',
80        'base/region.h',
81        'base/rolling_time_delta_history.cc',
82        'base/rolling_time_delta_history.h',
83        'base/scoped_ptr_algorithm.h',
84        'base/scoped_ptr_deque.h',
85        'base/scoped_ptr_vector.h',
86        'base/simple_enclosed_region.cc',
87        'base/simple_enclosed_region.h',
88        'base/swap_promise.h',
89        'base/swap_promise_monitor.cc',
90        'base/swap_promise_monitor.h',
91        'base/switches.cc',
92        'base/switches.h',
93        'base/tiling_data.cc',
94        'base/tiling_data.h',
95        'base/unique_notifier.cc',
96        'base/unique_notifier.h',
97        'base/util.h',
98        'debug/benchmark_instrumentation.cc',
99        'debug/benchmark_instrumentation.h',
100        'debug/debug_colors.cc',
101        'debug/debug_colors.h',
102        'debug/debug_rect_history.cc',
103        'debug/debug_rect_history.h',
104        'debug/devtools_instrumentation.h',
105        'debug/frame_rate_counter.cc',
106        'debug/frame_rate_counter.h',
107        'debug/frame_viewer_instrumentation.h',
108        'debug/invalidation_benchmark.cc',
109        'debug/invalidation_benchmark.h',
110        'debug/lap_timer.cc',
111        'debug/lap_timer.h',
112        'debug/layer_tree_debug_state.cc',
113        'debug/layer_tree_debug_state.h',
114        'debug/micro_benchmark.cc',
115        'debug/micro_benchmark.h',
116        'debug/micro_benchmark_impl.cc',
117        'debug/micro_benchmark_impl.h',
118        'debug/micro_benchmark_controller.cc',
119        'debug/micro_benchmark_controller.h',
120        'debug/micro_benchmark_controller_impl.cc',
121        'debug/micro_benchmark_controller_impl.h',
122        'debug/paint_time_counter.cc',
123        'debug/paint_time_counter.h',
124        'debug/picture_record_benchmark.cc',
125        'debug/picture_record_benchmark.h',
126        'debug/rasterize_and_record_benchmark.cc',
127        'debug/rasterize_and_record_benchmark.h',
128        'debug/rasterize_and_record_benchmark_impl.cc',
129        'debug/rasterize_and_record_benchmark_impl.h',
130        'debug/rendering_stats.cc',
131        'debug/rendering_stats.h',
132        'debug/rendering_stats_instrumentation.cc',
133        'debug/rendering_stats_instrumentation.h',
134        'debug/ring_buffer.h',
135        'debug/traced_picture.cc',
136        'debug/traced_picture.h',
137        'debug/traced_value.cc',
138        'debug/traced_value.h',
139        'debug/unittest_only_benchmark.cc',
140        'debug/unittest_only_benchmark.h',
141        'debug/unittest_only_benchmark_impl.cc',
142        'debug/unittest_only_benchmark_impl.h',
143        'input/input_handler.h',
144        'input/page_scale_animation.cc',
145        'input/page_scale_animation.h',
146        'input/layer_selection_bound.cc',
147        'input/layer_selection_bound.h',
148        'input/selection_bound_type.h',
149        'input/top_controls_manager.cc',
150        'input/top_controls_manager.h',
151        'input/top_controls_manager_client.h',
152        'layers/append_quads_data.h',
153        'layers/content_layer.cc',
154        'layers/content_layer.h',
155        'layers/content_layer_client.h',
156        'layers/contents_scaling_layer.cc',
157        'layers/contents_scaling_layer.h',
158        'layers/delegated_frame_provider.cc',
159        'layers/delegated_frame_provider.h',
160        'layers/delegated_frame_resource_collection.cc',
161        'layers/delegated_frame_resource_collection.h',
162        'layers/delegated_renderer_layer.cc',
163        'layers/delegated_renderer_layer.h',
164        'layers/delegated_renderer_layer_impl.cc',
165        'layers/delegated_renderer_layer_impl.h',
166        'layers/draw_properties.h',
167        'layers/heads_up_display_layer.cc',
168        'layers/heads_up_display_layer.h',
169        'layers/heads_up_display_layer_impl.cc',
170        'layers/heads_up_display_layer_impl.h',
171        'layers/image_layer.cc',
172        'layers/image_layer.h',
173        'layers/io_surface_layer.cc',
174        'layers/io_surface_layer.h',
175        'layers/io_surface_layer_impl.cc',
176        'layers/io_surface_layer_impl.h',
177        'layers/layer.cc',
178        'layers/layer.h',
179        'layers/layer_client.h',
180        'layers/layer_impl.cc',
181        'layers/layer_impl.h',
182        'layers/layer_iterator.h',
183        'layers/layer_lists.cc',
184        'layers/layer_lists.h',
185        'layers/layer_position_constraint.cc',
186        'layers/layer_position_constraint.h',
187        'layers/layer_utils.cc',
188        'layers/layer_utils.h',
189        'layers/nine_patch_layer.cc',
190        'layers/nine_patch_layer.h',
191        'layers/nine_patch_layer_impl.cc',
192        'layers/nine_patch_layer_impl.h',
193        'layers/paint_properties.h',
194        'layers/painted_scrollbar_layer.cc',
195        'layers/painted_scrollbar_layer.h',
196        'layers/painted_scrollbar_layer_impl.cc',
197        'layers/painted_scrollbar_layer_impl.h',
198        'layers/picture_image_layer.cc',
199        'layers/picture_image_layer.h',
200        'layers/picture_image_layer_impl.cc',
201        'layers/picture_image_layer_impl.h',
202        'layers/picture_layer.cc',
203        'layers/picture_layer.h',
204        'layers/picture_layer_impl.cc',
205        'layers/picture_layer_impl.h',
206        'layers/render_pass_sink.h',
207        'layers/render_surface.cc',
208        'layers/render_surface.h',
209        'layers/render_surface_impl.cc',
210        'layers/render_surface_impl.h',
211        'layers/scrollbar_layer_impl_base.cc',
212        'layers/scrollbar_layer_impl_base.h',
213        'layers/scrollbar_layer_interface.h',
214        'layers/solid_color_layer.cc',
215        'layers/solid_color_layer.h',
216        'layers/solid_color_layer_impl.cc',
217        'layers/solid_color_layer_impl.h',
218        'layers/solid_color_scrollbar_layer.cc',
219        'layers/solid_color_scrollbar_layer.h',
220        'layers/solid_color_scrollbar_layer_impl.cc',
221        'layers/solid_color_scrollbar_layer_impl.h',
222        'layers/surface_layer.cc',
223        'layers/surface_layer.h',
224        'layers/surface_layer_impl.cc',
225        'layers/surface_layer_impl.h',
226        'layers/texture_layer.cc',
227        'layers/texture_layer.h',
228        'layers/texture_layer_client.h',
229        'layers/texture_layer_impl.cc',
230        'layers/texture_layer_impl.h',
231        'layers/tiled_layer.cc',
232        'layers/tiled_layer.h',
233        'layers/tiled_layer_impl.cc',
234        'layers/tiled_layer_impl.h',
235        'layers/ui_resource_layer.cc',
236        'layers/ui_resource_layer.h',
237        'layers/ui_resource_layer_impl.cc',
238        'layers/ui_resource_layer_impl.h',
239        'layers/video_frame_provider.h',
240        'layers/video_frame_provider_client_impl.cc',
241        'layers/video_frame_provider_client_impl.h',
242        'layers/video_layer.cc',
243        'layers/video_layer.h',
244        'layers/video_layer_impl.cc',
245        'layers/video_layer_impl.h',
246        'output/begin_frame_args.cc',
247        'output/begin_frame_args.h',
248        'output/bsp_tree.cc',
249        'output/bsp_tree.h',
250        'output/bsp_walk_action.cc',
251        'output/bsp_walk_action.h',
252        'output/compositor_frame.cc',
253        'output/compositor_frame.h',
254        'output/compositor_frame_ack.cc',
255        'output/compositor_frame_ack.h',
256        'output/compositor_frame_metadata.cc',
257        'output/compositor_frame_metadata.h',
258        'output/context_provider.cc',
259        'output/context_provider.h',
260        'output/copy_output_request.cc',
261        'output/copy_output_request.h',
262        'output/copy_output_result.cc',
263        'output/copy_output_result.h',
264        'output/delegated_frame_data.h',
265        'output/delegated_frame_data.cc',
266        'output/delegating_renderer.cc',
267        'output/delegating_renderer.h',
268        'output/direct_renderer.cc',
269        'output/direct_renderer.h',
270        'output/filter_operation.cc',
271        'output/filter_operation.h',
272        'output/filter_operations.cc',
273        'output/filter_operations.h',
274        'output/geometry_binding.cc',
275        'output/geometry_binding.h',
276        'output/gl_frame_data.h',
277        'output/gl_frame_data.cc',
278        'output/gl_renderer.cc',
279        'output/gl_renderer.h',
280        'output/gl_renderer_draw_cache.cc',
281        'output/gl_renderer_draw_cache.h',
282        'output/managed_memory_policy.cc',
283        'output/managed_memory_policy.h',
284        'output/output_surface.cc',
285        'output/output_surface.h',
286        'output/output_surface_client.h',
287        'output/overlay_candidate.cc',
288        'output/overlay_candidate.h',
289        'output/overlay_candidate_validator.h',
290        'output/overlay_processor.cc',
291        'output/overlay_processor.h',
292        'output/overlay_strategy_single_on_top.cc',
293        'output/overlay_strategy_single_on_top.h',
294        'output/program_binding.cc',
295        'output/program_binding.h',
296        'output/render_surface_filters.cc',
297        'output/render_surface_filters.h',
298        'output/renderer.cc',
299        'output/renderer.h',
300        'output/shader.cc',
301        'output/shader.h',
302        'output/software_frame_data.cc',
303        'output/software_frame_data.h',
304        'output/software_output_device.cc',
305        'output/software_output_device.h',
306        'output/software_renderer.cc',
307        'output/software_renderer.h',
308        'output/viewport_selection_bound.cc',
309        'output/viewport_selection_bound.h',
310        'quads/checkerboard_draw_quad.cc',
311        'quads/checkerboard_draw_quad.h',
312        'quads/content_draw_quad_base.cc',
313        'quads/content_draw_quad_base.h',
314        'quads/debug_border_draw_quad.cc',
315        'quads/debug_border_draw_quad.h',
316        'quads/draw_polygon.cc',
317        'quads/draw_polygon.h',
318        'quads/draw_quad.cc',
319        'quads/draw_quad.h',
320        'quads/io_surface_draw_quad.cc',
321        'quads/io_surface_draw_quad.h',
322        'quads/largest_draw_quad.h',
323        'quads/list_container.cc',
324        'quads/list_container.h',
325        'quads/picture_draw_quad.cc',
326        'quads/picture_draw_quad.h',
327        'quads/render_pass.cc',
328        'quads/render_pass.h',
329        'quads/render_pass_draw_quad.cc',
330        'quads/render_pass_draw_quad.h',
331        'quads/render_pass_id.cc',
332        'quads/render_pass_id.h',
333        'quads/shared_quad_state.cc',
334        'quads/shared_quad_state.h',
335        'quads/solid_color_draw_quad.cc',
336        'quads/solid_color_draw_quad.h',
337        'quads/stream_video_draw_quad.cc',
338        'quads/stream_video_draw_quad.h',
339        'quads/surface_draw_quad.cc',
340        'quads/surface_draw_quad.h',
341        'quads/texture_draw_quad.cc',
342        'quads/texture_draw_quad.h',
343        'quads/tile_draw_quad.cc',
344        'quads/tile_draw_quad.h',
345        'quads/yuv_video_draw_quad.cc',
346        'quads/yuv_video_draw_quad.h',
347        'resources/bitmap_content_layer_updater.cc',
348        'resources/bitmap_content_layer_updater.h',
349        'resources/bitmap_raster_worker_pool.cc',
350        'resources/bitmap_raster_worker_pool.h',
351        'resources/bitmap_skpicture_content_layer_updater.cc',
352        'resources/bitmap_skpicture_content_layer_updater.h',
353        'resources/content_layer_updater.cc',
354        'resources/content_layer_updater.h',
355        'resources/eviction_tile_priority_queue.cc',
356        'resources/eviction_tile_priority_queue.h',
357        'resources/gpu_raster_worker_pool.cc',
358        'resources/gpu_raster_worker_pool.h',
359        'resources/image_layer_updater.cc',
360        'resources/image_layer_updater.h',
361        'resources/layer_painter.h',
362        'resources/layer_quad.cc',
363        'resources/layer_quad.h',
364        'resources/layer_tiling_data.cc',
365        'resources/layer_tiling_data.h',
366        'resources/layer_updater.cc',
367        'resources/layer_updater.h',
368        'resources/managed_tile_state.cc',
369        'resources/managed_tile_state.h',
370        'resources/memory_history.cc',
371        'resources/memory_history.h',
372        'resources/one_copy_raster_worker_pool.cc',
373        'resources/one_copy_raster_worker_pool.h',
374        'resources/picture.cc',
375        'resources/picture.h',
376        'resources/picture_layer_tiling.cc',
377        'resources/picture_layer_tiling.h',
378        'resources/picture_layer_tiling_set.cc',
379        'resources/picture_layer_tiling_set.h',
380        'resources/picture_pile.cc',
381        'resources/picture_pile.h',
382        'resources/picture_pile_base.cc',
383        'resources/picture_pile_base.h',
384        'resources/picture_pile_impl.cc',
385        'resources/picture_pile_impl.h',
386        'resources/pixel_buffer_raster_worker_pool.cc',
387        'resources/pixel_buffer_raster_worker_pool.h',
388        'resources/platform_color.h',
389        'resources/prioritized_resource.cc',
390        'resources/prioritized_resource.h',
391        'resources/prioritized_resource_manager.cc',
392        'resources/prioritized_resource_manager.h',
393        'resources/prioritized_tile_set.cc',
394        'resources/prioritized_tile_set.h',
395        'resources/priority_calculator.cc',
396        'resources/priority_calculator.h',
397        'resources/raster_buffer.cc',
398        'resources/raster_buffer.h',
399        'resources/raster_mode.cc',
400        'resources/raster_mode.h',
401        'resources/raster_tile_priority_queue.cc',
402        'resources/raster_tile_priority_queue.h',
403        'resources/raster_worker_pool.cc',
404        'resources/raster_worker_pool.h',
405        'resources/rasterizer.cc',
406        'resources/rasterizer.h',
407        'resources/release_callback.h',
408        'resources/resource.cc',
409        'resources/resource.h',
410        'resources/resource_format.cc',
411        'resources/resource_format.h',
412        'resources/resource_pool.cc',
413        'resources/resource_pool.h',
414        'resources/resource_provider.cc',
415        'resources/resource_provider.h',
416        'resources/resource_update.cc',
417        'resources/resource_update.h',
418        'resources/resource_update_controller.cc',
419        'resources/resource_update_controller.h',
420        'resources/resource_update_queue.cc',
421        'resources/resource_update_queue.h',
422        'resources/returned_resource.h',
423        'resources/scoped_gpu_raster.cc',
424        'resources/scoped_gpu_raster.h',
425        'resources/scoped_resource.cc',
426        'resources/scoped_resource.h',
427        'resources/scoped_ui_resource.cc',
428        'resources/scoped_ui_resource.h',
429        'resources/shared_bitmap.cc',
430        'resources/shared_bitmap.h',
431        'resources/shared_bitmap_manager.h',
432        'resources/single_release_callback.cc',
433        'resources/single_release_callback.h',
434        'resources/single_release_callback_impl.cc',
435        'resources/single_release_callback_impl.h',
436        'resources/skpicture_content_layer_updater.cc',
437        'resources/skpicture_content_layer_updater.h',
438        'resources/task_graph_runner.cc',
439        'resources/task_graph_runner.h',
440        'resources/texture_mailbox.cc',
441        'resources/texture_mailbox.h',
442        'resources/texture_mailbox_deleter.cc',
443        'resources/texture_mailbox_deleter.h',
444        'resources/texture_uploader.cc',
445        'resources/texture_uploader.h',
446        'resources/tile.cc',
447        'resources/tile.h',
448        'resources/tile_manager.cc',
449        'resources/tile_manager.h',
450        'resources/tile_priority.cc',
451        'resources/tile_priority.h',
452        'resources/transferable_resource.cc',
453        'resources/transferable_resource.h',
454        'resources/ui_resource_bitmap.cc',
455        'resources/ui_resource_bitmap.h',
456        'resources/ui_resource_client.h',
457        'resources/ui_resource_request.cc',
458        'resources/ui_resource_request.h',
459        'resources/video_resource_updater.cc',
460        'resources/video_resource_updater.h',
461        'resources/zero_copy_raster_worker_pool.cc',
462        'resources/zero_copy_raster_worker_pool.h',
463        'scheduler/delay_based_time_source.cc',
464        'scheduler/delay_based_time_source.h',
465        'scheduler/draw_result.h',
466        'scheduler/scheduler.cc',
467        'scheduler/scheduler.h',
468        'scheduler/scheduler_settings.cc',
469        'scheduler/scheduler_settings.h',
470        'scheduler/scheduler_state_machine.cc',
471        'scheduler/scheduler_state_machine.h',
472        'trees/blocking_task_runner.cc',
473        'trees/blocking_task_runner.h',
474        'trees/damage_tracker.cc',
475        'trees/damage_tracker.h',
476        'trees/layer_sorter.cc',
477        'trees/layer_sorter.h',
478        'trees/layer_tree_host.cc',
479        'trees/layer_tree_host.h',
480        'trees/layer_tree_host_client.h',
481        'trees/layer_tree_host_common.cc',
482        'trees/layer_tree_host_common.h',
483        'trees/layer_tree_host_impl.cc',
484        'trees/layer_tree_host_impl.h',
485        'trees/layer_tree_impl.cc',
486        'trees/layer_tree_impl.h',
487        'trees/layer_tree_settings.cc',
488        'trees/layer_tree_settings.h',
489        'trees/occlusion.cc',
490        'trees/occlusion.h',
491        'trees/occlusion_tracker.cc',
492        'trees/occlusion_tracker.h',
493        'trees/proxy.cc',
494        'trees/proxy.h',
495        'trees/proxy_timing_history.cc',
496        'trees/proxy_timing_history.h',
497        'trees/scoped_abort_remaining_swap_promises.h',
498        'trees/single_thread_proxy.cc',
499        'trees/single_thread_proxy.h',
500        'trees/thread_proxy.cc',
501        'trees/thread_proxy.h',
502        'trees/tree_synchronizer.cc',
503        'trees/tree_synchronizer.h',
504      ],
505      'includes': [
506        '../build/android/increase_size_for_speed.gypi',
507      ],
508      # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
509      'msvs_disabled_warnings': [ 4267, ],
510    },
511    {
512      # GN version: //cc/surfaces
513      'target_name': 'cc_surfaces',
514      'type': '<(component)',
515      'dependencies': [
516        'cc',
517        '<(DEPTH)/base/base.gyp:base',
518        '<(DEPTH)/base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
519        '<(DEPTH)/skia/skia.gyp:skia',
520        '<(DEPTH)/ui/events/events.gyp:events_base',
521        '<(DEPTH)/ui/gfx/gfx.gyp:gfx',
522        '<(DEPTH)/ui/gfx/gfx.gyp:gfx_geometry',
523      ],
524      'defines': [
525        'CC_SURFACES_IMPLEMENTATION=1',
526      ],
527      'sources': [
528        # Note: file list duplicated in GN build.
529        'surfaces/display.cc',
530        'surfaces/display.h',
531        'surfaces/display_client.h',
532        'surfaces/surface.cc',
533        'surfaces/surface.h',
534        'surfaces/surface_aggregator.cc',
535        'surfaces/surface_aggregator.h',
536        'surfaces/surface_factory.cc',
537        'surfaces/surface_factory.h',
538        'surfaces/surface_factory_client.h',
539        'surfaces/surface_id.h',
540        'surfaces/surface_id_allocator.cc',
541        'surfaces/surface_id_allocator.h',
542        'surfaces/surface_manager.cc',
543        'surfaces/surface_manager.h',
544        'surfaces/surface_resource_holder.cc',
545        'surfaces/surface_resource_holder.h',
546        'surfaces/surfaces_export.h',
547      ],
548      'includes': [
549        '../build/android/increase_size_for_speed.gypi',
550      ],
551    },
552  ],
553}
554