rusty_v8 0.6.0

Rust bindings to V8
Documentation
# Copyright 2018-2019 the Deno authors. All rights reserved. MIT license.
import("//v8/gni/v8.gni")

v8_static_library("rusty_v8") {
  sources = [ "src/binding.cc" ]
  deps = [
    ":v8",
    "//build/config:shared_library_deps",
  ]
  configs = [ ":rusty_v8_config" ]
}

v8_source_set("v8") {
  deps = [
    "//v8:v8",
    "//v8:v8_libbase",
    "//v8:v8_libplatform",
    "//v8:v8_libsampler",
  ]
  configs = [ ":rusty_v8_config" ]
}

config("rusty_v8_config") {
  configs = [ "//v8:external_config" ]
  cflags = []

  # We need these directories in the search path to be able to include some
  # internal V8 headers.
  include_dirs = [
    "v8",
    "$target_gen_dir/v8",
  ]

  if (is_debug) {
    defines = [ "DEBUG" ]
  }

  if (is_clang) {
    cflags += [
      "-fcolor-diagnostics",
      "-fansi-escape-codes",
    ]
  }

  if (is_debug && is_clang && !is_win) {
    cflags += [ "-glldb" ]
  }

  if (is_win) {
    # The `/Zl` ("omit default library name") flag makes the compiler produce
    # object files that can link with both the static and dynamic CRT.
    cflags += [ "/Zl" ]
  }
}