1 # Copyright (c) 2012 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.
7 'chromium_code': 1, # Use higher warning level.
8 'chromium_enable_vtune_jit_for_v8%': 0, # enable the vtune support for V8 engine.
9 'directxsdk_exists': '<!pymod_do_main(dir_exists ../third_party/directxsdk)',
12 'defines': ['CONTENT_IMPLEMENTATION'],
14 # TODO(jschuh): Remove this after crbug.com/173851 gets fixed.
15 ['OS=="win" and target_arch=="x64"', {
18 'AdditionalOptions': ['/bigobj'],
27 '../build/win_precompile.gypi',
28 'content_resources.gypi',
34 'target_name': 'content_startup_helper_win',
35 'type': 'static_library',
40 '../base/base.gyp:base',
41 '../base/base.gyp:base_i18n',
42 '../sandbox/sandbox.gyp:sandbox',
45 'app/startup_helper_win.cc',
46 'public/app/startup_helper_win.h',
51 # In component mode, we build all of content as a single DLL.
52 # However, in the static mode, we need to build content as multiple
53 # targets in order to prevent dependencies from getting introduced
54 # upstream unnecessarily (e.g., content_renderer depends on allocator
55 # and chrome_exe depends on content_common but we don't want
56 # chrome_exe to have to depend on allocator).
57 ['component=="static_library"', {
59 'COMPILE_CONTENT_STATICALLY',
63 # GN version: //content
64 'target_name': 'content',
70 'export_dependent_settings': [
79 'content_ppapi_plugin',
87 # GN version: //content/app:browser
88 'target_name': 'content_app_browser',
89 'type': 'static_library',
90 'variables': { 'enable_wexit_time_destructors': 1, },
97 'export_dependent_settings': [
101 ['chrome_multiple_dll', {
103 'CHROME_MULTIPLE_DLL_BROWSER',
109 # GN version: //content/app:child
110 'target_name': 'content_app_child',
111 'type': 'static_library',
112 'variables': { 'enable_wexit_time_destructors': 1, },
119 'export_dependent_settings': [
123 ['chrome_multiple_dll', {
125 'CHROME_MULTIPLE_DLL_CHILD',
131 # GN version: //content/app:both
132 'target_name': 'content_app_both',
133 'type': 'static_library',
134 'variables': { 'enable_wexit_time_destructors': 1, },
141 'export_dependent_settings': [
146 # GN version: //content/browser and //content/public/browser
147 'target_name': 'content_browser',
148 'type': 'static_library',
149 'variables': { 'enable_wexit_time_destructors': 1, },
151 'content_browser.gypi',
152 # Disable LTO due to ELF section name out of range
154 '../build/android/disable_lto.gypi',
159 'export_dependent_settings': [
182 # GN version: //content/common and //content/public/common
183 'target_name': 'content_common',
184 'type': 'static_library',
185 'variables': { 'enable_wexit_time_destructors': 1, },
187 'content_common.gypi',
196 # Disable c4267 warnings until we fix size_t to int truncations.
197 'msvs_disabled_warnings': [ 4267, ],
204 # GN version: //content/child and //content/public/child
205 'target_name': 'content_child',
206 'type': 'static_library',
207 'variables': { 'enable_wexit_time_destructors': 1, },
209 'content_child.gypi',
214 # Disable c4267 warnings until we fix size_t to int truncations.
215 'msvs_disabled_warnings': [ 4267, ],
218 # GN version: //content/gpu
219 'target_name': 'content_gpu',
220 'type': 'static_library',
221 'variables': { 'enable_wexit_time_destructors': 1, },
231 # GN version: //content/plugin and //content/public/plugin
232 'target_name': 'content_plugin',
233 'type': 'static_library',
234 'variables': { 'enable_wexit_time_destructors': 1, },
236 'content_plugin.gypi',
244 # GN version: //content/ppapi_plugin
245 'target_name': 'content_ppapi_plugin',
246 'type': 'static_library',
247 'variables': { 'enable_wexit_time_destructors': 1, },
249 'content_ppapi_plugin.gypi',
251 # Disable c4267 warnings until we fix size_t to int truncations.
252 'msvs_disabled_warnings': [ 4267, ],
255 # GN version: //content/renderer and //content/public/renderer
256 'target_name': 'content_renderer',
257 'type': 'static_library',
258 'variables': { 'enable_wexit_time_destructors': 1, },
260 'content_renderer.gypi',
267 'export_dependent_settings': [
271 ['chromium_enable_vtune_jit_for_v8==1', {
273 '../v8/src/third_party/vtune/v8vtune.gyp:v8_vtune',
279 # GN version: //content/utility and //content/public/utility
280 'target_name': 'content_utility',
281 'type': 'static_library',
282 'variables': { 'enable_wexit_time_destructors': 1, },
284 'content_utility.gypi',
295 { # component != static_library
298 # GN version: //content
299 'target_name': 'content',
300 'type': 'shared_library',
301 'variables': { 'enable_wexit_time_destructors': 1, },
306 ['chromium_enable_vtune_jit_for_v8==1', {
308 '../v8/src/third_party/vtune/v8vtune.gyp:v8_vtune',
314 'content_browser.gypi',
315 'content_child.gypi',
316 'content_common.gypi',
318 'content_plugin.gypi',
319 'content_ppapi_plugin.gypi',
320 'content_renderer.gypi',
321 'content_utility.gypi',
326 ['incremental_chrome_dll==1', {
327 'UseLibraryDependencyInputs': "true",
334 # GN version: //content/app:browser
335 'target_name': 'content_app_browser',
337 'dependencies': ['content', 'content_browser'],
340 # GN version: //content/app:child
341 'target_name': 'content_app_child',
343 'dependencies': ['content', 'content_child'],
346 # GN version: //content/app:both
347 'target_name': 'content_app_both',
349 'dependencies': ['content'],
350 'export_dependent_settings': ['content'],
353 # GN version: //content/browser and //content/public/browser
354 'target_name': 'content_browser',
356 'dependencies': ['content'],
357 'export_dependent_settings': ['content'],
360 # GN version: //content/common and //content/public/common
361 'target_name': 'content_common',
363 'dependencies': ['content', 'content_resources'],
364 # Disable c4267 warnings until we fix size_t to int truncations.
365 'msvs_disabled_warnings': [ 4267, ],
366 'export_dependent_settings': ['content'],
369 # GN Version: //content/child
370 'target_name': 'content_child',
372 'dependencies': ['content'],
375 # GN version: //content/gpu
376 'target_name': 'content_gpu',
378 'dependencies': ['content'],
381 # GN version: //content/plugin
382 'target_name': 'content_plugin',
384 'dependencies': ['content'],
387 # GN version: //content/ppapi_plugin
388 'target_name': 'content_ppapi_plugin',
390 'dependencies': ['content'],
391 # Disable c4267 warnings until we fix size_t to int truncations.
392 'msvs_disabled_warnings': [ 4267, ],
395 # GN version: //content/renderer and //content/public/renderer
396 'target_name': 'content_renderer',
398 'dependencies': ['content'],
399 'export_dependent_settings': ['content'],
402 # GN version: //content/utility
403 'target_name': 'content_utility',
405 'dependencies': ['content'],
406 'export_dependent_settings': ['content'],
410 ['OS == "android"', {
413 'target_name': 'common_aidl',
416 'aidl_interface_file': 'public/android/java/src/org/chromium/content/common/common.aidl',
417 'aidl_import_include': 'public/android/java/src',
420 'public/android/java/src/org/chromium/content/common/IChildProcessCallback.aidl',
421 'public/android/java/src/org/chromium/content/common/IChildProcessService.aidl',
423 'includes': [ '../build/java_aidl.gypi' ],
426 'target_name': 'content_java',
429 '../base/base.gyp:base',
430 '../device/battery/battery.gyp:device_battery_java',
431 '../device/vibration/vibration.gyp:device_vibration_java',
432 '../media/media.gyp:media_java',
433 '../mojo/mojo_base.gyp:mojo_system_java',
434 '../net/net.gyp:net',
435 '../third_party/mojo/mojo_public.gyp:mojo_application_bindings',
436 '../third_party/mojo/mojo_public.gyp:mojo_bindings_java',
437 '../ui/android/ui_android.gyp:ui_java',
438 '../ui/touch_selection/ui_touch_selection.gyp:selection_event_type_java',
439 '../ui/touch_selection/ui_touch_selection.gyp:touch_handle_orientation_java',
440 '../third_party/WebKit/public/blink_headers.gyp:blink_headers_java',
442 'console_message_level_java',
444 'content_strings_grd',
445 'content_gamepad_mapping',
446 'gesture_event_type_java',
447 'navigation_controller_java',
448 'popup_item_type_java',
450 'speech_recognition_error_java',
451 'top_controls_state_java',
452 'screen_orientation_values_java',
455 'java_in_dir': '../content/public/android/java',
456 'has_java_resources': 1,
457 'R_package': 'org.chromium.content',
458 'R_package_relpath': 'org/chromium/content',
460 'includes': [ '../build/java.gypi' ],
463 'target_name': 'console_message_level_java',
466 'source_file': 'public/common/console_message_level.h',
468 'includes': [ '../build/android/java_cpp_enum.gypi' ],
471 'target_name': 'content_strings_grd',
472 # The android_webview/Android.mk file depends on this target directly.
473 'android_unmangled_name': 1,
476 'grd_file': '../content/public/android/java/strings/android_content_strings.grd',
479 '../build/java_strings_grd.gypi',
483 'target_name': 'content_gamepad_mapping',
486 'source_file': 'browser/gamepad/gamepad_standard_mappings.h',
488 'includes': [ '../build/android/java_cpp_enum.gypi' ],
491 'target_name': 'gesture_event_type_java',
494 'source_file': 'browser/android/gesture_event_type.h',
496 'includes': [ '../build/android/java_cpp_enum.gypi' ],
499 'target_name': 'navigation_controller_java',
502 'source_file': 'public/browser/navigation_controller.h',
504 'includes': [ '../build/android/java_cpp_enum.gypi' ],
507 'target_name': 'popup_item_type_java',
510 'source_file': 'browser/android/content_view_core_impl.cc',
512 'includes': [ '../build/android/java_cpp_enum.gypi' ],
515 'target_name': 'result_codes_java',
518 'source_file': 'public/common/result_codes.h',
520 'includes': [ '../build/android/java_cpp_enum.gypi' ],
523 'target_name': 'speech_recognition_error_java',
526 'source_file': 'public/common/speech_recognition_error.h',
528 'includes': [ '../build/android/java_cpp_enum.gypi' ],
531 'target_name': 'top_controls_state_java',
534 'source_file': 'public/common/top_controls_state.h',
536 'includes': [ '../build/android/java_cpp_enum.gypi' ],
539 'target_name': 'screen_orientation_values_java',
542 'source_file': 'public/common/screen_orientation_values.h',
544 'includes': [ '../build/android/java_cpp_enum.gypi' ],
547 'target_name': 'java_set_jni_headers',
550 'jni_gen_package': 'content',
551 'input_java_class': 'java/util/HashSet.class',
553 'includes': [ '../build/jar_file_jni_generator.gypi' ],
556 'target_name': 'motionevent_jni_headers',
559 'jni_gen_package': 'content',
560 'input_java_class': 'android/view/MotionEvent.class',
562 'includes': [ '../build/jar_file_jni_generator.gypi' ],
565 'target_name': 'content_jni_headers',
568 'java_set_jni_headers',
569 'motionevent_jni_headers'
571 'includes': [ 'content_jni.gypi' ],
574 'target_name': 'content_icudata',
577 ['icu_use_data_file_flag==1', {
580 'destination': '<(PRODUCT_DIR)/content_shell/assets',
582 '<(PRODUCT_DIR)/icudtl.dat',
590 'target_name': 'content_v8_external_data',
593 ['v8_use_external_startup_data==1', {
596 'destination': '<(PRODUCT_DIR)/content_shell/assets',
598 '<(PRODUCT_DIR)/natives_blob.bin',
599 '<(PRODUCT_DIR)/snapshot_blob.bin',
607 }], # OS == "android"