1# Copyright 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
5component("cc") {
6  sources = [
7    "animation/animation.cc",
8    "animation/animation.h",
9    "animation/animation_curve.cc",
10    "animation/animation_curve.h",
11    "animation/animation_delegate.h",
12    "animation/animation_events.cc",
13    "animation/animation_events.h",
14    "animation/animation_id_provider.cc",
15    "animation/animation_id_provider.h",
16    "animation/animation_registrar.cc",
17    "animation/animation_registrar.h",
18    "animation/keyframed_animation_curve.cc",
19    "animation/keyframed_animation_curve.h",
20    "animation/layer_animation_controller.cc",
21    "animation/layer_animation_controller.h",
22    "animation/layer_animation_event_observer.h",
23    "animation/layer_animation_value_observer.h",
24    "animation/layer_animation_value_provider.h",
25    "animation/scroll_offset_animation_curve.cc",
26    "animation/scroll_offset_animation_curve.h",
27    "animation/scrollbar_animation_controller.h",
28    "animation/scrollbar_animation_controller.cc",
29    "animation/scrollbar_animation_controller_linear_fade.cc",
30    "animation/scrollbar_animation_controller_linear_fade.h",
31    "animation/scrollbar_animation_controller_thinning.cc",
32    "animation/scrollbar_animation_controller_thinning.h",
33    "animation/timing_function.cc",
34    "animation/timing_function.h",
35    "animation/transform_operation.cc",
36    "animation/transform_operation.h",
37    "animation/transform_operations.cc",
38    "animation/transform_operations.h",
39    "base/completion_event.h",
40    "base/delayed_unique_notifier.cc",
41    "base/delayed_unique_notifier.h",
42    "base/invalidation_region.cc",
43    "base/invalidation_region.h",
44    "base/latency_info_swap_promise.cc",
45    "base/latency_info_swap_promise.h",
46    "base/latency_info_swap_promise_monitor.cc",
47    "base/latency_info_swap_promise_monitor.h",
48    "base/math_util.cc",
49    "base/math_util.h",
50    "base/ref_counted_managed.h",
51    "base/region.cc",
52    "base/region.h",
53    "base/rolling_time_delta_history.cc",
54    "base/rolling_time_delta_history.h",
55    "base/scoped_ptr_algorithm.h",
56    "base/scoped_ptr_deque.h",
57    "base/scoped_ptr_vector.h",
58    "base/simple_enclosed_region.cc",
59    "base/simple_enclosed_region.h",
60    "base/swap_promise.h",
61    "base/swap_promise_monitor.cc",
62    "base/swap_promise_monitor.h",
63    "base/switches.cc",
64    "base/switches.h",
65    "base/tiling_data.cc",
66    "base/tiling_data.h",
67    "base/unique_notifier.cc",
68    "base/unique_notifier.h",
69    "base/util.h",
70    "debug/benchmark_instrumentation.cc",
71    "debug/benchmark_instrumentation.h",
72    "debug/debug_colors.cc",
73    "debug/debug_colors.h",
74    "debug/debug_rect_history.cc",
75    "debug/debug_rect_history.h",
76    "debug/devtools_instrumentation.h",
77    "debug/frame_rate_counter.cc",
78    "debug/frame_rate_counter.h",
79    "debug/frame_viewer_instrumentation.h",
80    "debug/invalidation_benchmark.cc",
81    "debug/invalidation_benchmark.h",
82    "debug/lap_timer.cc",
83    "debug/lap_timer.h",
84    "debug/layer_tree_debug_state.cc",
85    "debug/layer_tree_debug_state.h",
86    "debug/micro_benchmark.cc",
87    "debug/micro_benchmark.h",
88    "debug/micro_benchmark_impl.cc",
89    "debug/micro_benchmark_impl.h",
90    "debug/micro_benchmark_controller.cc",
91    "debug/micro_benchmark_controller.h",
92    "debug/micro_benchmark_controller_impl.cc",
93    "debug/micro_benchmark_controller_impl.h",
94    "debug/paint_time_counter.cc",
95    "debug/paint_time_counter.h",
96    "debug/picture_record_benchmark.cc",
97    "debug/picture_record_benchmark.h",
98    "debug/rasterize_and_record_benchmark.cc",
99    "debug/rasterize_and_record_benchmark.h",
100    "debug/rasterize_and_record_benchmark_impl.cc",
101    "debug/rasterize_and_record_benchmark_impl.h",
102    "debug/rendering_stats.cc",
103    "debug/rendering_stats.h",
104    "debug/rendering_stats_instrumentation.cc",
105    "debug/rendering_stats_instrumentation.h",
106    "debug/ring_buffer.h",
107    "debug/traced_picture.cc",
108    "debug/traced_picture.h",
109    "debug/traced_value.cc",
110    "debug/traced_value.h",
111    "debug/unittest_only_benchmark.cc",
112    "debug/unittest_only_benchmark.h",
113    "debug/unittest_only_benchmark_impl.cc",
114    "debug/unittest_only_benchmark_impl.h",
115    "input/input_handler.h",
116    "input/page_scale_animation.cc",
117    "input/page_scale_animation.h",
118    "input/layer_selection_bound.cc",
119    "input/layer_selection_bound.h",
120    "input/selection_bound_type.h",
121    "input/top_controls_manager.cc",
122    "input/top_controls_manager.h",
123    "input/top_controls_manager_client.h",
124    "layers/append_quads_data.h",
125    "layers/content_layer.cc",
126    "layers/content_layer.h",
127    "layers/content_layer_client.h",
128    "layers/contents_scaling_layer.cc",
129    "layers/contents_scaling_layer.h",
130    "layers/delegated_frame_provider.cc",
131    "layers/delegated_frame_provider.h",
132    "layers/delegated_frame_resource_collection.cc",
133    "layers/delegated_frame_resource_collection.h",
134    "layers/delegated_renderer_layer.cc",
135    "layers/delegated_renderer_layer.h",
136    "layers/delegated_renderer_layer_impl.cc",
137    "layers/delegated_renderer_layer_impl.h",
138    "layers/draw_properties.h",
139    "layers/heads_up_display_layer.cc",
140    "layers/heads_up_display_layer.h",
141    "layers/heads_up_display_layer_impl.cc",
142    "layers/heads_up_display_layer_impl.h",
143    "layers/image_layer.cc",
144    "layers/image_layer.h",
145    "layers/io_surface_layer.cc",
146    "layers/io_surface_layer.h",
147    "layers/io_surface_layer_impl.cc",
148    "layers/io_surface_layer_impl.h",
149    "layers/layer.cc",
150    "layers/layer.h",
151    "layers/layer_client.h",
152    "layers/layer_impl.cc",
153    "layers/layer_impl.h",
154    "layers/layer_iterator.h",
155    "layers/layer_lists.cc",
156    "layers/layer_lists.h",
157    "layers/layer_position_constraint.cc",
158    "layers/layer_position_constraint.h",
159    "layers/layer_utils.cc",
160    "layers/layer_utils.h",
161    "layers/nine_patch_layer.cc",
162    "layers/nine_patch_layer.h",
163    "layers/nine_patch_layer_impl.cc",
164    "layers/nine_patch_layer_impl.h",
165    "layers/paint_properties.h",
166    "layers/painted_scrollbar_layer.cc",
167    "layers/painted_scrollbar_layer.h",
168    "layers/painted_scrollbar_layer_impl.cc",
169    "layers/painted_scrollbar_layer_impl.h",
170    "layers/picture_image_layer.cc",
171    "layers/picture_image_layer.h",
172    "layers/picture_image_layer_impl.cc",
173    "layers/picture_image_layer_impl.h",
174    "layers/picture_layer.cc",
175    "layers/picture_layer.h",
176    "layers/picture_layer_impl.cc",
177    "layers/picture_layer_impl.h",
178    "layers/render_pass_sink.h",
179    "layers/render_surface.cc",
180    "layers/render_surface.h",
181    "layers/render_surface_impl.cc",
182    "layers/render_surface_impl.h",
183    "layers/scrollbar_layer_impl_base.cc",
184    "layers/scrollbar_layer_impl_base.h",
185    "layers/scrollbar_layer_interface.h",
186    "layers/solid_color_layer.cc",
187    "layers/solid_color_layer.h",
188    "layers/solid_color_layer_impl.cc",
189    "layers/solid_color_layer_impl.h",
190    "layers/solid_color_scrollbar_layer.cc",
191    "layers/solid_color_scrollbar_layer.h",
192    "layers/solid_color_scrollbar_layer_impl.cc",
193    "layers/solid_color_scrollbar_layer_impl.h",
194    "layers/surface_layer.cc",
195    "layers/surface_layer.h",
196    "layers/surface_layer_impl.cc",
197    "layers/surface_layer_impl.h",
198    "layers/texture_layer.cc",
199    "layers/texture_layer.h",
200    "layers/texture_layer_client.h",
201    "layers/texture_layer_impl.cc",
202    "layers/texture_layer_impl.h",
203    "layers/tiled_layer.cc",
204    "layers/tiled_layer.h",
205    "layers/tiled_layer_impl.cc",
206    "layers/tiled_layer_impl.h",
207    "layers/ui_resource_layer.cc",
208    "layers/ui_resource_layer.h",
209    "layers/ui_resource_layer_impl.cc",
210    "layers/ui_resource_layer_impl.h",
211    "layers/video_frame_provider.h",
212    "layers/video_frame_provider_client_impl.cc",
213    "layers/video_frame_provider_client_impl.h",
214    "layers/video_layer.cc",
215    "layers/video_layer.h",
216    "layers/video_layer_impl.cc",
217    "layers/video_layer_impl.h",
218    "output/begin_frame_args.cc",
219    "output/begin_frame_args.h",
220    "output/bsp_tree.cc",
221    "output/bsp_tree.h",
222    "output/bsp_walk_action.cc",
223    "output/bsp_walk_action.h",
224    "output/compositor_frame.cc",
225    "output/compositor_frame.h",
226    "output/compositor_frame_ack.cc",
227    "output/compositor_frame_ack.h",
228    "output/compositor_frame_metadata.cc",
229    "output/compositor_frame_metadata.h",
230    "output/context_provider.cc",
231    "output/context_provider.h",
232    "output/copy_output_request.cc",
233    "output/copy_output_request.h",
234    "output/copy_output_result.cc",
235    "output/copy_output_result.h",
236    "output/delegated_frame_data.cc",
237    "output/delegated_frame_data.h",
238    "output/delegating_renderer.cc",
239    "output/delegating_renderer.h",
240    "output/direct_renderer.cc",
241    "output/direct_renderer.h",
242    "output/filter_operation.cc",
243    "output/filter_operation.h",
244    "output/filter_operations.cc",
245    "output/filter_operations.h",
246    "output/geometry_binding.cc",
247    "output/geometry_binding.h",
248    "output/gl_frame_data.cc",
249    "output/gl_frame_data.h",
250    "output/gl_renderer.cc",
251    "output/gl_renderer.h",
252    "output/gl_renderer_draw_cache.cc",
253    "output/gl_renderer_draw_cache.h",
254    "output/managed_memory_policy.cc",
255    "output/managed_memory_policy.h",
256    "output/output_surface.cc",
257    "output/output_surface.h",
258    "output/output_surface_client.h",
259    "output/overlay_candidate.cc",
260    "output/overlay_candidate.h",
261    "output/overlay_candidate_validator.h",
262    "output/overlay_processor.cc",
263    "output/overlay_processor.h",
264    "output/overlay_strategy_single_on_top.cc",
265    "output/overlay_strategy_single_on_top.h",
266    "output/program_binding.cc",
267    "output/program_binding.h",
268    "output/render_surface_filters.cc",
269    "output/render_surface_filters.h",
270    "output/renderer.cc",
271    "output/renderer.h",
272    "output/shader.cc",
273    "output/shader.h",
274    "output/software_frame_data.cc",
275    "output/software_frame_data.h",
276    "output/software_output_device.cc",
277    "output/software_output_device.h",
278    "output/software_renderer.cc",
279    "output/software_renderer.h",
280    "output/viewport_selection_bound.cc",
281    "output/viewport_selection_bound.h",
282    "quads/checkerboard_draw_quad.cc",
283    "quads/checkerboard_draw_quad.h",
284    "quads/content_draw_quad_base.cc",
285    "quads/content_draw_quad_base.h",
286    "quads/debug_border_draw_quad.cc",
287    "quads/debug_border_draw_quad.h",
288    "quads/draw_polygon.cc",
289    "quads/draw_polygon.h",
290    "quads/draw_quad.cc",
291    "quads/draw_quad.h",
292    "quads/io_surface_draw_quad.cc",
293    "quads/io_surface_draw_quad.h",
294    "quads/largest_draw_quad.h",
295    "quads/list_container.cc",
296    "quads/list_container.h",
297    "quads/picture_draw_quad.cc",
298    "quads/picture_draw_quad.h",
299    "quads/render_pass.cc",
300    "quads/render_pass.h",
301    "quads/render_pass_draw_quad.cc",
302    "quads/render_pass_draw_quad.h",
303    "quads/render_pass_id.cc",
304    "quads/render_pass_id.h",
305    "quads/shared_quad_state.cc",
306    "quads/shared_quad_state.h",
307    "quads/solid_color_draw_quad.cc",
308    "quads/solid_color_draw_quad.h",
309    "quads/stream_video_draw_quad.cc",
310    "quads/stream_video_draw_quad.h",
311    "quads/surface_draw_quad.cc",
312    "quads/surface_draw_quad.h",
313    "quads/texture_draw_quad.cc",
314    "quads/texture_draw_quad.h",
315    "quads/tile_draw_quad.cc",
316    "quads/tile_draw_quad.h",
317    "quads/yuv_video_draw_quad.cc",
318    "quads/yuv_video_draw_quad.h",
319    "resources/bitmap_content_layer_updater.cc",
320    "resources/bitmap_content_layer_updater.h",
321    "resources/bitmap_raster_worker_pool.cc",
322    "resources/bitmap_raster_worker_pool.h",
323    "resources/bitmap_skpicture_content_layer_updater.cc",
324    "resources/bitmap_skpicture_content_layer_updater.h",
325    "resources/content_layer_updater.cc",
326    "resources/content_layer_updater.h",
327    "resources/eviction_tile_priority_queue.cc",
328    "resources/eviction_tile_priority_queue.h",
329    "resources/gpu_raster_worker_pool.cc",
330    "resources/gpu_raster_worker_pool.h",
331    "resources/image_layer_updater.cc",
332    "resources/image_layer_updater.h",
333    "resources/layer_painter.h",
334    "resources/layer_quad.cc",
335    "resources/layer_quad.h",
336    "resources/layer_tiling_data.cc",
337    "resources/layer_tiling_data.h",
338    "resources/layer_updater.cc",
339    "resources/layer_updater.h",
340    "resources/managed_tile_state.cc",
341    "resources/managed_tile_state.h",
342    "resources/memory_history.cc",
343    "resources/memory_history.h",
344    "resources/one_copy_raster_worker_pool.cc",
345    "resources/one_copy_raster_worker_pool.h",
346    "resources/picture.cc",
347    "resources/picture.h",
348    "resources/picture_layer_tiling.cc",
349    "resources/picture_layer_tiling.h",
350    "resources/picture_layer_tiling_set.cc",
351    "resources/picture_layer_tiling_set.h",
352    "resources/picture_pile.cc",
353    "resources/picture_pile.h",
354    "resources/picture_pile_base.cc",
355    "resources/picture_pile_base.h",
356    "resources/picture_pile_impl.cc",
357    "resources/picture_pile_impl.h",
358    "resources/pixel_buffer_raster_worker_pool.cc",
359    "resources/pixel_buffer_raster_worker_pool.h",
360    "resources/platform_color.h",
361    "resources/prioritized_resource.cc",
362    "resources/prioritized_resource.h",
363    "resources/prioritized_resource_manager.cc",
364    "resources/prioritized_resource_manager.h",
365    "resources/prioritized_tile_set.cc",
366    "resources/prioritized_tile_set.h",
367    "resources/priority_calculator.cc",
368    "resources/priority_calculator.h",
369    "resources/raster_buffer.cc",
370    "resources/raster_buffer.h",
371    "resources/raster_mode.cc",
372    "resources/raster_mode.h",
373    "resources/raster_tile_priority_queue.cc",
374    "resources/raster_tile_priority_queue.h",
375    "resources/raster_worker_pool.cc",
376    "resources/raster_worker_pool.h",
377    "resources/rasterizer.cc",
378    "resources/rasterizer.h",
379    "resources/release_callback.h",
380    "resources/resource.cc",
381    "resources/resource.h",
382    "resources/resource_format.cc",
383    "resources/resource_format.h",
384    "resources/resource_pool.cc",
385    "resources/resource_pool.h",
386    "resources/resource_provider.cc",
387    "resources/resource_provider.h",
388    "resources/resource_update.cc",
389    "resources/resource_update.h",
390    "resources/resource_update_controller.cc",
391    "resources/resource_update_controller.h",
392    "resources/resource_update_queue.cc",
393    "resources/resource_update_queue.h",
394    "resources/returned_resource.h",
395    "resources/scoped_gpu_raster.cc",
396    "resources/scoped_gpu_raster.h",
397    "resources/scoped_resource.cc",
398    "resources/scoped_resource.h",
399    "resources/scoped_ui_resource.cc",
400    "resources/scoped_ui_resource.h",
401    "resources/shared_bitmap.cc",
402    "resources/shared_bitmap.h",
403    "resources/shared_bitmap_manager.h",
404    "resources/single_release_callback.cc",
405    "resources/single_release_callback.h",
406    "resources/single_release_callback_impl.cc",
407    "resources/single_release_callback_impl.h",
408    "resources/skpicture_content_layer_updater.cc",
409    "resources/skpicture_content_layer_updater.h",
410    "resources/task_graph_runner.cc",
411    "resources/task_graph_runner.h",
412    "resources/texture_mailbox.cc",
413    "resources/texture_mailbox.h",
414    "resources/texture_mailbox_deleter.cc",
415    "resources/texture_mailbox_deleter.h",
416    "resources/texture_uploader.cc",
417    "resources/texture_uploader.h",
418    "resources/tile.cc",
419    "resources/tile.h",
420    "resources/tile_manager.cc",
421    "resources/tile_manager.h",
422    "resources/tile_priority.cc",
423    "resources/tile_priority.h",
424    "resources/transferable_resource.cc",
425    "resources/transferable_resource.h",
426    "resources/ui_resource_bitmap.cc",
427    "resources/ui_resource_bitmap.h",
428    "resources/ui_resource_client.h",
429    "resources/ui_resource_request.cc",
430    "resources/ui_resource_request.h",
431    "resources/video_resource_updater.cc",
432    "resources/video_resource_updater.h",
433    "resources/zero_copy_raster_worker_pool.cc",
434    "resources/zero_copy_raster_worker_pool.h",
435    "scheduler/delay_based_time_source.cc",
436    "scheduler/delay_based_time_source.h",
437    "scheduler/draw_result.h",
438    "scheduler/scheduler.cc",
439    "scheduler/scheduler.h",
440    "scheduler/scheduler_settings.cc",
441    "scheduler/scheduler_settings.h",
442    "scheduler/scheduler_state_machine.cc",
443    "scheduler/scheduler_state_machine.h",
444    "trees/blocking_task_runner.cc",
445    "trees/blocking_task_runner.h",
446    "trees/damage_tracker.cc",
447    "trees/damage_tracker.h",
448    "trees/layer_sorter.cc",
449    "trees/layer_sorter.h",
450    "trees/layer_tree_host.cc",
451    "trees/layer_tree_host.h",
452    "trees/layer_tree_host_client.h",
453    "trees/layer_tree_host_common.cc",
454    "trees/layer_tree_host_common.h",
455    "trees/layer_tree_host_impl.cc",
456    "trees/layer_tree_host_impl.h",
457    "trees/layer_tree_impl.cc",
458    "trees/layer_tree_impl.h",
459    "trees/layer_tree_settings.cc",
460    "trees/layer_tree_settings.h",
461    "trees/occlusion.cc",
462    "trees/occlusion.h",
463    "trees/occlusion_tracker.cc",
464    "trees/occlusion_tracker.h",
465    "trees/proxy.cc",
466    "trees/proxy.h",
467    "trees/proxy_timing_history.cc",
468    "trees/proxy_timing_history.h",
469    "trees/scoped_abort_remaining_swap_promises.h",
470    "trees/single_thread_proxy.cc",
471    "trees/single_thread_proxy.h",
472    "trees/thread_proxy.cc",
473    "trees/thread_proxy.h",
474    "trees/tree_synchronizer.cc",
475    "trees/tree_synchronizer.h",
476  ]
477
478  if (is_win) {
479    # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
480    cflags = [ "/wd4267" ]  # size_t -> int
481  }
482
483  public_deps = [
484    "//skia",
485  ]
486  deps = [
487    "//base",
488    "//base/third_party/dynamic_annotations",
489    "//gpu",
490    "//gpu/command_buffer/client:gles2_interface",
491    "//media",
492    "//ui/events:events_base",
493    "//ui/gfx",
494    "//ui/gfx/geometry",
495  ]
496
497  defines = [ "CC_IMPLEMENTATION=1" ]
498
499  if (!is_debug && (is_win || is_android)) {
500    configs -= [ "//build/config/compiler:optimize" ]
501    configs += [ "//build/config/compiler:optimize_max" ]
502  }
503}
504
505source_set("test_support") {
506  testonly = true
507  sources = [
508    "test/animation_test_common.cc",
509    "test/animation_test_common.h",
510    "test/begin_frame_args_test.cc",
511    "test/begin_frame_args_test.h",
512    "test/fake_content_layer.cc",
513    "test/fake_content_layer.h",
514    "test/fake_content_layer_client.cc",
515    "test/fake_content_layer_client.h",
516    "test/fake_content_layer_impl.cc",
517    "test/fake_content_layer_impl.h",
518    "test/fake_delegated_renderer_layer.cc",
519    "test/fake_delegated_renderer_layer.h",
520    "test/fake_delegated_renderer_layer_impl.cc",
521    "test/fake_delegated_renderer_layer_impl.h",
522    "test/fake_impl_proxy.h",
523    "test/fake_layer_tree_host.cc",
524    "test/fake_layer_tree_host.h",
525    "test/fake_layer_tree_host_client.cc",
526    "test/fake_layer_tree_host_client.h",
527    "test/fake_layer_tree_host_impl.cc",
528    "test/fake_layer_tree_host_impl.h",
529    "test/fake_layer_tree_host_impl_client.cc",
530    "test/fake_layer_tree_host_impl_client.h",
531    "test/fake_output_surface.cc",
532    "test/fake_output_surface.h",
533    "test/fake_output_surface_client.cc",
534    "test/fake_output_surface_client.h",
535    "test/fake_painted_scrollbar_layer.cc",
536    "test/fake_painted_scrollbar_layer.h",
537    "test/fake_picture_layer.cc",
538    "test/fake_picture_layer.h",
539    "test/fake_picture_layer_impl.cc",
540    "test/fake_picture_layer_impl.h",
541    "test/fake_picture_layer_tiling_client.cc",
542    "test/fake_picture_layer_tiling_client.h",
543    "test/fake_picture_pile_impl.cc",
544    "test/fake_picture_pile_impl.h",
545    "test/fake_proxy.cc",
546    "test/fake_proxy.h",
547    "test/fake_renderer_client.cc",
548    "test/fake_renderer_client.h",
549    "test/fake_rendering_stats_instrumentation.h",
550    "test/fake_scoped_ui_resource.cc",
551    "test/fake_scoped_ui_resource.h",
552    "test/fake_scrollbar.cc",
553    "test/fake_scrollbar.h",
554    "test/fake_tile_manager.cc",
555    "test/fake_tile_manager.h",
556    "test/fake_tile_manager_client.cc",
557    "test/fake_tile_manager_client.h",
558    "test/fake_ui_resource_layer_tree_host_impl.cc",
559    "test/fake_ui_resource_layer_tree_host_impl.h",
560    "test/fake_video_frame_provider.cc",
561    "test/fake_video_frame_provider.h",
562    "test/geometry_test_utils.cc",
563    "test/geometry_test_utils.h",
564    "test/test_in_process_context_provider.cc",
565    "test/test_in_process_context_provider.h",
566    "test/impl_side_painting_settings.h",
567    "test/layer_test_common.cc",
568    "test/layer_test_common.h",
569    "test/layer_tree_host_common_test.cc",
570    "test/layer_tree_host_common_test.h",
571    "test/layer_tree_json_parser.cc",
572    "test/layer_tree_json_parser.h",
573    "test/layer_tree_pixel_test.cc",
574    "test/layer_tree_pixel_test.h",
575    "test/layer_tree_test.cc",
576    "test/layer_tree_test.h",
577    "test/mock_occlusion_tracker.h",
578    "test/ordered_simple_task_runner.cc",
579    "test/ordered_simple_task_runner.h",
580    "test/ordered_texture_map.cc",
581    "test/ordered_texture_map.h",
582    "test/paths.cc",
583    "test/paths.h",
584    "test/pixel_comparator.cc",
585    "test/pixel_comparator.h",
586    "test/pixel_test.cc",
587    "test/pixel_test.h",
588    "test/pixel_test_output_surface.cc",
589    "test/pixel_test_output_surface.h",
590    "test/pixel_test_software_output_device.cc",
591    "test/pixel_test_software_output_device.h",
592    "test/pixel_test_utils.cc",
593    "test/pixel_test_utils.h",
594    "test/render_pass_test_common.cc",
595    "test/render_pass_test_common.h",
596    "test/render_pass_test_utils.cc",
597    "test/render_pass_test_utils.h",
598    "test/scheduler_test_common.cc",
599    "test/scheduler_test_common.h",
600    "test/skia_common.cc",
601    "test/skia_common.h",
602    "test/solid_color_content_layer_client.cc",
603    "test/solid_color_content_layer_client.h",
604    "test/test_context_provider.cc",
605    "test/test_context_provider.h",
606    "test/test_context_support.cc",
607    "test/test_context_support.h",
608    "test/test_gles2_interface.cc",
609    "test/test_gles2_interface.h",
610    "test/test_now_source.cc",
611    "test/test_now_source.h",
612    "test/test_occlusion_tracker.h",
613    "test/test_shared_bitmap_manager.cc",
614    "test/test_shared_bitmap_manager.h",
615    "test/test_texture.cc",
616    "test/test_texture.h",
617    "test/test_tile_priorities.cc",
618    "test/test_tile_priorities.h",
619    "test/test_web_graphics_context_3d.cc",
620    "test/test_web_graphics_context_3d.h",
621    "test/tiled_layer_test_common.cc",
622    "test/tiled_layer_test_common.h",
623  ]
624
625  include_dirs = [
626    ".",
627    "test",
628  ]
629
630  public_deps = [
631    ":cc",
632    "//gpu:test_support",
633  ]
634  deps = [
635    "//base",
636    "//base/third_party/dynamic_annotations",
637    "//gpu/command_buffer/client:gles2_c_lib",
638    "//gpu/command_buffer/client:gles2_implementation",
639    "//gpu/command_buffer/client:gl_in_process_context",
640    "//gpu/command_buffer/common:gles2_utils",
641    "//gpu/skia_bindings",
642    "//skia",
643    "//testing/gmock",
644    "//testing/gtest",
645    "//ui/gfx",
646    "//ui/gfx/geometry",
647    "//ui/gfx:test_support",
648    "//ui/gl",
649  ]
650
651  if (!is_android) {  # TODO(GYP) Enable on Android when osmesa links.
652    deps += [ "//third_party/mesa:osmesa" ]
653  }
654}
655
656test("cc_unittests") {
657  sources = [
658    "animation/animation_unittest.cc",
659    "animation/keyframed_animation_curve_unittest.cc",
660    "animation/layer_animation_controller_unittest.cc",
661    "animation/scroll_offset_animation_curve_unittest.cc",
662    "animation/scrollbar_animation_controller_linear_fade_unittest.cc",
663    "animation/scrollbar_animation_controller_thinning_unittest.cc",
664    "animation/transform_operations_unittest.cc",
665    "base/float_quad_unittest.cc",
666    "base/math_util_unittest.cc",
667    "base/region_unittest.cc",
668    "base/rolling_time_delta_history_unittest.cc",
669    "base/scoped_ptr_vector_unittest.cc",
670    "base/simple_enclosed_region_unittest.cc",
671    "base/tiling_data_unittest.cc",
672    "base/util_unittest.cc",
673    "debug/micro_benchmark_controller_unittest.cc",
674    "input/top_controls_manager_unittest.cc",
675    "layers/contents_scaling_layer_unittest.cc",
676    "layers/delegated_frame_provider_unittest.cc",
677    "layers/delegated_frame_resource_collection_unittest.cc",
678    "layers/delegated_renderer_layer_impl_unittest.cc",
679    "layers/delegated_renderer_layer_unittest.cc",
680    "layers/heads_up_display_unittest.cc",
681    "layers/heads_up_display_layer_impl_unittest.cc",
682    "layers/io_surface_layer_impl_unittest.cc",
683    "layers/layer_impl_unittest.cc",
684    "layers/layer_iterator_unittest.cc",
685    "layers/layer_position_constraint_unittest.cc",
686    "layers/layer_unittest.cc",
687    "layers/layer_utils_unittest.cc",
688    "layers/nine_patch_layer_impl_unittest.cc",
689    "layers/nine_patch_layer_unittest.cc",
690    "layers/painted_scrollbar_layer_impl_unittest.cc",
691    "layers/picture_image_layer_impl_unittest.cc",
692    "layers/picture_layer_impl_unittest.cc",
693    "layers/picture_layer_unittest.cc",
694    "layers/render_surface_unittest.cc",
695    "layers/render_surface_impl_unittest.cc",
696    "layers/scrollbar_layer_unittest.cc",
697    "layers/solid_color_layer_impl_unittest.cc",
698    "layers/solid_color_scrollbar_layer_impl_unittest.cc",
699    "layers/surface_layer_impl_unittest.cc",
700    "layers/texture_layer_unittest.cc",
701    "layers/texture_layer_impl_unittest.cc",
702    "layers/tiled_layer_impl_unittest.cc",
703    "layers/tiled_layer_unittest.cc",
704    "layers/ui_resource_layer_impl_unittest.cc",
705    "layers/ui_resource_layer_unittest.cc",
706    "layers/video_layer_impl_unittest.cc",
707    "output/begin_frame_args_unittest.cc",
708    "output/delegating_renderer_unittest.cc",
709    "output/filter_operations_unittest.cc",
710    "output/gl_renderer_unittest.cc",
711    "output/output_surface_unittest.cc",
712    "output/overlay_unittest.cc",
713    "output/renderer_pixeltest.cc",
714    "output/renderer_unittest.cc",
715    "output/shader_unittest.cc",
716    "output/software_renderer_unittest.cc",
717    "quads/draw_quad_unittest.cc",
718    "quads/list_container_unittest.cc",
719    "quads/render_pass_unittest.cc",
720    "resources/layer_quad_unittest.cc",
721    "resources/picture_layer_tiling_set_unittest.cc",
722    "resources/picture_layer_tiling_unittest.cc",
723    "resources/picture_pile_impl_unittest.cc",
724    "resources/picture_pile_unittest.cc",
725    "resources/picture_unittest.cc",
726    "resources/prioritized_resource_unittest.cc",
727    "resources/prioritized_tile_set_unittest.cc",
728    "resources/raster_worker_pool_unittest.cc",
729    "resources/resource_provider_unittest.cc",
730    "resources/resource_update_controller_unittest.cc",
731    "resources/scoped_resource_unittest.cc",
732    "resources/task_graph_runner_unittest.cc",
733    "resources/texture_mailbox_deleter_unittest.cc",
734    "resources/texture_uploader_unittest.cc",
735    "resources/tile_manager_unittest.cc",
736    "resources/tile_priority_unittest.cc",
737    "resources/video_resource_updater_unittest.cc",
738    "scheduler/delay_based_time_source_unittest.cc",
739    "scheduler/scheduler_state_machine_unittest.cc",
740    "scheduler/scheduler_unittest.cc",
741    "test/layer_tree_json_parser_unittest.cc",
742    "test/test_web_graphics_context_3d_unittest.cc",
743    "trees/blocking_task_runner_unittest.cc",
744    "trees/damage_tracker_unittest.cc",
745    "trees/layer_sorter_unittest.cc",
746    "trees/layer_tree_host_common_unittest.cc",
747    "trees/layer_tree_host_impl_unittest.cc",
748    "trees/layer_tree_host_pixeltest_blending.cc",
749    "trees/layer_tree_host_pixeltest_filters.cc",
750    "trees/layer_tree_host_pixeltest_masks.cc",
751    "trees/layer_tree_host_pixeltest_on_demand_raster.cc",
752    "trees/layer_tree_host_pixeltest_readback.cc",
753    "trees/layer_tree_host_unittest.cc",
754    "trees/layer_tree_host_unittest_animation.cc",
755    "trees/layer_tree_host_unittest_context.cc",
756    "trees/layer_tree_host_unittest_copyrequest.cc",
757    "trees/layer_tree_host_unittest_damage.cc",
758    "trees/layer_tree_host_unittest_delegated.cc",
759    "trees/layer_tree_host_unittest_occlusion.cc",
760    "trees/layer_tree_host_unittest_no_message_loop.cc",
761    "trees/layer_tree_host_unittest_picture.cc",
762    "trees/layer_tree_host_unittest_proxy.cc",
763    "trees/layer_tree_host_unittest_scroll.cc",
764    "trees/layer_tree_host_unittest_video.cc",
765    "trees/layer_tree_impl_unittest.cc",
766    "trees/occlusion_tracker_unittest.cc",
767    "trees/tree_synchronizer_unittest.cc",
768
769    # Surfaces test files.
770    "surfaces/surface_aggregator_test_helpers.cc",
771    "surfaces/surface_aggregator_test_helpers.h",
772    "surfaces/surface_aggregator_unittest.cc",
773    "surfaces/surface_unittest.cc",
774    "surfaces/surfaces_pixeltest.cc",
775
776    # Setup.
777    "test/run_all_unittests.cc",
778    "test/cc_test_suite.cc",
779  ]
780
781  deps = [
782    ":cc",
783    ":test_support",
784    "//base/test:test_support",
785    "//cc/surfaces",
786    "//gpu",
787    "//gpu:test_support",
788    "//gpu/command_buffer/client:gles2_interface",
789    "//gpu/command_buffer/common:gles2_utils",
790    "//media",
791    "//testing/gmock",
792    "//testing/gtest",
793    "//ui/events:events_base",
794    "//ui/gfx",
795    "//ui/gfx/geometry",
796  ]
797}
798
799test("cc_perftests") {
800  sources = [
801    "layers/layer_perftest.cc",
802    "layers/picture_layer_impl_perftest.cc",
803    "resources/picture_layer_tiling_perftest.cc",
804    "resources/picture_pile_impl_perftest.cc",
805    "resources/raster_worker_pool_perftest.cc",
806    "resources/task_graph_runner_perftest.cc",
807    "resources/tile_manager_perftest.cc",
808    "test/cc_test_suite.cc",
809    "test/run_all_perftests.cc",
810    "trees/layer_tree_host_common_perftest.cc",
811    "trees/layer_tree_host_perftest.cc",
812    "trees/occlusion_tracker_perftest.cc",
813  ]
814
815  deps = [
816    ":cc",
817    ":test_support",
818    "//base",
819    "//gpu",
820    "//gpu:test_support",
821    "//gpu/command_buffer/common:gles2_utils",
822    "//media",
823    "//skia",
824    "//testing/gmock",
825    "//testing/gtest",
826    "//testing/perf",
827    "//ui/gfx",
828    "//ui/gfx/geometry",
829  ]
830}
831