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. 4 5 { 6 'targets': [ 7 { 8 'target_name': 'renderer', 9 'type': 'static_library', 10 'variables': { 'enable_wexit_time_destructors': 1, }, 11 'dependencies': [ 12 'common', 13 'common_net', 14 'chrome_resources.gyp:chrome_resources', 15 'chrome_resources.gyp:chrome_strings', 16 '../third_party/re2/re2.gyp:re2', 17 '../components/components.gyp:autofill_content_renderer', 18 '../components/components.gyp:cdm_renderer', 19 '../components/components.gyp:data_reduction_proxy_common', 20 '../components/components.gyp:startup_metric_utils', 21 '../components/components.gyp:plugins_renderer', 22 '../components/components.gyp:translate_core_common', 23 '../components/components.gyp:translate_core_language_detection', 24 '../components/components.gyp:visitedlink_renderer', 25 '../content/content.gyp:content_renderer', 26 '../extensions/extensions.gyp:extensions_renderer', 27 '../extensions/extensions_resources.gyp:extensions_resources', 28 '../media/cast/cast.gyp:cast_logging_proto', 29 '../media/cast/cast.gyp:cast_sender', 30 '../media/cast/cast.gyp:cast_transport', 31 '../net/net.gyp:net', 32 '../skia/skia.gyp:skia', 33 '../third_party/WebKit/public/blink.gyp:blink', 34 '../third_party/hunspell/hunspell.gyp:hunspell', 35 '../third_party/icu/icu.gyp:icui18n', 36 '../third_party/icu/icu.gyp:icuuc', 37 '../third_party/npapi/npapi.gyp:npapi', 38 '../third_party/widevine/cdm/widevine_cdm.gyp:widevine_cdm_version_h', 39 '../ui/surface/surface.gyp:surface', 40 '../webkit/child/webkit_child.gyp:webkit_child', 41 '../webkit/common/webkit_common.gyp:webkit_common', 42 '../webkit/webkit_resources.gyp:webkit_resources', 43 ], 44 'include_dirs': [ 45 '..', 46 # Needed by chrome_content_renderer_client.cc. 47 '<(SHARED_INTERMEDIATE_DIR)', 48 ], 49 'sources': [ 50 'renderer/benchmarking_extension.cc', 51 'renderer/benchmarking_extension.h', 52 'renderer/extensions/app_bindings.cc', 53 'renderer/extensions/app_bindings.h', 54 'renderer/extensions/app_window_custom_bindings.cc', 55 'renderer/extensions/app_window_custom_bindings.h', 56 'renderer/extensions/automation_internal_custom_bindings.cc', 57 'renderer/extensions/automation_internal_custom_bindings.h', 58 'renderer/extensions/cast_streaming_native_handler.cc', 59 'renderer/extensions/cast_streaming_native_handler.h', 60 'renderer/extensions/chrome_extension_helper.cc', 61 'renderer/extensions/chrome_extension_helper.h', 62 'renderer/extensions/chrome_extensions_dispatcher_delegate.cc', 63 'renderer/extensions/chrome_extensions_dispatcher_delegate.h', 64 'renderer/extensions/chrome_extensions_render_frame_observer.cc', 65 'renderer/extensions/chrome_extensions_render_frame_observer.h', 66 'renderer/extensions/chrome_extensions_renderer_client.cc', 67 'renderer/extensions/chrome_extensions_renderer_client.h', 68 'renderer/extensions/chrome_v8_context.cc', 69 'renderer/extensions/chrome_v8_context.h', 70 'renderer/extensions/chrome_v8_extension_handler.cc', 71 'renderer/extensions/chrome_v8_extension_handler.h', 72 'renderer/extensions/enterprise_platform_keys_natives.cc', 73 'renderer/extensions/enterprise_platform_keys_natives.h', 74 'renderer/extensions/extension_frame_helper.cc', 75 'renderer/extensions/extension_frame_helper.h', 76 'renderer/extensions/extension_localization_peer.cc', 77 'renderer/extensions/extension_localization_peer.h', 78 'renderer/extensions/file_browser_handler_custom_bindings.cc', 79 'renderer/extensions/file_browser_handler_custom_bindings.h', 80 'renderer/extensions/file_browser_private_custom_bindings.cc', 81 'renderer/extensions/file_browser_private_custom_bindings.h', 82 'renderer/extensions/media_galleries_custom_bindings.cc', 83 'renderer/extensions/media_galleries_custom_bindings.h', 84 'renderer/extensions/notifications_native_handler.cc', 85 'renderer/extensions/notifications_native_handler.h', 86 'renderer/extensions/page_actions_custom_bindings.cc', 87 'renderer/extensions/page_actions_custom_bindings.h', 88 'renderer/extensions/page_capture_custom_bindings.cc', 89 'renderer/extensions/page_capture_custom_bindings.h', 90 'renderer/extensions/renderer_permissions_policy_delegate.cc', 91 'renderer/extensions/renderer_permissions_policy_delegate.h', 92 'renderer/extensions/resource_request_policy.cc', 93 'renderer/extensions/resource_request_policy.h', 94 'renderer/extensions/sync_file_system_custom_bindings.cc', 95 'renderer/extensions/sync_file_system_custom_bindings.h', 96 'renderer/extensions/tab_finder.cc', 97 'renderer/extensions/tab_finder.h', 98 'renderer/extensions/tabs_custom_bindings.cc', 99 'renderer/extensions/tabs_custom_bindings.h', 100 'renderer/extensions/webstore_bindings.cc', 101 'renderer/extensions/webstore_bindings.h', 102 'renderer/isolated_world_ids.h', 103 'renderer/loadtimes_extension_bindings.cc', 104 'renderer/loadtimes_extension_bindings.h', 105 'renderer/media/cast_rtp_stream.cc', 106 'renderer/media/cast_rtp_stream.h', 107 'renderer/media/cast_ipc_dispatcher.cc', 108 'renderer/media/cast_ipc_dispatcher.h', 109 'renderer/media/cast_session.cc', 110 'renderer/media/cast_session.h', 111 'renderer/media/cast_session_delegate.cc', 112 'renderer/media/cast_session_delegate.h', 113 'renderer/media/cast_threads.cc', 114 'renderer/media/cast_threads.h', 115 'renderer/media/cast_transport_sender_ipc.cc', 116 'renderer/media/cast_transport_sender_ipc.h', 117 'renderer/media/cast_udp_transport.cc', 118 'renderer/media/cast_udp_transport.h', 119 'renderer/media/chrome_key_systems.cc', 120 'renderer/media/chrome_key_systems.h', 121 'renderer/media/chrome_webrtc_log_message_delegate.cc', 122 'renderer/media/chrome_webrtc_log_message_delegate.h', 123 'renderer/media/webrtc_logging_message_filter.cc', 124 'renderer/media/webrtc_logging_message_filter.h', 125 'renderer/net/net_error_helper.cc', 126 'renderer/net/net_error_helper.h', 127 'renderer/net/net_error_helper_core.cc', 128 'renderer/net/net_error_helper_core.h', 129 'renderer/net/net_error_page_controller.cc', 130 'renderer/net/net_error_page_controller.h', 131 'renderer/net/predictor_queue.cc', 132 'renderer/net/predictor_queue.h', 133 'renderer/net/prescient_networking_dispatcher.cc', 134 'renderer/net/prescient_networking_dispatcher.h', 135 'renderer/net/renderer_net_predictor.cc', 136 'renderer/net/renderer_net_predictor.h', 137 'renderer/net_benchmarking_extension.cc', 138 'renderer/net_benchmarking_extension.h', 139 'renderer/playback_extension.cc', 140 'renderer/playback_extension.h', 141 'renderer/principals_extension_bindings.cc', 142 'renderer/principals_extension_bindings.h', 143 'renderer/resources/extensions/app_custom_bindings.js', 144 'renderer/resources/extensions/app_window_custom_bindings.js', 145 'renderer/resources/extensions/automation_custom_bindings.js', 146 'renderer/resources/extensions/browser_action_custom_bindings.js', 147 'renderer/resources/extensions/chrome_direct_setting.js', 148 'renderer/resources/extensions/chrome_setting.js', 149 'renderer/resources/extensions/content_setting.js', 150 'renderer/resources/extensions/declarative_content_custom_bindings.js', 151 'renderer/resources/extensions/declarative_webrequest_custom_bindings.js', 152 'renderer/resources/extensions/enterprise_platform_keys_custom_bindings.js', 153 'renderer/resources/extensions/feedback_private_custom_bindings.js', 154 'renderer/resources/extensions/file_browser_handler_custom_bindings.js', 155 'renderer/resources/extensions/file_browser_private_custom_bindings.js', 156 'renderer/resources/extensions/file_system_custom_bindings.js', 157 'renderer/resources/extensions/file_system_provider_custom_bindings.js', 158 'renderer/resources/extensions/gcm_custom_bindings.js', 159 'renderer/resources/extensions/identity_custom_bindings.js', 160 'renderer/resources/extensions/image_writer_private_custom_bindings.js', 161 'renderer/resources/extensions/input.ime_custom_bindings.js', 162 'renderer/resources/extensions/notifications_custom_bindings.js', 163 'renderer/resources/extensions/omnibox_custom_bindings.js', 164 'renderer/resources/extensions/page_action_custom_bindings.js', 165 'renderer/resources/extensions/page_actions_custom_bindings.js', 166 'renderer/resources/extensions/page_capture_custom_bindings.js', 167 'renderer/resources/extensions/system_indicator_custom_bindings.js', 168 'renderer/resources/extensions/tts_custom_bindings.js', 169 'renderer/resources/extensions/tts_engine_custom_bindings.js', 170 'renderer/resources/extensions/web_request_custom_bindings.js', 171 'renderer/resources/extensions/web_view.js', 172 'renderer/resources/extensions/web_view_events.js', 173 'renderer/resources/extensions/web_view_experimental.js', 174 'renderer/resources/extensions/webview_custom_bindings.js', 175 'renderer/chrome_content_renderer_client.cc', 176 'renderer/chrome_content_renderer_client.h', 177 'renderer/chrome_render_frame_observer.cc', 178 'renderer/chrome_render_frame_observer.h', 179 'renderer/chrome_render_process_observer.cc', 180 'renderer/chrome_render_process_observer.h', 181 'renderer/chrome_render_view_observer.cc', 182 'renderer/chrome_render_view_observer.h', 183 'renderer/content_settings_observer.cc', 184 'renderer/content_settings_observer.h', 185 'renderer/custom_menu_commands.h', 186 'renderer/external_extension.cc', 187 'renderer/external_extension.h', 188 'renderer/page_load_histograms.cc', 189 'renderer/page_load_histograms.h', 190 'renderer/pepper/chrome_renderer_pepper_host_factory.cc', 191 'renderer/pepper/chrome_renderer_pepper_host_factory.h', 192 'renderer/pepper/pepper_flash_drm_renderer_host.cc', 193 'renderer/pepper/pepper_flash_drm_renderer_host.h', 194 'renderer/pepper/pepper_flash_font_file_host.cc', 195 'renderer/pepper/pepper_flash_font_file_host.h', 196 'renderer/pepper/pepper_flash_fullscreen_host.cc', 197 'renderer/pepper/pepper_flash_fullscreen_host.h', 198 'renderer/pepper/pepper_flash_menu_host.cc', 199 'renderer/pepper/pepper_flash_menu_host.h', 200 'renderer/pepper/pepper_flash_renderer_host.cc', 201 'renderer/pepper/pepper_flash_renderer_host.h', 202 'renderer/pepper/pepper_helper.cc', 203 'renderer/pepper/pepper_helper.h', 204 'renderer/pepper/pepper_pdf_host.cc', 205 'renderer/pepper/pepper_pdf_host.h', 206 'renderer/pepper/pepper_shared_memory_message_filter.cc', 207 'renderer/pepper/pepper_shared_memory_message_filter.h', 208 'renderer/pepper/pepper_uma_host.cc', 209 'renderer/pepper/pepper_uma_host.h', 210 'renderer/pepper/ppb_pdf_impl.cc', 211 'renderer/pepper/ppb_pdf_impl.h', 212 'renderer/plugins/chrome_plugin_placeholder.cc', 213 'renderer/plugins/chrome_plugin_placeholder.h', 214 'renderer/plugins/plugin_uma.cc', 215 'renderer/plugins/plugin_uma.h', 216 'renderer/prefetch_helper.cc', 217 'renderer/prefetch_helper.h', 218 'renderer/prerender/prerender_dispatcher.cc', 219 'renderer/prerender/prerender_dispatcher.h', 220 'renderer/prerender/prerender_extra_data.cc', 221 'renderer/prerender/prerender_extra_data.h', 222 'renderer/prerender/prerender_helper.cc', 223 'renderer/prerender/prerender_helper.h', 224 'renderer/prerender/prerender_media_load_deferrer.cc', 225 'renderer/prerender/prerender_media_load_deferrer.h', 226 'renderer/prerender/prerenderer_client.cc', 227 'renderer/prerender/prerenderer_client.h', 228 'renderer/printing/print_web_view_helper.cc', 229 'renderer/printing/print_web_view_helper.h', 230 'renderer/printing/print_web_view_helper_android.cc', 231 'renderer/printing/print_web_view_helper_linux.cc', 232 'renderer/printing/print_web_view_helper_mac.mm', 233 'renderer/safe_browsing/feature_extractor_clock.cc', 234 'renderer/safe_browsing/feature_extractor_clock.h', 235 'renderer/safe_browsing/features.cc', 236 'renderer/safe_browsing/features.h', 237 'renderer/safe_browsing/malware_dom_details.cc', 238 'renderer/safe_browsing/malware_dom_details.h', 239 'renderer/safe_browsing/murmurhash3_util.cc', 240 'renderer/safe_browsing/murmurhash3_util.h', 241 'renderer/safe_browsing/phishing_classifier.cc', 242 'renderer/safe_browsing/phishing_classifier.h', 243 'renderer/safe_browsing/phishing_classifier_delegate.cc', 244 'renderer/safe_browsing/phishing_classifier_delegate.h', 245 'renderer/safe_browsing/phishing_dom_feature_extractor.cc', 246 'renderer/safe_browsing/phishing_dom_feature_extractor.h', 247 'renderer/safe_browsing/phishing_term_feature_extractor.cc', 248 'renderer/safe_browsing/phishing_term_feature_extractor.h', 249 'renderer/safe_browsing/phishing_url_feature_extractor.cc', 250 'renderer/safe_browsing/phishing_url_feature_extractor.h', 251 'renderer/safe_browsing/scorer.cc', 252 'renderer/safe_browsing/scorer.h', 253 'renderer/searchbox/search_bouncer.cc', 254 'renderer/searchbox/search_bouncer.h', 255 'renderer/searchbox/searchbox.cc', 256 'renderer/searchbox/searchbox.h', 257 'renderer/searchbox/searchbox_extension.cc', 258 'renderer/searchbox/searchbox_extension.h', 259 'renderer/security_filter_peer.cc', 260 'renderer/security_filter_peer.h', 261 'renderer/spellchecker/cocoa_spelling_engine_mac.cc', 262 'renderer/spellchecker/cocoa_spelling_engine_mac.h', 263 'renderer/spellchecker/custom_dictionary_engine.cc', 264 'renderer/spellchecker/custom_dictionary_engine.h', 265 'renderer/spellchecker/hunspell_engine.cc', 266 'renderer/spellchecker/hunspell_engine.h', 267 'renderer/spellchecker/spellcheck_provider.cc', 268 'renderer/spellchecker/spellcheck_provider.h', 269 'renderer/spellchecker/spellcheck.cc', 270 'renderer/spellchecker/spellcheck.h', 271 'renderer/spellchecker/spellcheck_language.cc', 272 'renderer/spellchecker/spellcheck_language.h', 273 'renderer/spellchecker/spellcheck_worditerator.cc', 274 'renderer/spellchecker/spellcheck_worditerator.h', 275 'renderer/spellchecker/spelling_engine.h', 276 'renderer/tts_dispatcher.cc', 277 'renderer/tts_dispatcher.h', 278 'renderer/translate/translate_helper.cc', 279 'renderer/translate/translate_helper.h', 280 'renderer/web_apps.cc', 281 'renderer/web_apps.h', 282 'renderer/webview_color_overlay.cc', 283 'renderer/webview_color_overlay.h', 284 'renderer/worker_permission_client_proxy.cc', 285 'renderer/worker_permission_client_proxy.h', 286 ], 287 'conditions': [ 288 ['disable_nacl!=1', { 289 'dependencies': [ 290 '../components/nacl.gyp:nacl', 291 '../components/nacl.gyp:nacl_renderer', 292 ], 293 }], 294 ['enable_plugins==1', { 295 'dependencies': [ 296 '../ppapi/ppapi_internal.gyp:ppapi_host', 297 '../ppapi/ppapi_internal.gyp:ppapi_proxy', 298 '../ppapi/ppapi_internal.gyp:ppapi_ipc', 299 '../ppapi/ppapi_internal.gyp:ppapi_shared', 300 ], 301 }, { # enable_plugins==0 302 'sources/': [ 303 ['exclude', '^renderer/pepper/'], 304 ], 305 }], 306 ['safe_browsing==1', { 307 'defines': [ 308 'FULL_SAFE_BROWSING', 309 ], 310 'dependencies': [ 311 'safe_browsing_proto', 312 '../third_party/smhasher/smhasher.gyp:murmurhash3', 313 ], 314 }, { # safe_browsing==0 || safe_browsing==2 315 'sources/': [ 316 ['exclude', '^renderer/safe_browsing/'], 317 ], 318 }], 319 ['enable_extensions==0', { 320 'sources!': [ 321 'renderer/extensions/chrome_extensions_render_frame_observer.cc', 322 'renderer/extensions/chrome_extensions_render_frame_observer.h', 323 ], 324 }], 325 ['enable_webrtc==0', { 326 'sources!': [ 327 'renderer/extensions/cast_streaming_native_handler.cc', 328 'renderer/extensions/cast_streaming_native_handler.h', 329 'renderer/media/chrome_webrtc_log_message_delegate.cc', 330 'renderer/media/chrome_webrtc_log_message_delegate.h', 331 'renderer/media/webrtc_logging_message_filter.cc', 332 'renderer/media/webrtc_logging_message_filter.h', 333 ], 334 }], 335 ['enable_spellcheck==0', { 336 'sources/': [ 337 ['exclude', '^renderer/spellchecker/'] 338 ], 339 'dependencies!': [ 340 '../third_party/hunspell/hunspell.gyp:hunspell', 341 ], 342 }], 343 ['OS=="mac"', { 344 'dependencies': [ 345 '../third_party/mach_override/mach_override.gyp:mach_override', 346 ], 347 }], 348 ['enable_printing==0', { 349 'sources/': [ 350 ['exclude', '^renderer/printing/'] 351 ] 352 }], 353 ['win_pdf_metafile_for_printing==1', { 354 'sources': [ 355 'renderer/printing/print_web_view_helper_pdf_win.cc', 356 ], 357 }, { 358 'sources': [ 359 'renderer/printing/print_web_view_helper_win.cc', 360 ], 361 }], 362 ['OS=="android"', { 363 'sources!': [ 364 'renderer/extensions/app_window_custom_bindings.cc', 365 'renderer/extensions/chrome_v8_extension_handler.cc', 366 'renderer/extensions/file_browser_handler_custom_bindings.cc', 367 'renderer/extensions/page_actions_custom_bindings.cc', 368 'renderer/extensions/tabs_custom_bindings.cc', 369 'renderer/extensions/tts_custom_bindings.cc', 370 'renderer/prerender/prerender_media_load_deferrer.cc', 371 'renderer/prerender/prerender_media_load_deferrer.h', 372 ], 373 }], 374 ['OS=="win"', { 375 'dependencies': [ 376 '../chrome_elf/chrome_elf.gyp:chrome_elf', 377 ], 378 'include_dirs': [ 379 '<(DEPTH)/third_party/wtl/include', 380 ], 381 'conditions': [ 382 ['win_use_allocator_shim==1', { 383 'dependencies': [ 384 '<(allocator_target)', 385 ], 386 'export_dependent_settings': [ 387 '<(allocator_target)', 388 ], 389 }], 390 ], 391 }], 392 ['OS != "ios"', { 393 'dependencies': [ 394 # TODO(hclam): See crbug.com/298380 for details. 395 # We should isolate the APIs needed by the renderer. 396 '<(DEPTH)/chrome/common/extensions/api/api.gyp:chrome_api', 397 ], 398 }], 399 ['enable_printing!=0', { 400 'dependencies': [ 401 '../printing/printing.gyp:printing', 402 ], 403 }], 404 ], 405 }, 406 ], 407 } 408