diff options
Diffstat (limited to 'cli/js/compiler.ts')
-rw-r--r-- | cli/js/compiler.ts | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/cli/js/compiler.ts b/cli/js/compiler.ts index 54861f713..2807422e2 100644 --- a/cli/js/compiler.ts +++ b/cli/js/compiler.ts @@ -9,6 +9,7 @@ import { TranspileOnlyResult } from "./compiler_api.ts"; import { oldProgram } from "./compiler_bootstrap.ts"; import { setRootExports } from "./compiler_bundler.ts"; import { + CompilerHostTarget, defaultBundlerOptions, defaultRuntimeCompileOptions, defaultTranspileOptions, @@ -42,6 +43,7 @@ const self = globalThis; interface CompilerRequestCompile { type: CompilerRequestType.Compile; + target: CompilerHostTarget; rootNames: string[]; // TODO(ry) add compiler config to this interface. // options: ts.CompilerOptions; @@ -53,6 +55,7 @@ interface CompilerRequestCompile { interface CompilerRequestRuntimeCompile { type: CompilerRequestType.RuntimeCompile; + target: CompilerHostTarget; rootName: string; sources?: Record<string, string>; bundle?: boolean; @@ -100,7 +103,14 @@ self.bootstrapTsCompiler = function tsCompilerMain(): void { // `Compile` are requests from the internals to Deno, generated by both // the `run` and `bundle` sub command. case CompilerRequestType.Compile: { - const { bundle, config, configPath, outFile, rootNames } = request; + const { + bundle, + config, + configPath, + outFile, + rootNames, + target + } = request; util.log(">>> compile start", { rootNames, type: CompilerRequestType[request.type] @@ -129,7 +139,11 @@ self.bootstrapTsCompiler = function tsCompilerMain(): void { }; const writeFile = createWriteFile(state); - const host = (state.host = new Host({ bundle, writeFile })); + const host = (state.host = new Host({ + bundle, + target, + writeFile + })); let diagnostics: readonly ts.Diagnostic[] | undefined; // if there is a configuration supplied, we need to parse that @@ -189,7 +203,7 @@ self.bootstrapTsCompiler = function tsCompilerMain(): void { // `RuntimeCompile` are requests from a runtime user, both compiles and // bundles. The process is similar to a request from the privileged // side, but also returns the output to the on message. - const { rootName, sources, options, bundle } = request; + const { rootName, sources, options, bundle, target } = request; util.log(">>> runtime compile start", { rootName, @@ -216,7 +230,11 @@ self.bootstrapTsCompiler = function tsCompilerMain(): void { }; const writeFile = createWriteFile(state); - const host = (state.host = new Host({ bundle, writeFile })); + const host = (state.host = new Host({ + bundle, + target, + writeFile + })); const compilerOptions = [defaultRuntimeCompileOptions]; if (options) { compilerOptions.push(convertCompilerOptions(options)); |