# Copyright 2015 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("//mojo/public/tools/bindings/mojom.gni") source_set("vsync_lib_fallback") { sources = [ "fallback/vsync_provider_fallback_impl.h", "fallback/vsync_provider_fallback_impl.cc", ] deps = [ "//base:base", "//mojo/public/cpp/application", "//mojo/public/cpp/bindings:utility", "//mojo/services/vsync/interfaces", ] } group("vsync") { deps = [ ":vsync_lib", ":vsync_lib_fallback" ] } if (is_android) { # Choreographer backed VSync import("//build/config/android/config.gni") import("//build/config/android/rules.gni") android_library("vsync_lib") { java_files = [ "src/org/domokit/vsync/VSyncProviderImpl.java" ] deps = [ "//base:base_java", "//mojo/public/java:bindings", "//mojo/public/java:system", "//mojo/services/vsync/interfaces:interfaces_java", ] } } else if (is_ios) { # DisplayLink backed VSync source_set("vsync_lib") { sources = [ "ios/vsync_provider_ios_impl.h", "ios/vsync_provider_ios_impl.mm", ] deps = [ "//base:base", "//mojo/public/cpp/application", "//mojo/public/cpp/bindings:utility", "//mojo/services/vsync/interfaces", ] } } else if (is_mac) { # CVDisplayLink backed VSync source_set("vsync_lib") { sources = [ "mac/vsync_provider_mac_impl.h", "mac/vsync_provider_mac_impl.cc", ] deps = [ "//base:base", "//mojo/public/cpp/application", "//mojo/public/cpp/bindings:utility", "//mojo/services/vsync/interfaces", ] } } else { group("vsync_lib") { # Empty, will use fallbacks by default. } }