# Copyright 2014 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.

import("//build/config/features.gni")

assert(enable_extensions)

source_set("renderer") {
  sources = [
    "activity_log_converter_strategy.cc",
    "activity_log_converter_strategy.h",
    "api/automation/automation_api_helper.cc",
    "api/automation/automation_api_helper.h",
    "api/display_source/display_source_session.cc",
    "api/display_source/display_source_session.h",
    "api_activity_logger.cc",
    "api_activity_logger.h",
    "api_binding.cc",
    "api_binding.h",
    "api_binding_types.h",
    "api_bindings_system.cc",
    "api_bindings_system.h",
    "api_definitions_natives.cc",
    "api_definitions_natives.h",
    "api_event_handler.cc",
    "api_event_handler.h",
    "api_request_handler.cc",
    "api_request_handler.h",
    "app_window_custom_bindings.cc",
    "app_window_custom_bindings.h",
    "argument_spec.cc",
    "argument_spec.h",
    "binding_generating_native_handler.cc",
    "binding_generating_native_handler.h",
    "blob_native_handler.cc",
    "blob_native_handler.h",
    "console.cc",
    "console.h",
    "content_watcher.cc",
    "content_watcher.h",
    "context_menus_custom_bindings.cc",
    "context_menus_custom_bindings.h",
    "css_native_handler.cc",
    "css_native_handler.h",
    "dispatcher.cc",
    "dispatcher.h",
    "dispatcher_delegate.h",
    "display_source_custom_bindings.cc",
    "display_source_custom_bindings.h",
    "document_custom_bindings.cc",
    "document_custom_bindings.h",
    "dom_activity_logger.cc",
    "dom_activity_logger.h",
    "event_bindings.cc",
    "event_bindings.h",
    "event_emitter.cc",
    "event_emitter.h",
    "extension_frame_helper.cc",
    "extension_frame_helper.h",
    "extension_groups.h",
    "extension_helper.cc",
    "extension_helper.h",
    "extension_injection_host.cc",
    "extension_injection_host.h",
    "extension_port.cc",
    "extension_port.h",
    "extensions_render_frame_observer.cc",
    "extensions_render_frame_observer.h",
    "extensions_renderer_client.cc",
    "extensions_renderer_client.h",
    "file_system_natives.cc",
    "file_system_natives.h",
    "gc_callback.cc",
    "gc_callback.h",
    "guest_view/extensions_guest_view_container.cc",
    "guest_view/extensions_guest_view_container.h",
    "guest_view/extensions_guest_view_container_dispatcher.cc",
    "guest_view/extensions_guest_view_container_dispatcher.h",
    "guest_view/guest_view_internal_custom_bindings.cc",
    "guest_view/guest_view_internal_custom_bindings.h",
    "guest_view/mime_handler_view/mime_handler_view_container.cc",
    "guest_view/mime_handler_view/mime_handler_view_container.h",
    "i18n_custom_bindings.cc",
    "i18n_custom_bindings.h",
    "id_generator_custom_bindings.cc",
    "id_generator_custom_bindings.h",
    "injection_host.cc",
    "injection_host.h",
    "lazy_background_page_native_handler.cc",
    "lazy_background_page_native_handler.h",
    "logging_native_handler.cc",
    "logging_native_handler.h",
    "messaging_bindings.cc",
    "messaging_bindings.h",
    "module_system.cc",
    "module_system.h",
    "native_handler.cc",
    "native_handler.h",
    "object_backed_native_handler.cc",
    "object_backed_native_handler.h",
    "process_info_native_handler.cc",
    "process_info_native_handler.h",
    "programmatic_script_injector.cc",
    "programmatic_script_injector.h",
    "render_frame_observer_natives.cc",
    "renderer_extension_registry.cc",
    "renderer_extension_registry.h",
    "request_sender.cc",
    "request_sender.h",
    "resource_bundle_source_map.cc",
    "resource_bundle_source_map.h",
    "resources/app_runtime_custom_bindings.js",
    "resources/app_window_custom_bindings.js",
    "resources/binding.js",
    "resources/context_menus_custom_bindings.js",
    "resources/declarative_webrequest_custom_bindings.js",
    "resources/entry_id_manager.js",
    "resources/event.js",
    "resources/extension.css",
    "resources/extension_custom_bindings.js",
    "resources/extension_fonts.css",
    "resources/greasemonkey_api.js",
    "resources/guest_view/app_view/app_view.js",
    "resources/guest_view/extension_options/extension_options.js",
    "resources/guest_view/extension_view/extension_view.js",
    "resources/guest_view/web_view/web_view.js",
    "resources/guest_view/web_view/web_view_events.js",
    "resources/guest_view/web_view/web_view_iframe.js",
    "resources/i18n_custom_bindings.js",
    "resources/image_util.js",
    "resources/json_schema.js",
    "resources/last_error.js",
    "resources/messaging.js",
    "resources/messaging_utils.js",
    "resources/permissions_custom_bindings.js",
    "resources/platform_app.css",
    "resources/platform_app.js",
    "resources/runtime_custom_bindings.js",
    "resources/schema_utils.js",
    "resources/send_request.js",
    "resources/set_icon.js",
    "resources/storage_area.js",
    "resources/test_custom_bindings.js",
    "resources/uncaught_exception_handler.js",
    "resources/utils.js",
    "resources/web_request_custom_bindings.js",
    "resources/web_request_internal_custom_bindings.js",
    "runtime_custom_bindings.cc",
    "runtime_custom_bindings.h",
    "safe_builtins.cc",
    "safe_builtins.h",
    "script_context.cc",
    "script_context.h",
    "script_context_set.cc",
    "script_context_set.h",
    "script_injection.cc",
    "script_injection.h",
    "script_injection_callback.cc",
    "script_injection_callback.h",
    "script_injection_manager.cc",
    "script_injection_manager.h",
    "script_injector.h",
    "scripts_run_info.cc",
    "scripts_run_info.h",
    "send_request_natives.cc",
    "send_request_natives.h",
    "service_worker_data.cc",
    "service_worker_data.h",
    "service_worker_request_sender.cc",
    "service_worker_request_sender.h",
    "set_icon_natives.cc",
    "set_icon_natives.h",
    "static_v8_external_one_byte_string_resource.cc",
    "static_v8_external_one_byte_string_resource.h",
    "test_features_native_handler.cc",
    "test_features_native_handler.h",
    "test_native_handler.cc",
    "test_native_handler.h",
    "user_gestures_native_handler.cc",
    "user_gestures_native_handler.h",
    "user_script_injector.cc",
    "user_script_injector.h",
    "user_script_set.cc",
    "user_script_set.h",
    "user_script_set_manager.cc",
    "user_script_set_manager.h",
    "utils_native_handler.cc",
    "utils_native_handler.h",
    "v8_context_native_handler.cc",
    "v8_context_native_handler.h",
    "v8_helpers.h",
    "v8_schema_registry.cc",
    "v8_schema_registry.h",
    "wake_event_page.cc",
    "wake_event_page.h",
    "web_ui_injection_host.cc",
    "web_ui_injection_host.h",
    "worker_script_context_set.cc",
    "worker_script_context_set.h",
    "worker_thread_dispatcher.cc",
    "worker_thread_dispatcher.h",
  ]

  configs += [
    "//build/config:precompiled_headers",

    # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
    "//build/config/compiler:no_size_t_to_int_warning",
  ]

  deps = [
    "//chrome:resources",
    "//components/guest_view/renderer",
    "//content:resources",
    "//extensions:extensions_resources",
    "//extensions/common/api",
    "//gin",
    "//mojo/edk/js",
    "//mojo/public/js",
    "//skia",
    "//third_party/WebKit/public:blink",
    "//third_party/cld",
  ]

  if (proprietary_codecs && enable_wifi_display) {
    sources += [
      "api/display_source/wifi_display/wifi_display_audio_encoder.cc",
      "api/display_source/wifi_display/wifi_display_audio_encoder.h",
      "api/display_source/wifi_display/wifi_display_audio_encoder_lpcm.cc",
      "api/display_source/wifi_display/wifi_display_elementary_stream_descriptor.cc",
      "api/display_source/wifi_display/wifi_display_elementary_stream_descriptor.h",
      "api/display_source/wifi_display/wifi_display_elementary_stream_info.cc",
      "api/display_source/wifi_display/wifi_display_elementary_stream_info.h",
      "api/display_source/wifi_display/wifi_display_elementary_stream_packetizer.cc",
      "api/display_source/wifi_display/wifi_display_elementary_stream_packetizer.h",
      "api/display_source/wifi_display/wifi_display_media_encoder.cc",
      "api/display_source/wifi_display/wifi_display_media_encoder.h",
      "api/display_source/wifi_display/wifi_display_media_manager.cc",
      "api/display_source/wifi_display/wifi_display_media_manager.h",
      "api/display_source/wifi_display/wifi_display_media_packetizer.cc",
      "api/display_source/wifi_display/wifi_display_media_packetizer.h",
      "api/display_source/wifi_display/wifi_display_media_pipeline.cc",
      "api/display_source/wifi_display/wifi_display_media_pipeline.h",
      "api/display_source/wifi_display/wifi_display_session.cc",
      "api/display_source/wifi_display/wifi_display_session.h",
      "api/display_source/wifi_display/wifi_display_stream_packet_part.h",
      "api/display_source/wifi_display/wifi_display_transport_stream_packetizer.cc",
      "api/display_source/wifi_display/wifi_display_transport_stream_packetizer.h",
      "api/display_source/wifi_display/wifi_display_video_encoder.cc",
      "api/display_source/wifi_display/wifi_display_video_encoder.h",
      "api/display_source/wifi_display/wifi_display_video_encoder_svc.cc",
      "api/display_source/wifi_display/wifi_display_video_encoder_vea.cc",
    ]

    deps += [
      "//third_party/openh264:encoder",
      "//third_party/wds:libwds",
    ]
  }
}

