Home | History | Annotate | Download | only in chrome
      1 # Copyright (c) 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   'targets': [
      7     {
      8       'target_name': 'common',
      9       'type': 'static_library',
     10       'variables': {
     11         'chrome_common_target': 1,
     12         'enable_wexit_time_destructors': 1,
     13       },
     14       'include_dirs': [
     15           '..',
     16           '<(SHARED_INTERMEDIATE_DIR)',  # Needed by chrome_content_client.cc.
     17         ],
     18       'direct_dependent_settings': {
     19         'include_dirs': [
     20           '..',
     21         ],
     22       },
     23       'dependencies': [
     24         # TODO(gregoryd): chrome_resources and chrome_strings could be
     25         #  shared with the 64-bit target, but it does not work due to a gyp
     26         # issue.
     27         'common_net',
     28         'common_version',
     29         'installer_util',
     30         'metrics_proto',
     31         '<(DEPTH)/base/base.gyp:base',
     32         '<(DEPTH)/base/base.gyp:base_i18n',
     33         '<(DEPTH)/base/base.gyp:base_prefs',
     34         '<(DEPTH)/base/base.gyp:base_static',
     35         '<(DEPTH)/chrome/chrome_resources.gyp:chrome_resources',
     36         '<(DEPTH)/chrome/chrome_resources.gyp:chrome_strings',
     37         '<(DEPTH)/chrome/chrome_resources.gyp:theme_resources',
     38         '<(DEPTH)/chrome/common_constants.gyp:common_constants',
     39         '<(DEPTH)/components/components.gyp:json_schema',
     40         '<(DEPTH)/components/components.gyp:policy_component',
     41         '<(DEPTH)/components/components.gyp:variations',
     42         '<(DEPTH)/content/content.gyp:content_common',
     43         '<(DEPTH)/net/net.gyp:net',
     44         '<(DEPTH)/skia/skia.gyp:skia',
     45         '<(DEPTH)/third_party/icu/icu.gyp:icui18n',
     46         '<(DEPTH)/third_party/icu/icu.gyp:icuuc',
     47         '<(DEPTH)/third_party/libxml/libxml.gyp:libxml',
     48         '<(DEPTH)/third_party/sqlite/sqlite.gyp:sqlite',
     49         '<(DEPTH)/third_party/zlib/google/zip.gyp:zip',
     50         '<(DEPTH)/ui/resources/ui_resources.gyp:ui_resources',
     51         '<(DEPTH)/url/url.gyp:url_lib',
     52         '<(DEPTH)/webkit/common/user_agent/webkit_user_agent.gyp:user_agent',
     53       ],
     54       'sources': [
     55         '../apps/app_shim/app_shim_launch.h',
     56         '../apps/app_shim/app_shim_messages.h',
     57         'common/all_messages.h',
     58         'common/attrition_experiments.h',
     59         'common/auto_start_linux.cc',
     60         'common/auto_start_linux.h',
     61         'common/autocomplete_match_type.cc',
     62         'common/autocomplete_match_type.h',
     63         'common/automation_constants.cc',
     64         'common/automation_constants.h',
     65         'common/automation_messages.cc',
     66         'common/automation_messages.h',
     67         'common/automation_messages_internal.h',
     68         'common/badge_util.cc',
     69         'common/badge_util.h',
     70         'common/cancelable_task_tracker.cc',
     71         'common/cancelable_task_tracker.h',
     72         'common/child_process_logging.h',
     73         'common/child_process_logging_win.cc',
     74         'common/chrome_content_client.cc',
     75         'common/chrome_content_client.h',
     76         'common/chrome_content_client_constants.cc',
     77         'common/chrome_content_client_ios.mm',
     78         'common/chrome_result_codes.h',
     79         'common/chrome_utility_messages.h',
     80         'common/chrome_version_info.cc',
     81         'common/chrome_version_info_android.cc',
     82         'common/chrome_version_info_chromeos.cc',
     83         'common/chrome_version_info_posix.cc',
     84         'common/chrome_version_info_mac.mm',
     85         'common/chrome_version_info_win.cc',
     86         'common/chrome_version_info.h',
     87         'common/cloud_print/cloud_print_class_mac.h',
     88         'common/cloud_print/cloud_print_class_mac.mm',
     89         'common/cloud_print/cloud_print_constants.cc',
     90         'common/cloud_print/cloud_print_constants.h',
     91         'common/cloud_print/cloud_print_helpers.cc',
     92         'common/cloud_print/cloud_print_helpers.h',
     93         'common/cloud_print/cloud_print_proxy_info.cc',
     94         'common/cloud_print/cloud_print_proxy_info.h',
     95         'common/common_message_generator.cc',
     96         'common/common_message_generator.h',
     97         'common/common_param_traits.cc',
     98         'common/common_param_traits.h',
     99         'common/common_param_traits_macros.h',
    100         'common/content_restriction.h',
    101         'common/content_settings.cc',
    102         'common/content_settings.h',
    103         'common/content_settings_helper.cc',
    104         'common/content_settings_helper.h',
    105         'common/content_settings_pattern.cc',
    106         'common/content_settings_pattern.h',
    107         'common/content_settings_pattern_parser.cc',
    108         'common/content_settings_pattern_parser.h',
    109         'common/content_settings_types.h',
    110         'common/crash_keys.cc',
    111         'common/crash_keys.h',
    112         'common/custom_handlers/protocol_handler.cc',
    113         'common/custom_handlers/protocol_handler.h',
    114         'common/descriptors_android.h',
    115         'common/dump_without_crashing.cc',
    116         'common/dump_without_crashing.h',
    117         'common/encrypted_media_messages_android.h',
    118         'common/extensions/api/commands/commands_handler.cc',
    119         'common/extensions/api/commands/commands_handler.h',
    120         'common/extensions/api/extension_action/action_info.cc',
    121         'common/extensions/api/extension_action/action_info.h',
    122         'common/extensions/api/extension_action/browser_action_handler.cc',
    123         'common/extensions/api/extension_action/browser_action_handler.h',
    124         'common/extensions/api/extension_action/page_action_handler.cc',
    125         'common/extensions/api/extension_action/page_action_handler.h',
    126         'common/extensions/api/extension_action/script_badge_handler.cc',
    127         'common/extensions/api/extension_action/script_badge_handler.h',
    128         'common/extensions/api/file_browser_handlers/file_browser_handler.cc',
    129         'common/extensions/api/file_browser_handlers/file_browser_handler.h',
    130         'common/extensions/api/file_handlers/file_handlers_parser.cc',
    131         'common/extensions/api/file_handlers/file_handlers_parser.h',
    132         'common/extensions/api/i18n/default_locale_handler.cc',
    133         'common/extensions/api/i18n/default_locale_handler.h',
    134         'common/extensions/api/identity/oauth2_manifest_handler.cc',
    135         'common/extensions/api/identity/oauth2_manifest_handler.h',
    136         'common/extensions/api/input_ime/input_components_handler.cc',
    137         'common/extensions/api/input_ime/input_components_handler.h',
    138         'common/extensions/api/managed_mode_private/managed_mode_handler.cc',
    139         'common/extensions/api/managed_mode_private/managed_mode_handler.h',
    140         'common/extensions/api/media_galleries_private/media_galleries_handler.h',
    141         'common/extensions/api/media_galleries_private/media_galleries_handler.cc',
    142         'common/extensions/api/messaging/message.h',
    143         'common/extensions/api/omnibox/omnibox_handler.cc',
    144         'common/extensions/api/omnibox/omnibox_handler.h',
    145         'common/extensions/api/plugins/plugins_handler.cc',
    146         'common/extensions/api/plugins/plugins_handler.h',
    147         'common/extensions/api/sockets/sockets_manifest_handler.cc',
    148         'common/extensions/api/sockets/sockets_manifest_handler.h',
    149         'common/extensions/api/sockets/sockets_manifest_data.cc',
    150         'common/extensions/api/sockets/sockets_manifest_data.h',
    151         'common/extensions/api/sockets/sockets_manifest_permission.cc',
    152         'common/extensions/api/sockets/sockets_manifest_permission.h',
    153         'common/extensions/api/speech/tts_engine_manifest_handler.cc',
    154         'common/extensions/api/speech/tts_engine_manifest_handler.h',
    155         'common/extensions/api/spellcheck/spellcheck_handler.cc',
    156         'common/extensions/api/spellcheck/spellcheck_handler.h',
    157         'common/extensions/api/storage/storage_schema_manifest_handler.cc',
    158         'common/extensions/api/storage/storage_schema_manifest_handler.h',
    159         'common/extensions/api/system_indicator/system_indicator_handler.cc',
    160         'common/extensions/api/system_indicator/system_indicator_handler.h',
    161         'common/extensions/api/url_handlers/url_handlers_parser.cc',
    162         'common/extensions/api/url_handlers/url_handlers_parser.h',
    163         'common/extensions/chrome_extensions_client.cc',
    164         'common/extensions/chrome_extensions_client.h',
    165         'common/extensions/chrome_manifest_handlers.cc',
    166         'common/extensions/chrome_manifest_handlers.h',
    167         'common/extensions/command.cc',
    168         'common/extensions/command.h',
    169         'common/extensions/dom_action_types.h',
    170         'common/extensions/extension_constants.cc',
    171         'common/extensions/extension_constants.h',
    172         'common/extensions/extension_file_util.cc',
    173         'common/extensions/extension_file_util.h',
    174         'common/extensions/extension_icon_set.cc',
    175         'common/extensions/extension_icon_set.h',
    176         'common/extensions/extension_l10n_util.cc',
    177         'common/extensions/extension_l10n_util.h',
    178         'common/extensions/extension_messages.cc',
    179         'common/extensions/extension_messages.h',
    180         'common/extensions/extension_process_policy.cc',
    181         'common/extensions/extension_process_policy.h',
    182         'common/extensions/extension_set.cc',
    183         'common/extensions/extension_set.h',
    184         'common/extensions/features/api_feature.cc',
    185         'common/extensions/features/api_feature.h',
    186         'common/extensions/features/base_feature_provider.cc',
    187         'common/extensions/features/base_feature_provider.h',
    188         'common/extensions/features/complex_feature.cc',
    189         'common/extensions/features/complex_feature.h',
    190         'common/extensions/features/feature_channel.cc',
    191         'common/extensions/features/feature_channel.h',
    192         'common/extensions/features/manifest_feature.cc',
    193         'common/extensions/features/manifest_feature.h',
    194         'common/extensions/features/permission_feature.cc',
    195         'common/extensions/features/permission_feature.h',
    196         'common/extensions/features/simple_feature.cc',
    197         'common/extensions/features/simple_feature.h',
    198         'common/extensions/manifest_handler_helpers.cc',
    199         'common/extensions/manifest_handler_helpers.h',
    200         'common/extensions/manifest_handlers/app_isolation_info.cc',
    201         'common/extensions/manifest_handlers/app_isolation_info.h',
    202         'common/extensions/manifest_handlers/app_launch_info.cc',
    203         'common/extensions/manifest_handlers/app_launch_info.h',
    204         'common/extensions/manifest_handlers/content_scripts_handler.cc',
    205         'common/extensions/manifest_handlers/content_scripts_handler.h',
    206         'common/extensions/manifest_handlers/externally_connectable.cc',
    207         'common/extensions/manifest_handlers/externally_connectable.h',
    208         'common/extensions/manifest_handlers/icons_handler.cc',
    209         'common/extensions/manifest_handlers/icons_handler.h',
    210         'common/extensions/manifest_handlers/minimum_chrome_version_checker.cc',
    211         'common/extensions/manifest_handlers/minimum_chrome_version_checker.h',
    212         'common/extensions/manifest_handlers/nacl_modules_handler.cc',
    213         'common/extensions/manifest_handlers/nacl_modules_handler.h',
    214         'common/extensions/manifest_handlers/settings_overrides_handler.cc',
    215         'common/extensions/manifest_handlers/settings_overrides_handler.h',
    216         'common/extensions/manifest_handlers/theme_handler.cc',
    217         'common/extensions/manifest_handlers/theme_handler.h',
    218         'common/extensions/manifest_url_handler.cc',
    219         'common/extensions/manifest_url_handler.h',
    220         'common/extensions/message_bundle.cc',
    221         'common/extensions/message_bundle.h',
    222         'common/extensions/mime_types_handler.cc',
    223         'common/extensions/mime_types_handler.h',
    224         'common/extensions/permissions/bluetooth_permission.cc',
    225         'common/extensions/permissions/bluetooth_permission.h',
    226         'common/extensions/permissions/bluetooth_permission_data.cc',
    227         'common/extensions/permissions/bluetooth_permission_data.h',
    228         'common/extensions/permissions/chrome_api_permissions.cc',
    229         'common/extensions/permissions/chrome_api_permissions.h',
    230         'common/extensions/permissions/chrome_permission_message_provider.cc',
    231         'common/extensions/permissions/chrome_permission_message_provider.h',
    232         'common/extensions/permissions/media_galleries_permission.cc',
    233         'common/extensions/permissions/media_galleries_permission.h',
    234         'common/extensions/permissions/media_galleries_permission_data.cc',
    235         'common/extensions/permissions/media_galleries_permission_data.h',
    236         'common/extensions/permissions/permission_message_util.cc',
    237         'common/extensions/permissions/permission_message_util.h',
    238         'common/extensions/permissions/set_disjunction_permission.h',
    239         'common/extensions/permissions/settings_override_permission.cc',
    240         'common/extensions/permissions/settings_override_permission.h',
    241         'common/extensions/permissions/socket_permission.cc',
    242         'common/extensions/permissions/socket_permission.h',
    243         'common/extensions/permissions/socket_permission_data.cc',
    244         'common/extensions/permissions/socket_permission_data.h',
    245         'common/extensions/permissions/socket_permission_entry.cc',
    246         'common/extensions/permissions/socket_permission_entry.h',
    247         'common/extensions/permissions/usb_device_permission.cc',
    248         'common/extensions/permissions/usb_device_permission.h',
    249         'common/extensions/permissions/usb_device_permission_data.cc',
    250         'common/extensions/permissions/usb_device_permission_data.h',
    251         'common/extensions/sync_helper.cc',
    252         'common/extensions/sync_helper.h',
    253         'common/extensions/update_manifest.cc',
    254         'common/extensions/update_manifest.h',
    255         'common/extensions/value_counter.cc',
    256         'common/extensions/value_counter.h',
    257         'common/extensions/web_accessible_resources_handler.cc',
    258         'common/extensions/web_accessible_resources_handler.h',
    259         'common/extensions/webview_handler.cc',
    260         'common/extensions/webview_handler.h',
    261         'common/favicon/favicon_types.cc',
    262         'common/favicon/favicon_types.h',
    263         'common/favicon/favicon_url_parser.cc',
    264         'common/favicon/favicon_url_parser.h',
    265         'common/icon_with_badge_image_source.cc',
    266         'common/icon_with_badge_image_source.h',
    267         'common/importer/firefox_importer_utils.cc',
    268         'common/importer/firefox_importer_utils.h',
    269         'common/importer/firefox_importer_utils_linux.cc',
    270         'common/importer/firefox_importer_utils_mac.mm',
    271         'common/importer/firefox_importer_utils_win.cc',
    272         'common/importer/ie_importer_test_registry_overrider_win.cc',
    273         'common/importer/ie_importer_test_registry_overrider_win.h',
    274         'common/importer/ie_importer_utils_win.cc',
    275         'common/importer/ie_importer_utils_win.h',
    276         'common/importer/imported_bookmark_entry.cc',
    277         'common/importer/imported_bookmark_entry.h',
    278         'common/importer/imported_favicon_usage.cc',
    279         'common/importer/imported_favicon_usage.h',
    280         'common/importer/importer_bridge.cc',
    281         'common/importer/importer_bridge.h',
    282         'common/importer/importer_data_types.cc',
    283         'common/importer/importer_data_types.h',
    284         'common/importer/importer_type.h',
    285         'common/importer/importer_url_row.cc',
    286         'common/importer/importer_url_row.h',
    287         'common/importer/profile_import_process_messages.cc',
    288         'common/importer/profile_import_process_messages.h',
    289         'common/importer/safari_importer_utils.h',
    290         'common/importer/safari_importer_utils.mm',
    291         'common/instant_restricted_id_cache.h',
    292         'common/instant_types.cc',
    293         'common/instant_types.h',
    294         'common/localized_error.cc',
    295         'common/localized_error.h',
    296         'common/local_discovery/service_discovery_client.cc',
    297         'common/local_discovery/service_discovery_client.h',
    298         'common/logging_chrome.cc',
    299         'common/logging_chrome.h',
    300         'common/mac/app_mode_common.h',
    301         'common/mac/app_mode_common.mm',
    302         'common/mac/cfbundle_blocker.h',
    303         'common/mac/cfbundle_blocker.mm',
    304         'common/mac/launchd.h',
    305         'common/mac/launchd.mm',
    306         'common/mac/objc_method_swizzle.h',
    307         'common/mac/objc_method_swizzle.mm',
    308         'common/mac/objc_zombie.h',
    309         'common/mac/objc_zombie.mm',
    310         'common/media/webrtc_logging_messages.h',
    311         'common/metrics/caching_permuted_entropy_provider.cc',
    312         'common/metrics/caching_permuted_entropy_provider.h',
    313         'common/metrics/metrics_log_base.cc',
    314         'common/metrics/metrics_log_base.h',
    315         'common/metrics/metrics_log_manager.cc',
    316         'common/metrics/metrics_log_manager.h',
    317         'common/metrics/metrics_service_base.cc',
    318         'common/metrics/metrics_service_base.h',
    319         'common/metrics/variations/experiment_labels.cc',
    320         'common/metrics/variations/experiment_labels.h',
    321         'common/metrics/variations/uniformity_field_trials.cc',
    322         'common/metrics/variations/uniformity_field_trials.h',
    323         'common/metrics/variations/variations_util.cc',
    324         'common/metrics/variations/variations_util.h',
    325         'common/multi_process_lock.h',
    326         'common/multi_process_lock_linux.cc',
    327         'common/multi_process_lock_mac.cc',
    328         'common/multi_process_lock_win.cc',
    329         'common/omaha_query_params/omaha_query_params.cc',
    330         'common/omaha_query_params/omaha_query_params.h',
    331         'common/omnibox_focus_state.h',
    332         'common/partial_circular_buffer.cc',
    333         'common/partial_circular_buffer.h',
    334         'common/pepper_flash.cc',
    335         'common/pepper_flash.h',
    336         'common/pepper_permission_util.cc',
    337         'common/pepper_permission_util.h',
    338         'common/pref_names_util.cc',
    339         'common/pref_names_util.h',
    340         'common/print_messages.cc',
    341         'common/print_messages.h',
    342         'common/profiling.cc',
    343         'common/profiling.h',
    344         'common/ref_counted_util.h',
    345         'common/render_messages.cc',
    346         'common/render_messages.h',
    347         'common/safe_browsing/download_protection_util.cc',
    348         'common/safe_browsing/download_protection_util.h',
    349         'common/safe_browsing/safebrowsing_messages.h',
    350         'common/safe_browsing/zip_analyzer.cc',
    351         'common/safe_browsing/zip_analyzer.h',
    352         'common/search_provider.h',
    353         'common/search_types.h',
    354         'common/search_urls.cc',
    355         'common/search_urls.h',
    356         'common/service_messages.h',
    357         'common/service_process_util.cc',
    358         'common/service_process_util.h',
    359         'common/service_process_util_linux.cc',
    360         'common/service_process_util_mac.mm',
    361         'common/service_process_util_posix.cc',
    362         'common/service_process_util_posix.h',
    363         'common/service_process_util_win.cc',
    364         'common/spellcheck_common.cc',
    365         'common/spellcheck_common.h',
    366         'common/spellcheck_marker.h',
    367         'common/spellcheck_messages.h',
    368         'common/spellcheck_result.h',
    369         'common/switch_utils.cc',
    370         'common/switch_utils.h',
    371         'common/thumbnail_score.cc',
    372         'common/thumbnail_score.h',
    373         'common/translate/language_detection_details.cc',
    374         'common/translate/language_detection_details.h',
    375         'common/translate/translate_errors.h',
    376         'common/tts_messages.h',
    377         'common/tts_utterance_request.cc',
    378         'common/tts_utterance_request.h',
    379         'common/url_constants.cc',
    380         'common/url_constants.h',
    381         'common/web_application_info.cc',
    382         'common/web_application_info.h',
    383         'common/worker_thread_ticker.cc',
    384         'common/worker_thread_ticker.h',
    385       ],
    386       'conditions': [
    387         ['enable_extensions==1', {
    388           'dependencies': [
    389             '../device/bluetooth/bluetooth.gyp:device_bluetooth',
    390             '../device/usb/usb.gyp:device_usb',
    391           ],
    392         }, {  # enable_extensions == 0
    393           'sources/': [
    394             ['exclude', '^common/extensions/api/'],
    395             ['include', 'common/extensions/api/extension_action/action_info.cc'],
    396             ['include', 'common/extensions/api/extension_action/action_info.h'],
    397             ['include', 'common/extensions/api/i18n/default_locale_handler.cc'],
    398             ['include', 'common/extensions/api/i18n/default_locale_handler.h'],
    399             ['include', 'common/extensions/api/identity/oauth2_manifest_handler.cc'],
    400             ['include', 'common/extensions/api/identity/oauth2_manifest_handler.h'],
    401             ['include', 'common/extensions/api/managed_mode_private/managed_mode_handler.cc'],
    402             ['include', 'common/extensions/api/managed_mode_private/managed_mode_handler.h'],
    403             ['include', 'common/extensions/api/plugins/plugins_handler.cc'],
    404             ['include', 'common/extensions/api/plugins/plugins_handler.h'],
    405             ['include', 'common/extensions/api/storage/storage_schema_manifest_handler.cc'],
    406             ['include', 'common/extensions/api/storage/storage_schema_manifest_handler.h'],
    407           ],
    408         }],
    409         ['OS=="win" or OS=="mac"', {
    410           'sources': [
    411             'common/media_galleries/itunes_library.cc',
    412             'common/media_galleries/itunes_library.h',
    413             'common/media_galleries/picasa_types.cc',
    414             'common/media_galleries/picasa_types.h',
    415             'common/media_galleries/pmp_constants.h',
    416           ],
    417         }],
    418         ['OS=="mac"', {
    419           'sources': [
    420             'common/media_galleries/iphoto_library.cc',
    421             'common/media_galleries/iphoto_library.h',
    422           ],
    423         }],
    424         ['OS != "ios"', {
    425           'dependencies': [
    426             '<(DEPTH)/chrome/common/extensions/api/api.gyp:api',
    427             '<(DEPTH)/components/components.gyp:autofill_core_common',
    428             '<(DEPTH)/components/components.gyp:autofill_content_common',
    429             '<(DEPTH)/components/nacl.gyp:nacl_common',
    430             '<(DEPTH)/components/components.gyp:visitedlink_common',
    431             '<(DEPTH)/extensions/extensions.gyp:extensions_common',
    432             '<(DEPTH)/ipc/ipc.gyp:ipc',
    433             '<(DEPTH)/third_party/adobe/flash/flash_player.gyp:flapper_version_h',
    434             '<(DEPTH)/third_party/re2/re2.gyp:re2',
    435             '<(DEPTH)/third_party/widevine/cdm/widevine_cdm.gyp:widevine_cdm_version_h',
    436           ],
    437         }, {  # OS == ios
    438           'sources/': [
    439             ['exclude', '^common/child_process_'],
    440             ['exclude', '^common/chrome_content_client\\.cc$'],
    441             ['exclude', '^common/chrome_version_info_posix\\.cc$'],
    442             ['exclude', '^common/common_message_generator\\.cc$'],
    443             ['exclude', '^common/common_param_traits'],
    444             ['exclude', '^common/custom_handlers/'],
    445             ['exclude', '^common/extensions/'],
    446             ['exclude', '^common/logging_chrome\\.'],
    447             ['exclude', '^common/multi_process_'],
    448             ['exclude', '^common/nacl_'],
    449             ['exclude', '^common/pepper_flash\\.'],
    450             ['exclude', '^common/profiling\\.'],
    451             ['exclude', '^common/service_process_util_'],
    452             ['exclude', '^common/spellcheck_'],
    453             ['exclude', '^common/validation_message_'],
    454             ['exclude', '^common/web_apps\\.'],
    455             # TODO(ios): Include files here as they are made to work; once
    456             # everything is online, remove everything below here and just
    457             # use the exclusions above.
    458             ['exclude', '\\.(cc|mm)$'],
    459             ['include', '_ios\\.(cc|mm)$'],
    460             ['include', '(^|/)ios/'],
    461             ['include', '^common/chrome_version_info\\.cc$'],
    462             ['include', '^common/translate'],
    463             ['include', '^common/zip'],
    464           ],
    465           'include_dirs': [
    466             '<(DEPTH)/breakpad/src',
    467           ],
    468         }],
    469         ['enable_printing!=0', {
    470           'dependencies': [
    471             '<(DEPTH)/printing/printing.gyp:printing',
    472           ],
    473         }],
    474         ['OS!="ios" and chrome_multiple_dll!=1', {
    475           'dependencies': [
    476             '<(DEPTH)/webkit/glue/webkit_glue.gyp:glue',
    477           ],
    478         }],
    479         ['OS=="android"', {
    480           'sources/': [
    481             ['exclude', '^common/chrome_version_info_posix.cc'],
    482             ['exclude', '^common/service_'],
    483           ],
    484           'sources!': [
    485             'common/badge_util.cc',
    486             'common/extensions/api/extension_action/browser_action_handler.cc',
    487             'common/extensions/api/extension_action/page_action_handler.cc',
    488             'common/extensions/api/spellcheck/spellcheck_handler.cc',
    489             'common/extensions/manifest_handlers/minimum_chrome_version_checker.cc',
    490             'common/extensions/manifest_handlers/nacl_modules_handler.cc',
    491             'common/icon_with_badge_image_source.cc',
    492             'common/importer/imported_bookmark_entry.cc',
    493             'common/importer/importer_bridge.cc',
    494             'common/importer/importer_data_types.cc',
    495             'common/importer/importer_url_row.cc',
    496             'common/net/url_util.cc',
    497             'common/spellcheck_common.cc',
    498           ],
    499         }],
    500         ['OS=="win"', {
    501           'include_dirs': [
    502             '<(DEPTH)/breakpad/src',
    503             '<(DEPTH)/third_party/wtl/include',
    504           ],
    505         }],
    506         ['enable_mdns == 1', {
    507             'sources': [
    508               'common/local_discovery/local_discovery_messages.h',
    509             ]
    510         }],
    511         ['toolkit_uses_gtk == 1', {
    512           'dependencies': [
    513             '../build/linux/system.gyp:gtk',
    514           ],
    515           'export_dependent_settings': [
    516             '../third_party/sqlite/sqlite.gyp:sqlite',
    517           ],
    518           'link_settings': {
    519             'libraries': [
    520               '-lX11',
    521               '-lXrender',
    522               '-lXss',
    523               '-lXext',
    524             ],
    525           },
    526         }],
    527         ['chromeos==1', {
    528           'sources!': [
    529             'common/chrome_version_info_linux.cc',
    530           ],
    531         }],
    532         ['OS=="mac"', {
    533           'dependencies': [
    534             '../third_party/mach_override/mach_override.gyp:mach_override',
    535           ],
    536           'include_dirs': [
    537             '<(DEPTH)/breakpad/src',
    538             '../third_party/GTM',
    539           ],
    540           'sources!': [
    541             'common/child_process_logging_posix.cc',
    542             'common/chrome_version_info_posix.cc',
    543           ],
    544         }],
    545         ['remoting==1', {
    546           'dependencies': [
    547             '../remoting/remoting.gyp:remoting_client_plugin',
    548           ],
    549         }],
    550         ['enable_automation==0', {
    551           'sources/': [
    552             ['exclude', '^common/automation_']
    553           ]
    554         }],
    555         ['enable_plugins==0', {
    556           'source!' : [
    557             'common/pepper_permission_util.cc',
    558           ],
    559         }],
    560         ['use_system_nspr==1', {
    561           'dependencies': [
    562             '<(DEPTH)/base/third_party/nspr/nspr.gyp:nspr',
    563           ],
    564         }],
    565         ['enable_webrtc==0', {
    566           'sources!': [
    567             'common/media/webrtc_logging_messages.h',
    568           ]
    569         }],
    570         ['enable_printing==0', {
    571           'sources!': [
    572             'common/print_messages.cc',
    573             'common/print_messages.h',
    574           ]
    575         }],
    576         ['configuration_policy==1', {
    577           'dependencies': [
    578             '<(DEPTH)/components/components.gyp:policy',
    579           ],
    580         }],
    581       ],
    582       'target_conditions': [
    583         ['OS == "ios"', {
    584           'sources/': [
    585             # Pull in specific Mac files for iOS (which have been filtered out
    586             # by file name rules).
    587             ['include', '^common/chrome_version_info_mac\\.mm$'],
    588           ],
    589         }],
    590       ],
    591       'export_dependent_settings': [
    592         '../base/base.gyp:base',
    593         'metrics_proto',
    594       ],
    595     },
    596     {
    597       'target_name': 'common_version',
    598       'type': 'none',
    599       'conditions': [
    600         ['os_posix == 1 and OS != "mac" and OS != "ios"', {
    601           'direct_dependent_settings': {
    602             'include_dirs': [
    603               '<(SHARED_INTERMEDIATE_DIR)',
    604             ],
    605           },
    606           # Because posix_version generates a header, we must set the
    607           # hard_dependency flag.
    608           'hard_dependency': 1,
    609           'actions': [
    610             {
    611               'action_name': 'posix_version',
    612               'variables': {
    613                 'lastchange_path':
    614                   '<(DEPTH)/build/util/LASTCHANGE',
    615                 'version_py_path': 'tools/build/version.py',
    616                 'version_path': 'VERSION',
    617                 'template_input_path': 'common/chrome_version_info_posix.h.version',
    618               },
    619               'conditions': [
    620                 [ 'branding == "Chrome"', {
    621                   'variables': {
    622                      'branding_path':
    623                        'app/theme/google_chrome/BRANDING',
    624                   },
    625                 }, { # else branding!="Chrome"
    626                   'variables': {
    627                      'branding_path':
    628                        'app/theme/chromium/BRANDING',
    629                   },
    630                 }],
    631               ],
    632               'inputs': [
    633                 '<(template_input_path)',
    634                 '<(version_path)',
    635                 '<(branding_path)',
    636                 '<(lastchange_path)',
    637               ],
    638               'outputs': [
    639                 '<(SHARED_INTERMEDIATE_DIR)/chrome/common/chrome_version_info_posix.h',
    640               ],
    641               'action': [
    642                 'python',
    643                 '<(version_py_path)',
    644                 '-f', '<(version_path)',
    645                 '-f', '<(branding_path)',
    646                 '-f', '<(lastchange_path)',
    647                 '<(template_input_path)',
    648                 '<@(_outputs)',
    649               ],
    650               'message': 'Generating version information',
    651             },
    652           ],
    653         }],
    654       ],
    655     },
    656     {
    657       'target_name': 'common_net',
    658       'type': 'static_library',
    659       'sources': [
    660         'common/net/net_error_info.cc',
    661         'common/net/net_error_info.h',
    662         'common/net/net_resource_provider.cc',
    663         'common/net/net_resource_provider.h',
    664         'common/net/predictor_common.h',
    665         'common/net/url_fixer_upper.cc',
    666         'common/net/url_fixer_upper.h',
    667         'common/net/url_util.cc',
    668         'common/net/url_util.h',
    669         'common/net/x509_certificate_model.cc',
    670         'common/net/x509_certificate_model_nss.cc',
    671         'common/net/x509_certificate_model_openssl.cc',
    672         'common/net/x509_certificate_model.h',
    673       ],
    674       'dependencies': [
    675         '<(DEPTH)/base/base.gyp:base',
    676         '<(DEPTH)/chrome/chrome_resources.gyp:chrome_resources',
    677         '<(DEPTH)/chrome/chrome_resources.gyp:chrome_strings',
    678         '<(DEPTH)/crypto/crypto.gyp:crypto',
    679         '<(DEPTH)/net/net.gyp:net_resources',
    680         '<(DEPTH)/net/net.gyp:net',
    681         '<(DEPTH)/third_party/icu/icu.gyp:icui18n',
    682         '<(DEPTH)/third_party/icu/icu.gyp:icuuc',
    683       ],
    684       'conditions': [
    685         ['OS != "ios"', {
    686           'dependencies': [
    687             '<(DEPTH)/gpu/gpu.gyp:gpu_ipc',
    688           ],
    689         }, {  # OS == ios
    690           'sources!': [
    691             'common/net/net_resource_provider.cc',
    692             'common/net/x509_certificate_model.cc',
    693           ],
    694         }],
    695         ['os_posix == 1 and OS != "mac" and OS != "ios" and OS != "android"', {
    696             'dependencies': [
    697               '../build/linux/system.gyp:ssl',
    698             ],
    699           },
    700         ],
    701         ['os_posix != 1 or OS == "mac" or OS == "ios"', {
    702             'sources!': [
    703               'common/net/x509_certificate_model_nss.cc',
    704               'common/net/x509_certificate_model_openssl.cc',
    705             ],
    706           },
    707         ],
    708         ['OS == "android"', {
    709             'dependencies': [
    710               '../third_party/openssl/openssl.gyp:openssl',
    711             ],
    712           },
    713         ],
    714         ['use_openssl==1', {
    715             'sources!': [
    716               'common/net/x509_certificate_model_nss.cc',
    717             ],
    718           },
    719           {  # else !use_openssl: remove the unneeded files
    720             'sources!': [
    721               'common/net/x509_certificate_model_openssl.cc',
    722             ],
    723           },
    724         ],
    725         ['OS=="win"', {
    726             # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
    727             'msvs_disabled_warnings': [4267, ],
    728           },
    729         ],
    730       ],
    731     },
    732     {
    733       # Protobuf compiler / generator for the safebrowsing client
    734       # model proto and the client-side detection (csd) request
    735       # protocol buffer.
    736       'target_name': 'safe_browsing_proto',
    737       'type': 'static_library',
    738       'sources': [
    739         'common/safe_browsing/client_model.proto',
    740         'common/safe_browsing/csd.proto'
    741       ],
    742       'variables': {
    743         'proto_in_dir': 'common/safe_browsing',
    744         'proto_out_dir': 'chrome/common/safe_browsing',
    745       },
    746       'includes': [ '../build/protoc.gypi' ],
    747     },
    748     {
    749       # Protobuf compiler / generator for UMA (User Metrics Analysis).
    750       'target_name': 'metrics_proto',
    751       'type': 'static_library',
    752       'sources': [
    753         'common/metrics/proto/chrome_experiments.proto',
    754         'common/metrics/proto/chrome_user_metrics_extension.proto',
    755         'common/metrics/proto/histogram_event.proto',
    756         'common/metrics/proto/omnibox_event.proto',
    757         'common/metrics/proto/perf_data.proto',
    758         'common/metrics/proto/permuted_entropy_cache.proto',
    759         'common/metrics/proto/profiler_event.proto',
    760         'common/metrics/proto/system_profile.proto',
    761         'common/metrics/proto/user_action_event.proto',
    762       ],
    763       'variables': {
    764         'proto_in_dir': 'common/metrics/proto',
    765         'proto_out_dir': 'chrome/common/metrics/proto',
    766       },
    767       'includes': [ '../build/protoc.gypi' ],
    768     },
    769   ],
    770 }
    771