Index: BUILD.gn |
diff --git a/BUILD.gn b/BUILD.gn |
index 8946d2a0067df254664f8c7a6ee9202ba8d04342..06d7ecfeaf771c8d78acadc5b9a6e9aea863796b 100644 |
--- a/BUILD.gn |
+++ b/BUILD.gn |
@@ -11,6 +11,8 @@ import("//build/config/sanitizers/sanitizers.gni") |
# Chromium build. |
import("//build/module_args/v8.gni") |
+import("snapshot_toolchain.gni") |
+ |
# TODO(jochen): These will need to be user-settable to support standalone V8 |
# builds. |
v8_deprecation_warnings = false |
@@ -35,24 +37,6 @@ if (is_msan) { |
v8_target_arch = target_cpu |
} |
-# The snapshot needs to be compiled for the host, but compiled with |
-# a toolchain that matches the bit-width of the target. |
-# |
-# TODO(GYP): For now we only support 32-bit little-endian target builds from an |
-# x64 Linux host. Eventually we need to support all of the host/target |
-# configurations v8 runs on. |
-if (host_cpu == "x64" && host_os == "linux") { |
- if (target_cpu == "arm" || target_cpu == "mipsel" || target_cpu == "x86") { |
- snapshot_toolchain = "//build/toolchain/linux:clang_x86" |
- } else if (target_cpu == "x64") { |
- snapshot_toolchain = "//build/toolchain/linux:clang_x64" |
- } else { |
- assert(false, "Need environment for this arch") |
- } |
-} else { |
- snapshot_toolchain = default_toolchain |
-} |
- |
############################################################################### |
# Configurations |
# |
@@ -1819,6 +1803,7 @@ if (is_component_build) { |
} |
if ((current_toolchain == host_toolchain && v8_toolset_for_d8 == "host") || |
+ (current_toolchain == snapshot_toolchain && v8_toolset_for_d8 == "host") || |
(current_toolchain != host_toolchain && v8_toolset_for_d8 == "target")) { |
executable("d8") { |
sources = [ |