OLD | NEW |
1 # Copyright 2016 The Chromium Authors. All rights reserved. | 1 # Copyright 2016 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import("features/features.gni") | 5 import("features.gni") |
| 6 import("//build/buildflag_header.gni") |
6 import("//mojo/public/tools/bindings/mojom.gni") | 7 import("//mojo/public/tools/bindings/mojom.gni") |
7 | 8 |
8 if (is_android) { | 9 if (is_android) { |
9 import("//build/config/android/rules.gni") # For generate_jni(). | 10 import("//build/config/android/rules.gni") # For generate_jni(). |
10 } | 11 } |
11 | 12 |
| 13 # Generate a buildflag header for compile-time checking of WebVR support. |
| 14 buildflag_header("features") { |
| 15 header = "features.h" |
| 16 flags = [ |
| 17 "ENABLE_VR=$enable_vr", |
| 18 "ENABLE_OPENVR=$enable_openvr", |
| 19 ] |
| 20 } |
| 21 |
12 component("vr") { | 22 component("vr") { |
13 output_name = "device_vr" | 23 output_name = "device_vr" |
14 | 24 |
15 sources = [ | 25 sources = [ |
16 "vr_export.h", | 26 "vr_export.h", |
17 ] | 27 ] |
18 defines = [ "DEVICE_VR_IMPLEMENTATION" ] | 28 defines = [ "DEVICE_VR_IMPLEMENTATION" ] |
19 deps = [ | 29 deps = [ |
20 ":mojo_bindings", | 30 ":features", |
21 "features", | |
22 ] | 31 ] |
| 32 if (!is_ios) { |
| 33 deps += [ ":mojo_bindings" ] |
| 34 } |
23 | 35 |
24 if (!enable_vr) { | 36 if (!enable_vr) { |
25 sources += [ | 37 sources += [ |
26 # We need to include an empty .cc file so that mac and windows don't fall
over when trying to | 38 # We need to include an empty .cc file so that mac and windows don't fall
over when trying to |
27 # compile this when webvr is disabled. | 39 # compile this when webvr is disabled. |
28 "empty.cc", | 40 "empty.cc", |
29 ] | 41 ] |
30 } else { | 42 } else { |
31 sources += [ | 43 sources += [ |
32 "vr_device.cc", | 44 "vr_device.cc", |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
109 | 121 |
110 public_deps = [ | 122 public_deps = [ |
111 ":mojo_bindings", | 123 ":mojo_bindings", |
112 ":vr", | 124 ":vr", |
113 "//base", | 125 "//base", |
114 "//mojo/public/cpp/bindings", | 126 "//mojo/public/cpp/bindings", |
115 ] | 127 ] |
116 } | 128 } |
117 } | 129 } |
118 | 130 |
119 mojom("mojo_bindings") { | 131 if (!is_ios) { |
120 sources = [ | 132 mojom("mojo_bindings") { |
121 "vr_service.mojom", | 133 sources = [ |
122 ] | 134 "vr_service.mojom", |
| 135 ] |
123 | 136 |
124 public_deps = [ | 137 public_deps = [ |
125 "//gpu/ipc/common:interfaces", | 138 "//gpu/ipc/common:interfaces", |
126 "//mojo/common:common_custom_types", | 139 "//mojo/common:common_custom_types", |
127 ] | 140 ] |
128 | 141 |
129 export_class_attribute = "DEVICE_VR_EXPORT" | 142 export_class_attribute = "DEVICE_VR_EXPORT" |
130 export_define = "DEVICE_VR_IMPLEMENTATION=1" | 143 export_define = "DEVICE_VR_IMPLEMENTATION=1" |
131 export_header = "device/vr/vr_export.h" | 144 export_header = "device/vr/vr_export.h" |
| 145 } |
132 } | 146 } |
OLD | NEW |