source_set("unit_tests") {
  testonly = true
  sources = [
    "activity_log_converter_strategy_unittest.cc",
    "api/mojo_private/mojo_private_unittest.cc",
    "api_binding_test.cc",
    "api_binding_test.h",
    "api_binding_test_util.cc",
    "api_binding_test_util.h",
    "api_binding_unittest.cc",
    "api_bindings_system_unittest.cc",
    "api_event_handler_unittest.cc",
    "api_request_handler_unittest.cc",
    "api_test_base.cc",
    "api_test_base.h",
    "api_test_base_unittest.cc",
    "argument_spec_unittest.cc",
    "event_unittest.cc",
    "gc_callback_unittest.cc",
    "json_schema_unittest.cc",
    "messaging_utils_unittest.cc",
    "module_system_test.cc",
    "module_system_test.h",
    "module_system_unittest.cc",
    "mojo/keep_alive_client_unittest.cc",
    "safe_builtins_unittest.cc",
    "scoped_web_frame.cc",
    "scoped_web_frame.h",
    "script_context_set_unittest.cc",
    "script_context_unittest.cc",
    "utils_unittest.cc",
  ]

  deps = [
    ":renderer",
    "//base",
    "//content/public/child",
    "//extensions:extensions_renderer_resources",
    "//gin:gin_test",

    # TODO(brettw) these tests should not be including headers from browser.
    "//extensions/browser/mojo",
    "//extensions/common",
    "//gin",
    "//mojo/edk/js",
    "//testing/gmock",
    "//testing/gtest",
    "//third_party/WebKit/public:blink",
    "//ui/base",
  ]

  if (enable_wifi_display && proprietary_codecs) {
    sources += [
      "api/display_source/wifi_display/wifi_display_elementary_stream_descriptor_unittest.cc",
      "api/display_source/wifi_display/wifi_display_media_packetizer_unittest.cc",
    ]
  }
}
