# 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("//build/config/sanitizers/sanitizers.gni")
import("//gpu/vulkan/features.gni")
import("//skia/features.gni")

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

if (is_android) {
  import("//build/config/android/rules.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",
    "document_transition/document_transition_request.cc",
    "document_transition/document_transition_request.h",
    "document_transition/document_transition_shared_element_id.cc",
    "document_transition/document_transition_shared_element_id.h",
    "input/actively_scrolling_type.h",
    "input/browser_controls_offset_manager.cc",
    "input/browser_controls_offset_manager.h",
    "input/browser_controls_offset_manager_client.h",
    "input/browser_controls_state.h",
    "input/compositor_input_interfaces.h",
    "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/scroll_utils.cc",
    "input/scroll_utils.h",
    "input/scrollbar.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/threaded_input_handler.cc",
    "input/threaded_input_handler.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/document_transition_content_layer.cc",
    "layers/document_transition_content_layer.h",
    "layers/document_transition_content_layer_impl.cc",
    "layers/document_transition_content_layer_impl.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_collections.h",
    "layers/layer_impl.cc",
    "layers/layer_impl.h",
    "layers/layer_list_iterator.cc",
    "layers/layer_list_iterator.h",
    "layers/mirror_layer.cc",
    "layers/mirror_layer.h",
    "layers/mirror_layer_impl.cc",
    "layers/mirror_layer_impl.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_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_base.cc",
    "layers/scrollbar_layer_base.h",
    "layers/scrollbar_layer_impl_base.cc",
    "layers/scrollbar_layer_impl_base.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/tile_size_calculator.cc",
    "layers/tile_size_calculator.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",
    "metrics/average_lag_tracker.cc",
    "metrics/average_lag_tracker.h",
    "metrics/average_lag_tracking_manager.cc",
    "metrics/average_lag_tracking_manager.h",
    "metrics/begin_main_frame_metrics.cc",
    "metrics/begin_main_frame_metrics.h",
    "metrics/compositor_frame_reporter.cc",
    "metrics/compositor_frame_reporter.h",
    "metrics/compositor_frame_reporting_controller.cc",
    "metrics/compositor_frame_reporting_controller.h",
    "metrics/compositor_timing_history.cc",
    "metrics/compositor_timing_history.h",
    "metrics/custom_metrics_recorder.cc",
    "metrics/custom_metrics_recorder.h",
    "metrics/dropped_frame_counter.cc",
    "metrics/dropped_frame_counter.h",
    "metrics/event_latency_tracing_recorder.cc",
    "metrics/event_latency_tracing_recorder.h",
    "metrics/event_latency_tracker.cc",
    "metrics/event_latency_tracker.h",
    "metrics/event_metrics.cc",
    "metrics/event_metrics.h",
    "metrics/events_metrics_manager.cc",
    "metrics/events_metrics_manager.h",
    "metrics/frame_info.cc",
    "metrics/frame_info.h",
    "metrics/frame_sequence_metrics.cc",
    "metrics/frame_sequence_metrics.h",
    "metrics/frame_sequence_tracker.cc",
    "metrics/frame_sequence_tracker.h",
    "metrics/frame_sequence_tracker_collection.cc",
    "metrics/frame_sequence_tracker_collection.h",
    "metrics/frame_sorter.cc",
    "metrics/frame_sorter.h",
    "metrics/jank_injector.cc",
    "metrics/jank_injector.h",
    "metrics/jank_metrics.cc",
    "metrics/jank_metrics.h",
    "metrics/latency_ukm_reporter.cc",
    "metrics/latency_ukm_reporter.h",
    "metrics/lcd_text_metrics_reporter.cc",
    "metrics/lcd_text_metrics_reporter.h",
    "metrics/shared_metrics_buffer.h",
    "metrics/throughput_ukm_reporter.cc",
    "metrics/throughput_ukm_reporter.h",
    "metrics/total_frame_counter.cc",
    "metrics/total_frame_counter.h",
    "metrics/ukm_smoothness_data.cc",
    "metrics/ukm_smoothness_data.h",
    "metrics/video_playback_roughness_reporter.cc",
    "metrics/video_playback_roughness_reporter.h",
    "metrics/web_vital_metrics.cc",
    "metrics/web_vital_metrics.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/lcd_text_disallowed_reason.cc",
    "raster/lcd_text_disallowed_reason.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_query_queue.cc",
    "raster/raster_query_queue.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/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/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_dark_mode_filter.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/tiles_with_resource_iterator.cc",
    "tiles/tiles_with_resource_iterator.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/animated_paint_worklet_tracker.cc",
    "trees/animated_paint_worklet_tracker.h",
    "trees/animation_effect_timings.h",
    "trees/animation_options.h",
    "trees/browser_controls_params.cc",
    "trees/browser_controls_params.h",
    "trees/clip_expander.cc",
    "trees/clip_expander.h",
    "trees/clip_node.cc",
    "trees/clip_node.h",
    "trees/commit_state.cc",
    "trees/commit_state.h",
    "trees/compositor_commit_data.cc",
    "trees/compositor_commit_data.h",
    "trees/compositor_mode.h",
    "trees/damage_tracker.cc",
    "trees/damage_tracker.h",
    "trees/de_jelly_state.cc",
    "trees/de_jelly_state.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/frame_rate_estimator.cc",
    "trees/frame_rate_estimator.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_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/mobile_optimized_viewport_util.cc",
    "trees/mobile_optimized_viewport_util.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.cc",
    "trees/paint_holding_commit_trigger.h",
    "trees/paint_holding_reason.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/sticky_position_constraint.cc",
    "trees/sticky_position_constraint.h",
    "trees/swap_promise.h",
    "trees/swap_promise_manager.cc",
    "trees/swap_promise_manager.h",
    "trees/target_property.cc",
    "trees/target_property.h",
    "trees/task_runner_provider.cc",
    "trees/task_runner_provider.h",
    "trees/throttle_decider.cc",
    "trees/throttle_decider.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",
    "trees/viewport_property_ids.h",
  ]

  public_deps = [
    "//cc/base",
    "//cc/paint",
    "//components/viz/common",
    "//skia",
  ]
  deps = [
    "//base",
    "//base/third_party/dynamic_annotations",
    "//build:chromeos_buildflags",
    "//components/power_scheduler",
    "//components/viz/client",
    "//device/base/synchronization",
    "//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",
    "//services/metrics/public/mojom",
    "//services/tracing/public/cpp:cpp",
    "//skia:skcms",
    "//ui/base:features",
    "//ui/events:events_base",
    "//ui/gfx",
    "//ui/gfx/animation/keyframe",
    "//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_frame_info.cc",
    "test/fake_frame_info.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_query_queue.cc",
    "test/fake_raster_query_queue.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/layer_test_common.cc",
    "test/layer_test_common.h",
    "test/layer_tree_impl_test_base.cc",
    "test/layer_tree_impl_test_base.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/lottie_test_data.cc",
    "test/lottie_test_data.h",
    "test/mock_latency_info_swap_promise_monitor.cc",
    "test/mock_latency_info_swap_promise_monitor.h",
    "test/mock_layer_tree_mutator.cc",
    "test/mock_layer_tree_mutator.h",
    "test/mock_mutator_host.cc",
    "test/mock_mutator_host.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/property_tree_test_utils.cc",
    "test/property_tree_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_types.cc",
    "test/test_types.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/mojom",
    "//skia",
    "//testing/gtest",
    "//ui/base:features",
    "//ui/gfx",
    "//ui/gfx:test_support",
    "//ui/gfx/animation/keyframe",
    "//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") {
  use_xvfb = use_xvfb_in_this_config

  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",
    "document_transition/document_transition_request_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_unittest.cc",
    "layers/mirror_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_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",
    "metrics/average_lag_tracker_unittest.cc",
    "metrics/average_lag_tracking_manager_unittest.cc",
    "metrics/compositor_frame_reporter_unittest.cc",
    "metrics/compositor_frame_reporting_controller_unittest.cc",
    "metrics/compositor_timing_history_unittest.cc",
    "metrics/dropped_frame_counter_unittest.cc",
    "metrics/events_metrics_manager_unittest.cc",
    "metrics/frame_info_unittest.cc",
    "metrics/frame_sequence_metrics_unittest.cc",
    "metrics/frame_sequence_tracker_unittest.cc",
    "metrics/frame_sorter_unittest.cc",
    "metrics/jank_injector_unittest.cc",
    "metrics/jank_metrics_unittest.cc",
    "metrics/total_frame_counter_unittest.cc",
    "metrics/video_playback_roughness_reporter_unittest.cc",
    "mojo_embedder/async_layer_tree_frame_sink_unittest.cc",
    "paint/clear_for_opaque_raster_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/paint_worklet_input_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/scheduler_state_machine_unittest.cc",
    "scheduler/scheduler_unittest.cc",
    "test/mock_mutator_host_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/draw_properties_unittest.cc",
    "trees/frame_rate_estimator_unittest.cc",
    "trees/image_animation_controller_unittest.cc",
    "trees/layer_tree_frame_sink_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_mirror.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.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_builder_unittest.cc",
    "trees/property_tree_unittest.cc",
    "trees/swap_promise_manager_unittest.cc",
    "trees/throttle_decider_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/filter_animation_curve_unittest.cc",
    "animation/keyframe_model_unittest.cc",
    "animation/scroll_offset_animation_curve_unittest.cc",
    "animation/scroll_timeline_unittest.cc",
    "animation/worklet_animation_unittest.cc",

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

  if (skia_support_skottie) {
    sources += [
      "paint/skottie_mru_resource_provider_unittest.cc",
      "paint/skottie_resource_metadata_unittest.cc",
      "paint/skottie_serialization_history_unittest.cc",
      "paint/skottie_text_property_value_unittest.cc",
      "paint/skottie_transfer_cache_entry_unittest.cc",
      "paint/skottie_wrapper_unittest.cc",
    ]
  }

  deps = [
    ":cc",
    ":test_support",
    "//base/test:test_support",
    "//build:chromeos_buildflags",
    "//cc/mojo_embedder",
    "//cc/paint",
    "//components/power_scheduler",
    "//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",
    "//skia:buildflags",
    "//skia:skcms",
    "//testing/gmock",
    "//testing/gtest",
    "//ui/events:events_base",
    "//ui/gfx",
    "//ui/gfx:test_support",
    "//ui/gfx/animation/keyframe",
    "//ui/gfx/geometry",
    "//ui/gl",
    "//ui/gl:test_support",
  ]

  data = [ "//components/viz/test/data/" ]
  data_deps = [
    "//testing/buildbot/filters:cc_unittests_filters",
    "//third_party/mesa_headers",
  ]

  if (is_android && enable_chrome_android_internal) {
    data_deps += [ "//clank/build/bot/filters:cc_unittests_filters" ]
  }

  if (skia_support_skottie) {
    data += [ "test/data/" ]
  }

  if (is_fuchsia) {
    use_cfv1 = false

    # TODO(https://crbug.com/1185811): Investigate removing the requirement for
    # job_policy_ambient_mark_vmo_exec for the sake of V8's allocator in tests.
    test_runner_shard = "//build/config/fuchsia/test/elf_test_ambient_exec_runner.shard.test-cml"

    additional_manifest_fragments = [
      "//build/config/fuchsia/test/fonts.shard.test-cml",
      "//third_party/fuchsia-sdk/sdk/pkg/vulkan/client.shard.cml",
    ]
  }

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

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/draw_property_utils_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",
    "//media",
    "//mojo/core/embedder",
    "//mojo/public/cpp/bindings",
    "//services/viz/public/mojom",
    "//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",
  ]
}

if (is_android) {
  java_cpp_enum("cc_android_java_enums_srcjar") {
    sources = [ "//cc/input/browser_controls_state.h" ]
  }

  android_library("cc_java") {
    # Right now, this only includes the Java switches. But if we need more Java
    # files, they should be added here as necessary.
    srcjar_deps = [ ":cc_android_java_enums_srcjar" ]
    deps = [ "//third_party/androidx:androidx_annotation_annotation_java" ]
  }
}
