blob: 640251983848032b064cb2d89d7866de3cea2063 [file] [log] [blame]
[email protected]02657da2013-09-16 02:55:181# Copyright 2013 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
5{
6 'variables': {
[email protected]3d58663b2013-09-28 00:30:047 'chromium_code': 1,
[email protected]02657da2013-09-16 02:55:188 },
9 'target_defaults': {
10 'defines': ['MOJO_IMPLEMENTATION'],
11 },
12 'targets': [
13 {
14 'target_name': 'mojo',
15 'type': 'none',
[email protected]3d58663b2013-09-28 00:30:0416 'dependencies': [
17 'mojo_public_test_support',
18 'mojo_public_unittests',
19 'mojo_public_perftests',
20 'mojo_system',
21 'mojo_system_unittests',
22 ],
23 },
24 {
25 'target_name': 'mojo_public_test_support',
26 'type': 'static_library',
27 'dependencies': [
28 '../base/base.gyp:base',
29 '../testing/gtest.gyp:gtest',
30 'mojo_system',
31 ],
32 'sources': [
33 'public/tests/test_support.cc',
34 'public/tests/test_support.h',
35 ],
36 },
37 {
38 'target_name': 'mojo_public_unittests',
39 'type': 'executable',
40 'dependencies': [
41 '../base/base.gyp:run_all_unittests',
42 '../testing/gtest.gyp:gtest',
43 'mojo_public_test_support',
44 'mojo_system',
45 ],
46 'sources': [
47 'public/tests/system_core_unittest.cc',
48 ],
49 },
50 {
51 'target_name': 'mojo_public_perftests',
52 'type': 'executable',
53 'dependencies': [
54 '../base/base.gyp:base',
55 '../base/base.gyp:test_support_perf',
56 '../testing/gtest.gyp:gtest',
57 'mojo_public_test_support',
58 'mojo_system',
59 ],
60 'sources': [
61 'public/tests/system_core_perftest.cc',
62 ],
63 },
64 {
65 'target_name': 'mojo_system',
66 # TODO(vtl): This should probably be '<(component)'; make it work.
[email protected]6cf6ca52013-10-10 20:52:1167 'type': '<(component)',
[email protected]3d58663b2013-09-28 00:30:0468 'dependencies': [
69 '../base/base.gyp:base',
70 ],
[email protected]6cf6ca52013-10-10 20:52:1171 'defines': [
72 'MOJO_SYSTEM_IMPLEMENTATION',
73 ],
[email protected]3d58663b2013-09-28 00:30:0474 'sources': [
[email protected]3d58663b2013-09-28 00:30:0475 'system/core.cc',
76 'system/core_impl.cc',
77 'system/core_impl.h',
78 'system/dispatcher.cc',
79 'system/dispatcher.h',
80 'system/limits.h',
[email protected]989f8bc2013-10-16 00:24:3781 'system/local_message_pipe_endpoint.cc',
82 'system/local_message_pipe_endpoint.h',
[email protected]3d58663b2013-09-28 00:30:0483 'system/memory.cc',
84 'system/memory.h',
[email protected]aae74e92013-10-03 20:52:3485 'system/message_in_transit.cc',
86 'system/message_in_transit.h',
[email protected]3d58663b2013-09-28 00:30:0487 'system/message_pipe.cc',
88 'system/message_pipe.h',
89 'system/message_pipe_dispatcher.cc',
90 'system/message_pipe_dispatcher.h',
[email protected]989f8bc2013-10-16 00:24:3791 'system/message_pipe_endpoint.cc',
92 'system/message_pipe_endpoint.h',
[email protected]5a0d0062013-10-11 19:07:1893 'system/platform_channel_handle.h',
94 'system/raw_channel.h',
95 'system/raw_channel_posix.cc',
[email protected]3d58663b2013-09-28 00:30:0496 'system/simple_dispatcher.cc',
97 'system/simple_dispatcher.h',
98 'system/waiter.cc',
99 'system/waiter.h',
100 'system/waiter_list.cc',
101 'system/waiter_list.h',
102 ],
103 'direct_dependent_settings': {
104 'include_dirs': [
105 '..',
106 ],
107 },
108 },
109 {
110 'target_name': 'mojo_system_unittests',
111 'type': 'executable',
112 'dependencies': [
113 '../base/base.gyp:run_all_unittests',
114 '../testing/gtest.gyp:gtest',
115 'mojo_system',
116 ],
117 'sources': [
118 'system/core_impl_unittest.cc',
119 'system/core_test_base.cc',
120 'system/core_test_base.h',
121 'system/dispatcher_unittest.cc',
122 'system/message_pipe_dispatcher_unittest.cc',
123 'system/message_pipe_unittest.cc',
[email protected]5a0d0062013-10-11 19:07:18124 'system/raw_channel_posix_unittest.cc',
[email protected]3d58663b2013-09-28 00:30:04125 'system/simple_dispatcher_unittest.cc',
[email protected]b334246d2013-10-24 00:08:57126 'system/test_utils.cc',
[email protected]3d58663b2013-09-28 00:30:04127 'system/test_utils.h',
128 'system/waiter_list_unittest.cc',
129 'system/waiter_test_utils.cc',
130 'system/waiter_test_utils.h',
131 'system/waiter_unittest.cc',
132 ],
[email protected]02657da2013-09-16 02:55:18133 },
[email protected]6cf6ca52013-10-10 20:52:11134 {
[email protected]786d75c2013-10-24 20:29:35135 'target_name': 'mojo_shell_lib',
136 'type': 'static_library',
[email protected]6cf6ca52013-10-10 20:52:11137 'dependencies': [
138 '../base/base.gyp:base',
[email protected]eba6f512013-10-19 00:17:09139 '../net/net.gyp:net',
[email protected]3c448302013-10-22 08:39:08140 '../url/url.gyp:url_lib',
[email protected]6cf6ca52013-10-10 20:52:11141 'mojo_system',
142 ],
143 'sources': [
[email protected]6cf6ca52013-10-10 20:52:11144 'shell/app_container.cc',
145 'shell/app_container.h',
[email protected]6e50d5e42013-10-27 02:45:46146 'shell/context.cc',
147 'shell/context.h',
[email protected]0be9b242013-10-28 06:28:38148 'shell/loader.cc',
149 'shell/loader.h',
[email protected]adeb6f72013-10-25 08:05:02150 'shell/run.cc',
151 'shell/run.h',
[email protected]eba6f512013-10-19 00:17:09152 'shell/storage.cc',
153 'shell/storage.h',
[email protected]6cf6ca52013-10-10 20:52:11154 'shell/switches.cc',
155 'shell/switches.h',
[email protected]eba6f512013-10-19 00:17:09156 'shell/task_runners.cc',
157 'shell/task_runners.h',
[email protected]0be9b242013-10-28 06:28:38158 'shell/url_request_context_getter.cc',
159 'shell/url_request_context_getter.h',
[email protected]6cf6ca52013-10-10 20:52:11160 ],
[email protected]6838e3c2013-10-11 20:16:22161 'conditions': [
162 ['OS == "win"', {
163 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
164 'msvs_disabled_warnings': [
165 4267,
166 ],
167 }],
168 ],
[email protected]6cf6ca52013-10-10 20:52:11169 },
170 {
[email protected]786d75c2013-10-24 20:29:35171 'target_name': 'mojo_shell',
172 'type': 'executable',
173 'dependencies': [
174 '../base/base.gyp:base',
175 '../url/url.gyp:url_lib',
176 'mojo_shell_lib',
177 'mojo_system',
178 ],
179 'sources': [
[email protected]adeb6f72013-10-25 08:05:02180 'shell/desktop/mojo_main.cc',
[email protected]786d75c2013-10-24 20:29:35181 ],
182 'conditions': [
183 ['OS == "win"', {
184 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
185 'msvs_disabled_warnings': [
186 4267,
187 ],
188 }],
189 ],
190 },
191 {
[email protected]6cf6ca52013-10-10 20:52:11192 'target_name': 'sample_app',
[email protected]e5fc9bff2013-10-27 09:48:47193 'type': 'shared_library',
[email protected]6cf6ca52013-10-10 20:52:11194 'dependencies': [
195 '../base/base.gyp:base',
196 'mojo_system',
197 ],
198 'sources': [
[email protected]0be9b242013-10-28 06:28:38199 'examples/sample_app/sample_app.cc',
[email protected]6cf6ca52013-10-10 20:52:11200 ],
201 },
[email protected]6838e3c2013-10-11 20:16:22202 {
203 'target_name': 'mojo_bindings',
204 'type': 'static_library',
205 'include_dirs': [
206 '..'
207 ],
208 'sources': [
209 'public/bindings/lib/bindings.h',
210 'public/bindings/lib/bindings_internal.h',
211 'public/bindings/lib/bindings_serialization.cc',
212 'public/bindings/lib/bindings_serialization.h',
213 'public/bindings/lib/buffer.cc',
214 'public/bindings/lib/buffer.h',
215 'public/bindings/lib/message.cc',
216 'public/bindings/lib/message.h',
217 'public/bindings/lib/message_builder.cc',
218 'public/bindings/lib/message_builder.h',
219 ],
220 },
221 {
222 'target_name': 'mojo_bindings_test',
223 'type': 'executable',
224 'include_dirs': [
225 '..'
226 ],
227 'dependencies': [
228 'mojo_bindings',
229 ],
230 'sources': [
231 'public/bindings/sample/generated/sample_service.h',
232 'public/bindings/sample/generated/sample_service_proxy.cc',
233 'public/bindings/sample/generated/sample_service_serialization.h',
234 'public/bindings/sample/generated/sample_service_stub.cc',
235 'public/bindings/sample/sample_test.cc',
236 ],
237 },
[email protected]02657da2013-09-16 02:55:18238 ],
[email protected]786d75c2013-10-24 20:29:35239 'conditions': [
240 ['OS=="android"', {
241 'targets': [
242 {
[email protected]adeb6f72013-10-25 08:05:02243 'target_name': 'java_set_jni_headers',
244 'type': 'none',
245 'variables': {
246 'jni_gen_package': 'mojo',
247 'input_java_class': 'java/util/HashSet.class',
248 },
249 'includes': [ '../build/jar_file_jni_generator.gypi' ],
250 },
251 {
252 'target_name': 'mojo_jni_headers',
253 'type': 'none',
254 'dependencies': [
255 'java_set_jni_headers',
256 ],
257 'direct_dependent_settings': {
258 'include_dirs': [
259 '<(SHARED_INTERMEDIATE_DIR)/mojo',
260 ],
261 },
262 'sources': [
[email protected]0be9b242013-10-28 06:28:38263 'shell/android/apk/src/org/chromium/mojo_shell_apk/MojoMain.java',
[email protected]adeb6f72013-10-25 08:05:02264 ],
265 'variables': {
266 'jni_gen_package': 'mojo'
267 },
268 'includes': [ '../build/jni_generator.gypi' ],
269 },
270 {
[email protected]786d75c2013-10-24 20:29:35271 'target_name': 'libmojo_shell',
272 'type': 'shared_library',
273 'dependencies': [
274 '../base/base.gyp:base',
[email protected]adeb6f72013-10-25 08:05:02275 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
276 'mojo_jni_headers',
[email protected]786d75c2013-10-24 20:29:35277 'mojo_shell_lib',
278 ],
279 'sources': [
280 'shell/android/library_loader.cc',
[email protected]adeb6f72013-10-25 08:05:02281 'shell/android/mojo_main.cc',
282 'shell/android/mojo_main.h',
[email protected]786d75c2013-10-24 20:29:35283 ],
284 },
285 {
286 'target_name': 'mojo_shell_apk',
287 'type': 'none',
288 'dependencies': [
289 '../base/base.gyp:base_java',
290 '../net/net.gyp:net_java',
291 'libmojo_shell',
292 ],
293 'variables': {
294 'apk_name': 'MojoShell',
[email protected]0be9b242013-10-28 06:28:38295 'java_in_dir': '<(DEPTH)/mojo/shell/android/apk',
296 'resource_dir': '<(DEPTH)/mojo/shell/android/apk/res',
[email protected]786d75c2013-10-24 20:29:35297 'native_lib_target': 'libmojo_shell',
298 },
299 'includes': [ '../build/java_apk.gypi' ],
300 }
301 ],
302 }],
303 ],
[email protected]02657da2013-09-16 02:55:18304}