| Index: pkg/compiler/tool/generate_kernel.dart
|
| diff --git a/pkg/compiler/tool/generate_kernel.dart b/pkg/compiler/tool/generate_kernel.dart
|
| index dabd4076cd2e680a185eaaa58c7d19f6aa7b8024..c6a24b0a0db44869afb876b88e80a77181e67273 100644
|
| --- a/pkg/compiler/tool/generate_kernel.dart
|
| +++ b/pkg/compiler/tool/generate_kernel.dart
|
| @@ -8,51 +8,29 @@
|
| // command line.
|
| library compiler.tool.generate_kernel;
|
|
|
| -import 'dart:io';
|
| -
|
| -import 'package:args/args.dart';
|
| -import 'package:compiler/src/kernel/dart2js_target.dart';
|
| -import 'package:front_end/front_end.dart';
|
| -import 'package:front_end/src/fasta/util/relativize.dart';
|
| -import 'package:kernel/kernel.dart';
|
| -import 'package:kernel/target/targets.dart';
|
| -
|
| -main(List<String> args) async {
|
| - ArgResults flags = _argParser.parse(args);
|
| - var options = new CompilerOptions()
|
| - ..target = new Dart2jsTarget(new TargetFlags())
|
| - ..packagesFileUri = Platform.script.resolve('../../../.packages')
|
| - ..compileSdk = true
|
| - ..linkedDependencies = [Uri.base.resolve(flags['platform'])]
|
| - ..onError = errorHandler;
|
| -
|
| - if (flags.rest.isEmpty) {
|
| - var script = relativizeUri(Platform.script);
|
| - var platform = relativizeUri(Uri.base.resolve(flags['platform']));
|
| - print('usage: ${Platform.executable} $script '
|
| - '[--platform=$platform] [--out=out.dill] program.dart');
|
| - exit(1);
|
| +import 'dart:io' show exitCode;
|
| +
|
| +import 'package:front_end/src/fasta/compiler_command_line.dart'
|
| + show CompilerCommandLine;
|
| +import 'package:front_end/src/fasta/compiler_context.dart' show CompilerContext;
|
| +import 'package:front_end/src/fasta/errors.dart' show InputError;
|
| +import 'package:front_end/src/fasta/ticker.dart' show Ticker;
|
| +import 'package:compiler/src/kernel/fasta_support.dart' show Dart2jsCompileTask;
|
| +
|
| +main(List<String> arguments) async {
|
| + try {
|
| + await CompilerCommandLine.withGlobalOptions("generate_kernel", arguments,
|
| + (CompilerContext c) async {
|
| + if (c.options.verbose) {
|
| + print("Compiling directly to Kernel: ${arguments.join(' ')}");
|
| + }
|
| + var task =
|
| + new Dart2jsCompileTask(c, new Ticker(isVerbose: c.options.verbose));
|
| + await task.compile();
|
| + });
|
| + } on InputError catch (e) {
|
| + exitCode = 1;
|
| + print(e.format());
|
| + return null;
|
| }
|
| -
|
| - Uri entry = Uri.base.resolve(flags.rest.first);
|
| - var program = await kernelForProgram(entry, options);
|
| - program.uriToSource.clear();
|
| - await writeProgramToBinary(program, flags['out']);
|
| }
|
| -
|
| -void errorHandler(CompilationError e) {
|
| - exitCode = 1;
|
| - print(e.message);
|
| -}
|
| -
|
| -ArgParser _argParser = new ArgParser()
|
| - ..addOption('platform',
|
| - help: 'location of the precompiled dart2js sdk',
|
| - defaultsTo: _defaultPlatform)
|
| - ..addOption('out',
|
| - abbr: 'o', help: 'output location', defaultsTo: 'out.dill');
|
| -
|
| -String _defaultPlatform = Uri
|
| - .parse(Platform.resolvedExecutable)
|
| - .resolve('patched_dart2js_sdk/platform.dill')
|
| - .toString();
|
|
|