mirror of
https://github.com/denoland/deno.git
synced 2025-01-08 23:28:18 -05:00
Add Deno.version.gnArgs (#1845)
To display specific build args passed to GN.
This commit is contained in:
parent
8c310d3d56
commit
a7bb8ccce8
6 changed files with 39 additions and 3 deletions
12
BUILD.gn
12
BUILD.gn
|
@ -221,6 +221,10 @@ bundle("main_bundle") {
|
||||||
deps = [
|
deps = [
|
||||||
":deno_runtime_declaration",
|
":deno_runtime_declaration",
|
||||||
":msg_ts",
|
":msg_ts",
|
||||||
|
":write_gn_args",
|
||||||
|
]
|
||||||
|
data = [
|
||||||
|
"$target_gen_dir/gn_args.txt",
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -260,3 +264,11 @@ snapshot("snapshot_compiler") {
|
||||||
":compiler_bundle",
|
":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) ]
|
||||||
|
}
|
||||||
|
|
|
@ -3,12 +3,14 @@ interface Version {
|
||||||
deno: string;
|
deno: string;
|
||||||
v8: string;
|
v8: string;
|
||||||
typescript: string;
|
typescript: string;
|
||||||
|
gnArgs: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export const version: Version = {
|
export const version: Version = {
|
||||||
deno: "",
|
deno: "",
|
||||||
v8: "",
|
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
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -6,3 +6,7 @@ test(function version() {
|
||||||
assert(pattern.test(Deno.version.v8));
|
assert(pattern.test(Deno.version.v8));
|
||||||
assert(pattern.test(Deno.version.typescript));
|
assert(pattern.test(Deno.version.typescript));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test(function versionGnArgs() {
|
||||||
|
assert(Deno.version.gnArgs.length > 100);
|
||||||
|
});
|
||||||
|
|
|
@ -20,6 +20,7 @@ const typescriptPath = path.resolve(
|
||||||
__dirname,
|
__dirname,
|
||||||
"third_party/node_modules/typescript/lib/typescript.js"
|
"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
|
// We will allow generated modules to be resolvable by TypeScript based on
|
||||||
// the current build path
|
// the current build path
|
||||||
|
@ -228,7 +229,8 @@ export default function makeConfig(commandOptions) {
|
||||||
|
|
||||||
// replace strings
|
// replace strings
|
||||||
replace({
|
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
|
// would prefer to use `rollup-plugin-virtual` to inject the empty module, but there
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
# Copyright 2018-2019 the Deno authors. All rights reserved. MIT license.
|
# Copyright 2018-2019 the Deno authors. All rights reserved. MIT license.
|
||||||
import third_party
|
import third_party
|
||||||
from util import build_mode, build_path, enable_ansi_colors, root_path, run
|
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 os
|
||||||
import re
|
import re
|
||||||
import sys
|
import sys
|
||||||
|
|
16
tools/write_gn_args.py
Normal file
16
tools/write_gn_args.py
Normal 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)
|
Loading…
Reference in a new issue