# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//cc/cc.gni")

cc_component("cc") {
  sources = [
    "benchmarks/benchmark_instrumentation.cc",
    "benchmarks/benchmark_instrumentation.h",
    "benchmarks/invalidation_benchmark.cc",
    "benchmarks/invalidation_benchmark.h",
    "benchmarks/micro_benchmark.cc",
    "benchmarks/micro_benchmark.h",
    "benchmarks/micro_benchmark_controller.cc",
    "benchmarks/micro_benchmark_controller.h",
    "benchmarks/micro_benchmark_controller_impl.cc",
    "benchmarks/micro_benchmark_controller_impl.h",
    "benchmarks/micro_benchmark_impl.cc",
    "benchmarks/micro_benchmark_impl.h",
    "benchmarks/rasterize_and_record_benchmark.cc",
    "benchmarks/rasterize_and_record_benchmark.h",
    "benchmarks/rasterize_and_record_benchmark_impl.cc",
    "benchmarks/rasterize_and_record_benchmark_impl.h",
    "benchmarks/unittest_only_benchmark.cc",
    "benchmarks/unittest_only_benchmark.h",
    "benchmarks/unittest_only_benchmark_impl.cc",
    "benchmarks/unittest_only_benchmark_impl.h",
    "input/browser_controls_offset_manager.cc",
    "input/browser_controls_offset_manager.h",
    "input/browser_controls_offset_manager_client.h",
    "input/input_handler.cc",
    "input/input_handler.h",
    "input/layer_selection_bound.cc",
    "input/layer_selection_bound.h",
    "input/main_thread_scrolling_reason.h",
    "input/overscroll_behavior.h",
    "input/page_scale_animation.cc",
    "input/page_scale_animation.h",
    "input/scroll_elasticity_helper.cc",
    "input/scroll_elasticity_helper.h",
    "input/scroll_snap_data.cc",
    "input/scroll_snap_data.h",
    "input/scroll_state.cc",
    "input/scroll_state.h",
    "input/scroll_state_data.cc",
    "input/scroll_state_data.h",
    "input/scrollbar_animation_controller.cc",
    "input/scrollbar_animation_controller.h",
    "input/single_scrollbar_animation_controller_thinning.cc",
    "input/single_scrollbar_animation_controller_thinning.h",
    "input/touch_action.h",
    "layers/append_quads_data.cc",
    "layers/append_quads_data.h",
    "layers/content_layer_client.h",
    "layers/draw_mode.h",
    "layers/draw_properties.cc",
    "layers/draw_properties.h",
    "layers/effect_tree_layer_list_iterator.cc",
    "layers/effect_tree_layer_list_iterator.h",
    "layers/heads_up_display_layer.cc",
    "layers/heads_up_display_layer.h",
    "layers/heads_up_display_layer_impl.cc",
    "layers/heads_up_display_layer_impl.h",
    "layers/layer.cc",
    "layers/layer.h",
    "layers/layer_client.h",
    "layers/layer_collections.h",
    "layers/layer_impl.cc",
    "layers/layer_impl.h",
    "layers/layer_impl_test_properties.cc",
    "layers/layer_impl_test_properties.h",
    "layers/layer_list_iterator.cc",
    "layers/layer_list_iterator.h",
    "layers/layer_position_constraint.cc",
    "layers/layer_position_constraint.h",
    "layers/layer_sticky_position_constraint.cc",
    "layers/layer_sticky_position_constraint.h",
    "layers/nine_patch_generator.cc",
    "layers/nine_patch_generator.h",
    "layers/nine_patch_layer.cc",
    "layers/nine_patch_layer.h",
    "layers/nine_patch_layer_impl.cc",
    "layers/nine_patch_layer_impl.h",
    "layers/painted_overlay_scrollbar_layer.cc",
    "layers/painted_overlay_scrollbar_layer.h",
    "layers/painted_overlay_scrollbar_layer_impl.cc",
    "layers/painted_overlay_scrollbar_layer_impl.h",
    "layers/painted_scrollbar_layer.cc",
    "layers/painted_scrollbar_layer.h",
    "layers/painted_scrollbar_layer_impl.cc",
    "layers/painted_scrollbar_layer_impl.h",
    "layers/picture_image_layer.cc",
    "layers/picture_image_layer.h",
    "layers/picture_layer.cc",
    "layers/picture_layer.h",
    "layers/picture_layer_impl.cc",
    "layers/picture_layer_impl.h",
    "layers/recording_source.cc",
    "layers/recording_source.h",
    "layers/render_surface_impl.cc",
    "layers/render_surface_impl.h",
    "layers/scrollbar_layer_impl_base.cc",
    "layers/scrollbar_layer_impl_base.h",
    "layers/scrollbar_layer_interface.h",
    "layers/solid_color_layer.cc",
    "layers/solid_color_layer.h",
    "layers/solid_color_layer_impl.cc",
    "layers/solid_color_layer_impl.h",
    "layers/solid_color_scrollbar_layer.cc",
    "layers/solid_color_scrollbar_layer.h",
    "layers/solid_color_scrollbar_layer_impl.cc",
    "layers/solid_color_scrollbar_layer_impl.h",
    "layers/surface_layer.cc",
    "layers/surface_layer.h",
    "layers/surface_layer_impl.cc",
    "layers/surface_layer_impl.h",
    "layers/texture_layer.cc",
    "layers/texture_layer.h",
    "layers/texture_layer_client.h",
    "layers/texture_layer_impl.cc",
    "layers/texture_layer_impl.h",
    "layers/touch_action_region.cc",
    "layers/touch_action_region.h",
    "layers/ui_resource_layer.cc",
    "layers/ui_resource_layer.h",
    "layers/ui_resource_layer_impl.cc",
    "layers/ui_resource_layer_impl.h",
    "layers/video_frame_provider.h",
    "layers/video_frame_provider_client_impl.cc",
    "layers/video_frame_provider_client_impl.h",
    "layers/video_layer.cc",
    "layers/video_layer.h",
    "layers/video_layer_impl.cc",
    "layers/video_layer_impl.h",
    "layers/viewport.cc",
    "layers/viewport.h",
    "output/overlay_candidate.cc",
    "output/overlay_candidate.h",
    "raster/bitmap_raster_buffer_provider.cc",
    "raster/bitmap_raster_buffer_provider.h",
    "raster/gpu_raster_buffer_provider.cc",
    "raster/gpu_raster_buffer_provider.h",
    "raster/one_copy_raster_buffer_provider.cc",
    "raster/one_copy_raster_buffer_provider.h",
    "raster/playback_image_provider.cc",
    "raster/playback_image_provider.h",
    "raster/raster_buffer.cc",
    "raster/raster_buffer.h",
    "raster/raster_buffer_provider.cc",
    "raster/raster_buffer_provider.h",
    "raster/raster_source.cc",
    "raster/raster_source.h",
    "raster/scoped_gpu_raster.cc",
    "raster/scoped_gpu_raster.h",
    "raster/single_thread_task_graph_runner.cc",
    "raster/single_thread_task_graph_runner.h",
    "raster/staging_buffer_pool.cc",
    "raster/staging_buffer_pool.h",
    "raster/synchronous_task_graph_runner.cc",
    "raster/synchronous_task_graph_runner.h",
    "raster/task.cc",
    "raster/task.h",
    "raster/task_category.h",
    "raster/task_graph_runner.h",
    "raster/task_graph_work_queue.cc",
    "raster/task_graph_work_queue.h",
    "raster/texture_compressor.cc",
    "raster/texture_compressor.h",
    "raster/texture_compressor_etc1.cc",
    "raster/texture_compressor_etc1.h",
    "raster/tile_task.cc",
    "raster/tile_task.h",
    "raster/zero_copy_raster_buffer_provider.cc",
    "raster/zero_copy_raster_buffer_provider.h",
    "resources/display_resource_provider.cc",
    "resources/display_resource_provider.h",
    "resources/layer_tree_resource_provider.cc",
    "resources/layer_tree_resource_provider.h",
    "resources/memory_history.cc",
    "resources/memory_history.h",
    "resources/resource.h",
    "resources/resource_pool.cc",
    "resources/resource_pool.h",
    "resources/resource_provider.cc",
    "resources/resource_provider.h",
    "resources/resource_util.h",
    "resources/scoped_resource.cc",
    "resources/scoped_resource.h",
    "resources/scoped_ui_resource.cc",
    "resources/scoped_ui_resource.h",
    "resources/ui_resource_bitmap.cc",
    "resources/ui_resource_bitmap.h",
    "resources/ui_resource_client.h",
    "resources/ui_resource_manager.cc",
    "resources/ui_resource_manager.h",
    "resources/ui_resource_request.cc",
    "resources/ui_resource_request.h",
    "resources/video_resource_updater.cc",
    "resources/video_resource_updater.h",
    "scheduler/begin_frame_tracker.cc",
    "scheduler/begin_frame_tracker.h",
    "scheduler/commit_earlyout_reason.h",
    "scheduler/compositor_timing_history.cc",
    "scheduler/compositor_timing_history.h",
    "scheduler/draw_result.h",
    "scheduler/scheduler.cc",
    "scheduler/scheduler.h",
    "scheduler/scheduler_settings.cc",
    "scheduler/scheduler_settings.h",
    "scheduler/scheduler_state_machine.cc",
    "scheduler/scheduler_state_machine.h",
    "scheduler/video_frame_controller.h",
    "tiles/checker_image_tracker.cc",
    "tiles/checker_image_tracker.h",
    "tiles/decoded_image_tracker.cc",
    "tiles/decoded_image_tracker.h",
    "tiles/eviction_tile_priority_queue.cc",
    "tiles/eviction_tile_priority_queue.h",
    "tiles/frame_viewer_instrumentation.cc",
    "tiles/frame_viewer_instrumentation.h",
    "tiles/gpu_image_decode_cache.cc",
    "tiles/gpu_image_decode_cache.h",
    "tiles/image_controller.cc",
    "tiles/image_controller.h",
    "tiles/image_decode_cache.cc",
    "tiles/image_decode_cache.h",
    "tiles/mipmap_util.cc",
    "tiles/mipmap_util.h",
    "tiles/picture_layer_tiling.cc",
    "tiles/picture_layer_tiling.h",
    "tiles/picture_layer_tiling_set.cc",
    "tiles/picture_layer_tiling_set.h",
    "tiles/prioritized_tile.cc",
    "tiles/prioritized_tile.h",
    "tiles/raster_tile_priority_queue.cc",
    "tiles/raster_tile_priority_queue.h",
    "tiles/raster_tile_priority_queue_all.cc",
    "tiles/raster_tile_priority_queue_all.h",
    "tiles/raster_tile_priority_queue_required.cc",
    "tiles/raster_tile_priority_queue_required.h",
    "tiles/software_image_decode_cache.cc",
    "tiles/software_image_decode_cache.h",
    "tiles/software_image_decode_cache_utils.cc",
    "tiles/software_image_decode_cache_utils.h",
    "tiles/tile.cc",
    "tiles/tile.h",
    "tiles/tile_draw_info.cc",
    "tiles/tile_draw_info.h",
    "tiles/tile_manager.cc",
    "tiles/tile_manager.h",
    "tiles/tile_manager_settings.h",
    "tiles/tile_priority.cc",
    "tiles/tile_priority.h",
    "tiles/tile_task_manager.cc",
    "tiles/tile_task_manager.h",
    "tiles/tiling_set_eviction_queue.cc",
    "tiles/tiling_set_eviction_queue.h",
    "tiles/tiling_set_raster_queue_all.cc",
    "tiles/tiling_set_raster_queue_all.h",
    "tiles/tiling_set_raster_queue_required.cc",
    "tiles/tiling_set_raster_queue_required.h",
    "trees/clip_expander.cc",
    "trees/clip_expander.h",
    "trees/clip_node.cc",
    "trees/clip_node.h",
    "trees/compositor_mode.h",
    "trees/damage_tracker.cc",
    "trees/damage_tracker.h",
    "trees/debug_rect_history.cc",
    "trees/debug_rect_history.h",
    "trees/draw_property_utils.cc",
    "trees/draw_property_utils.h",
    "trees/effect_node.cc",
    "trees/effect_node.h",
    "trees/element_id.cc",
    "trees/element_id.h",
    "trees/frame_rate_counter.cc",
    "trees/frame_rate_counter.h",
    "trees/image_animation_controller.cc",
    "trees/image_animation_controller.h",
    "trees/latency_info_swap_promise.cc",
    "trees/latency_info_swap_promise.h",
    "trees/latency_info_swap_promise_monitor.cc",
    "trees/latency_info_swap_promise_monitor.h",
    "trees/layer_tree_frame_sink.cc",
    "trees/layer_tree_frame_sink.h",
    "trees/layer_tree_frame_sink_client.h",
    "trees/layer_tree_host.cc",
    "trees/layer_tree_host.h",
    "trees/layer_tree_host_client.h",
    "trees/layer_tree_host_common.cc",
    "trees/layer_tree_host_common.h",
    "trees/layer_tree_host_impl.cc",
    "trees/layer_tree_host_impl.h",
    "trees/layer_tree_host_single_thread_client.h",
    "trees/layer_tree_impl.cc",
    "trees/layer_tree_impl.h",
    "trees/layer_tree_mutator.cc",
    "trees/layer_tree_mutator.h",
    "trees/layer_tree_settings.cc",
    "trees/layer_tree_settings.h",
    "trees/managed_memory_policy.cc",
    "trees/managed_memory_policy.h",
    "trees/mutator_host.h",
    "trees/mutator_host_client.h",
    "trees/occlusion.cc",
    "trees/occlusion.h",
    "trees/occlusion_tracker.cc",
    "trees/occlusion_tracker.h",
    "trees/property_animation_state.cc",
    "trees/property_animation_state.h",
    "trees/property_tree.cc",
    "trees/property_tree.h",
    "trees/property_tree_builder.cc",
    "trees/property_tree_builder.h",
    "trees/proxy.h",
    "trees/proxy_common.cc",
    "trees/proxy_common.h",
    "trees/proxy_impl.cc",
    "trees/proxy_impl.h",
    "trees/proxy_main.cc",
    "trees/proxy_main.h",
    "trees/render_frame_metadata.cc",
    "trees/render_frame_metadata.h",
    "trees/scoped_abort_remaining_swap_promises.h",
    "trees/scroll_node.cc",
    "trees/scroll_node.h",
    "trees/single_thread_proxy.cc",
    "trees/single_thread_proxy.h",
    "trees/swap_promise.h",
    "trees/swap_promise_manager.cc",
    "trees/swap_promise_manager.h",
    "trees/swap_promise_monitor.cc",
    "trees/swap_promise_monitor.h",
    "trees/target_property.cc",
    "trees/target_property.h",
    "trees/task_runner_provider.cc",
    "trees/task_runner_provider.h",
    "trees/transform_node.cc",
    "trees/transform_node.h",
    "trees/tree_synchronizer.cc",
    "trees/tree_synchronizer.h",
    "trees/ukm_manager.cc",
    "trees/ukm_manager.h",
  ]

  if (current_cpu == "x86" || current_cpu == "x64") {
    sources += [
      "raster/texture_compressor_etc1_sse.cc",
      "raster/texture_compressor_etc1_sse.h",
    ]
  }

  # TODO(khushalsagar): Remove once crbug.com/683263 is fixed.
  configs = [ "//build/config/compiler:no_size_t_to_int_warning" ]

  public_deps = [
    "//cc/base",
    "//cc/paint",
    "//components/viz/common",
    "//skia",
  ]
  deps = [
    "//base",
    "//base/third_party/dynamic_annotations",
    "//components/ukm",
    "//components/viz/common",
    "//gpu",
    "//gpu/command_buffer/client:gles2_implementation",
    "//gpu/command_buffer/client:gles2_interface",
    "//gpu/command_buffer/client:raster_interface",
    "//gpu/ipc:gl_in_process_context",
    "//gpu/skia_bindings:skia_bindings",
    "//gpu/vulkan:features",
    "//media",
    "//mojo/public/cpp/bindings:struct_traits",
    "//services/metrics/public/cpp:ukm_builders",
    "//third_party/libyuv",
    "//ui/events:events_base",
    "//ui/gfx",
    "//ui/gfx/geometry",
    "//ui/gl",
    "//ui/latency",
  ]

  defines = [ "CC_IMPLEMENTATION=1" ]
}

