1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-22 23:34:47 -05:00

Add Deno.version.gnArgs (#1845)

To display specific build args passed to GN.
This commit is contained in:
Yoshiya Hinosawa 2019-03-02 09:33:28 +09:00 committed by Ryan Dahl
parent 8c310d3d56
commit a7bb8ccce8
6 changed files with 39 additions and 3 deletions

View file

@ -221,6 +221,10 @@ bundle("main_bundle") {
deps = [
":deno_runtime_declaration",
":msg_ts",
":write_gn_args",
]
data = [
"$target_gen_dir/gn_args.txt",
]
}
@ -260,3 +264,11 @@ snapshot("snapshot_compiler") {
":compiler_bundle",
]
}
action("write_gn_args") {
script = "//tools/write_gn_args.py"
outputs = [
"$target_gen_dir/gn_args.txt",
]
args = [ rebase_path(outputs[0], root_build_dir) ]
}

View file

@ -3,12 +3,14 @@ interface Version {
deno: string;
v8: string;
typescript: string;
gnArgs: string;
}
export const version: Version = {
deno: "",
v8: "",
typescript: "TS_VERSION" // This string will be replaced by rollup
typescript: "TS_VERSION", // This string will be replaced by rollup
gnArgs: `GN_ARGS` // This string will be replaced by rollup
};
/**

View file

@ -6,3 +6,7 @@ test(function version() {
assert(pattern.test(Deno.version.v8));
assert(pattern.test(Deno.version.typescript));
});
test(function versionGnArgs() {
assert(Deno.version.gnArgs.length > 100);
});

View file

@ -20,6 +20,7 @@ const typescriptPath = path.resolve(
__dirname,
"third_party/node_modules/typescript/lib/typescript.js"
);
const gnArgs = fs.readFileSync("gen/gn_args.txt", "utf-8").trim();
// We will allow generated modules to be resolvable by TypeScript based on
// the current build path
@ -228,7 +229,8 @@ export default function makeConfig(commandOptions) {
// replace strings
replace({
TS_VERSION: typescript.version
TS_VERSION: typescript.version,
GN_ARGS: gnArgs
}),
// would prefer to use `rollup-plugin-virtual` to inject the empty module, but there

View file

@ -2,7 +2,7 @@
# Copyright 2018-2019 the Deno authors. All rights reserved. MIT license.
import third_party
from util import build_mode, build_path, enable_ansi_colors, root_path, run
from util import shell_quote
from util import shell_quote, run_output
import os
import re
import sys

16
tools/write_gn_args.py Normal file
View file

@ -0,0 +1,16 @@
# Copyright 2018-2019 the Deno authors. All rights reserved. MIT license.
import os
import sys
import third_party
from util import run_output, build_path
out_filename = sys.argv[1]
args_list = run_output([
third_party.gn_path, "args",
build_path(), "--list", "--short", "--overrides-only"
],
env=third_party.google_env())
with open(out_filename, "w") as f:
f.write(args_list)