# 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("//tools/grit/grit_rule.gni")

# GYP version: WebKit/public/blink.gyp:blink
group("blink") {
  deps = [
    ":blink_headers",
    ":blink_minimal",
    "//third_party/WebKit/Source/web",
    "//third_party/WebKit/Source/platform",
  ]
}

# This target provides a minimal set of Blink APIs such as WebString to use in
# places that cannot link against the full Blink library.  FIXME: We really
# shouldn't have this at all and should instead remove all uses of Blink's API
# types from places that can't link against Blink. crbug.com/248653
#
# GYP version: WebKit/public/blink.gyp:blink_minimal
group("blink_minimal") {
  deps = [
    "//third_party/WebKit/Source/platform:blink_common",
  ]
}

# GYP version: WebKit/public/blink.gyp:blink_test_support
group("test_support") {
  deps = [
    "//third_party/WebKit/Source/web:test_support",
  ]
}

# GYP version: WebKit/public/all.gyp:all_blink
group("all_blink") {
  # This includes some test targets. Don't link into production!
  testonly = true

  deps = [
    "//third_party/WebKit/Source/core",
    "//third_party/WebKit/Source/modules",
    "//third_party/WebKit/Source/platform:heap_unittests",
    "//third_party/WebKit/Source/platform:platform_unittests",
    "//third_party/WebKit/Source/web",
    "//third_party/WebKit/Source/wtf:wtf_unittests",
  ]
}

config("blink_headers_config") {
  include_dirs = [ ".." ]
}

# Depend on this target to use public blink API headers for things like enums
# and public structures without actually linking against any Blink libraries.
source_set("blink_headers") {
  public_configs = [
    ":blink_headers_config",
    # Blink exposes icu headers in the public API.
    "//third_party/icu:icu_config",
    # Blink exposes NPAPI headers in the public API.
    "//third_party/npapi:npapi_config",
  ]
}

# GYP version: WebKit/public/blink_devtools.gyp:blink_devtools_frontend_resources
group("blink_devtools_frontend_resources") {
  deps = [
    "//third_party/WebKit/Source/devtools:devtools_frontend_resources",
  ]
}

# GYP version: WebKit/public/blink_devtools.gyp:blink_generate_devtools_grd
group("blink_generate_devtools_grd") {
  deps = [
    "//third_party/WebKit/Source/devtools:generate_devtools_grd",
  ]
}

# GYP version: WebKit/public/blink_resources.gyp:blink_resources
grit("resources") {
  output_dir = "$root_gen_dir/blink/public/resources"
  use_qualified_include = true
  source = "blink_resources.grd"
  outputs = [
    "grit/blink_resources.h",
    "blink_resources.rc",
    "blink_resources.pak",
  ]
}