cc_static_library("test_support") {
  testonly = true
  sources = [
    "test/animation_test_common.cc",
    "test/animation_test_common.h",
    "test/animation_timelines_test_common.cc",
    "test/animation_timelines_test_common.h",
    "test/fake_content_layer_client.cc",
    "test/fake_content_layer_client.h",
    "test/fake_impl_task_runner_provider.h",
    "test/fake_layer_tree_frame_sink.cc",
    "test/fake_layer_tree_frame_sink.h",
    "test/fake_layer_tree_frame_sink_client.cc",
    "test/fake_layer_tree_frame_sink_client.h",
    "test/fake_layer_tree_host.cc",
    "test/fake_layer_tree_host.h",
    "test/fake_layer_tree_host_client.cc",
    "test/fake_layer_tree_host_client.h",
    "test/fake_layer_tree_host_impl.cc",
    "test/fake_layer_tree_host_impl.h",
    "test/fake_layer_tree_host_impl_client.cc",
    "test/fake_layer_tree_host_impl_client.h",
    "test/fake_mask_layer_impl.cc",
    "test/fake_mask_layer_impl.h",
    "test/fake_output_surface.cc",
    "test/fake_output_surface.h",
    "test/fake_output_surface_client.cc",
    "test/fake_output_surface_client.h",
    "test/fake_paint_image_generator.cc",
    "test/fake_paint_image_generator.h",
    "test/fake_painted_scrollbar_layer.cc",
    "test/fake_painted_scrollbar_layer.h",
    "test/fake_picture_layer.cc",
    "test/fake_picture_layer.h",
    "test/fake_picture_layer_impl.cc",
    "test/fake_picture_layer_impl.h",
    "test/fake_picture_layer_tiling_client.cc",
    "test/fake_picture_layer_tiling_client.h",
    "test/fake_proxy.cc",
    "test/fake_proxy.h",
    "test/fake_raster_buffer_provider.cc",
    "test/fake_raster_buffer_provider.h",
    "test/fake_raster_source.cc",
    "test/fake_raster_source.h",
    "test/fake_recording_source.cc",
    "test/fake_recording_source.h",
    "test/fake_rendering_stats_instrumentation.h",
    "test/fake_resource_provider.h",
    "test/fake_scoped_ui_resource.cc",
    "test/fake_scoped_ui_resource.h",
    "test/fake_scrollbar.cc",
    "test/fake_scrollbar.h",
    "test/fake_tile_manager.cc",
    "test/fake_tile_manager.h",
    "test/fake_tile_manager_client.cc",
    "test/fake_tile_manager_client.h",
    "test/fake_tile_task_manager.cc",
    "test/fake_tile_task_manager.h",
    "test/fake_ui_resource_layer_tree_host_impl.cc",
    "test/fake_ui_resource_layer_tree_host_impl.h",
    "test/fake_video_frame_provider.cc",
    "test/fake_video_frame_provider.h",
    "test/geometry_test_utils.cc",
    "test/geometry_test_utils.h",
    "test/layer_test_common.cc",
    "test/layer_test_common.h",
    "test/layer_tree_json_parser.cc",
    "test/layer_tree_json_parser.h",
    "test/layer_tree_pixel_resource_test.cc",
    "test/layer_tree_pixel_resource_test.h",
    "test/layer_tree_pixel_test.cc",
    "test/layer_tree_pixel_test.h",
    "test/layer_tree_test.cc",
    "test/layer_tree_test.h",
    "test/mock_layer_client.cc",
    "test/mock_layer_client.h",
    "test/mock_layer_tree_mutator.cc",
    "test/mock_layer_tree_mutator.h",
    "test/mock_occlusion_tracker.h",
    "test/ordered_texture_map.cc",
    "test/ordered_texture_map.h",
    "test/paint_op_helper.h",
    "test/pixel_comparator.cc",
    "test/pixel_comparator.h",
    "test/pixel_test.cc",
    "test/pixel_test.h",
    "test/pixel_test_output_surface.cc",
    "test/pixel_test_output_surface.h",
    "test/pixel_test_utils.cc",
    "test/pixel_test_utils.h",
    "test/push_properties_counting_layer.cc",
    "test/push_properties_counting_layer.h",
    "test/push_properties_counting_layer_impl.cc",
    "test/push_properties_counting_layer_impl.h",
    "test/render_pass_test_utils.cc",
    "test/render_pass_test_utils.h",
    "test/resource_provider_test_utils.cc",
    "test/resource_provider_test_utils.h",
    "test/scheduler_test_common.cc",
    "test/scheduler_test_common.h",
    "test/skia_common.cc",
    "test/skia_common.h",
    "test/solid_color_content_layer_client.cc",
    "test/solid_color_content_layer_client.h",
    "test/stub_decode_cache.cc",
    "test/stub_decode_cache.h",
    "test/stub_layer_tree_host_client.cc",
    "test/stub_layer_tree_host_client.h",
    "test/stub_layer_tree_host_single_thread_client.cc",
    "test/stub_layer_tree_host_single_thread_client.h",
    "test/task_graph_runner_test_template.cc",
    "test/task_graph_runner_test_template.h",
    "test/test_context_provider.cc",
    "test/test_context_provider.h",
    "test/test_context_support.cc",
    "test/test_context_support.h",
    "test/test_gles2_interface.cc",
    "test/test_gles2_interface.h",
    "test/test_hooks.cc",
    "test/test_hooks.h",
    "test/test_image_factory.cc",
    "test/test_image_factory.h",
    "test/test_in_process_context_provider.cc",
    "test/test_in_process_context_provider.h",
    "test/test_layer_tree_host_base.cc",
    "test/test_layer_tree_host_base.h",
    "test/test_occlusion_tracker.h",
    "test/test_shared_bitmap_manager.cc",
    "test/test_shared_bitmap_manager.h",
    "test/test_skcanvas.cc",
    "test/test_skcanvas.h",
    "test/test_task_graph_runner.cc",
    "test/test_task_graph_runner.h",
    "test/test_texture.cc",
    "test/test_texture.h",
    "test/test_tile_priorities.cc",
    "test/test_tile_priorities.h",
    "test/test_tile_task_runner.cc",
    "test/test_tile_task_runner.h",
    "test/test_ukm_recorder_factory.cc",
    "test/test_ukm_recorder_factory.h",
    "test/test_web_graphics_context_3d.cc",
    "test/test_web_graphics_context_3d.h",
    "test/transfer_cache_test_helper.cc",
    "test/transfer_cache_test_helper.h",
  ]

  public_deps = [
    ":cc",
    "//cc/animation",
    "//gpu:test_support",
  ]
  deps = [
    "//base",
    "//base/test:test_support",
    "//base/third_party/dynamic_annotations",
    "//cc/paint",
    "//components/ukm",
    "//components/ukm:test_support",
    "//components/viz/common",
    "//components/viz/service",
    "//components/viz/test:test_support",
    "//gpu/command_buffer/client:gles2_c_lib",
    "//gpu/command_buffer/client:gles2_implementation",
    "//gpu/command_buffer/common",
    "//gpu/ipc:gl_in_process_context",
    "//gpu/skia_bindings",
    "//media",
    "//skia",
    "//testing/gmock",
    "//testing/gtest",
    "//ui/gfx",
    "//ui/gfx:test_support",
    "//ui/gfx/geometry",
    "//ui/gl",
    "//ui/gl:test_support",
    "//ui/latency",
  ]
  if (!is_android) {
    data_deps = [
      "//third_party/mesa:osmesa",
    ]
  }
}

