1# Copyright 2014 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5import("//build/config/ui.gni")
6
7if (!is_android) {
8  shared_library("native_viewport") {
9    output_name = "mojo_native_viewport_service"
10
11    deps = [
12      ":lib",
13      "//base",
14      "//mojo/application",
15      "//mojo/public/c/system:for_shared_library",
16      "//mojo/public/cpp/bindings:bindings",
17      "//mojo/services/public/interfaces/native_viewport",
18      "//ui/gl",
19    ]
20
21    sources = [ "main.cc" ]
22  }
23}
24
25source_set("lib") {
26  deps = [
27    "//base",
28    "//cc/surfaces",
29    "//gpu/command_buffer/service",
30    "//mojo/application",
31    "//mojo/common",
32    "//mojo/environment:chromium",
33    "//mojo/services/gles2",
34    "//mojo/services/gles2:interfaces",
35    "//mojo/services/public/cpp/geometry",
36    "//mojo/services/public/cpp/input_events",
37    "//mojo/services/public/cpp/surfaces",
38    "//mojo/services/public/interfaces/geometry",
39    "//mojo/services/public/interfaces/native_viewport",
40    "//mojo/services/public/interfaces/surfaces",
41    "//ui/events",
42    "//ui/events/platform",
43    "//ui/gfx",
44    "//ui/gfx/geometry",
45    "//ui/gl",
46    "//ui/platform_window",
47  ]
48
49  sources = [
50    "gpu_impl.cc",
51    "gpu_impl.h",
52    "native_viewport_impl.cc",
53    "native_viewport_impl.h",
54    "platform_viewport.h",
55    "platform_viewport_android.cc",
56    "platform_viewport_android.h",
57    "platform_viewport_mac.mm",
58    "platform_viewport_headless.cc",
59    "platform_viewport_headless.h",
60    "platform_viewport_win.cc",
61    "viewport_surface.cc",
62    "viewport_surface.h",
63  ]
64
65  if (is_ios) {
66    sources += [ "platform_viewport_stub.cc" ]
67  }
68
69  if (is_android) {
70    deps += [ "//mojo:jni_headers" ]
71  }
72
73  if (use_x11) {
74    sources += [ "platform_viewport_x11.cc" ]
75    deps += [
76      "//ui/events/platform/x11",
77      "//ui/platform_window/x11",
78    ]
79  }
80
81  if (use_ozone) {
82    sources += [ "platform_viewport_ozone.cc" ]
83  }
84}
85