blob: 360b65070810ffcee82d5590abd2c11e83ac4f4e [file] [log] [blame]
# 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/ui.gni")
import("//mojo/public/mojo_application.gni")
if (is_android) {
import("//build/config/android/config.gni")
import("//build/config/android/rules.gni")
import("//mojo/public/tools/bindings/mojom.gni")
group("native_viewport") {
deps = [
":lib",
":native_viewport_java",
":jni_headers",
]
}
android_library("native_viewport_java") {
java_files =
[ "android/src/org/chromium/mojo/PlatformViewportAndroid.java" ]
deps = [
"//base:base_java",
"//services/keyboard",
"//mojo/services/keyboard/interfaces:interfaces_java",
"//mojo/public/java:bindings",
"//mojo/public/java:system",
]
}
generate_jni("jni_headers") {
sources = [
"android/src/org/chromium/mojo/PlatformViewportAndroid.java",
]
jni_package = "mojo"
}
mojom("interfaces") {
sources = [
"native_viewport_support.mojom",
]
}
} else {
mojo_native_application("native_viewport") {
output_name = "native_viewport_service"
sources = [
"app_delegate.cc",
"main.cc",
]
deps = [
":lib",
"//base",
"//gpu/config",
"//mojo/application",
"//mojo/common:tracing_impl",
"//mojo/public/cpp/bindings:bindings",
"//mojo/services/native_viewport/interfaces",
"//mojo/services/native_viewport/cpp:args",
"//services/gles2",
"//ui/events",
"//ui/events/platform",
"//ui/gl",
]
if (use_ozone) {
sources += [ "ozone/app_delegate_ozone.cc" ]
deps += [
"//mojo/services/ozone_drm_gpu/interfaces",
"//mojo/services/ozone_drm_host/interfaces",
"//ui/events/ozone:events_ozone_evdev",
"//ui/ozone",
]
}
}
}
source_set("lib") {
sources = [
"native_viewport_impl.cc",
"native_viewport_impl.h",
"onscreen_context_provider.cc",
"onscreen_context_provider.h",
"platform_viewport.h",
"platform_viewport_android.cc",
"platform_viewport_android.h",
"platform_viewport_headless.cc",
"platform_viewport_headless.h",
"platform_viewport_stub.cc",
"platform_viewport_x11.cc",
]
if (!is_ios) {
sources -= [ "platform_viewport_stub.cc" ]
}
deps = [
"//base",
"//gpu/command_buffer/service",
"//mojo/application",
"//mojo/common",
"//mojo/converters/geometry",
"//mojo/converters/input_events",
"//mojo/converters/native_viewport",
"//mojo/environment:chromium",
"//services/gles2",
"//mojo/services/geometry/interfaces",
"//mojo/services/native_viewport/interfaces",
"//ui/events",
"//ui/events/platform",
"//ui/gfx",
"//ui/gfx/geometry",
"//ui/gl",
"//ui/platform_window",
"//ui/display/types",
]
if (is_android) {
deps += [
":interfaces",
":jni_headers",
]
}
if (use_x11) {
deps += [ "//ui/platform_window/x11" ]
} else {
sources -= [ "platform_viewport_x11.cc" ]
}
if (use_ozone) {
sources += [
"ozone/display_manager.cc",
"ozone/display_manager.h",
"ozone/platform_viewport_ozone.cc",
]
deps += [
"//ui/events/ozone:events_ozone_evdev",
"//ui/ozone",
"//ui/ozone:ozone_base",
"//ui/ozone/platform/drm:drm_common",
]
}
if (is_win) {
deps += [ "//ui/platform_window/win" ]
}
}