| # Copyright 2017 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/jumbo.gni") | 
 | import("//third_party/WebKit/Source/platform/platform.gni") | 
 |  | 
 | blink_platform_sources("scheduler") { | 
 |   sources = [ | 
 |     "base/enqueue_order.cc", | 
 |     "base/enqueue_order.h", | 
 |     "base/graceful_queue_shutdown_helper.cc", | 
 |     "base/graceful_queue_shutdown_helper.h", | 
 |     "base/intrusive_heap.h", | 
 |     "base/lazy_now.cc", | 
 |     "base/lazy_now.h", | 
 |     "base/moveable_auto_lock.h", | 
 |     "base/real_time_domain.cc", | 
 |     "base/real_time_domain.h", | 
 |     "base/sequence.h", | 
 |     "base/task_queue.cc", | 
 |     "base/task_queue.h", | 
 |     "base/task_queue_impl.cc", | 
 |     "base/task_queue_impl.h", | 
 |     "base/task_queue_manager.h", | 
 |     "base/task_queue_manager_impl.cc", | 
 |     "base/task_queue_manager_impl.h", | 
 |     "base/task_queue_selector.cc", | 
 |     "base/task_queue_selector.h", | 
 |     "base/task_time_observer.h", | 
 |     "base/thread_controller.h", | 
 |     "base/thread_controller_impl.cc", | 
 |     "base/thread_controller_impl.h", | 
 |     "base/time_domain.cc", | 
 |     "base/time_domain.h", | 
 |     "base/virtual_time_domain.cc", | 
 |     "base/virtual_time_domain.h", | 
 |     "base/work_queue.cc", | 
 |     "base/work_queue.h", | 
 |     "base/work_queue_sets.cc", | 
 |     "base/work_queue_sets.h", | 
 |     "child/cancelable_closure_holder.cc", | 
 |     "child/cancelable_closure_holder.h", | 
 |     "child/compositor_metrics_helper.cc", | 
 |     "child/compositor_metrics_helper.h", | 
 |     "child/compositor_worker_scheduler.cc", | 
 |     "child/compositor_worker_scheduler.h", | 
 |     "child/default_params.h", | 
 |     "child/features.h", | 
 |     "child/idle_canceled_delayed_task_sweeper.cc", | 
 |     "child/idle_canceled_delayed_task_sweeper.h", | 
 |     "child/idle_helper.cc", | 
 |     "child/idle_helper.h", | 
 |     "child/metrics_helper.cc", | 
 |     "child/metrics_helper.h", | 
 |     "child/page_visibility_state.cc", | 
 |     "child/page_visibility_state.h", | 
 |     "child/pollable_thread_safe_flag.cc", | 
 |     "child/pollable_thread_safe_flag.h", | 
 |     "child/process_state.cc", | 
 |     "child/process_state.h", | 
 |     "child/scheduler_helper.cc", | 
 |     "child/scheduler_helper.h", | 
 |     "child/single_thread_idle_task_runner.cc", | 
 |     "child/task_runner_impl.cc", | 
 |     "child/task_runner_impl.h", | 
 |     "child/web_scheduler.h", | 
 |     "child/web_scheduler_impl.cc", | 
 |     "child/web_scheduler_impl.h", | 
 |     "child/webthread_base.cc", | 
 |     "child/webthread_impl_for_worker_scheduler.cc", | 
 |     "child/webthread_impl_for_worker_scheduler.h", | 
 |     "child/worker_global_scope_scheduler.cc", | 
 |     "child/worker_global_scope_scheduler.h", | 
 |     "child/worker_metrics_helper.cc", | 
 |     "child/worker_metrics_helper.h", | 
 |     "child/worker_scheduler.cc", | 
 |     "child/worker_scheduler.h", | 
 |     "child/worker_scheduler_helper.cc", | 
 |     "child/worker_scheduler_helper.h", | 
 |     "child/worker_scheduler_impl.cc", | 
 |     "child/worker_scheduler_impl.h", | 
 |     "child/worker_scheduler_proxy.cc", | 
 |     "child/worker_scheduler_proxy.h", | 
 |     "child/worker_task_queue.cc", | 
 |     "child/worker_task_queue.h", | 
 |     "renderer/auto_advancing_virtual_time_domain.cc", | 
 |     "renderer/auto_advancing_virtual_time_domain.h", | 
 |     "renderer/budget_pool.cc", | 
 |     "renderer/budget_pool.h", | 
 |     "renderer/cpu_time_budget_pool.cc", | 
 |     "renderer/cpu_time_budget_pool.h", | 
 |     "renderer/deadline_task_runner.cc", | 
 |     "renderer/deadline_task_runner.h", | 
 |     "renderer/frame_status.cc", | 
 |     "renderer/frame_status.h", | 
 |     "renderer/idle_time_estimator.cc", | 
 |     "renderer/idle_time_estimator.h", | 
 |     "renderer/main_thread_scheduler_helper.cc", | 
 |     "renderer/main_thread_scheduler_helper.h", | 
 |     "renderer/main_thread_task_queue.cc", | 
 |     "renderer/main_thread_task_queue.h", | 
 |     "renderer/queueing_time_estimator.cc", | 
 |     "renderer/queueing_time_estimator.h", | 
 |     "renderer/render_widget_scheduling_state.cc", | 
 |     "renderer/render_widget_signals.cc", | 
 |     "renderer/render_widget_signals.h", | 
 |     "renderer/renderer_metrics_helper.cc", | 
 |     "renderer/renderer_metrics_helper.h", | 
 |     "renderer/renderer_scheduler.cc", | 
 |     "renderer/renderer_scheduler_impl.cc", | 
 |     "renderer/renderer_scheduler_impl.h", | 
 |     "renderer/renderer_web_scheduler_impl.cc", | 
 |     "renderer/renderer_web_scheduler_impl.h", | 
 |     "renderer/task_cost_estimator.cc", | 
 |     "renderer/task_cost_estimator.h", | 
 |     "renderer/task_queue_throttler.cc", | 
 |     "renderer/task_queue_throttler.h", | 
 |     "renderer/throttled_time_domain.cc", | 
 |     "renderer/throttled_time_domain.h", | 
 |     "renderer/user_model.cc", | 
 |     "renderer/user_model.h", | 
 |     "renderer/wake_up_budget_pool.cc", | 
 |     "renderer/wake_up_budget_pool.h", | 
 |     "renderer/web_frame_scheduler_impl.cc", | 
 |     "renderer/web_frame_scheduler_impl.h", | 
 |     "renderer/web_scoped_virtual_time_pauser.cc", | 
 |     "renderer/web_view_scheduler.h", | 
 |     "renderer/web_view_scheduler_impl.cc", | 
 |     "renderer/web_view_scheduler_impl.h", | 
 |     "renderer/webthread_impl_for_renderer_scheduler.cc", | 
 |     "renderer/webthread_impl_for_renderer_scheduler.h", | 
 |     "util/aggregated_metric_reporter.h", | 
 |     "util/task_duration_metric_reporter.cc", | 
 |     "util/task_duration_metric_reporter.h", | 
 |     "util/thread_cpu_throttler.cc", | 
 |     "util/thread_cpu_throttler.h", | 
 |     "util/thread_load_tracker.cc", | 
 |     "util/thread_load_tracker.h", | 
 |     "util/thread_type.h", | 
 |     "util/tracing_helper.cc", | 
 |     "util/tracing_helper.h", | 
 |     "utility/webthread_impl_for_utility_thread.cc", | 
 |     "utility/webthread_impl_for_utility_thread.h", | 
 |   ] | 
 |  | 
 |   deps = [ | 
 |     "//base", | 
 |     "//cc", | 
 |     "//device/base/synchronization", | 
 |     "//third_party/WebKit/Source/platform:make_platform_generated", | 
 |     "//third_party/WebKit/Source/platform/wtf", | 
 |   ] | 
 | } | 
 |  | 
 | jumbo_source_set("test_support") { | 
 |   testonly = true | 
 |  | 
 |   sources = [ | 
 |     "base/test_task_time_observer.h", | 
 |     "test/create_task_queue_manager_for_test.cc", | 
 |     "test/create_task_queue_manager_for_test.h", | 
 |     "test/fake_renderer_scheduler.cc", | 
 |     "test/fake_task_runner.cc", | 
 |     "test/fake_task_runner.h", | 
 |     "test/fake_web_frame_scheduler.h", | 
 |     "test/fake_web_view_scheduler.h", | 
 |     "test/lazy_thread_controller_for_test.cc", | 
 |     "test/lazy_thread_controller_for_test.h", | 
 |     "test/renderer_scheduler_test_support.cc", | 
 |     "test/test_task_queue.cc", | 
 |     "test/test_task_queue.h", | 
 |   ] | 
 |  | 
 |   deps = [ | 
 |     "//base", | 
 |     "//base/test:test_support", | 
 |   ] | 
 |  | 
 |   configs += [ "//third_party/WebKit/Source/platform:blink_platform_config" ] | 
 | } | 
 |  | 
 | jumbo_source_set("unit_tests") { | 
 |   testonly = true | 
 |  | 
 |   sources = [ | 
 |     "base/intrusive_heap_unittest.cc", | 
 |     "base/task_queue_manager_impl_unittest.cc", | 
 |     "base/task_queue_selector_unittest.cc", | 
 |     "base/test_count_uses_time_source.cc", | 
 |     "base/test_count_uses_time_source.h", | 
 |     "base/time_domain_unittest.cc", | 
 |     "base/work_queue_sets_unittest.cc", | 
 |     "base/work_queue_unittest.cc", | 
 |     "child/idle_canceled_delayed_task_sweeper_unittest.cc", | 
 |     "child/idle_helper_unittest.cc", | 
 |     "child/metrics_helper_unittest.cc", | 
 |     "child/scheduler_helper_unittest.cc", | 
 |     "child/webthread_impl_for_worker_scheduler_unittest.cc", | 
 |     "child/worker_global_scope_scheduler_unittest.cc", | 
 |     "child/worker_scheduler_impl_unittest.cc", | 
 |     "child/worker_scheduler_proxy_unittest.cc", | 
 |     "renderer/auto_advancing_virtual_time_domain_unittest.cc", | 
 |     "renderer/budget_pool_unittest.cc", | 
 |     "renderer/deadline_task_runner_unittest.cc", | 
 |     "renderer/idle_time_estimator_unittest.cc", | 
 |     "renderer/queueing_time_estimator_unittest.cc", | 
 |     "renderer/render_widget_signals_unittest.cc", | 
 |     "renderer/renderer_metrics_helper_unittest.cc", | 
 |     "renderer/renderer_scheduler_impl_unittest.cc", | 
 |     "renderer/task_cost_estimator_unittest.cc", | 
 |     "renderer/task_queue_throttler_unittest.cc", | 
 |     "renderer/user_model_unittest.cc", | 
 |     "renderer/web_frame_scheduler_impl_unittest.cc", | 
 |     "renderer/web_view_scheduler_impl_unittest.cc", | 
 |     "renderer/webthread_impl_for_renderer_scheduler_unittest.cc", | 
 |     "util/task_duration_metric_reporter_unittest.cc", | 
 |     "util/thread_load_tracker_unittest.cc", | 
 |     "util/tracing_helper_unittest.cc", | 
 |   ] | 
 |  | 
 |   deps = [ | 
 |     "//base", | 
 |     "//base/test:test_support", | 
 |     "//components/viz/common", | 
 |     "//components/viz/test:test_support", | 
 |     "//testing/gmock", | 
 |     "//testing/gtest", | 
 |     "//third_party/WebKit/public:test_support", | 
 |   ] | 
 |  | 
 |   configs += [ "//third_party/WebKit/Source/platform:blink_platform_config" ] | 
 | } | 
 |  | 
 | source_set("perf_tests") { | 
 |   testonly = true | 
 |  | 
 |   sources = [ | 
 |     "base/task_queue_manager_perftest.cc", | 
 |   ] | 
 |  | 
 |   deps = [ | 
 |     "//base", | 
 |     "//base/test:test_support", | 
 |     "//testing/gmock", | 
 |     "//testing/gtest", | 
 |     "//testing/perf", | 
 |   ] | 
 |  | 
 |   configs += [ "//third_party/WebKit/Source/platform:blink_platform_config" ] | 
 | } |