cc_test("cc_unittests") {
  sources = [
    "base/delayed_unique_notifier_unittest.cc",
    "base/float_quad_unittest.cc",
    "base/histograms_unittest.cc",
    "base/index_rect_unittest.cc",
    "base/list_container_unittest.cc",
    "base/math_util_unittest.cc",
    "base/region_unittest.cc",
    "base/rolling_time_delta_history_unittest.cc",
    "base/rtree_unittest.cc",
    "base/simple_enclosed_region_unittest.cc",
    "base/spiral_iterator_unittest.cc",
    "base/tiling_data_unittest.cc",
    "base/unique_notifier_unittest.cc",
    "benchmarks/micro_benchmark_controller_unittest.cc",
    "debug/rendering_stats_unittest.cc",
    "input/browser_controls_offset_manager_unittest.cc",
    "input/scroll_snap_data_unittest.cc",
    "input/scroll_state_unittest.cc",
    "input/scrollbar_animation_controller_unittest.cc",
    "input/single_scrollbar_animation_controller_thinning_unittest.cc",
    "ipc/cc_param_traits_unittest.cc",
    "layers/effect_tree_layer_list_iterator_unittest.cc",
    "layers/heads_up_display_layer_impl_unittest.cc",
    "layers/heads_up_display_unittest.cc",
    "layers/layer_impl_unittest.cc",
    "layers/layer_list_iterator_unittest.cc",
    "layers/layer_position_constraint_unittest.cc",
    "layers/layer_unittest.cc",
    "layers/nine_patch_generator_unittest.cc",
    "layers/nine_patch_layer_impl_unittest.cc",
    "layers/nine_patch_layer_unittest.cc",
    "layers/painted_scrollbar_layer_impl_unittest.cc",
    "layers/painted_scrollbar_layer_unittest.cc",
    "layers/picture_image_layer_unittest.cc",
    "layers/picture_layer_impl_unittest.cc",
    "layers/picture_layer_unittest.cc",
    "layers/recording_source_unittest.cc",
    "layers/render_surface_impl_unittest.cc",
    "layers/render_surface_unittest.cc",
    "layers/scrollbar_layer_unittest.cc",
    "layers/solid_color_layer_impl_unittest.cc",
    "layers/solid_color_scrollbar_layer_impl_unittest.cc",
    "layers/surface_layer_impl_unittest.cc",
    "layers/surface_layer_unittest.cc",
    "layers/texture_layer_impl_unittest.cc",
    "layers/texture_layer_unittest.cc",
    "layers/touch_action_region_unittest.cc",
    "layers/ui_resource_layer_impl_unittest.cc",
    "layers/ui_resource_layer_unittest.cc",
    "layers/video_frame_provider_client_impl_unittest.cc",
    "layers/video_layer_impl_unittest.cc",
    "layers/viewport_unittest.cc",
    "paint/discardable_image_map_unittest.cc",
    "paint/display_item_list_unittest.cc",
    "paint/filter_operations_unittest.cc",
    "paint/oop_pixeltest.cc",
    "paint/paint_image_unittest.cc",
    "paint/paint_op_buffer_unittest.cc",
    "paint/paint_op_helper_unittest.cc",
    "paint/paint_shader_unittest.cc",
    "paint/scoped_raster_flags_unittest.cc",
    "paint/solid_color_analyzer_unittest.cc",
    "paint/transfer_cache_unittest.cc",
    "raster/playback_image_provider_unittest.cc",
    "raster/raster_buffer_provider_unittest.cc",
    "raster/raster_source_unittest.cc",
    "raster/scoped_gpu_raster_unittest.cc",
    "raster/single_thread_task_graph_runner_unittest.cc",
    "raster/staging_buffer_pool_unittest.cc",
    "raster/synchronous_task_graph_runner_unittest.cc",
    "raster/task_graph_work_queue_unittest.cc",
    "raster/texture_compressor_etc1_unittest.cc",
    "resources/layer_tree_resource_provider_unittest.cc",
    "resources/resource_pool_unittest.cc",
    "resources/resource_provider_unittest.cc",
    "resources/resource_util_unittest.cc",
    "resources/scoped_resource_unittest.cc",
    "resources/video_resource_updater_unittest.cc",
    "scheduler/compositor_timing_history_unittest.cc",
    "scheduler/scheduler_state_machine_unittest.cc",
    "scheduler/scheduler_unittest.cc",
    "test/layer_tree_json_parser_unittest.cc",
    "test/test_web_graphics_context_3d_unittest.cc",
    "tiles/checker_image_tracker_unittest.cc",
    "tiles/decoded_image_tracker_unittest.cc",
    "tiles/gpu_image_decode_cache_unittest.cc",
    "tiles/image_controller_unittest.cc",
    "tiles/mipmap_util_unittest.cc",
    "tiles/picture_layer_tiling_set_unittest.cc",
    "tiles/picture_layer_tiling_unittest.cc",
    "tiles/software_image_decode_cache_unittest.cc",
    "tiles/software_image_decode_cache_unittest_combinations.cc",
    "tiles/tile_manager_unittest.cc",
    "tiles/tile_priority_unittest.cc",
    "trees/damage_tracker_unittest.cc",
    "trees/image_animation_controller_unittest.cc",
    "trees/layer_tree_frame_sink_unittest.cc",
    "trees/layer_tree_host_common_unittest.cc",
    "trees/layer_tree_host_impl_unittest.cc",
    "trees/layer_tree_host_pixeltest_blending.cc",
    "trees/layer_tree_host_pixeltest_filters.cc",
    "trees/layer_tree_host_pixeltest_masks.cc",
    "trees/layer_tree_host_pixeltest_readback.cc",
    "trees/layer_tree_host_pixeltest_scrollbars.cc",
    "trees/layer_tree_host_pixeltest_synchronous.cc",
    "trees/layer_tree_host_pixeltest_tiles.cc",
    "trees/layer_tree_host_unittest.cc",
    "trees/layer_tree_host_unittest_animation.cc",
    "trees/layer_tree_host_unittest_checkerimaging.cc",
    "trees/layer_tree_host_unittest_context.cc",
    "trees/layer_tree_host_unittest_copyrequest.cc",
    "trees/layer_tree_host_unittest_damage.cc",
    "trees/layer_tree_host_unittest_occlusion.cc",
    "trees/layer_tree_host_unittest_picture.cc",
    "trees/layer_tree_host_unittest_proxy.cc",
    "trees/layer_tree_host_unittest_record_gpu_histogram.cc",
    "trees/layer_tree_host_unittest_scroll.cc",
    "trees/layer_tree_host_unittest_video.cc",
    "trees/layer_tree_impl_unittest.cc",
    "trees/occlusion_tracker_unittest.cc",
    "trees/occlusion_unittest.cc",
    "trees/property_tree_unittest.cc",
    "trees/swap_promise_manager_unittest.cc",
    "trees/tree_synchronizer_unittest.cc",
    "trees/ukm_manager_unittest.cc",

    # Animation test files.
    "animation/animation_host_unittest.cc",
    "animation/animation_player_unittest.cc",
    "animation/animation_timeline_unittest.cc",
    "animation/animation_unittest.cc",
    "animation/element_animations_unittest.cc",
    "animation/keyframed_animation_curve_unittest.cc",
    "animation/scroll_offset_animation_curve_unittest.cc",
    "animation/scroll_timeline_unittest.cc",
    "animation/transform_operations_unittest.cc",
    "animation/worklet_animation_player_unittest.cc",

    # Setup.
    "test/cc_test_suite.cc",
    "test/cc_test_suite.h",
    "test/run_all_unittests.cc",
  ]

  if (!is_android) {
    data = [
      "//components/viz/test/data/",
    ]
  }

  if (is_win) {
    # TODO(vmpstr): Some SoftwareImageDecodeCacheTests use virtual inheritance,
    # which MSVC doesn't like. Suppress "Foo inherits Bar via dominance"
    # warnings for now.
    cflags = [ "/wd4250" ]
  }

  # TODO(khushalsagar): Remove once crbug.com/683263 is fixed.
  configs = [ "//build/config/compiler:no_size_t_to_int_warning" ]

  deps = [
    ":cc",
    ":test_support",
    "//base/test:test_support",
    "//cc/ipc",
    "//cc/paint",
    "//components/ukm:test_support",
    "//components/viz/common",
    "//components/viz/service",
    "//components/viz/test:test_support",
    "//gpu",
    "//gpu:test_support",
    "//gpu/command_buffer/client:gles2_implementation",
    "//gpu/command_buffer/client:gles2_interface",
    "//gpu/command_buffer/client:raster_interface",
    "//gpu/ipc:gl_in_process_context",
    "//gpu/skia_bindings",
    "//media",
    "//mojo/edk/system",
    "//mojo/public/cpp/bindings",
    "//testing/gmock",
    "//testing/gtest",
    "//ui/events:events_base",
    "//ui/gfx",
    "//ui/gfx:test_support",
    "//ui/gfx/geometry",
    "//ui/gl",
    "//ui/gl:test_support",
  ]

  data_deps = [
    "//third_party/mesa:osmesa",
  ]
}

