blob: 6a6f477ad3f543680cd6485bdf6b0e82d567012c [file] [log] [blame]
# Copyright 2017 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.
# Targets in ths file are to take a V8 context snapshot on build time.
# Created V8 context snapshot is used in
# third_party/WebKit/Source/bindings/core/v8/V8ContextSnapshot.{cpp|h}.
# to speedup creating a V8 context and setting up around it.
import("//build/config/chromecast_build.gni")
import("//build/config/v8_target_cpu.gni")
import("//v8/gni/v8.gni")
declare_args() {
# TODO(crbug.com/764576): Enable the feature on more environments.
# Disable in win/cross builds since buliding Blink twice is slow.
use_v8_context_snapshot =
!is_chromeos && !is_android && !is_chromecast && !is_fuchsia &&
!(host_os == "mac" && current_cpu == "x86") &&
(v8_target_cpu == target_cpu || is_msan) && !(is_win && host_os != "win")
}
# We cannot use V8 context snapshot, if V8 doesn't use snapshot files.
if (use_v8_context_snapshot && !v8_use_external_startup_data) {
use_v8_context_snapshot = false
}