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