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.
8 # Define the common dependencies that contain all the actual
9 # Chromium functionality. This list gets pulled in below by
10 # the link of the actual chrome (or chromium) executable on
11 # Linux or Mac, and into chrome.dll on Windows.
12 # NOTE: Most new includes should go in the OS!="ios" condition below.
13 'chromium_browser_dependencies': [
16 '../sync/sync.gyp:sync',
18 'chromium_child_dependencies': [
20 '../sync/sync.gyp:sync',
22 'allocator_target': '../base/allocator/allocator.gyp:allocator',
23 'grit_out_dir': '<(SHARED_INTERMEDIATE_DIR)/chrome',
24 'protoc_out_dir': '<(SHARED_INTERMEDIATE_DIR)/protoc_out',
25 'repack_locales_cmd': ['python', 'tools/build/repack_locales.py'],
26 # TODO: remove this helper when we have loops in GYP
27 'apply_locales_cmd': ['python', '<(DEPTH)/build/apply_locales.py'],
30 'chromium_browser_dependencies': [
31 '../printing/printing.gyp:printing',
32 '../ppapi/ppapi_internal.gyp:ppapi_host',
34 'chromium_child_dependencies': [
39 '../content/content.gyp:content_gpu',
40 '../content/content.gyp:content_ppapi_plugin',
41 '../content/content.gyp:content_worker',
42 '../third_party/WebKit/Source/devtools/devtools.gyp:devtools_frontend_resources',
46 'platform_locale_settings_grd':
47 'app/resources/locale_settings_win.grd',
49 ['OS!="android" and OS!="ios"', {
50 'chromium_browser_dependencies': [
51 # Android doesn't use the service process (only needed for print).
59 ['branding=="Chrome"', {
60 'platform_locale_settings_grd':
61 'app/resources/locale_settings_google_chromeos.grd',
62 }, { # branding!=Chrome
63 'platform_locale_settings_grd':
64 'app/resources/locale_settings_chromiumos.grd',
68 'platform_locale_settings_grd':
69 'app/resources/locale_settings_linux.grd',
73 ['os_posix == 1 and OS != "mac" and OS != "ios" and OS != "linux"', {
74 'platform_locale_settings_grd':
75 'app/resources/locale_settings_linux.grd',
78 'tweak_info_plist_path': '../build/mac/tweak_info_plist.py',
79 'platform_locale_settings_grd':
80 'app/resources/locale_settings_mac.grd',
82 ['branding=="Chrome"', {
83 'mac_bundle_id': 'com.google.Chrome',
84 'mac_creator': 'rimZ',
85 # The policy .grd file also needs the bundle id.
86 'grit_defines': ['-D', 'mac_bundle_id=com.google.Chrome'],
87 }, { # else: branding!="Chrome"
88 'mac_bundle_id': 'org.chromium.Chromium',
89 'mac_creator': 'Cr24',
90 # The policy .grd file also needs the bundle id.
91 'grit_defines': ['-D', 'mac_bundle_id=org.chromium.Chromium'],
98 # Place some targets in gypi files to reduce contention on this file.
99 # By using an include, we keep everything in a single xcodeproj file.
100 # Note on Win64 targets: targets that end with win64 be used
101 # on 64-bit Windows only. Targets that end with nacl_win64 should be used
102 # by Native Client only.
103 # NOTE: Most new includes should go in the OS!="ios" condition below.
104 '../build/win_precompile.gypi',
105 'chrome_browser.gypi',
106 'chrome_browser_ui.gypi',
107 'chrome_common.gypi',
108 'chrome_installer_util.gypi',
109 'chrome_tests_unit.gypi',
111 '../components/nacl/nacl_defines.gypi',
116 'app/policy/policy_templates.gypi',
117 'chrome_browser_extensions.gypi',
120 'chrome_installer.gypi',
121 'chrome_renderer.gypi',
128 'target_name': 'default_extensions',
134 'destination': '<(PRODUCT_DIR)/extensions',
136 'browser/extensions/default_extensions/external_extensions.json'
141 ['OS=="linux" and chromeos==1 and branding=="Chrome"', {
144 'destination': '<(PRODUCT_DIR)',
146 'browser/extensions/default_extensions/chromeos/extensions/'
154 'target_name': 'debugger',
155 'type': 'static_library',
156 'variables': { 'enable_wexit_time_destructors': 1, },
158 'chrome_resources.gyp:chrome_extra_resources',
159 'chrome_resources.gyp:chrome_resources',
160 'chrome_resources.gyp:chrome_strings',
161 'chrome_resources.gyp:theme_resources',
162 'common/extensions/api/api.gyp:api',
163 '../base/base.gyp:base',
164 '../content/content.gyp:content_browser',
165 '../net/net.gyp:http_server',
166 '../net/net.gyp:net',
167 '../skia/skia.gyp:skia',
168 '../third_party/icu/icu.gyp:icui18n',
169 '../third_party/icu/icu.gyp:icuuc',
170 '../third_party/leveldatabase/leveldatabase.gyp:leveldatabase',
171 '../third_party/libusb/libusb.gyp:libusb',
177 'browser/devtools/adb/android_rsa.cc',
178 'browser/devtools/adb/android_rsa.h',
179 'browser/devtools/adb/android_usb_device.cc',
180 'browser/devtools/adb/android_usb_device.h',
181 'browser/devtools/adb/android_usb_socket.cc',
182 'browser/devtools/adb/android_usb_socket.h',
183 'browser/devtools/adb_client_socket.cc',
184 'browser/devtools/adb_client_socket.h',
185 'browser/devtools/adb_web_socket.cc',
186 'browser/devtools/adb_web_socket.h',
187 'browser/devtools/browser_list_tabcontents_provider.cc',
188 'browser/devtools/browser_list_tabcontents_provider.h',
189 'browser/devtools/devtools_adb_bridge.cc',
190 'browser/devtools/devtools_adb_bridge.h',
191 'browser/devtools/devtools_file_helper.cc',
192 'browser/devtools/devtools_file_helper.h',
193 'browser/devtools/devtools_file_system_indexer.cc',
194 'browser/devtools/devtools_file_system_indexer.h',
195 'browser/devtools/devtools_toggle_action.h',
196 'browser/devtools/devtools_window.cc',
197 'browser/devtools/devtools_window.h',
198 'browser/devtools/remote_debugging_server.cc',
199 'browser/devtools/remote_debugging_server.h',
200 'browser/devtools/tethering_adb_filter.cc',
201 'browser/devtools/tethering_adb_filter.h',
204 ['toolkit_uses_gtk == 1', {
206 '../build/linux/system.gyp:gtk',
211 '../third_party/libusb/libusb.gyp:libusb',
214 'browser/devtools/browser_list_tabcontents_provider.cc',
215 'browser/devtools/devtools_window.cc',
216 'browser/devtools/remote_debugging_server.cc',
219 ['debug_devtools==1', {
225 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
226 'msvs_disabled_warnings': [ 4267, ],
229 'target_name': 'plugin',
230 'type': 'static_library',
231 'variables': { 'enable_wexit_time_destructors': 1, },
233 'chrome_resources.gyp:chrome_strings',
234 '../base/base.gyp:base',
235 '../content/content.gyp:content_plugin',
238 'plugin/chrome_content_plugin_client.cc',
239 'plugin/chrome_content_plugin_client.h',
247 'target_name': 'utility',
248 'type': 'static_library',
249 'variables': { 'enable_wexit_time_destructors': 1, },
251 '../base/base.gyp:base',
252 '../content/content.gyp:content_utility',
253 '../skia/skia.gyp:skia',
254 '../third_party/libxml/libxml.gyp:libxml',
256 '<(DEPTH)/chrome/chrome_resources.gyp:chrome_resources',
257 '<(DEPTH)/chrome/chrome_resources.gyp:chrome_strings',
260 'utility/chrome_content_utility_client.cc',
261 'utility/chrome_content_utility_client.h',
262 'utility/extensions/unpacker.cc',
263 'utility/extensions/unpacker.h',
264 'utility/importer/bookmark_html_reader.cc',
265 'utility/importer/bookmark_html_reader.h',
266 'utility/importer/bookmarks_file_importer.cc',
267 'utility/importer/bookmarks_file_importer.h',
268 'utility/importer/external_process_importer_bridge.cc',
269 'utility/importer/external_process_importer_bridge.h',
270 'utility/importer/favicon_reencode.cc',
271 'utility/importer/favicon_reencode.h',
272 'utility/importer/firefox_importer.cc',
273 'utility/importer/firefox_importer.h',
274 'utility/importer/firefox_importer_unittest_messages_internal.h',
275 'utility/importer/firefox_importer_unittest_utils.h',
276 'utility/importer/firefox_importer_unittest_utils_mac.cc',
277 'utility/importer/ie_importer_win.cc',
278 'utility/importer/ie_importer_win.h',
279 'utility/importer/importer.cc',
280 'utility/importer/importer.h',
281 'utility/importer/importer_creator.cc',
282 'utility/importer/importer_creator.h',
283 'utility/importer/nss_decryptor.cc',
284 'utility/importer/nss_decryptor.h',
285 'utility/importer/nss_decryptor_mac.h',
286 'utility/importer/nss_decryptor_mac.mm',
287 'utility/importer/nss_decryptor_win.cc',
288 'utility/importer/nss_decryptor_win.h',
289 'utility/importer/safari_importer.h',
290 'utility/importer/safari_importer.mm',
291 'utility/media_galleries/itunes_pref_parser_win.cc',
292 'utility/media_galleries/itunes_pref_parser_win.h',
293 'utility/profile_import_handler.cc',
294 'utility/profile_import_handler.h',
295 'utility/utility_message_handler.h',
296 'utility/web_resource_unpacker.cc',
297 'utility/web_resource_unpacker.h',
304 ['toolkit_uses_gtk == 1', {
306 '../build/linux/system.gyp:gtk',
309 ['OS=="win" or OS=="mac"', {
311 'utility/media_galleries/itunes_library_parser.cc',
312 'utility/media_galleries/itunes_library_parser.h',
313 'utility/media_galleries/picasa_album_table_reader.cc',
314 'utility/media_galleries/picasa_album_table_reader.h',
315 'utility/media_galleries/picasa_albums_indexer.cc',
316 'utility/media_galleries/picasa_albums_indexer.h',
317 'utility/media_galleries/pmp_column_reader.cc',
318 'utility/media_galleries/pmp_column_reader.h',
323 'utility/importer/nss_decryptor.cc',
326 ['OS!="win" and OS!="mac" and use_openssl==0', {
328 '../crypto/crypto.gyp:crypto',
331 'utility/importer/nss_decryptor_system_nss.cc',
332 'utility/importer/nss_decryptor_system_nss.h',
337 ['exclude', '^utility/importer/'],
338 ['exclude', '^utility/profile_import_handler\.cc'],
341 ['enable_mdns == 1', {
343 'utility/local_discovery/service_discovery_client_impl.cc',
344 'utility/local_discovery/service_discovery_client_impl.h',
345 'utility/local_discovery/service_discovery_message_handler.cc',
346 'utility/local_discovery/service_discovery_message_handler.h',
350 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
351 'msvs_disabled_warnings': [ 4267, ],
354 'target_name': 'service',
355 'type': 'static_library',
356 'variables': { 'enable_wexit_time_destructors': 1, },
358 'chrome_resources.gyp:chrome_strings',
361 '../base/base.gyp:base',
362 '../google_apis/google_apis.gyp:google_apis',
363 '../jingle/jingle.gyp:notifier',
364 '../net/net.gyp:net',
365 '../printing/printing.gyp:printing',
366 '../skia/skia.gyp:skia',
367 '../third_party/libjingle/libjingle.gyp:libjingle',
370 'service/chrome_service_application_mac.h',
371 'service/chrome_service_application_mac.mm',
372 'service/service_ipc_server.cc',
373 'service/service_ipc_server.h',
374 'service/service_main.cc',
375 'service/service_process.cc',
376 'service/service_process.h',
377 'service/service_process_prefs.cc',
378 'service/service_process_prefs.h',
379 'service/service_utility_process_host.cc',
380 'service/service_utility_process_host.h',
381 'service/cloud_print/cloud_print_auth.cc',
382 'service/cloud_print/cloud_print_auth.h',
383 'service/cloud_print/cloud_print_connector.cc',
384 'service/cloud_print/cloud_print_connector.h',
385 'service/cloud_print/cloud_print_helpers.cc',
386 'service/cloud_print/cloud_print_helpers.h',
387 'service/cloud_print/cloud_print_proxy.cc',
388 'service/cloud_print/cloud_print_proxy.h',
389 'service/cloud_print/cloud_print_proxy_backend.cc',
390 'service/cloud_print/cloud_print_proxy_backend.h',
391 'service/cloud_print/cloud_print_token_store.cc',
392 'service/cloud_print/cloud_print_token_store.h',
393 'service/cloud_print/cloud_print_url_fetcher.cc',
394 'service/cloud_print/cloud_print_url_fetcher.h',
395 'service/cloud_print/cloud_print_wipeout.cc',
396 'service/cloud_print/cloud_print_wipeout.h',
397 'service/cloud_print/connector_settings.cc',
398 'service/cloud_print/connector_settings.h',
399 'service/cloud_print/job_status_updater.cc',
400 'service/cloud_print/job_status_updater.h',
401 'service/cloud_print/print_system_dummy.cc',
402 'service/cloud_print/print_system.cc',
403 'service/cloud_print/print_system.h',
404 'service/cloud_print/printer_job_handler.cc',
405 'service/cloud_print/printer_job_handler.h',
406 'service/cloud_print/printer_job_queue_handler.cc',
407 'service/cloud_print/printer_job_queue_handler.h',
408 'service/net/service_url_request_context.cc',
409 'service/net/service_url_request_context.h',
417 # CP_PRINT_SYSTEM_AVAILABLE disables default dummy implementation
418 # of cloud print system, and allows to use custom implementaiton.
419 'CP_PRINT_SYSTEM_AVAILABLE',
422 'service/cloud_print/print_system_win.cc',
425 ['toolkit_uses_gtk == 1', {
427 '../build/linux/system.gyp:gtk',
432 '../printing/printing.gyp:cups',
435 # CP_PRINT_SYSTEM_AVAILABLE disables default dummy implementation
436 # of cloud print system, and allows to use custom implementaiton.
437 'CP_PRINT_SYSTEM_AVAILABLE',
440 'service/cloud_print/print_system_cups.cc',
446 'target_name': 'ipclist',
447 'type': 'executable',
448 'variables': { 'enable_wexit_time_destructors': 1, },
450 'test_support_common',
451 '../skia/skia.gyp:skia',
452 '../sync/sync.gyp:sync',
458 'tools/ipclist/ipclist.cc',
466 'target_name': 'helper_app',
467 'type': 'executable',
468 'variables': { 'enable_wexit_time_destructors': 1, },
469 'product_name': '<(mac_product_name) Helper',
473 'infoplist_strings_tool',
476 # chrome_exe_main_mac.cc's main() is the entry point for
477 # the "chrome" (browser app) target. All it does is jump
478 # to chrome_dll's ChromeMain. This is appropriate for
479 # helper processes too, because the logic to discriminate
480 # between process types at run time is actually directed
481 # by the --type command line argument processed by
482 # ChromeMain. Sharing chrome_exe_main_mac.cc with the
483 # browser app will suffice for now.
484 'app/chrome_exe_main_mac.cc',
485 'app/helper-Info.plist',
487 # TODO(mark): Come up with a fancier way to do this. It should only
488 # be necessary to list helper-Info.plist once, not the three times it
490 'mac_bundle_resources!': [
491 'app/helper-Info.plist',
493 # TODO(mark): For now, don't put any resources into this app. Its
494 # resources directory will be a symbolic link to the browser app's
495 # resources directory.
496 'mac_bundle_resources/': [
500 'CHROMIUM_BUNDLE_ID': '<(mac_bundle_id)',
501 'CHROMIUM_SHORT_NAME': '<(branding)',
502 'CHROMIUM_STRIP_SAVE_FILE': 'app/app.saves',
503 'INFOPLIST_FILE': 'app/helper-Info.plist',
507 # The helper doesn't have real localizations, it just has
508 # empty .lproj directories, which is enough to convince Cocoa
509 # that anything running out of the helper .app supports those
511 'postbuild_name': 'Make Empty Localizations',
514 '>!@(<(apply_locales_cmd) -d ZZLOCALE.lproj <(locales))',
518 'tools/build/mac/make_locale_dirs.sh',
523 # The framework (chrome_dll) defines its load-time path
524 # (DYLIB_INSTALL_NAME_BASE) relative to the main executable
525 # (chrome). A different relative path needs to be used in
527 'postbuild_name': 'Fix Framework Link',
531 '@executable_path/../Versions/<(version_full)/<(mac_product_name) Framework.framework/<(mac_product_name) Framework',
532 '@executable_path/../../../<(mac_product_name) Framework.framework/<(mac_product_name) Framework',
533 '${BUILT_PRODUCTS_DIR}/${EXECUTABLE_PATH}'
537 # Modify the Info.plist as needed. The script explains why this
538 # is needed. This is also done in the chrome and chrome_dll
539 # targets. In this case, --breakpad=0, --keystone=0, and --scm=0
540 # are used because Breakpad, Keystone, and SCM keys are
541 # never placed into the helper.
542 'postbuild_name': 'Tweak Info.plist',
543 'action': ['<(tweak_info_plist_path)',
549 # Make sure there isn't any Objective-C in the helper app's
551 'postbuild_name': 'Verify No Objective-C',
553 '../build/mac/verify_no_objc.sh',
558 ['mac_breakpad==1', {
560 # A real .dSYM is needed for dump_syms to operate on.
564 # With mac_real_dsym set, strip_from_xcode won't be used.
565 # Specify CHROMIUM_STRIP_SAVE_FILE directly to Xcode.
566 'STRIPFLAGS': '-s $(CHROMIUM_STRIP_SAVE_FILE)',
571 # Override the outer definition of CHROMIUM_STRIP_SAVE_FILE.
572 'CHROMIUM_STRIP_SAVE_FILE': 'app/app_asan.saves',
575 ['component=="shared_library"', {
577 'LD_RUNPATH_SEARCH_PATHS': [
578 # Get back from Chromium.app/Contents/Versions/V/
579 # Helper.app/Contents/MacOS
580 '@loader_path/../../../../../../..',
585 }, # target helper_app
587 # A library containing the actual code for the app mode app, shared
589 'target_name': 'app_mode_app_support',
590 'type': 'static_library',
591 'variables': { 'enable_wexit_time_destructors': 1, },
592 'product_name': 'app_mode_app_support',
594 '../base/base.gyp:base',
595 'common_constants.gyp:common_constants',
598 'common/mac/app_mode_chrome_locator.h',
599 'common/mac/app_mode_chrome_locator.mm',
600 'common/mac/app_mode_common.h',
601 'common/mac/app_mode_common.mm',
606 }, # target app_mode_app_support
608 # This produces the template for app mode loader bundles. It's a
609 # template in the sense that parts of it need to be "filled in" by
610 # Chrome before it can be executed.
611 'target_name': 'app_mode_app',
612 'type': 'executable',
614 'variables': { 'enable_wexit_time_destructors': 1, },
615 'product_name': 'app_mode_loader',
617 'app_mode_app_support',
618 'infoplist_strings_tool',
621 'app/app_mode_loader_mac.mm',
622 'app/app_mode-Info.plist',
629 '$(SDKROOT)/System/Library/Frameworks/CoreFoundation.framework',
630 '$(SDKROOT)/System/Library/Frameworks/Foundation.framework',
633 'mac_bundle_resources!': [
634 'app/app_mode-Info.plist',
636 'mac_bundle_resources/': [
640 'INFOPLIST_FILE': 'app/app_mode-Info.plist',
641 'APP_MODE_APP_BUNDLE_ID': '<(mac_bundle_id).app.@APP_MODE_SHORTCUT_ID@',
645 # Modify the Info.plist as needed. The script explains why this
646 # is needed. This is also done in the chrome and chrome_dll
647 # targets. In this case, --breakpad=0, --keystone=0, and --scm=0
648 # are used because Breakpad, Keystone, and SCM keys are
649 # never placed into the app mode loader.
650 'postbuild_name': 'Tweak Info.plist',
651 'action': ['<(tweak_info_plist_path)',
657 }, # target app_mode_app
659 # Convenience target to build a disk image.
660 'target_name': 'build_app_dmg',
661 # Don't place this in the 'all' list; most won't want it.
662 # In GYP, booleans are 0/1, not True/False.
663 'suppress_wildcard': 1,
669 'build_app_dmg_script_path': 'tools/build/mac/build_app_dmg',
670 'pkg_dmg_script_path': 'installer/mac/pkg-dmg',
673 # This duplicates the output path from build_app_dmg.
674 ['branding=="Chrome"', {
675 'dmg_name': 'GoogleChrome.dmg',
676 }, { # else: branding!="Chrome"
677 'dmg_name': 'Chromium.dmg',
684 '<(build_app_dmg_script_path)',
685 '<(pkg_dmg_script_path)',
686 '<(PRODUCT_DIR)/<(mac_product_name).app',
689 '<(PRODUCT_DIR)/<(dmg_name)',
691 'action_name': 'build_app_dmg',
692 'action': ['<(build_app_dmg_script_path)', '<@(branding)'],
697 # Dummy target to allow chrome to require plugin_carbon_interpose to
698 # build without actually linking to the resulting library.
699 'target_name': 'interpose_dependency_shim',
700 'type': 'executable',
701 'variables': { 'enable_wexit_time_destructors': 1, },
703 'plugin_carbon_interpose',
705 # In release, we end up with a strip step that is unhappy if there is
706 # no binary. Rather than check in a new file for this temporary hack,
707 # just generate a source file on the fly.
710 'action_name': 'generate_stub_main',
711 'process_outputs_as_sources': 1,
713 'outputs': [ '<(INTERMEDIATE_DIR)/dummy_main.c' ],
716 'echo "int main() { return 0; }" > <(INTERMEDIATE_DIR)/dummy_main.c'
722 # dylib for interposing Carbon calls in the plugin process.
723 'target_name': 'plugin_carbon_interpose',
724 'type': 'shared_library',
725 'variables': { 'enable_wexit_time_destructors': 1, },
726 # This target must not depend on static libraries, else the code in
727 # those libraries would appear twice in plugin processes: Once from
728 # Chromium Framework, and once from this dylib.
733 ['component=="shared_library"', {
735 '../webkit/support/webkit_support.gyp:glue',
736 '../content/content.gyp:content_plugin',
739 'LD_RUNPATH_SEARCH_PATHS': [
740 # Get back from Chromium.app/Contents/Versions/V
741 '@loader_path/../../../..',
747 '../content/plugin/plugin_carbon_interpose_mac.cc',
754 '$(SDKROOT)/System/Library/Frameworks/Carbon.framework',
758 'DYLIB_COMPATIBILITY_VERSION': '<(version_mac_dylib)',
759 'DYLIB_CURRENT_VERSION': '<(version_mac_dylib)',
760 'DYLIB_INSTALL_NAME_BASE': '@executable_path/../../..',
764 # The framework (chrome_dll) defines its load-time path
765 # (DYLIB_INSTALL_NAME_BASE) relative to the main executable
766 # (chrome). A different relative path needs to be used in
767 # plugin_carbon_interpose, which runs in the helper_app.
768 'postbuild_name': 'Fix Framework Link',
772 '@executable_path/../Versions/<(version_full)/<(mac_product_name) Framework.framework/<(mac_product_name) Framework',
773 '@executable_path/../../../<(mac_product_name) Framework.framework/<(mac_product_name) Framework',
774 '${BUILT_PRODUCTS_DIR}/${EXECUTABLE_PATH}'
780 'target_name': 'infoplist_strings_tool',
781 'type': 'executable',
782 'variables': { 'enable_wexit_time_destructors': 1, },
784 'chrome_resources.gyp:chrome_strings',
785 '../base/base.gyp:base',
792 'tools/mac_helpers/infoplist_strings_util.mm',
797 ['OS!="mac" and OS!="ios"', {
800 'target_name': 'convert_dict',
801 'type': 'executable',
802 'variables': { 'enable_wexit_time_destructors': 1, },
804 '../base/base.gyp:base',
805 '../base/base.gyp:base_i18n',
807 '../third_party/hunspell/hunspell.gyp:hunspell',
810 'tools/convert_dict/convert_dict.cc',
814 'target_name': 'convert_dict_lib',
815 'product_name': 'convert_dict',
816 'type': 'static_library',
817 'variables': { 'enable_wexit_time_destructors': 1, },
822 '../base/base.gyp:base',
825 'tools/convert_dict/aff_reader.cc',
826 'tools/convert_dict/aff_reader.h',
827 'tools/convert_dict/dic_reader.cc',
828 'tools/convert_dict/dic_reader.h',
829 'tools/convert_dict/hunspell_reader.cc',
830 'tools/convert_dict/hunspell_reader.h',
834 'target_name': 'flush_cache',
835 'type': 'executable',
837 '../base/base.gyp:base',
838 '../base/base.gyp:test_support_base',
841 'tools/perf/flush_cache/flush_cache.cc',
845 }], # OS!="mac" and OS!="ios"
849 'target_name': 'linux_symbols',
852 ['linux_dump_symbols==1', {
855 'action_name': 'dump_symbols',
857 '<(DEPTH)/build/linux/dump_app_syms',
858 '<(PRODUCT_DIR)/dump_syms',
859 '<(PRODUCT_DIR)/chrome',
862 '<(PRODUCT_DIR)/chrome.breakpad.<(target_arch)',
864 'action': ['<(DEPTH)/build/linux/dump_app_syms',
865 '<(PRODUCT_DIR)/dump_syms',
866 '<(linux_strip_binary)',
867 '<(PRODUCT_DIR)/chrome',
869 'message': 'Dumping breakpad symbols to <(_outputs)',
870 'process_outputs_as_sources': 1,
875 '../breakpad/breakpad.gyp:dump_syms',
878 ['linux_strip_reliability_tests==1', {
881 'action_name': 'strip_reliability_tests',
883 '<(PRODUCT_DIR)/automated_ui_tests',
884 '<(PRODUCT_DIR)/reliability_tests',
885 '<(PRODUCT_DIR)/_pyautolib.so',
888 '<(PRODUCT_DIR)/strip_reliability_tests.stamp',
893 'message': 'Stripping reliability tests',
897 'automated_ui_tests',
904 'target_name': 'ipcfuzz',
905 'type': 'loadable_module',
910 'test_support_common',
911 '../skia/skia.gyp:skia',
914 'tools/ipclist/ipcfuzz.cc',
922 # For historical reasons, chrome/chrome.sln has been the entry point
923 # for new Chrome developers. To assist development, include several
924 # core unittests that are otherwise only accessible side-by-side with
925 # chrome via all/all.sln.
926 'target_name': 'test_targets',
929 '../base/base.gyp:base_unittests',
930 '../chrome_frame/chrome_frame.gyp:chrome_frame_tests',
931 '../chrome_frame/chrome_frame.gyp:chrome_frame_net_tests',
932 '../content/content.gyp:content_browsertests',
933 '../content/content.gyp:content_shell',
934 '../content/content.gyp:content_unittests',
935 '../net/net.gyp:net_unittests',
936 '../ui/ui.gyp:ui_unittests',
939 ['use_aura==1 or target_arch=="x64"', {
941 '../chrome_frame/chrome_frame.gyp:chrome_frame_tests',
942 '../chrome_frame/chrome_frame.gyp:chrome_frame_net_tests',
948 'target_name': 'chrome_version_resources',
951 ['branding == "Chrome"', {
953 'branding_path': 'app/theme/google_chrome/BRANDING',
955 }, { # else branding!="Chrome"
957 'branding_path': 'app/theme/chromium/BRANDING',
962 'output_dir': 'chrome_version',
963 'template_input_path': 'app/chrome_version.rc.version',
965 'direct_dependent_settings': {
967 '<(SHARED_INTERMEDIATE_DIR)/<(output_dir)',
971 'app/app_host_exe.ver',
972 'app/chrome_exe.ver',
973 'app/chrome_dll.ver',
974 'app/nacl64_exe.ver',
978 'version_resource_rules.gypi',
982 'target_name': 'chrome_version_header',
984 'hard_dependency': 1,
987 'action_name': 'version_header',
990 '<(DEPTH)/build/util/LASTCHANGE',
993 ['branding == "Chrome"', {
995 'branding_path': 'app/theme/google_chrome/BRANDING',
997 }, { # else branding!="Chrome"
999 'branding_path': 'app/theme/chromium/BRANDING',
1006 '<(lastchange_path)',
1010 '<(SHARED_INTERMEDIATE_DIR)/version.h',
1014 '<(version_py_path)',
1015 '-f', '<(version_path)',
1016 '-f', '<(branding_path)',
1017 '-f', '<(lastchange_path)',
1021 'message': 'Generating version header file: <@(_outputs)',
1026 'target_name': 'automation',
1027 'type': 'static_library',
1029 'chrome_resources.gyp:theme_resources',
1030 '../skia/skia.gyp:skia',
1036 'test/automation/automation_handle_tracker.cc',
1037 'test/automation/automation_handle_tracker.h',
1038 'test/automation/automation_json_requests.cc',
1039 'test/automation/automation_json_requests.h',
1040 'test/automation/automation_proxy.cc',
1041 'test/automation/automation_proxy.h',
1042 'test/automation/browser_proxy.cc',
1043 'test/automation/browser_proxy.h',
1044 'test/automation/tab_proxy.cc',
1045 'test/automation/tab_proxy.h',
1046 'test/automation/value_conversion_traits.cc',
1047 'test/automation/value_conversion_traits.h',
1048 'test/automation/value_conversion_util.h',
1049 'test/automation/window_proxy.cc',
1050 'test/automation/window_proxy.h',
1054 'target_name': 'crash_service',
1055 'type': 'executable',
1058 '../base/base.gyp:base',
1059 '../breakpad/breakpad.gyp:breakpad_handler',
1060 '../breakpad/breakpad.gyp:breakpad_sender',
1061 '../chrome/common_constants.gyp:common_constants',
1067 'tools/crash_service/crash_service.cc',
1068 'tools/crash_service/crash_service.h',
1069 'tools/crash_service/main.cc',
1073 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS
1078 'target_name': 'sb_sigutil',
1079 'type': 'executable',
1081 '../base/base.gyp:base',
1082 'safe_browsing_proto',
1085 'browser/safe_browsing/signature_util.h',
1086 'browser/safe_browsing/signature_util_win.cc',
1087 'tools/safe_browsing/sb_sigutil.cc',
1092 'chrome_process_finder.gypi',
1096 ['OS=="win" and target_arch=="ia32"',
1099 'target_name': 'chrome_user32_delay_imports',
1102 'lib_dir': '<(INTERMEDIATE_DIR)',
1105 'chrome.user32.delay.imports'
1108 '../build/win/importlibs/create_import_lib.gypi',
1110 'direct_dependent_settings': {
1113 'AdditionalLibraryDirectories': ['<(lib_dir)', ],
1114 'AdditionalDependencies': ['chrome.user32.delay.lib', ],
1120 'target_name': 'crash_service_win64',
1121 'type': 'executable',
1122 'product_name': 'crash_service64',
1124 'installer_util_nacl_win64',
1125 '../base/base.gyp:base_static_win64',
1126 '../breakpad/breakpad.gyp:breakpad_handler_win64',
1127 '../breakpad/breakpad.gyp:breakpad_sender_win64',
1128 '../chrome/common_constants.gyp:common_constants_win64',
1134 'tools/crash_service/crash_service.cc',
1135 'tools/crash_service/crash_service.h',
1136 'tools/crash_service/main.cc',
1137 '../content/public/common/content_switches.cc',
1140 'COMPILE_CONTENT_STATICALLY',
1144 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS
1149 'msvs_target_platform': 'x64',
1154 ], # OS=="win" and target_arch=="ia32"
1156 'includes': [ 'chrome_browser_chromeos.gypi' ],
1162 'target_name': 'chrome_java',
1165 'chrome_resources.gyp:chrome_strings',
1166 'profile_sync_service_model_type_selection_java',
1168 'toolbar_model_security_levels_java',
1169 '../base/base.gyp:base',
1170 '../components/components.gyp:autofill_java',
1171 '../components/components.gyp:navigation_interception_java',
1172 '../components/components.gyp:sessions',
1173 '../components/components.gyp:web_contents_delegate_android_java',
1174 '../content/content.gyp:content_java',
1175 '../sync/sync.gyp:sync_java',
1176 '../third_party/guava/guava.gyp:guava_javalib',
1177 '../ui/ui.gyp:ui_java',
1180 'java_in_dir': '../chrome/android/java',
1181 'has_java_resources': 1,
1182 'R_package': 'org.chromium.chrome',
1183 'R_package_relpath': 'org/chromium/chrome',
1184 'java_strings_grd': 'android_chrome_strings.grd',
1185 # Include xml string files generated from generated_resources.grd
1186 'res_extra_dirs': ['<(SHARED_INTERMEDIATE_DIR)/chrome/java/res'],
1187 'res_extra_files': ['<!@pymod_do_main(grit_info <@(grit_defines) --outputs "<(SHARED_INTERMEDIATE_DIR)/chrome" app/generated_resources.grd)'],
1190 '../build/java.gypi',
1195 'chrome_android.gypi',
1198 ['configuration_policy==1 and OS!="android"', {
1199 'includes': [ 'policy.gypi', ],