blob: b921672ac9cf1491778bb6689f85c1d72233ae3b [file] [log] [blame]
[email protected]a154f3b2012-03-12 06:50:581# Copyright (c) 2012 The Chromium Authors. All rights reserved.
[email protected]0dd3a0ab2011-02-18 08:17:442# 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': {
7 'chromium_code': 1, # Use higher warning level.
[email protected]4282e2042013-05-17 03:43:158 'chromium_enable_vtune_jit_for_v8%': 0, # enable the vtune support for V8 engine.
[email protected]476035d2011-09-14 01:42:529 'directxsdk_exists': '<!(python <(DEPTH)/build/dir_exists.py ../third_party/directxsdk)',
[email protected]0dd3a0ab2011-02-18 08:17:4410 },
[email protected]03ff5e52011-09-30 00:28:1411 'target_defaults': {
12 'defines': ['CONTENT_IMPLEMENTATION'],
[email protected]ee582a52012-05-22 07:38:5213 'conditions': [
[email protected]88bc2cb2013-02-03 19:30:2614 # TODO(jschuh): Remove this after crbug.com/173851 gets fixed.
15 ['OS=="win" and target_arch=="x64"', {
16 'msvs_settings': {
17 'VCCLCompilerTool': {
18 'AdditionalOptions': ['/bigobj'],
19 },
20 },
21 }],
[email protected]ee582a52012-05-22 07:38:5222 ],
[email protected]03ff5e52011-09-30 00:28:1423 },
[email protected]476035d2011-09-14 01:42:5224 'conditions': [
[email protected]9f58ace2012-09-07 22:48:3325 ['OS != "ios"', {
26 'includes': [
27 '../build/win_precompile.gypi',
[email protected]9f58ace2012-09-07 22:48:3328 ],
29 }],
30 # In component mode, we build all of content as a single DLL.
31 # However, in the static mode, we need to build content as multiple
32 # targets in order to prevent dependencies from getting introduced
33 # upstream unnecessarily (e.g., content_renderer depends on allocator
34 # and chrome_exe depends on content_common but we don't want
35 # chrome_exe to have to depend on allocator).
36 ['component=="static_library"', {
37 'target_defines': [
38 'COMPILE_CONTENT_STATICALLY',
39 ],
40 'targets': [
41 {
42 'target_name': 'content',
43 'type': 'none',
44 'dependencies': [
[email protected]9f58ace2012-09-07 22:48:3345 'content_browser',
46 'content_common',
47 ],
48 'conditions': [
[email protected]1ff64292013-07-18 20:37:1549 ['OS != "ios"', {
[email protected]9f58ace2012-09-07 22:48:3350 'dependencies': [
[email protected]77a5d4d2013-08-27 14:05:5951 'content_child',
[email protected]9f58ace2012-09-07 22:48:3352 'content_gpu',
53 'content_plugin',
54 'content_ppapi_plugin',
55 'content_renderer',
56 'content_utility',
57 'content_worker',
58 ],
59 }],
60 ],
61 },
62 {
[email protected]c955a8d2013-08-06 02:51:1563 'target_name': 'content_app_browser',
[email protected]9f58ace2012-09-07 22:48:3364 'type': 'static_library',
65 'variables': { 'enable_wexit_time_destructors': 1, },
66 'includes': [
67 'content_app.gypi',
68 ],
69 'dependencies': [
70 'content_common',
71 ],
[email protected]1ff64292013-07-18 20:37:1572 'conditions': [
73 ['chrome_multiple_dll', {
74 'defines': [
75 'CHROME_MULTIPLE_DLL_BROWSER',
76 ],
77 }],
78 ],
79 },
80 {
81 'target_name': 'content_app_child',
82 'type': 'static_library',
83 'variables': { 'enable_wexit_time_destructors': 1, },
84 'includes': [
85 'content_app.gypi',
86 ],
87 'dependencies': [
88 'content_common',
89 ],
90 'conditions': [
91 ['chrome_multiple_dll', {
92 'defines': [
93 'CHROME_MULTIPLE_DLL_CHILD',
94 ],
95 }],
96 ],
[email protected]9f58ace2012-09-07 22:48:3397 },
98 {
[email protected]c955a8d2013-08-06 02:51:1599 'target_name': 'content_app_both',
100 'type': 'static_library',
101 'variables': { 'enable_wexit_time_destructors': 1, },
102 'includes': [
103 'content_app.gypi',
104 ],
105 'dependencies': [
106 'content_common',
107 ],
108 },
109 {
[email protected]9f58ace2012-09-07 22:48:33110 'target_name': 'content_browser',
111 'type': 'static_library',
112 'variables': { 'enable_wexit_time_destructors': 1, },
113 'includes': [
114 'content_browser.gypi',
115 ],
116 'dependencies': [
[email protected]71abef6e2013-01-16 09:12:59117 'content_common',
118 'content_resources.gyp:content_resources',
119 ],
120 'conditions': [
[email protected]8707caa2013-09-04 16:41:30121 ['java_bridge==1', {
122 'dependencies': [
123 'content_child',
124 ]
125 }],
126 ['OS=="android"', {
[email protected]71abef6e2013-01-16 09:12:59127 'dependencies': [
128 'content_gpu',
[email protected]6d057a0c2013-07-09 21:12:07129 'content_utility',
[email protected]71abef6e2013-01-16 09:12:59130 ],
131 }],
[email protected]9f58ace2012-09-07 22:48:33132 ],
133 },
134 {
135 'target_name': 'content_common',
136 'type': 'static_library',
137 'variables': { 'enable_wexit_time_destructors': 1, },
138 'includes': [
139 'content_common.gypi',
140 ],
141 'conditions': [
142 ['OS != "ios"', {
143 'dependencies': [
144 'content_resources.gyp:content_resources',
145 ],
146 }],
147 ],
[email protected]a26bc6942013-02-13 15:29:02148 # Disable c4267 warnings until we fix size_t to int truncations.
149 'msvs_disabled_warnings': [ 4267, ],
[email protected]9f58ace2012-09-07 22:48:33150 },
151 ],
152 'conditions': [
153 ['OS != "ios"', {
154 'targets': [
155 {
[email protected]77a5d4d2013-08-27 14:05:59156 'target_name': 'content_child',
157 'type': 'static_library',
158 'variables': { 'enable_wexit_time_destructors': 1, },
159 'includes': [
160 'content_child.gypi',
161 ],
162 'dependencies': [
163 'content_resources.gyp:content_resources',
164 ],
165 # Disable c4267 warnings until we fix size_t to int truncations.
166 'msvs_disabled_warnings': [ 4267, ],
167 },
168 {
[email protected]9f58ace2012-09-07 22:48:33169 'target_name': 'content_gpu',
170 'type': 'static_library',
171 'variables': { 'enable_wexit_time_destructors': 1, },
172 'includes': [
173 'content_gpu.gypi',
174 ],
175 'dependencies': [
[email protected]57fdef4b2013-07-23 15:33:38176 'content_child',
[email protected]9f58ace2012-09-07 22:48:33177 'content_common',
178 ],
179 },
180 {
181 'target_name': 'content_plugin',
182 'type': 'static_library',
183 'variables': { 'enable_wexit_time_destructors': 1, },
184 'includes': [
185 'content_plugin.gypi',
186 ],
187 'dependencies': [
[email protected]c7199a6e2013-06-04 12:56:01188 'content_child',
[email protected]9f58ace2012-09-07 22:48:33189 'content_common',
190 ],
191 },
192 {
193 'target_name': 'content_ppapi_plugin',
194 'type': 'static_library',
195 'variables': { 'enable_wexit_time_destructors': 1, },
196 'includes': [
197 'content_ppapi_plugin.gypi',
198 ],
[email protected]a26bc6942013-02-13 15:29:02199 # Disable c4267 warnings until we fix size_t to int truncations.
200 'msvs_disabled_warnings': [ 4267, ],
[email protected]9f58ace2012-09-07 22:48:33201 },
202 {
203 'target_name': 'content_renderer',
204 'type': 'static_library',
205 'variables': { 'enable_wexit_time_destructors': 1, },
206 'includes': [
207 'content_renderer.gypi',
208 ],
209 'dependencies': [
[email protected]c7199a6e2013-06-04 12:56:01210 'content_child',
[email protected]9f58ace2012-09-07 22:48:33211 'content_common',
212 'content_resources.gyp:content_resources',
213 ],
[email protected]4282e2042013-05-17 03:43:15214 'conditions': [
215 ['chromium_enable_vtune_jit_for_v8==1', {
216 'dependencies': [
217 '../v8/src/third_party/vtune/v8vtune.gyp:v8_vtune',
218 ],
219 }],
220 ],
[email protected]9f58ace2012-09-07 22:48:33221 },
222 {
223 'target_name': 'content_utility',
224 'type': 'static_library',
225 'variables': { 'enable_wexit_time_destructors': 1, },
226 'includes': [
227 'content_utility.gypi',
228 ],
229 'dependencies': [
[email protected]57fdef4b2013-07-23 15:33:38230 'content_child',
[email protected]9f58ace2012-09-07 22:48:33231 'content_common',
232 ],
233 },
234 {
235 'target_name': 'content_worker',
236 'type': 'static_library',
237 'variables': { 'enable_wexit_time_destructors': 1, },
238 'includes': [
239 'content_worker.gypi',
240 ],
241 'dependencies': [
[email protected]c7199a6e2013-06-04 12:56:01242 'content_child',
[email protected]9f58ace2012-09-07 22:48:33243 'content_common',
244 ],
245 },
246 ],
247 }],
248 ],
[email protected]476035d2011-09-14 01:42:52249 },
[email protected]9f58ace2012-09-07 22:48:33250 { # component != static_library
251 'targets': [
252 {
253 'target_name': 'content',
254 'type': 'shared_library',
255 'variables': { 'enable_wexit_time_destructors': 1, },
256 'dependencies': [
257 'content_resources.gyp:content_resources',
258 ],
259 'conditions': [
260 ['OS=="mac"', {
261 'dependencies': [
262 '<(DEPTH)/third_party/mach_override/mach_override.gyp:mach_override',
263 ],
264 }],
[email protected]4282e2042013-05-17 03:43:15265 ['chromium_enable_vtune_jit_for_v8==1', {
266 'dependencies': [
267 '../v8/src/third_party/vtune/v8vtune.gyp:v8_vtune',
268 ],
269 }],
[email protected]9f58ace2012-09-07 22:48:33270 ],
271 'includes': [
272 'content_app.gypi',
273 'content_browser.gypi',
[email protected]c7199a6e2013-06-04 12:56:01274 'content_child.gypi',
[email protected]9f58ace2012-09-07 22:48:33275 'content_common.gypi',
276 'content_gpu.gypi',
277 'content_plugin.gypi',
278 'content_ppapi_plugin.gypi',
279 'content_renderer.gypi',
280 'content_utility.gypi',
281 'content_worker.gypi',
282 ],
283 'msvs_settings': {
284 'VCLinkerTool': {
285 'conditions': [
286 ['incremental_chrome_dll==1', {
287 'UseLibraryDependencyInputs': "true",
288 }],
289 ],
290 },
291 },
292 },
293 {
[email protected]c955a8d2013-08-06 02:51:15294 'target_name': 'content_app_browser',
[email protected]9f58ace2012-09-07 22:48:33295 'type': 'none',
296 'dependencies': ['content', 'content_browser'],
297 },
298 {
[email protected]1ff64292013-07-18 20:37:15299 'target_name': 'content_app_child',
300 'type': 'none',
301 'dependencies': ['content', 'content_child'],
302 },
303 {
[email protected]c955a8d2013-08-06 02:51:15304 'target_name': 'content_app_both',
305 'type': 'none',
306 'dependencies': ['content'],
307 },
308 {
[email protected]9f58ace2012-09-07 22:48:33309 'target_name': 'content_browser',
310 'type': 'none',
311 'dependencies': ['content'],
312 },
313 {
314 'target_name': 'content_common',
315 'type': 'none',
316 'dependencies': ['content', 'content_resources.gyp:content_resources'],
[email protected]a26bc6942013-02-13 15:29:02317 # Disable c4267 warnings until we fix size_t to int truncations.
318 'msvs_disabled_warnings': [ 4267, ],
[email protected]9f58ace2012-09-07 22:48:33319 },
320 {
[email protected]c7199a6e2013-06-04 12:56:01321 'target_name': 'content_child',
[email protected]da816272013-05-15 21:31:17322 'type': 'none',
323 'dependencies': ['content'],
324 },
325 {
[email protected]9f58ace2012-09-07 22:48:33326 'target_name': 'content_gpu',
327 'type': 'none',
328 'dependencies': ['content'],
329 },
330 {
331 'target_name': 'content_plugin',
332 'type': 'none',
333 'dependencies': ['content'],
334 },
335 {
336 'target_name': 'content_ppapi_plugin',
337 'type': 'none',
338 'dependencies': ['content'],
[email protected]a26bc6942013-02-13 15:29:02339 # Disable c4267 warnings until we fix size_t to int truncations.
340 'msvs_disabled_warnings': [ 4267, ],
[email protected]9f58ace2012-09-07 22:48:33341 },
342 {
343 'target_name': 'content_renderer',
344 'type': 'none',
345 'dependencies': ['content'],
346 },
347 {
348 'target_name': 'content_utility',
349 'type': 'none',
350 'dependencies': ['content'],
351 },
352 {
353 'target_name': 'content_worker',
354 'type': 'none',
355 'dependencies': ['content'],
356 },
357 ],
358 }],
359 ['OS == "android"', {
360 'targets': [
361 {
362 'target_name': 'common_aidl',
363 'type': 'none',
364 'variables': {
[email protected]9f58ace2012-09-07 22:48:33365 'aidl_interface_file': 'public/android/java/src/org/chromium/content/common/common.aidl',
366 },
367 'sources': [
[email protected]cee179e2013-03-19 01:43:36368 'public/android/java/src/org/chromium/content/common/IChildProcessCallback.aidl',
369 'public/android/java/src/org/chromium/content/common/IChildProcessService.aidl',
[email protected]9f58ace2012-09-07 22:48:33370 ],
371 'includes': [ '../build/java_aidl.gypi' ],
372 },
373 {
374 'target_name': 'content_java',
375 'type': 'none',
376 'dependencies': [
[email protected]bb6bd1f2012-09-10 15:52:47377 '../base/base.gyp:base',
[email protected]4d4eb5b2013-01-29 21:55:55378 '../media/media.gyp:media_java',
[email protected]bb6bd1f2012-09-10 15:52:47379 '../net/net.gyp:net',
[email protected]f450287d2013-11-15 17:52:54380 '../ui/android/ui_android.gyp:ui_java',
[email protected]9f58ace2012-09-07 22:48:33381 'common_aidl',
382 'content_common',
[email protected]a253247d2014-02-11 02:32:28383 'gesture_event_type_java',
[email protected]ec8879e82012-12-16 05:32:40384 'page_transition_types_java',
[email protected]7b01f28d2013-12-05 00:26:57385 'popup_item_type_java',
[email protected]f804551d2013-03-07 04:12:13386 'result_codes_java',
[email protected]6c590042013-06-14 12:23:26387 'speech_recognition_error_java',
[email protected]9b003482013-05-21 14:00:17388 'top_controls_state_java',
[email protected]9f58ace2012-09-07 22:48:33389 ],
[email protected]9f58ace2012-09-07 22:48:33390 'variables': {
[email protected]9f58ace2012-09-07 22:48:33391 'java_in_dir': '../content/public/android/java',
[email protected]3ac503672012-11-16 20:39:20392 'has_java_resources': 1,
393 'R_package': 'org.chromium.content',
394 'R_package_relpath': 'org/chromium/content',
[email protected]8f097c22013-01-16 17:54:42395 'java_strings_grd': 'android_content_strings.grd',
[email protected]9f58ace2012-09-07 22:48:33396 },
[email protected]98e1d8d12012-12-14 19:31:42397 'conditions': [
[email protected]d999c3cb2013-03-12 10:22:36398 ['android_webview_build == 0', {
[email protected]98e1d8d12012-12-14 19:31:42399 'dependencies': [
400 '../third_party/eyesfree/eyesfree.gyp:eyesfree_java',
[email protected]89ad5972013-01-08 22:18:05401 '../third_party/guava/guava.gyp:guava_javalib',
[email protected]98e1d8d12012-12-14 19:31:42402 ],
403 }],
404 ],
[email protected]9f58ace2012-09-07 22:48:33405 'includes': [ '../build/java.gypi' ],
406 },
407 {
[email protected]a253247d2014-02-11 02:32:28408 'target_name': 'gesture_event_type_java',
409 'type': 'none',
410 'sources': [
411 'public/android/java/src/org/chromium/content/browser/GestureEventType.template',
412 ],
413 'variables': {
414 'package_name': 'org/chromium/content/browser',
415 'template_deps': ['browser/android/gesture_event_type_list.h'],
416 },
417 'includes': [ '../build/android/java_cpp_template.gypi' ],
418 },
419 {
[email protected]ec8879e82012-12-16 05:32:40420 'target_name': 'page_transition_types_java',
421 'type': 'none',
422 'sources': [
[email protected]ec8879e82012-12-16 05:32:40423 'public/android/java/src/org/chromium/content/browser/PageTransitionTypes.template',
424 ],
425 'variables': {
[email protected]1b19c9a1e2013-03-02 16:39:08426 'package_name': 'org/chromium/content/browser',
[email protected]2716d84e2013-01-19 04:05:48427 'template_deps': ['public/common/page_transition_types_list.h'],
[email protected]ec8879e82012-12-16 05:32:40428 },
429 'includes': [ '../build/android/java_cpp_template.gypi' ],
430 },
431 {
[email protected]7b01f28d2013-12-05 00:26:57432 'target_name': 'popup_item_type_java',
433 'type': 'none',
434 'sources': [
435 'public/android/java/src/org/chromium/content/browser/input/PopupItemType.template',
436 ],
437 'variables': {
438 'package_name': 'org/chromium/content/browser/input',
439 'template_deps': ['browser/android/popup_item_type_list.h'],
440 },
441 'includes': [ '../build/android/java_cpp_template.gypi' ],
442 },
443 {
[email protected]f804551d2013-03-07 04:12:13444 'target_name': 'result_codes_java',
445 'type': 'none',
446 'sources': [
447 'public/android/java/src/org/chromium/content/common/ResultCodes.template',
448 ],
449 'variables': {
450 'package_name': 'org/chromium/content/common',
451 'template_deps': ['public/common/result_codes_list.h'],
452 },
453 'includes': [ '../build/android/java_cpp_template.gypi' ],
454 },
455 {
[email protected]6c590042013-06-14 12:23:26456 'target_name': 'speech_recognition_error_java',
457 'type': 'none',
458 'sources': [
459 'public/android/java/src/org/chromium/content/browser/SpeechRecognitionError.template',
460 ],
461 'variables': {
462 'package_name': 'org/chromium/content/browser',
463 'template_deps': ['public/common/speech_recognition_error_list.h'],
464 },
465 'includes': [ '../build/android/java_cpp_template.gypi' ],
466 },
467 {
[email protected]9b003482013-05-21 14:00:17468 'target_name': 'top_controls_state_java',
469 'type': 'none',
470 'sources': [
471 'public/android/java/src/org/chromium/content/common/TopControlsState.template',
472 ],
473 'variables': {
474 'package_name': 'org/chromium/content/common',
475 'template_deps': ['public/common/top_controls_state_list.h'],
476 },
477 'includes': [ '../build/android/java_cpp_template.gypi' ],
478 },
479 {
[email protected]4cc1ab52013-01-21 19:24:34480 'target_name': 'java_set_jni_headers',
481 'type': 'none',
482 'variables': {
[email protected]521cd942013-03-07 22:34:05483 'jni_gen_package': 'content',
[email protected]4cc1ab52013-01-21 19:24:34484 'input_java_class': 'java/util/HashSet.class',
[email protected]4cc1ab52013-01-21 19:24:34485 },
486 'includes': [ '../build/jar_file_jni_generator.gypi' ],
487 },
[email protected]2b17b8ab2013-11-10 00:32:58488 {
[email protected]c6b57942014-01-31 22:00:05489 'target_name': 'motionevent_jni_headers',
490 'type': 'none',
491 'variables': {
492 'jni_gen_package': 'content',
493 'jni_generator_ptr_type': 'long',
494 'input_java_class': 'android/view/MotionEvent.class',
495 },
496 'includes': [ '../build/jar_file_jni_generator.gypi' ],
497 },
498 {
[email protected]9f58ace2012-09-07 22:48:33499 'target_name': 'content_jni_headers',
500 'type': 'none',
[email protected]33cb2c352012-09-24 11:01:41501 'dependencies': [
[email protected]c6b57942014-01-31 22:00:05502 'java_set_jni_headers',
503 'motionevent_jni_headers'
[email protected]33cb2c352012-09-24 11:01:41504 ],
[email protected]9f58ace2012-09-07 22:48:33505 'includes': [ 'content_jni.gypi' ],
506 },
507 ],
508 }], # OS == "android"
[email protected]0dd3a0ab2011-02-18 08:17:44509 ],
510}