From ae82db54f61d75be762f5c6abd60b820666b500f Mon Sep 17 00:00:00 2001 From: Ryan Dahl Date: Thu, 26 Jul 2018 14:41:36 -0400 Subject: [PATCH] build: use compiled_action for create_snapshot. Switch the order of the snapshot_creator args, in order to allow for optional source map arg. --- build_extra/deno.gni | 20 ++++++-------------- src/snapshot_creator.cc | 4 ++-- 2 files changed, 8 insertions(+), 16 deletions(-) diff --git a/build_extra/deno.gni b/build_extra/deno.gni index 6fed4816e4..89614cfc43 100644 --- a/build_extra/deno.gni +++ b/build_extra/deno.gni @@ -1,4 +1,5 @@ # Copyright 2018 the Deno authors. All rights reserved. MIT license. +import("//build/compiled_action.gni") template("run_node") { action(target_name) { @@ -19,36 +20,27 @@ template("run_node") { # snapshot. template("create_snapshot") { name = target_name - suffix = "_$name" - action("create_snapshot_" + name) { + compiled_action("create_snapshot_" + name) { forward_variables_from(invoker, [ "testonly", "deps", ]) + tool = ":snapshot_creator" visibility = [ ":*" ] # Only targets in this file can depend on this. - deps += [ ":snapshot_creator" ] - script = "//third_party/v8/tools/run.py" - data = [] - exe = rebase_path(get_label_info(":snapshot_creator", "root_out_dir") + - "/snapshot_creator") - snapshot_out_cc = "$target_gen_dir/snapshot${suffix}.cc" - sources = [ + snapshot_out_cc = "$target_gen_dir/snapshot_$name.cc" + inputs = [ invoker.js, ] outputs = [ snapshot_out_cc, ] args = [ - exe, - rebase_path(invoker.js, root_build_dir), rebase_path(snapshot_out_cc, root_build_dir), + rebase_path(invoker.js, root_build_dir), ] # To debug snapshotting problems: # args += ["--trace-serializer"] - data = [ - invoker.js, - ] } } diff --git a/src/snapshot_creator.cc b/src/snapshot_creator.cc index 25aef7d51e..a79071a65c 100644 --- a/src/snapshot_creator.cc +++ b/src/snapshot_creator.cc @@ -98,8 +98,8 @@ class StartupDataCppWriter { } // namespace deno int main(int argc, char** argv) { - const char* js_fn = argv[1]; - const char* snapshot_out_cc = argv[2]; + const char* snapshot_out_cc = argv[1]; + const char* js_fn = argv[2]; v8::V8::SetFlagsFromCommandLine(&argc, argv, true);