cc_test("cc_perftests") {
  sources = [
    "animation/animation_host_perftest.cc",
    "base/rtree_perftest.cc",
    "ipc/cc_serialization_perftest.cc",
    "layers/layer_perftest.cc",
    "layers/picture_layer_impl_perftest.cc",
    "paint/paint_op_perftest.cc",
    "raster/raster_buffer_provider_perftest.cc",
    "raster/task_graph_runner_perftest.cc",
    "raster/texture_compressor_perftest.cc",
    "test/cc_test_suite.cc",
    "test/cc_test_suite.h",
    "test/run_all_perftests.cc",
    "tiles/software_image_decode_cache_perftest.cc",
    "tiles/tile_manager_perftest.cc",
    "trees/layer_tree_host_common_perftest.cc",
    "trees/layer_tree_host_perftest.cc",
  ]

  deps = [
    ":cc",
    ":test_support",
    "//base",
    "//base/test:test_support",
    "//cc/ipc",
    "//cc/paint",
    "//components/viz/common",
    "//components/viz/test:test_support",
    "//gpu",
    "//gpu:test_support",
    "//gpu/command_buffer/client:gles2_implementation",
    "//gpu/ipc/common:struct_traits",
    "//media",
    "//mojo/edk/system",
    "//mojo/public/cpp/bindings",
    "//services/viz/public/interfaces",
    "//skia",
    "//testing/gmock",
    "//testing/gtest",
    "//testing/perf",
    "//ui/gfx",
    "//ui/gfx/geometry",
    "//ui/gl",
    "//ui/gl:test_support",
  ]

  # This target should not require the Chrome executable to run.
  assert_no_deps = [ "//chrome" ]

  data = [
    "//components/viz/test/data/",

    # Needed for isolate script to execute.
    "//testing/scripts/common.py",
    "//testing/xvfb.py",
    "//testing/scripts/run_gtest_perf_test.py",
    "//tools/perf/generate_legacy_perf_dashboard_json.py",
  ]
}
