# Copyright 2013 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

{
  'dependencies': [
    '../base/base.gyp:base',
    '../components/tracing.gyp:tracing',
    '../skia/skia.gyp:skia',
    '../ui/gfx/gfx.gyp:gfx',
    '../ui/ui.gyp:ui',
    '../url/url.gyp:url_lib',
  ],
  'include_dirs': [
    '..',
  ],
  'export_dependent_settings': [
    '../base/base.gyp:base',
  ],
  'sources': [
    'child/android/child_jni_registrar.cc',
    'child/android/child_jni_registrar.h',
    'child/appcache/appcache_backend_proxy.cc',
    'child/appcache/appcache_backend_proxy.h',
    'child/appcache/appcache_dispatcher.cc',
    'child/appcache/appcache_dispatcher.h',
    'child/appcache/appcache_frontend_impl.cc',
    'child/appcache/appcache_frontend_impl.h',
    'child/appcache/web_application_cache_host_impl.cc',
    'child/appcache/web_application_cache_host_impl.h',
    'child/browser_font_resource_trusted.cc',
    'child/browser_font_resource_trusted.h',
    'child/child_histogram_message_filter.cc',
    'child/child_histogram_message_filter.h',
    'child/child_message_filter.cc',
    'child/child_message_filter.h',
    'child/child_process.cc',
    'child/child_process.h',
    'child/child_resource_message_filter.cc',
    'child/child_resource_message_filter.h',
    'child/child_thread.cc',
    'child/child_thread.h',
    'child/database_util.cc',
    'child/database_util.h',
    'child/db_message_filter.cc',
    'child/db_message_filter.h',
    'child/fileapi/file_system_dispatcher.cc',
    'child/fileapi/file_system_dispatcher.h',
    'child/fileapi/webfilesystem_impl.cc',
    'child/fileapi/webfilesystem_impl.h',
    'child/fileapi/webfilewriter_base.cc',
    'child/fileapi/webfilewriter_base.h',
    'child/fileapi/webfilewriter_impl.cc',
    'child/fileapi/webfilewriter_impl.h',
    'child/image_decoder.cc',
    'child/image_decoder.h',
    'child/indexed_db/indexed_db_dispatcher.cc',
    'child/indexed_db/indexed_db_dispatcher.h',
    'child/indexed_db/indexed_db_key_builders.cc',
    'child/indexed_db/indexed_db_key_builders.h',
    'child/indexed_db/indexed_db_message_filter.cc',
    'child/indexed_db/indexed_db_message_filter.h',
    'child/indexed_db/webidbcursor_impl.cc',
    'child/indexed_db/webidbcursor_impl.h',
    'child/indexed_db/webidbdatabase_impl.cc',
    'child/indexed_db/webidbdatabase_impl.h',
    'child/indexed_db/webidbfactory_impl.cc',
    'child/indexed_db/webidbfactory_impl.h',
    'child/npapi/np_channel_base.cc',
    'child/npapi/np_channel_base.h',
    'child/npapi/npobject_base.h',
    'child/npapi/npobject_proxy.cc',
    'child/npapi/npobject_proxy.h',
    'child/npapi/npobject_stub.cc',
    'child/npapi/npobject_stub.h',
    'child/npapi/npobject_util.cc',
    'child/npapi/npobject_util.h',
    'child/npapi/npruntime_util.cc',
    'child/npapi/npruntime_util.h',
    'child/npapi/plugin_host.cc',
    'child/npapi/plugin_host.h',
    'child/npapi/plugin_instance.cc',
    'child/npapi/plugin_instance.h',
    'child/npapi/plugin_instance_mac.mm',
    'child/npapi/plugin_lib.cc',
    'child/npapi/plugin_lib.h',
    'child/npapi/plugin_stream.cc',
    'child/npapi/plugin_stream.h',
    'child/npapi/plugin_stream_posix.cc',
    'child/npapi/plugin_stream_url.cc',
    'child/npapi/plugin_stream_url.h',
    'child/npapi/plugin_stream_win.cc',
    'child/npapi/plugin_string_stream.cc',
    'child/npapi/plugin_string_stream.h',
    'child/npapi/plugin_url_fetcher.cc',
    'child/npapi/plugin_url_fetcher.h',
    'child/npapi/plugin_web_event_converter_mac.h',
    'child/npapi/plugin_web_event_converter_mac.mm',
    'child/npapi/webplugin.h',
    'child/npapi/webplugin_accelerated_surface_mac.h',
    'child/npapi/webplugin_delegate.h',
    'child/npapi/webplugin_delegate_impl.cc',
    'child/npapi/webplugin_delegate_impl.h',
    'child/npapi/webplugin_delegate_impl_android.cc',
    'child/npapi/webplugin_delegate_impl_aura.cc',
    'child/npapi/webplugin_delegate_impl_gtk.cc',
    'child/npapi/webplugin_delegate_impl_mac.mm',
    'child/npapi/webplugin_delegate_impl_win.cc',
    'child/npapi/webplugin_ime_win.cc',
    'child/npapi/webplugin_ime_win.h',
    'child/npapi/webplugin_resource_client.h',
    'child/plugin_message_generator.cc',
    'child/plugin_message_generator.h',
    'child/plugin_messages.h',
    'child/plugin_param_traits.cc',
    'child/plugin_param_traits.h',
    'child/power_monitor_broadcast_source.cc',
    'child/power_monitor_broadcast_source.h',
    'child/quota_dispatcher.cc',
    'child/quota_dispatcher.h',
    'child/quota_message_filter.cc',
    'child/quota_message_filter.h',
    'child/request_extra_data.cc',
    'child/request_extra_data.h',
    'child/resource_dispatcher.cc',
    'child/resource_dispatcher.h',
    'child/runtime_features.cc',
    'child/runtime_features.h',
    'child/scoped_child_process_reference.cc',
    'child/scoped_child_process_reference.h',
    'child/service_worker/service_worker_dispatcher.cc',
    'child/service_worker/service_worker_dispatcher.h',
    'child/service_worker/service_worker_message_filter.cc',
    'child/service_worker/service_worker_message_filter.h',
    'child/service_worker/web_service_worker_impl.cc',
    'child/service_worker/web_service_worker_impl.h',
    'child/service_worker/web_service_worker_provider_impl.cc',
    'child/service_worker/web_service_worker_provider_impl.h',
    'child/site_isolation_policy.cc',
    'child/site_isolation_policy.h',
    'child/socket_stream_dispatcher.cc',
    'child/socket_stream_dispatcher.h',
    'child/thread_safe_sender.cc',
    'child/thread_safe_sender.h',
    'child/web_database_observer_impl.cc',
    'child/web_database_observer_impl.h',
    'child/webblobregistry_impl.cc',
    'child/webblobregistry_impl.h',
    'child/webkitplatformsupport_impl.cc',
    'child/webkitplatformsupport_impl.h',
    'child/webmessageportchannel_impl.cc',
    'child/webmessageportchannel_impl.h',
    'child/websocket_bridge.cc',
    'child/websocket_bridge.h',
    'child/websocket_dispatcher.cc',
    'child/websocket_dispatcher.h',
    'child/worker_thread_task_runner.cc',
    'child/worker_thread_task_runner.h',
    'public/child/image_decoder_utils.h',
    'public/child/resource_dispatcher_delegate.h',
  ],
  'conditions': [
    ['OS=="android"', {
      'includes': [
        '../build/android/cpufeatures.gypi',
      ],
    }],
    ['enable_plugins==0', {
      'sources!': [
        'child/browser_font_resource_trusted.cc',
      ],
      'sources/': [
        ['exclude', '^child/npapi/plugin_'],
        ['exclude', '^child/npapi/webplugin_'],
      ],
    }],
    ['OS=="ios"', {
      'sources/': [
        # iOS only needs a small portion of content; exclude all the
        # implementation, and re-include what is used.
        ['exclude', '\\.(cc|mm)$'],
      ],
    }, {  # OS!="ios"
      'dependencies': [
        '../third_party/WebKit/public/blink.gyp:blink',
        '../third_party/npapi/npapi.gyp:npapi',
        '../webkit/child/webkit_child.gyp:webkit_child',
        '../webkit/common/webkit_common.gyp:webkit_common',
      ],
    }],
    ['use_aura==1', {
      'sources!': [
        'child/npapi/webplugin_delegate_impl_mac.mm',
      ],
    }],
    ['use_aura==1 and OS=="win"', {
      'sources!': [
        'child/npapi/webplugin_delegate_impl_aura.cc',
      ],
    }],
  ],
}