# 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("//mojo/public/mojo_application.gni")
import("//mojo/public/tools/bindings/mojom.gni")

mojo_native_application("viewer") {
  output_name = "sky_viewer"

  sources = [
    "content_handler_impl.cc",
    "content_handler_impl.h",
    "converters/basic_types.cc",
    "converters/basic_types.h",
    "converters/input_event_types.cc",
    "converters/input_event_types.h",
    "converters/url_request_types.cc",
    "converters/url_request_types.h",
    "document_view.cc",
    "document_view.h",
    "internals.cc",
    "internals.h",
    "platform/platform_impl.cc",
    "platform/platform_impl.h",
    "platform/weburlloader_impl.cc",
    "platform/weburlloader_impl.h",
    "script/script_runner.cc",
    "script/script_runner.h",
    "services/inspector_impl.cc",
    "services/inspector_impl.h",
    "viewer.cc",
  ]

  include_dirs = [ ".." ]

  deps = [
    ":bindings",
    ":sky_modules",
    "//base:i18n",
    "//gin",
    "//mojo/application",
    "//mojo/common",
    "//mojo/common:tracing_impl",
    "//mojo/converters/geometry",
    "//mojo/converters/surfaces",
    "//mojo/edk/js",
    "//mojo/public/cpp/bindings",
    "//mojo/public/cpp/system",
    "//mojo/public/cpp/utility",
    "//mojo/public/interfaces/application",
    "//mojo/services/content_handler/public/interfaces",
    "//mojo/services/gpu/public/interfaces",
    "//mojo/services/input_events/public/interfaces",
    "//mojo/services/navigation/public/interfaces",
    "//mojo/services/network/public/interfaces",
    "//mojo/services/surfaces/public/interfaces",
    "//mojo/services/view_manager/public/cpp",
    "//net",
    "//skia",
    "//sky/compositor",
    "//sky/engine",
    "//sky/engine/v8_inspector",
    "//sky/services/inspector:bindings",
    "//sky/services/testing:bindings",
    "//third_party/icu",
    "//ui/native_theme",
    "//url",
  ]
}

mojom("bindings") {
  sources = [
    "services/inspector.mojom",
  ]
}

copy("sky_modules") {
  sources = [
    "script/core.sky",
    "script/support.sky",
  ]
  outputs = [
    "$root_gen_dir/mojo/public/sky/{{source_file_part}}",
  ]
}
