# 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("//gpu/vulkan/features.gni")

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.cc",
    "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/scrollbar_controller.cc",
    "input/scrollbar_controller.h",
    "input/single_scrollbar_animation_controller_thinning.cc",
    "input/single_scrollbar_animation_controller_thinning.h",
    "input/snap_fling_controller.cc",
    "input/snap_fling_controller.h",
    "input/snap_fling_curve.cc",
    "input/snap_fling_curve.h",
    "input/snap_selection_strategy.cc",
    "input/snap_selection_strategy.h",
    "input/touch_action.h",
    "layers/append_quads_data.cc",
    "layers/append_quads_data.h",
    "layers/content_layer_client.h",
    "layers/deadline_policy.cc",
    "layers/deadline_policy.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",
    "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/paint_worklet_image_provider.cc",
    "raster/paint_worklet_image_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/scoped_grcontext_access.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/tile_task.cc",
    "raster/tile_task.h",
    "raster/zero_copy_raster_buffer_provider.cc",
    "raster/zero_copy_raster_buffer_provider.h",
    "resources/cross_thread_shared_bitmap.cc",
    "resources/cross_thread_shared_bitmap.h",
    "resources/memory_history.cc",
    "resources/memory_history.h",
    "resources/resource_pool.cc",
    "resources/resource_pool.h",
    "resources/scoped_ui_resource.cc",
    "resources/scoped_ui_resource.h",
    "resources/shared_bitmap_id_registrar.cc",
    "resources/shared_bitmap_id_registrar.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",
    "scheduler/begin_frame_tracker.cc",
    "scheduler/begin_frame_tracker.h",
    "scheduler/commit_earlyout_reason.h",
    "scheduler/compositor_frame_reporter.cc",
    "scheduler/compositor_frame_reporter.h",
    "scheduler/compositor_frame_reporting_controller.cc",
    "scheduler/compositor_frame_reporting_controller.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/image_decode_cache_utils.cc",
    "tiles/image_decode_cache_utils.h",
    "tiles/mipmap_util.cc",
    "tiles/mipmap_util.h",
    "tiles/paint_worklet_image_cache.cc",
    "tiles/paint_worklet_image_cache.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/animation_effect_timings.h",
    "trees/animation_options.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/paint_holding_commit_trigger.h",
    "trees/presentation_time_callback_buffer.cc",
    "trees/presentation_time_callback_buffer.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/render_frame_metadata_observer.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",
    "trees/viewport_layers.cc",
    "trees/viewport_layers.h",
  ]

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

  defines = [ "CC_IMPLEMENTATION=1" ]
}

cc_test_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_compositor_frame_reporting_controller.cc",
    "test/fake_compositor_frame_reporting_controller.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_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_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/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_hooks.cc",
    "test/test_hooks.h",
    "test/test_layer_tree_frame_sink.cc",
    "test/test_layer_tree_frame_sink.h",
    "test/test_layer_tree_host_base.cc",
    "test/test_layer_tree_host_base.h",
    "test/test_occlusion_tracker.h",
    "test/test_options_provider.cc",
    "test/test_options_provider.h",
    "test/test_paint_worklet_input.cc",
    "test/test_paint_worklet_input.h",
    "test/test_paint_worklet_layer_painter.cc",
    "test/test_paint_worklet_layer_painter.h",
    "test/test_skcanvas.cc",
    "test/test_skcanvas.h",
    "test/test_task_graph_runner.cc",
    "test/test_task_graph_runner.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/transfer_cache_test_helper.cc",
    "test/transfer_cache_test_helper.h",
  ]

  public_deps = [
    ":cc",
    "//cc/animation",
    "//gpu:test_support",
    "//testing/gmock",
  ]
  deps = [
    "//base",
    "//base/test:test_support",
    "//base/third_party/dynamic_annotations",
    "//cc/paint",
    "//components/ukm",
    "//components/ukm:test_support",
    "//components/viz/client",
    "//components/viz/common",
    "//components/viz/service",
    "//components/viz/test:test_support",
    "//gpu/command_buffer/client:gles2_implementation",
    "//gpu/command_buffer/client:raster",
    "//gpu/command_buffer/common",
    "//gpu/ipc:gl_in_process_context",
    "//gpu/ipc/service",
    "//gpu/skia_bindings",
    "//media",
    "//services/viz/privileged/interfaces",
    "//skia",
    "//testing/gtest",
    "//ui/gfx",
    "//ui/gfx:test_support",
    "//ui/gfx/geometry",
    "//ui/gl",
    "//ui/gl:test_support",
    "//ui/latency",
  ]
  if (enable_vulkan) {
    deps += [ "//gpu/vulkan/init" ]
  }
  if (!is_android) {
    data_deps = [
      "//third_party/mesa_headers",
    ]
  }
}

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/main_thread_scrolling_reason_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",
    "input/snap_fling_controller_unittest.cc",
    "input/snap_fling_curve_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_overlay_scrollbar_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",
    "mojo_embedder/async_layer_tree_frame_sink_unittest.cc",
    "paint/discardable_image_map_unittest.cc",
    "paint/display_item_list_unittest.cc",
    "paint/filter_operations_unittest.cc",
    "paint/image_transfer_cache_entry_unittest.cc",
    "paint/oop_pixeltest.cc",
    "paint/paint_cache_unittest.cc",
    "paint/paint_filter_unittest.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/skia_paint_canvas_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",
    "resources/resource_pool_unittest.cc",
    "scheduler/compositor_frame_reporting_controller_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",
    "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/paint_worklet_image_cache_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_capture_content.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_masks.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/presentation_time_callback_buffer_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_timeline_unittest.cc",
    "animation/animation_unittest.cc",
    "animation/element_animations_unittest.cc",
    "animation/keyframe_model_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_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" ]
  }

  deps = [
    ":cc",
    ":test_support",
    "//base/test:test_support",
    "//cc/mojo_embedder",
    "//cc/paint",
    "//components/ukm:test_support",
    "//components/viz/client",
    "//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",
    "//gpu/command_buffer/client:raster_interface",
    "//gpu/ipc:gl_in_process_context",
    "//gpu/skia_bindings",
    "//media",
    "//mojo/core/embedder",
    "//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_headers",
  ]

  if (enable_vulkan) {
    deps += [
      "//gpu/vulkan:test_support",
      "//gpu/vulkan/init",
    ]

    # TODO(samans): Support more configurations.
    # CFI issue: https://crbug.com/967819
    # x86 issue: https://crbug.com/967831
    # LSAN issue: https://crbug.com/971325
    if (use_x11 && target_cpu != "x86" && !is_cfi && !is_lsan) {
      defines = [ "ENABLE_CC_VULKAN_TESTS" ]
    }
  }
}

cc_test("cc_perftests") {
  sources = [
    "animation/animation_host_perftest.cc",
    "base/rtree_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",
    "test/cc_test_suite.cc",
    "test/cc_test_suite.h",
    "test/run_all_perftests.cc",
    "tiles/gpu_image_decode_cache_perftest.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/paint",
    "//components/viz/client",
    "//components/viz/common",
    "//components/viz/test:test_support",
    "//gpu",
    "//gpu:test_support",
    "//gpu/command_buffer/client:gles2_implementation",
    "//gpu/command_buffer/client:raster",
    "//gpu/command_buffer/client:raster_interface",
    "//gpu/ipc:gl_in_process_context",
    "//gpu/ipc/common:struct_traits",
    "//media",
    "//mojo/core/embedder",
    "//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/",
  ]

  data_deps = [
    # Needed for isolate script to execute.
    "//testing:run_perf_test",
  ]
}
