summaryrefslogtreecommitdiff
path: root/deno.gni
diff options
context:
space:
mode:
Diffstat (limited to 'deno.gni')
-rw-r--r--deno.gni65
1 files changed, 65 insertions, 0 deletions
diff --git a/deno.gni b/deno.gni
new file mode 100644
index 000000000..a260edd11
--- /dev/null
+++ b/deno.gni
@@ -0,0 +1,65 @@
+# Copyright 2018-2019 the Deno authors. All rights reserved. MIT license.
+import("//build/compiled_action.gni")
+
+# Tempalte to generate a Rollup bundle of code.
+template("bundle") {
+ action(target_name) {
+ forward_variables_from(invoker, "*")
+ script = "//tools/run_node.py"
+ outputs = [
+ out_dir + out_name + ".js",
+ out_dir + out_name + ".js.map",
+ ]
+ inputs = [
+ "//js/" + out_name + ".ts",
+ "//rollup.config.js",
+ ]
+ depfile = out_dir + out_name + ".d"
+ args = [
+ rebase_path("//third_party/node_modules/rollup/bin/rollup", root_build_dir),
+ "-c",
+ rebase_path("//rollup.config.js", root_build_dir),
+ "-i",
+ rebase_path(inputs[0], root_build_dir),
+ "-o",
+ rebase_path(outputs[0], root_build_dir),
+ "--sourcemapFile",
+ rebase_path("."),
+ "--silent",
+ ]
+ }
+}
+
+template("run_node") {
+ action(target_name) {
+ forward_variables_from(invoker, "*")
+ script = "//tools/run_node.py"
+ }
+}
+
+# Template to generate different V8 snapshots based on different runtime flags.
+template("snapshot") {
+ compiled_action(target_name) {
+ forward_variables_from(invoker,
+ [
+ "testonly",
+ "deps",
+ ])
+ # TODO(ry) Rewrite snapshot_creator in Rust.
+ tool = "//core/libdeno:snapshot_creator"
+ visibility = [ ":*" ] # Only targets in this file can depend on this.
+ snapshot_out_bin = "$target_gen_dir/$target_name.bin"
+ inputs = [
+ invoker.source_root,
+ ]
+
+ outputs = [
+ snapshot_out_bin,
+ ]
+ args = rebase_path(outputs, root_build_dir) +
+ rebase_path(inputs, root_build_dir)
+
+ # To debug snapshotting problems:
+ # args += ["--trace-serializer"]
+ }
+}