1 # Copyright (c) 2011 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 'conditions': [ 8 ['inside_chromium_build==0', { 9 'webkit_src_dir': '../../../../..', 10 },{ 11 'webkit_src_dir': '../../third_party/WebKit', 12 }], 13 ], 14 }, 15 'targets': [ 16 { 17 'target_name': 'webkit_resources', 18 'type': 'none', 19 'msvs_guid': '0B469837-3D46-484A-AFB3-C5A6C68730B9', 20 'variables': { 21 'grit_out_dir': '<(SHARED_INTERMEDIATE_DIR)/webkit', 22 }, 23 'actions': [ 24 { 25 'action_name': 'webkit_resources', 26 'variables': { 27 'grit_grd_file': 'webkit_resources.grd', 28 }, 29 'includes': [ '../../build/grit_action.gypi' ], 30 }, 31 { 32 'action_name': 'webkit_chromium_resources', 33 'variables': { 34 'grit_grd_file': '<(webkit_src_dir)/Source/WebKit/chromium/WebKit.grd', 35 }, 36 'includes': [ '../../build/grit_action.gypi' ], 37 }, 38 ], 39 'includes': [ '../../build/grit_target.gypi' ], 40 }, 41 { 42 'target_name': 'webkit_strings', 43 'type': 'none', 44 'msvs_guid': '60B43839-95E6-4526-A661-209F16335E0E', 45 'variables': { 46 'grit_out_dir': '<(SHARED_INTERMEDIATE_DIR)/webkit', 47 }, 48 'actions': [ 49 { 50 'action_name': 'webkit_strings', 51 'variables': { 52 'grit_grd_file': 'webkit_strings.grd', 53 }, 54 'includes': [ '../../build/grit_action.gypi' ], 55 }, 56 ], 57 'includes': [ '../../build/grit_target.gypi' ], 58 }, 59 { 60 'target_name': 'webkit_user_agent', 61 'type': '<(library)', 62 'msvs_guid': 'DB162DE1-7D56-4C4A-8A9F-80D396CD7AA8', 63 'dependencies': [ 64 '<(DEPTH)/app/app.gyp:app_base', 65 '<(DEPTH)/base/base.gyp:base_i18n', 66 ], 67 'actions': [ 68 { 69 'action_name': 'webkit_version', 70 'inputs': [ 71 '<(script)', 72 '<(webkit_src_dir)<(version_file)', 73 '../../build/util/lastchange.py', # Used by the script. 74 ], 75 'outputs': [ 76 '<(INTERMEDIATE_DIR)/webkit_version.h', 77 ], 78 'action': ['python', '<(script)', '<(webkit_src_dir)', 79 '<(version_file)', '<(INTERMEDIATE_DIR)'], 80 'variables': { 81 'script': '../build/webkit_version.py', 82 # version_file is a relative path from |webkit_src_dir| to 83 # the version file. But gyp will eat the variable unless 84 # it looks like an absolute path, so write it like one and 85 # then use it carefully above. 86 'version_file': '/Source/WebCore/Configurations/Version.xcconfig', 87 }, 88 }, 89 ], 90 'include_dirs': [ 91 '<(INTERMEDIATE_DIR)', 92 ], 93 'sources': [ 94 'user_agent.cc', 95 'user_agent.h', 96 ], 97 # Dependents may rely on files generated by this target or one of its 98 # own hard dependencies. 99 'hard_dependency': 1, 100 'conditions': [ 101 ], 102 }, 103 { 104 'target_name': 'glue', 105 'type': '<(library)', 106 'msvs_guid': 'C66B126D-0ECE-4CA2-B6DC-FA780AFBBF09', 107 'dependencies': [ 108 '<(DEPTH)/app/app.gyp:app_base', 109 '<(DEPTH)/base/base.gyp:base_i18n', 110 '<(DEPTH)/gpu/gpu.gyp:gpu_common', 111 '<(DEPTH)/gpu/gpu.gyp:gles2_implementation', 112 '<(DEPTH)/net/net.gyp:net', 113 '<(DEPTH)/ppapi/ppapi.gyp:ppapi_shared_impl', 114 '<(DEPTH)/printing/printing.gyp:printing', 115 '<(DEPTH)/skia/skia.gyp:skia', 116 '<(DEPTH)/third_party/icu/icu.gyp:icui18n', 117 '<(DEPTH)/third_party/icu/icu.gyp:icuuc', 118 '<(DEPTH)/third_party/npapi/npapi.gyp:npapi', 119 '<(DEPTH)/ppapi/ppapi.gyp:ppapi_c', 120 'webkit_resources', 121 'webkit_strings', 122 'webkit_user_agent', 123 ], 124 'actions': [ 125 ], 126 'include_dirs': [ 127 '<(INTERMEDIATE_DIR)', 128 '<(SHARED_INTERMEDIATE_DIR)/webkit', 129 ], 130 'sources': [ 131 # This list contains all .h, .cc, and .mm files in glue except for 132 # those in the test subdirectory and those with unittest in in their 133 # names. 134 '../plugins/npapi/carbon_plugin_window_tracker_mac.cc', 135 '../plugins/npapi/carbon_plugin_window_tracker_mac.h', 136 '../plugins/npapi/coregraphics_private_symbols_mac.h', 137 '../plugins/npapi/default_plugin_shared.h', 138 '../plugins/npapi/gtk_plugin_container.cc', 139 '../plugins/npapi/gtk_plugin_container.h', 140 '../plugins/npapi/gtk_plugin_container_manager.cc', 141 '../plugins/npapi/gtk_plugin_container_manager.h', 142 '../plugins/npapi/npapi_extension_thunk.cc', 143 '../plugins/npapi/npapi_extension_thunk.h', 144 '../plugins/npapi/plugin_constants_win.cc', 145 '../plugins/npapi/plugin_constants_win.h', 146 '../plugins/npapi/plugin_group.cc', 147 '../plugins/npapi/plugin_group.h', 148 '../plugins/npapi/plugin_host.cc', 149 '../plugins/npapi/plugin_host.h', 150 '../plugins/npapi/plugin_instance.cc', 151 '../plugins/npapi/plugin_instance.h', 152 '../plugins/npapi/plugin_instance_mac.mm', 153 '../plugins/npapi/plugin_lib.cc', 154 '../plugins/npapi/plugin_lib.h', 155 '../plugins/npapi/plugin_lib_mac.mm', 156 '../plugins/npapi/plugin_lib_posix.cc', 157 '../plugins/npapi/plugin_lib_win.cc', 158 '../plugins/npapi/plugin_list.cc', 159 '../plugins/npapi/plugin_list.h', 160 '../plugins/npapi/plugin_list_mac.mm', 161 '../plugins/npapi/plugin_list_posix.cc', 162 '../plugins/npapi/plugin_list_win.cc', 163 '../plugins/npapi/plugin_stream.cc', 164 '../plugins/npapi/plugin_stream.h', 165 '../plugins/npapi/plugin_stream_posix.cc', 166 '../plugins/npapi/plugin_stream_url.cc', 167 '../plugins/npapi/plugin_stream_url.h', 168 '../plugins/npapi/plugin_stream_win.cc', 169 '../plugins/npapi/plugin_string_stream.cc', 170 '../plugins/npapi/plugin_string_stream.h', 171 '../plugins/npapi/plugin_web_event_converter_mac.h', 172 '../plugins/npapi/plugin_web_event_converter_mac.mm', 173 '../plugins/npapi/quickdraw_drawing_manager_mac.cc', 174 '../plugins/npapi/quickdraw_drawing_manager_mac.h', 175 '../plugins/npapi/webplugin.cc', 176 '../plugins/npapi/webplugin.h', 177 '../plugins/npapi/webplugin_2d_device_delegate.cc', 178 '../plugins/npapi/webplugin_2d_device_delegate.h', 179 '../plugins/npapi/webplugin_3d_device_delegate.cc', 180 '../plugins/npapi/webplugin_3d_device_delegate.h', 181 '../plugins/npapi/webplugin_accelerated_surface_mac.h', 182 '../plugins/npapi/webplugin_audio_device_delegate.cc', 183 '../plugins/npapi/webplugin_audio_device_delegate.h', 184 '../plugins/npapi/webplugin_delegate.cc', 185 '../plugins/npapi/webplugin_delegate.h', 186 '../plugins/npapi/webplugin_delegate_impl.cc', 187 '../plugins/npapi/webplugin_delegate_impl.h', 188 '../plugins/npapi/webplugin_delegate_impl_gtk.cc', 189 '../plugins/npapi/webplugin_delegate_impl_mac.mm', 190 '../plugins/npapi/webplugin_delegate_impl_win.cc', 191 '../plugins/npapi/webplugin_file_delegate.cc', 192 '../plugins/npapi/webplugin_file_delegate.h', 193 '../plugins/npapi/webplugin_impl.cc', 194 '../plugins/npapi/webplugin_impl.h', 195 '../plugins/npapi/webplugin_print_delegate.cc', 196 '../plugins/npapi/webplugin_print_delegate.h', 197 '../plugins/npapi/webplugininfo.cc', 198 '../plugins/npapi/webplugininfo.h', 199 '../plugins/npapi/webview_plugin.cc', 200 '../plugins/npapi/webview_plugin.h', 201 '../plugins/plugin_switches.cc', 202 '../plugins/plugin_switches.h', 203 '../plugins/ppapi/callbacks.cc', 204 '../plugins/ppapi/callbacks.h', 205 '../plugins/ppapi/common.h', 206 '../plugins/ppapi/dir_contents.h', 207 '../plugins/ppapi/error_util.cc', 208 '../plugins/ppapi/error_util.h', 209 '../plugins/ppapi/event_conversion.cc', 210 '../plugins/ppapi/event_conversion.h', 211 '../plugins/ppapi/file_callbacks.cc', 212 '../plugins/ppapi/file_callbacks.h', 213 '../plugins/ppapi/file_path.cc', 214 '../plugins/ppapi/file_path.h', 215 '../plugins/ppapi/fullscreen_container.h', 216 '../plugins/ppapi/message_channel.cc', 217 '../plugins/ppapi/message_channel.h', 218 '../plugins/ppapi/npapi_glue.cc', 219 '../plugins/ppapi/npapi_glue.h', 220 '../plugins/ppapi/plugin_delegate.h', 221 '../plugins/ppapi/plugin_module.cc', 222 '../plugins/ppapi/plugin_module.h', 223 '../plugins/ppapi/plugin_object.cc', 224 '../plugins/ppapi/plugin_object.h', 225 '../plugins/ppapi/ppapi_plugin_instance.cc', 226 '../plugins/ppapi/ppapi_plugin_instance.h', 227 '../plugins/ppapi/ppapi_webplugin_impl.cc', 228 '../plugins/ppapi/ppapi_webplugin_impl.h', 229 '../plugins/ppapi/ppb_audio_impl.cc', 230 '../plugins/ppapi/ppb_audio_impl.h', 231 '../plugins/ppapi/ppb_broker_impl.cc', 232 '../plugins/ppapi/ppb_broker_impl.h', 233 '../plugins/ppapi/ppb_buffer_impl.cc', 234 '../plugins/ppapi/ppb_buffer_impl.h', 235 '../plugins/ppapi/ppb_char_set_impl.cc', 236 '../plugins/ppapi/ppb_char_set_impl.h', 237 '../plugins/ppapi/ppb_console_impl.cc', 238 '../plugins/ppapi/ppb_console_impl.h', 239 '../plugins/ppapi/ppb_context_3d_impl.cc', 240 '../plugins/ppapi/ppb_context_3d_impl.h', 241 '../plugins/ppapi/ppb_crypto_impl.cc', 242 '../plugins/ppapi/ppb_crypto_impl.h', 243 '../plugins/ppapi/ppb_cursor_control_impl.cc', 244 '../plugins/ppapi/ppb_cursor_control_impl.h', 245 '../plugins/ppapi/ppb_directory_reader_impl.cc', 246 '../plugins/ppapi/ppb_directory_reader_impl.h', 247 '../plugins/ppapi/ppb_file_chooser_impl.cc', 248 '../plugins/ppapi/ppb_file_chooser_impl.h', 249 '../plugins/ppapi/ppb_file_io_impl.cc', 250 '../plugins/ppapi/ppb_file_io_impl.h', 251 '../plugins/ppapi/ppb_file_ref_impl.cc', 252 '../plugins/ppapi/ppb_file_ref_impl.h', 253 '../plugins/ppapi/ppb_file_system_impl.cc', 254 '../plugins/ppapi/ppb_file_system_impl.h', 255 '../plugins/ppapi/ppb_flash_clipboard_impl.cc', 256 '../plugins/ppapi/ppb_flash_clipboard_impl.h', 257 '../plugins/ppapi/ppb_flash_file_impl.cc', 258 '../plugins/ppapi/ppb_flash_file_impl.h', 259 '../plugins/ppapi/ppb_flash_impl.cc', 260 '../plugins/ppapi/ppb_flash_impl.h', 261 '../plugins/ppapi/ppb_flash_impl_linux.cc', 262 '../plugins/ppapi/ppb_flash_menu_impl.cc', 263 '../plugins/ppapi/ppb_flash_menu_impl.h', 264 '../plugins/ppapi/ppb_flash_net_connector_impl.cc', 265 '../plugins/ppapi/ppb_flash_net_connector_impl.h', 266 '../plugins/ppapi/ppb_font_impl.cc', 267 '../plugins/ppapi/ppb_font_impl.h', 268 '../plugins/ppapi/ppb_gles_chromium_texture_mapping_impl.cc', 269 '../plugins/ppapi/ppb_gles_chromium_texture_mapping_impl.h', 270 '../plugins/ppapi/ppb_graphics_2d_impl.cc', 271 '../plugins/ppapi/ppb_graphics_2d_impl.h', 272 '../plugins/ppapi/ppb_graphics_3d_impl.cc', 273 '../plugins/ppapi/ppb_graphics_3d_impl.h', 274 '../plugins/ppapi/ppb_image_data_impl.cc', 275 '../plugins/ppapi/ppb_image_data_impl.h', 276 '../plugins/ppapi/ppb_nacl_private_impl.cc', 277 '../plugins/ppapi/ppb_nacl_private_impl.h', 278 '../plugins/ppapi/ppb_opengles_impl.cc', 279 '../plugins/ppapi/ppb_opengles_impl.h', 280 '../plugins/ppapi/ppb_pdf_impl.cc', 281 '../plugins/ppapi/ppb_pdf_impl.h', 282 '../plugins/ppapi/ppb_proxy_impl.cc', 283 '../plugins/ppapi/ppb_proxy_impl.h', 284 '../plugins/ppapi/ppb_scrollbar_impl.cc', 285 '../plugins/ppapi/ppb_scrollbar_impl.h', 286 '../plugins/ppapi/ppb_surface_3d_impl.cc', 287 '../plugins/ppapi/ppb_surface_3d_impl.h', 288 '../plugins/ppapi/ppb_transport_impl.cc', 289 '../plugins/ppapi/ppb_transport_impl.h', 290 '../plugins/ppapi/ppb_url_loader_impl.cc', 291 '../plugins/ppapi/ppb_url_loader_impl.h', 292 '../plugins/ppapi/ppb_url_request_info_impl.cc', 293 '../plugins/ppapi/ppb_url_request_info_impl.h', 294 '../plugins/ppapi/ppb_url_response_info_impl.cc', 295 '../plugins/ppapi/ppb_url_response_info_impl.h', 296 '../plugins/ppapi/ppb_url_util_impl.cc', 297 '../plugins/ppapi/ppb_url_util_impl.h', 298 '../plugins/ppapi/ppb_video_decoder_impl.cc', 299 '../plugins/ppapi/ppb_video_decoder_impl.h', 300 '../plugins/ppapi/ppb_widget_impl.cc', 301 '../plugins/ppapi/ppb_widget_impl.h', 302 '../plugins/ppapi/resource.cc', 303 '../plugins/ppapi/resource.h', 304 '../plugins/ppapi/resource_tracker.cc', 305 '../plugins/ppapi/resource_tracker.h', 306 '../plugins/ppapi/string.cc', 307 '../plugins/ppapi/string.h', 308 '../plugins/ppapi/usb_code_for_event.cc', 309 '../plugins/ppapi/usb_code_for_event.h', 310 '../plugins/ppapi/var.cc', 311 '../plugins/ppapi/var.h', 312 '../plugins/sad_plugin.cc', 313 '../plugins/sad_plugin.h', 314 'media/audio_decoder.cc', 315 'media/audio_decoder.h', 316 'media/buffered_data_source.cc', 317 'media/buffered_data_source.h', 318 'media/buffered_resource_loader.cc', 319 'media/buffered_resource_loader.h', 320 'media/simple_data_source.cc', 321 'media/simple_data_source.h', 322 'media/video_renderer_impl.cc', 323 'media/video_renderer_impl.h', 324 'media/web_data_source.cc', 325 'media/web_data_source.h', 326 'media/web_data_source_factory.cc', 327 'media/web_data_source_factory.h', 328 'media/web_video_renderer.h', 329 'alt_error_page_resource_fetcher.cc', 330 'alt_error_page_resource_fetcher.h', 331 'context_menu.cc', 332 'context_menu.h', 333 'cpp_binding_example.cc', 334 'cpp_binding_example.h', 335 'cpp_bound_class.cc', 336 'cpp_bound_class.h', 337 'cpp_variant.cc', 338 'cpp_variant.h', 339 'dom_operations.cc', 340 'dom_operations.h', 341 'form_data.cc', 342 'form_data.h', 343 'form_field.cc', 344 'form_field.h', 345 'ftp_directory_listing_response_delegate.cc', 346 'ftp_directory_listing_response_delegate.h', 347 'gl_bindings_skia_cmd_buffer.cc', 348 'gl_bindings_skia_cmd_buffer.h', 349 'glue_serialize.cc', 350 'glue_serialize.h', 351 'idb_bindings.cc', 352 'idb_bindings.h', 353 'image_decoder.cc', 354 'image_decoder.h', 355 'image_resource_fetcher.cc', 356 'image_resource_fetcher.h', 357 'multipart_response_delegate.cc', 358 'multipart_response_delegate.h', 359 'npruntime_util.cc', 360 'npruntime_util.h', 361 'p2p_transport.h', 362 'password_form.cc', 363 'password_form.h', 364 'password_form_dom_manager.cc', 365 'password_form_dom_manager.h', 366 'resource_fetcher.cc', 367 'resource_fetcher.h', 368 'resource_loader_bridge.cc', 369 'resource_loader_bridge.h', 370 'resource_type.h', 371 'scoped_clipboard_writer_glue.h', 372 'simple_webmimeregistry_impl.cc', 373 'simple_webmimeregistry_impl.h', 374 'site_isolation_metrics.cc', 375 'site_isolation_metrics.h', 376 'webaccessibility.cc', 377 'webaccessibility.h', 378 'webclipboard_impl.cc', 379 'webclipboard_impl.h', 380 'web_io_operators.cc', 381 'web_io_operators.h', 382 'webcookie.cc', 383 'webcookie.h', 384 'webcursor.cc', 385 'webcursor.h', 386 'webcursor_gtk.cc', 387 'webcursor_gtk_data.h', 388 'webcursor_mac.mm', 389 'webcursor_win.cc', 390 'webdropdata.cc', 391 'webdropdata_win.cc', 392 'webdropdata.h', 393 'webfileutilities_impl.cc', 394 'webfileutilities_impl.h', 395 'webkit_constants.h', 396 'webkit_glue.cc', 397 'webkit_glue.h', 398 'webkitclient_impl.cc', 399 'webkitclient_impl.h', 400 'webmediaplayer_impl.h', 401 'webmediaplayer_impl.cc', 402 'webmenuitem.cc', 403 'webmenuitem.h', 404 'webmenurunner_mac.h', 405 'webmenurunner_mac.mm', 406 'webpreferences.cc', 407 'webpreferences.h', 408 'websocketstreamhandle_bridge.h', 409 'websocketstreamhandle_delegate.h', 410 'websocketstreamhandle_impl.cc', 411 'websocketstreamhandle_impl.h', 412 'webthemeengine_impl_linux.cc', 413 'webthemeengine_impl_mac.cc', 414 'webthemeengine_impl_win.cc', 415 'weburlloader_impl.cc', 416 'weburlloader_impl.h', 417 'webvideoframe_impl.cc', 418 'webvideoframe_impl.h', 419 'window_open_disposition.h', 420 'window_open_disposition.cc', 421 422 # These files used to be built in the webcore target, but moved here 423 # since part of glue. 424 '../extensions/v8/benchmarking_extension.cc', 425 '../extensions/v8/benchmarking_extension.h', 426 '../extensions/v8/gc_extension.cc', 427 '../extensions/v8/gc_extension.h', 428 '../extensions/v8/heap_profiler_extension.cc', 429 '../extensions/v8/heap_profiler_extension.h', 430 '../extensions/v8/playback_extension.cc', 431 '../extensions/v8/playback_extension.h', 432 '../extensions/v8/profiler_extension.cc', 433 '../extensions/v8/profiler_extension.h', 434 435 ], 436 # When glue is a dependency, it needs to be a hard dependency. 437 # Dependents may rely on files generated by this target or one of its 438 # own hard dependencies. 439 'hard_dependency': 1, 440 'conditions': [ 441 ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris"', { 442 'dependencies': [ 443 '<(DEPTH)/build/linux/system.gyp:gtk', 444 ], 445 'sources!': [ 446 'plugins/plugin_stubs.cc', 447 ], 448 }, { # else: OS!="linux" and OS!="freebsd" and OS!="openbsd" \ 449 # and OS!="solaris"' 450 'sources/': [['exclude', '_(linux|gtk)(_data)?\\.cc$'], 451 ['exclude', r'/gtk_']], 452 }], 453 ['OS!="mac"', { 454 'sources/': [['exclude', '_mac\\.(cc|mm)$']], 455 'sources!': [ 456 'webthemeengine_impl_mac.cc', 457 ], 458 }, { # else: OS=="mac" 459 'sources/': [['exclude', 'plugin_(lib|list)_posix\\.cc$']], 460 'link_settings': { 461 'libraries': [ 462 '$(SDKROOT)/System/Library/Frameworks/QuartzCore.framework', 463 ], 464 }, 465 }], 466 ['enable_gpu!=1', { 467 'sources!': [ 468 '../plugins/ppapi/ppb_graphics_3d_impl.cc', 469 '../plugins/ppapi/ppb_graphics_3d_impl.h', 470 '../plugins/ppapi/ppb_open_gl_es_impl.cc', 471 ], 472 }], 473 ['OS!="win"', { 474 'sources/': [['exclude', '_win\\.cc$']], 475 'sources!': [ 476 'webthemeengine_impl_win.cc', 477 ], 478 }, { # else: OS=="win" 479 'sources/': [['exclude', '_posix\\.cc$']], 480 'include_dirs': [ 481 '<(DEPTH)/third_party/wtl/include', 482 ], 483 'dependencies': [ 484 '<(DEPTH)/build/win/system.gyp:cygwin', 485 ], 486 'sources!': [ 487 'plugins/plugin_stubs.cc', 488 ], 489 'conditions': [ 490 ['inside_chromium_build==1 and component=="shared_library"', { 491 'dependencies': [ 492 '<(DEPTH)/third_party/WebKit/Source/WebKit/chromium/WebKit.gyp:webkit', 493 '<(DEPTH)/v8/tools/gyp/v8.gyp:v8', 494 ], 495 'export_dependent_settings': [ 496 '<(DEPTH)/third_party/WebKit/Source/WebKit/chromium/WebKit.gyp:webkit', 497 '<(DEPTH)/v8/tools/gyp/v8.gyp:v8', 498 ], 499 }], 500 ], 501 }], 502 ['inside_chromium_build==0', { 503 'dependencies': [ 504 '<(DEPTH)/webkit/support/setup_third_party.gyp:third_party_headers', 505 ], 506 }], 507 ], 508 }, 509 ], 510 'conditions': [ 511 ['use_third_party_translations==1', { 512 'targets': [ 513 { 514 'target_name': 'inspector_strings', 515 'type': 'none', 516 'variables': { 517 'grit_out_dir': '<(PRODUCT_DIR)/resources/inspector/l10n', 518 }, 519 'actions': [ 520 { 521 'action_name': 'inspector_strings', 522 'variables': { 523 'grit_grd_file': 'inspector_strings.grd', 524 }, 525 'includes': [ '../../build/grit_action.gypi' ], 526 }, 527 ], 528 'includes': [ '../../build/grit_target.gypi' ], 529 }, 530 ], 531 }], 532 ], 533 } 534