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