blob: 005e012ca4a468ec332ba0ab3279155a742b66b4 [file] [log] [blame]
rockot6d7be622016-06-15 18:25:191# Copyright 2014 The Chroium Authors. All rights reserved.
rockotc637caf9b2016-02-10 09:57:082# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5{
rockot6d7be622016-06-15 18:25:196 'includes': [
7 'mojo_public.gypi',
8 ],
9 'variables': {
10 'chromium_code': 1,
11 },
rockotc637caf9b2016-02-10 09:57:0812 'target_defaults' : {
13 'include_dirs': [
14 '..',
15 ],
16 },
17 'targets': [
18 {
19 'target_name': 'mojo_public',
20 'type': 'none',
21 'dependencies': [
22 'mojo_js_bindings',
rockotb04b89b52016-06-09 03:58:5623 'mojo_public_system',
rockotc637caf9b2016-02-10 09:57:0824 ],
25 },
26 {
27 # GN version: //mojo/public/c/system
rockotb04b89b52016-06-09 03:58:5628 'target_name': 'mojo_public_system',
29 'type': '<(component)',
rockotc637caf9b2016-02-10 09:57:0830 'sources': [
rockot6d7be622016-06-15 18:25:1931 '<@(mojo_public_system_sources)',
rockotc637caf9b2016-02-10 09:57:0832 ],
rockotb04b89b52016-06-09 03:58:5633 'defines': [
34 'MOJO_SYSTEM_IMPLEMENTATION',
35 ],
rockotc637caf9b2016-02-10 09:57:0836 },
37 {
38 # GN version: //mojo/public/cpp/system
rockote5d711e2016-03-07 02:36:5239 'target_name': 'mojo_cpp_system',
40 'type': 'static_library',
rockotc637caf9b2016-02-10 09:57:0841 'sources': [
rockot6d7be622016-06-15 18:25:1942 '<@(mojo_cpp_system_sources)',
rockotc637caf9b2016-02-10 09:57:0843 ],
44 'dependencies': [
rockote5d711e2016-03-07 02:36:5245 '../base/base.gyp:base',
rockotb04b89b52016-06-09 03:58:5646 'mojo_public_system',
rockotc637caf9b2016-02-10 09:57:0847 ],
48 },
49 {
50 # GN version: //mojo/public/cpp/bindings
51 'target_name': 'mojo_cpp_bindings',
52 'type': 'static_library',
53 'include_dirs': [
54 '..'
55 ],
56 'sources': [
rockot6d7be622016-06-15 18:25:1957 '<@(mojo_cpp_bindings_sources)',
58
rockotc637caf9b2016-02-10 09:57:0859 # This comes from the mojo_interface_bindings_cpp_sources dependency.
60 '>@(mojom_generated_sources)',
61 ],
62 'dependencies': [
63 '../base/base.gyp:base',
rockote5d711e2016-03-07 02:36:5264 'mojo_cpp_system',
rockotc637caf9b2016-02-10 09:57:0865 'mojo_interface_bindings_cpp_sources',
66 ],
67 },
68 {
dpranke098b5f82016-04-30 01:32:4569 # GN version: //mojo/message_pump
70 'target_name': 'mojo_message_pump_lib',
71 'type': '<(component)',
72 'defines': [
73 'MOJO_MESSAGE_PUMP_IMPLEMENTATION',
74 ],
75 'dependencies': [
76 '../base/base.gyp:base',
rockotb04b89b52016-06-09 03:58:5677 'mojo_cpp_system',
dpranke098b5f82016-04-30 01:32:4578 ],
dpranke098b5f82016-04-30 01:32:4579 'sources': [
80 'message_pump/handle_watcher.cc',
81 'message_pump/handle_watcher.h',
82 'message_pump/message_pump_mojo.cc',
83 'message_pump/message_pump_mojo.h',
84 'message_pump/message_pump_mojo_handler.h',
85 'message_pump/time_helper.cc',
86 'message_pump/time_helper.h',
87 ],
88 },
89 {
rockotc637caf9b2016-02-10 09:57:0890 # GN version: //mojo/public/js
91 'target_name': 'mojo_js_bindings',
92 'type': 'static_library',
93 'include_dirs': [
94 '..'
95 ],
96 'sources': [
97 'public/js/constants.cc',
98 'public/js/constants.h',
99 ],
100 },
101 {
rockotc637caf9b2016-02-10 09:57:08102 'target_name': 'mojo_interface_bindings_mojom',
103 'type': 'none',
104 'variables': {
105 'require_interface_bindings': 0,
106 'mojom_files': [
107 'public/interfaces/bindings/interface_control_messages.mojom',
108 'public/interfaces/bindings/pipe_control_messages.mojom',
109 ],
110 },
111 'includes': [ 'mojom_bindings_generator_explicit.gypi' ],
112 },
113 {
114 'target_name': 'mojo_interface_bindings_cpp_sources',
115 'type': 'none',
116 'dependencies': [
117 'mojo_interface_bindings_mojom',
118 ],
119 },
120 {
121 # This target can be used to introduce a dependency on interface bindings
122 # generation without introducing any side-effects in the dependent
123 # target's configuration.
124 'target_name': 'mojo_interface_bindings_generation',
125 'type': 'none',
126 'dependencies': [
127 'mojo_interface_bindings_cpp_sources',
128 ],
129 },
130 {
131 # GN version: //mojo/public/c/test_support
132 'target_name': 'mojo_public_test_support',
krasinda412f2cc2016-05-09 23:50:26133 'type': 'static_library',
rockotc637caf9b2016-02-10 09:57:08134 'include_dirs': [
135 '..',
136 ],
137 'direct_dependent_settings': {
138 'include_dirs': [
139 '..',
140 ],
141 },
142 'sources': [
143 'public/c/test_support/test_support.h',
rockotc637caf9b2016-02-10 09:57:08144 # TODO(vtl): Convert this to thunks http://crbug.com/386799
145 'public/tests/test_support_private.cc',
146 'public/tests/test_support_private.h',
147 ],
rockotc637caf9b2016-02-10 09:57:08148 },
149 {
150 # GN version: //mojo/public/cpp/test_support:test_utils
151 'target_name': 'mojo_public_test_utils',
152 'type': 'static_library',
153 'dependencies': [
154 '../base/base.gyp:base',
155 '../testing/gtest.gyp:gtest',
156 'mojo_public_test_support',
157 ],
158 'sources': [
159 'public/cpp/test_support/lib/test_support.cc',
160 'public/cpp/test_support/lib/test_utils.cc',
161 'public/cpp/test_support/test_utils.h',
162 ],
163 },
164 {
165 # GN version: //mojo/public/cpp/bindings/tests:mojo_public_bindings_test_utils
166 'target_name': 'mojo_public_bindings_test_utils',
167 'type': 'static_library',
168 'dependencies': [
169 '../base/base.gyp:base',
170 ],
171 'sources': [
172 'public/cpp/bindings/tests/validation_test_input_parser.cc',
173 'public/cpp/bindings/tests/validation_test_input_parser.h',
174 ],
175 },
rockotc637caf9b2016-02-10 09:57:08176 ],
177 'conditions': [
178 ['OS == "android"', {
179 'targets': [
180 {
181 # GN version: //mojo/public/java:system
182 'target_name': 'mojo_public_java',
183 'type': 'none',
184 'variables': {
185 'chromium_code': 0,
186 'java_in_dir': 'public/java/system',
187 },
188 'includes': [ '../build/java.gypi' ],
189 },
190 {
191 'target_name': 'mojo_interface_bindings_java_sources',
192 'type': 'none',
193 'dependencies': [
194 'mojo_interface_bindings_mojom',
195 ],
196 },
197 {
198 # GN version: //mojo/public/java:bindings
199 'target_name': 'mojo_bindings_java',
200 'type': 'none',
201 'variables': {
202 'chromium_code': 0,
203 'java_in_dir': 'public/java/bindings',
204 },
205 'dependencies': [
206 'mojo_interface_bindings_java_sources',
207 'mojo_public_java',
208 '<(DEPTH)/base/base.gyp:base_java',
209 ],
210 'includes': [ '../build/java.gypi' ],
211 },
212 ],
213 }],
sdefresneaa9125d22016-06-07 11:41:06214 ['OS != "ios"', {
215 'targets': [
216 {
217 # TODO(yzshen): crbug.com/617718 Consider moving this into blink.
218 # GN version: //mojo/public/cpp/bindings:wtf_support
219 'target_name': 'mojo_cpp_bindings_wtf_support',
220 'type': 'static_library',
221 'include_dirs': [
222 '..'
223 ],
224 'sources': [
225 'public/cpp/bindings/array_traits_wtf.h',
226 'public/cpp/bindings/array_traits_wtf_vector.h',
227 'public/cpp/bindings/lib/string_traits_wtf.cc',
yzshenc875b8ba2016-07-13 20:24:19228 'public/cpp/bindings/lib/wtf_clone_equals_util.h',
sdefresneaa9125d22016-06-07 11:41:06229 'public/cpp/bindings/lib/wtf_serialization.h',
yzshen54300842016-06-16 19:08:56230 'public/cpp/bindings/map_traits_wtf.h',
yzshenc875b8ba2016-07-13 20:24:19231 'public/cpp/bindings/map_traits_wtf_hash_map.h',
sdefresneaa9125d22016-06-07 11:41:06232 'public/cpp/bindings/string_traits_wtf.h',
233 'public/cpp/bindings/wtf_array.h',
yzshen54300842016-06-16 19:08:56234 'public/cpp/bindings/wtf_map.h',
sdefresneaa9125d22016-06-07 11:41:06235 ],
236 'dependencies': [
237 'mojo_cpp_bindings',
238 '../third_party/WebKit/Source/config.gyp:config',
239 '../third_party/WebKit/Source/wtf/wtf.gyp:wtf',
240 ],
241 'export_dependent_settings': [
242 'mojo_cpp_bindings',
243 '../third_party/WebKit/Source/config.gyp:config',
244 ],
245 },
rockot6d7be622016-06-15 18:25:19246 ],
247 }],
248 ['OS == "win" and target_arch=="ia32"', {
249 'targets': [
sdefresneaa9125d22016-06-07 11:41:06250 {
rockot6d7be622016-06-15 18:25:19251 # GN version: //mojo/public/c/system
252 'target_name': 'mojo_public_system_win64',
253 'type': '<(component)',
254 'sources': [
255 '<@(mojo_public_system_sources)',
256 ],
257 'defines': [
258 'MOJO_SYSTEM_IMPLEMENTATION',
259 ],
260 'configurations': {
261 'Common_Base': {
262 'msvs_target_platform': 'x64',
263 },
sdefresneaa9125d22016-06-07 11:41:06264 },
sdefresneaa9125d22016-06-07 11:41:06265 },
266 {
rockot6d7be622016-06-15 18:25:19267 # GN version: //mojo/public/cpp/system
268 'target_name': 'mojo_cpp_system_win64',
sdefresneaa9125d22016-06-07 11:41:06269 'type': 'static_library',
sdefresneaa9125d22016-06-07 11:41:06270 'sources': [
rockot6d7be622016-06-15 18:25:19271 '<@(mojo_cpp_system_sources)',
sdefresneaa9125d22016-06-07 11:41:06272 ],
273 'dependencies': [
rockot6d7be622016-06-15 18:25:19274 '../base/base.gyp:base_win64',
275 'mojo_public_system_win64',
sdefresneaa9125d22016-06-07 11:41:06276 ],
rockot6d7be622016-06-15 18:25:19277 'configurations': {
278 'Common_Base': {
279 'msvs_target_platform': 'x64',
280 },
281 },
sdefresneaa9125d22016-06-07 11:41:06282 },
283 {
rockot6d7be622016-06-15 18:25:19284 # GN version: //mojo/public/cpp/bindings
285 'target_name': 'mojo_cpp_bindings_win64',
sdefresneaa9125d22016-06-07 11:41:06286 'type': 'static_library',
rockot6d7be622016-06-15 18:25:19287 'include_dirs': [
288 '..'
tommycli5628ee32016-06-15 15:54:55289 ],
rockot6d7be622016-06-15 18:25:19290 'sources': [
291 '<@(mojo_cpp_bindings_sources)',
292
293 # This comes from the mojo_interface_bindings_cpp_sources dependency.
294 '>@(mojom_generated_sources)',
295 ],
296 'dependencies': [
297 '../base/base.gyp:base_win64',
298 'mojo_cpp_system_win64',
299 'mojo_interface_bindings_cpp_sources',
300 ],
301 'configurations': {
302 'Common_Base': {
303 'msvs_target_platform': 'x64',
304 },
305 },
sdefresneaa9125d22016-06-07 11:41:06306 },
307 ],
308 }],
rockotc637caf9b2016-02-10 09:57:08309 ],
310}